From 38b4fc3c9c729f157deaf4c63ded0b6835786bf7 Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 29 Aug 2019 14:13:27 +0300 Subject: [PATCH 01/49] fix name of definitions after fe --- .../helpers/componentsHelpers/index.js | 31 +++++++++++++------ forward_engineering/helpers/typeHelper.js | 6 ++-- forward_engineering/utils/utils.js | 18 ++++++++++- 3 files changed, 43 insertions(+), 12 deletions(-) diff --git a/forward_engineering/helpers/componentsHelpers/index.js b/forward_engineering/helpers/componentsHelpers/index.js index 34cba79..4852ab6 100644 --- a/forward_engineering/helpers/componentsHelpers/index.js +++ b/forward_engineering/helpers/componentsHelpers/index.js @@ -8,19 +8,32 @@ const { getExamples } = require('./examplesHelper'); const { getLinks } = require('./linksHelper'); const { getCallbacks } = require('../pathHelper'); const getExtensions = require('../extensionsHelper'); +const { prepareName } = require('../../utils/utils'); + +const renameComponents = (components) => { + if (!components) { + return components; + } + + return Object.keys(components).reduce((result, componentName) => { + return Object.assign({}, result, { + [prepareName(componentName)]: components[componentName] + }); + }, {}); +}; function getComponents(data) { const componentsData = get(JSON.parse(data.modelDefinitions), 'properties', {}); - const schemas = getSchemas(componentsData.schemas); - const responses = getResponses(componentsData.responses); - const parameters = getParameters(componentsData.parameters); - const examples = getExamples(componentsData.examples); - const requestBodies = getRequestBodies(componentsData.requestBodies); - const headers = getHeaders(componentsData.headers); - const securitySchemes = getSecuritySchemes(componentsData.securitySchemes); - const links = getLinks(componentsData.links); - const callbacks = getCallbacks(componentsData.callbacks, data.containers); + const schemas = renameComponents(getSchemas(componentsData.schemas)); + const responses = renameComponents(getResponses(componentsData.responses)); + const parameters = renameComponents(getParameters(componentsData.parameters)); + const examples = renameComponents(getExamples(componentsData.examples)); + const requestBodies = renameComponents(getRequestBodies(componentsData.requestBodies)); + const headers = renameComponents(getHeaders(componentsData.headers)); + const securitySchemes = renameComponents(getSecuritySchemes(componentsData.securitySchemes)); + const links = renameComponents(getLinks(componentsData.links)); + const callbacks = renameComponents(getCallbacks(componentsData.callbacks, data.containers)); const extensions = getExtensions(get(componentsData, `['Specification Extensions'].scopesExtensions`)); diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index b5b0166..9f01e69 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -1,5 +1,6 @@ const get = require('lodash.get'); const getExtensions = require('./extensionsHelper'); +const { prepareReferenceName } = require('../utils/utils'); function getType(data, key) { if (!data) { @@ -67,9 +68,10 @@ function getTypeProps(data, key) { function getRef({ $ref: ref }) { if (ref.startsWith('#')) { - return { $ref: ref.replace('#model/definitions', '#/components') }; + ref = ref.replace('#model/definitions', '#/components'); } - return { $ref: ref }; + + return { $ref: prepareReferenceName(ref) }; } function hasRef(data = {}) { diff --git a/forward_engineering/utils/utils.js b/forward_engineering/utils/utils.js index 52bf393..cf6ebc4 100644 --- a/forward_engineering/utils/utils.js +++ b/forward_engineering/utils/utils.js @@ -24,6 +24,22 @@ function removeEmptyObjectFields(inputObj) { ); } +const prepareName = (name) => { + return (name || '').replace(/\ /ig, '_'); +}; + +const prepareReferenceName = (ref) => { + const refParts = ref.split('/'); + const name = refParts.pop(); + const preparedName = prepareName(name); + + refParts.push(preparedName); + + return refParts.join('/'); +}; + module.exports = { - removeEmptyObjectFields + removeEmptyObjectFields, + prepareName, + prepareReferenceName }; \ No newline at end of file From bbb79025ddcee386c8e3505f4b47cbf905b631e6 Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 29 Aug 2019 15:04:26 +0300 Subject: [PATCH 02/49] add nullable property --- .../field_level/fieldLevelConfig.json | 43 +++++++++++++++++++ types/array.json | 3 +- types/boolean.json | 3 +- types/integer.json | 3 +- types/number.json | 3 +- types/object.json | 3 +- types/string.json | 3 +- 7 files changed, 55 insertions(+), 6 deletions(-) diff --git a/properties_pane/field_level/fieldLevelConfig.json b/properties_pane/field_level/fieldLevelConfig.json index 23eda97..bbfba8c 100644 --- a/properties_pane/field_level/fieldLevelConfig.json +++ b/properties_pane/field_level/fieldLevelConfig.json @@ -303,6 +303,13 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "shouldValidate": true }, + { + "propertyName": "nullable", + "propertyKeyword": "nullable", + "shouldValidate": false, + "propertyType": "checkbox", + "enableForReference": true + }, { "propertyName": "discriminator", "propertyKeyword": "discriminator", @@ -488,6 +495,13 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "shouldValidate": true }, + { + "propertyName": "nullable", + "propertyKeyword": "nullable", + "shouldValidate": false, + "propertyType": "checkbox", + "enableForReference": true + }, { "propertyName": "discriminator", "propertyKeyword": "discriminator", @@ -673,6 +687,13 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "shouldValidate": true }, + { + "propertyName": "nullable", + "propertyKeyword": "nullable", + "shouldValidate": false, + "propertyType": "checkbox", + "enableForReference": true + }, { "propertyName": "discriminator", "propertyKeyword": "discriminator", @@ -878,6 +899,17 @@ making sure that you maintain a proper JSON format. "maxItems", "uniqueItems", "additionalItems", + { + "propertyName": "nullable", + "propertyKeyword": "nullable", + "shouldValidate": false, + "propertyType": "checkbox", + "enableForReference": true, + "dependency": { + "key": "subtype", + "value": "schema" + } + }, { "propertyName": "discriminator", "propertyKeyword": "discriminator", @@ -1182,6 +1214,17 @@ making sure that you maintain a proper JSON format. ] } }, + { + "propertyName": "nullable", + "propertyKeyword": "nullable", + "shouldValidate": false, + "propertyType": "checkbox", + "enableForReference": true, + "dependency": { + "key": "subtype", + "value": "schema" + } + }, { "propertyName": "discriminator", "propertyKeyword": "discriminator", diff --git a/types/array.json b/types/array.json index 5ba397a..7323e36 100644 --- a/types/array.json +++ b/types/array.json @@ -18,7 +18,8 @@ "minItems": "", "maxItems": "", "uniqueItems": false, - "subtype": "schema" + "subtype": "schema", + "nullable": false }, "subtypes": { "schema": { diff --git a/types/boolean.json b/types/boolean.json index 4ce4be6..a6f5935 100644 --- a/types/boolean.json +++ b/types/boolean.json @@ -14,6 +14,7 @@ "childRelationships": [], "foreignEntity": "", "foreignField": [], - "sample": "" + "sample": "", + "nullable": false } } \ No newline at end of file diff --git a/types/integer.json b/types/integer.json index fa5d5a9..6864399 100644 --- a/types/integer.json +++ b/types/integer.json @@ -23,6 +23,7 @@ "foreignField": [], "enum": [], "mode": "int32", - "sample": "" + "sample": "", + "nullable": false } } \ No newline at end of file diff --git a/types/number.json b/types/number.json index c29b297..e4ac513 100644 --- a/types/number.json +++ b/types/number.json @@ -23,6 +23,7 @@ "foreignField": [], "enum": [], "mode": "float", - "sample": "" + "sample": "", + "nullable": false } } \ No newline at end of file diff --git a/types/object.json b/types/object.json index a7c8023..0823504 100644 --- a/types/object.json +++ b/types/object.json @@ -20,7 +20,8 @@ "additionalPropertiesObjectType": "integer", "additionalPropertiesIntegerFormat": "int32", "enum": [], - "subtype": "schema" + "subtype": "schema", + "nullable": false }, "subtypes": { "schema": { diff --git a/types/string.json b/types/string.json index 12205b8..bdee39a 100644 --- a/types/string.json +++ b/types/string.json @@ -17,6 +17,7 @@ "foreignField": [], "enum": [], "sample": "", - "mode": "" + "mode": "", + "nullable": false } } \ No newline at end of file From ea50dda6071c7f9ba1cb0b1df9597d4e1f3cc696 Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 29 Aug 2019 15:15:33 +0300 Subject: [PATCH 03/49] handle nullable in fe --- forward_engineering/helpers/typeHelper.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 9f01e69..7f6b385 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -30,6 +30,7 @@ function getTypeProps(data, key) { minItems: data.minItems, maxItems: data.maxItems, uniqueItems: data.uniqueItems || undefined, + nullable: data.nullable, discriminator: data.discriminator, readOnly: data.readOnly, xml: getXml(data.xml) @@ -47,6 +48,7 @@ function getTypeProps(data, key) { minProperties: data.minProperties, maxProperties: data.maxProperties, additionalProperties: getAdditionalProperties(data), + nullable: data.nullable, discriminator: data.discriminator, readOnly: data.readOnly, example: parseExample(data.sample), @@ -110,7 +112,7 @@ function getXml(data) { } function getPrimitiveTypeProps(data) { - return { + const properties = { type: data.type, format: data.format || data.mode, description: data.description, @@ -127,6 +129,8 @@ function getPrimitiveTypeProps(data) { xml: getXml(data.xml), example: data.sample }; + + return addIfTrue(properties, 'nullable', data.nullable); } function getAdditionalProperties(data) { @@ -199,6 +203,16 @@ function parseExample(data) { } } +function addIfTrue(data, propertyName, value) { + if (!value) { + return data; + } + + return Object.assign({}, data, { + [propertyName]: value + }); +} + module.exports = { getType, getRef, From 986c55c0777657b090f406fd0a85428d73824617 Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 29 Aug 2019 19:08:20 +0300 Subject: [PATCH 04/49] add lodash helpers --- .../node_modules/lodash.isplainobject/LICENSE | 47 + .../lodash.isplainobject/README.md | 18 + .../lodash.isplainobject/index.js | 139 ++ .../lodash.isplainobject/package.json | 70 + .../node_modules/lodash.partial/LICENSE | 47 + .../node_modules/lodash.partial/README.md | 18 + .../node_modules/lodash.partial/index.js | 1248 +++++++++++++++++ .../node_modules/lodash.partial/package.json | 70 + reverse_engineering/package.json | 4 +- 9 files changed, 1660 insertions(+), 1 deletion(-) create mode 100644 reverse_engineering/node_modules/lodash.isplainobject/LICENSE create mode 100644 reverse_engineering/node_modules/lodash.isplainobject/README.md create mode 100644 reverse_engineering/node_modules/lodash.isplainobject/index.js create mode 100644 reverse_engineering/node_modules/lodash.isplainobject/package.json create mode 100644 reverse_engineering/node_modules/lodash.partial/LICENSE create mode 100644 reverse_engineering/node_modules/lodash.partial/README.md create mode 100644 reverse_engineering/node_modules/lodash.partial/index.js create mode 100644 reverse_engineering/node_modules/lodash.partial/package.json diff --git a/reverse_engineering/node_modules/lodash.isplainobject/LICENSE b/reverse_engineering/node_modules/lodash.isplainobject/LICENSE new file mode 100644 index 0000000..e0c69d5 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.isplainobject/LICENSE @@ -0,0 +1,47 @@ +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. diff --git a/reverse_engineering/node_modules/lodash.isplainobject/README.md b/reverse_engineering/node_modules/lodash.isplainobject/README.md new file mode 100644 index 0000000..aeefd74 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.isplainobject/README.md @@ -0,0 +1,18 @@ +# lodash.isplainobject v4.0.6 + +The [lodash](https://lodash.com/) method `_.isPlainObject` exported as a [Node.js](https://nodejs.org/) module. + +## Installation + +Using npm: +```bash +$ {sudo -H} npm i -g npm +$ npm i --save lodash.isplainobject +``` + +In Node.js: +```js +var isPlainObject = require('lodash.isplainobject'); +``` + +See the [documentation](https://lodash.com/docs#isPlainObject) or [package source](https://github.com/lodash/lodash/blob/4.0.6-npm-packages/lodash.isplainobject) for more details. diff --git a/reverse_engineering/node_modules/lodash.isplainobject/index.js b/reverse_engineering/node_modules/lodash.isplainobject/index.js new file mode 100644 index 0000000..0f820ee --- /dev/null +++ b/reverse_engineering/node_modules/lodash.isplainobject/index.js @@ -0,0 +1,139 @@ +/** + * lodash (Custom Build) + * Build: `lodash modularize exports="npm" -o ./` + * Copyright jQuery Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ + +/** `Object#toString` result references. */ +var objectTag = '[object Object]'; + +/** + * Checks if `value` is a host object in IE < 9. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a host object, else `false`. + */ +function isHostObject(value) { + // Many host objects are `Object` objects that can coerce to strings + // despite having improperly defined `toString` methods. + var result = false; + if (value != null && typeof value.toString != 'function') { + try { + result = !!(value + ''); + } catch (e) {} + } + return result; +} + +/** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ +function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; +} + +/** Used for built-in method references. */ +var funcProto = Function.prototype, + objectProto = Object.prototype; + +/** Used to resolve the decompiled source of functions. */ +var funcToString = funcProto.toString; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** Used to infer the `Object` constructor. */ +var objectCtorString = funcToString.call(Object); + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var objectToString = objectProto.toString; + +/** Built-in value references. */ +var getPrototype = overArg(Object.getPrototypeOf, Object); + +/** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ +function isObjectLike(value) { + return !!value && typeof value == 'object'; +} + +/** + * Checks if `value` is a plain object, that is, an object created by the + * `Object` constructor or one with a `[[Prototype]]` of `null`. + * + * @static + * @memberOf _ + * @since 0.8.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * _.isPlainObject(new Foo); + * // => false + * + * _.isPlainObject([1, 2, 3]); + * // => false + * + * _.isPlainObject({ 'x': 0, 'y': 0 }); + * // => true + * + * _.isPlainObject(Object.create(null)); + * // => true + */ +function isPlainObject(value) { + if (!isObjectLike(value) || + objectToString.call(value) != objectTag || isHostObject(value)) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; + return (typeof Ctor == 'function' && + Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString); +} + +module.exports = isPlainObject; diff --git a/reverse_engineering/node_modules/lodash.isplainobject/package.json b/reverse_engineering/node_modules/lodash.isplainobject/package.json new file mode 100644 index 0000000..1872d07 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.isplainobject/package.json @@ -0,0 +1,70 @@ +{ + "_from": "lodash.isplainobject", + "_id": "lodash.isplainobject@4.0.6", + "_inBundle": false, + "_integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "_location": "/lodash.isplainobject", + "_phantomChildren": {}, + "_requested": { + "type": "tag", + "registry": true, + "raw": "lodash.isplainobject", + "name": "lodash.isplainobject", + "escapedName": "lodash.isplainobject", + "rawSpec": "", + "saveSpec": null, + "fetchSpec": "latest" + }, + "_requiredBy": [ + "#USER", + "/" + ], + "_resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "_shasum": "7c526a52d89b45c45cc690b88163be0497f550cb", + "_spec": "lodash.isplainobject", + "_where": "/home/volodymyr/projects/hackolade_plugins/OpenAPI/reverse_engineering", + "author": { + "name": "John-David Dalton", + "email": "john.david.dalton@gmail.com", + "url": "http://allyoucanleet.com/" + }, + "bugs": { + "url": "https://github.com/lodash/lodash/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "John-David Dalton", + "email": "john.david.dalton@gmail.com", + "url": "http://allyoucanleet.com/" + }, + { + "name": "Blaine Bublitz", + "email": "blaine.bublitz@gmail.com", + "url": "https://github.com/phated" + }, + { + "name": "Mathias Bynens", + "email": "mathias@qiwi.be", + "url": "https://mathiasbynens.be/" + } + ], + "deprecated": false, + "description": "The lodash method `_.isPlainObject` exported as a module.", + "homepage": "https://lodash.com/", + "icon": "https://lodash.com/icon.svg", + "keywords": [ + "lodash-modularized", + "isplainobject" + ], + "license": "MIT", + "name": "lodash.isplainobject", + "repository": { + "type": "git", + "url": "git+https://github.com/lodash/lodash.git" + }, + "scripts": { + "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" + }, + "version": "4.0.6" +} diff --git a/reverse_engineering/node_modules/lodash.partial/LICENSE b/reverse_engineering/node_modules/lodash.partial/LICENSE new file mode 100644 index 0000000..e0c69d5 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.partial/LICENSE @@ -0,0 +1,47 @@ +Copyright jQuery Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. diff --git a/reverse_engineering/node_modules/lodash.partial/README.md b/reverse_engineering/node_modules/lodash.partial/README.md new file mode 100644 index 0000000..5c68424 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.partial/README.md @@ -0,0 +1,18 @@ +# lodash.partial v4.2.1 + +The [lodash](https://lodash.com/) method `_.partial` exported as a [Node.js](https://nodejs.org/) module. + +## Installation + +Using npm: +```bash +$ {sudo -H} npm i -g npm +$ npm i --save lodash.partial +``` + +In Node.js: +```js +var partial = require('lodash.partial'); +``` + +See the [documentation](https://lodash.com/docs#partial) or [package source](https://github.com/lodash/lodash/blob/4.2.1-npm-packages/lodash.partial) for more details. diff --git a/reverse_engineering/node_modules/lodash.partial/index.js b/reverse_engineering/node_modules/lodash.partial/index.js new file mode 100644 index 0000000..f08fea0 --- /dev/null +++ b/reverse_engineering/node_modules/lodash.partial/index.js @@ -0,0 +1,1248 @@ +/** + * lodash (Custom Build) + * Build: `lodash modularize exports="npm" -o ./` + * Copyright jQuery Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ + +/** Used as the `TypeError` message for "Functions" methods. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** Used as the internal argument placeholder. */ +var PLACEHOLDER = '__lodash_placeholder__'; + +/** Used to compose bitmasks for function metadata. */ +var BIND_FLAG = 1, + BIND_KEY_FLAG = 2, + CURRY_BOUND_FLAG = 4, + CURRY_FLAG = 8, + CURRY_RIGHT_FLAG = 16, + PARTIAL_FLAG = 32, + PARTIAL_RIGHT_FLAG = 64, + ARY_FLAG = 128, + REARG_FLAG = 256, + FLIP_FLAG = 512; + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0, + MAX_SAFE_INTEGER = 9007199254740991, + MAX_INTEGER = 1.7976931348623157e+308, + NAN = 0 / 0; + +/** Used to associate wrap methods with their bit flags. */ +var wrapFlags = [ + ['ary', ARY_FLAG], + ['bind', BIND_FLAG], + ['bindKey', BIND_KEY_FLAG], + ['curry', CURRY_FLAG], + ['curryRight', CURRY_RIGHT_FLAG], + ['flip', FLIP_FLAG], + ['partial', PARTIAL_FLAG], + ['partialRight', PARTIAL_RIGHT_FLAG], + ['rearg', REARG_FLAG] +]; + +/** `Object#toString` result references. */ +var funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + symbolTag = '[object Symbol]'; + +/** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ +var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + +/** Used to match leading and trailing whitespace. */ +var reTrim = /^\s+|\s+$/g; + +/** Used to match wrap detail comments. */ +var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, + reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, + reSplitDetails = /,? & /; + +/** Used to detect bad signed hexadecimal string values. */ +var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + +/** Used to detect binary string values. */ +var reIsBinary = /^0b[01]+$/i; + +/** Used to detect host constructors (Safari). */ +var reIsHostCtor = /^\[object .+?Constructor\]$/; + +/** Used to detect octal string values. */ +var reIsOctal = /^0o[0-7]+$/i; + +/** Used to detect unsigned integer values. */ +var reIsUint = /^(?:0|[1-9]\d*)$/; + +/** Built-in method references without a dependency on `root`. */ +var freeParseInt = parseInt; + +/** Detect free variable `global` from Node.js. */ +var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + +/** Detect free variable `self`. */ +var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + +/** Used as a reference to the global object. */ +var root = freeGlobal || freeSelf || Function('return this')(); + +/** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ +function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); +} + +/** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEach(array, iteratee) { + var index = -1, + length = array ? array.length : 0; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; +} + +/** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludes(array, value) { + var length = array ? array.length : 0; + return !!length && baseIndexOf(array, value, 0) > -1; +} + +/** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; +} + +/** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOf(array, value, fromIndex) { + if (value !== value) { + return baseFindIndex(array, baseIsNaN, fromIndex); + } + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; +} + +/** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ +function baseIsNaN(value) { + return value !== value; +} + +/** + * Gets the number of `placeholder` occurrences in `array`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} placeholder The placeholder to search for. + * @returns {number} Returns the placeholder count. + */ +function countHolders(array, placeholder) { + var length = array.length, + result = 0; + + while (length--) { + if (array[length] === placeholder) { + result++; + } + } + return result; +} + +/** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ +function getValue(object, key) { + return object == null ? undefined : object[key]; +} + +/** + * Checks if `value` is a host object in IE < 9. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a host object, else `false`. + */ +function isHostObject(value) { + // Many host objects are `Object` objects that can coerce to strings + // despite having improperly defined `toString` methods. + var result = false; + if (value != null && typeof value.toString != 'function') { + try { + result = !!(value + ''); + } catch (e) {} + } + return result; +} + +/** + * Replaces all `placeholder` elements in `array` with an internal placeholder + * and returns an array of their indexes. + * + * @private + * @param {Array} array The array to modify. + * @param {*} placeholder The placeholder to replace. + * @returns {Array} Returns the new array of placeholder indexes. + */ +function replaceHolders(array, placeholder) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; +} + +/** Used for built-in method references. */ +var funcProto = Function.prototype, + objectProto = Object.prototype; + +/** Used to detect overreaching core-js shims. */ +var coreJsData = root['__core-js_shared__']; + +/** Used to detect methods masquerading as native. */ +var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; +}()); + +/** Used to resolve the decompiled source of functions. */ +var funcToString = funcProto.toString; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var objectToString = objectProto.toString; + +/** Used to detect if a method is native. */ +var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' +); + +/** Built-in value references. */ +var objectCreate = Object.create; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/* Used to set `toString` methods. */ +var defineProperty = (function() { + var func = getNative(Object, 'defineProperty'), + name = getNative.name; + + return (name && name.length > 2) ? func : undefined; +}()); + +/** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} prototype The object to inherit from. + * @returns {Object} Returns the new object. + */ +function baseCreate(proto) { + return isObject(proto) ? objectCreate(proto) : {}; +} + +/** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ +function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); +} + +/** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ +function baseRest(func, start) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = array; + return apply(func, this, otherArgs); + }; +} + +/** + * Creates an array that is the composition of partially applied arguments, + * placeholders, and provided arguments into a single array of arguments. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to prepend to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ +function composeArgs(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersLength = holders.length, + leftIndex = -1, + leftLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(leftLength + rangeLength), + isUncurried = !isCurried; + + while (++leftIndex < leftLength) { + result[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[holders[argsIndex]] = args[argsIndex]; + } + } + while (rangeLength--) { + result[leftIndex++] = args[argsIndex++]; + } + return result; +} + +/** + * This function is like `composeArgs` except that the arguments composition + * is tailored for `_.partialRight`. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to append to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ +function composeArgsRight(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersIndex = -1, + holdersLength = holders.length, + rightIndex = -1, + rightLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(rangeLength + rightLength), + isUncurried = !isCurried; + + while (++argsIndex < rangeLength) { + result[argsIndex] = args[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[offset + holders[holdersIndex]] = args[argsIndex++]; + } + } + return result; +} + +/** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ +function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; +} + +/** + * Creates a function that wraps `func` to invoke it with the optional `this` + * binding of `thisArg`. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createBind(func, bitmask, thisArg) { + var isBind = bitmask & BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; +} + +/** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ +function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + switch (args.length) { + case 0: return new Ctor; + case 1: return new Ctor(args[0]); + case 2: return new Ctor(args[0], args[1]); + case 3: return new Ctor(args[0], args[1], args[2]); + case 4: return new Ctor(args[0], args[1], args[2], args[3]); + case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); + case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); + case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); + } + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; +} + +/** + * Creates a function that wraps `func` to enable currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {number} arity The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createCurry(func, bitmask, arity) { + var Ctor = createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length, + placeholder = getHolder(wrapper); + + while (index--) { + args[index] = arguments[index]; + } + var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) + ? [] + : replaceHolders(args, placeholder); + + length -= holders.length; + if (length < arity) { + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, undefined, + args, holders, undefined, undefined, arity - length); + } + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return apply(fn, this, args); + } + return wrapper; +} + +/** + * Creates a function that wraps `func` to invoke it with optional `this` + * binding of `thisArg`, partial application, and currying. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [partialsRight] The arguments to append to those provided + * to the new function. + * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { + var isAry = bitmask & ARY_FLAG, + isBind = bitmask & BIND_FLAG, + isBindKey = bitmask & BIND_KEY_FLAG, + isCurried = bitmask & (CURRY_FLAG | CURRY_RIGHT_FLAG), + isFlip = bitmask & FLIP_FLAG, + Ctor = isBindKey ? undefined : createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length; + + while (index--) { + args[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), + holdersCount = countHolders(args, placeholder); + } + if (partials) { + args = composeArgs(args, partials, holders, isCurried); + } + if (partialsRight) { + args = composeArgsRight(args, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity) { + var newHolders = replaceHolders(args, placeholder); + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, thisArg, + args, newHolders, argPos, ary, arity - length + ); + } + var thisBinding = isBind ? thisArg : this, + fn = isBindKey ? thisBinding[func] : func; + + length = args.length; + if (argPos) { + args = reorder(args, argPos); + } else if (isFlip && length > 1) { + args.reverse(); + } + if (isAry && ary < length) { + args.length = ary; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args); + } + return wrapper; +} + +/** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ +function createPartial(func, bitmask, thisArg, partials) { + var isBind = bitmask & BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args); + } + return wrapper; +} + +/** + * Creates a function that wraps `func` to continue currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {Function} wrapFunc The function to create the `func` wrapper. + * @param {*} placeholder The placeholder value. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { + var isCurry = bitmask & CURRY_FLAG, + newHolders = isCurry ? holders : undefined, + newHoldersRight = isCurry ? undefined : holders, + newPartials = isCurry ? partials : undefined, + newPartialsRight = isCurry ? undefined : partials; + + bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG); + bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG); + + if (!(bitmask & CURRY_BOUND_FLAG)) { + bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG); + } + + var result = wrapFunc(func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, newHoldersRight, argPos, ary, arity); + result.placeholder = placeholder; + return setWrapToString(result, func, bitmask); +} + +/** + * Creates a function that either curries or invokes `func` with optional + * `this` binding and partially applied arguments. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. + * The bitmask may be composed of the following flags: + * 1 - `_.bind` + * 2 - `_.bindKey` + * 4 - `_.curry` or `_.curryRight` of a bound function + * 8 - `_.curry` + * 16 - `_.curryRight` + * 32 - `_.partial` + * 64 - `_.partialRight` + * 128 - `_.rearg` + * 256 - `_.ary` + * 512 - `_.flip` + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to be partially applied. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { + var isBindKey = bitmask & BIND_KEY_FLAG; + if (!isBindKey && typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG); + partials = holders = undefined; + } + ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); + arity = arity === undefined ? arity : toInteger(arity); + length -= holders ? holders.length : 0; + + if (bitmask & PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, + holdersRight = holders; + + partials = holders = undefined; + } + + var newData = [ + func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, + argPos, ary, arity + ]; + + func = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity = newData[9] = newData[9] == null + ? (isBindKey ? 0 : func.length) + : nativeMax(newData[9] - length, 0); + + if (!arity && bitmask & (CURRY_FLAG | CURRY_RIGHT_FLAG)) { + bitmask &= ~(CURRY_FLAG | CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == BIND_FLAG) { + var result = createBind(func, bitmask, thisArg); + } else if (bitmask == CURRY_FLAG || bitmask == CURRY_RIGHT_FLAG) { + result = createCurry(func, bitmask, arity); + } else if ((bitmask == PARTIAL_FLAG || bitmask == (BIND_FLAG | PARTIAL_FLAG)) && !holders.length) { + result = createPartial(func, bitmask, thisArg, partials); + } else { + result = createHybrid.apply(undefined, newData); + } + return setWrapToString(result, func, bitmask); +} + +/** + * Gets the argument placeholder value for `func`. + * + * @private + * @param {Function} func The function to inspect. + * @returns {*} Returns the placeholder value. + */ +function getHolder(func) { + var object = func; + return object.placeholder; +} + +/** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ +function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; +} + +/** + * Extracts wrapper details from the `source` body comment. + * + * @private + * @param {string} source The source to inspect. + * @returns {Array} Returns the wrapper details. + */ +function getWrapDetails(source) { + var match = source.match(reWrapDetails); + return match ? match[1].split(reSplitDetails) : []; +} + +/** + * Inserts wrapper `details` in a comment at the top of the `source` body. + * + * @private + * @param {string} source The source to modify. + * @returns {Array} details The details to insert. + * @returns {string} Returns the modified source. + */ +function insertWrapDetails(source, details) { + var length = details.length, + lastIndex = length - 1; + + details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; + details = details.join(length > 2 ? ', ' : ' '); + return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); +} + +/** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ +function isIndex(value, length) { + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && + (typeof value == 'number' || reIsUint.test(value)) && + (value > -1 && value % 1 == 0 && value < length); +} + +/** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ +function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); +} + +/** + * Reorder `array` according to the specified indexes where the element at + * the first index is assigned as the first element, the element at + * the second index is assigned as the second element, and so on. + * + * @private + * @param {Array} array The array to reorder. + * @param {Array} indexes The arranged array indexes. + * @returns {Array} Returns `array`. + */ +function reorder(array, indexes) { + var arrLength = array.length, + length = nativeMin(indexes.length, arrLength), + oldArray = copyArray(array); + + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; + } + return array; +} + +/** + * Sets the `toString` method of `wrapper` to mimic the source of `reference` + * with wrapper details in a comment at the top of the source body. + * + * @private + * @param {Function} wrapper The function to modify. + * @param {Function} reference The reference function. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Function} Returns `wrapper`. + */ +var setWrapToString = !defineProperty ? identity : function(wrapper, reference, bitmask) { + var source = (reference + ''); + return defineProperty(wrapper, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))) + }); +}; + +/** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to process. + * @returns {string} Returns the source code. + */ +function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; +} + +/** + * Updates wrapper `details` based on `bitmask` flags. + * + * @private + * @returns {Array} details The details to modify. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Array} Returns `details`. + */ +function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = '_.' + pair[0]; + if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); +} + +/** + * Creates a function that invokes `func` with `partials` prepended to the + * arguments it receives. This method is like `_.bind` except it does **not** + * alter the `this` binding. + * + * The `_.partial.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 0.2.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var sayHelloTo = _.partial(greet, 'hello'); + * sayHelloTo('fred'); + * // => 'hello fred' + * + * // Partially applied with placeholders. + * var greetFred = _.partial(greet, _, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + */ +var partial = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partial)); + return createWrap(func, PARTIAL_FLAG, undefined, partials, holders); +}); + +/** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ +function isFunction(value) { + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 8-9 which returns 'object' for typed array and other constructors. + var tag = isObject(value) ? objectToString.call(value) : ''; + return tag == funcTag || tag == genTag; +} + +/** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ +function isObject(value) { + var type = typeof value; + return !!value && (type == 'object' || type == 'function'); +} + +/** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ +function isObjectLike(value) { + return !!value && typeof value == 'object'; +} + +/** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ +function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && objectToString.call(value) == symbolTag); +} + +/** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ +function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; +} + +/** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ +function toInteger(value) { + var result = toFinite(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; +} + +/** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ +function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = isObject(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = value.replace(reTrim, ''); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); +} + +/** + * Creates a function that returns `value`. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {*} value The value to return from the new function. + * @returns {Function} Returns the new constant function. + * @example + * + * var objects = _.times(2, _.constant({ 'a': 1 })); + * + * console.log(objects); + * // => [{ 'a': 1 }, { 'a': 1 }] + * + * console.log(objects[0] === objects[1]); + * // => true + */ +function constant(value) { + return function() { + return value; + }; +} + +/** + * This method returns the first argument it receives. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {*} value Any value. + * @returns {*} Returns `value`. + * @example + * + * var object = { 'a': 1 }; + * + * console.log(_.identity(object) === object); + * // => true + */ +function identity(value) { + return value; +} + +// Assign default placeholders. +partial.placeholder = {}; + +module.exports = partial; diff --git a/reverse_engineering/node_modules/lodash.partial/package.json b/reverse_engineering/node_modules/lodash.partial/package.json new file mode 100644 index 0000000..799c10f --- /dev/null +++ b/reverse_engineering/node_modules/lodash.partial/package.json @@ -0,0 +1,70 @@ +{ + "_from": "lodash.partial", + "_id": "lodash.partial@4.2.1", + "_inBundle": false, + "_integrity": "sha1-SfPYz9qjv/izqR0SfpIyRUGJYdQ=", + "_location": "/lodash.partial", + "_phantomChildren": {}, + "_requested": { + "type": "tag", + "registry": true, + "raw": "lodash.partial", + "name": "lodash.partial", + "escapedName": "lodash.partial", + "rawSpec": "", + "saveSpec": null, + "fetchSpec": "latest" + }, + "_requiredBy": [ + "#USER", + "/" + ], + "_resolved": "https://registry.npmjs.org/lodash.partial/-/lodash.partial-4.2.1.tgz", + "_shasum": "49f3d8cfdaa3bff8b3a91d127e923245418961d4", + "_spec": "lodash.partial", + "_where": "/home/volodymyr/projects/hackolade_plugins/OpenAPI/reverse_engineering", + "author": { + "name": "John-David Dalton", + "email": "john.david.dalton@gmail.com", + "url": "http://allyoucanleet.com/" + }, + "bugs": { + "url": "https://github.com/lodash/lodash/issues" + }, + "bundleDependencies": false, + "contributors": [ + { + "name": "John-David Dalton", + "email": "john.david.dalton@gmail.com", + "url": "http://allyoucanleet.com/" + }, + { + "name": "Blaine Bublitz", + "email": "blaine.bublitz@gmail.com", + "url": "https://github.com/phated" + }, + { + "name": "Mathias Bynens", + "email": "mathias@qiwi.be", + "url": "https://mathiasbynens.be/" + } + ], + "deprecated": false, + "description": "The lodash method `_.partial` exported as a module.", + "homepage": "https://lodash.com/", + "icon": "https://lodash.com/icon.svg", + "keywords": [ + "lodash-modularized", + "partial" + ], + "license": "MIT", + "name": "lodash.partial", + "repository": { + "type": "git", + "url": "git+https://github.com/lodash/lodash.git" + }, + "scripts": { + "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" + }, + "version": "4.2.1" +} diff --git a/reverse_engineering/package.json b/reverse_engineering/package.json index bb6dd53..74a98ba 100644 --- a/reverse_engineering/package.json +++ b/reverse_engineering/package.json @@ -5,8 +5,10 @@ "author": "Hackolade", "dependencies": { "js-yaml": "^3.13.0", + "lodash.isplainobject": "^4.0.6", + "lodash.partial": "^4.2.1", "node-uuid": "^1.4.7" }, "type": "file", "installed": true -} \ No newline at end of file +} From 07adf1f317d0cd9d04b24f1247de8c04585cd70d Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 29 Aug 2019 19:12:12 +0300 Subject: [PATCH 05/49] convert null to string during re of json schema --- reverse_engineering/api.js | 20 +++++++- .../adaptJsonSchema/adaptJsonSchema.js | 20 ++++++++ .../helpers/adaptJsonSchema/mapJsonSchema.js | 46 +++++++++++++++++++ 3 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 reverse_engineering/helpers/adaptJsonSchema/adaptJsonSchema.js create mode 100644 reverse_engineering/helpers/adaptJsonSchema/mapJsonSchema.js diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index c1b9b70..3c03415 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -3,6 +3,7 @@ const commonHelper = require('./helpers/commonHelper'); const dataHelper = require('./helpers/dataHelper'); const errorHelper = require('./helpers/errorHelper'); +const adaptJsonSchema = require('./helpers/adaptJsonSchema/adaptJsonSchema'); module.exports = { reFromFile(data, logger, callback) { @@ -20,7 +21,24 @@ module.exports = { logger.log('error', handledError, title); callback(handledError); }); - } + }, + + adaptJsonSchema(data, logger, callback) { + logger.log('info', 'Adaptation of JSON Schema started...', 'Adapt JSON Schema'); + try { + const jsonSchema = JSON.parse(data.jsonSchema); + + const adaptedJsonSchema = adaptJsonSchema(jsonSchema); + + logger.log('info', 'Adaptation of JSON Schema finished.', 'Adapt JSON Schema'); + + callback(null, { + jsonSchema: JSON.stringify(adaptedJsonSchema) + }); + } catch(e) { + callback(commonHelper.handleErrorObject(e, 'Adapt JSON Schema'), data); + } + } }; const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { diff --git a/reverse_engineering/helpers/adaptJsonSchema/adaptJsonSchema.js b/reverse_engineering/helpers/adaptJsonSchema/adaptJsonSchema.js new file mode 100644 index 0000000..8f257d5 --- /dev/null +++ b/reverse_engineering/helpers/adaptJsonSchema/adaptJsonSchema.js @@ -0,0 +1,20 @@ +const mapJsonSchema = require('./mapJsonSchema'); + +const convertToString = (jsonSchema) => { + return Object.assign({}, jsonSchema, { + type: 'string', + nullable: true + }); +}; + +const adaptJsonSchema = (jsonSchema) => { + return mapJsonSchema(jsonSchema, (jsonSchemaItem) => { + if (jsonSchemaItem.type !== 'null') { + return jsonSchemaItem; + } + + return convertToString(jsonSchemaItem); + }); +}; + +module.exports = adaptJsonSchema; diff --git a/reverse_engineering/helpers/adaptJsonSchema/mapJsonSchema.js b/reverse_engineering/helpers/adaptJsonSchema/mapJsonSchema.js new file mode 100644 index 0000000..b71d370 --- /dev/null +++ b/reverse_engineering/helpers/adaptJsonSchema/mapJsonSchema.js @@ -0,0 +1,46 @@ +const isPlainObject = require('lodash.isplainobject'); +const partial = require('lodash.partial'); + +const add = (obj, properties) => Object.assign({}, obj, properties); + +const mapJsonSchema = (jsonSchema, callback) => { + const mapProperties = (properties, mapper) => Object.keys(properties).reduce((newProperties, propertyName) => { + return add(newProperties, { + [propertyName]: mapper(properties[propertyName]) + }); + }, {}); + const mapItems = (items, mapper) => { + if (Array.isArray(items)) { + return items.map(jsonSchema => mapper(jsonSchema)); + } else if (isPlainObject(items)) { + return mapper(items); + } else { + return items; + } + }; + const applyTo = (properties, jsonSchema, mapper) => { + return properties.reduce((jsonSchema, propertyName) => { + if (!jsonSchema[propertyName]) { + return jsonSchema; + } + + return Object.assign({}, jsonSchema, { + [propertyName]: mapper(jsonSchema[propertyName]) + }); + }, jsonSchema); + }; + if (!isPlainObject(jsonSchema)) { + return jsonSchema; + } + const mapper = partial(mapJsonSchema, partial.placeholder, callback); + const propertiesLike = [ 'properties', 'definitions', 'patternProperties' ]; + const itemsLike = [ 'items', 'oneOf', 'allOf', 'anyOf', 'not' ]; + + const copyJsonSchema = Object.assign({}, jsonSchema); + const jsonSchemaWithNewProperties = applyTo(propertiesLike, copyJsonSchema, partial(mapProperties, partial.placeholder, mapper)); + const newJsonSchema = applyTo(itemsLike, jsonSchemaWithNewProperties, partial(mapItems, partial.placeholder, mapper)); + + return callback(newJsonSchema); +}; + +module.exports = mapJsonSchema; From 5bfaab5c3dcaa24f5460d52188418d7e711de57f Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Thu, 5 Dec 2019 13:09:49 +0200 Subject: [PATCH 06/49] enable ddl as definitions --- package.json | 5 ++++- snippets/definitions.json | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 992e56c..0e4d051 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,10 @@ "enableReverseEngineering": { "jsonDocument": true, "jsonSchema": true, - "ddl": false, + "ddl": { + "entities": false, + "model_definitions": true + }, "xsd": false, "plugin": true }, diff --git a/snippets/definitions.json b/snippets/definitions.json index 27ab0f6..1336a61 100644 --- a/snippets/definitions.json +++ b/snippets/definitions.json @@ -5,7 +5,10 @@ "properties": [{ "name": "schemas", "type": "componentObject", - "subtype": "schema" + "subtype": "schema", + "hackoladeMeta": { + "source": true + } },{ "name": "responses", "type": "componentObject", From 96e4ba013a861cae323f4eee30b007b0e42279cb Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Wed, 11 Dec 2019 17:28:23 +0200 Subject: [PATCH 07/49] enable re to definitions --- package.json | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 0e4d051..126918b 100644 --- a/package.json +++ b/package.json @@ -21,13 +21,22 @@ }, "disableMultipleTypes": false, "enableReverseEngineering": { - "jsonDocument": true, - "jsonSchema": true, + "jsonDocument": { + "entities": false, + "model_definitions": true + }, + "jsonSchema": { + "entities": false, + "model_definitions": true + }, "ddl": { "entities": false, "model_definitions": true }, - "xsd": false, + "xsd": { + "entities": false, + "model_definitions": true + }, "plugin": true }, "disableDenormalization": true, From a51f458c9f16a1e4ca0410b277b4348bd66968f8 Mon Sep 17 00:00:00 2001 From: Lench Volodymyr Date: Wed, 11 Dec 2019 17:35:22 +0200 Subject: [PATCH 08/49] fix definitions path in the reference inside schema components --- reverse_engineering/helpers/dataHelper.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse_engineering/helpers/dataHelper.js b/reverse_engineering/helpers/dataHelper.js index 4696ff9..dbcd97c 100644 --- a/reverse_engineering/helpers/dataHelper.js +++ b/reverse_engineering/helpers/dataHelper.js @@ -766,7 +766,7 @@ const getModelData = (schema) => { }; const getComponents = (schemaComponents = {}, fieldOrder) => { - const schemasData = handleDefinitionSchemaProps(schemaComponents.schemas || {}, fieldOrder); + const schemasData = handleObject(schemas => handleDefinitionSchemaProps(schemas || {}, fieldOrder), schemaComponents.schemas); const parametersData = handleObject(handleParameter, schemaComponents.parameters); const examplesData = handleObject(handleExample, schemaComponents.examples); const requestBodiesData = handleObject(handleRequestBody, schemaComponents.requestBodies); From 33e7539fe48c9ff854af78227d22f70a8581c5e1 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 12 Dec 2019 12:01:44 +0200 Subject: [PATCH 09/49] RE: add handling schemas with components only --- reverse_engineering/api.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 0e4330a..2689d61 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -115,7 +115,17 @@ const handleOpenAPIData = (openAPISchema, fieldOrder) => new Promise((resolve, r }) ]; }, []); - return resolve({ hackoladeData, modelData }); + if (hackoladeData.length) { + return resolve({ hackoladeData, modelData }); + } + + return resolve({ + hackoladeData: [{ + objectNames: {}, + doc: { modelDefinitions: definitions } + }], + modelData + }); } catch (error) { return reject({ error: errorHelper.getConvertError(error), openAPISchema }); } From d4c605472335aa5a6792720d2b5c9a07a5e4d4ab Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 19 Dec 2019 14:57:37 +0200 Subject: [PATCH 10/49] implement support of external definitions to OpenAPI schemas --- forward_engineering/helpers/typeHelper.js | 25 +++++++++++- package.json | 1 + reverse_engineering/api.js | 8 +++- reverse_engineering/helpers/commonHelper.js | 38 ++++++++++++++++++- .../resolveExternalDefinitionPathHelper.js | 30 +++++++++++++++ 5 files changed, 96 insertions(+), 6 deletions(-) create mode 100644 reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 7f6b385..75729be 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -71,10 +71,31 @@ function getTypeProps(data, key) { function getRef({ $ref: ref }) { if (ref.startsWith('#')) { ref = ref.replace('#model/definitions', '#/components'); + return { $ref: prepareReferenceName(ref) }; } - return { $ref: prepareReferenceName(ref) }; -} + const [ pathToFile, relativePath] = ref.split('#/'); + if (!relativePath) { + return { $ref: prepareReferenceName(ref) }; + } + + const path = relativePath.replace(/\/properties/g, '').split('/'); + if (path[0] === 'definitions') { + return { $ref: `${pathToFile}#/components/${path.slice(1).join('/')}` }; + } + + if (path[3] !== 'response') { + return { $ref: `${pathToFile}#/paths/${path.join('/')}` }; + } + + const bucketWithRequest = path.slice(0,2); + const response = path[2]; + const pathToItem = path.slice(4) + + const pathWithResponses = [ ...bucketWithRequest, 'responses', response, ...pathToItem ]; + + return { $ref: `${pathToFile}#/paths/${pathWithResponses.join('/')}` }; +}; function hasRef(data = {}) { return data.$ref ? true : false; diff --git a/package.json b/package.json index 126918b..f49db86 100644 --- a/package.json +++ b/package.json @@ -71,6 +71,7 @@ "disableRelationships": true, "disableJsonPreview": false, "enableErdToggle": true, + "externalDefinitionsFromTargetSchema": true, "enableStackedNestedCollections": true } }, diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 0e4330a..5851701 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -61,7 +61,11 @@ module.exports = { } catch(e) { callback(commonHelper.handleErrorObject(e, 'Adapt JSON Schema'), data); } - } + }, + + resolveExternalDefinitionPath(data, logger, callback) { + resolveExternalDefinitionPathHelper.resolvePath(data, callback); + } }; const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { @@ -74,7 +78,7 @@ const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { }; const getOpenAPISchema = (data, filePath) => new Promise((resolve, reject) => { - const { extension, fileName } = commonHelper.getPathData(filePath); + const { extension, fileName } = commonHelper.getPathData(data, filePath); try { const openAPISchemaWithModelName = dataHelper.getOpenAPIJsonSchema(data, fileName, extension); diff --git a/reverse_engineering/helpers/commonHelper.js b/reverse_engineering/helpers/commonHelper.js index 05bbd4a..8c3eaf2 100644 --- a/reverse_engineering/helpers/commonHelper.js +++ b/reverse_engineering/helpers/commonHelper.js @@ -6,6 +6,7 @@ const yaml = require('js-yaml'); const errorHelper = require('./errorHelper'); const CHOICES = ['allOf', 'oneOf', 'anyOf', 'not']; +const ALLOWED_EXTENSIONS = ['.json', '.yaml']; const getFileData = (filePath) => new Promise((resolve, reject) => { fs.readFile(filePath, 'utf-8', (error, content) => { @@ -17,10 +18,43 @@ const getFileData = (filePath) => new Promise((resolve, reject) => { }); }); -const getPathData = (filePath) => { +const isJson = data => { + try { + JSON.parse(data); + + return true; + } catch (err) { + return false; + } +}; + +const isYaml = data => { + try { + yaml.load(data); + + return true; + } catch (err) { + return false; + } +}; + +const getPathData = (data, filePath) => { const extension = path.extname(filePath); const fileName = path.basename(filePath, extension); - return {extension, fileName }; + + if (ALLOWED_EXTENSIONS.includes(extension)) { + return { extension, fileName }; + } + + if (isJson(data)) { + return { extension: '.json', fileName }; + } + + if (isYaml(data)) { + return { extension: '.yaml', fileName }; + } + + return { extension, fileName }; }; const handleErrorObject = (error, title) => { diff --git a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js new file mode 100644 index 0000000..72fd2f5 --- /dev/null +++ b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js @@ -0,0 +1,30 @@ +const resolvePath = (data, callback) => { + let path = (data.path || '').split('/'); + if (!path[0]) { + path = path.slice(1); + } + if (!path[0]) { + return callback({ + title: 'Resolve external definition path error', + message: 'External definition path is not valid' + }, data.path || ''); + } + if (path[0] === 'components') { + return callback(null, 'definitions' + addPropertiesToPath(path)); + } + + const bucket = path[1]; + const request = path[2]; + + if (path[3] === 'responses') { + return callback(null, `${bucket}/${request}/${path[4]}${addPropertiesToPath(['response', ...path.slice(5)])}`); + } + + return callback(null, `${bucket}/${request}${addPropertiesToPath(path.slice(3))}`); +}; + +const addPropertiesToPath = path => path.length ? '/properties/' + path.join('/properties/') : ''; + +module.exports = { + resolvePath +}; From e73d62e77d99d72170d9179175748d007e23ff3d Mon Sep 17 00:00:00 2001 From: Mikhail <44769346+mtseluiko@users.noreply.github.com> Date: Fri, 20 Dec 2019 11:22:35 +0200 Subject: [PATCH 11/49] Revert "implement support of external definitions to OpenAPI schemas" --- forward_engineering/helpers/typeHelper.js | 25 +----------- package.json | 1 - reverse_engineering/api.js | 8 +--- reverse_engineering/helpers/commonHelper.js | 38 +------------------ .../resolveExternalDefinitionPathHelper.js | 30 --------------- 5 files changed, 6 insertions(+), 96 deletions(-) delete mode 100644 reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 75729be..7f6b385 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -71,31 +71,10 @@ function getTypeProps(data, key) { function getRef({ $ref: ref }) { if (ref.startsWith('#')) { ref = ref.replace('#model/definitions', '#/components'); - return { $ref: prepareReferenceName(ref) }; } - const [ pathToFile, relativePath] = ref.split('#/'); - if (!relativePath) { - return { $ref: prepareReferenceName(ref) }; - } - - const path = relativePath.replace(/\/properties/g, '').split('/'); - if (path[0] === 'definitions') { - return { $ref: `${pathToFile}#/components/${path.slice(1).join('/')}` }; - } - - if (path[3] !== 'response') { - return { $ref: `${pathToFile}#/paths/${path.join('/')}` }; - } - - const bucketWithRequest = path.slice(0,2); - const response = path[2]; - const pathToItem = path.slice(4) - - const pathWithResponses = [ ...bucketWithRequest, 'responses', response, ...pathToItem ]; - - return { $ref: `${pathToFile}#/paths/${pathWithResponses.join('/')}` }; -}; + return { $ref: prepareReferenceName(ref) }; +} function hasRef(data = {}) { return data.$ref ? true : false; diff --git a/package.json b/package.json index f49db86..126918b 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,6 @@ "disableRelationships": true, "disableJsonPreview": false, "enableErdToggle": true, - "externalDefinitionsFromTargetSchema": true, "enableStackedNestedCollections": true } }, diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index e7eef05..2689d61 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -61,11 +61,7 @@ module.exports = { } catch(e) { callback(commonHelper.handleErrorObject(e, 'Adapt JSON Schema'), data); } - }, - - resolveExternalDefinitionPath(data, logger, callback) { - resolveExternalDefinitionPathHelper.resolvePath(data, callback); - } + } }; const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { @@ -78,7 +74,7 @@ const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { }; const getOpenAPISchema = (data, filePath) => new Promise((resolve, reject) => { - const { extension, fileName } = commonHelper.getPathData(data, filePath); + const { extension, fileName } = commonHelper.getPathData(filePath); try { const openAPISchemaWithModelName = dataHelper.getOpenAPIJsonSchema(data, fileName, extension); diff --git a/reverse_engineering/helpers/commonHelper.js b/reverse_engineering/helpers/commonHelper.js index 8c3eaf2..05bbd4a 100644 --- a/reverse_engineering/helpers/commonHelper.js +++ b/reverse_engineering/helpers/commonHelper.js @@ -6,7 +6,6 @@ const yaml = require('js-yaml'); const errorHelper = require('./errorHelper'); const CHOICES = ['allOf', 'oneOf', 'anyOf', 'not']; -const ALLOWED_EXTENSIONS = ['.json', '.yaml']; const getFileData = (filePath) => new Promise((resolve, reject) => { fs.readFile(filePath, 'utf-8', (error, content) => { @@ -18,43 +17,10 @@ const getFileData = (filePath) => new Promise((resolve, reject) => { }); }); -const isJson = data => { - try { - JSON.parse(data); - - return true; - } catch (err) { - return false; - } -}; - -const isYaml = data => { - try { - yaml.load(data); - - return true; - } catch (err) { - return false; - } -}; - -const getPathData = (data, filePath) => { +const getPathData = (filePath) => { const extension = path.extname(filePath); const fileName = path.basename(filePath, extension); - - if (ALLOWED_EXTENSIONS.includes(extension)) { - return { extension, fileName }; - } - - if (isJson(data)) { - return { extension: '.json', fileName }; - } - - if (isYaml(data)) { - return { extension: '.yaml', fileName }; - } - - return { extension, fileName }; + return {extension, fileName }; }; const handleErrorObject = (error, title) => { diff --git a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js deleted file mode 100644 index 72fd2f5..0000000 --- a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js +++ /dev/null @@ -1,30 +0,0 @@ -const resolvePath = (data, callback) => { - let path = (data.path || '').split('/'); - if (!path[0]) { - path = path.slice(1); - } - if (!path[0]) { - return callback({ - title: 'Resolve external definition path error', - message: 'External definition path is not valid' - }, data.path || ''); - } - if (path[0] === 'components') { - return callback(null, 'definitions' + addPropertiesToPath(path)); - } - - const bucket = path[1]; - const request = path[2]; - - if (path[3] === 'responses') { - return callback(null, `${bucket}/${request}/${path[4]}${addPropertiesToPath(['response', ...path.slice(5)])}`); - } - - return callback(null, `${bucket}/${request}${addPropertiesToPath(path.slice(3))}`); -}; - -const addPropertiesToPath = path => path.length ? '/properties/' + path.join('/properties/') : ''; - -module.exports = { - resolvePath -}; From 94557d8663fba45df3a6b5c92b48b77e5edf7f0f Mon Sep 17 00:00:00 2001 From: Mikhail Tseluiko Date: Fri, 20 Dec 2019 11:32:55 +0200 Subject: [PATCH 12/49] RE: fix sortObject on null --- reverse_engineering/helpers/commonHelper.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse_engineering/helpers/commonHelper.js b/reverse_engineering/helpers/commonHelper.js index 05bbd4a..d1608d2 100644 --- a/reverse_engineering/helpers/commonHelper.js +++ b/reverse_engineering/helpers/commonHelper.js @@ -46,7 +46,7 @@ const reorderFields = (data, filedOrder) => { }; const sortObject = (obj) => { - return Object.keys(obj).sort().reduce((acc,key)=>{ + return Object.keys(obj || {}).sort().reduce((acc,key)=>{ if (CHOICES.includes(key)) { acc[key] = obj[key]; return acc; From d6543a0400ac08b34dcf3d68cd3e10047e0bb25b Mon Sep 17 00:00:00 2001 From: Mikhail Tseluiko Date: Sun, 22 Dec 2019 11:09:47 +0200 Subject: [PATCH 13/49] Fix complex extensions handling --- forward_engineering/helpers/extensionsHelper.js | 9 ++++++++- reverse_engineering/helpers/dataHelper.js | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/forward_engineering/helpers/extensionsHelper.js b/forward_engineering/helpers/extensionsHelper.js index 47c2f01..376699d 100644 --- a/forward_engineering/helpers/extensionsHelper.js +++ b/forward_engineering/helpers/extensionsHelper.js @@ -2,7 +2,14 @@ function getExtensions(data = []) { return data .filter(filterExtensionsByPrefix) .reduce((acc, { extensionPattern, extensionValue }) => { - acc[extensionPattern] = extensionValue; + let parsedValue; + try { + parsedValue = JSON.parse(extensionValue); + } catch(err) { + parsedValue = extensionValue; + } + acc[extensionPattern] = parsedValue; + return acc; }, {}); diff --git a/reverse_engineering/helpers/dataHelper.js b/reverse_engineering/helpers/dataHelper.js index dbcd97c..8af737b 100644 --- a/reverse_engineering/helpers/dataHelper.js +++ b/reverse_engineering/helpers/dataHelper.js @@ -11,7 +11,7 @@ const getExtensions = (schema) => { const isExtension = (keyword) => keyword.substring(0, 2) === EXTENSION_SYMBOL; const getExtension = (keyword, data) => ({ extensionPattern: keyword, - extensionValue: data + extensionValue: typeof data === 'object' ? JSON.stringify(data) : data }); return Object.keys(schema).reduce((accumulator, key) => { From 85d797b0d241ba293931e8b5a0bf44f455cbf7e8 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Mon, 23 Dec 2019 15:59:03 +0200 Subject: [PATCH 14/49] externalDefinitions: fix missing dependency --- reverse_engineering/api.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 5851701..3eec663 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -4,6 +4,7 @@ const commonHelper = require('./helpers/commonHelper'); const dataHelper = require('./helpers/dataHelper'); const errorHelper = require('./helpers/errorHelper'); const adaptJsonSchema = require('./helpers/adaptJsonSchema/adaptJsonSchema'); +const resolveExternalDefinitionPathHelper = require('./helpers/resolveExternalDefinitionPathHelper'); const validationHelper = require('../forward_engineering/helpers/validationHelper'); module.exports = { @@ -119,7 +120,17 @@ const handleOpenAPIData = (openAPISchema, fieldOrder) => new Promise((resolve, r }) ]; }, []); - return resolve({ hackoladeData, modelData }); + if (hackoladeData.length) { + return resolve({ hackoladeData, modelData }); + } + + return resolve({ + hackoladeData: [{ + objectNames: {}, + doc: { modelDefinitions: definitions } + }], + modelData + }); } catch (error) { return reject({ error: errorHelper.getConvertError(error), openAPISchema }); } From c833dd9259786d64094c1c0a9054abbe62cc4d53 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Tue, 24 Dec 2019 12:06:32 +0200 Subject: [PATCH 15/49] FE: fix schema properties in external definitions path --- forward_engineering/helpers/typeHelper.js | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 75729be..940292a 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -79,20 +79,26 @@ function getRef({ $ref: ref }) { return { $ref: prepareReferenceName(ref) }; } - const path = relativePath.replace(/\/properties/g, '').split('/'); + const path = relativePath.split('/'); if (path[0] === 'definitions') { - return { $ref: `${pathToFile}#/components/${path.slice(1).join('/')}` }; + if (path[2] === 'schemas') { + return { $ref: `${pathToFile}#/components/${path.slice(4).join('/')}` } + } } - if (path[3] !== 'response') { - return { $ref: `${pathToFile}#/paths/${path.join('/')}` }; + const schemaIndex = path.indexOf('schema'); + const schemaPath = path.slice(schemaIndex); + const pathWithoutSlashes = path.slice(0, schemaIndex).filter(item => item !== 'properties'); + + if (pathWithoutSlashes[3] !== 'response') { + return { $ref: `${pathToFile}#/paths/${[ ...pathWithoutSlashes, ...schemaPath].join('/')}` }; } - const bucketWithRequest = path.slice(0,2); - const response = path[2]; - const pathToItem = path.slice(4) + const bucketWithRequest = pathWithoutSlashes.slice(0,2); + const response = pathWithoutSlashes[2]; + const pathToItem = pathWithoutSlashes.slice(4) - const pathWithResponses = [ ...bucketWithRequest, 'responses', response, ...pathToItem ]; + const pathWithResponses = [ ...bucketWithRequest, 'responses', response, ...pathToItem, ...schemaPath ]; return { $ref: `${pathToFile}#/paths/${pathWithResponses.join('/')}` }; }; From ee29955e6cb4ac2e96d948d7f0fc616d9e1f8f4d Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Tue, 24 Dec 2019 17:20:50 +0200 Subject: [PATCH 16/49] RE external definitions: fix definitions path resolving --- .../helpers/resolveExternalDefinitionPathHelper.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js index 72fd2f5..beb8256 100644 --- a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js +++ b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js @@ -9,8 +9,8 @@ const resolvePath = (data, callback) => { message: 'External definition path is not valid' }, data.path || ''); } - if (path[0] === 'components') { - return callback(null, 'definitions' + addPropertiesToPath(path)); + if (path[0] === 'components' || path[0] === 'definitions') { + return callback(null, 'definitions' + addPropertiesToPath(path.slice(1))); } const bucket = path[1]; From d9f138bcba42e603dfac2cb63f7082cb1bd560cc Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 26 Dec 2019 17:59:19 +0200 Subject: [PATCH 17/49] RE: fix callbacks handling --- reverse_engineering/helpers/dataHelper.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/reverse_engineering/helpers/dataHelper.js b/reverse_engineering/helpers/dataHelper.js index 8af737b..4eb43fd 100644 --- a/reverse_engineering/helpers/dataHelper.js +++ b/reverse_engineering/helpers/dataHelper.js @@ -197,8 +197,8 @@ const getContainersFromRequestCallbacks = request => { const getContainersFromCallbacks = callbacks => { return Object.keys(callbacks).reduce((accum, callbackName) => { - const rawCallbackPath = callbacks[callbackName]; - return Object.keys(rawCallbackPath).map(pathName => { + const rawCallbackPath = callbacks[callbackName] || {}; + const containers = Object.keys(rawCallbackPath).map(pathName => { const callbackPath = rawCallbackPath[pathName]; if (callbackPath.$ref) { return accum; @@ -208,11 +208,14 @@ const getContainersFromCallbacks = callbacks => { const requestCallbacksPathsData = requestsNames.reduce((accum, requestName) => { return accum.concat(getContainersFromRequestCallbacks(callbackPath[requestName])); }, []); - return accum.concat({ + + return [{ data: Object.assign({}, {name: pathName}, extensionsObject), callbackPath - }, requestCallbacksPathsData); + }, ...requestCallbacksPathsData]; }); + + return accum.concat(containers); }, []); } From 74e0334d83a1464c8acc5cc5ca32d0ee7476b6d9 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 26 Dec 2019 18:37:55 +0200 Subject: [PATCH 18/49] fix externalDefinitions path resolving in components/schemas --- .../helpers/componentsHelpers/parametersHelper.js | 2 +- forward_engineering/helpers/typeHelper.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/forward_engineering/helpers/componentsHelpers/parametersHelper.js b/forward_engineering/helpers/componentsHelpers/parametersHelper.js index 7f83f42..9f8291a 100644 --- a/forward_engineering/helpers/componentsHelpers/parametersHelper.js +++ b/forward_engineering/helpers/componentsHelpers/parametersHelper.js @@ -32,7 +32,7 @@ function mapParameter(data, required) { name: data.parameterName, in: getIn(data.type), description: data.description, - required: (required || data.required) || undefined, + required: !!(required || data.required) || undefined, deprecated: data.deprecated, allowEmptyValue: data.allowEmptyValue, style: data.style, diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 940292a..b8d806c 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -82,12 +82,12 @@ function getRef({ $ref: ref }) { const path = relativePath.split('/'); if (path[0] === 'definitions') { if (path[2] === 'schemas') { - return { $ref: `${pathToFile}#/components/${path.slice(4).join('/')}` } + return { $ref: `${pathToFile}#/components/schemas/${path.slice(4).join('/')}` }; } } const schemaIndex = path.indexOf('schema'); - const schemaPath = path.slice(schemaIndex); + const schemaPath = schemaIndex === -1 ? [] : path.slice(schemaIndex); const pathWithoutSlashes = path.slice(0, schemaIndex).filter(item => item !== 'properties'); if (pathWithoutSlashes[3] !== 'response') { From 0a3e8c705210eb653cf0bf9fd3c09a5d3069f606 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 2 Jan 2020 15:25:50 +0200 Subject: [PATCH 19/49] fix definitions FE --- forward_engineering/helpers/typeHelper.js | 1 + 1 file changed, 1 insertion(+) diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 66f4ee4..b8d806c 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -71,6 +71,7 @@ function getTypeProps(data, key) { function getRef({ $ref: ref }) { if (ref.startsWith('#')) { ref = ref.replace('#model/definitions', '#/components'); + return { $ref: prepareReferenceName(ref) }; } const [ pathToFile, relativePath] = ref.split('#/'); From fba901a915b0d6c1752cfc683fc36ff2949733a2 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 2 Jan 2020 15:55:28 +0200 Subject: [PATCH 20/49] Enable external definitions RE in config --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index d0a6d12..5d3d971 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,8 @@ "disableRelationships": true, "disableJsonPreview": false, "enableErdToggle": true, - "enableStackedNestedCollections": true + "enableStackedNestedCollections": true, + "externalDefinitionsFromTargetSchema": true } }, "description": "Hackolade plugin for OpenAPI", From 8ff5f90274a779912765154063159ae3c8fe72cc Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 2 Jan 2020 16:32:31 +0200 Subject: [PATCH 21/49] Fix merge conflict --- forward_engineering/helpers/typeHelper.js | 1 + reverse_engineering/api.js | 8 +++-- reverse_engineering/helpers/commonHelper.js | 38 +++++++++++++++++++-- 3 files changed, 43 insertions(+), 4 deletions(-) diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index b8d806c..104c84b 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -71,6 +71,7 @@ function getTypeProps(data, key) { function getRef({ $ref: ref }) { if (ref.startsWith('#')) { ref = ref.replace('#model/definitions', '#/components'); + return { $ref: prepareReferenceName(ref) }; } diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 06067d6..3eec663 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -62,7 +62,11 @@ module.exports = { } catch(e) { callback(commonHelper.handleErrorObject(e, 'Adapt JSON Schema'), data); } - } + }, + + resolveExternalDefinitionPath(data, logger, callback) { + resolveExternalDefinitionPathHelper.resolvePath(data, callback); + } }; const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { @@ -75,7 +79,7 @@ const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { }; const getOpenAPISchema = (data, filePath) => new Promise((resolve, reject) => { - const { extension, fileName } = commonHelper.getPathData(filePath); + const { extension, fileName } = commonHelper.getPathData(data, filePath); try { const openAPISchemaWithModelName = dataHelper.getOpenAPIJsonSchema(data, fileName, extension); diff --git a/reverse_engineering/helpers/commonHelper.js b/reverse_engineering/helpers/commonHelper.js index d1608d2..960c70b 100644 --- a/reverse_engineering/helpers/commonHelper.js +++ b/reverse_engineering/helpers/commonHelper.js @@ -6,6 +6,7 @@ const yaml = require('js-yaml'); const errorHelper = require('./errorHelper'); const CHOICES = ['allOf', 'oneOf', 'anyOf', 'not']; +const ALLOWED_EXTENSIONS = ['.json', '.yaml']; const getFileData = (filePath) => new Promise((resolve, reject) => { fs.readFile(filePath, 'utf-8', (error, content) => { @@ -17,10 +18,43 @@ const getFileData = (filePath) => new Promise((resolve, reject) => { }); }); -const getPathData = (filePath) => { +const isJson = data => { + try { + JSON.parse(data); + + return true; + } catch (err) { + return false; + } +}; + +const isYaml = data => { + try { + yaml.load(data); + + return true; + } catch (err) { + return false; + } +}; + +const getPathData = (data, filePath) => { const extension = path.extname(filePath); const fileName = path.basename(filePath, extension); - return {extension, fileName }; + + if (ALLOWED_EXTENSIONS.includes(extension)) { + return { extension, fileName }; + } + + if (isJson(data)) { + return { extension: '.json', fileName }; + } + + if (isYaml(data)) { + return { extension: '.yaml', fileName }; + } + + return { extension, fileName }; }; const handleErrorObject = (error, title) => { From ab799edee0f5ddf994025f4ab1feffda253155c1 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 2 Jan 2020 18:04:04 +0200 Subject: [PATCH 22/49] FE: fix target schema external definitions on items inside requestBody --- forward_engineering/helpers/typeHelper.js | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/forward_engineering/helpers/typeHelper.js b/forward_engineering/helpers/typeHelper.js index 104c84b..51ddbf2 100644 --- a/forward_engineering/helpers/typeHelper.js +++ b/forward_engineering/helpers/typeHelper.js @@ -80,24 +80,30 @@ function getRef({ $ref: ref }) { return { $ref: prepareReferenceName(ref) }; } - const path = relativePath.split('/'); + let path = relativePath.split('/'); if (path[0] === 'definitions') { if (path[2] === 'schemas') { return { $ref: `${pathToFile}#/components/schemas/${path.slice(4).join('/')}` }; } + + path = ['', ...path]; } const schemaIndex = path.indexOf('schema'); const schemaPath = schemaIndex === -1 ? [] : path.slice(schemaIndex); - const pathWithoutSlashes = path.slice(0, schemaIndex).filter(item => item !== 'properties'); + const pathWithoutProperties = path.slice(0, schemaIndex).filter(item => item !== 'properties'); + const bucketWithRequest = (path[1] === 'definitions') ? path[1] : pathWithoutProperties.slice(0,2); + + if (pathWithoutProperties[3] !== 'response') { + if (pathWithoutProperties[2] !== 'requestBody') { + return { $ref: `${pathToFile}#/paths/${[ ...pathWithoutProperties, ...schemaPath].join('/')}` }; + } - if (pathWithoutSlashes[3] !== 'response') { - return { $ref: `${pathToFile}#/paths/${[ ...pathWithoutSlashes, ...schemaPath].join('/')}` }; + return { $ref: `${pathToFile}#/paths/${[ ...bucketWithRequest, 'requestBody', 'content', ...pathWithoutProperties.slice(3), ...schemaPath].join('/')}` }; } - const bucketWithRequest = pathWithoutSlashes.slice(0,2); - const response = pathWithoutSlashes[2]; - const pathToItem = pathWithoutSlashes.slice(4) + const response = pathWithoutProperties[2]; + const pathToItem = pathWithoutProperties.slice(4) const pathWithResponses = [ ...bucketWithRequest, 'responses', response, ...pathToItem, ...schemaPath ]; From 09ad594b675a2ecf4c8c1e143f722dcadbb79f01 Mon Sep 17 00:00:00 2001 From: Mikhail Tseluiko Date: Fri, 3 Jan 2020 00:34:02 +0200 Subject: [PATCH 23/49] RE: fix external definitions path resolving --- .../helpers/resolveExternalDefinitionPathHelper.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js index beb8256..6fb44f8 100644 --- a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js +++ b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js @@ -23,7 +23,7 @@ const resolvePath = (data, callback) => { return callback(null, `${bucket}/${request}${addPropertiesToPath(path.slice(3))}`); }; -const addPropertiesToPath = path => path.length ? '/properties/' + path.join('/properties/') : ''; +const addPropertiesToPath = path => path.length ? '/properties/' + path.filter(item => item !== 'properties').join('/properties/') : ''; module.exports = { resolvePath From ccec270388bacbd79462c2e0b8a4689191efb13b Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Tue, 14 Jan 2020 13:58:58 +0200 Subject: [PATCH 24/49] merge --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 5d3d971..c3eac5e 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "OpenAPI", - "version": "0.1.10", - "versionDate": "2019-12-23", + "version": "0.1.12", + "versionDate": "2020-01-03", "author": "hackolade", "engines": { "hackolade": "3.3.0", From df2fcdcce4b8a6bcc073b00d3105668f64831c2c Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Tue, 14 Jan 2020 14:47:33 +0200 Subject: [PATCH 25/49] add isActivated PP flag --- .../container_level/containerLevelConfig.json | 5 +++++ properties_pane/defaultData.json | 9 ++++++--- properties_pane/entity_level/entityLevelConfig.json | 5 +++++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/properties_pane/container_level/containerLevelConfig.json b/properties_pane/container_level/containerLevelConfig.json index 9eb8557..0bda11c 100644 --- a/properties_pane/container_level/containerLevelConfig.json +++ b/properties_pane/container_level/containerLevelConfig.json @@ -139,6 +139,11 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "regex": "^/" }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox" + }, { "propertyName": "Description", "propertyKeyword": "description", diff --git a/properties_pane/defaultData.json b/properties_pane/defaultData.json index e660f73..d2c548b 100644 --- a/properties_pane/defaultData.json +++ b/properties_pane/defaultData.json @@ -5,19 +5,22 @@ "dbVendor": "OpenAPI" }, "container": { - "name": "/path" + "name": "/path", + "isActivated": true }, "collection": { "collectionName": "get", "entityType": "request", "snippet": "requestStructure", - "subtype": "requestBody" + "subtype": "requestBody", + "isActivated": true }, "nestedCollection": { "collectionName": "200", "entityType": "response", "snippet": "responseStructure", - "subtype": "response" + "subtype": "response", + "isActivated": true }, "field": { "hackoladeMeta": { diff --git a/properties_pane/entity_level/entityLevelConfig.json b/properties_pane/entity_level/entityLevelConfig.json index 025e9fe..5a8d930 100644 --- a/properties_pane/entity_level/entityLevelConfig.json +++ b/properties_pane/entity_level/entityLevelConfig.json @@ -511,6 +511,11 @@ making sure that you maintain a proper JSON format. } ] }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox" + }, { "propertyName": "extensions", "propertyType": "group", From f5d8b6c186540547040110b10a1fc09867066397 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Tue, 14 Jan 2020 14:51:14 +0200 Subject: [PATCH 26/49] add commenting schema parts --- forward_engineering/api.js | 58 ++++++++++++++++--- .../componentsHelpers/responsesHelper.js | 14 ++++- forward_engineering/helpers/pathHelper.js | 43 +++++++++----- 3 files changed, 93 insertions(+), 22 deletions(-) diff --git a/forward_engineering/api.js b/forward_engineering/api.js index 043c3f3..b06f1d3 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -43,12 +43,18 @@ module.exports = { const resultSchema = Object.assign({}, openApiSchema, extensions); switch (data.targetScriptOptions.format) { - case 'yaml': - cb(null, yaml.safeDump(resultSchema, { skipInvalid: true })); + case 'yaml': { + const schema = yaml.safeDump(resultSchema, { skipInvalid: true }); + const schemaWithComments = addCommentsSigns(schema, 'yaml'); + cb(null, schemaWithComments); break; + } case 'json': - default: - cb(null, JSON.stringify(resultSchema, null, 2)); + default: { + const schema = JSON.stringify(resultSchema, null, 2); + const schemaWithComments = addCommentsSigns(schema, 'json'); + cb(null, schemaWithComments); + } } } catch (err) { logger.log('error', { error: err }, 'OpenAPI FE Error'); @@ -58,17 +64,22 @@ module.exports = { validate(data, logger, cb) { const { script, targetScriptOptions } = data; - + const isCommentedLine = /\s*#/i; try { + const filteredScript = script + .split('\n') + .filter(line => !isCommentedLine.test(line)) + .join('\n') + .replace(/(.*?),\s*(\}|])/g, "$1$2"); let parsedScript = {}; switch (targetScriptOptions.format) { case 'yaml': - parsedScript = yaml.safeLoad(script); + parsedScript = yaml.safeLoad(filteredScript); break; case 'json': default: - parsedScript = JSON.parse(script); + parsedScript = JSON.parse(filteredScript); } validationHelper.validate(parsedScript) @@ -85,3 +96,36 @@ module.exports = { } } }; + +const addCommentsSigns = (string, format) => { + const commentsStart = /hackoladeCommentStart\d+/i; + const commentsEnd = /hackoladeCommentEnd\d+/i; + const innerCommentStart = /hackoladeInnerCommentStart/i; + const innerCommentEnd = /hackoladeInnerCommentEnd/i; + + const { result } = string.split('\n').reduce(({ isCommented, result }, line, index, array) => { + if (commentsStart.test(line) || innerCommentStart.test(line)) { + return { isCommented: true, result: result }; + } + if (commentsEnd.test(line)) { + return { isCommented: false, result }; + } + if (innerCommentEnd.test(line)) { + if (format === 'json') { + array[index + 1] = '# ' + array[index + 1]; + } + return { isCommented: false, result }; + } + + const isNextLineInnerCommentStart = index + 1 < array.length && innerCommentStart.test(array[index + 1]); + if (isCommented || isNextLineInnerCommentStart) { + result = result + '# ' + line + '\n'; + } else { + result = result + line + '\n'; + } + + return { isCommented, result }; + }, { isCommented: false, result: '' }); + + return result; +} diff --git a/forward_engineering/helpers/componentsHelpers/responsesHelper.js b/forward_engineering/helpers/componentsHelpers/responsesHelper.js index 2c79f5a..2a0be82 100644 --- a/forward_engineering/helpers/componentsHelpers/responsesHelper.js +++ b/forward_engineering/helpers/componentsHelpers/responsesHelper.js @@ -22,7 +22,7 @@ function getResponses(data) { }, {}); } -function mapResponse(data, responseCollectionDescription) { +function mapResponse(data, responseCollectionDescription, shouldResponseBeCommented = false) { if (!data) { return; } @@ -34,8 +34,18 @@ function mapResponse(data, responseCollectionDescription) { const content = getContent(get(data, `properties.content`)); const links = getLinks(get(data, `properties.links`)); const extensions = getExtensions(data.scopesExtensions); + const response = {}; + if (shouldResponseBeCommented) { + response[`hackoladeInnerCommentStart`] = true; + } + + Object.assign(response, { description, headers, content, links }, extensions); + + if (shouldResponseBeCommented) { + response[`hackoladeInnerCommentEnd`] = true; + } - return Object.assign({}, { description, headers, content, links }, extensions); + return response; } module.exports = { diff --git a/forward_engineering/helpers/pathHelper.js b/forward_engineering/helpers/pathHelper.js index c9d705b..1b108b0 100644 --- a/forward_engineering/helpers/pathHelper.js +++ b/forward_engineering/helpers/pathHelper.js @@ -10,20 +10,28 @@ const { hasRef, getRef } = require('./typeHelper'); function getPaths(containers, containersIdsForCallbacks = []) { return containers .filter(({ id }) => !containersIdsForCallbacks.includes(id)) - .reduce((acc, container) => { - const { name } = container.containerData[0]; - const containerData = getRequestsForContainer(container, containers); + .reduce((acc, container, index) => { + const { name, isActivated } = container.containerData[0]; + const containerData = getRequestsForContainer(container, containers, [], isActivated); + + if (!isActivated) { + acc[`hackoladeCommentStart${index}`] = true; + } acc[name] = containerData; + + if (!isActivated) { + acc[`hackoladeCommentEnd${index}`] = true; + } return acc; }, {}); } -function getRequestsForContainer(container, containers, containersPath = []) { +function getRequestsForContainer(container, containers, containersPath = [], isPathActivated = true) { const { contactExtensions, summary, description } = container.containerData[0]; const collections = container.entities.map(collectionId => JSON.parse(container.jsonSchema[collectionId])); - const containerData = getRequestData(collections, containers, container.id, containersPath); + const containerData = getRequestData(collections, containers, container.id, containersPath, isPathActivated); const additionalContainerData = { summary, description: description || undefined @@ -34,7 +42,7 @@ function getRequestsForContainer(container, containers, containersPath = []) { return Object.assign({}, containerData, additionalContainerData, containerExtensions); } -function getRequestData(collections, containers, containerId, containersPath = []) { +function getRequestData(collections, containers, containerId, containersPath = [], isPathActivated = true) { return collections .filter(collection => collection.entityType === 'request') .map(data => { @@ -46,21 +54,30 @@ function getRequestData(collections, containers, containerId, containersPath = [ operationId: data.operationId, parameters: mapRequestParameters(get(data, 'properties.parameters')), requestBody: mapRequestBody(get(data, 'properties.requestBody'), get(data, 'required', []).includes('requestBody')), - responses: mapResponses(collections, data.GUID), + responses: mapResponses(collections, data.GUID, isPathActivated && data.isActivated), callbacks: getCallbacks(get(data, 'properties.callbacks'), containers, containerId, containersPath), deprecated: data.deprecated, security: commonHelper.mapSecurity(data.security), servers: getServers(data.servers), - methodName: data.collectionName + methodName: data.collectionName, + isActivated: data.isActivated }; const extensions = getExtensions(data.operationExtensions); return Object.assign({}, request, extensions); }) - .reduce((acc, collection) => { - const { methodName } = collection; + .reduce((acc, collection, index) => { + const { methodName, isActivated } = collection; delete collection.methodName; + delete collection.isActivated; + const shouldCommentedFlagBeInserted = !isActivated && isPathActivated; + if (shouldCommentedFlagBeInserted) { + acc[`hackoladeCommentStart${index}`] = true; + } acc[methodName] = collection; + if (shouldCommentedFlagBeInserted) { + acc[`hackoladeCommentEnd${index}`] = true; + } return acc; }, {}); } @@ -76,7 +93,7 @@ function mapRequestParameters(parameters) { return [mapParameter(parameters.items)]; } -function mapResponses(collections, collectionId) { +function mapResponses(collections, collectionId, isParentActivated) { if (!collections || !collectionId) { return; } @@ -85,13 +102,13 @@ function mapResponses(collections, collectionId) { .filter(collection => collection.entityType === 'response' && collection.parentCollection === collectionId) .map(collection => { const responseCode = collection.collectionName; - const response = mapResponse(get(collection, 'properties.response'), collection.description); + const shouldResponseBeCommented = !collection.isActivated && isParentActivated; + const response = mapResponse(get(collection, 'properties.response'), collection.description, shouldResponseBeCommented); return { responseCode, response }; }) .reduce((acc, { responseCode, response }) => { acc[responseCode] = response; - return acc; }, {}); From 8235a3808365d4fbbe7fffe412c974ac75c7dd5f Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Tue, 14 Jan 2020 15:31:18 +0200 Subject: [PATCH 27/49] add adapter for adding isActivated flag --- adapter/0.1.13.json | 48 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 adapter/0.1.13.json diff --git a/adapter/0.1.13.json b/adapter/0.1.13.json new file mode 100644 index 0000000..3bea0e9 --- /dev/null +++ b/adapter/0.1.13.json @@ -0,0 +1,48 @@ +/** + * Copyright © 2016-2020 by IntegrIT S.A. dba Hackolade. All rights reserved. + * + * The copyright to the computer software herein is the property of IntegrIT S.A. + * The software may be used and/or copied only with the written permission of + * IntegrIT S.A. or in accordance with the terms and conditions stipulated in + * the agreement/contract under which the software has been supplied. + * + * { + * "add": { + * "entity": [], + * "container": [], + * "model": [], + * "view": [], + * "field": { + * "": [] + * } + * }, + * "delete": { + * "entity": [], + * "container": [], + * "model": [], + * "view": [], + * "field": { + * "": [] + * } + * }, + * "modify": { + * "entity": [ + * { + * "from": { }, + * "to": { } + * } + * ], + * "container": [], + * "model": [], + * "view": [], + * "field": [] + * }, + * } + */ + +{ + "add": { + "container": ["isActivated"], + "entity": ["isActivated"] + } +} From 43cbbd3ec50988451cfba4c6abbe15abf4821cdd Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Tue, 14 Jan 2020 18:42:45 +0200 Subject: [PATCH 28/49] remove commented schema lines if save to json file --- forward_engineering/api.js | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/forward_engineering/api.js b/forward_engineering/api.js index b06f1d3..b98acff 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -1,4 +1,5 @@ const yaml = require('js-yaml'); +const get = require('lodash.get'); const validationHelper = require('./helpers/validationHelper'); const getInfo = require('./helpers/infoHelper'); const { getPaths } = require('./helpers/pathHelper'); @@ -51,9 +52,12 @@ module.exports = { } case 'json': default: { - const schema = JSON.stringify(resultSchema, null, 2); - const schemaWithComments = addCommentsSigns(schema, 'json'); - cb(null, schemaWithComments); + const schemaString = JSON.stringify(resultSchema, null, 2); + let schema = addCommentsSigns(schemaString, 'json'); + if (!get(data, 'options.isCalledFromFEPage')) { + schema = removeCommentLines(schema); + } + cb(null, schema); } } } catch (err) { @@ -64,13 +68,8 @@ module.exports = { validate(data, logger, cb) { const { script, targetScriptOptions } = data; - const isCommentedLine = /\s*#/i; try { - const filteredScript = script - .split('\n') - .filter(line => !isCommentedLine.test(line)) - .join('\n') - .replace(/(.*?),\s*(\}|])/g, "$1$2"); + const filteredScript = removeCommentLines(script); let parsedScript = {}; switch (targetScriptOptions.format) { @@ -129,3 +128,13 @@ const addCommentsSigns = (string, format) => { return result; } + +const removeCommentLines = (scriptString) => { + const isCommentedLine = /\s*#/i; + + return scriptString + .split('\n') + .filter(line => !isCommentedLine.test(line)) + .join('\n') + .replace(/(.*?),\s*(\}|])/g, '$1$2'); +} From cc0217ae4be23b67e38e32bee26d506e5d5f5e43 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Tue, 14 Jan 2020 18:43:35 +0200 Subject: [PATCH 29/49] add tooltips --- .../container_level/containerLevelConfig.json | 11 ++++++----- properties_pane/entity_level/entityLevelConfig.json | 3 ++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/properties_pane/container_level/containerLevelConfig.json b/properties_pane/container_level/containerLevelConfig.json index 0bda11c..60eacb1 100644 --- a/properties_pane/container_level/containerLevelConfig.json +++ b/properties_pane/container_level/containerLevelConfig.json @@ -139,11 +139,6 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "regex": "^/" }, - { - "propertyName": "Activated", - "propertyKeyword": "isActivated", - "propertyType": "checkbox" - }, { "propertyName": "Description", "propertyKeyword": "description", @@ -159,6 +154,12 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "sampleGen": "&containerName|&entityName|&random|" }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" + }, { "propertyName": "extensions", "propertyType": "group", diff --git a/properties_pane/entity_level/entityLevelConfig.json b/properties_pane/entity_level/entityLevelConfig.json index 5a8d930..71fcfe8 100644 --- a/properties_pane/entity_level/entityLevelConfig.json +++ b/properties_pane/entity_level/entityLevelConfig.json @@ -514,7 +514,8 @@ making sure that you maintain a proper JSON format. { "propertyName": "Activated", "propertyKeyword": "isActivated", - "propertyType": "checkbox" + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" }, { "propertyName": "extensions", From fc14e5854688e35421d3c03dcc3cbd83e07f6f66 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Wed, 15 Jan 2020 11:37:26 +0200 Subject: [PATCH 30/49] rename options key --- forward_engineering/api.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forward_engineering/api.js b/forward_engineering/api.js index b98acff..bb4a4b0 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -54,7 +54,7 @@ module.exports = { default: { const schemaString = JSON.stringify(resultSchema, null, 2); let schema = addCommentsSigns(schemaString, 'json'); - if (!get(data, 'options.isCalledFromFEPage')) { + if (!get(data, 'options.isCalledFromFETab')) { schema = removeCommentLines(schema); } cb(null, schema); From 2585d66839fb663681b7c296663f1123f8b03617 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Wed, 15 Jan 2020 18:15:39 +0200 Subject: [PATCH 31/49] fix external definitions --- .../helpers/resolveExternalDefinitionPathHelper.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js index beb8256..6fb44f8 100644 --- a/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js +++ b/reverse_engineering/helpers/resolveExternalDefinitionPathHelper.js @@ -23,7 +23,7 @@ const resolvePath = (data, callback) => { return callback(null, `${bucket}/${request}${addPropertiesToPath(path.slice(3))}`); }; -const addPropertiesToPath = path => path.length ? '/properties/' + path.join('/properties/') : ''; +const addPropertiesToPath = path => path.length ? '/properties/' + path.filter(item => item !== 'properties').join('/properties/') : ''; module.exports = { resolvePath From 1dc98d2f7ceacc81ed779ebe4a5e9b8eaef9b5be Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Wed, 15 Jan 2020 19:04:32 +0200 Subject: [PATCH 32/49] fix setting activated flags for collections --- reverse_engineering/helpers/dataHelper.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/reverse_engineering/helpers/dataHelper.js b/reverse_engineering/helpers/dataHelper.js index 4eb43fd..3ee45aa 100644 --- a/reverse_engineering/helpers/dataHelper.js +++ b/reverse_engineering/helpers/dataHelper.js @@ -710,7 +710,8 @@ const handleRequestData = (requestData, request, fieldOrder) => { entityType: REQUEST, subtype: 'requestBody', collectionName: request, - properties: requestSchema + properties: requestSchema, + isActivated: true }); return { jsonSchema, responses }; }; @@ -742,7 +743,8 @@ const handleResponseData = (responseObj, response, request, fieldOrder) => { parentCollection: request, properties: { response: responseData - } + }, + isActivated: true }; return jsonSchema; }; From b2c8e590ce9d4cc7676f7a90dfb95543b251a5a1 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Thu, 16 Jan 2020 10:47:44 +0200 Subject: [PATCH 33/49] fix regexp --- forward_engineering/api.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forward_engineering/api.js b/forward_engineering/api.js index bb4a4b0..929f334 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -130,7 +130,7 @@ const addCommentsSigns = (string, format) => { } const removeCommentLines = (scriptString) => { - const isCommentedLine = /\s*#/i; + const isCommentedLine = /^\s*#\s+/i; return scriptString .split('\n') From e4d9d1db4ea7fdc8dbc55ad6077d784b80f94b24 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Thu, 16 Jan 2020 11:01:59 +0200 Subject: [PATCH 34/49] Comments support --- adapter/0.1.13.json | 48 +++++++++++++ forward_engineering/api.js | 67 +++++++++++++++++-- .../componentsHelpers/responsesHelper.js | 14 +++- forward_engineering/helpers/pathHelper.js | 43 ++++++++---- .../container_level/containerLevelConfig.json | 6 ++ properties_pane/defaultData.json | 9 ++- .../entity_level/entityLevelConfig.json | 6 ++ reverse_engineering/helpers/dataHelper.js | 6 +- 8 files changed, 172 insertions(+), 27 deletions(-) create mode 100644 adapter/0.1.13.json diff --git a/adapter/0.1.13.json b/adapter/0.1.13.json new file mode 100644 index 0000000..3bea0e9 --- /dev/null +++ b/adapter/0.1.13.json @@ -0,0 +1,48 @@ +/** + * Copyright © 2016-2020 by IntegrIT S.A. dba Hackolade. All rights reserved. + * + * The copyright to the computer software herein is the property of IntegrIT S.A. + * The software may be used and/or copied only with the written permission of + * IntegrIT S.A. or in accordance with the terms and conditions stipulated in + * the agreement/contract under which the software has been supplied. + * + * { + * "add": { + * "entity": [], + * "container": [], + * "model": [], + * "view": [], + * "field": { + * "": [] + * } + * }, + * "delete": { + * "entity": [], + * "container": [], + * "model": [], + * "view": [], + * "field": { + * "": [] + * } + * }, + * "modify": { + * "entity": [ + * { + * "from": { }, + * "to": { } + * } + * ], + * "container": [], + * "model": [], + * "view": [], + * "field": [] + * }, + * } + */ + +{ + "add": { + "container": ["isActivated"], + "entity": ["isActivated"] + } +} diff --git a/forward_engineering/api.js b/forward_engineering/api.js index 043c3f3..bb4a4b0 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -1,4 +1,5 @@ const yaml = require('js-yaml'); +const get = require('lodash.get'); const validationHelper = require('./helpers/validationHelper'); const getInfo = require('./helpers/infoHelper'); const { getPaths } = require('./helpers/pathHelper'); @@ -43,12 +44,21 @@ module.exports = { const resultSchema = Object.assign({}, openApiSchema, extensions); switch (data.targetScriptOptions.format) { - case 'yaml': - cb(null, yaml.safeDump(resultSchema, { skipInvalid: true })); + case 'yaml': { + const schema = yaml.safeDump(resultSchema, { skipInvalid: true }); + const schemaWithComments = addCommentsSigns(schema, 'yaml'); + cb(null, schemaWithComments); break; + } case 'json': - default: - cb(null, JSON.stringify(resultSchema, null, 2)); + default: { + const schemaString = JSON.stringify(resultSchema, null, 2); + let schema = addCommentsSigns(schemaString, 'json'); + if (!get(data, 'options.isCalledFromFETab')) { + schema = removeCommentLines(schema); + } + cb(null, schema); + } } } catch (err) { logger.log('error', { error: err }, 'OpenAPI FE Error'); @@ -58,17 +68,17 @@ module.exports = { validate(data, logger, cb) { const { script, targetScriptOptions } = data; - try { + const filteredScript = removeCommentLines(script); let parsedScript = {}; switch (targetScriptOptions.format) { case 'yaml': - parsedScript = yaml.safeLoad(script); + parsedScript = yaml.safeLoad(filteredScript); break; case 'json': default: - parsedScript = JSON.parse(script); + parsedScript = JSON.parse(filteredScript); } validationHelper.validate(parsedScript) @@ -85,3 +95,46 @@ module.exports = { } } }; + +const addCommentsSigns = (string, format) => { + const commentsStart = /hackoladeCommentStart\d+/i; + const commentsEnd = /hackoladeCommentEnd\d+/i; + const innerCommentStart = /hackoladeInnerCommentStart/i; + const innerCommentEnd = /hackoladeInnerCommentEnd/i; + + const { result } = string.split('\n').reduce(({ isCommented, result }, line, index, array) => { + if (commentsStart.test(line) || innerCommentStart.test(line)) { + return { isCommented: true, result: result }; + } + if (commentsEnd.test(line)) { + return { isCommented: false, result }; + } + if (innerCommentEnd.test(line)) { + if (format === 'json') { + array[index + 1] = '# ' + array[index + 1]; + } + return { isCommented: false, result }; + } + + const isNextLineInnerCommentStart = index + 1 < array.length && innerCommentStart.test(array[index + 1]); + if (isCommented || isNextLineInnerCommentStart) { + result = result + '# ' + line + '\n'; + } else { + result = result + line + '\n'; + } + + return { isCommented, result }; + }, { isCommented: false, result: '' }); + + return result; +} + +const removeCommentLines = (scriptString) => { + const isCommentedLine = /\s*#/i; + + return scriptString + .split('\n') + .filter(line => !isCommentedLine.test(line)) + .join('\n') + .replace(/(.*?),\s*(\}|])/g, '$1$2'); +} diff --git a/forward_engineering/helpers/componentsHelpers/responsesHelper.js b/forward_engineering/helpers/componentsHelpers/responsesHelper.js index 2c79f5a..2a0be82 100644 --- a/forward_engineering/helpers/componentsHelpers/responsesHelper.js +++ b/forward_engineering/helpers/componentsHelpers/responsesHelper.js @@ -22,7 +22,7 @@ function getResponses(data) { }, {}); } -function mapResponse(data, responseCollectionDescription) { +function mapResponse(data, responseCollectionDescription, shouldResponseBeCommented = false) { if (!data) { return; } @@ -34,8 +34,18 @@ function mapResponse(data, responseCollectionDescription) { const content = getContent(get(data, `properties.content`)); const links = getLinks(get(data, `properties.links`)); const extensions = getExtensions(data.scopesExtensions); + const response = {}; + if (shouldResponseBeCommented) { + response[`hackoladeInnerCommentStart`] = true; + } + + Object.assign(response, { description, headers, content, links }, extensions); + + if (shouldResponseBeCommented) { + response[`hackoladeInnerCommentEnd`] = true; + } - return Object.assign({}, { description, headers, content, links }, extensions); + return response; } module.exports = { diff --git a/forward_engineering/helpers/pathHelper.js b/forward_engineering/helpers/pathHelper.js index c9d705b..1b108b0 100644 --- a/forward_engineering/helpers/pathHelper.js +++ b/forward_engineering/helpers/pathHelper.js @@ -10,20 +10,28 @@ const { hasRef, getRef } = require('./typeHelper'); function getPaths(containers, containersIdsForCallbacks = []) { return containers .filter(({ id }) => !containersIdsForCallbacks.includes(id)) - .reduce((acc, container) => { - const { name } = container.containerData[0]; - const containerData = getRequestsForContainer(container, containers); + .reduce((acc, container, index) => { + const { name, isActivated } = container.containerData[0]; + const containerData = getRequestsForContainer(container, containers, [], isActivated); + + if (!isActivated) { + acc[`hackoladeCommentStart${index}`] = true; + } acc[name] = containerData; + + if (!isActivated) { + acc[`hackoladeCommentEnd${index}`] = true; + } return acc; }, {}); } -function getRequestsForContainer(container, containers, containersPath = []) { +function getRequestsForContainer(container, containers, containersPath = [], isPathActivated = true) { const { contactExtensions, summary, description } = container.containerData[0]; const collections = container.entities.map(collectionId => JSON.parse(container.jsonSchema[collectionId])); - const containerData = getRequestData(collections, containers, container.id, containersPath); + const containerData = getRequestData(collections, containers, container.id, containersPath, isPathActivated); const additionalContainerData = { summary, description: description || undefined @@ -34,7 +42,7 @@ function getRequestsForContainer(container, containers, containersPath = []) { return Object.assign({}, containerData, additionalContainerData, containerExtensions); } -function getRequestData(collections, containers, containerId, containersPath = []) { +function getRequestData(collections, containers, containerId, containersPath = [], isPathActivated = true) { return collections .filter(collection => collection.entityType === 'request') .map(data => { @@ -46,21 +54,30 @@ function getRequestData(collections, containers, containerId, containersPath = [ operationId: data.operationId, parameters: mapRequestParameters(get(data, 'properties.parameters')), requestBody: mapRequestBody(get(data, 'properties.requestBody'), get(data, 'required', []).includes('requestBody')), - responses: mapResponses(collections, data.GUID), + responses: mapResponses(collections, data.GUID, isPathActivated && data.isActivated), callbacks: getCallbacks(get(data, 'properties.callbacks'), containers, containerId, containersPath), deprecated: data.deprecated, security: commonHelper.mapSecurity(data.security), servers: getServers(data.servers), - methodName: data.collectionName + methodName: data.collectionName, + isActivated: data.isActivated }; const extensions = getExtensions(data.operationExtensions); return Object.assign({}, request, extensions); }) - .reduce((acc, collection) => { - const { methodName } = collection; + .reduce((acc, collection, index) => { + const { methodName, isActivated } = collection; delete collection.methodName; + delete collection.isActivated; + const shouldCommentedFlagBeInserted = !isActivated && isPathActivated; + if (shouldCommentedFlagBeInserted) { + acc[`hackoladeCommentStart${index}`] = true; + } acc[methodName] = collection; + if (shouldCommentedFlagBeInserted) { + acc[`hackoladeCommentEnd${index}`] = true; + } return acc; }, {}); } @@ -76,7 +93,7 @@ function mapRequestParameters(parameters) { return [mapParameter(parameters.items)]; } -function mapResponses(collections, collectionId) { +function mapResponses(collections, collectionId, isParentActivated) { if (!collections || !collectionId) { return; } @@ -85,13 +102,13 @@ function mapResponses(collections, collectionId) { .filter(collection => collection.entityType === 'response' && collection.parentCollection === collectionId) .map(collection => { const responseCode = collection.collectionName; - const response = mapResponse(get(collection, 'properties.response'), collection.description); + const shouldResponseBeCommented = !collection.isActivated && isParentActivated; + const response = mapResponse(get(collection, 'properties.response'), collection.description, shouldResponseBeCommented); return { responseCode, response }; }) .reduce((acc, { responseCode, response }) => { acc[responseCode] = response; - return acc; }, {}); diff --git a/properties_pane/container_level/containerLevelConfig.json b/properties_pane/container_level/containerLevelConfig.json index 9eb8557..60eacb1 100644 --- a/properties_pane/container_level/containerLevelConfig.json +++ b/properties_pane/container_level/containerLevelConfig.json @@ -154,6 +154,12 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "sampleGen": "&containerName|&entityName|&random|" }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" + }, { "propertyName": "extensions", "propertyType": "group", diff --git a/properties_pane/defaultData.json b/properties_pane/defaultData.json index e660f73..d2c548b 100644 --- a/properties_pane/defaultData.json +++ b/properties_pane/defaultData.json @@ -5,19 +5,22 @@ "dbVendor": "OpenAPI" }, "container": { - "name": "/path" + "name": "/path", + "isActivated": true }, "collection": { "collectionName": "get", "entityType": "request", "snippet": "requestStructure", - "subtype": "requestBody" + "subtype": "requestBody", + "isActivated": true }, "nestedCollection": { "collectionName": "200", "entityType": "response", "snippet": "responseStructure", - "subtype": "response" + "subtype": "response", + "isActivated": true }, "field": { "hackoladeMeta": { diff --git a/properties_pane/entity_level/entityLevelConfig.json b/properties_pane/entity_level/entityLevelConfig.json index 025e9fe..71fcfe8 100644 --- a/properties_pane/entity_level/entityLevelConfig.json +++ b/properties_pane/entity_level/entityLevelConfig.json @@ -511,6 +511,12 @@ making sure that you maintain a proper JSON format. } ] }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" + }, { "propertyName": "extensions", "propertyType": "group", diff --git a/reverse_engineering/helpers/dataHelper.js b/reverse_engineering/helpers/dataHelper.js index 4eb43fd..3ee45aa 100644 --- a/reverse_engineering/helpers/dataHelper.js +++ b/reverse_engineering/helpers/dataHelper.js @@ -710,7 +710,8 @@ const handleRequestData = (requestData, request, fieldOrder) => { entityType: REQUEST, subtype: 'requestBody', collectionName: request, - properties: requestSchema + properties: requestSchema, + isActivated: true }); return { jsonSchema, responses }; }; @@ -742,7 +743,8 @@ const handleResponseData = (responseObj, response, request, fieldOrder) => { parentCollection: request, properties: { response: responseData - } + }, + isActivated: true }; return jsonSchema; }; From c982208a80d79f85ff3e6e0f89ede707879a664a Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Fri, 17 Jan 2020 17:09:20 +0200 Subject: [PATCH 35/49] merge --- forward_engineering/api.js | 2 +- package.json | 6 +++--- .../container_level/containerLevelConfig.json | 12 ++++++------ properties_pane/entity_level/entityLevelConfig.json | 12 ++++++------ 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/forward_engineering/api.js b/forward_engineering/api.js index bb4a4b0..929f334 100644 --- a/forward_engineering/api.js +++ b/forward_engineering/api.js @@ -130,7 +130,7 @@ const addCommentsSigns = (string, format) => { } const removeCommentLines = (scriptString) => { - const isCommentedLine = /\s*#/i; + const isCommentedLine = /^\s*#\s+/i; return scriptString .split('\n') diff --git a/package.json b/package.json index a14fac5..5eae985 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "OpenAPI", - "version": "0.1.12", - "versionDate": "2020-01-03", + "version": "0.1.13", + "versionDate": "2020-01-16", "author": "hackolade", "engines": { "hackolade": "3.3.0", @@ -37,7 +37,7 @@ "entities": false, "model_definitions": true }, - "plugin": true + "plugin": true }, "disableDenormalization": true, "enableForwardEngineering": { diff --git a/properties_pane/container_level/containerLevelConfig.json b/properties_pane/container_level/containerLevelConfig.json index 60eacb1..779a026 100644 --- a/properties_pane/container_level/containerLevelConfig.json +++ b/properties_pane/container_level/containerLevelConfig.json @@ -147,6 +147,12 @@ making sure that you maintain a proper JSON format. "propertyType": "details", "template": "textarea" }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" + }, { "propertyName": "summary", "propertyKeyword": "summary", @@ -154,12 +160,6 @@ making sure that you maintain a proper JSON format. "propertyType": "text", "sampleGen": "&containerName|&entityName|&random|" }, - { - "propertyName": "Activated", - "propertyKeyword": "isActivated", - "propertyType": "checkbox", - "propertyTooltip": "Deactivated item will be commented out in the schema" - }, { "propertyName": "extensions", "propertyType": "group", diff --git a/properties_pane/entity_level/entityLevelConfig.json b/properties_pane/entity_level/entityLevelConfig.json index 71fcfe8..c33eebf 100644 --- a/properties_pane/entity_level/entityLevelConfig.json +++ b/properties_pane/entity_level/entityLevelConfig.json @@ -234,6 +234,12 @@ making sure that you maintain a proper JSON format. "propertyType": "checkbox", "hidden": true }, + { + "propertyName": "Activated", + "propertyKeyword": "isActivated", + "propertyType": "checkbox", + "propertyTooltip": "Deactivated item will be commented out in the schema" + }, { "propertyName": "schema", "propertyKeyword": "pathItemSchema", @@ -511,12 +517,6 @@ making sure that you maintain a proper JSON format. } ] }, - { - "propertyName": "Activated", - "propertyKeyword": "isActivated", - "propertyType": "checkbox", - "propertyTooltip": "Deactivated item will be commented out in the schema" - }, { "propertyName": "extensions", "propertyType": "group", From 42df3bdc1311a942bb533729951b2b84ca797091 Mon Sep 17 00:00:00 2001 From: mtseluiko Date: Fri, 17 Jan 2020 17:09:43 +0200 Subject: [PATCH 36/49] RE: fix reverse of swaggerhub domain files --- reverse_engineering/api.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse_engineering/api.js b/reverse_engineering/api.js index 3eec663..e4f70bf 100644 --- a/reverse_engineering/api.js +++ b/reverse_engineering/api.js @@ -74,7 +74,7 @@ const convertOpenAPISchemaToHackolade = (openAPISchema, fieldOrder) => { const components = openAPISchema.components; const definitions = dataHelper.getComponents(openAPISchema.components, fieldOrder); const callbacksComponent = components && components.callbacks; - const modelContent = dataHelper.getModelContent(openAPISchema.paths, fieldOrder, callbacksComponent); + const modelContent = dataHelper.getModelContent(openAPISchema.paths || {}, fieldOrder, callbacksComponent); return { modelData, modelContent, definitions }; }; From e04ae6efc2ab6b561a423cab297be36fbc0978c7 Mon Sep 17 00:00:00 2001 From: Taras Dubyk Date: Fri, 14 Feb 2020 11:25:52 +0200 Subject: [PATCH 37/49] bump schema validation package version --- .../node_modules/.bin/z-schema | 0 .../node_modules/core-js/CHANGELOG.md | 699 - .../node_modules/core-js/Gruntfile.js | 3 - .../node_modules/core-js/LICENSE | 19 - .../node_modules/core-js/README.md | 2307 -- .../node_modules/core-js/bower.json | 49 - .../node_modules/core-js/build/Gruntfile.ls | 86 - .../node_modules/core-js/build/build.ls | 62 - .../node_modules/core-js/build/config.js | 275 - .../node_modules/core-js/build/index.js | 104 - .../node_modules/core-js/client/core.js | 9095 ----- .../node_modules/core-js/client/core.min.js | 10 - .../core-js/client/core.min.js.map | 1 - .../node_modules/core-js/client/library.js | 8163 ----- .../core-js/client/library.min.js | 10 - .../core-js/client/library.min.js.map | 1 - .../node_modules/core-js/client/shim.js | 8663 ----- .../node_modules/core-js/client/shim.min.js | 10 - .../core-js/client/shim.min.js.map | 1 - .../node_modules/core-js/core/_.js | 2 - .../node_modules/core-js/core/delay.js | 2 - .../node_modules/core-js/core/dict.js | 2 - .../node_modules/core-js/core/function.js | 2 - .../node_modules/core-js/core/index.js | 15 - .../node_modules/core-js/core/number.js | 2 - .../node_modules/core-js/core/object.js | 5 - .../node_modules/core-js/core/regexp.js | 2 - .../node_modules/core-js/core/string.js | 3 - .../node_modules/core-js/es5/index.js | 37 - .../node_modules/core-js/es6/array.js | 23 - .../node_modules/core-js/es6/date.js | 6 - .../node_modules/core-js/es6/function.js | 4 - .../node_modules/core-js/es6/index.js | 139 - .../node_modules/core-js/es6/map.js | 5 - .../node_modules/core-js/es6/math.js | 18 - .../node_modules/core-js/es6/number.js | 13 - .../node_modules/core-js/es6/object.js | 20 - .../node_modules/core-js/es6/parse-float.js | 2 - .../node_modules/core-js/es6/parse-int.js | 2 - .../node_modules/core-js/es6/promise.js | 5 - .../node_modules/core-js/es6/reflect.js | 15 - .../node_modules/core-js/es6/regexp.js | 9 - .../node_modules/core-js/es6/set.js | 5 - .../node_modules/core-js/es6/string.js | 27 - .../node_modules/core-js/es6/symbol.js | 3 - .../node_modules/core-js/es6/typed.js | 13 - .../node_modules/core-js/es6/weak-map.js | 4 - .../node_modules/core-js/es6/weak-set.js | 4 - .../node_modules/core-js/es7/array.js | 4 - .../node_modules/core-js/es7/asap.js | 2 - .../node_modules/core-js/es7/error.js | 2 - .../node_modules/core-js/es7/global.js | 2 - .../node_modules/core-js/es7/index.js | 56 - .../node_modules/core-js/es7/map.js | 4 - .../node_modules/core-js/es7/math.js | 13 - .../node_modules/core-js/es7/object.js | 8 - .../node_modules/core-js/es7/observable.js | 7 - .../node_modules/core-js/es7/promise.js | 3 - .../node_modules/core-js/es7/reflect.js | 10 - .../node_modules/core-js/es7/set.js | 4 - .../node_modules/core-js/es7/string.js | 7 - .../node_modules/core-js/es7/symbol.js | 3 - .../node_modules/core-js/es7/system.js | 2 - .../node_modules/core-js/es7/weak-map.js | 3 - .../node_modules/core-js/es7/weak-set.js | 3 - .../node_modules/core-js/fn/_.js | 2 - .../node_modules/core-js/fn/array/concat.js | 4 - .../core-js/fn/array/copy-within.js | 2 - .../node_modules/core-js/fn/array/entries.js | 2 - .../node_modules/core-js/fn/array/every.js | 2 - .../node_modules/core-js/fn/array/fill.js | 2 - .../node_modules/core-js/fn/array/filter.js | 2 - .../core-js/fn/array/find-index.js | 2 - .../node_modules/core-js/fn/array/find.js | 2 - .../node_modules/core-js/fn/array/flat-map.js | 2 - .../node_modules/core-js/fn/array/flatten.js | 2 - .../node_modules/core-js/fn/array/for-each.js | 2 - .../node_modules/core-js/fn/array/from.js | 3 - .../node_modules/core-js/fn/array/includes.js | 2 - .../node_modules/core-js/fn/array/index-of.js | 2 - .../node_modules/core-js/fn/array/index.js | 26 - .../node_modules/core-js/fn/array/is-array.js | 2 - .../node_modules/core-js/fn/array/iterator.js | 2 - .../node_modules/core-js/fn/array/join.js | 2 - .../node_modules/core-js/fn/array/keys.js | 2 - .../core-js/fn/array/last-index-of.js | 2 - .../node_modules/core-js/fn/array/map.js | 2 - .../node_modules/core-js/fn/array/of.js | 2 - .../node_modules/core-js/fn/array/pop.js | 4 - .../node_modules/core-js/fn/array/push.js | 4 - .../core-js/fn/array/reduce-right.js | 2 - .../node_modules/core-js/fn/array/reduce.js | 2 - .../node_modules/core-js/fn/array/reverse.js | 4 - .../node_modules/core-js/fn/array/shift.js | 4 - .../node_modules/core-js/fn/array/slice.js | 2 - .../node_modules/core-js/fn/array/some.js | 2 - .../node_modules/core-js/fn/array/sort.js | 2 - .../node_modules/core-js/fn/array/splice.js | 4 - .../node_modules/core-js/fn/array/unshift.js | 4 - .../node_modules/core-js/fn/array/values.js | 2 - .../core-js/fn/array/virtual/copy-within.js | 2 - .../core-js/fn/array/virtual/entries.js | 2 - .../core-js/fn/array/virtual/every.js | 2 - .../core-js/fn/array/virtual/fill.js | 2 - .../core-js/fn/array/virtual/filter.js | 2 - .../core-js/fn/array/virtual/find-index.js | 2 - .../core-js/fn/array/virtual/find.js | 2 - .../core-js/fn/array/virtual/flat-map.js | 2 - .../core-js/fn/array/virtual/flatten.js | 2 - .../core-js/fn/array/virtual/for-each.js | 2 - .../core-js/fn/array/virtual/includes.js | 2 - .../core-js/fn/array/virtual/index-of.js | 2 - .../core-js/fn/array/virtual/index.js | 20 - .../core-js/fn/array/virtual/iterator.js | 2 - .../core-js/fn/array/virtual/join.js | 2 - .../core-js/fn/array/virtual/keys.js | 2 - .../core-js/fn/array/virtual/last-index-of.js | 2 - .../core-js/fn/array/virtual/map.js | 2 - .../core-js/fn/array/virtual/reduce-right.js | 2 - .../core-js/fn/array/virtual/reduce.js | 2 - .../core-js/fn/array/virtual/slice.js | 2 - .../core-js/fn/array/virtual/some.js | 2 - .../core-js/fn/array/virtual/sort.js | 2 - .../core-js/fn/array/virtual/values.js | 2 - .../node_modules/core-js/fn/asap.js | 2 - .../core-js/fn/clear-immediate.js | 2 - .../node_modules/core-js/fn/date/index.js | 6 - .../node_modules/core-js/fn/date/now.js | 2 - .../core-js/fn/date/to-iso-string.js | 3 - .../node_modules/core-js/fn/date/to-json.js | 2 - .../core-js/fn/date/to-primitive.js | 5 - .../node_modules/core-js/fn/date/to-string.js | 5 - .../node_modules/core-js/fn/delay.js | 2 - .../node_modules/core-js/fn/dict.js | 2 - .../core-js/fn/dom-collections/index.js | 8 - .../core-js/fn/dom-collections/iterator.js | 2 - .../node_modules/core-js/fn/error/index.js | 2 - .../node_modules/core-js/fn/error/is-error.js | 2 - .../node_modules/core-js/fn/function/bind.js | 2 - .../core-js/fn/function/has-instance.js | 2 - .../node_modules/core-js/fn/function/index.js | 5 - .../node_modules/core-js/fn/function/name.js | 1 - .../node_modules/core-js/fn/function/part.js | 2 - .../core-js/fn/function/virtual/bind.js | 2 - .../core-js/fn/function/virtual/index.js | 3 - .../core-js/fn/function/virtual/part.js | 2 - .../core-js/fn/get-iterator-method.js | 3 - .../node_modules/core-js/fn/get-iterator.js | 3 - .../node_modules/core-js/fn/global.js | 2 - .../node_modules/core-js/fn/is-iterable.js | 3 - .../node_modules/core-js/fn/json/index.js | 2 - .../node_modules/core-js/fn/json/stringify.js | 5 - .../node_modules/core-js/fn/map.js | 8 - .../node_modules/core-js/fn/map/from.js | 8 - .../node_modules/core-js/fn/map/index.js | 8 - .../node_modules/core-js/fn/map/of.js | 8 - .../node_modules/core-js/fn/math/acosh.js | 2 - .../node_modules/core-js/fn/math/asinh.js | 2 - .../node_modules/core-js/fn/math/atanh.js | 2 - .../node_modules/core-js/fn/math/cbrt.js | 2 - .../node_modules/core-js/fn/math/clamp.js | 2 - .../node_modules/core-js/fn/math/clz32.js | 2 - .../node_modules/core-js/fn/math/cosh.js | 2 - .../core-js/fn/math/deg-per-rad.js | 2 - .../node_modules/core-js/fn/math/degrees.js | 2 - .../node_modules/core-js/fn/math/expm1.js | 2 - .../node_modules/core-js/fn/math/fround.js | 2 - .../node_modules/core-js/fn/math/fscale.js | 2 - .../node_modules/core-js/fn/math/hypot.js | 2 - .../node_modules/core-js/fn/math/iaddh.js | 2 - .../node_modules/core-js/fn/math/imul.js | 2 - .../node_modules/core-js/fn/math/imulh.js | 2 - .../node_modules/core-js/fn/math/index.js | 30 - .../node_modules/core-js/fn/math/isubh.js | 2 - .../node_modules/core-js/fn/math/log10.js | 2 - .../node_modules/core-js/fn/math/log1p.js | 2 - .../node_modules/core-js/fn/math/log2.js | 2 - .../core-js/fn/math/rad-per-deg.js | 2 - .../node_modules/core-js/fn/math/radians.js | 2 - .../node_modules/core-js/fn/math/scale.js | 2 - .../node_modules/core-js/fn/math/sign.js | 2 - .../node_modules/core-js/fn/math/signbit.js | 3 - .../node_modules/core-js/fn/math/sinh.js | 2 - .../node_modules/core-js/fn/math/tanh.js | 2 - .../node_modules/core-js/fn/math/trunc.js | 2 - .../node_modules/core-js/fn/math/umulh.js | 2 - .../core-js/fn/number/constructor.js | 2 - .../node_modules/core-js/fn/number/epsilon.js | 2 - .../node_modules/core-js/fn/number/index.js | 14 - .../core-js/fn/number/is-finite.js | 2 - .../core-js/fn/number/is-integer.js | 2 - .../node_modules/core-js/fn/number/is-nan.js | 2 - .../core-js/fn/number/is-safe-integer.js | 2 - .../core-js/fn/number/iterator.js | 5 - .../core-js/fn/number/max-safe-integer.js | 2 - .../core-js/fn/number/min-safe-integer.js | 2 - .../core-js/fn/number/parse-float.js | 2 - .../core-js/fn/number/parse-int.js | 2 - .../core-js/fn/number/to-fixed.js | 2 - .../core-js/fn/number/to-precision.js | 2 - .../core-js/fn/number/virtual/index.js | 4 - .../core-js/fn/number/virtual/iterator.js | 2 - .../core-js/fn/number/virtual/to-fixed.js | 2 - .../core-js/fn/number/virtual/to-precision.js | 2 - .../node_modules/core-js/fn/object/assign.js | 2 - .../node_modules/core-js/fn/object/classof.js | 2 - .../node_modules/core-js/fn/object/create.js | 5 - .../core-js/fn/object/define-getter.js | 2 - .../core-js/fn/object/define-properties.js | 5 - .../core-js/fn/object/define-property.js | 5 - .../core-js/fn/object/define-setter.js | 2 - .../node_modules/core-js/fn/object/define.js | 2 - .../node_modules/core-js/fn/object/entries.js | 2 - .../node_modules/core-js/fn/object/freeze.js | 2 - .../fn/object/get-own-property-descriptor.js | 5 - .../fn/object/get-own-property-descriptors.js | 2 - .../fn/object/get-own-property-names.js | 5 - .../fn/object/get-own-property-symbols.js | 2 - .../core-js/fn/object/get-prototype-of.js | 2 - .../node_modules/core-js/fn/object/index.js | 30 - .../core-js/fn/object/is-extensible.js | 2 - .../core-js/fn/object/is-frozen.js | 2 - .../core-js/fn/object/is-object.js | 2 - .../core-js/fn/object/is-sealed.js | 2 - .../node_modules/core-js/fn/object/is.js | 2 - .../node_modules/core-js/fn/object/keys.js | 2 - .../core-js/fn/object/lookup-getter.js | 2 - .../core-js/fn/object/lookup-setter.js | 2 - .../node_modules/core-js/fn/object/make.js | 2 - .../core-js/fn/object/prevent-extensions.js | 2 - .../node_modules/core-js/fn/object/seal.js | 2 - .../core-js/fn/object/set-prototype-of.js | 2 - .../node_modules/core-js/fn/object/values.js | 2 - .../node_modules/core-js/fn/observable.js | 7 - .../node_modules/core-js/fn/parse-float.js | 2 - .../node_modules/core-js/fn/parse-int.js | 2 - .../node_modules/core-js/fn/promise.js | 7 - .../core-js/fn/promise/finally.js | 4 - .../node_modules/core-js/fn/promise/index.js | 7 - .../node_modules/core-js/fn/promise/try.js | 8 - .../node_modules/core-js/fn/reflect/apply.js | 2 - .../core-js/fn/reflect/construct.js | 2 - .../core-js/fn/reflect/define-metadata.js | 2 - .../core-js/fn/reflect/define-property.js | 2 - .../core-js/fn/reflect/delete-metadata.js | 2 - .../core-js/fn/reflect/delete-property.js | 2 - .../core-js/fn/reflect/enumerate.js | 2 - .../core-js/fn/reflect/get-metadata-keys.js | 2 - .../core-js/fn/reflect/get-metadata.js | 2 - .../fn/reflect/get-own-metadata-keys.js | 2 - .../core-js/fn/reflect/get-own-metadata.js | 2 - .../fn/reflect/get-own-property-descriptor.js | 2 - .../core-js/fn/reflect/get-prototype-of.js | 2 - .../node_modules/core-js/fn/reflect/get.js | 2 - .../core-js/fn/reflect/has-metadata.js | 2 - .../core-js/fn/reflect/has-own-metadata.js | 2 - .../node_modules/core-js/fn/reflect/has.js | 2 - .../node_modules/core-js/fn/reflect/index.js | 24 - .../core-js/fn/reflect/is-extensible.js | 2 - .../core-js/fn/reflect/metadata.js | 2 - .../core-js/fn/reflect/own-keys.js | 2 - .../core-js/fn/reflect/prevent-extensions.js | 2 - .../core-js/fn/reflect/set-prototype-of.js | 2 - .../node_modules/core-js/fn/reflect/set.js | 2 - .../core-js/fn/regexp/constructor.js | 2 - .../node_modules/core-js/fn/regexp/escape.js | 2 - .../node_modules/core-js/fn/regexp/flags.js | 5 - .../node_modules/core-js/fn/regexp/index.js | 10 - .../node_modules/core-js/fn/regexp/match.js | 5 - .../node_modules/core-js/fn/regexp/replace.js | 5 - .../node_modules/core-js/fn/regexp/search.js | 5 - .../node_modules/core-js/fn/regexp/split.js | 5 - .../core-js/fn/regexp/to-string.js | 5 - .../node_modules/core-js/fn/set-immediate.js | 2 - .../node_modules/core-js/fn/set-interval.js | 2 - .../node_modules/core-js/fn/set-timeout.js | 2 - .../node_modules/core-js/fn/set.js | 8 - .../node_modules/core-js/fn/set/from.js | 8 - .../node_modules/core-js/fn/set/index.js | 8 - .../node_modules/core-js/fn/set/of.js | 8 - .../node_modules/core-js/fn/string/anchor.js | 2 - .../node_modules/core-js/fn/string/at.js | 2 - .../node_modules/core-js/fn/string/big.js | 2 - .../node_modules/core-js/fn/string/blink.js | 2 - .../node_modules/core-js/fn/string/bold.js | 2 - .../core-js/fn/string/code-point-at.js | 2 - .../core-js/fn/string/ends-with.js | 2 - .../core-js/fn/string/escape-html.js | 2 - .../node_modules/core-js/fn/string/fixed.js | 2 - .../core-js/fn/string/fontcolor.js | 2 - .../core-js/fn/string/fontsize.js | 2 - .../core-js/fn/string/from-code-point.js | 2 - .../core-js/fn/string/includes.js | 2 - .../node_modules/core-js/fn/string/index.js | 35 - .../node_modules/core-js/fn/string/italics.js | 2 - .../core-js/fn/string/iterator.js | 5 - .../node_modules/core-js/fn/string/link.js | 2 - .../core-js/fn/string/match-all.js | 2 - .../node_modules/core-js/fn/string/pad-end.js | 2 - .../core-js/fn/string/pad-start.js | 2 - .../node_modules/core-js/fn/string/raw.js | 2 - .../node_modules/core-js/fn/string/repeat.js | 2 - .../node_modules/core-js/fn/string/small.js | 2 - .../core-js/fn/string/starts-with.js | 2 - .../node_modules/core-js/fn/string/strike.js | 2 - .../node_modules/core-js/fn/string/sub.js | 2 - .../node_modules/core-js/fn/string/sup.js | 2 - .../core-js/fn/string/trim-end.js | 2 - .../core-js/fn/string/trim-left.js | 2 - .../core-js/fn/string/trim-right.js | 2 - .../core-js/fn/string/trim-start.js | 2 - .../node_modules/core-js/fn/string/trim.js | 2 - .../core-js/fn/string/unescape-html.js | 2 - .../core-js/fn/string/virtual/anchor.js | 2 - .../core-js/fn/string/virtual/at.js | 2 - .../core-js/fn/string/virtual/big.js | 2 - .../core-js/fn/string/virtual/blink.js | 2 - .../core-js/fn/string/virtual/bold.js | 2 - .../fn/string/virtual/code-point-at.js | 2 - .../core-js/fn/string/virtual/ends-with.js | 2 - .../core-js/fn/string/virtual/escape-html.js | 2 - .../core-js/fn/string/virtual/fixed.js | 2 - .../core-js/fn/string/virtual/fontcolor.js | 2 - .../core-js/fn/string/virtual/fontsize.js | 2 - .../core-js/fn/string/virtual/includes.js | 2 - .../core-js/fn/string/virtual/index.js | 33 - .../core-js/fn/string/virtual/italics.js | 2 - .../core-js/fn/string/virtual/iterator.js | 2 - .../core-js/fn/string/virtual/link.js | 2 - .../core-js/fn/string/virtual/match-all.js | 2 - .../core-js/fn/string/virtual/pad-end.js | 2 - .../core-js/fn/string/virtual/pad-start.js | 2 - .../core-js/fn/string/virtual/repeat.js | 2 - .../core-js/fn/string/virtual/small.js | 2 - .../core-js/fn/string/virtual/starts-with.js | 2 - .../core-js/fn/string/virtual/strike.js | 2 - .../core-js/fn/string/virtual/sub.js | 2 - .../core-js/fn/string/virtual/sup.js | 2 - .../core-js/fn/string/virtual/trim-end.js | 2 - .../core-js/fn/string/virtual/trim-left.js | 2 - .../core-js/fn/string/virtual/trim-right.js | 2 - .../core-js/fn/string/virtual/trim-start.js | 2 - .../core-js/fn/string/virtual/trim.js | 2 - .../fn/string/virtual/unescape-html.js | 2 - .../core-js/fn/symbol/async-iterator.js | 2 - .../node_modules/core-js/fn/symbol/for.js | 2 - .../core-js/fn/symbol/has-instance.js | 2 - .../node_modules/core-js/fn/symbol/index.js | 5 - .../core-js/fn/symbol/is-concat-spreadable.js | 1 - .../core-js/fn/symbol/iterator.js | 3 - .../node_modules/core-js/fn/symbol/key-for.js | 2 - .../node_modules/core-js/fn/symbol/match.js | 2 - .../core-js/fn/symbol/observable.js | 2 - .../node_modules/core-js/fn/symbol/replace.js | 2 - .../node_modules/core-js/fn/symbol/search.js | 2 - .../node_modules/core-js/fn/symbol/species.js | 1 - .../node_modules/core-js/fn/symbol/split.js | 2 - .../core-js/fn/symbol/to-primitive.js | 1 - .../core-js/fn/symbol/to-string-tag.js | 2 - .../core-js/fn/symbol/unscopables.js | 1 - .../node_modules/core-js/fn/system/global.js | 2 - .../node_modules/core-js/fn/system/index.js | 2 - .../core-js/fn/typed/array-buffer.js | 3 - .../core-js/fn/typed/data-view.js | 3 - .../core-js/fn/typed/float32-array.js | 2 - .../core-js/fn/typed/float64-array.js | 2 - .../node_modules/core-js/fn/typed/index.js | 13 - .../core-js/fn/typed/int16-array.js | 2 - .../core-js/fn/typed/int32-array.js | 2 - .../core-js/fn/typed/int8-array.js | 2 - .../core-js/fn/typed/uint16-array.js | 2 - .../core-js/fn/typed/uint32-array.js | 2 - .../core-js/fn/typed/uint8-array.js | 2 - .../core-js/fn/typed/uint8-clamped-array.js | 2 - .../node_modules/core-js/fn/weak-map.js | 6 - .../node_modules/core-js/fn/weak-map/from.js | 8 - .../node_modules/core-js/fn/weak-map/index.js | 6 - .../node_modules/core-js/fn/weak-map/of.js | 8 - .../node_modules/core-js/fn/weak-set.js | 6 - .../node_modules/core-js/fn/weak-set/from.js | 8 - .../node_modules/core-js/fn/weak-set/index.js | 6 - .../node_modules/core-js/fn/weak-set/of.js | 8 - .../node_modules/core-js/index.js | 16 - .../node_modules/core-js/library/core/_.js | 2 - .../core-js/library/core/delay.js | 2 - .../node_modules/core-js/library/core/dict.js | 2 - .../core-js/library/core/function.js | 2 - .../core-js/library/core/index.js | 15 - .../core-js/library/core/number.js | 2 - .../core-js/library/core/object.js | 5 - .../core-js/library/core/regexp.js | 2 - .../core-js/library/core/string.js | 3 - .../node_modules/core-js/library/es5/index.js | 37 - .../node_modules/core-js/library/es6/array.js | 23 - .../node_modules/core-js/library/es6/date.js | 6 - .../core-js/library/es6/function.js | 4 - .../node_modules/core-js/library/es6/index.js | 139 - .../node_modules/core-js/library/es6/map.js | 5 - .../node_modules/core-js/library/es6/math.js | 18 - .../core-js/library/es6/number.js | 13 - .../core-js/library/es6/object.js | 20 - .../core-js/library/es6/parse-float.js | 2 - .../core-js/library/es6/parse-int.js | 2 - .../core-js/library/es6/promise.js | 5 - .../core-js/library/es6/reflect.js | 15 - .../core-js/library/es6/regexp.js | 9 - .../node_modules/core-js/library/es6/set.js | 5 - .../core-js/library/es6/string.js | 27 - .../core-js/library/es6/symbol.js | 3 - .../node_modules/core-js/library/es6/typed.js | 13 - .../core-js/library/es6/weak-map.js | 4 - .../core-js/library/es6/weak-set.js | 4 - .../node_modules/core-js/library/es7/array.js | 4 - .../node_modules/core-js/library/es7/asap.js | 2 - .../node_modules/core-js/library/es7/error.js | 2 - .../core-js/library/es7/global.js | 2 - .../node_modules/core-js/library/es7/index.js | 56 - .../node_modules/core-js/library/es7/map.js | 4 - .../node_modules/core-js/library/es7/math.js | 13 - .../core-js/library/es7/object.js | 8 - .../core-js/library/es7/observable.js | 7 - .../core-js/library/es7/promise.js | 3 - .../core-js/library/es7/reflect.js | 10 - .../node_modules/core-js/library/es7/set.js | 4 - .../core-js/library/es7/string.js | 7 - .../core-js/library/es7/symbol.js | 3 - .../core-js/library/es7/system.js | 2 - .../core-js/library/es7/weak-map.js | 3 - .../core-js/library/es7/weak-set.js | 3 - .../node_modules/core-js/library/fn/_.js | 2 - .../core-js/library/fn/array/concat.js | 4 - .../core-js/library/fn/array/copy-within.js | 2 - .../core-js/library/fn/array/entries.js | 2 - .../core-js/library/fn/array/every.js | 2 - .../core-js/library/fn/array/fill.js | 2 - .../core-js/library/fn/array/filter.js | 2 - .../core-js/library/fn/array/find-index.js | 2 - .../core-js/library/fn/array/find.js | 2 - .../core-js/library/fn/array/flat-map.js | 2 - .../core-js/library/fn/array/flatten.js | 2 - .../core-js/library/fn/array/for-each.js | 2 - .../core-js/library/fn/array/from.js | 3 - .../core-js/library/fn/array/includes.js | 2 - .../core-js/library/fn/array/index-of.js | 2 - .../core-js/library/fn/array/index.js | 26 - .../core-js/library/fn/array/is-array.js | 2 - .../core-js/library/fn/array/iterator.js | 2 - .../core-js/library/fn/array/join.js | 2 - .../core-js/library/fn/array/keys.js | 2 - .../core-js/library/fn/array/last-index-of.js | 2 - .../core-js/library/fn/array/map.js | 2 - .../core-js/library/fn/array/of.js | 2 - .../core-js/library/fn/array/pop.js | 4 - .../core-js/library/fn/array/push.js | 4 - .../core-js/library/fn/array/reduce-right.js | 2 - .../core-js/library/fn/array/reduce.js | 2 - .../core-js/library/fn/array/reverse.js | 4 - .../core-js/library/fn/array/shift.js | 4 - .../core-js/library/fn/array/slice.js | 2 - .../core-js/library/fn/array/some.js | 2 - .../core-js/library/fn/array/sort.js | 2 - .../core-js/library/fn/array/splice.js | 4 - .../core-js/library/fn/array/unshift.js | 4 - .../core-js/library/fn/array/values.js | 2 - .../library/fn/array/virtual/copy-within.js | 2 - .../library/fn/array/virtual/entries.js | 2 - .../core-js/library/fn/array/virtual/every.js | 2 - .../core-js/library/fn/array/virtual/fill.js | 2 - .../library/fn/array/virtual/filter.js | 2 - .../library/fn/array/virtual/find-index.js | 2 - .../core-js/library/fn/array/virtual/find.js | 2 - .../library/fn/array/virtual/flat-map.js | 2 - .../library/fn/array/virtual/flatten.js | 2 - .../library/fn/array/virtual/for-each.js | 2 - .../library/fn/array/virtual/includes.js | 2 - .../library/fn/array/virtual/index-of.js | 2 - .../core-js/library/fn/array/virtual/index.js | 20 - .../library/fn/array/virtual/iterator.js | 2 - .../core-js/library/fn/array/virtual/join.js | 2 - .../core-js/library/fn/array/virtual/keys.js | 2 - .../library/fn/array/virtual/last-index-of.js | 2 - .../core-js/library/fn/array/virtual/map.js | 2 - .../library/fn/array/virtual/reduce-right.js | 2 - .../library/fn/array/virtual/reduce.js | 2 - .../core-js/library/fn/array/virtual/slice.js | 2 - .../core-js/library/fn/array/virtual/some.js | 2 - .../core-js/library/fn/array/virtual/sort.js | 2 - .../library/fn/array/virtual/values.js | 2 - .../node_modules/core-js/library/fn/asap.js | 2 - .../core-js/library/fn/clear-immediate.js | 2 - .../core-js/library/fn/date/index.js | 6 - .../core-js/library/fn/date/now.js | 2 - .../core-js/library/fn/date/to-iso-string.js | 3 - .../core-js/library/fn/date/to-json.js | 2 - .../core-js/library/fn/date/to-primitive.js | 5 - .../core-js/library/fn/date/to-string.js | 5 - .../node_modules/core-js/library/fn/delay.js | 2 - .../node_modules/core-js/library/fn/dict.js | 2 - .../library/fn/dom-collections/index.js | 8 - .../library/fn/dom-collections/iterator.js | 2 - .../core-js/library/fn/error/index.js | 2 - .../core-js/library/fn/error/is-error.js | 2 - .../core-js/library/fn/function/bind.js | 2 - .../library/fn/function/has-instance.js | 2 - .../core-js/library/fn/function/index.js | 5 - .../core-js/library/fn/function/name.js | 1 - .../core-js/library/fn/function/part.js | 2 - .../library/fn/function/virtual/bind.js | 2 - .../library/fn/function/virtual/index.js | 3 - .../library/fn/function/virtual/part.js | 2 - .../core-js/library/fn/get-iterator-method.js | 3 - .../core-js/library/fn/get-iterator.js | 3 - .../node_modules/core-js/library/fn/global.js | 2 - .../core-js/library/fn/is-iterable.js | 3 - .../core-js/library/fn/json/index.js | 2 - .../core-js/library/fn/json/stringify.js | 5 - .../node_modules/core-js/library/fn/map.js | 8 - .../core-js/library/fn/map/from.js | 8 - .../core-js/library/fn/map/index.js | 8 - .../node_modules/core-js/library/fn/map/of.js | 8 - .../core-js/library/fn/math/acosh.js | 2 - .../core-js/library/fn/math/asinh.js | 2 - .../core-js/library/fn/math/atanh.js | 2 - .../core-js/library/fn/math/cbrt.js | 2 - .../core-js/library/fn/math/clamp.js | 2 - .../core-js/library/fn/math/clz32.js | 2 - .../core-js/library/fn/math/cosh.js | 2 - .../core-js/library/fn/math/deg-per-rad.js | 2 - .../core-js/library/fn/math/degrees.js | 2 - .../core-js/library/fn/math/expm1.js | 2 - .../core-js/library/fn/math/fround.js | 2 - .../core-js/library/fn/math/fscale.js | 2 - .../core-js/library/fn/math/hypot.js | 2 - .../core-js/library/fn/math/iaddh.js | 2 - .../core-js/library/fn/math/imul.js | 2 - .../core-js/library/fn/math/imulh.js | 2 - .../core-js/library/fn/math/index.js | 30 - .../core-js/library/fn/math/isubh.js | 2 - .../core-js/library/fn/math/log10.js | 2 - .../core-js/library/fn/math/log1p.js | 2 - .../core-js/library/fn/math/log2.js | 2 - .../core-js/library/fn/math/rad-per-deg.js | 2 - .../core-js/library/fn/math/radians.js | 2 - .../core-js/library/fn/math/scale.js | 2 - .../core-js/library/fn/math/sign.js | 2 - .../core-js/library/fn/math/signbit.js | 3 - .../core-js/library/fn/math/sinh.js | 2 - .../core-js/library/fn/math/tanh.js | 2 - .../core-js/library/fn/math/trunc.js | 2 - .../core-js/library/fn/math/umulh.js | 2 - .../core-js/library/fn/number/constructor.js | 2 - .../core-js/library/fn/number/epsilon.js | 2 - .../core-js/library/fn/number/index.js | 14 - .../core-js/library/fn/number/is-finite.js | 2 - .../core-js/library/fn/number/is-integer.js | 2 - .../core-js/library/fn/number/is-nan.js | 2 - .../library/fn/number/is-safe-integer.js | 2 - .../core-js/library/fn/number/iterator.js | 5 - .../library/fn/number/max-safe-integer.js | 2 - .../library/fn/number/min-safe-integer.js | 2 - .../core-js/library/fn/number/parse-float.js | 2 - .../core-js/library/fn/number/parse-int.js | 2 - .../core-js/library/fn/number/to-fixed.js | 2 - .../core-js/library/fn/number/to-precision.js | 2 - .../library/fn/number/virtual/index.js | 4 - .../library/fn/number/virtual/iterator.js | 2 - .../library/fn/number/virtual/to-fixed.js | 2 - .../library/fn/number/virtual/to-precision.js | 2 - .../core-js/library/fn/object/assign.js | 2 - .../core-js/library/fn/object/classof.js | 2 - .../core-js/library/fn/object/create.js | 5 - .../library/fn/object/define-getter.js | 2 - .../library/fn/object/define-properties.js | 5 - .../library/fn/object/define-property.js | 5 - .../library/fn/object/define-setter.js | 2 - .../core-js/library/fn/object/define.js | 2 - .../core-js/library/fn/object/entries.js | 2 - .../core-js/library/fn/object/freeze.js | 2 - .../fn/object/get-own-property-descriptor.js | 5 - .../fn/object/get-own-property-descriptors.js | 2 - .../fn/object/get-own-property-names.js | 5 - .../fn/object/get-own-property-symbols.js | 2 - .../library/fn/object/get-prototype-of.js | 2 - .../core-js/library/fn/object/index.js | 30 - .../library/fn/object/is-extensible.js | 2 - .../core-js/library/fn/object/is-frozen.js | 2 - .../core-js/library/fn/object/is-object.js | 2 - .../core-js/library/fn/object/is-sealed.js | 2 - .../core-js/library/fn/object/is.js | 2 - .../core-js/library/fn/object/keys.js | 2 - .../library/fn/object/lookup-getter.js | 2 - .../library/fn/object/lookup-setter.js | 2 - .../core-js/library/fn/object/make.js | 2 - .../library/fn/object/prevent-extensions.js | 2 - .../core-js/library/fn/object/seal.js | 2 - .../library/fn/object/set-prototype-of.js | 2 - .../core-js/library/fn/object/values.js | 2 - .../core-js/library/fn/observable.js | 7 - .../core-js/library/fn/parse-float.js | 2 - .../core-js/library/fn/parse-int.js | 2 - .../core-js/library/fn/promise.js | 7 - .../core-js/library/fn/promise/finally.js | 4 - .../core-js/library/fn/promise/index.js | 7 - .../core-js/library/fn/promise/try.js | 8 - .../core-js/library/fn/reflect/apply.js | 2 - .../core-js/library/fn/reflect/construct.js | 2 - .../library/fn/reflect/define-metadata.js | 2 - .../library/fn/reflect/define-property.js | 2 - .../library/fn/reflect/delete-metadata.js | 2 - .../library/fn/reflect/delete-property.js | 2 - .../core-js/library/fn/reflect/enumerate.js | 2 - .../library/fn/reflect/get-metadata-keys.js | 2 - .../library/fn/reflect/get-metadata.js | 2 - .../fn/reflect/get-own-metadata-keys.js | 2 - .../library/fn/reflect/get-own-metadata.js | 2 - .../fn/reflect/get-own-property-descriptor.js | 2 - .../library/fn/reflect/get-prototype-of.js | 2 - .../core-js/library/fn/reflect/get.js | 2 - .../library/fn/reflect/has-metadata.js | 2 - .../library/fn/reflect/has-own-metadata.js | 2 - .../core-js/library/fn/reflect/has.js | 2 - .../core-js/library/fn/reflect/index.js | 24 - .../library/fn/reflect/is-extensible.js | 2 - .../core-js/library/fn/reflect/metadata.js | 2 - .../core-js/library/fn/reflect/own-keys.js | 2 - .../library/fn/reflect/prevent-extensions.js | 2 - .../library/fn/reflect/set-prototype-of.js | 2 - .../core-js/library/fn/reflect/set.js | 2 - .../core-js/library/fn/regexp/constructor.js | 2 - .../core-js/library/fn/regexp/escape.js | 2 - .../core-js/library/fn/regexp/flags.js | 5 - .../core-js/library/fn/regexp/index.js | 10 - .../core-js/library/fn/regexp/match.js | 5 - .../core-js/library/fn/regexp/replace.js | 5 - .../core-js/library/fn/regexp/search.js | 5 - .../core-js/library/fn/regexp/split.js | 5 - .../core-js/library/fn/regexp/to-string.js | 5 - .../core-js/library/fn/set-immediate.js | 2 - .../core-js/library/fn/set-interval.js | 2 - .../core-js/library/fn/set-timeout.js | 2 - .../node_modules/core-js/library/fn/set.js | 8 - .../core-js/library/fn/set/from.js | 8 - .../core-js/library/fn/set/index.js | 8 - .../node_modules/core-js/library/fn/set/of.js | 8 - .../core-js/library/fn/string/anchor.js | 2 - .../core-js/library/fn/string/at.js | 2 - .../core-js/library/fn/string/big.js | 2 - .../core-js/library/fn/string/blink.js | 2 - .../core-js/library/fn/string/bold.js | 2 - .../library/fn/string/code-point-at.js | 2 - .../core-js/library/fn/string/ends-with.js | 2 - .../core-js/library/fn/string/escape-html.js | 2 - .../core-js/library/fn/string/fixed.js | 2 - .../core-js/library/fn/string/fontcolor.js | 2 - .../core-js/library/fn/string/fontsize.js | 2 - .../library/fn/string/from-code-point.js | 2 - .../core-js/library/fn/string/includes.js | 2 - .../core-js/library/fn/string/index.js | 35 - .../core-js/library/fn/string/italics.js | 2 - .../core-js/library/fn/string/iterator.js | 5 - .../core-js/library/fn/string/link.js | 2 - .../core-js/library/fn/string/match-all.js | 2 - .../core-js/library/fn/string/pad-end.js | 2 - .../core-js/library/fn/string/pad-start.js | 2 - .../core-js/library/fn/string/raw.js | 2 - .../core-js/library/fn/string/repeat.js | 2 - .../core-js/library/fn/string/small.js | 2 - .../core-js/library/fn/string/starts-with.js | 2 - .../core-js/library/fn/string/strike.js | 2 - .../core-js/library/fn/string/sub.js | 2 - .../core-js/library/fn/string/sup.js | 2 - .../core-js/library/fn/string/trim-end.js | 2 - .../core-js/library/fn/string/trim-left.js | 2 - .../core-js/library/fn/string/trim-right.js | 2 - .../core-js/library/fn/string/trim-start.js | 2 - .../core-js/library/fn/string/trim.js | 2 - .../library/fn/string/unescape-html.js | 2 - .../library/fn/string/virtual/anchor.js | 2 - .../core-js/library/fn/string/virtual/at.js | 2 - .../core-js/library/fn/string/virtual/big.js | 2 - .../library/fn/string/virtual/blink.js | 2 - .../core-js/library/fn/string/virtual/bold.js | 2 - .../fn/string/virtual/code-point-at.js | 2 - .../library/fn/string/virtual/ends-with.js | 2 - .../library/fn/string/virtual/escape-html.js | 2 - .../library/fn/string/virtual/fixed.js | 2 - .../library/fn/string/virtual/fontcolor.js | 2 - .../library/fn/string/virtual/fontsize.js | 2 - .../library/fn/string/virtual/includes.js | 2 - .../library/fn/string/virtual/index.js | 33 - .../library/fn/string/virtual/italics.js | 2 - .../library/fn/string/virtual/iterator.js | 2 - .../core-js/library/fn/string/virtual/link.js | 2 - .../library/fn/string/virtual/match-all.js | 2 - .../library/fn/string/virtual/pad-end.js | 2 - .../library/fn/string/virtual/pad-start.js | 2 - .../library/fn/string/virtual/repeat.js | 2 - .../library/fn/string/virtual/small.js | 2 - .../library/fn/string/virtual/starts-with.js | 2 - .../library/fn/string/virtual/strike.js | 2 - .../core-js/library/fn/string/virtual/sub.js | 2 - .../core-js/library/fn/string/virtual/sup.js | 2 - .../library/fn/string/virtual/trim-end.js | 2 - .../library/fn/string/virtual/trim-left.js | 2 - .../library/fn/string/virtual/trim-right.js | 2 - .../library/fn/string/virtual/trim-start.js | 2 - .../core-js/library/fn/string/virtual/trim.js | 2 - .../fn/string/virtual/unescape-html.js | 2 - .../library/fn/symbol/async-iterator.js | 2 - .../core-js/library/fn/symbol/for.js | 2 - .../core-js/library/fn/symbol/has-instance.js | 2 - .../core-js/library/fn/symbol/index.js | 5 - .../library/fn/symbol/is-concat-spreadable.js | 1 - .../core-js/library/fn/symbol/iterator.js | 3 - .../core-js/library/fn/symbol/key-for.js | 2 - .../core-js/library/fn/symbol/match.js | 2 - .../core-js/library/fn/symbol/observable.js | 2 - .../core-js/library/fn/symbol/replace.js | 2 - .../core-js/library/fn/symbol/search.js | 2 - .../core-js/library/fn/symbol/species.js | 1 - .../core-js/library/fn/symbol/split.js | 2 - .../core-js/library/fn/symbol/to-primitive.js | 1 - .../library/fn/symbol/to-string-tag.js | 2 - .../core-js/library/fn/symbol/unscopables.js | 1 - .../core-js/library/fn/system/global.js | 2 - .../core-js/library/fn/system/index.js | 2 - .../core-js/library/fn/typed/array-buffer.js | 3 - .../core-js/library/fn/typed/data-view.js | 3 - .../core-js/library/fn/typed/float32-array.js | 2 - .../core-js/library/fn/typed/float64-array.js | 2 - .../core-js/library/fn/typed/index.js | 13 - .../core-js/library/fn/typed/int16-array.js | 2 - .../core-js/library/fn/typed/int32-array.js | 2 - .../core-js/library/fn/typed/int8-array.js | 2 - .../core-js/library/fn/typed/uint16-array.js | 2 - .../core-js/library/fn/typed/uint32-array.js | 2 - .../core-js/library/fn/typed/uint8-array.js | 2 - .../library/fn/typed/uint8-clamped-array.js | 2 - .../core-js/library/fn/weak-map.js | 6 - .../core-js/library/fn/weak-map/from.js | 8 - .../core-js/library/fn/weak-map/index.js | 6 - .../core-js/library/fn/weak-map/of.js | 8 - .../core-js/library/fn/weak-set.js | 6 - .../core-js/library/fn/weak-set/from.js | 8 - .../core-js/library/fn/weak-set/index.js | 6 - .../core-js/library/fn/weak-set/of.js | 8 - .../node_modules/core-js/library/index.js | 16 - .../core-js/library/modules/_a-function.js | 4 - .../library/modules/_a-number-value.js | 5 - .../library/modules/_add-to-unscopables.js | 1 - .../library/modules/_advance-string-index.js | 8 - .../core-js/library/modules/_an-instance.js | 5 - .../core-js/library/modules/_an-object.js | 5 - .../library/modules/_array-copy-within.js | 26 - .../core-js/library/modules/_array-fill.js | 15 - .../library/modules/_array-from-iterable.js | 7 - .../library/modules/_array-includes.js | 23 - .../core-js/library/modules/_array-methods.js | 44 - .../core-js/library/modules/_array-reduce.js | 28 - .../modules/_array-species-constructor.js | 16 - .../library/modules/_array-species-create.js | 6 - .../core-js/library/modules/_bind.js | 25 - .../core-js/library/modules/_classof.js | 23 - .../core-js/library/modules/_cof.js | 5 - .../library/modules/_collection-strong.js | 144 - .../library/modules/_collection-to-json.js | 9 - .../library/modules/_collection-weak.js | 85 - .../core-js/library/modules/_collection.js | 59 - .../core-js/library/modules/_core.js | 2 - .../library/modules/_create-property.js | 8 - .../core-js/library/modules/_ctx.js | 20 - .../library/modules/_date-to-iso-string.js | 26 - .../library/modules/_date-to-primitive.js | 9 - .../core-js/library/modules/_defined.js | 5 - .../core-js/library/modules/_descriptors.js | 4 - .../core-js/library/modules/_dom-create.js | 7 - .../core-js/library/modules/_entry-virtual.js | 5 - .../core-js/library/modules/_enum-bug-keys.js | 4 - .../core-js/library/modules/_enum-keys.js | 15 - .../core-js/library/modules/_export.js | 62 - .../library/modules/_fails-is-regexp.js | 12 - .../core-js/library/modules/_fails.js | 7 - .../core-js/library/modules/_fix-re-wks.js | 96 - .../core-js/library/modules/_flags.js | 13 - .../library/modules/_flatten-into-array.js | 39 - .../core-js/library/modules/_for-of.js | 25 - .../library/modules/_function-to-string.js | 1 - .../core-js/library/modules/_global.js | 6 - .../core-js/library/modules/_has.js | 4 - .../core-js/library/modules/_hide.js | 8 - .../core-js/library/modules/_html.js | 2 - .../library/modules/_ie8-dom-define.js | 3 - .../library/modules/_inherit-if-required.js | 9 - .../core-js/library/modules/_invoke.js | 16 - .../core-js/library/modules/_iobject.js | 6 - .../core-js/library/modules/_is-array-iter.js | 8 - .../core-js/library/modules/_is-array.js | 5 - .../core-js/library/modules/_is-integer.js | 6 - .../core-js/library/modules/_is-object.js | 3 - .../core-js/library/modules/_is-regexp.js | 8 - .../core-js/library/modules/_iter-call.js | 12 - .../core-js/library/modules/_iter-create.js | 13 - .../core-js/library/modules/_iter-define.js | 69 - .../core-js/library/modules/_iter-detect.js | 22 - .../core-js/library/modules/_iter-step.js | 3 - .../core-js/library/modules/_iterators.js | 1 - .../core-js/library/modules/_keyof.js | 10 - .../core-js/library/modules/_library.js | 1 - .../core-js/library/modules/_math-expm1.js | 10 - .../core-js/library/modules/_math-fround.js | 23 - .../core-js/library/modules/_math-log1p.js | 4 - .../core-js/library/modules/_math-scale.js | 18 - .../core-js/library/modules/_math-sign.js | 5 - .../core-js/library/modules/_meta.js | 53 - .../core-js/library/modules/_metadata.js | 51 - .../core-js/library/modules/_microtask.js | 69 - .../library/modules/_native-weak-map.js | 4 - .../modules/_new-promise-capability.js | 18 - .../core-js/library/modules/_object-assign.js | 38 - .../core-js/library/modules/_object-create.js | 41 - .../core-js/library/modules/_object-define.js | 13 - .../core-js/library/modules/_object-dp.js | 16 - .../core-js/library/modules/_object-dps.js | 13 - .../library/modules/_object-forced-pam.js | 9 - .../core-js/library/modules/_object-gopd.js | 16 - .../library/modules/_object-gopn-ext.js | 19 - .../core-js/library/modules/_object-gopn.js | 7 - .../core-js/library/modules/_object-gops.js | 1 - .../core-js/library/modules/_object-gpo.js | 13 - .../library/modules/_object-keys-internal.js | 17 - .../core-js/library/modules/_object-keys.js | 7 - .../core-js/library/modules/_object-pie.js | 1 - .../core-js/library/modules/_object-sap.js | 10 - .../library/modules/_object-to-array.js | 21 - .../core-js/library/modules/_own-keys.js | 10 - .../core-js/library/modules/_parse-float.js | 8 - .../core-js/library/modules/_parse-int.js | 9 - .../core-js/library/modules/_partial.js | 25 - .../core-js/library/modules/_path.js | 1 - .../core-js/library/modules/_perform.js | 7 - .../library/modules/_promise-resolve.js | 12 - .../core-js/library/modules/_property-desc.js | 8 - .../core-js/library/modules/_redefine-all.js | 7 - .../core-js/library/modules/_redefine.js | 1 - .../library/modules/_regexp-exec-abstract.js | 1 - .../core-js/library/modules/_regexp-exec.js | 1 - .../core-js/library/modules/_replacer.js | 8 - .../core-js/library/modules/_same-value.js | 5 - .../library/modules/_set-collection-from.js | 28 - .../library/modules/_set-collection-of.js | 12 - .../core-js/library/modules/_set-proto.js | 25 - .../core-js/library/modules/_set-species.js | 14 - .../library/modules/_set-to-string-tag.js | 7 - .../core-js/library/modules/_shared-key.js | 5 - .../core-js/library/modules/_shared.js | 12 - .../library/modules/_species-constructor.js | 9 - .../core-js/library/modules/_strict-method.js | 9 - .../core-js/library/modules/_string-at.js | 17 - .../library/modules/_string-context.js | 8 - .../core-js/library/modules/_string-html.js | 19 - .../core-js/library/modules/_string-pad.js | 16 - .../core-js/library/modules/_string-repeat.js | 12 - .../core-js/library/modules/_string-trim.js | 30 - .../core-js/library/modules/_string-ws.js | 2 - .../core-js/library/modules/_task.js | 84 - .../library/modules/_to-absolute-index.js | 7 - .../core-js/library/modules/_to-index.js | 10 - .../core-js/library/modules/_to-integer.js | 6 - .../core-js/library/modules/_to-iobject.js | 6 - .../core-js/library/modules/_to-length.js | 6 - .../core-js/library/modules/_to-object.js | 5 - .../core-js/library/modules/_to-primitive.js | 12 - .../core-js/library/modules/_typed-array.js | 480 - .../core-js/library/modules/_typed-buffer.js | 276 - .../core-js/library/modules/_typed.js | 28 - .../core-js/library/modules/_uid.js | 5 - .../core-js/library/modules/_user-agent.js | 4 - .../library/modules/_validate-collection.js | 5 - .../core-js/library/modules/_wks-define.js | 9 - .../core-js/library/modules/_wks-ext.js | 1 - .../core-js/library/modules/_wks.js | 11 - .../core-js/library/modules/core.delay.js | 12 - .../core-js/library/modules/core.dict.js | 157 - .../library/modules/core.function.part.js | 7 - .../modules/core.get-iterator-method.js | 8 - .../library/modules/core.get-iterator.js | 7 - .../library/modules/core.is-iterable.js | 10 - .../library/modules/core.number.iterator.js | 9 - .../library/modules/core.object.classof.js | 3 - .../library/modules/core.object.define.js | 4 - .../library/modules/core.object.is-object.js | 3 - .../library/modules/core.object.make.js | 9 - .../library/modules/core.regexp.escape.js | 5 - .../modules/core.string.escape-html.js | 11 - .../modules/core.string.unescape-html.js | 11 - .../core-js/library/modules/es5.js | 35 - .../library/modules/es6.array.copy-within.js | 6 - .../library/modules/es6.array.every.js | 10 - .../core-js/library/modules/es6.array.fill.js | 6 - .../library/modules/es6.array.filter.js | 10 - .../library/modules/es6.array.find-index.js | 14 - .../core-js/library/modules/es6.array.find.js | 14 - .../library/modules/es6.array.for-each.js | 11 - .../core-js/library/modules/es6.array.from.js | 37 - .../library/modules/es6.array.index-of.js | 15 - .../library/modules/es6.array.is-array.js | 4 - .../library/modules/es6.array.iterator.js | 34 - .../core-js/library/modules/es6.array.join.js | 12 - .../modules/es6.array.last-index-of.js | 22 - .../core-js/library/modules/es6.array.map.js | 10 - .../core-js/library/modules/es6.array.of.js | 19 - .../library/modules/es6.array.reduce-right.js | 10 - .../library/modules/es6.array.reduce.js | 10 - .../library/modules/es6.array.slice.js | 28 - .../core-js/library/modules/es6.array.some.js | 10 - .../core-js/library/modules/es6.array.sort.js | 23 - .../library/modules/es6.array.species.js | 1 - .../core-js/library/modules/es6.date.now.js | 4 - .../library/modules/es6.date.to-iso-string.js | 8 - .../library/modules/es6.date.to-json.js | 19 - .../library/modules/es6.date.to-primitive.js | 0 .../library/modules/es6.date.to-string.js | 0 .../library/modules/es6.function.bind.js | 4 - .../modules/es6.function.has-instance.js | 13 - .../library/modules/es6.function.name.js | 0 .../core-js/library/modules/es6.map.js | 19 - .../core-js/library/modules/es6.math.acosh.js | 18 - .../core-js/library/modules/es6.math.asinh.js | 10 - .../core-js/library/modules/es6.math.atanh.js | 10 - .../core-js/library/modules/es6.math.cbrt.js | 9 - .../core-js/library/modules/es6.math.clz32.js | 8 - .../core-js/library/modules/es6.math.cosh.js | 9 - .../core-js/library/modules/es6.math.expm1.js | 5 - .../library/modules/es6.math.fround.js | 4 - .../core-js/library/modules/es6.math.hypot.js | 25 - .../core-js/library/modules/es6.math.imul.js | 17 - .../core-js/library/modules/es6.math.log10.js | 8 - .../core-js/library/modules/es6.math.log1p.js | 4 - .../core-js/library/modules/es6.math.log2.js | 8 - .../core-js/library/modules/es6.math.sign.js | 4 - .../core-js/library/modules/es6.math.sinh.js | 15 - .../core-js/library/modules/es6.math.tanh.js | 12 - .../core-js/library/modules/es6.math.trunc.js | 8 - .../library/modules/es6.number.constructor.js | 0 .../library/modules/es6.number.epsilon.js | 4 - .../library/modules/es6.number.is-finite.js | 9 - .../library/modules/es6.number.is-integer.js | 4 - .../library/modules/es6.number.is-nan.js | 9 - .../modules/es6.number.is-safe-integer.js | 10 - .../modules/es6.number.max-safe-integer.js | 4 - .../modules/es6.number.min-safe-integer.js | 4 - .../library/modules/es6.number.parse-float.js | 4 - .../library/modules/es6.number.parse-int.js | 4 - .../library/modules/es6.number.to-fixed.js | 114 - .../modules/es6.number.to-precision.js | 18 - .../library/modules/es6.object.assign.js | 4 - .../library/modules/es6.object.create.js | 3 - .../modules/es6.object.define-properties.js | 3 - .../modules/es6.object.define-property.js | 3 - .../library/modules/es6.object.freeze.js | 9 - .../es6.object.get-own-property-descriptor.js | 9 - .../es6.object.get-own-property-names.js | 4 - .../modules/es6.object.get-prototype-of.js | 9 - .../modules/es6.object.is-extensible.js | 8 - .../library/modules/es6.object.is-frozen.js | 8 - .../library/modules/es6.object.is-sealed.js | 8 - .../core-js/library/modules/es6.object.is.js | 3 - .../library/modules/es6.object.keys.js | 9 - .../modules/es6.object.prevent-extensions.js | 9 - .../library/modules/es6.object.seal.js | 9 - .../modules/es6.object.set-prototype-of.js | 3 - .../library/modules/es6.object.to-string.js | 0 .../library/modules/es6.parse-float.js | 4 - .../core-js/library/modules/es6.parse-int.js | 4 - .../core-js/library/modules/es6.promise.js | 286 - .../library/modules/es6.reflect.apply.js | 16 - .../library/modules/es6.reflect.construct.js | 47 - .../modules/es6.reflect.define-property.js | 23 - .../modules/es6.reflect.delete-property.js | 11 - .../library/modules/es6.reflect.enumerate.js | 26 - ...es6.reflect.get-own-property-descriptor.js | 10 - .../modules/es6.reflect.get-prototype-of.js | 10 - .../library/modules/es6.reflect.get.js | 21 - .../library/modules/es6.reflect.has.js | 8 - .../modules/es6.reflect.is-extensible.js | 11 - .../library/modules/es6.reflect.own-keys.js | 4 - .../modules/es6.reflect.prevent-extensions.js | 16 - .../modules/es6.reflect.set-prototype-of.js | 15 - .../library/modules/es6.reflect.set.js | 33 - .../library/modules/es6.regexp.constructor.js | 1 - .../library/modules/es6.regexp.exec.js | 1 - .../library/modules/es6.regexp.flags.js | 0 .../library/modules/es6.regexp.match.js | 0 .../library/modules/es6.regexp.replace.js | 0 .../library/modules/es6.regexp.search.js | 0 .../library/modules/es6.regexp.split.js | 0 .../library/modules/es6.regexp.to-string.js | 0 .../core-js/library/modules/es6.set.js | 14 - .../library/modules/es6.string.anchor.js | 7 - .../core-js/library/modules/es6.string.big.js | 7 - .../library/modules/es6.string.blink.js | 7 - .../library/modules/es6.string.bold.js | 7 - .../modules/es6.string.code-point-at.js | 9 - .../library/modules/es6.string.ends-with.js | 20 - .../library/modules/es6.string.fixed.js | 7 - .../library/modules/es6.string.fontcolor.js | 7 - .../library/modules/es6.string.fontsize.js | 7 - .../modules/es6.string.from-code-point.js | 23 - .../library/modules/es6.string.includes.js | 12 - .../library/modules/es6.string.italics.js | 7 - .../library/modules/es6.string.iterator.js | 17 - .../library/modules/es6.string.link.js | 7 - .../core-js/library/modules/es6.string.raw.js | 18 - .../library/modules/es6.string.repeat.js | 6 - .../library/modules/es6.string.small.js | 7 - .../library/modules/es6.string.starts-with.js | 18 - .../library/modules/es6.string.strike.js | 7 - .../core-js/library/modules/es6.string.sub.js | 7 - .../core-js/library/modules/es6.string.sup.js | 7 - .../library/modules/es6.string.trim.js | 7 - .../core-js/library/modules/es6.symbol.js | 246 - .../library/modules/es6.typed.array-buffer.js | 46 - .../library/modules/es6.typed.data-view.js | 4 - .../modules/es6.typed.float32-array.js | 5 - .../modules/es6.typed.float64-array.js | 5 - .../library/modules/es6.typed.int16-array.js | 5 - .../library/modules/es6.typed.int32-array.js | 5 - .../library/modules/es6.typed.int8-array.js | 5 - .../library/modules/es6.typed.uint16-array.js | 5 - .../library/modules/es6.typed.uint32-array.js | 5 - .../library/modules/es6.typed.uint8-array.js | 5 - .../modules/es6.typed.uint8-clamped-array.js | 5 - .../core-js/library/modules/es6.weak-map.js | 60 - .../core-js/library/modules/es6.weak-set.js | 14 - .../library/modules/es7.array.flat-map.js | 22 - .../library/modules/es7.array.flatten.js | 21 - .../library/modules/es7.array.includes.js | 12 - .../core-js/library/modules/es7.asap.js | 12 - .../library/modules/es7.error.is-error.js | 9 - .../core-js/library/modules/es7.global.js | 4 - .../core-js/library/modules/es7.map.from.js | 2 - .../core-js/library/modules/es7.map.of.js | 2 - .../library/modules/es7.map.to-json.js | 4 - .../core-js/library/modules/es7.math.clamp.js | 8 - .../library/modules/es7.math.deg-per-rad.js | 4 - .../library/modules/es7.math.degrees.js | 9 - .../library/modules/es7.math.fscale.js | 10 - .../core-js/library/modules/es7.math.iaddh.js | 11 - .../core-js/library/modules/es7.math.imulh.js | 16 - .../core-js/library/modules/es7.math.isubh.js | 11 - .../library/modules/es7.math.rad-per-deg.js | 4 - .../library/modules/es7.math.radians.js | 9 - .../core-js/library/modules/es7.math.scale.js | 4 - .../library/modules/es7.math.signbit.js | 7 - .../core-js/library/modules/es7.math.umulh.js | 16 - .../modules/es7.object.define-getter.js | 12 - .../modules/es7.object.define-setter.js | 12 - .../library/modules/es7.object.entries.js | 9 - ...es7.object.get-own-property-descriptors.js | 22 - .../modules/es7.object.lookup-getter.js | 18 - .../modules/es7.object.lookup-setter.js | 18 - .../library/modules/es7.object.values.js | 9 - .../core-js/library/modules/es7.observable.js | 199 - .../library/modules/es7.promise.finally.js | 20 - .../library/modules/es7.promise.try.js | 12 - .../modules/es7.reflect.define-metadata.js | 8 - .../modules/es7.reflect.delete-metadata.js | 15 - .../modules/es7.reflect.get-metadata-keys.js | 19 - .../modules/es7.reflect.get-metadata.js | 17 - .../es7.reflect.get-own-metadata-keys.js | 8 - .../modules/es7.reflect.get-own-metadata.js | 9 - .../modules/es7.reflect.has-metadata.js | 16 - .../modules/es7.reflect.has-own-metadata.js | 9 - .../library/modules/es7.reflect.metadata.js | 15 - .../core-js/library/modules/es7.set.from.js | 2 - .../core-js/library/modules/es7.set.of.js | 2 - .../library/modules/es7.set.to-json.js | 4 - .../core-js/library/modules/es7.string.at.js | 10 - .../library/modules/es7.string.match-all.js | 30 - .../library/modules/es7.string.pad-end.js | 14 - .../library/modules/es7.string.pad-start.js | 14 - .../library/modules/es7.string.trim-left.js | 7 - .../library/modules/es7.string.trim-right.js | 7 - .../modules/es7.symbol.async-iterator.js | 1 - .../library/modules/es7.symbol.observable.js | 1 - .../library/modules/es7.system.global.js | 4 - .../library/modules/es7.weak-map.from.js | 2 - .../library/modules/es7.weak-map.of.js | 2 - .../library/modules/es7.weak-set.from.js | 2 - .../library/modules/es7.weak-set.of.js | 2 - .../library/modules/web.dom.iterable.js | 19 - .../core-js/library/modules/web.immediate.js | 6 - .../core-js/library/modules/web.timers.js | 20 - .../node_modules/core-js/library/shim.js | 198 - .../node_modules/core-js/library/stage/0.js | 10 - .../node_modules/core-js/library/stage/1.js | 23 - .../node_modules/core-js/library/stage/2.js | 4 - .../node_modules/core-js/library/stage/3.js | 4 - .../node_modules/core-js/library/stage/4.js | 11 - .../core-js/library/stage/index.js | 1 - .../node_modules/core-js/library/stage/pre.js | 10 - .../core-js/library/web/dom-collections.js | 2 - .../core-js/library/web/immediate.js | 2 - .../node_modules/core-js/library/web/index.js | 4 - .../core-js/library/web/timers.js | 2 - .../core-js/modules/_a-function.js | 4 - .../core-js/modules/_a-number-value.js | 5 - .../core-js/modules/_add-to-unscopables.js | 7 - .../core-js/modules/_advance-string-index.js | 8 - .../core-js/modules/_an-instance.js | 5 - .../core-js/modules/_an-object.js | 5 - .../core-js/modules/_array-copy-within.js | 26 - .../core-js/modules/_array-fill.js | 15 - .../core-js/modules/_array-from-iterable.js | 7 - .../core-js/modules/_array-includes.js | 23 - .../core-js/modules/_array-methods.js | 44 - .../core-js/modules/_array-reduce.js | 28 - .../modules/_array-species-constructor.js | 16 - .../core-js/modules/_array-species-create.js | 6 - .../node_modules/core-js/modules/_bind.js | 25 - .../node_modules/core-js/modules/_classof.js | 23 - .../node_modules/core-js/modules/_cof.js | 5 - .../core-js/modules/_collection-strong.js | 144 - .../core-js/modules/_collection-to-json.js | 9 - .../core-js/modules/_collection-weak.js | 85 - .../core-js/modules/_collection.js | 85 - .../node_modules/core-js/modules/_core.js | 2 - .../core-js/modules/_create-property.js | 8 - .../node_modules/core-js/modules/_ctx.js | 20 - .../core-js/modules/_date-to-iso-string.js | 26 - .../core-js/modules/_date-to-primitive.js | 9 - .../node_modules/core-js/modules/_defined.js | 5 - .../core-js/modules/_descriptors.js | 4 - .../core-js/modules/_dom-create.js | 7 - .../core-js/modules/_entry-virtual.js | 5 - .../core-js/modules/_enum-bug-keys.js | 4 - .../core-js/modules/_enum-keys.js | 15 - .../node_modules/core-js/modules/_export.js | 43 - .../core-js/modules/_fails-is-regexp.js | 12 - .../node_modules/core-js/modules/_fails.js | 7 - .../core-js/modules/_fix-re-wks.js | 96 - .../node_modules/core-js/modules/_flags.js | 13 - .../core-js/modules/_flatten-into-array.js | 39 - .../node_modules/core-js/modules/_for-of.js | 25 - .../core-js/modules/_function-to-string.js | 1 - .../node_modules/core-js/modules/_global.js | 6 - .../node_modules/core-js/modules/_has.js | 4 - .../node_modules/core-js/modules/_hide.js | 8 - .../node_modules/core-js/modules/_html.js | 2 - .../core-js/modules/_ie8-dom-define.js | 3 - .../core-js/modules/_inherit-if-required.js | 9 - .../node_modules/core-js/modules/_invoke.js | 16 - .../node_modules/core-js/modules/_iobject.js | 6 - .../core-js/modules/_is-array-iter.js | 8 - .../node_modules/core-js/modules/_is-array.js | 5 - .../core-js/modules/_is-integer.js | 6 - .../core-js/modules/_is-object.js | 3 - .../core-js/modules/_is-regexp.js | 8 - .../core-js/modules/_iter-call.js | 12 - .../core-js/modules/_iter-create.js | 13 - .../core-js/modules/_iter-define.js | 69 - .../core-js/modules/_iter-detect.js | 22 - .../core-js/modules/_iter-step.js | 3 - .../core-js/modules/_iterators.js | 1 - .../node_modules/core-js/modules/_keyof.js | 10 - .../node_modules/core-js/modules/_library.js | 1 - .../core-js/modules/_math-expm1.js | 10 - .../core-js/modules/_math-fround.js | 23 - .../core-js/modules/_math-log1p.js | 4 - .../core-js/modules/_math-scale.js | 18 - .../core-js/modules/_math-sign.js | 5 - .../node_modules/core-js/modules/_meta.js | 53 - .../node_modules/core-js/modules/_metadata.js | 51 - .../core-js/modules/_microtask.js | 69 - .../core-js/modules/_native-weak-map.js | 4 - .../modules/_new-promise-capability.js | 18 - .../core-js/modules/_object-assign.js | 38 - .../core-js/modules/_object-create.js | 41 - .../core-js/modules/_object-define.js | 13 - .../core-js/modules/_object-dp.js | 16 - .../core-js/modules/_object-dps.js | 13 - .../core-js/modules/_object-forced-pam.js | 9 - .../core-js/modules/_object-gopd.js | 16 - .../core-js/modules/_object-gopn-ext.js | 19 - .../core-js/modules/_object-gopn.js | 7 - .../core-js/modules/_object-gops.js | 1 - .../core-js/modules/_object-gpo.js | 13 - .../core-js/modules/_object-keys-internal.js | 17 - .../core-js/modules/_object-keys.js | 7 - .../core-js/modules/_object-pie.js | 1 - .../core-js/modules/_object-sap.js | 10 - .../core-js/modules/_object-to-array.js | 21 - .../node_modules/core-js/modules/_own-keys.js | 10 - .../core-js/modules/_parse-float.js | 8 - .../core-js/modules/_parse-int.js | 9 - .../node_modules/core-js/modules/_partial.js | 25 - .../node_modules/core-js/modules/_path.js | 1 - .../node_modules/core-js/modules/_perform.js | 7 - .../core-js/modules/_promise-resolve.js | 12 - .../core-js/modules/_property-desc.js | 8 - .../core-js/modules/_redefine-all.js | 5 - .../node_modules/core-js/modules/_redefine.js | 31 - .../core-js/modules/_regexp-exec-abstract.js | 21 - .../core-js/modules/_regexp-exec.js | 58 - .../node_modules/core-js/modules/_replacer.js | 8 - .../core-js/modules/_same-value.js | 5 - .../core-js/modules/_set-collection-from.js | 28 - .../core-js/modules/_set-collection-of.js | 12 - .../core-js/modules/_set-proto.js | 25 - .../core-js/modules/_set-species.js | 13 - .../core-js/modules/_set-to-string-tag.js | 7 - .../core-js/modules/_shared-key.js | 5 - .../node_modules/core-js/modules/_shared.js | 12 - .../core-js/modules/_species-constructor.js | 9 - .../core-js/modules/_strict-method.js | 9 - .../core-js/modules/_string-at.js | 17 - .../core-js/modules/_string-context.js | 8 - .../core-js/modules/_string-html.js | 19 - .../core-js/modules/_string-pad.js | 16 - .../core-js/modules/_string-repeat.js | 12 - .../core-js/modules/_string-trim.js | 30 - .../core-js/modules/_string-ws.js | 2 - .../node_modules/core-js/modules/_task.js | 84 - .../core-js/modules/_to-absolute-index.js | 7 - .../node_modules/core-js/modules/_to-index.js | 10 - .../core-js/modules/_to-integer.js | 6 - .../core-js/modules/_to-iobject.js | 6 - .../core-js/modules/_to-length.js | 6 - .../core-js/modules/_to-object.js | 5 - .../core-js/modules/_to-primitive.js | 12 - .../core-js/modules/_typed-array.js | 480 - .../core-js/modules/_typed-buffer.js | 276 - .../node_modules/core-js/modules/_typed.js | 28 - .../node_modules/core-js/modules/_uid.js | 5 - .../core-js/modules/_user-agent.js | 4 - .../core-js/modules/_validate-collection.js | 5 - .../core-js/modules/_wks-define.js | 9 - .../node_modules/core-js/modules/_wks-ext.js | 1 - .../node_modules/core-js/modules/_wks.js | 11 - .../core-js/modules/core.delay.js | 12 - .../node_modules/core-js/modules/core.dict.js | 157 - .../core-js/modules/core.function.part.js | 7 - .../modules/core.get-iterator-method.js | 8 - .../core-js/modules/core.get-iterator.js | 7 - .../core-js/modules/core.is-iterable.js | 10 - .../core-js/modules/core.number.iterator.js | 9 - .../core-js/modules/core.object.classof.js | 3 - .../core-js/modules/core.object.define.js | 4 - .../core-js/modules/core.object.is-object.js | 3 - .../core-js/modules/core.object.make.js | 9 - .../core-js/modules/core.regexp.escape.js | 5 - .../modules/core.string.escape-html.js | 11 - .../modules/core.string.unescape-html.js | 11 - .../node_modules/core-js/modules/es5.js | 35 - .../core-js/modules/es6.array.copy-within.js | 6 - .../core-js/modules/es6.array.every.js | 10 - .../core-js/modules/es6.array.fill.js | 6 - .../core-js/modules/es6.array.filter.js | 10 - .../core-js/modules/es6.array.find-index.js | 14 - .../core-js/modules/es6.array.find.js | 14 - .../core-js/modules/es6.array.for-each.js | 11 - .../core-js/modules/es6.array.from.js | 37 - .../core-js/modules/es6.array.index-of.js | 15 - .../core-js/modules/es6.array.is-array.js | 4 - .../core-js/modules/es6.array.iterator.js | 34 - .../core-js/modules/es6.array.join.js | 12 - .../modules/es6.array.last-index-of.js | 22 - .../core-js/modules/es6.array.map.js | 10 - .../core-js/modules/es6.array.of.js | 19 - .../core-js/modules/es6.array.reduce-right.js | 10 - .../core-js/modules/es6.array.reduce.js | 10 - .../core-js/modules/es6.array.slice.js | 28 - .../core-js/modules/es6.array.some.js | 10 - .../core-js/modules/es6.array.sort.js | 23 - .../core-js/modules/es6.array.species.js | 1 - .../core-js/modules/es6.date.now.js | 4 - .../core-js/modules/es6.date.to-iso-string.js | 8 - .../core-js/modules/es6.date.to-json.js | 16 - .../core-js/modules/es6.date.to-primitive.js | 4 - .../core-js/modules/es6.date.to-string.js | 12 - .../core-js/modules/es6.function.bind.js | 4 - .../modules/es6.function.has-instance.js | 13 - .../core-js/modules/es6.function.name.js | 16 - .../node_modules/core-js/modules/es6.map.js | 19 - .../core-js/modules/es6.math.acosh.js | 18 - .../core-js/modules/es6.math.asinh.js | 10 - .../core-js/modules/es6.math.atanh.js | 10 - .../core-js/modules/es6.math.cbrt.js | 9 - .../core-js/modules/es6.math.clz32.js | 8 - .../core-js/modules/es6.math.cosh.js | 9 - .../core-js/modules/es6.math.expm1.js | 5 - .../core-js/modules/es6.math.fround.js | 4 - .../core-js/modules/es6.math.hypot.js | 25 - .../core-js/modules/es6.math.imul.js | 17 - .../core-js/modules/es6.math.log10.js | 8 - .../core-js/modules/es6.math.log1p.js | 4 - .../core-js/modules/es6.math.log2.js | 8 - .../core-js/modules/es6.math.sign.js | 4 - .../core-js/modules/es6.math.sinh.js | 15 - .../core-js/modules/es6.math.tanh.js | 12 - .../core-js/modules/es6.math.trunc.js | 8 - .../core-js/modules/es6.number.constructor.js | 69 - .../core-js/modules/es6.number.epsilon.js | 4 - .../core-js/modules/es6.number.is-finite.js | 9 - .../core-js/modules/es6.number.is-integer.js | 4 - .../core-js/modules/es6.number.is-nan.js | 9 - .../modules/es6.number.is-safe-integer.js | 10 - .../modules/es6.number.max-safe-integer.js | 4 - .../modules/es6.number.min-safe-integer.js | 4 - .../core-js/modules/es6.number.parse-float.js | 4 - .../core-js/modules/es6.number.parse-int.js | 4 - .../core-js/modules/es6.number.to-fixed.js | 114 - .../modules/es6.number.to-precision.js | 18 - .../core-js/modules/es6.object.assign.js | 4 - .../core-js/modules/es6.object.create.js | 3 - .../modules/es6.object.define-properties.js | 3 - .../modules/es6.object.define-property.js | 3 - .../core-js/modules/es6.object.freeze.js | 9 - .../es6.object.get-own-property-descriptor.js | 9 - .../es6.object.get-own-property-names.js | 4 - .../modules/es6.object.get-prototype-of.js | 9 - .../modules/es6.object.is-extensible.js | 8 - .../core-js/modules/es6.object.is-frozen.js | 8 - .../core-js/modules/es6.object.is-sealed.js | 8 - .../core-js/modules/es6.object.is.js | 3 - .../core-js/modules/es6.object.keys.js | 9 - .../modules/es6.object.prevent-extensions.js | 9 - .../core-js/modules/es6.object.seal.js | 9 - .../modules/es6.object.set-prototype-of.js | 3 - .../core-js/modules/es6.object.to-string.js | 10 - .../core-js/modules/es6.parse-float.js | 4 - .../core-js/modules/es6.parse-int.js | 4 - .../core-js/modules/es6.promise.js | 286 - .../core-js/modules/es6.reflect.apply.js | 16 - .../core-js/modules/es6.reflect.construct.js | 47 - .../modules/es6.reflect.define-property.js | 23 - .../modules/es6.reflect.delete-property.js | 11 - .../core-js/modules/es6.reflect.enumerate.js | 26 - ...es6.reflect.get-own-property-descriptor.js | 10 - .../modules/es6.reflect.get-prototype-of.js | 10 - .../core-js/modules/es6.reflect.get.js | 21 - .../core-js/modules/es6.reflect.has.js | 8 - .../modules/es6.reflect.is-extensible.js | 11 - .../core-js/modules/es6.reflect.own-keys.js | 4 - .../modules/es6.reflect.prevent-extensions.js | 16 - .../modules/es6.reflect.set-prototype-of.js | 15 - .../core-js/modules/es6.reflect.set.js | 33 - .../core-js/modules/es6.regexp.constructor.js | 43 - .../core-js/modules/es6.regexp.exec.js | 9 - .../core-js/modules/es6.regexp.flags.js | 5 - .../core-js/modules/es6.regexp.match.js | 40 - .../core-js/modules/es6.regexp.replace.js | 118 - .../core-js/modules/es6.regexp.search.js | 31 - .../core-js/modules/es6.regexp.split.js | 134 - .../core-js/modules/es6.regexp.to-string.js | 25 - .../node_modules/core-js/modules/es6.set.js | 14 - .../core-js/modules/es6.string.anchor.js | 7 - .../core-js/modules/es6.string.big.js | 7 - .../core-js/modules/es6.string.blink.js | 7 - .../core-js/modules/es6.string.bold.js | 7 - .../modules/es6.string.code-point-at.js | 9 - .../core-js/modules/es6.string.ends-with.js | 20 - .../core-js/modules/es6.string.fixed.js | 7 - .../core-js/modules/es6.string.fontcolor.js | 7 - .../core-js/modules/es6.string.fontsize.js | 7 - .../modules/es6.string.from-code-point.js | 23 - .../core-js/modules/es6.string.includes.js | 12 - .../core-js/modules/es6.string.italics.js | 7 - .../core-js/modules/es6.string.iterator.js | 17 - .../core-js/modules/es6.string.link.js | 7 - .../core-js/modules/es6.string.raw.js | 18 - .../core-js/modules/es6.string.repeat.js | 6 - .../core-js/modules/es6.string.small.js | 7 - .../core-js/modules/es6.string.starts-with.js | 18 - .../core-js/modules/es6.string.strike.js | 7 - .../core-js/modules/es6.string.sub.js | 7 - .../core-js/modules/es6.string.sup.js | 7 - .../core-js/modules/es6.string.trim.js | 7 - .../core-js/modules/es6.symbol.js | 246 - .../core-js/modules/es6.typed.array-buffer.js | 46 - .../core-js/modules/es6.typed.data-view.js | 4 - .../modules/es6.typed.float32-array.js | 5 - .../modules/es6.typed.float64-array.js | 5 - .../core-js/modules/es6.typed.int16-array.js | 5 - .../core-js/modules/es6.typed.int32-array.js | 5 - .../core-js/modules/es6.typed.int8-array.js | 5 - .../core-js/modules/es6.typed.uint16-array.js | 5 - .../core-js/modules/es6.typed.uint32-array.js | 5 - .../core-js/modules/es6.typed.uint8-array.js | 5 - .../modules/es6.typed.uint8-clamped-array.js | 5 - .../core-js/modules/es6.weak-map.js | 60 - .../core-js/modules/es6.weak-set.js | 14 - .../core-js/modules/es7.array.flat-map.js | 22 - .../core-js/modules/es7.array.flatten.js | 21 - .../core-js/modules/es7.array.includes.js | 12 - .../node_modules/core-js/modules/es7.asap.js | 12 - .../core-js/modules/es7.error.is-error.js | 9 - .../core-js/modules/es7.global.js | 4 - .../core-js/modules/es7.map.from.js | 2 - .../core-js/modules/es7.map.of.js | 2 - .../core-js/modules/es7.map.to-json.js | 4 - .../core-js/modules/es7.math.clamp.js | 8 - .../core-js/modules/es7.math.deg-per-rad.js | 4 - .../core-js/modules/es7.math.degrees.js | 9 - .../core-js/modules/es7.math.fscale.js | 10 - .../core-js/modules/es7.math.iaddh.js | 11 - .../core-js/modules/es7.math.imulh.js | 16 - .../core-js/modules/es7.math.isubh.js | 11 - .../core-js/modules/es7.math.rad-per-deg.js | 4 - .../core-js/modules/es7.math.radians.js | 9 - .../core-js/modules/es7.math.scale.js | 4 - .../core-js/modules/es7.math.signbit.js | 7 - .../core-js/modules/es7.math.umulh.js | 16 - .../modules/es7.object.define-getter.js | 12 - .../modules/es7.object.define-setter.js | 12 - .../core-js/modules/es7.object.entries.js | 9 - ...es7.object.get-own-property-descriptors.js | 22 - .../modules/es7.object.lookup-getter.js | 18 - .../modules/es7.object.lookup-setter.js | 18 - .../core-js/modules/es7.object.values.js | 9 - .../core-js/modules/es7.observable.js | 199 - .../core-js/modules/es7.promise.finally.js | 20 - .../core-js/modules/es7.promise.try.js | 12 - .../modules/es7.reflect.define-metadata.js | 8 - .../modules/es7.reflect.delete-metadata.js | 15 - .../modules/es7.reflect.get-metadata-keys.js | 19 - .../modules/es7.reflect.get-metadata.js | 17 - .../es7.reflect.get-own-metadata-keys.js | 8 - .../modules/es7.reflect.get-own-metadata.js | 9 - .../modules/es7.reflect.has-metadata.js | 16 - .../modules/es7.reflect.has-own-metadata.js | 9 - .../core-js/modules/es7.reflect.metadata.js | 15 - .../core-js/modules/es7.set.from.js | 2 - .../core-js/modules/es7.set.of.js | 2 - .../core-js/modules/es7.set.to-json.js | 4 - .../core-js/modules/es7.string.at.js | 10 - .../core-js/modules/es7.string.match-all.js | 30 - .../core-js/modules/es7.string.pad-end.js | 14 - .../core-js/modules/es7.string.pad-start.js | 14 - .../core-js/modules/es7.string.trim-left.js | 7 - .../core-js/modules/es7.string.trim-right.js | 7 - .../modules/es7.symbol.async-iterator.js | 1 - .../core-js/modules/es7.symbol.observable.js | 1 - .../core-js/modules/es7.system.global.js | 4 - .../core-js/modules/es7.weak-map.from.js | 2 - .../core-js/modules/es7.weak-map.of.js | 2 - .../core-js/modules/es7.weak-set.from.js | 2 - .../core-js/modules/es7.weak-set.of.js | 2 - .../modules/library/_add-to-unscopables.js | 1 - .../core-js/modules/library/_collection.js | 59 - .../core-js/modules/library/_export.js | 62 - .../core-js/modules/library/_library.js | 1 - .../core-js/modules/library/_path.js | 1 - .../core-js/modules/library/_redefine-all.js | 7 - .../core-js/modules/library/_redefine.js | 1 - .../modules/library/_regexp-exec-abstract.js | 1 - .../core-js/modules/library/_regexp-exec.js | 1 - .../core-js/modules/library/_set-species.js | 14 - .../modules/library/es6.date.to-json.js | 19 - .../modules/library/es6.date.to-primitive.js | 0 .../modules/library/es6.date.to-string.js | 0 .../modules/library/es6.function.name.js | 0 .../modules/library/es6.number.constructor.js | 0 .../modules/library/es6.object.to-string.js | 0 .../modules/library/es6.regexp.constructor.js | 1 - .../modules/library/es6.regexp.exec.js | 1 - .../modules/library/es6.regexp.flags.js | 0 .../modules/library/es6.regexp.match.js | 0 .../modules/library/es6.regexp.replace.js | 0 .../modules/library/es6.regexp.search.js | 0 .../modules/library/es6.regexp.split.js | 0 .../modules/library/es6.regexp.to-string.js | 0 .../modules/library/web.dom.iterable.js | 19 - .../core-js/modules/web.dom.iterable.js | 58 - .../core-js/modules/web.immediate.js | 6 - .../core-js/modules/web.timers.js | 20 - .../node_modules/core-js/package.json | 143 - .../core-js/scripts/postinstall.js | 23 - .../node_modules/core-js/shim.js | 198 - .../node_modules/core-js/stage/0.js | 10 - .../node_modules/core-js/stage/1.js | 23 - .../node_modules/core-js/stage/2.js | 4 - .../node_modules/core-js/stage/3.js | 4 - .../node_modules/core-js/stage/4.js | 11 - .../node_modules/core-js/stage/index.js | 1 - .../node_modules/core-js/stage/pre.js | 10 - .../core-js/web/dom-collections.js | 2 - .../node_modules/core-js/web/immediate.js | 2 - .../node_modules/core-js/web/index.js | 4 - .../node_modules/core-js/web/timers.js | 2 - .../node_modules/format-util/.jscsrc | 20 - .../node_modules/format-util/.jshintignore | 4 - .../node_modules/format-util/.jshintrc | 13 - .../node_modules/format-util/.npmignore | 7 - .../node_modules/format-util/.travis.yml | 11 - .../node_modules/format-util/LICENSE | 46 - .../node_modules/format-util/README.md | 117 - .../format-util/doc/readme/developer.md | 66 - .../format-util/doc/readme/install.md | 5 - .../format-util/doc/readme/introduction.md | 5 - .../format-util/doc/readme/license.md | 3 - .../format-util/doc/readme/links.md | 6 - .../format-util/doc/readme/usage.md | 6 - .../node_modules/format-util/format.js | 37 - .../node_modules/format-util/index.js | 1 - .../node_modules/format-util/package.json | 119 - .../node_modules/format-util/test/index.html | 29 - .../node_modules/format-util/test/index.js | 1 - .../node_modules/format-util/test/mocha.opts | 6 - .../format-util/test/spec/format.js | 55 - .../json-schema-ref-parser/CHANGELOG.md | 20 +- .../json-schema-ref-parser/README.md | 82 +- .../json-schema-ref-parser/dist/ref-parser.js | 15126 -------- .../dist/ref-parser.js.map | 193 - .../dist/ref-parser.min.js | 27 - .../dist/ref-parser.min.js.map | 1536 - .../json-schema-ref-parser/lib/bundle.js | 77 +- .../json-schema-ref-parser/lib/dereference.js | 298 +- .../json-schema-ref-parser/lib/index.d.ts | 778 +- .../json-schema-ref-parser/lib/index.js | 151 +- .../lib/normalize-args.js | 12 +- .../json-schema-ref-parser/lib/options.js | 22 +- .../json-schema-ref-parser/lib/parse.js | 62 +- .../lib/parsers/binary.js | 8 +- .../lib/parsers/json.js | 8 +- .../lib/parsers/text.js | 6 +- .../lib/parsers/yaml.js | 10 +- .../json-schema-ref-parser/lib/pointer.js | 44 +- .../json-schema-ref-parser/lib/ref.js | 18 +- .../json-schema-ref-parser/lib/refs.js | 392 +- .../lib/resolve-external.js | 40 +- .../lib/resolvers/file.js | 24 +- .../lib/resolvers/http.js | 56 +- .../lib/util/plugins.js | 32 +- .../json-schema-ref-parser/lib/util/url.js | 24 +- .../json-schema-ref-parser/lib/util/yaml.js | 12 +- .../json-schema-ref-parser/package.json | 134 +- .../node_modules/jsonschema-draft4/.npmignore | 11 - .../node_modules/jsonschema-draft4/README.md | 36 - .../jsonschema-draft4/package.json | 87 - .../jsonschema-draft4/schema.json | 150 - .../node_modules/jsonschema/.editorconfig | 10 - .../node_modules/jsonschema/LICENSE | 21 - .../node_modules/jsonschema/README.md | 248 - .../node_modules/jsonschema/lib/attribute.js | 820 - .../node_modules/jsonschema/lib/helpers.js | 325 - .../node_modules/jsonschema/lib/index.d.ts | 126 - .../node_modules/jsonschema/lib/index.js | 14 - .../node_modules/jsonschema/lib/scan.js | 74 - .../node_modules/jsonschema/lib/validator.js | 320 - .../node_modules/jsonschema/package.json | 111 - .../node_modules/ono/CHANGELOG.md | 74 +- .../node_modules/ono/README.md | 328 +- .../node_modules/ono/cjs/constructor.d.ts | 3 + .../node_modules/ono/cjs/constructor.js | 32 + .../node_modules/ono/cjs/constructor.js.map | 1 + .../node_modules/ono/cjs/extend-error.d.ts | 9 + .../node_modules/ono/cjs/extend-error.js | 74 + .../node_modules/ono/cjs/extend-error.js.map | 1 + .../node_modules/ono/cjs/index.d.ts | 5 + .../node_modules/ono/cjs/index.js | 13 + .../node_modules/ono/cjs/index.js.map | 1 + .../ono/cjs/isomorphic.browser.d.ts | 15 + .../ono/cjs/isomorphic.browser.js | 18 + .../ono/cjs/isomorphic.browser.js.map | 1 + .../node_modules/ono/cjs/isomorphic.node.d.ts | 15 + .../node_modules/ono/cjs/isomorphic.node.js | 45 + .../ono/cjs/isomorphic.node.js.map | 1 + .../node_modules/ono/cjs/normalize.d.ts | 13 + .../node_modules/ono/cjs/normalize.js | 58 + .../node_modules/ono/cjs/normalize.js.map | 1 + .../node_modules/ono/cjs/singleton.d.ts | 3 + .../node_modules/ono/cjs/singleton.js | 36 + .../node_modules/ono/cjs/singleton.js.map | 1 + .../node_modules/ono/cjs/stack.d.ts | 28 + .../node_modules/ono/cjs/stack.js | 101 + .../node_modules/ono/cjs/stack.js.map | 1 + .../node_modules/ono/cjs/to-json.d.ts | 11 + .../node_modules/ono/cjs/to-json.js | 49 + .../node_modules/ono/cjs/to-json.js.map | 1 + .../node_modules/ono/cjs/types.d.ts | 169 + .../node_modules/ono/cjs/types.js | 4 + .../node_modules/ono/cjs/types.js.map | 1 + .../node_modules/ono/dist/ono.js | 353 - .../node_modules/ono/dist/ono.js.map | 17 - .../node_modules/ono/dist/ono.min.js | 11 - .../node_modules/ono/dist/ono.min.js.map | 107 - .../node_modules/ono/esm/constructor.d.ts | 3 + .../node_modules/ono/esm/constructor.js | 30 + .../node_modules/ono/esm/constructor.js.map | 1 + .../node_modules/ono/esm/extend-error.d.ts | 9 + .../node_modules/ono/esm/extend-error.js | 71 + .../node_modules/ono/esm/extend-error.js.map | 1 + .../node_modules/ono/esm/index.d.ts | 5 + .../node_modules/ono/esm/index.js | 10 + .../node_modules/ono/esm/index.js.map | 1 + .../ono/esm/isomorphic.browser.d.ts | 15 + .../ono/esm/isomorphic.browser.js | 16 + .../ono/esm/isomorphic.browser.js.map | 1 + .../node_modules/ono/esm/isomorphic.node.d.ts | 15 + .../node_modules/ono/esm/isomorphic.node.js | 42 + .../ono/esm/isomorphic.node.js.map | 1 + .../node_modules/ono/esm/normalize.d.ts | 13 + .../node_modules/ono/esm/normalize.js | 54 + .../node_modules/ono/esm/normalize.js.map | 1 + .../node_modules/ono/esm/singleton.d.ts | 3 + .../node_modules/ono/esm/singleton.js | 34 + .../node_modules/ono/esm/singleton.js.map | 1 + .../node_modules/ono/esm/stack.d.ts | 28 + .../node_modules/ono/esm/stack.js | 95 + .../node_modules/ono/esm/stack.js.map | 1 + .../node_modules/ono/esm/to-json.d.ts | 11 + .../node_modules/ono/esm/to-json.js | 45 + .../node_modules/ono/esm/to-json.js.map | 1 + .../node_modules/ono/esm/types.d.ts | 169 + .../node_modules/ono/esm/types.js | 2 + .../node_modules/ono/esm/types.js.map | 1 + .../node_modules/ono/lib/ono.d.ts | 86 - .../node_modules/ono/lib/ono.js | 301 - .../node_modules/ono/package.json | 159 +- .../openapi-schema-validation/README.md | 75 - .../openapi-schema-validation/index.js | 29 - .../openapi-schema-validation/package.json | 101 - .../schema/openapi-3.0.json | 1248 - .../test/data-driven.js | 19 - .../data-driven/accept-valid-v2-documents.js | 22 - .../data-driven/accept-valid-v3-documents.js | 180 - .../data-driven/fail-invalid-v2-documents.js | 27 - .../data-driven/fail-invalid-v3-documents.js | 374 - .../LICENSE | 2 +- .../node_modules/openapi-schemas/README.md | 105 + .../openapi-schemas/lib/index.d.ts | 23 + .../node_modules/openapi-schemas/lib/index.js | 30 + .../openapi-schemas/lib/index.js.map | 1 + .../openapi-schemas/lib/json-schema.d.ts | 44 + .../openapi-schemas/lib/json-schema.js | 3 + .../openapi-schemas/lib/json-schema.js.map | 1 + .../node_modules/openapi-schemas/package.json | 101 + .../openapi-schemas/schemas/v1.2/README.md | 5 + .../schemas/v1.2/apiDeclaration.json | 61 + .../schemas/v1.2/authorizationObject.json | 59 + .../schemas/v1.2/dataType.json | 132 + .../schemas/v1.2/dataTypeBase.json | 81 + .../schemas/v1.2/infoObject.json | 16 + .../schemas/v1.2/modelsObject.json | 36 + .../schemas/v1.2/oauth2GrantType.json | 57 + .../schemas/v1.2/operationObject.json | 65 + .../schemas/v1.2/parameterObject.json | 37 + .../schemas/v1.2/resourceListing.json | 16 + .../schemas/v1.2/resourceObject.json | 11 + .../openapi-schemas/schemas/v2.0/README.md | 13 + .../schemas/v2.0}/schema.json | 26 +- .../openapi-schemas/schemas/v3.0/README.md | 16 + .../openapi-schemas/schemas/v3.0/schema.json | 1654 + .../openapi-schemas/schemas/v3.0/schema.yaml | 1003 + .../node_modules/openapi-types/CHANGELOG.md | 34 + .../node_modules/openapi-types/README.md | 50 + .../openapi-types/dist/index.d.ts | 582 + .../node_modules/openapi-types/dist/index.js | 3 + .../openapi-types/dist/index.js.map | 1 + .../node_modules/openapi-types/package.json | 55 + .../node_modules/swagger-methods/README.md | 18 +- .../node_modules/swagger-methods/package.json | 101 +- .../node_modules/swagger-parser/CHANGELOG.md | 30 +- .../node_modules/swagger-parser/README.md | 87 +- .../swagger-parser/dist/swagger-parser.js | 29241 ---------------- .../swagger-parser/dist/swagger-parser.js.map | 499 - .../swagger-parser/dist/swagger-parser.min.js | 27 - .../dist/swagger-parser.min.js.map | 3276 -- .../swagger-parser/lib/index.d.ts | 438 + .../node_modules/swagger-parser/lib/index.js | 185 +- .../swagger-parser/lib/options.js | 8 +- .../node_modules/swagger-parser/lib/util.js | 2 +- .../swagger-parser/lib/validators/schema.js | 39 +- .../swagger-parser/lib/validators/spec.js | 193 +- .../node_modules/swagger-parser/package.json | 155 +- .../swagger-schema-official/README.md | 24 - .../swagger-schema-official/bower.json | 15 - .../swagger-schema-official/package.json | 77 - .../validator/lib/isIdentityCard.js | 61 - .../node_modules/validator/package.json | 132 - .../node_modules/validator/validator.min.js | 23 - .../node_modules/z-schema/README.md | 10 + .../node_modules/z-schema/bin/z-schema | 0 .../z-schema/dist/ZSchema-browser-min.js | 2 +- .../z-schema/dist/ZSchema-browser-min.js.map | 2 +- .../z-schema/dist/ZSchema-browser-test.js | 6393 ++-- .../z-schema/dist/ZSchema-browser.js | 1500 +- .../node_modules}/validator/CHANGELOG.md | 34 + .../node_modules}/validator/LICENSE | 0 .../node_modules}/validator/README.md | 9 +- .../node_modules}/validator/index.js | 13 +- .../node_modules}/validator/lib/alpha.js | 4 +- .../node_modules}/validator/lib/blacklist.js | 0 .../node_modules}/validator/lib/contains.js | 0 .../node_modules}/validator/lib/equals.js | 0 .../node_modules}/validator/lib/escape.js | 0 .../node_modules}/validator/lib/isAfter.js | 0 .../node_modules}/validator/lib/isAlpha.js | 0 .../validator/lib/isAlphanumeric.js | 0 .../node_modules}/validator/lib/isAscii.js | 0 .../node_modules/validator/lib/isBase32.js} | 15 +- .../node_modules}/validator/lib/isBase64.js | 0 .../node_modules}/validator/lib/isBefore.js | 0 .../node_modules}/validator/lib/isBoolean.js | 0 .../validator/lib/isByteLength.js | 0 .../validator/lib/isCreditCard.js | 0 .../node_modules}/validator/lib/isCurrency.js | 0 .../node_modules}/validator/lib/isDataURI.js | 0 .../node_modules}/validator/lib/isDecimal.js | 0 .../validator/lib/isDivisibleBy.js | 0 .../node_modules}/validator/lib/isEmail.js | 74 +- .../node_modules}/validator/lib/isEmpty.js | 0 .../node_modules}/validator/lib/isFQDN.js | 0 .../node_modules}/validator/lib/isFloat.js | 0 .../validator/lib/isFullWidth.js | 0 .../validator/lib/isHalfWidth.js | 0 .../node_modules}/validator/lib/isHash.js | 0 .../node_modules}/validator/lib/isHexColor.js | 0 .../validator/lib/isHexadecimal.js | 0 .../node_modules}/validator/lib/isIP.js | 0 .../node_modules}/validator/lib/isIPRange.js | 0 .../node_modules}/validator/lib/isISBN.js | 0 .../node_modules}/validator/lib/isISIN.js | 0 .../validator/lib/isISO31661Alpha2.js | 0 .../validator/lib/isISO31661Alpha3.js | 0 .../node_modules}/validator/lib/isISO8601.js | 3 +- .../node_modules}/validator/lib/isISRC.js | 0 .../node_modules}/validator/lib/isISSN.js | 0 .../validator/lib/isIdentityCard.js | 127 + .../node_modules}/validator/lib/isIn.js | 2 + .../node_modules}/validator/lib/isInt.js | 0 .../node_modules}/validator/lib/isJSON.js | 0 .../node_modules}/validator/lib/isJWT.js | 0 .../node_modules}/validator/lib/isLatLong.js | 0 .../node_modules}/validator/lib/isLength.js | 0 .../validator/lib/isLowercase.js | 0 .../validator/lib/isMACAddress.js | 0 .../node_modules}/validator/lib/isMD5.js | 0 .../validator/lib/isMagnetURI.js | 0 .../node_modules}/validator/lib/isMimeType.js | 0 .../validator/lib/isMobilePhone.js | 19 +- .../node_modules}/validator/lib/isMongoId.js | 0 .../validator/lib/isMultibyte.js | 0 .../node_modules}/validator/lib/isNumeric.js | 0 .../node_modules}/validator/lib/isPort.js | 0 .../validator/lib/isPostalCode.js | 7 + .../node_modules}/validator/lib/isRFC3339.js | 0 .../validator/lib/isSurrogatePair.js | 0 .../node_modules}/validator/lib/isURL.js | 0 .../node_modules}/validator/lib/isUUID.js | 0 .../validator/lib/isUppercase.js | 0 .../validator/lib/isVariableWidth.js | 0 .../validator/lib/isWhitelisted.js | 0 .../node_modules/validator/lib/ltrim.js | 20 + .../node_modules}/validator/lib/matches.js | 0 .../validator/lib/normalizeEmail.js | 0 .../node_modules}/validator/lib/rtrim.js | 11 +- .../node_modules}/validator/lib/stripLow.js | 0 .../node_modules}/validator/lib/toBoolean.js | 0 .../node_modules}/validator/lib/toDate.js | 0 .../node_modules}/validator/lib/toFloat.js | 0 .../node_modules}/validator/lib/toInt.js | 0 .../node_modules}/validator/lib/trim.js | 0 .../node_modules}/validator/lib/unescape.js | 0 .../validator/lib/util/assertString.js | 0 .../validator/lib/util/includes.js | 0 .../node_modules}/validator/lib/util/merge.js | 0 .../validator/lib/util/toString.js | 0 .../node_modules}/validator/lib/whitelist.js | 0 .../node_modules/validator/package.json | 100 + .../node_modules}/validator/validator.js | 416 +- .../node_modules/validator/validator.min.js | 23 + .../node_modules/z-schema/package.json | 93 +- .../z-schema/src/JsonValidation.js | 74 +- .../node_modules/z-schema/src/Report.js | 11 + .../node_modules/z-schema/src/SchemaCache.js | 27 +- .../node_modules/z-schema/src/Utils.js | 10 +- forward_engineering/package-lock.json | 118 + forward_engineering/package.json | 2 +- 1780 files changed, 12712 insertions(+), 108674 deletions(-) mode change 100644 => 120000 forward_engineering/node_modules/.bin/z-schema delete mode 100644 forward_engineering/node_modules/core-js/CHANGELOG.md delete mode 100644 forward_engineering/node_modules/core-js/Gruntfile.js delete mode 100644 forward_engineering/node_modules/core-js/LICENSE delete mode 100644 forward_engineering/node_modules/core-js/README.md delete mode 100644 forward_engineering/node_modules/core-js/bower.json delete mode 100644 forward_engineering/node_modules/core-js/build/Gruntfile.ls delete mode 100644 forward_engineering/node_modules/core-js/build/build.ls delete mode 100644 forward_engineering/node_modules/core-js/build/config.js delete mode 100644 forward_engineering/node_modules/core-js/build/index.js delete mode 100644 forward_engineering/node_modules/core-js/client/core.js delete mode 100644 forward_engineering/node_modules/core-js/client/core.min.js delete mode 100644 forward_engineering/node_modules/core-js/client/core.min.js.map delete mode 100644 forward_engineering/node_modules/core-js/client/library.js delete mode 100644 forward_engineering/node_modules/core-js/client/library.min.js delete mode 100644 forward_engineering/node_modules/core-js/client/library.min.js.map delete mode 100644 forward_engineering/node_modules/core-js/client/shim.js delete mode 100644 forward_engineering/node_modules/core-js/client/shim.min.js delete mode 100644 forward_engineering/node_modules/core-js/client/shim.min.js.map delete mode 100644 forward_engineering/node_modules/core-js/core/_.js delete mode 100644 forward_engineering/node_modules/core-js/core/delay.js delete mode 100644 forward_engineering/node_modules/core-js/core/dict.js delete mode 100644 forward_engineering/node_modules/core-js/core/function.js delete mode 100644 forward_engineering/node_modules/core-js/core/index.js delete mode 100644 forward_engineering/node_modules/core-js/core/number.js delete mode 100644 forward_engineering/node_modules/core-js/core/object.js delete mode 100644 forward_engineering/node_modules/core-js/core/regexp.js delete mode 100644 forward_engineering/node_modules/core-js/core/string.js delete mode 100644 forward_engineering/node_modules/core-js/es5/index.js delete mode 100644 forward_engineering/node_modules/core-js/es6/array.js delete mode 100644 forward_engineering/node_modules/core-js/es6/date.js delete mode 100644 forward_engineering/node_modules/core-js/es6/function.js delete mode 100644 forward_engineering/node_modules/core-js/es6/index.js delete mode 100644 forward_engineering/node_modules/core-js/es6/map.js delete mode 100644 forward_engineering/node_modules/core-js/es6/math.js delete mode 100644 forward_engineering/node_modules/core-js/es6/number.js delete mode 100644 forward_engineering/node_modules/core-js/es6/object.js delete mode 100644 forward_engineering/node_modules/core-js/es6/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/es6/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/es6/promise.js delete mode 100644 forward_engineering/node_modules/core-js/es6/reflect.js delete mode 100644 forward_engineering/node_modules/core-js/es6/regexp.js delete mode 100644 forward_engineering/node_modules/core-js/es6/set.js delete mode 100644 forward_engineering/node_modules/core-js/es6/string.js delete mode 100644 forward_engineering/node_modules/core-js/es6/symbol.js delete mode 100644 forward_engineering/node_modules/core-js/es6/typed.js delete mode 100644 forward_engineering/node_modules/core-js/es6/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/es6/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/es7/array.js delete mode 100644 forward_engineering/node_modules/core-js/es7/asap.js delete mode 100644 forward_engineering/node_modules/core-js/es7/error.js delete mode 100644 forward_engineering/node_modules/core-js/es7/global.js delete mode 100644 forward_engineering/node_modules/core-js/es7/index.js delete mode 100644 forward_engineering/node_modules/core-js/es7/map.js delete mode 100644 forward_engineering/node_modules/core-js/es7/math.js delete mode 100644 forward_engineering/node_modules/core-js/es7/object.js delete mode 100644 forward_engineering/node_modules/core-js/es7/observable.js delete mode 100644 forward_engineering/node_modules/core-js/es7/promise.js delete mode 100644 forward_engineering/node_modules/core-js/es7/reflect.js delete mode 100644 forward_engineering/node_modules/core-js/es7/set.js delete mode 100644 forward_engineering/node_modules/core-js/es7/string.js delete mode 100644 forward_engineering/node_modules/core-js/es7/symbol.js delete mode 100644 forward_engineering/node_modules/core-js/es7/system.js delete mode 100644 forward_engineering/node_modules/core-js/es7/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/es7/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/fn/_.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/concat.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/entries.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/every.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/fill.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/filter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/find-index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/find.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/flatten.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/for-each.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/from.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/includes.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/index-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/is-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/join.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/pop.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/push.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/reduce.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/reverse.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/shift.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/slice.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/some.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/sort.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/splice.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/unshift.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/values.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/entries.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/every.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/fill.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/filter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/find-index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/find.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/flatten.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/for-each.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/includes.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/index-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/join.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/reduce.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/slice.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/some.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/sort.js delete mode 100644 forward_engineering/node_modules/core-js/fn/array/virtual/values.js delete mode 100644 forward_engineering/node_modules/core-js/fn/asap.js delete mode 100644 forward_engineering/node_modules/core-js/fn/clear-immediate.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/now.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/to-json.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/fn/date/to-string.js delete mode 100644 forward_engineering/node_modules/core-js/fn/delay.js delete mode 100644 forward_engineering/node_modules/core-js/fn/dict.js delete mode 100644 forward_engineering/node_modules/core-js/fn/dom-collections/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/dom-collections/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/error/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/error/is-error.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/bind.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/name.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/part.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/virtual/bind.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/function/virtual/part.js delete mode 100644 forward_engineering/node_modules/core-js/fn/get-iterator-method.js delete mode 100644 forward_engineering/node_modules/core-js/fn/get-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/global.js delete mode 100644 forward_engineering/node_modules/core-js/fn/is-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/fn/json/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/json/stringify.js delete mode 100644 forward_engineering/node_modules/core-js/fn/map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/map/from.js delete mode 100644 forward_engineering/node_modules/core-js/fn/map/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/map/of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/acosh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/asinh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/atanh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/cbrt.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/clamp.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/clz32.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/cosh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/deg-per-rad.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/degrees.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/expm1.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/fround.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/fscale.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/hypot.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/iaddh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/imul.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/imulh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/isubh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/log10.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/log1p.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/log2.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/rad-per-deg.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/radians.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/scale.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/sign.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/signbit.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/sinh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/tanh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/trunc.js delete mode 100644 forward_engineering/node_modules/core-js/fn/math/umulh.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/constructor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/epsilon.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/is-finite.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/is-nan.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/is-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/max-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/min-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/virtual/to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/fn/number/virtual/to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/assign.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/classof.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/create.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/define-getter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/define-properties.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/define-property.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/define-setter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/define.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/entries.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/freeze.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/get-own-property-descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/get-own-property-names.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/get-own-property-symbols.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/is-frozen.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/is-object.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/is-sealed.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/is.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/lookup-getter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/lookup-setter.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/make.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/seal.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/object/values.js delete mode 100644 forward_engineering/node_modules/core-js/fn/observable.js delete mode 100644 forward_engineering/node_modules/core-js/fn/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/fn/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/fn/promise.js delete mode 100644 forward_engineering/node_modules/core-js/fn/promise/finally.js delete mode 100644 forward_engineering/node_modules/core-js/fn/promise/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/promise/try.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/apply.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/construct.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/define-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/define-property.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/delete-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/delete-property.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/enumerate.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-own-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/get.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/has-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/has-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/has.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/metadata.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/reflect/set.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/constructor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/escape.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/flags.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/match.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/replace.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/search.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/split.js delete mode 100644 forward_engineering/node_modules/core-js/fn/regexp/to-string.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set-immediate.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set-interval.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set-timeout.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set/from.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/set/of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/anchor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/at.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/big.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/blink.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/bold.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/fixed.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/from-code-point.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/includes.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/italics.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/link.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/match-all.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/raw.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/repeat.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/small.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/strike.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/sub.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/sup.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/trim-end.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/trim-start.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/trim.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/anchor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/at.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/big.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/blink.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/bold.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/fixed.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/includes.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/italics.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/link.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/match-all.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/repeat.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/small.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/strike.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/sub.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/sup.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/trim-end.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/trim-start.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/trim.js delete mode 100644 forward_engineering/node_modules/core-js/fn/string/virtual/unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/async-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/for.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/is-concat-spreadable.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/key-for.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/match.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/observable.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/replace.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/search.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/species.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/split.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/to-string-tag.js delete mode 100644 forward_engineering/node_modules/core-js/fn/symbol/unscopables.js delete mode 100644 forward_engineering/node_modules/core-js/fn/system/global.js delete mode 100644 forward_engineering/node_modules/core-js/fn/system/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/array-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/data-view.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/float32-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/float64-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/int16-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/int32-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/int8-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/uint16-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/uint32-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/uint8-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/typed/uint8-clamped-array.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-map/from.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-map/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-map/of.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-set/from.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-set/index.js delete mode 100644 forward_engineering/node_modules/core-js/fn/weak-set/of.js delete mode 100644 forward_engineering/node_modules/core-js/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/_.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/delay.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/dict.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/function.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/number.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/object.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/regexp.js delete mode 100644 forward_engineering/node_modules/core-js/library/core/string.js delete mode 100644 forward_engineering/node_modules/core-js/library/es5/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/array.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/date.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/function.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/map.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/math.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/number.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/object.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/promise.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/reflect.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/regexp.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/set.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/string.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/symbol.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/typed.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/es6/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/array.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/asap.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/error.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/global.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/map.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/math.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/object.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/observable.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/promise.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/reflect.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/set.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/string.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/symbol.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/system.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/es7/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/_.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/concat.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/entries.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/every.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/fill.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/filter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/find-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/find.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/flatten.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/for-each.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/from.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/is-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/join.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/pop.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/push.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/reduce.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/reverse.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/shift.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/slice.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/some.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/sort.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/splice.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/unshift.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/values.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/entries.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/every.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/fill.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/filter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/find-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/find.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/flatten.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/for-each.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/join.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/reduce.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/slice.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/some.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/sort.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/array/virtual/values.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/asap.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/clear-immediate.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/now.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/to-json.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/date/to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/delay.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/dict.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/dom-collections/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/dom-collections/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/error/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/error/is-error.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/bind.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/name.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/part.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/virtual/bind.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/function/virtual/part.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/get-iterator-method.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/get-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/global.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/is-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/json/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/json/stringify.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/map/from.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/map/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/map/of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/acosh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/asinh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/atanh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/cbrt.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/clamp.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/clz32.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/cosh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/deg-per-rad.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/degrees.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/expm1.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/fround.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/fscale.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/hypot.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/iaddh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/imul.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/imulh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/isubh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/log10.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/log1p.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/log2.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/rad-per-deg.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/radians.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/scale.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/sign.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/signbit.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/sinh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/tanh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/trunc.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/math/umulh.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/epsilon.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/is-finite.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/is-nan.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/is-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/max-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/min-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/virtual/to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/number/virtual/to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/assign.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/classof.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/create.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/define-getter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/define-properties.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/define-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/define-setter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/define.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/entries.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/freeze.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/get-own-property-descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/get-own-property-names.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/get-own-property-symbols.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/is-frozen.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/is-object.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/is-sealed.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/is.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/lookup-getter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/lookup-setter.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/make.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/seal.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/object/values.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/observable.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/promise.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/promise/finally.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/promise/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/promise/try.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/apply.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/construct.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/define-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/define-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/delete-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/delete-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/enumerate.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-own-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/get.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/has-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/has-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/has.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/reflect/set.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/escape.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/flags.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/match.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/replace.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/search.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/split.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/regexp/to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set-immediate.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set-interval.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set-timeout.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set/from.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/set/of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/anchor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/at.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/big.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/blink.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/bold.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/from-code-point.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/italics.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/link.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/match-all.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/raw.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/repeat.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/small.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/strike.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/sub.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/sup.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/trim-end.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/trim-start.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/trim.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/anchor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/at.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/big.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/blink.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/bold.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/italics.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/link.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/match-all.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/repeat.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/small.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/strike.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/sub.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/sup.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/trim-end.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/trim-start.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/trim.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/string/virtual/unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/async-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/for.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/is-concat-spreadable.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/key-for.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/match.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/observable.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/replace.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/search.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/species.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/split.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/to-string-tag.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/symbol/unscopables.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/system/global.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/system/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/array-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/data-view.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/float32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/float64-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/int16-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/int32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/int8-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/uint16-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/uint32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/uint8-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/typed/uint8-clamped-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-map/from.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-map/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-map/of.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-set/from.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-set/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/fn/weak-set/of.js delete mode 100644 forward_engineering/node_modules/core-js/library/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_a-function.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_a-number-value.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_add-to-unscopables.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_advance-string-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_an-instance.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_an-object.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-fill.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-from-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-methods.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-reduce.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-species-constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_array-species-create.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_bind.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_classof.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_cof.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_collection-strong.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_collection-to-json.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_collection-weak.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_collection.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_core.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_create-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_ctx.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_date-to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_date-to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_defined.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_dom-create.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_entry-virtual.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_enum-bug-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_enum-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_export.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_fails-is-regexp.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_fails.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_fix-re-wks.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_flags.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_flatten-into-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_for-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_function-to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_global.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_has.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_hide.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_html.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_ie8-dom-define.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_inherit-if-required.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_invoke.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iobject.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_is-array-iter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_is-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_is-object.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_is-regexp.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iter-call.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iter-create.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iter-define.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iter-detect.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iter-step.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_iterators.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_keyof.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_library.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_math-expm1.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_math-fround.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_math-log1p.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_math-scale.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_math-sign.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_meta.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_microtask.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_native-weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_new-promise-capability.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-assign.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-create.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-define.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-dp.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-dps.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-forced-pam.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-gopd.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-gopn-ext.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-gopn.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-gops.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-gpo.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-keys-internal.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-pie.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-sap.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_object-to-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_partial.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_path.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_perform.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_promise-resolve.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_property-desc.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_redefine-all.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_redefine.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_regexp-exec-abstract.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_regexp-exec.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_replacer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_same-value.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_set-collection-from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_set-collection-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_set-proto.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_set-species.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_set-to-string-tag.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_shared-key.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_shared.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_species-constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_strict-method.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-at.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-context.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-pad.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-repeat.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-trim.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_string-ws.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_task.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-absolute-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-iobject.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-length.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-object.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_typed-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_typed-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_typed.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_uid.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_user-agent.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_validate-collection.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_wks-define.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_wks-ext.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/_wks.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.delay.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.dict.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.function.part.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.get-iterator-method.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.get-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.is-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.number.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.object.classof.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.object.define.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.object.is-object.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.object.make.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.regexp.escape.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.string.escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/core.string.unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es5.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.every.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.fill.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.filter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.find-index.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.find.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.for-each.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.is-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.join.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.map.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.reduce.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.slice.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.some.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.sort.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.array.species.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.date.now.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.date.to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.date.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.date.to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.date.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.function.bind.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.function.has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.function.name.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.map.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.acosh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.asinh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.atanh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.cbrt.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.clz32.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.cosh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.expm1.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.fround.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.hypot.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.imul.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.log10.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.log1p.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.log2.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.sign.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.sinh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.tanh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.math.trunc.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.epsilon.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.is-finite.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.is-nan.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.is-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.max-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.min-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.number.to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.assign.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.create.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.define-properties.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.define-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.freeze.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-names.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.is-frozen.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.is-sealed.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.is.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.seal.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.object.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.promise.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.apply.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.construct.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.define-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.delete-property.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.enumerate.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.get.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.has.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.reflect.set.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.exec.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.flags.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.match.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.replace.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.search.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.split.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.regexp.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.set.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.anchor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.big.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.blink.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.bold.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.fixed.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.from-code-point.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.italics.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.link.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.raw.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.repeat.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.small.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.strike.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.sub.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.sup.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.string.trim.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.symbol.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.array-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.data-view.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.float32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.float64-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.int16-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.int32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.int8-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.uint16-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.uint32-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es6.weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.array.flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.array.flatten.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.array.includes.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.asap.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.error.is-error.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.global.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.map.from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.map.of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.map.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.clamp.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.deg-per-rad.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.degrees.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.fscale.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.iaddh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.imulh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.isubh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.rad-per-deg.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.radians.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.scale.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.signbit.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.math.umulh.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.define-getter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.define-setter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.entries.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-getter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-setter.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.object.values.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.observable.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.promise.finally.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.promise.try.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.define-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.delete-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.reflect.metadata.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.set.from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.set.of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.set.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.at.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.match-all.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.string.trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.symbol.async-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.symbol.observable.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.system.global.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.weak-map.from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.weak-map.of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.weak-set.from.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/es7.weak-set.of.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/web.dom.iterable.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/web.immediate.js delete mode 100644 forward_engineering/node_modules/core-js/library/modules/web.timers.js delete mode 100644 forward_engineering/node_modules/core-js/library/shim.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/0.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/1.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/2.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/3.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/4.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/stage/pre.js delete mode 100644 forward_engineering/node_modules/core-js/library/web/dom-collections.js delete mode 100644 forward_engineering/node_modules/core-js/library/web/immediate.js delete mode 100644 forward_engineering/node_modules/core-js/library/web/index.js delete mode 100644 forward_engineering/node_modules/core-js/library/web/timers.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_a-function.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_a-number-value.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_add-to-unscopables.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_advance-string-index.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_an-instance.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_an-object.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-fill.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-from-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-includes.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-methods.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-reduce.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-species-constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_array-species-create.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_bind.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_classof.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_cof.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_collection-strong.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_collection-to-json.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_collection-weak.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_collection.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_core.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_create-property.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_ctx.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_date-to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_date-to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_defined.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_dom-create.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_entry-virtual.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_enum-bug-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_enum-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_export.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_fails-is-regexp.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_fails.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_fix-re-wks.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_flags.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_flatten-into-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_for-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_function-to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_global.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_has.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_hide.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_html.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_ie8-dom-define.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_inherit-if-required.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_invoke.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iobject.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_is-array-iter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_is-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_is-object.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_is-regexp.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iter-call.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iter-create.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iter-define.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iter-detect.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iter-step.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_iterators.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_keyof.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_library.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_math-expm1.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_math-fround.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_math-log1p.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_math-scale.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_math-sign.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_meta.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_microtask.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_native-weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_new-promise-capability.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-assign.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-create.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-define.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-dp.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-dps.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-forced-pam.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-gopd.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-gopn-ext.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-gopn.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-gops.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-gpo.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-keys-internal.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-pie.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-sap.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_object-to-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_partial.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_path.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_perform.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_promise-resolve.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_property-desc.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_redefine-all.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_redefine.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_regexp-exec-abstract.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_regexp-exec.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_replacer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_same-value.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_set-collection-from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_set-collection-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_set-proto.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_set-species.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_set-to-string-tag.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_shared-key.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_shared.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_species-constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_strict-method.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-at.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-context.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-html.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-pad.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-repeat.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-trim.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_string-ws.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_task.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-absolute-index.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-index.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-iobject.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-length.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-object.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_typed-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_typed-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_typed.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_uid.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_user-agent.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_validate-collection.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_wks-define.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_wks-ext.js delete mode 100644 forward_engineering/node_modules/core-js/modules/_wks.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.delay.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.dict.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.function.part.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.get-iterator-method.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.get-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.is-iterable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.number.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.object.classof.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.object.define.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.object.is-object.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.object.make.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.regexp.escape.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.string.escape-html.js delete mode 100644 forward_engineering/node_modules/core-js/modules/core.string.unescape-html.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es5.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.copy-within.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.every.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.fill.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.filter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.find-index.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.find.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.for-each.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.index-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.is-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.join.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.last-index-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.map.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.reduce-right.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.reduce.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.slice.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.some.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.sort.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.array.species.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.date.now.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.date.to-iso-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.date.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.date.to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.date.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.function.bind.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.function.has-instance.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.function.name.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.map.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.acosh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.asinh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.atanh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.cbrt.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.clz32.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.cosh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.expm1.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.fround.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.hypot.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.imul.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.log10.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.log1p.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.log2.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.sign.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.sinh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.tanh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.math.trunc.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.epsilon.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.is-finite.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.is-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.is-nan.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.is-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.max-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.min-safe-integer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.to-fixed.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.number.to-precision.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.assign.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.create.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.define-properties.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.define-property.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.freeze.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-names.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.is-frozen.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.is-sealed.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.is.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.seal.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.object.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.parse-float.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.parse-int.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.promise.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.apply.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.construct.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.define-property.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.delete-property.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.enumerate.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.get-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.get.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.has.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.is-extensible.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.own-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.prevent-extensions.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.set-prototype-of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.reflect.set.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.exec.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.flags.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.match.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.replace.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.search.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.split.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.regexp.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.set.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.anchor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.big.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.blink.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.bold.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.code-point-at.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.ends-with.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.fixed.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.fontcolor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.fontsize.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.from-code-point.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.includes.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.italics.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.iterator.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.link.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.raw.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.repeat.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.small.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.starts-with.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.strike.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.sub.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.sup.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.string.trim.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.symbol.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.array-buffer.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.data-view.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.float32-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.float64-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.int16-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.int32-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.int8-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.uint16-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.uint32-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.uint8-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.weak-map.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es6.weak-set.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.array.flat-map.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.array.flatten.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.array.includes.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.asap.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.error.is-error.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.global.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.map.from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.map.of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.map.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.clamp.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.deg-per-rad.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.degrees.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.fscale.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.iaddh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.imulh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.isubh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.rad-per-deg.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.radians.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.scale.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.signbit.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.math.umulh.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.define-getter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.define-setter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.entries.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.lookup-getter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.lookup-setter.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.object.values.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.observable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.promise.finally.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.promise.try.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.define-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.delete-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.has-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.has-own-metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.reflect.metadata.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.set.from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.set.of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.set.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.at.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.match-all.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.pad-end.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.pad-start.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.trim-left.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.string.trim-right.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.symbol.async-iterator.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.symbol.observable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.system.global.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.weak-map.from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.weak-map.of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.weak-set.from.js delete mode 100644 forward_engineering/node_modules/core-js/modules/es7.weak-set.of.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_add-to-unscopables.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_collection.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_export.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_library.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_path.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_redefine-all.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_redefine.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_regexp-exec-abstract.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_regexp-exec.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/_set-species.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.date.to-json.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.date.to-primitive.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.date.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.function.name.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.number.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.object.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.constructor.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.exec.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.flags.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.match.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.replace.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.search.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.split.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/es6.regexp.to-string.js delete mode 100644 forward_engineering/node_modules/core-js/modules/library/web.dom.iterable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/web.dom.iterable.js delete mode 100644 forward_engineering/node_modules/core-js/modules/web.immediate.js delete mode 100644 forward_engineering/node_modules/core-js/modules/web.timers.js delete mode 100644 forward_engineering/node_modules/core-js/package.json delete mode 100644 forward_engineering/node_modules/core-js/scripts/postinstall.js delete mode 100644 forward_engineering/node_modules/core-js/shim.js delete mode 100644 forward_engineering/node_modules/core-js/stage/0.js delete mode 100644 forward_engineering/node_modules/core-js/stage/1.js delete mode 100644 forward_engineering/node_modules/core-js/stage/2.js delete mode 100644 forward_engineering/node_modules/core-js/stage/3.js delete mode 100644 forward_engineering/node_modules/core-js/stage/4.js delete mode 100644 forward_engineering/node_modules/core-js/stage/index.js delete mode 100644 forward_engineering/node_modules/core-js/stage/pre.js delete mode 100644 forward_engineering/node_modules/core-js/web/dom-collections.js delete mode 100644 forward_engineering/node_modules/core-js/web/immediate.js delete mode 100644 forward_engineering/node_modules/core-js/web/index.js delete mode 100644 forward_engineering/node_modules/core-js/web/timers.js delete mode 100644 forward_engineering/node_modules/format-util/.jscsrc delete mode 100644 forward_engineering/node_modules/format-util/.jshintignore delete mode 100644 forward_engineering/node_modules/format-util/.jshintrc delete mode 100644 forward_engineering/node_modules/format-util/.npmignore delete mode 100644 forward_engineering/node_modules/format-util/.travis.yml delete mode 100644 forward_engineering/node_modules/format-util/LICENSE delete mode 100644 forward_engineering/node_modules/format-util/README.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/developer.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/install.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/introduction.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/license.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/links.md delete mode 100644 forward_engineering/node_modules/format-util/doc/readme/usage.md delete mode 100644 forward_engineering/node_modules/format-util/format.js delete mode 100644 forward_engineering/node_modules/format-util/index.js delete mode 100644 forward_engineering/node_modules/format-util/package.json delete mode 100644 forward_engineering/node_modules/format-util/test/index.html delete mode 100644 forward_engineering/node_modules/format-util/test/index.js delete mode 100644 forward_engineering/node_modules/format-util/test/mocha.opts delete mode 100644 forward_engineering/node_modules/format-util/test/spec/format.js delete mode 100644 forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js delete mode 100644 forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js.map delete mode 100644 forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.min.js delete mode 100644 forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.min.js.map delete mode 100644 forward_engineering/node_modules/jsonschema-draft4/.npmignore delete mode 100644 forward_engineering/node_modules/jsonschema-draft4/README.md delete mode 100644 forward_engineering/node_modules/jsonschema-draft4/package.json delete mode 100644 forward_engineering/node_modules/jsonschema-draft4/schema.json delete mode 100644 forward_engineering/node_modules/jsonschema/.editorconfig delete mode 100644 forward_engineering/node_modules/jsonschema/LICENSE delete mode 100644 forward_engineering/node_modules/jsonschema/README.md delete mode 100644 forward_engineering/node_modules/jsonschema/lib/attribute.js delete mode 100644 forward_engineering/node_modules/jsonschema/lib/helpers.js delete mode 100644 forward_engineering/node_modules/jsonschema/lib/index.d.ts delete mode 100644 forward_engineering/node_modules/jsonschema/lib/index.js delete mode 100644 forward_engineering/node_modules/jsonschema/lib/scan.js delete mode 100644 forward_engineering/node_modules/jsonschema/lib/validator.js delete mode 100644 forward_engineering/node_modules/jsonschema/package.json create mode 100644 forward_engineering/node_modules/ono/cjs/constructor.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/constructor.js create mode 100644 forward_engineering/node_modules/ono/cjs/constructor.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/extend-error.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/extend-error.js create mode 100644 forward_engineering/node_modules/ono/cjs/extend-error.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/index.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/index.js create mode 100644 forward_engineering/node_modules/ono/cjs/index.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.browser.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.browser.js create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.browser.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.node.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.node.js create mode 100644 forward_engineering/node_modules/ono/cjs/isomorphic.node.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/normalize.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/normalize.js create mode 100644 forward_engineering/node_modules/ono/cjs/normalize.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/singleton.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/singleton.js create mode 100644 forward_engineering/node_modules/ono/cjs/singleton.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/stack.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/stack.js create mode 100644 forward_engineering/node_modules/ono/cjs/stack.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/to-json.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/to-json.js create mode 100644 forward_engineering/node_modules/ono/cjs/to-json.js.map create mode 100644 forward_engineering/node_modules/ono/cjs/types.d.ts create mode 100644 forward_engineering/node_modules/ono/cjs/types.js create mode 100644 forward_engineering/node_modules/ono/cjs/types.js.map delete mode 100644 forward_engineering/node_modules/ono/dist/ono.js delete mode 100644 forward_engineering/node_modules/ono/dist/ono.js.map delete mode 100644 forward_engineering/node_modules/ono/dist/ono.min.js delete mode 100644 forward_engineering/node_modules/ono/dist/ono.min.js.map create mode 100644 forward_engineering/node_modules/ono/esm/constructor.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/constructor.js create mode 100644 forward_engineering/node_modules/ono/esm/constructor.js.map create mode 100644 forward_engineering/node_modules/ono/esm/extend-error.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/extend-error.js create mode 100644 forward_engineering/node_modules/ono/esm/extend-error.js.map create mode 100644 forward_engineering/node_modules/ono/esm/index.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/index.js create mode 100644 forward_engineering/node_modules/ono/esm/index.js.map create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.browser.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.browser.js create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.browser.js.map create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.node.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.node.js create mode 100644 forward_engineering/node_modules/ono/esm/isomorphic.node.js.map create mode 100644 forward_engineering/node_modules/ono/esm/normalize.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/normalize.js create mode 100644 forward_engineering/node_modules/ono/esm/normalize.js.map create mode 100644 forward_engineering/node_modules/ono/esm/singleton.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/singleton.js create mode 100644 forward_engineering/node_modules/ono/esm/singleton.js.map create mode 100644 forward_engineering/node_modules/ono/esm/stack.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/stack.js create mode 100644 forward_engineering/node_modules/ono/esm/stack.js.map create mode 100644 forward_engineering/node_modules/ono/esm/to-json.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/to-json.js create mode 100644 forward_engineering/node_modules/ono/esm/to-json.js.map create mode 100644 forward_engineering/node_modules/ono/esm/types.d.ts create mode 100644 forward_engineering/node_modules/ono/esm/types.js create mode 100644 forward_engineering/node_modules/ono/esm/types.js.map delete mode 100644 forward_engineering/node_modules/ono/lib/ono.d.ts delete mode 100644 forward_engineering/node_modules/ono/lib/ono.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/README.md delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/index.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/package.json delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/schema/openapi-3.0.json delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/test/data-driven.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v2-documents.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v3-documents.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v2-documents.js delete mode 100644 forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v3-documents.js rename forward_engineering/node_modules/{openapi-schema-validation => openapi-schemas}/LICENSE (96%) create mode 100644 forward_engineering/node_modules/openapi-schemas/README.md create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/index.d.ts create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/index.js create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/index.js.map create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/json-schema.d.ts create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/json-schema.js create mode 100644 forward_engineering/node_modules/openapi-schemas/lib/json-schema.js.map create mode 100644 forward_engineering/node_modules/openapi-schemas/package.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/README.md create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/apiDeclaration.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/authorizationObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataType.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataTypeBase.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/infoObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/modelsObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/oauth2GrantType.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/operationObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/parameterObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceListing.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceObject.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v2.0/README.md rename forward_engineering/node_modules/{swagger-schema-official => openapi-schemas/schemas/v2.0}/schema.json (99%) create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v3.0/README.md create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.json create mode 100644 forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.yaml create mode 100644 forward_engineering/node_modules/openapi-types/CHANGELOG.md create mode 100644 forward_engineering/node_modules/openapi-types/README.md create mode 100644 forward_engineering/node_modules/openapi-types/dist/index.d.ts create mode 100644 forward_engineering/node_modules/openapi-types/dist/index.js create mode 100644 forward_engineering/node_modules/openapi-types/dist/index.js.map create mode 100644 forward_engineering/node_modules/openapi-types/package.json delete mode 100644 forward_engineering/node_modules/swagger-parser/dist/swagger-parser.js delete mode 100644 forward_engineering/node_modules/swagger-parser/dist/swagger-parser.js.map delete mode 100644 forward_engineering/node_modules/swagger-parser/dist/swagger-parser.min.js delete mode 100644 forward_engineering/node_modules/swagger-parser/dist/swagger-parser.min.js.map create mode 100644 forward_engineering/node_modules/swagger-parser/lib/index.d.ts delete mode 100644 forward_engineering/node_modules/swagger-schema-official/README.md delete mode 100644 forward_engineering/node_modules/swagger-schema-official/bower.json delete mode 100644 forward_engineering/node_modules/swagger-schema-official/package.json delete mode 100644 forward_engineering/node_modules/validator/lib/isIdentityCard.js delete mode 100644 forward_engineering/node_modules/validator/package.json delete mode 100644 forward_engineering/node_modules/validator/validator.min.js mode change 100644 => 100755 forward_engineering/node_modules/z-schema/bin/z-schema rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/CHANGELOG.md (92%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/LICENSE (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/README.md (93%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/index.js (97%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/alpha.js (94%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/blacklist.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/contains.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/equals.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/escape.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isAfter.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isAlpha.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isAlphanumeric.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isAscii.js (100%) rename forward_engineering/node_modules/{validator/lib/ltrim.js => z-schema/node_modules/validator/lib/isBase32.js} (64%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isBase64.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isBefore.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isBoolean.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isByteLength.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isCreditCard.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isCurrency.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isDataURI.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isDecimal.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isDivisibleBy.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isEmail.js (57%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isEmpty.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isFQDN.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isFloat.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isFullWidth.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isHalfWidth.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isHash.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isHexColor.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isHexadecimal.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isIP.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isIPRange.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISBN.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISIN.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISO31661Alpha2.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISO31661Alpha3.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISO8601.js (94%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISRC.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isISSN.js (100%) create mode 100644 forward_engineering/node_modules/z-schema/node_modules/validator/lib/isIdentityCard.js rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isIn.js (89%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isInt.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isJSON.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isJWT.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isLatLong.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isLength.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isLowercase.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMACAddress.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMD5.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMagnetURI.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMimeType.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMobilePhone.js (86%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMongoId.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isMultibyte.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isNumeric.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isPort.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isPostalCode.js (87%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isRFC3339.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isSurrogatePair.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isURL.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isUUID.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isUppercase.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isVariableWidth.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/isWhitelisted.js (100%) create mode 100644 forward_engineering/node_modules/z-schema/node_modules/validator/lib/ltrim.js rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/matches.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/normalizeEmail.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/rtrim.js (58%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/stripLow.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/toBoolean.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/toDate.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/toFloat.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/toInt.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/trim.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/unescape.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/util/assertString.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/util/includes.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/util/merge.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/util/toString.js (100%) rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/lib/whitelist.js (100%) create mode 100644 forward_engineering/node_modules/z-schema/node_modules/validator/package.json rename forward_engineering/node_modules/{ => z-schema/node_modules}/validator/validator.js (89%) create mode 100644 forward_engineering/node_modules/z-schema/node_modules/validator/validator.min.js create mode 100644 forward_engineering/package-lock.json diff --git a/forward_engineering/node_modules/.bin/z-schema b/forward_engineering/node_modules/.bin/z-schema deleted file mode 100644 index baf4d4b..0000000 --- a/forward_engineering/node_modules/.bin/z-schema +++ /dev/null @@ -1 +0,0 @@ -../z-schema/bin/z-schema \ No newline at end of file diff --git a/forward_engineering/node_modules/.bin/z-schema b/forward_engineering/node_modules/.bin/z-schema new file mode 120000 index 0000000..baf4d4b --- /dev/null +++ b/forward_engineering/node_modules/.bin/z-schema @@ -0,0 +1 @@ +../z-schema/bin/z-schema \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/CHANGELOG.md b/forward_engineering/node_modules/core-js/CHANGELOG.md deleted file mode 100644 index a46f462..0000000 --- a/forward_engineering/node_modules/core-js/CHANGELOG.md +++ /dev/null @@ -1,699 +0,0 @@ -## Changelog -##### 2.6.9 [LEGACY] - 2019.05.27 -- Some fixes and improvements of the `postinstall` script like support `npm` color config ([#556](https://github.com/zloirock/core-js/issues/556)) or adding support of `ADBLOCK` env variable - -##### 2.6.8 [LEGACY] - 2019.05.22 -- Added a workaround of a strange `npx` bug on `postinstall`, [#551](https://github.com/zloirock/core-js/issues/551) - -##### 2.6.7 [LEGACY] - 2019.05.21 -- Added one more workaround of alternative not completely correct `Symbol` polyfills, [#550](https://github.com/zloirock/core-js/issues/550), [#554](https://github.com/zloirock/core-js/issues/554) - -##### 2.6.6 [LEGACY] - 2019.05.20 -- Fixed IE8- non-enumerable properties support in `Object.{ assign, entries, values }`, [#541](https://github.com/zloirock/core-js/issues/541) -- Fixed support of primitives in `Object.getOwnPropertySymbols` in Chrome 38 / 39, [#539](https://github.com/zloirock/core-js/issues/539) -- Show a message on `postinstall` - -##### 2.6.5 - 2019.02.15 -- Fixed buggy `String#padStart` and `String#padEnd` mobile Safari implementations, [#414](https://github.com/zloirock/core-js/issues/414). - -##### 2.6.4 - 2019.02.07 -- Added a workaround against crushing an old IE11.0.9600.16384 build, [#485](https://github.com/zloirock/core-js/issues/485). - -##### 2.6.3 - 2019.01.22 -- Added a workaround for `babel-minify` bug, [#479](https://github.com/zloirock/core-js/issues/479) - -##### 2.6.2 - 2019.01.10 -- Fixed handling of `$` in `String#replace`, [#471](https://github.com/zloirock/core-js/issues/471) - -##### 2.6.1 - 2018.12.18 -- Fixed an issue with minified version, [#463](https://github.com/zloirock/core-js/issues/463) - -##### 2.6.0 - 2018.12.05 -- Add direct .exec calling to `RegExp#{@@replace, @@split, @@match, @@search}`. Also, added fixes for `RegExp#exec` method. [#411](https://github.com/zloirock/core-js/issues/411), [#428](https://github.com/zloirock/core-js/issues/428), [#434](https://github.com/zloirock/core-js/issues/434), [#435](https://github.com/zloirock/core-js/issues/435), [#453](https://github.com/zloirock/core-js/issues/453), [#458](https://github.com/zloirock/core-js/issues/458), thanks [**@nicolo-ribaudo**](https://github.com/nicolo-ribaudo). - -##### 2.5.7 - 2018.05.26 -- Get rid of reserved variable name `final`, related [#400](https://github.com/zloirock/core-js/issues/400) - -##### 2.5.6 - 2018.05.07 -- Forced replace native `Promise` in V8 6.6 (Node 10 and Chrome 66) because of [a bug with resolving custom thenables](https://bugs.chromium.org/p/chromium/issues/detail?id=830565) -- Added a workaround for usage buggy native LG WebOS 2 `Promise` in microtask implementation, [#396](https://github.com/zloirock/core-js/issues/396) -- Added modern version internal debugging information about used versions - -##### 2.5.5 - 2018.04.08 -- Fix some edge cases of `Reflect.set`, [#392](https://github.com/zloirock/core-js/issues/392) and [#393](https://github.com/zloirock/core-js/issues/393) - -##### 2.5.4 - 2018.03.27 -- Fixed one case of deoptimization built-in iterators in V8, related [#377](https://github.com/zloirock/core-js/issues/377) -- Fixed some cases of iterators feature detection, [#368](https://github.com/zloirock/core-js/issues/368) -- Fixed manually entered NodeJS domains issue in `Promise`, [#367](https://github.com/zloirock/core-js/issues/367) -- Fixed `Number.{parseInt, parseFloat}` entry points -- Fixed `__(define|lookup)[GS]etter__` import in the `library` version - -##### 2.5.3 - 2017.12.12 -- Fixed calling `onunhandledrejectionhandler` multiple times for one `Promise` chain, [#318](https://github.com/zloirock/core-js/issues/318) -- Forced replacement of `String#{padStart, padEnd}` in Safari 10 because of [a bug](https://bugs.webkit.org/show_bug.cgi?id=161944), [#280](https://github.com/zloirock/core-js/issues/280) -- Fixed `Array#@@iterator` in a very rare version of `WebKit`, [#236](https://github.com/zloirock/core-js/issues/236) and [#237](https://github.com/zloirock/core-js/issues/237) -- One more [#345](https://github.com/zloirock/core-js/issues/345)-related fix - -##### 2.5.2 - 2017.12.09 -- `MutationObserver` no longer used for microtask implementation in iOS Safari because of bug with scrolling, [#339](https://github.com/zloirock/core-js/issues/339) -- Fixed `JSON.stringify(undefined, replacer)` case in the wrapper from the `Symbol` polyfill, [#345](https://github.com/zloirock/core-js/issues/345) -- `Array()` calls changed to `new Array()` for V8 optimisation - -##### 2.5.1 - 2017.09.01 -- Updated `Promise#finally` per [tc39/proposal-promise-finally#37](https://github.com/tc39/proposal-promise-finally/issues/37) -- Optimized usage of some internal helpers for reducing size of `shim` version -- Fixed some entry points for virtual methods - -##### 2.5.0 - 2017.08.05 -- Added `Promise#finally` [stage 3 proposal](https://github.com/tc39/proposal-promise-finally), [#225](https://github.com/zloirock/core-js/issues/225) -- Added `Promise.try` [stage 1 proposal](https://github.com/tc39/proposal-promise-try) -- Added `Array#flatten` and `Array#flatMap` [stage 1 proposal](https://tc39.github.io/proposal-flatMap) -- Added `.of` and `.from` methods on collection constructors [stage 1 proposal](https://github.com/tc39/proposal-setmap-offrom): - - `Map.of` - - `Set.of` - - `WeakSet.of` - - `WeakMap.of` - - `Map.from` - - `Set.from` - - `WeakSet.from` - - `WeakMap.from` -- Added `Math` extensions [stage 1 proposal](https://github.com/rwaldron/proposal-math-extensions), [#226](https://github.com/zloirock/core-js/issues/226): - - `Math.clamp` - - `Math.DEG_PER_RAD` - - `Math.degrees` - - `Math.fscale` - - `Math.RAD_PER_DEG` - - `Math.radians` - - `Math.scale` -- Added `Math.signbit` [stage 1 proposal](http://jfbastien.github.io/papers/Math.signbit.html) -- Updated `global` [stage 3 proposal](https://github.com/tc39/proposal-global) - added `global` global object, `System.global` deprecated -- Updated `Object.getOwnPropertyDescriptors` to the [final version](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors) - it should not create properties if descriptors are `undefined` -- Updated the list of iterable DOM collections, [#249](https://github.com/zloirock/core-js/issues/249), added: - - `CSSStyleDeclaration#@@iterator` - - `CSSValueList#@@iterator` - - `ClientRectList#@@iterator` - - `DOMRectList#@@iterator` - - `DOMStringList#@@iterator` - - `DataTransferItemList#@@iterator` - - `FileList#@@iterator` - - `HTMLAllCollection#@@iterator` - - `HTMLCollection#@@iterator` - - `HTMLFormElement#@@iterator` - - `HTMLSelectElement#@@iterator` - - `MimeTypeArray#@@iterator` - - `NamedNodeMap#@@iterator` - - `PaintRequestList#@@iterator` - - `Plugin#@@iterator` - - `PluginArray#@@iterator` - - `SVGLengthList#@@iterator` - - `SVGNumberList#@@iterator` - - `SVGPathSegList#@@iterator` - - `SVGPointList#@@iterator` - - `SVGStringList#@@iterator` - - `SVGTransformList#@@iterator` - - `SourceBufferList#@@iterator` - - `TextTrackCueList#@@iterator` - - `TextTrackList#@@iterator` - - `TouchList#@@iterator` -- Updated stages of proposals: - - [`Object.getOwnPropertyDescriptors`](https://github.com/tc39/proposal-object-getownpropertydescriptors) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-object.getownpropertydescriptors) - - [String padding](https://github.com/tc39/proposal-string-pad-start-end) to [stage 4 (ES2017)](https://tc39.github.io/ecma262/2017/#sec-string.prototype.padend) - - [`global`](https://github.com/tc39/proposal-global) to [stage 3](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-09/sept-28.md#revisit-systemglobal--global) - - [String trimming](https://github.com/tc39/proposal-string-left-right-trim) to [stage 2](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-07/jul-27.md#10iic-trimstarttrimend) -- Updated typed arrays to the modern (ES2016+) arguments validation, -[#293](https://github.com/zloirock/core-js/pull/293) -- Fixed `%TypedArray%.from` Safari bug, [#285](https://github.com/zloirock/core-js/issues/285) -- Fixed compatibility with old version of Prototype.js, [#278](https://github.com/zloirock/core-js/issues/278), [#289](https://github.com/zloirock/core-js/issues/289) -- `Function#name` no longer cache the result for correct behaviour with inherited constructors, [#296](https://github.com/zloirock/core-js/issues/296) -- Added errors on incorrect context of collection methods, [#272](https://github.com/zloirock/core-js/issues/272) -- Fixed conversion typed array constructors to string, fix [#300](https://github.com/zloirock/core-js/issues/300) -- Fixed `Set#size` with debugger ReactNative for Android, [#297](https://github.com/zloirock/core-js/issues/297) -- Fixed an issue with Electron-based debugger, [#230](https://github.com/zloirock/core-js/issues/230) -- Fixed compatibility with incomplete third-party `WeakMap` polyfills, [#252](https://github.com/zloirock/core-js/pull/252) -- Added a fallback for `Date#toJSON` in engines without native `Date#toISOString`, [#220](https://github.com/zloirock/core-js/issues/220) -- Added support for Sphere Dispatch API, [#286](https://github.com/zloirock/core-js/pull/286) -- Seriously changed the coding style and the [ESLint config](https://github.com/zloirock/core-js/blob/master/.eslintrc.js) -- Updated many dev dependencies (`webpack`, `uglify`, etc) -- Some other minor fixes and optimizations - -##### 2.4.1 - 2016.07.18 -- Fixed `script` tag for some parsers, [#204](https://github.com/zloirock/core-js/issues/204), [#216](https://github.com/zloirock/core-js/issues/216) -- Removed some unused variables, [#217](https://github.com/zloirock/core-js/issues/217), [#218](https://github.com/zloirock/core-js/issues/218) -- Fixed MS Edge `Reflect.construct` and `Reflect.apply` - they should not allow primitive as `argumentsList` argument - -##### 1.2.7 [LEGACY] - 2016.07.18 -- Some fixes for issues like [#159](https://github.com/zloirock/core-js/issues/159), [#186](https://github.com/zloirock/core-js/issues/186), [#194](https://github.com/zloirock/core-js/issues/194), [#207](https://github.com/zloirock/core-js/issues/207) - -##### 2.4.0 - 2016.05.08 -- Added `Observable`, [stage 1 proposal](https://github.com/zenparsing/es-observable) -- Fixed behavior `Object.{getOwnPropertySymbols, getOwnPropertyDescriptor}` and `Object#propertyIsEnumerable` on `Object.prototype` -- `Reflect.construct` and `Reflect.apply` should throw an error if `argumentsList` argument is not an object, [#194](https://github.com/zloirock/core-js/issues/194) - -##### 2.3.0 - 2016.04.24 -- Added `asap` for enqueuing microtasks, [stage 0 proposal](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask) -- Added well-known symbol `Symbol.asyncIterator` for [stage 2 async iteration proposal](https://github.com/tc39/proposal-async-iteration) -- Added well-known symbol `Symbol.observable` for [stage 1 observables proposal](https://github.com/zenparsing/es-observable) -- `String#{padStart, padEnd}` returns original string if filler is empty string, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#stringprototypepadstartpadend) -- `Object.values` and `Object.entries` moved to stage 4 from 3, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#objectvalues--objectentries) -- `System.global` moved to stage 2 from 1, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#systemglobal) -- `Map#toJSON` and `Set#toJSON` rejected and will be removed from the next major release, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-31.md#mapprototypetojsonsetprototypetojson) -- `Error.isError` withdrawn and will be removed from the next major release, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#erroriserror) -- Added fallback for `Function#name` on non-extensible functions and functions with broken `toString` conversion, [#193](https://github.com/zloirock/core-js/issues/193) - -##### 2.2.2 - 2016.04.06 -- Added conversion `-0` to `+0` to `Array#{indexOf, lastIndexOf}`, [ES2016 fix](https://github.com/tc39/ecma262/pull/316) -- Added fixes for some `Math` methods in Tor Browser -- `Array.{from, of}` no longer calls prototype setters -- Added workaround over Chrome DevTools strange behavior, [#186](https://github.com/zloirock/core-js/issues/186) - -##### 2.2.1 - 2016.03.19 -- Fixed `Object.getOwnPropertyNames(window)` `2.1+` versions bug, [#181](https://github.com/zloirock/core-js/issues/181) - -##### 2.2.0 - 2016.03.15 -- Added `String#matchAll`, [proposal](https://github.com/tc39/String.prototype.matchAll) -- Added `Object#__(define|lookup)[GS]etter__`, [annex B ES2017](https://github.com/tc39/ecma262/pull/381) -- Added `@@toPrimitive` methods to `Date` and `Symbol` -- Fixed `%TypedArray%#slice` in Edge ~ 13 (throws with `@@species` and wrapped / inherited constructor) -- Some other minor fixes - -##### 2.1.5 - 2016.03.12 -- Improved support NodeJS domains in `Promise#then`, [#180](https://github.com/zloirock/core-js/issues/180) -- Added fallback for `Date#toJSON` bug in Qt Script, [#173](https://github.com/zloirock/core-js/issues/173#issuecomment-193972502) - -##### 2.1.4 - 2016.03.08 -- Added fallback for `Symbol` polyfill in Qt Script, [#173](https://github.com/zloirock/core-js/issues/173) -- Added one more fallback for IE11 `Script Access Denied` error with iframes, [#165](https://github.com/zloirock/core-js/issues/165) - -##### 2.1.3 - 2016.02.29 -- Added fallback for [`es6-promise` package bug](https://github.com/stefanpenner/es6-promise/issues/169), [#176](https://github.com/zloirock/core-js/issues/176) - -##### 2.1.2 - 2016.02.29 -- Some minor `Promise` fixes: - - Browsers `rejectionhandled` event better HTML spec complaint - - Errors in unhandled rejection handlers should not cause any problems - - Fixed typo in feature detection - -##### 2.1.1 - 2016.02.22 -- Some `Promise` improvements: - - Feature detection: - - **Added detection unhandled rejection tracking support - now it's available everywhere**, [#140](https://github.com/zloirock/core-js/issues/140) - - Added detection `@@species` pattern support for completely correct subclassing - - Removed usage `Object.setPrototypeOf` from feature detection and noisy console message about it in FF - - `Promise.all` fixed for some very specific cases - -##### 2.1.0 - 2016.02.09 -- **API**: - - ES5 polyfills are split and logic, used in other polyfills, moved to internal modules - - **All entry point works in ES3 environment like IE8- without `core-js/(library/)es5`** - - **Added all missed single entry points for ES5 polyfills** - - Separated ES5 polyfills moved to the ES6 namespace. Why? - - Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+: - - Already added changes for: `Object` statics - should accept primitives, new whitespaces lists in `String#trim`, `parse(Int|float)`, `RegExp#toString` logic, `String#split`, etc - - Should be changed in the future: `@@species` and `ToLength` logic in `Array` methods, `Date` parsing, `Function#bind`, etc - - Should not be changed only several features like `Array.isArray` and `Date.now` - - Some ES5 polyfills required for modern engines - - All old entry points should work fine, but in the next major release API can be changed - - `Object.getOwnPropertyDescriptors` moved to the stage 3, [January TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#objectgetownpropertydescriptors-to-stage-3-jordan-harband-low-priority-but-super-quick) - - Added `umd` option for [custom build process](https://github.com/zloirock/core-js#custom-build-from-external-scripts), [#169](https://github.com/zloirock/core-js/issues/169) - - Returned entry points for `Array` statics, removed in `2.0`, for compatibility with `babel` `6` and for future fixes -- **Deprecated**: - - `Reflect.enumerate` deprecated and will be removed from the next major release, [January TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#5xix-revisit-proxy-enumerate---revisit-decision-to-exhaust-iterator) -- **New Features**: - - Added [`Reflect` metadata API](https://github.com/jonathandturner/decorators/blob/master/specs/metadata.md) as a pre-strawman feature, [#152](https://github.com/zloirock/core-js/issues/152): - - `Reflect.defineMetadata` - - `Reflect.deleteMetadata` - - `Reflect.getMetadata` - - `Reflect.getMetadataKeys` - - `Reflect.getOwnMetadata` - - `Reflect.getOwnMetadataKeys` - - `Reflect.hasMetadata` - - `Reflect.hasOwnMetadata` - - `Reflect.metadata` - - Implementation / fixes `Date#toJSON` - - Fixes for `parseInt` and `Number.parseInt` - - Fixes for `parseFloat` and `Number.parseFloat` - - Fixes for `RegExp#toString` - - Fixes for `Array#sort` - - Fixes for `Number#toFixed` - - Fixes for `Number#toPrecision` - - Additional fixes for `String#split` (`RegExp#@@split`) -- **Improvements**: - - Correct subclassing wrapped collections, `Number` and `RegExp` constructors with native class syntax - - Correct support `SharedArrayBuffer` and buffers from other realms in typed arrays wrappers - - Additional validations for `Object.{defineProperty, getOwnPropertyDescriptor}` and `Reflect.defineProperty` -- **Bug Fixes**: - - Fixed some cases `Array#lastIndexOf` with negative second argument - -##### 2.0.3 - 2016.01.11 -- Added fallback for V8 ~ Chrome 49 `Promise` subclassing bug causes unhandled rejection on feature detection, [#159](https://github.com/zloirock/core-js/issues/159) -- Added fix for very specific environments with global `window === null` - -##### 2.0.2 - 2016.01.04 -- Temporarily removed `length` validation from `Uint8Array` constructor wrapper. Reason - [bug in `ws` module](https://github.com/websockets/ws/pull/645) (-> `socket.io`) which passes to `Buffer` constructor -> `Uint8Array` float and uses [the `V8` bug](https://code.google.com/p/v8/issues/detail?id=4552) for conversion to int (by the spec should be thrown an error). [It creates problems for many people.](https://github.com/karma-runner/karma/issues/1768) I hope, it will be returned after fixing this bug in `V8`. - -##### 2.0.1 - 2015.12.31 -- Forced usage `Promise.resolve` polyfill in the `library` version for correct work with wrapper -- `Object.assign` should be defined in the strict mode -> throw an error on extension non-extensible objects, [#154](https://github.com/zloirock/core-js/issues/154) - -##### 2.0.0 - 2015.12.24 -- Added implementations and fixes [Typed Arrays](https://github.com/zloirock/core-js#ecmascript-6-typed-arrays)-related features - - `ArrayBuffer`, `ArrayBuffer.isView`, `ArrayBuffer#slice` - - `DataView` with all getter / setter methods - - `Int8Array`, `Uint8Array`, `Uint8ClampedArray`, `Int16Array`, `Uint16Array`, `Int32Array`, `Uint32Array`, `Float32Array` and `Float64Array` constructors - - `%TypedArray%.{for, of}`, `%TypedArray%#{copyWithin, every, fill, filter, find, findIndex, forEach, indexOf, includes, join, lastIndexOf, map, reduce, reduceRight, reverse, set, slice, some, sort, subarray, values, keys, entries, @@iterator, ...}` -- Added [`System.global`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/tc39/proposal-global), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-19.md#systemglobal-jhd) -- Added [`Error.isError`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/ljharb/proposal-is-error), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-19.md#jhd-erroriserror) -- Added [`Math.{iaddh, isubh, imulh, umulh}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://gist.github.com/BrendanEich/4294d5c212a6d2254703) -- `RegExp.escape` moved from the `es7` to the non-standard `core` namespace, [July TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2015-07/july-28.md#62-regexpescape) - too slow, but it's condition of stability, [#116](https://github.com/zloirock/core-js/issues/116) -- [`Promise`](https://github.com/zloirock/core-js#ecmascript-6-promise) - - Some performance optimisations - - Added basic support [`rejectionHandled` event / `onrejectionhandled` handler](https://github.com/zloirock/core-js#unhandled-rejection-tracking) to the polyfill - - Removed usage `@@species` from `Promise.{all, race}`, [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-18.md#conclusionresolution-2) -- Some improvements [collections polyfills](https://github.com/zloirock/core-js#ecmascript-6-collections) - - `O(1)` and preventing possible leaks with frozen keys, [#134](https://github.com/zloirock/core-js/issues/134) - - Correct observable state object keys -- Renamed `String#{padLeft, padRight}` -> [`String#{padStart, padEnd}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/tc39/proposal-string-pad-start-end), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-17.md#conclusionresolution-2) (they want to rename it on each meeting?O_o), [#132](https://github.com/zloirock/core-js/issues/132) -- Added [`String#{trimStart, trimEnd}` as aliases for `String#{trimLeft, trimRight}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-17.md#conclusionresolution-2) -- Added [annex B HTML methods](https://github.com/zloirock/core-js#ecmascript-6-string) - ugly, but also [the part of the spec](http://www.ecma-international.org/ecma-262/6.0/#sec-string.prototype.anchor) -- Added little fix for [`Date#toString`](https://github.com/zloirock/core-js#ecmascript-6-date) - `new Date(NaN).toString()` [should be `'Invalid Date'`](http://www.ecma-international.org/ecma-262/6.0/#sec-todatestring) -- Added [`{keys, values, entries, @@iterator}` methods to DOM collections](https://github.com/zloirock/core-js#iterable-dom-collections) which should have [iterable interface](https://heycam.github.io/webidl/#idl-iterable) or should be [inherited from `Array`](https://heycam.github.io/webidl/#LegacyArrayClass) - `NodeList`, `DOMTokenList`, `MediaList`, `StyleSheetList`, `CSSRuleList`. -- Removed Mozilla `Array` generics - [deprecated and will be removed from FF](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array#Array_generic_methods), [looks like strawman is dead](http://wiki.ecmascript.org/doku.php?id=strawman:array_statics), available [alternative shim](https://github.com/plusdude/array-generics) -- Removed `core.log` module -- CommonJS API - - Added entry points for [virtual methods](https://github.com/zloirock/core-js#commonjs-and-prototype-methods-without-global-namespace-pollution) - - Added entry points for [stages proposals](https://github.com/zloirock/core-js#ecmascript-7-proposals) - - Some other minor changes -- [Custom build from external scripts](https://github.com/zloirock/core-js#custom-build-from-external-scripts) moved to the separate package for preventing problems with dependencies -- Changed `$` prefix for internal modules file names because Team Foundation Server does not support it, [#129](https://github.com/zloirock/core-js/issues/129) -- Additional fix for `SameValueZero` in V8 ~ Chromium 39-42 collections -- Additional fix for FF27 `Array` iterator -- Removed usage shortcuts for `arguments` object - old WebKit bug, [#150](https://github.com/zloirock/core-js/issues/150) -- `{Map, Set}#forEach` non-generic, [#144](https://github.com/zloirock/core-js/issues/144) -- Many other improvements - -##### 1.2.6 - 2015.11.09 -* Reject with `TypeError` on attempt resolve promise itself -* Correct behavior with broken `Promise` subclass constructors / methods -* Added `Promise`-based fallback for microtask -* Fixed V8 and FF `Array#{values, @@iterator}.name` -* Fixed IE7- `[1, 2].join(undefined) -> '1,2'` -* Some other fixes / improvements / optimizations - -##### 1.2.5 - 2015.11.02 -* Some more `Number` constructor fixes: - * Fixed V8 ~ Node 0.8 bug: `Number('+0x1')` should be `NaN` - * Fixed `Number(' 0b1\n')` case, should be `1` - * Fixed `Number()` case, should be `0` - -##### 1.2.4 - 2015.11.01 -* Fixed `Number('0b12') -> NaN` case in the shim -* Fixed V8 ~ Chromium 40- bug - `Weak(Map|Set)#{delete, get, has}` should not throw errors [#124](https://github.com/zloirock/core-js/issues/124) -* Some other fixes and optimizations - -##### 1.2.3 - 2015.10.23 -* Fixed some problems related old V8 bug `Object('a').propertyIsEnumerable(0) // => false`, for example, `Object.assign({}, 'qwe')` from the last release -* Fixed `.name` property and `Function#toString` conversion some polyfilled methods -* Fixed `Math.imul` arity in Safari 8- - -##### 1.2.2 - 2015.10.18 -* Improved optimisations for V8 -* Fixed build process from external packages, [#120](https://github.com/zloirock/core-js/pull/120) -* One more `Object.{assign, values, entries}` fix for [**very** specific case](https://github.com/ljharb/proposal-object-values-entries/issues/5) - -##### 1.2.1 - 2015.10.02 -* Replaced fix `JSON.stringify` + `Symbol` behavior from `.toJSON` method to wrapping `JSON.stringify` - little more correct, [compat-table/642](https://github.com/kangax/compat-table/pull/642) -* Fixed typo which broke tasks scheduler in WebWorkers in old FF, [#114](https://github.com/zloirock/core-js/pull/114) - -##### 1.2.0 - 2015.09.27 -* Added browser [`Promise` rejection hook](#unhandled-rejection-tracking), [#106](https://github.com/zloirock/core-js/issues/106) -* Added correct [`IsRegExp`](http://www.ecma-international.org/ecma-262/6.0/#sec-isregexp) logic to [`String#{includes, startsWith, endsWith}`](https://github.com/zloirock/core-js/#ecmascript-6-string) and [`RegExp` constructor](https://github.com/zloirock/core-js/#ecmascript-6-regexp), `@@match` case, [example](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/match#Disabling_the_isRegExp_check) -* Updated [`String#leftPad`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) [with proposal](https://github.com/ljharb/proposal-string-pad-left-right/issues/6): string filler truncated from the right side -* Replaced V8 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object) - its properties order not only [incorrect](https://github.com/sindresorhus/object-assign/issues/22), it is non-deterministic and it causes some problems -* Fixed behavior with deleted in getters properties for `Object.{`[`assign`](https://github.com/zloirock/core-js/#ecmascript-6-object)`, `[`entries, values`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)`}`, [example](http://goo.gl/iQE01c) -* Fixed [`Math.sinh`](https://github.com/zloirock/core-js/#ecmascript-6-math) with very small numbers in V8 near Chromium 38 -* Some other fixes and optimizations - -##### 1.1.4 - 2015.09.05 -* Fixed support symbols in FF34-35 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object) -* Fixed [collections iterators](https://github.com/zloirock/core-js/#ecmascript-6-iterators) in FF25-26 -* Fixed non-generic WebKit [`Array.of`](https://github.com/zloirock/core-js/#ecmascript-6-array) -* Some other fixes and optimizations - -##### 1.1.3 - 2015.08.29 -* Fixed support Node.js domains in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise), [#103](https://github.com/zloirock/core-js/issues/103) - -##### 1.1.2 - 2015.08.28 -* Added `toJSON` method to [`Symbol`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill and to MS Edge implementation for expected `JSON.stringify` result w/o patching this method -* Replaced [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) implementations w/o correct support third argument -* Fixed `global` detection with changed `document.domain` in ~IE8, [#100](https://github.com/zloirock/core-js/issues/100) - -##### 1.1.1 - 2015.08.20 -* Added more correct microtask implementation for [`Promise`](#ecmascript-6-promise) - -##### 1.1.0 - 2015.08.17 -* Updated [string padding](https://github.com/zloirock/core-js/#ecmascript-7-proposals) to [actual proposal](https://github.com/ljharb/proposal-string-pad-left-right) - renamed, minor internal changes: - * `String#lpad` -> `String#padLeft` - * `String#rpad` -> `String#padRight` -* Added [string trim functions](#ecmascript-7-proposals) - [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim), defacto standard - required only for IE11- and fixed for some old engines: - * `String#trimLeft` - * `String#trimRight` -* [`String#trim`](https://github.com/zloirock/core-js/#ecmascript-6-string) fixed for some engines by es6 spec and moved from `es5` to single `es6` module -* Splitted [`es6.object.statics-accept-primitives`](https://github.com/zloirock/core-js/#ecmascript-6-object) -* Caps for `freeze`-family `Object` methods moved from `es5` to `es6` namespace and joined with [es6 wrappers](https://github.com/zloirock/core-js/#ecmascript-6-object) -* `es5` [namespace](https://github.com/zloirock/core-js/#commonjs) also includes modules, moved to `es6` namespace - you can use it as before -* Increased `MessageChannel` priority in `$.task`, [#95](https://github.com/zloirock/core-js/issues/95) -* Does not get `global.Symbol` on each getting iterator, if you wanna use alternative `Symbol` shim - add it before `core-js` -* [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) optimized and fixed for some cases -* Simplified [`Reflect.enumerate`](https://github.com/zloirock/core-js/#ecmascript-6-reflect), see [this question](https://esdiscuss.org/topic/question-about-enumerate-and-property-decision-timing) -* Some corrections in [`Math.acosh`](https://github.com/zloirock/core-js/#ecmascript-6-math) -* Fixed [`Math.imul`](https://github.com/zloirock/core-js/#ecmascript-6-math) for old WebKit -* Some fixes in string / RegExp [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp) logic -* Some other fixes and optimizations - -##### 1.0.1 - 2015.07.31 -* Some fixes for final MS Edge, replaced broken native `Reflect.defineProperty` -* Some minor fixes and optimizations -* Changed compression `client/*.min.js` options for safe `Function#name` and `Function#length`, should be fixed [#92](https://github.com/zloirock/core-js/issues/92) - -##### 1.0.0 - 2015.07.22 -* Added logic for [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp): - * `Symbol.match` - * `Symbol.replace` - * `Symbol.split` - * `Symbol.search` -* Actualized and optimized work with iterables: - * Optimized [`Map`, `Set`, `WeakMap`, `WeakSet` constructors](https://github.com/zloirock/core-js/#ecmascript-6-collections), [`Promise.all`, `Promise.race`](https://github.com/zloirock/core-js/#ecmascript-6-promise) for default `Array Iterator` - * Optimized [`Array.from`](https://github.com/zloirock/core-js/#ecmascript-6-array) for default `Array Iterator` - * Added [`core.getIteratorMethod`](https://github.com/zloirock/core-js/#ecmascript-6-iterators) helper -* Uses enumerable properties in shimmed instances - collections, iterators, etc for optimize performance -* Added support native constructors to [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) with 2 arguments -* Added support native constructors to [`Function#bind`](https://github.com/zloirock/core-js/#ecmascript-5) shim with `new` -* Removed obsolete `.clear` methods native [`Weak`-collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) -* Maximum modularity, reduced minimal custom build size, separated into submodules: - * [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) - * [`es6.regexp`](https://github.com/zloirock/core-js/#ecmascript-6-regexp) - * [`es6.math`](https://github.com/zloirock/core-js/#ecmascript-6-math) - * [`es6.number`](https://github.com/zloirock/core-js/#ecmascript-6-number) - * [`es7.object.to-array`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) - * [`core.object`](https://github.com/zloirock/core-js/#object) - * [`core.string`](https://github.com/zloirock/core-js/#escaping-strings) - * [`core.iter-helpers`](https://github.com/zloirock/core-js/#ecmascript-6-iterators) - * Internal modules (`$`, `$.iter`, etc) -* Many other optimizations -* Final cleaning non-standard features - * Moved `$for` to [separate library](https://github.com/zloirock/forof). This work for syntax - `for-of` loop and comprehensions - * Moved `Date#{format, formatUTC}` to [separate library](https://github.com/zloirock/dtf). Standard way for this - `ECMA-402` - * Removed `Math` methods from `Number.prototype`. Slight sugar for simple `Math` methods calling - * Removed `{Array#, Array, Dict}.turn` - * Removed `core.global` -* Uses `ToNumber` instead of `ToLength` in [`Number Iterator`](https://github.com/zloirock/core-js/#number-iterator), `Array.from(2.5)` will be `[0, 1, 2]` instead of `[0, 1]` -* Fixed [#85](https://github.com/zloirock/core-js/issues/85) - invalid `Promise` unhandled rejection message in nested `setTimeout` -* Fixed [#86](https://github.com/zloirock/core-js/issues/86) - support FF extensions -* Fixed [#89](https://github.com/zloirock/core-js/issues/89) - behavior `Number` constructor in strange case - -##### 0.9.18 - 2015.06.17 -* Removed `/` from [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) escaped characters - -##### 0.9.17 - 2015.06.14 -* Updated [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) to the [latest proposal](https://github.com/benjamingr/RexExp.escape) -* Fixed conflict with webpack dev server + IE buggy behavior - -##### 0.9.16 - 2015.06.11 -* More correct order resolving thenable in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) polyfill -* Uses polyfill instead of [buggy V8 `Promise`](https://github.com/zloirock/core-js/issues/78) - -##### 0.9.15 - 2015.06.09 -* [Collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) from `library` version return wrapped native instances -* Fixed collections prototype methods in `library` version -* Optimized [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math) - -##### 0.9.14 - 2015.06.04 -* Updated [`Promise.resolve` behavior](https://esdiscuss.org/topic/fixing-promise-resolve) -* Added fallback for IE11 buggy `Object.getOwnPropertyNames` + iframe -* Some other fixes - -##### 0.9.13 - 2015.05.25 -* Added fallback for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol) for old Android -* Some other fixes - -##### 0.9.12 - 2015.05.24 -* Different instances `core-js` should use / recognize the same symbols -* Some fixes - -##### 0.9.11 - 2015.05.18 -* Simplified [custom build](https://github.com/zloirock/core-js/#custom-build) - * Added custom build js api - * Added `grunt-cli` to `devDependencies` for `npm run grunt` -* Some fixes - -##### 0.9.10 - 2015.05.16 -* Wrapped `Function#toString` for correct work wrapped methods / constructors with methods similar to the [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197) -* Added proto versions of methods to export object in `default` version for consistency with `library` version - -##### 0.9.9 - 2015.05.14 -* Wrapped `Object#propertyIsEnumerable` for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol) -* [Added proto versions of methods to `library` for ES7 bind syntax](https://github.com/zloirock/core-js/issues/65) -* Some other fixes - -##### 0.9.8 - 2015.05.12 -* Fixed [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math) with negative arguments -* Added `Object#toString.toString` as fallback for [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197) - -##### 0.9.7 - 2015.05.07 -* Added [support DOM collections](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice#Streamlining_cross-browser_behavior) to IE8- `Array#slice` - -##### 0.9.6 - 2015.05.01 -* Added [`String#lpad`, `String#rpad`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) - -##### 0.9.5 - 2015.04.30 -* Added cap for `Function#@@hasInstance` -* Some fixes and optimizations - -##### 0.9.4 - 2015.04.27 -* Fixed `RegExp` constructor - -##### 0.9.3 - 2015.04.26 -* Some fixes and optimizations - -##### 0.9.2 - 2015.04.25 -* More correct [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking and resolving / rejection priority - -##### 0.9.1 - 2015.04.25 -* Fixed `__proto__`-based [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) subclassing in some environments - -##### 0.9.0 - 2015.04.24 -* Added correct [symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol) descriptors - * Fixed behavior `Object.{assign, create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptors}` with symbols - * Added [single entry points](https://github.com/zloirock/core-js/#commonjs) for `Object.{create, defineProperty, defineProperties}` -* Added [`Map#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) -* Removed non-standard methods `Object#[_]` and `Function#only` - they solves syntax problems, but now in compilers available arrows and ~~in near future will be available~~ [available](http://babeljs.io/blog/2015/05/14/function-bind/) [bind syntax](https://github.com/zenparsing/es-function-bind) -* Removed non-standard undocumented methods `Symbol.{pure, set}` -* Some fixes and internal changes - -##### 0.8.4 - 2015.04.18 -* Uses `webpack` instead of `browserify` for browser builds - more compression-friendly result - -##### 0.8.3 - 2015.04.14 -* Fixed `Array` statics with single entry points - -##### 0.8.2 - 2015.04.13 -* [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) now also works in IE9- -* Added [`Set#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) -* Some optimizations and fixes - -##### 0.8.1 - 2015.04.03 -* Fixed `Symbol.keyFor` - -##### 0.8.0 - 2015.04.02 -* Changed [CommonJS API](https://github.com/zloirock/core-js/#commonjs) -* Splitted and renamed some modules -* Added support ES3 environment (ES5 polyfill) to **all** default versions - size increases slightly (+ ~4kb w/o gzip), many issues disappear, if you don't need it - [simply include only required namespaces / features / modules](https://github.com/zloirock/core-js/#commonjs) -* Removed [abstract references](https://github.com/zenparsing/es-abstract-refs) support - proposal has been superseded =\ -* [`$for.isIterable` -> `core.isIterable`, `$for.getIterator` -> `core.getIterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), temporary available in old namespace -* Fixed iterators support in v8 `Promise.all` and `Promise.race` -* Many other fixes - -##### 0.7.2 - 2015.03.09 -* Some fixes - -##### 0.7.1 - 2015.03.07 -* Some fixes - -##### 0.7.0 - 2015.03.06 -* Rewritten and splitted into [CommonJS modules](https://github.com/zloirock/core-js/#commonjs) - -##### 0.6.1 - 2015.02.24 -* Fixed support [`Object.defineProperty`](https://github.com/zloirock/core-js/#ecmascript-5) with accessors on DOM elements on IE8 - -##### 0.6.0 - 2015.02.23 -* Added support safe closing iteration - calling `iterator.return` on abort iteration, if it exists -* Added basic support [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking in shim -* Added [`Object.getOwnPropertyDescriptors`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) -* Removed `console` cap - creates too many problems -* Restructuring [namespaces](https://github.com/zloirock/core-js/#custom-build) -* Some fixes - -##### 0.5.4 - 2015.02.15 -* Some fixes - -##### 0.5.3 - 2015.02.14 -* Added [support binary and octal literals](https://github.com/zloirock/core-js/#ecmascript-6-number) to `Number` constructor -* Added [`Date#toISOString`](https://github.com/zloirock/core-js/#ecmascript-5) - -##### 0.5.2 - 2015.02.10 -* Some fixes - -##### 0.5.1 - 2015.02.09 -* Some fixes - -##### 0.5.0 - 2015.02.08 -* Systematization of modules -* Splitted [`es6` module](https://github.com/zloirock/core-js/#ecmascript-6) -* Splitted `console` module: `web.console` - only cap for missing methods, `core.log` - bound methods & additional features -* Added [`delay` method](https://github.com/zloirock/core-js/#delay) -* Some fixes - -##### 0.4.10 - 2015.01.28 -* [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill returns array of wrapped keys - -##### 0.4.9 - 2015.01.27 -* FF20-24 fix - -##### 0.4.8 - 2015.01.25 -* Some [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) fixes - -##### 0.4.7 - 2015.01.25 -* Added support frozen objects as [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) keys - -##### 0.4.6 - 2015.01.21 -* Added [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) -* Added [`NodeList.prototype[@@iterator]`](https://github.com/zloirock/core-js/#ecmascript-6-iterators) -* Added basic `@@species` logic - getter in native constructors -* Removed `Function#by` -* Some fixes - -##### 0.4.5 - 2015.01.16 -* Some fixes - -##### 0.4.4 - 2015.01.11 -* Enabled CSP support - -##### 0.4.3 - 2015.01.10 -* Added `Function` instances `name` property for IE9+ - -##### 0.4.2 - 2015.01.10 -* `Object` static methods accept primitives -* `RegExp` constructor can alter flags (IE9+) -* Added `Array.prototype[Symbol.unscopables]` - -##### 0.4.1 - 2015.01.05 -* Some fixes - -##### 0.4.0 - 2015.01.03 -* Added [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) module: - * Added `Reflect.apply` - * Added `Reflect.construct` - * Added `Reflect.defineProperty` - * Added `Reflect.deleteProperty` - * Added `Reflect.enumerate` - * Added `Reflect.get` - * Added `Reflect.getOwnPropertyDescriptor` - * Added `Reflect.getPrototypeOf` - * Added `Reflect.has` - * Added `Reflect.isExtensible` - * Added `Reflect.preventExtensions` - * Added `Reflect.set` - * Added `Reflect.setPrototypeOf` -* `core-js` methods now can use external `Symbol.iterator` polyfill -* Some fixes - -##### 0.3.3 - 2014.12.28 -* [Console cap](https://github.com/zloirock/core-js/#console) excluded from node.js default builds - -##### 0.3.2 - 2014.12.25 -* Added cap for [ES5](https://github.com/zloirock/core-js/#ecmascript-5) freeze-family methods -* Fixed `console` bug - -##### 0.3.1 - 2014.12.23 -* Some fixes - -##### 0.3.0 - 2014.12.23 -* Optimize [`Map` & `Set`](https://github.com/zloirock/core-js/#ecmascript-6-collections): - * Use entries chain on hash table - * Fast & correct iteration - * Iterators moved to [`es6`](https://github.com/zloirock/core-js/#ecmascript-6) and [`es6.collections`](https://github.com/zloirock/core-js/#ecmascript-6-collections) modules - -##### 0.2.5 - 2014.12.20 -* `console` no longer shortcut for `console.log` (compatibility problems) -* Some fixes - -##### 0.2.4 - 2014.12.17 -* Better compliance of ES6 -* Added [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) (IE10+) -* Some fixes - -##### 0.2.3 - 2014.12.15 -* [Symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol): - * Added option to disable addition setter to `Object.prototype` for Symbol polyfill: - * Added `Symbol.useSimple` - * Added `Symbol.useSetter` - * Added cap for well-known Symbols: - * Added `Symbol.hasInstance` - * Added `Symbol.isConcatSpreadable` - * Added `Symbol.match` - * Added `Symbol.replace` - * Added `Symbol.search` - * Added `Symbol.species` - * Added `Symbol.split` - * Added `Symbol.toPrimitive` - * Added `Symbol.unscopables` - -##### 0.2.2 - 2014.12.13 -* Added [`RegExp#flags`](https://github.com/zloirock/core-js/#ecmascript-6-regexp) ([December 2014 Draft Rev 29](http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts#december_6_2014_draft_rev_29)) -* Added [`String.raw`](https://github.com/zloirock/core-js/#ecmascript-6-string) - -##### 0.2.1 - 2014.12.12 -* Repair converting -0 to +0 in [native collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) - -##### 0.2.0 - 2014.12.06 -* Added [`es7.proposals`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) and [`es7.abstract-refs`](https://github.com/zenparsing/es-abstract-refs) modules -* Added [`String#at`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) -* Added real [`String Iterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), older versions used Array Iterator -* Added abstract references support: - * Added `Symbol.referenceGet` - * Added `Symbol.referenceSet` - * Added `Symbol.referenceDelete` - * Added `Function#@@referenceGet` - * Added `Map#@@referenceGet` - * Added `Map#@@referenceSet` - * Added `Map#@@referenceDelete` - * Added `WeakMap#@@referenceGet` - * Added `WeakMap#@@referenceSet` - * Added `WeakMap#@@referenceDelete` - * Added `Dict.{...methods}[@@referenceGet]` -* Removed deprecated `.contains` methods -* Some fixes - -##### 0.1.5 - 2014.12.01 -* Added [`Array#copyWithin`](https://github.com/zloirock/core-js/#ecmascript-6-array) -* Added [`String#codePointAt`](https://github.com/zloirock/core-js/#ecmascript-6-string) -* Added [`String.fromCodePoint`](https://github.com/zloirock/core-js/#ecmascript-6-string) - -##### 0.1.4 - 2014.11.27 -* Added [`Dict.mapPairs`](https://github.com/zloirock/core-js/#dict) - -##### 0.1.3 - 2014.11.20 -* [TC39 November meeting](https://github.com/rwaldron/tc39-notes/tree/master/es6/2014-11): - * [`.contains` -> `.includes`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-18.md#51--44-arrayprototypecontains-and-stringprototypecontains) - * `String#contains` -> [`String#includes`](https://github.com/zloirock/core-js/#ecmascript-6-string) - * `Array#contains` -> [`Array#includes`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) - * `Dict.contains` -> [`Dict.includes`](https://github.com/zloirock/core-js/#dict) - * [Removed `WeakMap#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm) - * [Removed `WeakSet#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm) - -##### 0.1.2 - 2014.11.19 -* `Map` & `Set` bug fix - -##### 0.1.1 - 2014.11.18 -* Public release \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/Gruntfile.js b/forward_engineering/node_modules/core-js/Gruntfile.js deleted file mode 100644 index 02b832c..0000000 --- a/forward_engineering/node_modules/core-js/Gruntfile.js +++ /dev/null @@ -1,3 +0,0 @@ -require('LiveScript'); -// eslint-disable-next-line import/no-unresolved -module.exports = require('./build/Gruntfile'); diff --git a/forward_engineering/node_modules/core-js/LICENSE b/forward_engineering/node_modules/core-js/LICENSE deleted file mode 100644 index 834b267..0000000 --- a/forward_engineering/node_modules/core-js/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2014-2019 Denis Pushkarev - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/forward_engineering/node_modules/core-js/README.md b/forward_engineering/node_modules/core-js/README.md deleted file mode 100644 index 079ae61..0000000 --- a/forward_engineering/node_modules/core-js/README.md +++ /dev/null @@ -1,2307 +0,0 @@ -# core-js - -[![Sponsors on Open Collective](https://opencollective.com/core-js/sponsors/badge.svg)](#raising-funds) [![Backers on Open Collective](https://opencollective.com/core-js/backers/badge.svg)](#raising-funds) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/zloirock/core-js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![version](https://img.shields.io/npm/v/core-js.svg)](https://www.npmjs.com/package/core-js) [![npm downloads](https://img.shields.io/npm/dm/core-js.svg)](http://npm-stat.com/charts.html?package=core-js&author=&from=2014-11-18) [![Build Status](https://travis-ci.org/zloirock/core-js.svg)](https://travis-ci.org/zloirock/core-js) [![devDependency status](https://david-dm.org/zloirock/core-js/dev-status.svg)](https://david-dm.org/zloirock/core-js?type=dev) -## As advertising: the author is looking for a good job :) - -## [core-js@3, babel and a look into the future](https://github.com/zloirock/core-js/tree/master/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md) - -## Raising funds - -`core-js` isn't backed by a company, so the future of this project depends on you. Become a sponsor or a backer [**on Open Collective**](https://opencollective.com/core-js) or [**on Patreon**](https://www.patreon.com/zloirock) if you are interested in `core-js`. - ---- - - - ---- - - - ---- - -**It's documentation for obsolete `core-js@2`. If you looking documentation for actual `core-js` version, please, check [this branch](https://github.com/zloirock/core-js/tree/master).** - -Modular standard library for JavaScript. Includes polyfills for [ECMAScript 5](#ecmascript-5), [ECMAScript 6](#ecmascript-6): [promises](#ecmascript-6-promise), [symbols](#ecmascript-6-symbol), [collections](#ecmascript-6-collections), iterators, [typed arrays](#ecmascript-6-typed-arrays), [ECMAScript 7+ proposals](#ecmascript-7-proposals), [setImmediate](#setimmediate), etc. Some additional features such as [dictionaries](#dict) or [extended partial application](#partial-application). You can require only needed features or use it without global namespace pollution. - -[*Example*](http://goo.gl/a2xexl): -```js -Array.from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -'*'.repeat(10); // => '**********' -Promise.resolve(32).then(x => console.log(x)); // => 32 -setImmediate(x => console.log(x), 42); // => 42 -``` - -[*Without global namespace pollution*](http://goo.gl/paOHb0): -```js -var core = require('core-js/library'); // With a modular system, otherwise use global `core` -core.Array.from(new core.Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -core.String.repeat('*', 10); // => '**********' -core.Promise.resolve(32).then(x => console.log(x)); // => 32 -core.setImmediate(x => console.log(x), 42); // => 42 -``` - -### Index -- [Usage](#usage) - - [Basic](#basic) - - [CommonJS](#commonjs) - - [Custom build](#custom-build-from-the-command-line) -- [Supported engines](#supported-engines) -- [Features](#features) - - [ECMAScript 5](#ecmascript-5) - - [ECMAScript 6](#ecmascript-6) - - [ECMAScript 6: Object](#ecmascript-6-object) - - [ECMAScript 6: Function](#ecmascript-6-function) - - [ECMAScript 6: Array](#ecmascript-6-array) - - [ECMAScript 6: String](#ecmascript-6-string) - - [ECMAScript 6: RegExp](#ecmascript-6-regexp) - - [ECMAScript 6: Number](#ecmascript-6-number) - - [ECMAScript 6: Math](#ecmascript-6-math) - - [ECMAScript 6: Date](#ecmascript-6-date) - - [ECMAScript 6: Promise](#ecmascript-6-promise) - - [ECMAScript 6: Symbol](#ecmascript-6-symbol) - - [ECMAScript 6: Collections](#ecmascript-6-collections) - - [ECMAScript 6: Typed Arrays](#ecmascript-6-typed-arrays) - - [ECMAScript 6: Reflect](#ecmascript-6-reflect) - - [ECMAScript 7+ proposals](#ecmascript-7-proposals) - - [stage 4 proposals](#stage-4-proposals) - - [stage 3 proposals](#stage-3-proposals) - - [stage 2 proposals](#stage-2-proposals) - - [stage 1 proposals](#stage-1-proposals) - - [stage 0 proposals](#stage-0-proposals) - - [pre-stage 0 proposals](#pre-stage-0-proposals) - - [Web standards](#web-standards) - - [setTimeout / setInterval](#settimeout--setinterval) - - [setImmediate](#setimmediate) - - [iterable DOM collections](#iterable-dom-collections) - - [Non-standard](#non-standard) - - [Object](#object) - - [Dict](#dict) - - [partial application](#partial-application) - - [Number Iterator](#number-iterator) - - [escaping strings](#escaping-strings) - - [delay](#delay) - - [helpers for iterators](#helpers-for-iterators) -- [Missing polyfills](#missing-polyfills) -- [Changelog](./CHANGELOG.md) - -## Usage -### Basic -``` -npm i core-js -bower install core.js -``` - -```js -// Default -require('core-js'); -// Without global namespace pollution -var core = require('core-js/library'); -// Shim only -require('core-js/shim'); -``` -If you need complete build for browser, use builds from `core-js/client` path: - -* [default](https://raw.githack.com/zloirock/core-js/v2.6.9/client/core.min.js): Includes all features, standard and non-standard. -* [as a library](https://raw.githack.com/zloirock/core-js/v2.6.9/client/library.min.js): Like "default", but does not pollute the global namespace (see [2nd example at the top](#core-js)). -* [shim only](https://raw.githack.com/zloirock/core-js/v2.6.9/client/shim.min.js): Only includes the standard methods. - -Warning: if you use `core-js` with the extension of native objects, require all needed `core-js` modules at the beginning of entry point of your application, otherwise, conflicts may occur. - -### CommonJS -You can require only needed modules. - -```js -require('core-js/fn/set'); -require('core-js/fn/array/from'); -require('core-js/fn/array/find-index'); -Array.from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -[1, 2, NaN, 3, 4].findIndex(isNaN); // => 2 - -// or, w/o global namespace pollution: - -var Set = require('core-js/library/fn/set'); -var from = require('core-js/library/fn/array/from'); -var findIndex = require('core-js/library/fn/array/find-index'); -from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -findIndex([1, 2, NaN, 3, 4], isNaN); // => 2 -``` -Available entry points for methods / constructors, as above examples, and namespaces: for example, `core-js/es6/array` (`core-js/library/es6/array`) contains all [ES6 `Array` features](#ecmascript-6-array), `core-js/es6` (`core-js/library/es6`) contains all ES6 features. - -##### Caveats when using CommonJS API: - -* `modules` path is internal API, does not inject all required dependencies and can be changed in minor or patch releases. Use it only for a custom build and / or if you know what are you doing. -* `core-js` is extremely modular and uses a lot of very tiny modules, because of that for usage in browsers bundle up `core-js` instead of usage loader for each file, otherwise, you will have hundreds of requests. - -#### CommonJS and prototype methods without global namespace pollution -In the `library` version, we can't pollute prototypes of native constructors. Because of that, prototype methods transformed to static methods like in examples above. `babel` `runtime` transformer also can't transform them. But with transpilers we can use one more trick - [bind operator and virtual methods](https://github.com/zenparsing/es-function-bind). Special for that, available `/virtual/` entry points. Example: -```js -import fill from 'core-js/library/fn/array/virtual/fill'; -import findIndex from 'core-js/library/fn/array/virtual/find-index'; - -Array(10)::fill(0).map((a, b) => b * b)::findIndex(it => it && !(it % 8)); // => 4 - -// or - -import {fill, findIndex} from 'core-js/library/fn/array/virtual'; - -Array(10)::fill(0).map((a, b) => b * b)::findIndex(it => it && !(it % 8)); // => 4 - -``` - -### Custom build (from the command-line) -``` -npm i core-js && cd node_modules/core-js && npm i -npm run grunt build:core.dict,es6 -- --blacklist=es6.promise,es6.math --library=on --path=custom uglify -``` -Where `core.dict` and `es6` are modules (namespaces) names, which will be added to the build, `es6.promise` and `es6.math` are modules (namespaces) names, which will be excluded from the build, `--library=on` is flag for build without global namespace pollution and `custom` is target file name. - -Available namespaces: for example, `es6.array` contains [ES6 `Array` features](#ecmascript-6-array), `es6` contains all modules whose names start with `es6`. - -### Custom build (from external scripts) - -[`core-js-builder`](https://www.npmjs.com/package/core-js-builder) package exports a function that takes the same parameters as the `build` target from the previous section. This will conditionally include or exclude certain parts of `core-js`: - -```js -require('core-js-builder')({ - modules: ['es6', 'core.dict'], // modules / namespaces - blacklist: ['es6.reflect'], // blacklist of modules / namespaces, by default - empty list - library: false, // flag for build without global namespace pollution, by default - false - umd: true // use UMD wrapper for export `core` object, by default - true -}).then(code => { - // ... -}).catch(error => { - // ... -}); -``` -## Supported engines -**Tested in:** -- Chrome 26+ -- Firefox 4+ -- Safari 5+ -- Opera 12+ -- Internet Explorer 6+ (sure, IE8- with ES3 limitations) -- Edge -- Android Browser 2.3+ -- iOS Safari 5.1+ -- PhantomJS 1.9 / 2.1 -- NodeJS 0.8+ - -...and it doesn't mean `core-js` will not work in other engines, they just have not been tested. - -## Features: -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library) <- all features -core-js(/library)/shim <- only polyfills -``` -### ECMAScript 5 -All features moved to the [`es6` namespace](#ecmascript-6), here just a list of features: -```js -Object - .create(proto | null, descriptors?) -> object - .getPrototypeOf(object) -> proto | null - .defineProperty(target, key, desc) -> target, cap for ie8- - .defineProperties(target, descriptors) -> target, cap for ie8- - .getOwnPropertyDescriptor(object, key) -> desc - .getOwnPropertyNames(object) -> array - .keys(object) -> array - .seal(object) -> object, cap for ie8- - .freeze(object) -> object, cap for ie8- - .preventExtensions(object) -> object, cap for ie8- - .isSealed(object) -> bool, cap for ie8- - .isFrozen(object) -> bool, cap for ie8- - .isExtensible(object) -> bool, cap for ie8- -Array - .isArray(var) -> bool - #slice(start?, end?) -> array, fix for ie7- - #join(string = ',') -> string, fix for ie7- - #indexOf(var, from?) -> int - #lastIndexOf(var, from?) -> int - #every(fn(val, index, @), that) -> bool - #some(fn(val, index, @), that) -> bool - #forEach(fn(val, index, @), that) -> void - #map(fn(val, index, @), that) -> array - #filter(fn(val, index, @), that) -> array - #reduce(fn(memo, val, index, @), memo?) -> var - #reduceRight(fn(memo, val, index, @), memo?) -> var - #sort(fn?) -> @, fixes for some engines -Function - #bind(object, ...args) -> boundFn(...args) -String - #split(separator, limit) -> array - #trim() -> str -RegExp - #toString() -> str -Number - #toFixed(digits) -> string - #toPrecision(precision) -> string -parseInt(str, radix) -> int -parseFloat(str) -> num -Date - .now() -> int - #toISOString() -> string - #toJSON() -> string -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es5 -``` - -### ECMAScript 6 -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6 -``` -#### ECMAScript 6: Object -Modules [`es6.object.assign`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.assign.js), [`es6.object.is`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.is.js), [`es6.object.set-prototype-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.set-prototype-of.js) and [`es6.object.to-string`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.to-string.js). - -In ES6 most `Object` static methods should work with primitives. Modules [`es6.object.freeze`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.freeze.js), [`es6.object.seal`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.seal.js), [`es6.object.prevent-extensions`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.prevent-extensions.js), [`es6.object.is-frozen`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.is-frozen.js), [`es6.object.is-sealed`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.is-sealed.js), [`es6.object.is-extensible`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.is-extensible.js), [`es6.object.get-own-property-descriptor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.get-own-property-descriptor.js), [`es6.object.get-prototype-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.get-prototype-of.js), [`es6.object.keys`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.keys.js) and [`es6.object.get-own-property-names`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.get-own-property-names.js). - -Just ES5 features: [`es6.object.create`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.create.js), [`es6.object.define-property`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.define-property.js) and [`es6.object.define-properties`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.object.es6.object.define-properties.js). -```js -Object - .assign(target, ...src) -> target - .is(a, b) -> bool - .setPrototypeOf(target, proto | null) -> target (required __proto__ - IE11+) - .create(object | null, descriptors?) -> object - .getPrototypeOf(var) -> object | null - .defineProperty(object, key, desc) -> target - .defineProperties(object, descriptors) -> target - .getOwnPropertyDescriptor(var, key) -> desc | undefined - .keys(var) -> array - .getOwnPropertyNames(var) -> array - .freeze(var) -> var - .seal(var) -> var - .preventExtensions(var) -> var - .isFrozen(var) -> bool - .isSealed(var) -> bool - .isExtensible(var) -> bool - #toString() -> string, ES6 fix: @@toStringTag support -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/object -core-js(/library)/fn/object/assign -core-js(/library)/fn/object/is -core-js(/library)/fn/object/set-prototype-of -core-js(/library)/fn/object/get-prototype-of -core-js(/library)/fn/object/create -core-js(/library)/fn/object/define-property -core-js(/library)/fn/object/define-properties -core-js(/library)/fn/object/get-own-property-descriptor -core-js(/library)/fn/object/keys -core-js(/library)/fn/object/get-own-property-names -core-js(/library)/fn/object/freeze -core-js(/library)/fn/object/seal -core-js(/library)/fn/object/prevent-extensions -core-js(/library)/fn/object/is-frozen -core-js(/library)/fn/object/is-sealed -core-js(/library)/fn/object/is-extensible -core-js/fn/object/to-string -``` -[*Examples*](http://goo.gl/ywdwPz): -```js -var foo = {q: 1, w: 2} - , bar = {e: 3, r: 4} - , baz = {t: 5, y: 6}; -Object.assign(foo, bar, baz); // => foo = {q: 1, w: 2, e: 3, r: 4, t: 5, y: 6} - -Object.is(NaN, NaN); // => true -Object.is(0, -0); // => false -Object.is(42, 42); // => true -Object.is(42, '42'); // => false - -function Parent(){} -function Child(){} -Object.setPrototypeOf(Child.prototype, Parent.prototype); -new Child instanceof Child; // => true -new Child instanceof Parent; // => true - -var O = {}; -O[Symbol.toStringTag] = 'Foo'; -'' + O; // => '[object Foo]' - -Object.keys('qwe'); // => ['0', '1', '2'] -Object.getPrototypeOf('qwe') === String.prototype; // => true -``` -#### ECMAScript 6: Function -Modules [`es6.function.name`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.function.name.js), [`es6.function.has-instance`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.function.has-instance.js). Just ES5: [`es6.function.bind`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.function.bind.js). -```js -Function - #bind(object, ...args) -> boundFn(...args) - #name -> string (IE9+) - #@@hasInstance(var) -> bool -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js/es6/function -core-js/fn/function/name -core-js/fn/function/has-instance -core-js/fn/function/bind -core-js/fn/function/virtual/bind -``` -[*Example*](http://goo.gl/zqu3Wp): -```js -(function foo(){}).name // => 'foo' - -console.log.bind(console, 42)(43); // => 42 43 -``` -#### ECMAScript 6: Array -Modules [`es6.array.from`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.from.js), [`es6.array.of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.of.js), [`es6.array.copy-within`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.copy-within.js), [`es6.array.fill`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.fill.js), [`es6.array.find`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.find.js), [`es6.array.find-index`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.find-index.js), [`es6.array.iterator`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.iterator.js). ES5 features with fixes: [`es6.array.is-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.is-array.js), [`es6.array.slice`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.slice.js), [`es6.array.join`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.join.js), [`es6.array.index-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.index-of.js), [`es6.array.last-index-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.last-index-of.js), [`es6.array.every`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.every.js), [`es6.array.some`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.some.js), [`es6.array.for-each`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.for-each.js), [`es6.array.map`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.map.js), [`es6.array.filter`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.filter.js), [`es6.array.reduce`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.reduce.js), [`es6.array.reduce-right`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.reduce-right.js), [`es6.array.sort`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.array.sort.js). -```js -Array - .from(iterable | array-like, mapFn(val, index)?, that) -> array - .of(...args) -> array - .isArray(var) -> bool - #copyWithin(target = 0, start = 0, end = @length) -> @ - #fill(val, start = 0, end = @length) -> @ - #find(fn(val, index, @), that) -> val - #findIndex(fn(val, index, @), that) -> index | -1 - #values() -> iterator - #keys() -> iterator - #entries() -> iterator - #join(string = ',') -> string, fix for ie7- - #slice(start?, end?) -> array, fix for ie7- - #indexOf(var, from?) -> index | -1 - #lastIndexOf(var, from?) -> index | -1 - #every(fn(val, index, @), that) -> bool - #some(fn(val, index, @), that) -> bool - #forEach(fn(val, index, @), that) -> void - #map(fn(val, index, @), that) -> array - #filter(fn(val, index, @), that) -> array - #reduce(fn(memo, val, index, @), memo?) -> var - #reduceRight(fn(memo, val, index, @), memo?) -> var - #sort(fn?) -> @, invalid arguments fix - #@@iterator() -> iterator (values) - #@@unscopables -> object (cap) -Arguments - #@@iterator() -> iterator (values, available only in core-js methods) -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/array -core-js(/library)/fn/array/from -core-js(/library)/fn/array/of -core-js(/library)/fn/array/is-array -core-js(/library)/fn/array/iterator -core-js(/library)/fn/array/copy-within -core-js(/library)/fn/array/fill -core-js(/library)/fn/array/find -core-js(/library)/fn/array/find-index -core-js(/library)/fn/array/values -core-js(/library)/fn/array/keys -core-js(/library)/fn/array/entries -core-js(/library)/fn/array/slice -core-js(/library)/fn/array/join -core-js(/library)/fn/array/index-of -core-js(/library)/fn/array/last-index-of -core-js(/library)/fn/array/every -core-js(/library)/fn/array/some -core-js(/library)/fn/array/for-each -core-js(/library)/fn/array/map -core-js(/library)/fn/array/filter -core-js(/library)/fn/array/reduce -core-js(/library)/fn/array/reduce-right -core-js(/library)/fn/array/sort -core-js(/library)/fn/array/virtual/iterator -core-js(/library)/fn/array/virtual/copy-within -core-js(/library)/fn/array/virtual/fill -core-js(/library)/fn/array/virtual/find -core-js(/library)/fn/array/virtual/find-index -core-js(/library)/fn/array/virtual/values -core-js(/library)/fn/array/virtual/keys -core-js(/library)/fn/array/virtual/entries -core-js(/library)/fn/array/virtual/slice -core-js(/library)/fn/array/virtual/join -core-js(/library)/fn/array/virtual/index-of -core-js(/library)/fn/array/virtual/last-index-of -core-js(/library)/fn/array/virtual/every -core-js(/library)/fn/array/virtual/some -core-js(/library)/fn/array/virtual/for-each -core-js(/library)/fn/array/virtual/map -core-js(/library)/fn/array/virtual/filter -core-js(/library)/fn/array/virtual/reduce -core-js(/library)/fn/array/virtual/reduce-right -core-js(/library)/fn/array/virtual/sort -``` -[*Examples*](http://goo.gl/oaUFUf): -```js -Array.from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -Array.from({0: 1, 1: 2, 2: 3, length: 3}); // => [1, 2, 3] -Array.from('123', Number); // => [1, 2, 3] -Array.from('123', function(it){ - return it * it; -}); // => [1, 4, 9] - -Array.of(1); // => [1] -Array.of(1, 2, 3); // => [1, 2, 3] - -var array = ['a', 'b', 'c']; - -for(var val of array)console.log(val); // => 'a', 'b', 'c' -for(var val of array.values())console.log(val); // => 'a', 'b', 'c' -for(var key of array.keys())console.log(key); // => 0, 1, 2 -for(var [key, val] of array.entries()){ - console.log(key); // => 0, 1, 2 - console.log(val); // => 'a', 'b', 'c' -} - -function isOdd(val){ - return val % 2; -} -[4, 8, 15, 16, 23, 42].find(isOdd); // => 15 -[4, 8, 15, 16, 23, 42].findIndex(isOdd); // => 2 -[4, 8, 15, 16, 23, 42].find(isNaN); // => undefined -[4, 8, 15, 16, 23, 42].findIndex(isNaN); // => -1 - -Array(5).fill(42); // => [42, 42, 42, 42, 42] - -[1, 2, 3, 4, 5].copyWithin(0, 3); // => [4, 5, 3, 4, 5] -``` -#### ECMAScript 6: String -Modules [`es6.string.from-code-point`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.from-code-point.js), [`es6.string.raw`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.raw.js), [`es6.string.iterator`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.iterator.js), [`es6.string.code-point-at`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.code-point-at.js), [`es6.string.ends-with`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.ends-with.js), [`es6.string.includes`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.includes.js), [`es6.string.repeat`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.repeat.js), [`es6.string.starts-with`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.starts-with.js) and [`es6.string.trim`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.trim.js). - -Annex B HTML methods. Ugly, but it's also the part of the spec. Modules [`es6.string.anchor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.anchor.js), [`es6.string.big`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.big.js), [`es6.string.blink`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.blink.js), [`es6.string.bold`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.bold.js), [`es6.string.fixed`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.fixed.js), [`es6.string.fontcolor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.fontcolor.js), [`es6.string.fontsize`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.fontsize.js), [`es6.string.italics`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.italics.js), [`es6.string.link`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.link.js), [`es6.string.small`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.small.js), [`es6.string.strike`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.strike.js), [`es6.string.sub`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.sub.js) and [`es6.string.sup`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.string.sup.js). -```js -String - .fromCodePoint(...codePoints) -> str - .raw({raw}, ...substitutions) -> str - #includes(str, from?) -> bool - #startsWith(str, from?) -> bool - #endsWith(str, from?) -> bool - #repeat(num) -> str - #codePointAt(pos) -> uint - #trim() -> str, ES6 fix - #anchor(name) -> str - #big() -> str - #blink() -> str - #bold() -> str - #fixed() -> str - #fontcolor(color) -> str - #fontsize(size) -> str - #italics() -> str - #link(url) -> str - #small() -> str - #strike() -> str - #sub() -> str - #sup() -> str - #@@iterator() -> iterator (code points) -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/string -core-js(/library)/fn/string/from-code-point -core-js(/library)/fn/string/raw -core-js(/library)/fn/string/includes -core-js(/library)/fn/string/starts-with -core-js(/library)/fn/string/ends-with -core-js(/library)/fn/string/repeat -core-js(/library)/fn/string/code-point-at -core-js(/library)/fn/string/trim -core-js(/library)/fn/string/anchor -core-js(/library)/fn/string/big -core-js(/library)/fn/string/blink -core-js(/library)/fn/string/bold -core-js(/library)/fn/string/fixed -core-js(/library)/fn/string/fontcolor -core-js(/library)/fn/string/fontsize -core-js(/library)/fn/string/italics -core-js(/library)/fn/string/link -core-js(/library)/fn/string/small -core-js(/library)/fn/string/strike -core-js(/library)/fn/string/sub -core-js(/library)/fn/string/sup -core-js(/library)/fn/string/iterator -core-js(/library)/fn/string/virtual/includes -core-js(/library)/fn/string/virtual/starts-with -core-js(/library)/fn/string/virtual/ends-with -core-js(/library)/fn/string/virtual/repeat -core-js(/library)/fn/string/virtual/code-point-at -core-js(/library)/fn/string/virtual/trim -core-js(/library)/fn/string/virtual/anchor -core-js(/library)/fn/string/virtual/big -core-js(/library)/fn/string/virtual/blink -core-js(/library)/fn/string/virtual/bold -core-js(/library)/fn/string/virtual/fixed -core-js(/library)/fn/string/virtual/fontcolor -core-js(/library)/fn/string/virtual/fontsize -core-js(/library)/fn/string/virtual/italics -core-js(/library)/fn/string/virtual/link -core-js(/library)/fn/string/virtual/small -core-js(/library)/fn/string/virtual/strike -core-js(/library)/fn/string/virtual/sub -core-js(/library)/fn/string/virtual/sup -core-js(/library)/fn/string/virtual/iterator -``` -[*Examples*](http://goo.gl/3UaQ93): -```js -for(var val of 'a𠮷b'){ - console.log(val); // => 'a', '𠮷', 'b' -} - -'foobarbaz'.includes('bar'); // => true -'foobarbaz'.includes('bar', 4); // => false -'foobarbaz'.startsWith('foo'); // => true -'foobarbaz'.startsWith('bar', 3); // => true -'foobarbaz'.endsWith('baz'); // => true -'foobarbaz'.endsWith('bar', 6); // => true - -'string'.repeat(3); // => 'stringstringstring' - -'𠮷'.codePointAt(0); // => 134071 -String.fromCodePoint(97, 134071, 98); // => 'a𠮷b' - -var name = 'Bob'; -String.raw`Hi\n${name}!`; // => 'Hi\\nBob!' (ES6 template string syntax) -String.raw({raw: 'test'}, 0, 1, 2); // => 't0e1s2t' - -'foo'.bold(); // => 'foo' -'bar'.anchor('a"b'); // => 'bar' -'baz'.link('http://example.com'); // => 'baz' -``` -#### ECMAScript 6: RegExp -Modules [`es6.regexp.constructor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.constructor.js) and [`es6.regexp.flags`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.flags.js). - -Support well-known [symbols](#ecmascript-6-symbol) `@@match`, `@@replace`, `@@search` and `@@split`, modules [`es6.regexp.match`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.match.js), [`es6.regexp.replace`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.replace.js), [`es6.regexp.search`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.search.js) and [`es6.regexp.split`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.regexp.split.js). -``` -[new] RegExp(pattern, flags?) -> regexp, ES6 fix: can alter flags (IE9+) - #flags -> str (IE9+) - #toString() -> str, ES6 fixes - #@@match(str) -> array | null - #@@replace(str, replacer) -> string - #@@search(str) -> index - #@@split(str, limit) -> array -String - #match(tpl) -> var, ES6 fix for support @@match - #replace(tpl, replacer) -> var, ES6 fix for support @@replace - #search(tpl) -> var, ES6 fix for support @@search - #split(tpl, limit) -> var, ES6 fix for support @@split, some fixes for old engines -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js/es6/regexp -core-js/fn/regexp/constructor -core-js(/library)/fn/regexp/flags -core-js/fn/regexp/to-string -core-js/fn/regexp/match -core-js/fn/regexp/replace -core-js/fn/regexp/search -core-js/fn/regexp/split -``` -[*Examples*](http://goo.gl/PiJxBD): -```js -RegExp(/./g, 'm'); // => /./m - -/foo/.flags; // => '' -/foo/gim.flags; // => 'gim' - -'foo'.match({[Symbol.match]: _ => 1}); // => 1 -'foo'.replace({[Symbol.replace]: _ => 2}); // => 2 -'foo'.search({[Symbol.search]: _ => 3}); // => 3 -'foo'.split({[Symbol.split]: _ => 4}); // => 4 - -RegExp.prototype.toString.call({source: 'foo', flags: 'bar'}); // => '/foo/bar' -``` -#### ECMAScript 6: Number -Module [`es6.number.constructor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.constructor.js). `Number` constructor support binary and octal literals, [*example*](http://goo.gl/jRd6b3): -```js -Number('0b1010101'); // => 85 -Number('0o7654321'); // => 2054353 -``` -Modules [`es6.number.epsilon`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.epsilon.js), [`es6.number.is-finite`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.is-finite.js), [`es6.number.is-integer`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.is-integer.js), [`es6.number.is-nan`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.is-nan.js), [`es6.number.is-safe-integer`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.is-safe-integer.js), [`es6.number.max-safe-integer`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.max-safe-integer.js), [`es6.number.min-safe-integer`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.min-safe-integer.js), [`es6.number.parse-float`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.parse-float.js), [`es6.number.parse-int`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.parse-int.js), [`es6.number.to-fixed`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.to-fixed.js), [`es6.number.to-precision`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.number.to-precision.js), [`es6.parse-int`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.parse-int.js), [`es6.parse-float`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.parse-float.js). -```js -[new] Number(var) -> number | number object - .isFinite(num) -> bool - .isNaN(num) -> bool - .isInteger(num) -> bool - .isSafeInteger(num) -> bool - .parseFloat(str) -> num - .parseInt(str) -> int - .EPSILON -> num - .MAX_SAFE_INTEGER -> int - .MIN_SAFE_INTEGER -> int - #toFixed(digits) -> string, fixes - #toPrecision(precision) -> string, fixes -parseFloat(str) -> num, fixes -parseInt(str) -> int, fixes -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/number -core-js/es6/number/constructor -core-js(/library)/fn/number/is-finite -core-js(/library)/fn/number/is-nan -core-js(/library)/fn/number/is-integer -core-js(/library)/fn/number/is-safe-integer -core-js(/library)/fn/number/parse-float -core-js(/library)/fn/number/parse-int -core-js(/library)/fn/number/epsilon -core-js(/library)/fn/number/max-safe-integer -core-js(/library)/fn/number/min-safe-integer -core-js(/library)/fn/number/to-fixed -core-js(/library)/fn/number/to-precision -core-js(/library)/fn/parse-float -core-js(/library)/fn/parse-int -``` -#### ECMAScript 6: Math -Modules [`es6.math.acosh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.acosh.js), [`es6.math.asinh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.asinh.js), [`es6.math.atanh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.atanh.js), [`es6.math.cbrt`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.cbrt.js), [`es6.math.clz32`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.clz32.js), [`es6.math.cosh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.cosh.js), [`es6.math.expm1`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.expm1.js), [`es6.math.fround`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.fround.js), [`es6.math.hypot`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.hypot.js), [`es6.math.imul`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.imul.js), [`es6.math.log10`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.log10.js), [`es6.math.log1p`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.log1p.js), [`es6.math.log2`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.log2.js), [`es6.math.sign`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.sign.js), [`es6.math.sinh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.sinh.js), [`es6.math.tanh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.tanh.js), [`es6.math.trunc`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.math.trunc.js). -```js -Math - .acosh(num) -> num - .asinh(num) -> num - .atanh(num) -> num - .cbrt(num) -> num - .clz32(num) -> uint - .cosh(num) -> num - .expm1(num) -> num - .fround(num) -> num - .hypot(...args) -> num - .imul(num, num) -> int - .log1p(num) -> num - .log10(num) -> num - .log2(num) -> num - .sign(num) -> 1 | -1 | 0 | -0 | NaN - .sinh(num) -> num - .tanh(num) -> num - .trunc(num) -> num -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/math -core-js(/library)/fn/math/acosh -core-js(/library)/fn/math/asinh -core-js(/library)/fn/math/atanh -core-js(/library)/fn/math/cbrt -core-js(/library)/fn/math/clz32 -core-js(/library)/fn/math/cosh -core-js(/library)/fn/math/expm1 -core-js(/library)/fn/math/fround -core-js(/library)/fn/math/hypot -core-js(/library)/fn/math/imul -core-js(/library)/fn/math/log1p -core-js(/library)/fn/math/log10 -core-js(/library)/fn/math/log2 -core-js(/library)/fn/math/sign -core-js(/library)/fn/math/sinh -core-js(/library)/fn/math/tanh -core-js(/library)/fn/math/trunc -``` -#### ECMAScript 6: Date -Modules [`es6.date.to-string`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.date.to-string.js), ES5 features with fixes: [`es6.date.now`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.date.now.js), [`es6.date.to-iso-string`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.date.to-iso-string.js), [`es6.date.to-json`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.date.to-json.js) and [`es6.date.to-primitive`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.date.to-primitive.js). -```js -Date - .now() -> int - #toISOString() -> string - #toJSON() -> string - #toString() -> string - #@@toPrimitive(hint) -> primitive -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js/es6/date -core-js/fn/date/to-string -core-js(/library)/fn/date/now -core-js(/library)/fn/date/to-iso-string -core-js(/library)/fn/date/to-json -core-js(/library)/fn/date/to-primitive -``` -[*Example*](http://goo.gl/haeHLR): -```js -new Date(NaN).toString(); // => 'Invalid Date' -``` - -#### ECMAScript 6: Promise -Module [`es6.promise`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.promise.js). -```js -new Promise(executor(resolve(var), reject(var))) -> promise - #then(resolved(var), rejected(var)) -> promise - #catch(rejected(var)) -> promise - .resolve(promise | var) -> promise - .reject(var) -> promise - .all(iterable) -> promise - .race(iterable) -> promise -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/promise -core-js(/library)/fn/promise -``` -Basic [*example*](http://goo.gl/vGrtUC): -```js -function sleepRandom(time){ - return new Promise(function(resolve, reject){ - setTimeout(resolve, time * 1e3, 0 | Math.random() * 1e3); - }); -} - -console.log('Run'); // => Run -sleepRandom(5).then(function(result){ - console.log(result); // => 869, after 5 sec. - return sleepRandom(10); -}).then(function(result){ - console.log(result); // => 202, after 10 sec. -}).then(function(){ - console.log('immediately after'); // => immediately after - throw Error('Irror!'); -}).then(function(){ - console.log('will not be displayed'); -}).catch(x => console.log(x)); // => => Error: Irror! -``` -`Promise.resolve` and `Promise.reject` [*example*](http://goo.gl/vr8TN3): -```js -Promise.resolve(42).then(x => console.log(x)); // => 42 -Promise.reject(42).catch(x => console.log(x)); // => 42 - -Promise.resolve($.getJSON('/data.json')); // => ES6 promise -``` -`Promise.all` [*example*](http://goo.gl/RdoDBZ): -```js -Promise.all([ - 'foo', - sleepRandom(5), - sleepRandom(15), - sleepRandom(10) // after 15 sec: -]).then(x => console.log(x)); // => ['foo', 956, 85, 382] -``` -`Promise.race` [*example*](http://goo.gl/L8ovkJ): -```js -function timeLimit(promise, time){ - return Promise.race([promise, new Promise(function(resolve, reject){ - setTimeout(reject, time * 1e3, Error('Await > ' + time + ' sec')); - })]); -} - -timeLimit(sleepRandom(5), 10).then(x => console.log(x)); // => 853, after 5 sec. -timeLimit(sleepRandom(15), 10).catch(x => console.log(x)); // Error: Await > 10 sec -``` -ECMAScript 7 [async functions](https://tc39.github.io/ecmascript-asyncawait) [example](http://goo.gl/wnQS4j): -```js -var delay = time => new Promise(resolve => setTimeout(resolve, time)) - -async function sleepRandom(time){ - await delay(time * 1e3); - return 0 | Math.random() * 1e3; -}; -async function sleepError(time, msg){ - await delay(time * 1e3); - throw Error(msg); -}; - -(async () => { - try { - console.log('Run'); // => Run - console.log(await sleepRandom(5)); // => 936, after 5 sec. - var [a, b, c] = await Promise.all([ - sleepRandom(5), - sleepRandom(15), - sleepRandom(10) - ]); - console.log(a, b, c); // => 210 445 71, after 15 sec. - await sleepError(5, 'Irror!'); - console.log('Will not be displayed'); - } catch(e){ - console.log(e); // => Error: 'Irror!', after 5 sec. - } -})(); -``` - -##### Unhandled rejection tracking - -In Node.js, like in native implementation, available events [`unhandledRejection`](https://nodejs.org/api/process.html#process_event_unhandledrejection) and [`rejectionHandled`](https://nodejs.org/api/process.html#process_event_rejectionhandled): -```js -process.on('unhandledRejection', (reason, promise) => console.log('unhandled', reason, promise)); -process.on('rejectionHandled', (promise) => console.log('handled', promise)); - -var p = Promise.reject(42); -// unhandled 42 [object Promise] - -setTimeout(() => p.catch(_ => _), 1e3); -// handled [object Promise] -``` -In a browser on rejection, by default, you will see notify in the console, or you can add a custom handler and a handler on handling unhandled, [*example*](http://goo.gl/Wozskl): -```js -window.onunhandledrejection = e => console.log('unhandled', e.reason, e.promise); -window.onrejectionhandled = e => console.log('handled', e.reason, e.promise); - -var p = Promise.reject(42); -// unhandled 42 [object Promise] - -setTimeout(() => p.catch(_ => _), 1e3); -// handled 42 [object Promise] -``` - -#### ECMAScript 6: Symbol -Module [`es6.symbol`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.symbol.js). -```js -Symbol(description?) -> symbol - .hasInstance -> @@hasInstance - .isConcatSpreadable -> @@isConcatSpreadable - .iterator -> @@iterator - .match -> @@match - .replace -> @@replace - .search -> @@search - .species -> @@species - .split -> @@split - .toPrimitive -> @@toPrimitive - .toStringTag -> @@toStringTag - .unscopables -> @@unscopables - .for(key) -> symbol - .keyFor(symbol) -> key - .useSimple() -> void - .useSetter() -> void -Object - .getOwnPropertySymbols(object) -> array -``` -Also wrapped some methods for correct work with `Symbol` polyfill. -```js -Object - .create(proto | null, descriptors?) -> object - .defineProperty(target, key, desc) -> target - .defineProperties(target, descriptors) -> target - .getOwnPropertyDescriptor(var, key) -> desc | undefined - .getOwnPropertyNames(var) -> array - #propertyIsEnumerable(key) -> bool -JSON - .stringify(target, replacer?, space?) -> string | undefined -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/symbol -core-js(/library)/fn/symbol -core-js(/library)/fn/symbol/has-instance -core-js(/library)/fn/symbol/is-concat-spreadable -core-js(/library)/fn/symbol/iterator -core-js(/library)/fn/symbol/match -core-js(/library)/fn/symbol/replace -core-js(/library)/fn/symbol/search -core-js(/library)/fn/symbol/species -core-js(/library)/fn/symbol/split -core-js(/library)/fn/symbol/to-primitive -core-js(/library)/fn/symbol/to-string-tag -core-js(/library)/fn/symbol/unscopables -core-js(/library)/fn/symbol/for -core-js(/library)/fn/symbol/key-for -``` -[*Basic example*](http://goo.gl/BbvWFc): -```js -var Person = (function(){ - var NAME = Symbol('name'); - function Person(name){ - this[NAME] = name; - } - Person.prototype.getName = function(){ - return this[NAME]; - }; - return Person; -})(); - -var person = new Person('Vasya'); -console.log(person.getName()); // => 'Vasya' -console.log(person['name']); // => undefined -console.log(person[Symbol('name')]); // => undefined, symbols are uniq -for(var key in person)console.log(key); // => only 'getName', symbols are not enumerable -``` -`Symbol.for` & `Symbol.keyFor` [*example*](http://goo.gl/0pdJjX): -```js -var symbol = Symbol.for('key'); -symbol === Symbol.for('key'); // true -Symbol.keyFor(symbol); // 'key' -``` -[*Example*](http://goo.gl/mKVOQJ) with methods for getting own object keys: -```js -var O = {a: 1}; -Object.defineProperty(O, 'b', {value: 2}); -O[Symbol('c')] = 3; -Object.keys(O); // => ['a'] -Object.getOwnPropertyNames(O); // => ['a', 'b'] -Object.getOwnPropertySymbols(O); // => [Symbol(c)] -Reflect.ownKeys(O); // => ['a', 'b', Symbol(c)] -``` -##### Caveats when using `Symbol` polyfill: - -* We can't add new primitive type, `Symbol` returns object. -* `Symbol.for` and `Symbol.keyFor` can't be shimmed cross-realm. -* By default, to hide the keys, `Symbol` polyfill defines setter in `Object.prototype`. For this reason, uncontrolled creation of symbols can cause memory leak and the `in` operator is not working correctly with `Symbol` polyfill: `Symbol() in {} // => true`. - -You can disable defining setters in `Object.prototype`. [Example](http://goo.gl/N5UD7J): -```js -Symbol.useSimple(); -var s1 = Symbol('s1') - , o1 = {}; -o1[s1] = true; -for(var key in o1)console.log(key); // => 'Symbol(s1)_t.qamkg9f3q', w/o native Symbol - -Symbol.useSetter(); -var s2 = Symbol('s2') - , o2 = {}; -o2[s2] = true; -for(var key in o2)console.log(key); // nothing -``` -* Currently, `core-js` not adds setters to `Object.prototype` for well-known symbols for correct work something like `Symbol.iterator in foo`. It can cause problems with their enumerability. -* Some problems possible with environment exotic objects (for example, IE `localStorage`). - -#### ECMAScript 6: Collections -`core-js` uses native collections in most case, just fixes methods / constructor, if it's required, and in old environment uses fast polyfill (O(1) lookup). -#### Map -Module [`es6.map`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.map.js). -```js -new Map(iterable (entries) ?) -> map - #clear() -> void - #delete(key) -> bool - #forEach(fn(val, key, @), that) -> void - #get(key) -> val - #has(key) -> bool - #set(key, val) -> @ - #size -> uint - #values() -> iterator - #keys() -> iterator - #entries() -> iterator - #@@iterator() -> iterator (entries) -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/map -core-js(/library)/fn/map -``` -[*Examples*](http://goo.gl/GWR7NI): -```js -var a = [1]; - -var map = new Map([['a', 1], [42, 2]]); -map.set(a, 3).set(true, 4); - -console.log(map.size); // => 4 -console.log(map.has(a)); // => true -console.log(map.has([1])); // => false -console.log(map.get(a)); // => 3 -map.forEach(function(val, key){ - console.log(val); // => 1, 2, 3, 4 - console.log(key); // => 'a', 42, [1], true -}); -map.delete(a); -console.log(map.size); // => 3 -console.log(map.get(a)); // => undefined -console.log(Array.from(map)); // => [['a', 1], [42, 2], [true, 4]] - -var map = new Map([['a', 1], ['b', 2], ['c', 3]]); - -for(var [key, val] of map){ - console.log(key); // => 'a', 'b', 'c' - console.log(val); // => 1, 2, 3 -} -for(var val of map.values())console.log(val); // => 1, 2, 3 -for(var key of map.keys())console.log(key); // => 'a', 'b', 'c' -for(var [key, val] of map.entries()){ - console.log(key); // => 'a', 'b', 'c' - console.log(val); // => 1, 2, 3 -} -``` -#### Set -Module [`es6.set`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.set.js). -```js -new Set(iterable?) -> set - #add(key) -> @ - #clear() -> void - #delete(key) -> bool - #forEach(fn(el, el, @), that) -> void - #has(key) -> bool - #size -> uint - #values() -> iterator - #keys() -> iterator - #entries() -> iterator - #@@iterator() -> iterator (values) -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/set -core-js(/library)/fn/set -``` -[*Examples*](http://goo.gl/bmhLwg): -```js -var set = new Set(['a', 'b', 'a', 'c']); -set.add('d').add('b').add('e'); -console.log(set.size); // => 5 -console.log(set.has('b')); // => true -set.forEach(function(it){ - console.log(it); // => 'a', 'b', 'c', 'd', 'e' -}); -set.delete('b'); -console.log(set.size); // => 4 -console.log(set.has('b')); // => false -console.log(Array.from(set)); // => ['a', 'c', 'd', 'e'] - -var set = new Set([1, 2, 3, 2, 1]); - -for(var val of set)console.log(val); // => 1, 2, 3 -for(var val of set.values())console.log(val); // => 1, 2, 3 -for(var key of set.keys())console.log(key); // => 1, 2, 3 -for(var [key, val] of set.entries()){ - console.log(key); // => 1, 2, 3 - console.log(val); // => 1, 2, 3 -} -``` -#### WeakMap -Module [`es6.weak-map`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.weak-map.js). -```js -new WeakMap(iterable (entries) ?) -> weakmap - #delete(key) -> bool - #get(key) -> val - #has(key) -> bool - #set(key, val) -> @ -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/weak-map -core-js(/library)/fn/weak-map -``` -[*Examples*](http://goo.gl/SILXyw): -```js -var a = [1] - , b = [2] - , c = [3]; - -var wmap = new WeakMap([[a, 1], [b, 2]]); -wmap.set(c, 3).set(b, 4); -console.log(wmap.has(a)); // => true -console.log(wmap.has([1])); // => false -console.log(wmap.get(a)); // => 1 -wmap.delete(a); -console.log(wmap.get(a)); // => undefined - -// Private properties store: -var Person = (function(){ - var names = new WeakMap; - function Person(name){ - names.set(this, name); - } - Person.prototype.getName = function(){ - return names.get(this); - }; - return Person; -})(); - -var person = new Person('Vasya'); -console.log(person.getName()); // => 'Vasya' -for(var key in person)console.log(key); // => only 'getName' -``` -#### WeakSet -Module [`es6.weak-set`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.weak-set.js). -```js -new WeakSet(iterable?) -> weakset - #add(key) -> @ - #delete(key) -> bool - #has(key) -> bool -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/weak-set -core-js(/library)/fn/weak-set -``` -[*Examples*](http://goo.gl/TdFbEx): -```js -var a = [1] - , b = [2] - , c = [3]; - -var wset = new WeakSet([a, b, a]); -wset.add(c).add(b).add(c); -console.log(wset.has(b)); // => true -console.log(wset.has([2])); // => false -wset.delete(b); -console.log(wset.has(b)); // => false -``` -##### Caveats when using collections polyfill: - -* Weak-collections polyfill stores values as hidden properties of keys. It works correct and not leak in most cases. However, it is desirable to store a collection longer than its keys. - -#### ECMAScript 6: Typed Arrays -Implementations and fixes `ArrayBuffer`, `DataView`, typed arrays constructors, static and prototype methods. Typed Arrays work only in environments with support descriptors (IE9+), `ArrayBuffer` and `DataView` should work anywhere. - -Modules [`es6.typed.array-buffer`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.array-buffer.js), [`es6.typed.data-view`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.data-view.js), [`es6.typed.int8-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.int8-array.js), [`es6.typed.uint8-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.uint8-array.js), [`es6.typed.uint8-clamped-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.uint8-clamped-array.js), [`es6.typed.int16-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.int16-array.js), [`es6.typed.uint16-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.uint16-array.js), [`es6.typed.int32-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.int32-array.js), [`es6.typed.uint32-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.uint32-array.js), [`es6.typed.float32-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.float32-array.js) and [`es6.typed.float64-array`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.typed.float64-array.js). -```js -new ArrayBuffer(length) -> buffer - .isView(var) -> bool - #slice(start = 0, end = @length) -> buffer - #byteLength -> uint - -new DataView(buffer, byteOffset = 0, byteLength = buffer.byteLength - byteOffset) -> view - #getInt8(offset) -> int8 - #getUint8(offset) -> uint8 - #getInt16(offset, littleEndian = false) -> int16 - #getUint16(offset, littleEndian = false) -> uint16 - #getInt32(offset, littleEndian = false) -> int32 - #getUint32(offset, littleEndian = false) -> uint32 - #getFloat32(offset, littleEndian = false) -> float32 - #getFloat64(offset, littleEndian = false) -> float64 - #setInt8(offset, value) -> void - #setUint8(offset, value) -> void - #setInt16(offset, value, littleEndian = false) -> void - #setUint16(offset, value, littleEndian = false) -> void - #setInt32(offset, value, littleEndian = false) -> void - #setUint32(offset, value, littleEndian = false) -> void - #setFloat32(offset, value, littleEndian = false) -> void - #setFloat64(offset, value, littleEndian = false) -> void - #buffer -> buffer - #byteLength -> uint - #byteOffset -> uint - -{ - Int8Array, - Uint8Array, - Uint8ClampedArray, - Int16Array, - Uint16Array, - Int32Array, - Uint32Array, - Float32Array, - Float64Array -} - new %TypedArray%(length) -> typed - new %TypedArray%(typed) -> typed - new %TypedArray%(arrayLike) -> typed - new %TypedArray%(iterable) -> typed - new %TypedArray%(buffer, byteOffset = 0, length = (buffer.byteLength - byteOffset) / @BYTES_PER_ELEMENT) -> typed - .BYTES_PER_ELEMENT -> uint - .from(arrayLike | iterable, mapFn(val, index)?, that) -> typed - .of(...args) -> typed - #BYTES_PER_ELEMENT -> uint - #copyWithin(target = 0, start = 0, end = @length) -> @ - #every(fn(val, index, @), that) -> bool - #fill(val, start = 0, end = @length) -> @ - #filter(fn(val, index, @), that) -> typed - #find(fn(val, index, @), that) -> val - #findIndex(fn(val, index, @), that) -> index - #forEach(fn(val, index, @), that) -> void - #indexOf(var, from?) -> int - #join(string = ',') -> string - #lastIndexOf(var, from?) -> int - #map(fn(val, index, @), that) -> typed - #reduce(fn(memo, val, index, @), memo?) -> var - #reduceRight(fn(memo, val, index, @), memo?) -> var - #reverse() -> @ - #set(arrayLike, offset = 0) -> void - #slice(start = 0, end = @length) -> typed - #some(fn(val, index, @), that) -> bool - #sort(fn(a, b)?) -> @ - #subarray(start = 0, end = @length) -> typed - #toString() -> string - #toLocaleString() -> string - #values() -> iterator - #keys() -> iterator - #entries() -> iterator - #@@iterator() -> iterator (values) - #buffer -> buffer - #byteLength -> uint - #byteOffset -> uint - #length -> uint -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/typed -core-js(/library)/fn/typed -core-js(/library)/fn/typed/array-buffer -core-js(/library)/fn/typed/data-view -core-js(/library)/fn/typed/int8-array -core-js(/library)/fn/typed/uint8-array -core-js(/library)/fn/typed/uint8-clamped-array -core-js(/library)/fn/typed/int16-array -core-js(/library)/fn/typed/uint16-array -core-js(/library)/fn/typed/int32-array -core-js(/library)/fn/typed/uint32-array -core-js(/library)/fn/typed/float32-array -core-js(/library)/fn/typed/float64-array -``` -[*Examples*](http://goo.gl/yla75z): -```js -new Int32Array(4); // => [0, 0, 0, 0] -new Uint8ClampedArray([1, 2, 3, 666]); // => [1, 2, 3, 255] -new Float32Array(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] - -var buffer = new ArrayBuffer(8); -var view = new DataView(buffer); -view.setFloat64(0, 123.456, true); -new Uint8Array(buffer.slice(4)); // => [47, 221, 94, 64] - -Int8Array.of(1, 1.5, 5.7, 745); // => [1, 1, 5, -23] -Uint8Array.from([1, 1.5, 5.7, 745]); // => [1, 1, 5, 233] - -var typed = new Uint8Array([1, 2, 3]); - -var a = typed.slice(1); // => [2, 3] -typed.buffer === a.buffer; // => false -var b = typed.subarray(1); // => [2, 3] -typed.buffer === b.buffer; // => true - -typed.filter(it => it % 2); // => [1, 3] -typed.map(it => it * 1.5); // => [1, 3, 4] - -for(var val of typed)console.log(val); // => 1, 2, 3 -for(var val of typed.values())console.log(val); // => 1, 2, 3 -for(var key of typed.keys())console.log(key); // => 0, 1, 2 -for(var [key, val] of typed.entries()){ - console.log(key); // => 0, 1, 2 - console.log(val); // => 1, 2, 3 -} -``` -##### Caveats when using typed arrays: - -* Typed Arrays polyfills works completely how should work by the spec, but because of internal use getter / setters on each instance, is slow and consumes significant memory. However, typed arrays polyfills required mainly for IE9 (and for `Uint8ClampedArray` in IE10 and early IE11), all modern engines have native typed arrays and requires only constructors fixes and methods. -* The current version hasn't special entry points for methods, they can be added only with constructors. It can be added in the future. -* In the `library` version we can't pollute native prototypes, so prototype methods available as constructors static. - -#### ECMAScript 6: Reflect -Modules [`es6.reflect.apply`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.apply.js), [`es6.reflect.construct`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.construct.js), [`es6.reflect.define-property`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.define-property.js), [`es6.reflect.delete-property`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.delete-property.js), [`es6.reflect.enumerate`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.enumerate.js), [`es6.reflect.get`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.get.js), [`es6.reflect.get-own-property-descriptor`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.get-own-property-descriptor.js), [`es6.reflect.get-prototype-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.get-prototype-of.js), [`es6.reflect.has`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.has.js), [`es6.reflect.is-extensible`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.is-extensible.js), [`es6.reflect.own-keys`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.own-keys.js), [`es6.reflect.prevent-extensions`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.prevent-extensions.js), [`es6.reflect.set`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.set.js), [`es6.reflect.set-prototype-of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es6.reflect.set-prototype-of.js). -```js -Reflect - .apply(target, thisArgument, argumentsList) -> var - .construct(target, argumentsList, newTarget?) -> object - .defineProperty(target, propertyKey, attributes) -> bool - .deleteProperty(target, propertyKey) -> bool - .enumerate(target) -> iterator (removed from the spec and will be removed from core-js@3) - .get(target, propertyKey, receiver?) -> var - .getOwnPropertyDescriptor(target, propertyKey) -> desc - .getPrototypeOf(target) -> object | null - .has(target, propertyKey) -> bool - .isExtensible(target) -> bool - .ownKeys(target) -> array - .preventExtensions(target) -> bool - .set(target, propertyKey, V, receiver?) -> bool - .setPrototypeOf(target, proto) -> bool (required __proto__ - IE11+) -``` -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es6/reflect -core-js(/library)/fn/reflect -core-js(/library)/fn/reflect/apply -core-js(/library)/fn/reflect/construct -core-js(/library)/fn/reflect/define-property -core-js(/library)/fn/reflect/delete-property -core-js(/library)/fn/reflect/enumerate (deprecated and will be removed from the next major release) -core-js(/library)/fn/reflect/get -core-js(/library)/fn/reflect/get-own-property-descriptor -core-js(/library)/fn/reflect/get-prototype-of -core-js(/library)/fn/reflect/has -core-js(/library)/fn/reflect/is-extensible -core-js(/library)/fn/reflect/own-keys -core-js(/library)/fn/reflect/prevent-extensions -core-js(/library)/fn/reflect/set -core-js(/library)/fn/reflect/set-prototype-of -``` -[*Examples*](http://goo.gl/gVT0cH): -```js -var O = {a: 1}; -Object.defineProperty(O, 'b', {value: 2}); -O[Symbol('c')] = 3; -Reflect.ownKeys(O); // => ['a', 'b', Symbol(c)] - -function C(a, b){ - this.c = a + b; -} - -var instance = Reflect.construct(C, [20, 22]); -instance.c; // => 42 -``` - -### ECMAScript 7+ proposals -[The TC39 process.](https://tc39.github.io/process-document/) - -[*CommonJS entry points:*](#commonjs) -``` -core-js(/library)/es7 -core-js(/library)/es7/array -core-js(/library)/es7/global -core-js(/library)/es7/string -core-js(/library)/es7/map -core-js(/library)/es7/set -core-js(/library)/es7/error -core-js(/library)/es7/math -core-js(/library)/es7/system -core-js(/library)/es7/symbol -core-js(/library)/es7/reflect -core-js(/library)/es7/observable -``` -`core-js/stage/4` entry point contains only stage 4 proposals, `core-js/stage/3` - stage 3 and stage 4, etc. -#### Stage 4 proposals - -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/4 -``` -* `{Array, %TypedArray%}#includes` [proposal](https://github.com/tc39/Array.prototype.includes) - module [`es7.array.includes`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.array.includes.js), `%TypedArray%` version in modules from [this section](#ecmascript-6-typed-arrays). -```js -Array - #includes(var, from?) -> bool -{ - Int8Array, - Uint8Array, - Uint8ClampedArray, - Int16Array, - Uint16Array, - Int32Array, - Uint32Array, - Float32Array, - Float64Array -} - #includes(var, from?) -> bool -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/array/includes -``` -[*Examples*](http://goo.gl/2Gq4ma): -```js -[1, 2, 3].includes(2); // => true -[1, 2, 3].includes(4); // => false -[1, 2, 3].includes(2, 2); // => false - -[NaN].indexOf(NaN); // => -1 -[NaN].includes(NaN); // => true -Array(1).indexOf(undefined); // => -1 -Array(1).includes(undefined); // => true -``` -* `Object.values`, `Object.entries` [proposal](https://github.com/tc39/proposal-object-values-entries) - modules [`es7.object.values`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.values.js), [`es7.object.entries`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.entries.js) -```js -Object - .values(object) -> array - .entries(object) -> array -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/object/values -core-js(/library)/fn/object/entries -``` -[*Examples*](http://goo.gl/6kuGOn): -```js -Object.values({a: 1, b: 2, c: 3}); // => [1, 2, 3] -Object.entries({a: 1, b: 2, c: 3}); // => [['a', 1], ['b', 2], ['c', 3]] - -for(let [key, value] of Object.entries({a: 1, b: 2, c: 3})){ - console.log(key); // => 'a', 'b', 'c' - console.log(value); // => 1, 2, 3 -} -``` -* `Object.getOwnPropertyDescriptors` [proposal](https://github.com/tc39/proposal-object-getownpropertydescriptors) - module [`es7.object.get-own-property-descriptors`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.get-own-property-descriptors.js) -```js -Object - .getOwnPropertyDescriptors(object) -> object -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/object/get-own-property-descriptors -``` -*Examples*: -```js -// Shallow object cloning with prototype and descriptors: -var copy = Object.create(Object.getPrototypeOf(O), Object.getOwnPropertyDescriptors(O)); -// Mixin: -Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); -``` -* `String#padStart`, `String#padEnd` [proposal](https://github.com/tc39/proposal-string-pad-start-end) - modules [`es7.string.pad-start`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.pad-start.js), [`es7.string.pad-end`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.pad-end.js) -```js -String - #padStart(length, fillStr = ' ') -> string - #padEnd(length, fillStr = ' ') -> string -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/string/pad-start -core-js(/library)/fn/string/pad-end -core-js(/library)/fn/string/virtual/pad-start -core-js(/library)/fn/string/virtual/pad-end -``` -[*Examples*](http://goo.gl/hK5ccv): -```js -'hello'.padStart(10); // => ' hello' -'hello'.padStart(10, '1234'); // => '12341hello' -'hello'.padEnd(10); // => 'hello ' -'hello'.padEnd(10, '1234'); // => 'hello12341' -``` -* `Object#__(define|lookup)[GS]etter__`, [annex B ES2017](https://github.com/tc39/ecma262/pull/381), but we haven't special namespace for that - modules [`es7.object.define-setter`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.define-setter.js), [`es7.object.define-getter`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.define-getter.js), [`es7.object.lookup-setter`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.lookup-setter.js) and [`es7.object.lookup-getter`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.object.lookup-getter.js). -```js -Object - #__defineSetter__(key, fn) -> void - #__defineGetter__(key, fn) -> void - #__lookupSetter__(key) -> fn | void - #__lookupGetter__(key) -> fn | void -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/object/define-getter -core-js(/library)/fn/object/define-setter -core-js(/library)/fn/object/lookup-getter -core-js(/library)/fn/object/lookup-setter -``` - -#### Stage 3 proposals -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/3 -``` -* `global` [proposal](https://github.com/tc39/proposal-global) - modules [`es7.global`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.global.js) and [`es7.system.global`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.system.global.js) (obsolete) -```js -global -> object -System - .global -> object (obsolete) -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/global -core-js(/library)/fn/system/global (obsolete) -``` -[*Examples*](http://goo.gl/gEqMl7): -```js -global.Array === Array; // => true -``` -* `Promise#finally` [proposal](https://github.com/tc39/proposal-promise-finally) - module [`es7.promise.finally`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.promise.finally.js) -```js -Promise - #finally(onFinally()) -> promise -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/promise/finally -``` -[*Examples*](https://goo.gl/AhyBbJ): -```js -Promise.resolve(42).finally(() => console.log('You will see it anyway')); - -Promise.reject(42).finally(() => console.log('You will see it anyway')); - -#### Stage 2 proposals -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/2 -``` -* `String#trimLeft`, `String#trimRight` / `String#trimStart`, `String#trimEnd` [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim) - modules [`es7.string.trim-left`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.trim-right.js), [`es7.string.trim-right`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.trim-right.js) -```js -String - #trimLeft() -> string - #trimRight() -> string - #trimStart() -> string - #trimEnd() -> string -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/string/trim-start -core-js(/library)/fn/string/trim-end -core-js(/library)/fn/string/trim-left -core-js(/library)/fn/string/trim-right -core-js(/library)/fn/string/virtual/trim-start -core-js(/library)/fn/string/virtual/trim-end -core-js(/library)/fn/string/virtual/trim-left -core-js(/library)/fn/string/virtual/trim-right -``` -[*Examples*](http://goo.gl/Er5lMJ): -```js -' hello '.trimLeft(); // => 'hello ' -' hello '.trimRight(); // => ' hello' -``` -``` -* `Symbol.asyncIterator` for [async iteration proposal](https://github.com/tc39/proposal-async-iteration) - module [`es7.symbol.async-iterator`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.symbol.async-iterator.js) -```js -Symbol - .asyncIterator -> @@asyncIterator -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/symbol/async-iterator -``` - -#### Stage 1 proposals -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/1 -``` -* `Promise.try` [proposal](https://github.com/tc39/proposal-promise-try) - module [`es7.promise.try`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.promise.try.js) -```js -Promise - .try(function()) -> promise -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/promise/try -``` -[*Examples*](https://goo.gl/k5GGRo): -```js -Promise.try(() => 42).then(it => console.log(`Promise, resolved as ${it}`)); - -Promise.try(() => { throw 42; }).catch(it => console.log(`Promise, rejected as ${it}`)); -``` -* `Array#flatten` and `Array#flatMap` [proposal](https://tc39.github.io/proposal-flatMap) - modules [`es7.array.flatten`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.array.flatten.js) and [`es7.array.flat-map`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.array.flat-map.js) -```js -Array - #flatten(depthArg = 1) -> array - #flatMap(fn(val, key, @), that) -> array -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/array/flatten -core-js(/library)/fn/array/flat-map -core-js(/library)/fn/array/virtual/flatten -core-js(/library)/fn/array/virtual/flat-map -``` -[*Examples*](https://goo.gl/jTXsZi): -```js -[1, [2, 3], [4, 5]].flatten(); // => [1, 2, 3, 4, 5] -[1, [2, [3, [4]]], 5].flatten(); // => [1, 2, [3, [4]], 5] -[1, [2, [3, [4]]], 5].flatten(3); // => [1, 2, 3, 4, 5] - -[{a: 1, b: 2}, {a: 3, b: 4}, {a: 5, b: 6}].flatMap(it => [it.a, it.b]); // => [1, 2, 3, 4, 5, 6] -``` -* `.of` and `.from` methods on collection constructors [proposal](https://github.com/tc39/proposal-setmap-offrom) - modules [`es7.set.of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.set.of.js), [`es7.set.from`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.set.from.js), [`es7.map.of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.map.of.js), [`es7.map.from`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.map.from.js), [`es7.weak-set.of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.weak-set.of.js), [`es7.weak-set.from`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.weak-set.from.js), [`es7.weak-map.of`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.weak-map.of.js), [`es7.weak-map.from`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.weak-map.from.js) -```js -Set - .of(...args) -> set - .from(iterable, mapFn(val, index)?, that?) -> set -Map - .of(...args) -> map - .from(iterable, mapFn(val, index)?, that?) -> map -WeakSet - .of(...args) -> weakset - .from(iterable, mapFn(val, index)?, that?) -> weakset -WeakMap - .of(...args) -> weakmap - .from(iterable, mapFn(val, index)?, that?) -> weakmap -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/set/of -core-js(/library)/fn/set/from -core-js(/library)/fn/map/of -core-js(/library)/fn/map/from -core-js(/library)/fn/weak-set/of -core-js(/library)/fn/weak-set/from -core-js(/library)/fn/weak-map/of -core-js(/library)/fn/weak-map/from -``` -[*Examples*](https://goo.gl/mSC7eU): -```js -Set.of(1, 2, 3, 2, 1); // => Set {1, 2, 3} - -Map.from([[1, 2], [3, 4]], ([key, val]) => [key ** 2, val ** 2]); // => Map {1: 4, 9: 16} -``` -* `String#matchAll` [proposal](https://github.com/tc39/String.prototype.matchAll) - module [`es7.string.match-all`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.match-all.js) -```js -String - #matchAll(regexp) -> iterator -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/string/match-all -core-js(/library)/fn/string/virtual/match-all -``` -[*Examples*](http://goo.gl/6kp9EB): -```js -for(let [_, d, D] of '1111a2b3cccc'.matchAll(/(\d)(\D)/)){ - console.log(d, D); // => 1 a, 2 b, 3 c -} -``` -* `Observable` [proposal](https://github.com/zenparsing/es-observable) - modules [`es7.observable`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.observable.js) and [`es7.symbol.observable`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.symbol.observable.js) -```js -new Observable(fn) -> observable - #subscribe(observer) -> subscription - #forEach(fn) -> promise - #@@observable() -> @ - .of(...items) -> observable - .from(observable | iterable) -> observable - .@@species -> @ -Symbol - .observable -> @@observable -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/observable -core-js(/library)/fn/symbol/observable -``` -[*Examples*](http://goo.gl/1LDywi): -```js -new Observable(observer => { - observer.next('hello'); - observer.next('world'); - observer.complete(); -}).forEach(it => console.log(it)) - .then(_ => console.log('!')); -``` -* `Math.{clamp, DEG_PER_RAD, degrees, fscale, rad-per-deg, radians, scale}` - [proposal](https://github.com/rwaldron/proposal-math-extensions) - modules - [`es7.math.clamp`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.clamp.js), - [`es7.math.DEG_PER_RAD`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.DEG_PER_RAD.js), - [`es7.math.degrees`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.degrees.js), - [`es7.math.fscale`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.fscale.js), - [`es7.math.RAD_PER_DEG`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.RAD_PER_DEG.js), - [`es7.math.radians`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.radians.js) and - [`es7.math.scale`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.scale.js) -```js -Math - .DEG_PER_RAD -> number - .RAD_PER_DEG -> number - .clamp(x, lower, upper) -> number - .degrees(radians) -> number - .fscale(x, inLow, inHigh, outLow, outHigh) -> number - .radians(degrees) -> number - .scale(x, inLow, inHigh, outLow, outHigh) -> number -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/math/clamp -core-js(/library)/fn/math/deg-per-rad -core-js(/library)/fn/math/degrees -core-js(/library)/fn/math/fscale -core-js(/library)/fn/math/rad-per-deg -core-js(/library)/fn/math/radians -core-js(/library)/fn/math/scale -``` -* `Math.signbit` [proposal](http://jfbastien.github.io/papers/Math.signbit.html) - module [`es7.math.signbit`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.signbit.js) -```js -Math - .signbit(x) -> bool -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/math/signbit -``` -[*Examples*](http://es6.zloirock.ru/): -```js -Math.signbit(NaN); // => NaN -Math.signbit(1); // => true -Math.signbit(-1); // => false -Math.signbit(0); // => true -Math.signbit(-0); // => false -``` - -#### Stage 0 proposals -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/0 -``` -* `String#at` [proposal](https://github.com/mathiasbynens/String.prototype.at) - module [`es7.string.at`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.string.at.js) -```js -String - #at(index) -> string -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/string/at -core-js(/library)/fn/string/virtual/at -``` -[*Examples*](http://goo.gl/XluXI8): -```js -'a𠮷b'.at(1); // => '𠮷' -'a𠮷b'.at(1).length; // => 2 -``` -* `Map#toJSON`, `Set#toJSON` [proposal](https://github.com/DavidBruant/Map-Set.prototype.toJSON) - modules [`es7.map.to-json`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.map.to-json.js), [`es7.set.to-json`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.set.to-json.js) (rejected and will be removed from `core-js@3`) -```js -Map - #toJSON() -> array (rejected and will be removed from core-js@3) -Set - #toJSON() -> array (rejected and will be removed from core-js@3) -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/map -core-js(/library)/fn/set -``` -* `Error.isError` [proposal](https://github.com/ljharb/proposal-is-error) - module [`es7.error.is-error`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.error.is-error.js) (withdrawn and will be removed from `core-js@3`) -```js -Error - .isError(it) -> bool (withdrawn and will be removed from core-js@3) -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/error/is-error -``` -* `Math.{iaddh, isubh, imulh, umulh}` [proposal](https://gist.github.com/BrendanEich/4294d5c212a6d2254703) - modules [`es7.math.iaddh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.iaddh.js), [`es7.math.isubh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.isubh.js), [`es7.math.imulh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.imulh.js) and [`es7.math.umulh`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.math.umulh.js) -```js -Math - .iaddh(lo0, hi0, lo1, hi1) -> int32 - .isubh(lo0, hi0, lo1, hi1) -> int32 - .imulh(a, b) -> int32 - .umulh(a, b) -> uint32 -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/math/iaddh -core-js(/library)/fn/math/isubh -core-js(/library)/fn/math/imulh -core-js(/library)/fn/math/umulh -``` -* `global.asap`, [TC39 discussion](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask), module [`es7.asap`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.asap.js) -```js -asap(fn) -> void -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/asap -``` -[*Examples*](http://goo.gl/tx3SRK): -```js -asap(() => console.log('called as microtask')); -``` - -#### Pre-stage 0 proposals -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/stage/pre -``` -* `Reflect` metadata [proposal](https://github.com/jonathandturner/decorators/blob/master/specs/metadata.md) - modules [`es7.reflect.define-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.define-metadata.js), [`es7.reflect.delete-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.delete-metadata.js), [`es7.reflect.get-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.get-metadata.js), [`es7.reflect.get-metadata-keys`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.get-metadata-keys.js), [`es7.reflect.get-own-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.get-own-metadata.js), [`es7.reflect.get-own-metadata-keys`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.get-own-metadata-keys.js), [`es7.reflect.has-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.has-metadata.js), [`es7.reflect.has-own-metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.has-own-metadata.js) and [`es7.reflect.metadata`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/es7.reflect.metadata.js). -```js -Reflect - .defineMetadata(metadataKey, metadataValue, target, propertyKey?) -> void - .getMetadata(metadataKey, target, propertyKey?) -> var - .getOwnMetadata(metadataKey, target, propertyKey?) -> var - .hasMetadata(metadataKey, target, propertyKey?) -> bool - .hasOwnMetadata(metadataKey, target, propertyKey?) -> bool - .deleteMetadata(metadataKey, target, propertyKey?) -> bool - .getMetadataKeys(target, propertyKey?) -> array - .getOwnMetadataKeys(target, propertyKey?) -> array - .metadata(metadataKey, metadataValue) -> decorator(target, targetKey?) -> void -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/reflect/define-metadata -core-js(/library)/fn/reflect/delete-metadata -core-js(/library)/fn/reflect/get-metadata -core-js(/library)/fn/reflect/get-metadata-keys -core-js(/library)/fn/reflect/get-own-metadata -core-js(/library)/fn/reflect/get-own-metadata-keys -core-js(/library)/fn/reflect/has-metadata -core-js(/library)/fn/reflect/has-own-metadata -core-js(/library)/fn/reflect/metadata -``` -[*Examples*](http://goo.gl/KCo3PS): -```js -var O = {}; -Reflect.defineMetadata('foo', 'bar', O); -Reflect.ownKeys(O); // => [] -Reflect.getOwnMetadataKeys(O); // => ['foo'] -Reflect.getOwnMetadata('foo', O); // => 'bar' -``` - -### Web standards -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/web -``` -#### setTimeout / setInterval -Module [`web.timers`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/web.timers.js). Additional arguments fix for IE9-. -```js -setTimeout(fn(...args), time, ...args) -> id -setInterval(fn(...args), time, ...args) -> id -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/web/timers -core-js(/library)/fn/set-timeout -core-js(/library)/fn/set-interval -``` -```js -// Before: -setTimeout(log.bind(null, 42), 1000); -// After: -setTimeout(log, 1000, 42); -``` -#### setImmediate -Module [`web.immediate`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/web.immediate.js). [`setImmediate` proposal](https://developer.mozilla.org/en-US/docs/Web/API/Window.setImmediate) polyfill. -```js -setImmediate(fn(...args), ...args) -> id -clearImmediate(id) -> void -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/web/immediate -core-js(/library)/fn/set-immediate -core-js(/library)/fn/clear-immediate -``` -[*Examples*](http://goo.gl/6nXGrx): -```js -setImmediate(function(arg1, arg2){ - console.log(arg1, arg2); // => Message will be displayed with minimum delay -}, 'Message will be displayed', 'with minimum delay'); - -clearImmediate(setImmediate(function(){ - console.log('Message will not be displayed'); -})); -``` -#### Iterable DOM collections -Some DOM collections should have [iterable interface](https://heycam.github.io/webidl/#idl-iterable) or should be [inherited from `Array`](https://heycam.github.io/webidl/#LegacyArrayClass). That mean they should have `keys`, `values`, `entries` and `@@iterator` methods for iteration. So add them. Module [`web.dom.iterable`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/web.dom.iterable.js): -```js -{ - CSSRuleList, - CSSStyleDeclaration, - CSSValueList, - ClientRectList, - DOMRectList, - DOMStringList, - DOMTokenList, - DataTransferItemList, - FileList, - HTMLAllCollection, - HTMLCollection, - HTMLFormElement, - HTMLSelectElement, - MediaList, - MimeTypeArray, - NamedNodeMap, - NodeList, - PaintRequestList, - Plugin, - PluginArray, - SVGLengthList, - SVGNumberList, - SVGPathSegList, - SVGPointList, - SVGStringList, - SVGTransformList, - SourceBufferList, - StyleSheetList, - TextTrackCueList, - TextTrackList, - TouchList -} - #@@iterator() -> iterator (values) - -{ - DOMTokenList, - NodeList -} - #values() -> iterator - #keys() -> iterator - #entries() -> iterator -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/web/dom-collections -core-js(/library)/fn/dom-collections/iterator -``` -[*Examples*](http://goo.gl/lfXVFl): -```js -for(var {id} of document.querySelectorAll('*')){ - if(id)console.log(id); -} - -for(var [index, {id}] of document.querySelectorAll('*').entries()){ - if(id)console.log(index, id); -} -``` -### Non-standard -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core -``` -#### Object -Modules [`core.object.is-object`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.object.is-object.js), [`core.object.classof`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.object.classof.js), [`core.object.define`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.object.define.js), [`core.object.make`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.object.make.js). -```js -Object - .isObject(var) -> bool - .classof(var) -> string - .define(target, mixin) -> target - .make(proto | null, mixin?) -> object -``` - -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core/object -core-js(/library)/fn/object/is-object -core-js(/library)/fn/object/define -core-js(/library)/fn/object/make -``` -Object classify [*examples*](http://goo.gl/YZQmGo): -```js -Object.isObject({}); // => true -Object.isObject(isNaN); // => true -Object.isObject(null); // => false - -var classof = Object.classof; - -classof(null); // => 'Null' -classof(undefined); // => 'Undefined' -classof(1); // => 'Number' -classof(true); // => 'Boolean' -classof('string'); // => 'String' -classof(Symbol()); // => 'Symbol' - -classof(new Number(1)); // => 'Number' -classof(new Boolean(true)); // => 'Boolean' -classof(new String('string')); // => 'String' - -var fn = function(){} - , list = (function(){return arguments})(1, 2, 3); - -classof({}); // => 'Object' -classof(fn); // => 'Function' -classof([]); // => 'Array' -classof(list); // => 'Arguments' -classof(/./); // => 'RegExp' -classof(new TypeError); // => 'Error' - -classof(new Set); // => 'Set' -classof(new Map); // => 'Map' -classof(new WeakSet); // => 'WeakSet' -classof(new WeakMap); // => 'WeakMap' -classof(new Promise(fn)); // => 'Promise' - -classof([].values()); // => 'Array Iterator' -classof(new Set().values()); // => 'Set Iterator' -classof(new Map().values()); // => 'Map Iterator' - -classof(Math); // => 'Math' -classof(JSON); // => 'JSON' - -function Example(){} -Example.prototype[Symbol.toStringTag] = 'Example'; - -classof(new Example); // => 'Example' -``` -`Object.define` and `Object.make` [*examples*](http://goo.gl/rtpD5Z): -```js -// Before: -Object.defineProperty(target, 'c', { - enumerable: true, - configurable: true, - get: function(){ - return this.a + this.b; - } -}); - -// After: -Object.define(target, { - get c(){ - return this.a + this.b; - } -}); - -// Shallow object cloning with prototype and descriptors: -var copy = Object.make(Object.getPrototypeOf(src), src); - -// Simple inheritance: -function Vector2D(x, y){ - this.x = x; - this.y = y; -} -Object.define(Vector2D.prototype, { - get xy(){ - return Math.hypot(this.x, this.y); - } -}); -function Vector3D(x, y, z){ - Vector2D.apply(this, arguments); - this.z = z; -} -Vector3D.prototype = Object.make(Vector2D.prototype, { - constructor: Vector3D, - get xyz(){ - return Math.hypot(this.x, this.y, this.z); - } -}); - -var vector = new Vector3D(9, 12, 20); -console.log(vector.xy); // => 15 -console.log(vector.xyz); // => 25 -vector.y++; -console.log(vector.xy); // => 15.811388300841896 -console.log(vector.xyz); // => 25.495097567963924 -``` -#### Dict -Module [`core.dict`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.dict.js). Based on [TC39 discuss](https://github.com/rwaldron/tc39-notes/blob/master/es6/2012-11/nov-29.md#collection-apis-review) / [strawman](http://wiki.ecmascript.org/doku.php?id=harmony:modules_standard#dictionaries). -```js -[new] Dict(iterable (entries) | object ?) -> dict - .isDict(var) -> bool - .values(object) -> iterator - .keys(object) -> iterator - .entries(object) -> iterator (entries) - .has(object, key) -> bool - .get(object, key) -> val - .set(object, key, value) -> object - .forEach(object, fn(val, key, @), that) -> void - .map(object, fn(val, key, @), that) -> new @ - .mapPairs(object, fn(val, key, @), that) -> new @ - .filter(object, fn(val, key, @), that) -> new @ - .some(object, fn(val, key, @), that) -> bool - .every(object, fn(val, key, @), that) -> bool - .find(object, fn(val, key, @), that) -> val - .findKey(object, fn(val, key, @), that) -> key - .keyOf(object, var) -> key - .includes(object, var) -> bool - .reduce(object, fn(memo, val, key, @), memo?) -> var -``` - -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core/dict -core-js(/library)/fn/dict -``` -`Dict` create object without prototype from iterable or simple object. - -[*Examples*](http://goo.gl/pnp8Vr): -```js -var map = new Map([['a', 1], ['b', 2], ['c', 3]]); - -Dict(); // => {__proto__: null} -Dict({a: 1, b: 2, c: 3}); // => {__proto__: null, a: 1, b: 2, c: 3} -Dict(map); // => {__proto__: null, a: 1, b: 2, c: 3} -Dict([1, 2, 3].entries()); // => {__proto__: null, 0: 1, 1: 2, 2: 3} - -var dict = Dict({a: 42}); -dict instanceof Object; // => false -dict.a; // => 42 -dict.toString; // => undefined -'a' in dict; // => true -'hasOwnProperty' in dict; // => false - -Dict.isDict({}); // => false -Dict.isDict(Dict()); // => true -``` -`Dict.keys`, `Dict.values` and `Dict.entries` returns iterators for objects. - -[*Examples*](http://goo.gl/xAvECH): -```js -var dict = {a: 1, b: 2, c: 3}; - -for(var key of Dict.keys(dict))console.log(key); // => 'a', 'b', 'c' - -for(var val of Dict.values(dict))console.log(val); // => 1, 2, 3 - -for(var [key, val] of Dict.entries(dict)){ - console.log(key); // => 'a', 'b', 'c' - console.log(val); // => 1, 2, 3 -} - -new Map(Dict.entries(dict)); // => Map {a: 1, b: 2, c: 3} -``` -Basic dict operations for objects with prototype [*examples*](http://goo.gl/B28UnG): -```js -'q' in {q: 1}; // => true -'toString' in {}; // => true - -Dict.has({q: 1}, 'q'); // => true -Dict.has({}, 'toString'); // => false - -({q: 1})['q']; // => 1 -({}).toString; // => function toString(){ [native code] } - -Dict.get({q: 1}, 'q'); // => 1 -Dict.get({}, 'toString'); // => undefined - -var O = {}; -O['q'] = 1; -O['q']; // => 1 -O['__proto__'] = {w: 2}; -O['__proto__']; // => {w: 2} -O['w']; // => 2 - -var O = {}; -Dict.set(O, 'q', 1); -O['q']; // => 1 -Dict.set(O, '__proto__', {w: 2}); -O['__proto__']; // => {w: 2} -O['w']; // => undefined -``` -Other methods of `Dict` module are static equivalents of `Array.prototype` methods for dictionaries. - -[*Examples*](http://goo.gl/xFi1RH): -```js -var dict = {a: 1, b: 2, c: 3}; - -Dict.forEach(dict, console.log, console); -// => 1, 'a', {a: 1, b: 2, c: 3} -// => 2, 'b', {a: 1, b: 2, c: 3} -// => 3, 'c', {a: 1, b: 2, c: 3} - -Dict.map(dict, function(it){ - return it * it; -}); // => {a: 1, b: 4, c: 9} - -Dict.mapPairs(dict, function(val, key){ - if(key != 'b')return [key + key, val * val]; -}); // => {aa: 1, cc: 9} - -Dict.filter(dict, function(it){ - return it % 2; -}); // => {a: 1, c: 3} - -Dict.some(dict, function(it){ - return it === 2; -}); // => true - -Dict.every(dict, function(it){ - return it === 2; -}); // => false - -Dict.find(dict, function(it){ - return it > 2; -}); // => 3 -Dict.find(dict, function(it){ - return it > 4; -}); // => undefined - -Dict.findKey(dict, function(it){ - return it > 2; -}); // => 'c' -Dict.findKey(dict, function(it){ - return it > 4; -}); // => undefined - -Dict.keyOf(dict, 2); // => 'b' -Dict.keyOf(dict, 4); // => undefined - -Dict.includes(dict, 2); // => true -Dict.includes(dict, 4); // => false - -Dict.reduce(dict, function(memo, it){ - return memo + it; -}); // => 6 -Dict.reduce(dict, function(memo, it){ - return memo + it; -}, ''); // => '123' -``` -#### Partial application -Module [`core.function.part`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.function.part.js). -```js -Function - #part(...args | _) -> fn(...args) -``` - -[*CommonJS entry points:*](#commonjs) -```js -core-js/core/function -core-js(/library)/fn/function/part -core-js(/library)/fn/function/virtual/part -core-js(/library)/fn/_ -``` -`Function#part` partial apply function without `this` binding. Uses global variable `_` (`core._` for builds without global namespace pollution) as placeholder and not conflict with `Underscore` / `LoDash`. - -[*Examples*](http://goo.gl/p9ZJ8K): -```js -var fn1 = log.part(1, 2); -fn1(3, 4); // => 1, 2, 3, 4 - -var fn2 = log.part(_, 2, _, 4); -fn2(1, 3); // => 1, 2, 3, 4 - -var fn3 = log.part(1, _, _, 4); -fn3(2, 3); // => 1, 2, 3, 4 - -fn2(1, 3, 5); // => 1, 2, 3, 4, 5 -fn2(1); // => 1, 2, undefined, 4 -``` -#### Number Iterator -Module [`core.number.iterator`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.number.iterator.js). -```js -Number - #@@iterator() -> iterator -``` - -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core/number -core-js(/library)/fn/number/iterator -core-js(/library)/fn/number/virtual/iterator -``` -[*Examples*](http://goo.gl/o45pCN): -```js -for(var i of 3)console.log(i); // => 0, 1, 2 - -[...10]; // => [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] - -Array.from(10, Math.random); // => [0.9817775336559862, 0.02720663254149258, ...] - -Array.from(10, function(it){ - return this + it * it; -}, .42); // => [0.42, 1.42, 4.42, 9.42, 16.42, 25.42, 36.42, 49.42, 64.42, 81.42] -``` -#### Escaping strings -Modules [`core.regexp.escape`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.regexp.escape.js), [`core.string.escape-html`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.string.escape-html.js) and [`core.string.unescape-html`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.string.unescape-html.js). -```js -RegExp - .escape(str) -> str -String - #escapeHTML() -> str - #unescapeHTML() -> str -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core/regexp -core-js(/library)/core/string -core-js(/library)/fn/regexp/escape -core-js(/library)/fn/string/escape-html -core-js(/library)/fn/string/unescape-html -core-js(/library)/fn/string/virtual/escape-html -core-js(/library)/fn/string/virtual/unescape-html -``` -[*Examples*](http://goo.gl/6bOvsQ): -```js -RegExp.escape('Hello, []{}()*+?.\\^$|!'); // => 'Hello, \[\]\{\}\(\)\*\+\?\.\\\^\$\|!' - -''.escapeHTML(); // => '<script>doSomething();</script>' -'<script>doSomething();</script>'.unescapeHTML(); // => '' -``` -#### delay -Module [`core.delay`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.delay.js). [Promise](#ecmascript-6-promise)-returning delay function, [esdiscuss](https://esdiscuss.org/topic/promise-returning-delay-function). -```js -delay(ms) -> promise -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/core/delay -core-js(/library)/fn/delay -``` -[*Examples*](http://goo.gl/lbucba): -```js -delay(1e3).then(() => console.log('after 1 sec')); - -(async () => { - await delay(3e3); - console.log('after 3 sec'); - - while(await delay(3e3))console.log('each 3 sec'); -})(); -``` -#### Helpers for iterators -Modules [`core.is-iterable`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.is-iterable.js), [`core.get-iterator`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.get-iterator.js), [`core.get-iterator-method`](https://github.com/zloirock/core-js/blob/v2.6.9/modules/core.get-iterator-method.js) - helpers for check iterability / get iterator in the `library` version or, for example, for `arguments` object: -```js -core - .isIterable(var) -> bool - .getIterator(iterable) -> iterator - .getIteratorMethod(var) -> function | undefined -``` -[*CommonJS entry points:*](#commonjs) -```js -core-js(/library)/fn/is-iterable -core-js(/library)/fn/get-iterator -core-js(/library)/fn/get-iterator-method -``` -[*Examples*](http://goo.gl/SXsM6D): -```js -var list = (function(){ - return arguments; -})(1, 2, 3); - -console.log(core.isIterable(list)); // true; - -var iter = core.getIterator(list); -console.log(iter.next().value); // 1 -console.log(iter.next().value); // 2 -console.log(iter.next().value); // 3 -console.log(iter.next().value); // undefined - -core.getIterator({}); // TypeError: [object Object] is not iterable! - -var iterFn = core.getIteratorMethod(list); -console.log(typeof iterFn); // 'function' -var iter = iterFn.call(list); -console.log(iter.next().value); // 1 -console.log(iter.next().value); // 2 -console.log(iter.next().value); // 3 -console.log(iter.next().value); // undefined - -console.log(core.getIteratorMethod({})); // undefined -``` - -## Missing polyfills -- ES5 `JSON` is missing now only in IE7- and never will it be added to `core-js`, if you need it in these old browsers, many implementations are available, for example, [json3](https://github.com/bestiejs/json3). -- ES6 `String#normalize` is not a very useful feature, but this polyfill will be very large. If you need it, you can use [unorm](https://github.com/walling/unorm/). -- ES6 `Proxy` can't be polyfilled, but for Node.js / Chromium with additional flags you can try [harmony-reflect](https://github.com/tvcutsem/harmony-reflect) for adapt old style `Proxy` API to final ES6 version. -- ES6 logic for `@@isConcatSpreadable` and `@@species` (in most places) can be polyfilled without problems, but it will cause a serious slowdown in popular cases in some engines. It will be polyfilled when it will be implemented in modern engines. -- ES7 `SIMD`. `core-js` doesn't add polyfill of this feature because of large size and some other reasons. You can use [this polyfill](https://github.com/tc39/ecmascript_simd/blob/master/src/ecmascript_simd.js). -- `window.fetch` is not a cross-platform feature, in some environments it makes no sense. For this reason, I don't think it should be in `core-js`. Looking at a large number of requests it *may be* added in the future. Now you can use, for example, [this polyfill](https://github.com/github/fetch). -- ECMA-402 `Intl` is missed because of size. You can use [this polyfill](https://github.com/andyearnshaw/Intl.js/). diff --git a/forward_engineering/node_modules/core-js/bower.json b/forward_engineering/node_modules/core-js/bower.json deleted file mode 100644 index 4c05457..0000000 --- a/forward_engineering/node_modules/core-js/bower.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "name": "core.js", - "main": "client/core.js", - "version": "2.6.9", - "description": "Standard Library", - "keywords": [ - "ES3", - "ES5", - "ES6", - "ES7", - "ES2015", - "ES2016", - "ES2017", - "ECMAScript 3", - "ECMAScript 5", - "ECMAScript 6", - "ECMAScript 7", - "ECMAScript 2015", - "ECMAScript 2016", - "ECMAScript 2017", - "Harmony", - "Strawman", - "Map", - "Set", - "WeakMap", - "WeakSet", - "Promise", - "Symbol", - "TypedArray", - "setImmediate", - "Dict", - "polyfill", - "shim" - ], - "authors": [ - "Denis Pushkarev (http://zloirock.ru/)" - ], - "license": "MIT", - "homepage": "https://github.com/zloirock/core-js", - "repository": { - "type": "git", - "url": "https://github.com/zloirock/core-js.git" - }, - "ignore": [ - "build", - "node_modules", - "tests" - ] -} diff --git a/forward_engineering/node_modules/core-js/build/Gruntfile.ls b/forward_engineering/node_modules/core-js/build/Gruntfile.ls deleted file mode 100644 index 7b8e465..0000000 --- a/forward_engineering/node_modules/core-js/build/Gruntfile.ls +++ /dev/null @@ -1,86 +0,0 @@ -require! <[./build fs ./config]> -module.exports = (grunt)-> - grunt.loadNpmTasks \grunt-contrib-clean - grunt.loadNpmTasks \grunt-contrib-copy - grunt.loadNpmTasks \grunt-contrib-uglify - grunt.loadNpmTasks \grunt-contrib-watch - grunt.loadNpmTasks \grunt-livescript - grunt.loadNpmTasks \grunt-karma - grunt.initConfig do - pkg: grunt.file.readJSON './package.json' - uglify: build: - files: '<%=grunt.option("path")%>.min.js': '<%=grunt.option("path")%>.js' - options: - mangle: {+keep_fnames} - compress: {+keep_fnames, +pure_getters} - output: {max_line_len: 32000} - ie8: on - sourceMap: on - banner: config.banner - livescript: src: files: - './tests/helpers.js': './tests/helpers/*' - './tests/tests.js': './tests/tests/*' - './tests/library.js': './tests/library/*' - './tests/es.js': './tests/tests/es*' - './tests/experimental.js': './tests/experimental/*' - './build/index.js': './build/build.ls*' - clean: <[./library]> - copy: lib: files: - * expand: on - cwd: './' - src: <[es5/** es6/** es7/** stage/** web/** core/** fn/** index.js shim.js]> - dest: './library/' - * expand: on - cwd: './' - src: <[modules/*]> - dest: './library/' - filter: \isFile - * expand: on - cwd: './modules/library/' - src: '*' - dest: './library/modules/' - watch: - core: - files: './modules/*' - tasks: \default - tests: - files: './tests/tests/*' - tasks: \livescript - karma: - 'options': - configFile: './tests/karma.conf.js' - browsers: <[PhantomJS]> - singleRun: on - 'default': {} - 'library': files: <[client/library.js tests/helpers.js tests/library.js]>map -> src: it - grunt.registerTask \build (options)-> - done = @async! - build { - modules: (options || 'es5,es6,es7,js,web,core')split \, - blacklist: (grunt.option(\blacklist) || '')split \, - library: grunt.option(\library) in <[yes on true]> - umd: grunt.option(\umd) not in <[no off false]> - } - .then !-> - grunt.option(\path) || grunt.option(\path, './custom') - fs.writeFile grunt.option(\path) + '.js', it, done - .catch !-> - console.error it - process.exit 1 - grunt.registerTask \client -> - grunt.option \library '' - grunt.option \path './client/core' - grunt.task.run <[build:es5,es6,es7,js,web,core uglify]> - grunt.registerTask \library -> - grunt.option \library 'true' - grunt.option \path './client/library' - grunt.task.run <[build:es5,es6,es7,js,web,core uglify]> - grunt.registerTask \shim -> - grunt.option \library '' - grunt.option \path './client/shim' - grunt.task.run <[build:es5,es6,es7,js,web uglify]> - grunt.registerTask \e -> - grunt.option \library ''> - grunt.option \path './client/core' - grunt.task.run <[build:es5,es6,es7,js,web,core,exp uglify]> - grunt.registerTask \default <[clean copy client library shim]> \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/build/build.ls b/forward_engineering/node_modules/core-js/build/build.ls deleted file mode 100644 index 6dbfa58..0000000 --- a/forward_engineering/node_modules/core-js/build/build.ls +++ /dev/null @@ -1,62 +0,0 @@ -require! { - '../library/fn/promise': Promise - './config': {list, experimental, libraryBlacklist, es5SpecialCase, banner} - fs: {readFile, writeFile, unlink} - path: {basename, dirname, join} - webpack, temp -} - -module.exports = ({modules = [], blacklist = [], library = no, umd = on})-> - resolve, reject <~! new Promise _ - let @ = modules.reduce ((memo, it)-> memo[it] = on; memo), {} - if @exp => for experimental => @[..] = on - if @es5 => for es5SpecialCase => @[..] = on - for ns of @ - if @[ns] - for name in list - if name.indexOf("#ns.") is 0 and name not in experimental - @[name] = on - - if library => blacklist ++= libraryBlacklist - for ns in blacklist - for name in list - if name is ns or name.indexOf("#ns.") is 0 - @[name] = no - - TARGET = temp.path {suffix: '.js'} - - err, info <~! webpack do - entry: list.filter(~> @[it]).map ~> - if library => join __dirname, '..', 'library', 'modules', it - else join __dirname, '..', 'modules', it - output: - path: dirname TARGET - filename: basename "./#TARGET" - if err => return reject err - - err, script <~! readFile TARGET - if err => return reject err - - err <~! unlink TARGET - if err => return reject err - - if umd - exportScript = """ - // CommonJS export - if (typeof module != 'undefined' && module.exports) module.exports = __e; - // RequireJS export - else if (typeof define == 'function' && define.amd) define(function () { return __e; }); - // Export to global object - else __g.core = __e; - """ - else - exportScript = "" - - resolve """ - #banner - !function(__e, __g, undefined){ - 'use strict'; - #script - #exportScript - }(1, 1); - """ \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/build/config.js b/forward_engineering/node_modules/core-js/build/config.js deleted file mode 100644 index 0d1b234..0000000 --- a/forward_engineering/node_modules/core-js/build/config.js +++ /dev/null @@ -1,275 +0,0 @@ -module.exports = { - list: [ - 'es6.symbol', - 'es6.object.define-property', - 'es6.object.define-properties', - 'es6.object.get-own-property-descriptor', - 'es6.object.create', - 'es6.object.get-prototype-of', - 'es6.object.keys', - 'es6.object.get-own-property-names', - 'es6.object.freeze', - 'es6.object.seal', - 'es6.object.prevent-extensions', - 'es6.object.is-frozen', - 'es6.object.is-sealed', - 'es6.object.is-extensible', - 'es6.object.assign', - 'es6.object.is', - 'es6.object.set-prototype-of', - 'es6.object.to-string', - 'es6.function.bind', - 'es6.function.name', - 'es6.function.has-instance', - 'es6.number.constructor', - 'es6.number.to-fixed', - 'es6.number.to-precision', - 'es6.number.epsilon', - 'es6.number.is-finite', - 'es6.number.is-integer', - 'es6.number.is-nan', - 'es6.number.is-safe-integer', - 'es6.number.max-safe-integer', - 'es6.number.min-safe-integer', - 'es6.number.parse-float', - 'es6.number.parse-int', - 'es6.parse-int', - 'es6.parse-float', - 'es6.math.acosh', - 'es6.math.asinh', - 'es6.math.atanh', - 'es6.math.cbrt', - 'es6.math.clz32', - 'es6.math.cosh', - 'es6.math.expm1', - 'es6.math.fround', - 'es6.math.hypot', - 'es6.math.imul', - 'es6.math.log10', - 'es6.math.log1p', - 'es6.math.log2', - 'es6.math.sign', - 'es6.math.sinh', - 'es6.math.tanh', - 'es6.math.trunc', - 'es6.string.from-code-point', - 'es6.string.raw', - 'es6.string.trim', - 'es6.string.code-point-at', - 'es6.string.ends-with', - 'es6.string.includes', - 'es6.string.repeat', - 'es6.string.starts-with', - 'es6.string.iterator', - 'es6.string.anchor', - 'es6.string.big', - 'es6.string.blink', - 'es6.string.bold', - 'es6.string.fixed', - 'es6.string.fontcolor', - 'es6.string.fontsize', - 'es6.string.italics', - 'es6.string.link', - 'es6.string.small', - 'es6.string.strike', - 'es6.string.sub', - 'es6.string.sup', - 'es6.array.is-array', - 'es6.array.from', - 'es6.array.of', - 'es6.array.join', - 'es6.array.slice', - 'es6.array.sort', - 'es6.array.for-each', - 'es6.array.map', - 'es6.array.filter', - 'es6.array.some', - 'es6.array.every', - 'es6.array.reduce', - 'es6.array.reduce-right', - 'es6.array.index-of', - 'es6.array.last-index-of', - 'es6.array.copy-within', - 'es6.array.fill', - 'es6.array.find', - 'es6.array.find-index', - 'es6.array.iterator', - 'es6.array.species', - 'es6.regexp.constructor', - 'es6.regexp.exec', - 'es6.regexp.to-string', - 'es6.regexp.flags', - 'es6.regexp.match', - 'es6.regexp.replace', - 'es6.regexp.search', - 'es6.regexp.split', - 'es6.promise', - 'es6.map', - 'es6.set', - 'es6.weak-map', - 'es6.weak-set', - 'es6.reflect.apply', - 'es6.reflect.construct', - 'es6.reflect.define-property', - 'es6.reflect.delete-property', - 'es6.reflect.enumerate', - 'es6.reflect.get', - 'es6.reflect.get-own-property-descriptor', - 'es6.reflect.get-prototype-of', - 'es6.reflect.has', - 'es6.reflect.is-extensible', - 'es6.reflect.own-keys', - 'es6.reflect.prevent-extensions', - 'es6.reflect.set', - 'es6.reflect.set-prototype-of', - 'es6.date.now', - 'es6.date.to-json', - 'es6.date.to-iso-string', - 'es6.date.to-string', - 'es6.date.to-primitive', - 'es6.typed.array-buffer', - 'es6.typed.data-view', - 'es6.typed.int8-array', - 'es6.typed.uint8-array', - 'es6.typed.uint8-clamped-array', - 'es6.typed.int16-array', - 'es6.typed.uint16-array', - 'es6.typed.int32-array', - 'es6.typed.uint32-array', - 'es6.typed.float32-array', - 'es6.typed.float64-array', - 'es7.array.includes', - 'es7.array.flat-map', - 'es7.array.flatten', - 'es7.string.at', - 'es7.string.pad-start', - 'es7.string.pad-end', - 'es7.string.trim-left', - 'es7.string.trim-right', - 'es7.string.match-all', - 'es7.symbol.async-iterator', - 'es7.symbol.observable', - 'es7.object.get-own-property-descriptors', - 'es7.object.values', - 'es7.object.entries', - 'es7.object.define-getter', - 'es7.object.define-setter', - 'es7.object.lookup-getter', - 'es7.object.lookup-setter', - 'es7.map.to-json', - 'es7.set.to-json', - 'es7.map.of', - 'es7.set.of', - 'es7.weak-map.of', - 'es7.weak-set.of', - 'es7.map.from', - 'es7.set.from', - 'es7.weak-map.from', - 'es7.weak-set.from', - 'es7.global', - 'es7.system.global', - 'es7.error.is-error', - 'es7.math.clamp', - 'es7.math.deg-per-rad', - 'es7.math.degrees', - 'es7.math.fscale', - 'es7.math.iaddh', - 'es7.math.isubh', - 'es7.math.imulh', - 'es7.math.rad-per-deg', - 'es7.math.radians', - 'es7.math.scale', - 'es7.math.umulh', - 'es7.math.signbit', - 'es7.promise.finally', - 'es7.promise.try', - 'es7.reflect.define-metadata', - 'es7.reflect.delete-metadata', - 'es7.reflect.get-metadata', - 'es7.reflect.get-metadata-keys', - 'es7.reflect.get-own-metadata', - 'es7.reflect.get-own-metadata-keys', - 'es7.reflect.has-metadata', - 'es7.reflect.has-own-metadata', - 'es7.reflect.metadata', - 'es7.asap', - 'es7.observable', - 'web.immediate', - 'web.dom.iterable', - 'web.timers', - 'core.dict', - 'core.get-iterator-method', - 'core.get-iterator', - 'core.is-iterable', - 'core.delay', - 'core.function.part', - 'core.object.is-object', - 'core.object.classof', - 'core.object.define', - 'core.object.make', - 'core.number.iterator', - 'core.regexp.escape', - 'core.string.escape-html', - 'core.string.unescape-html', - ], - experimental: [ - ], - libraryBlacklist: [ - 'es6.object.to-string', - 'es6.function.name', - 'es6.regexp.constructor', - 'es6.regexp.to-string', - 'es6.regexp.flags', - 'es6.regexp.match', - 'es6.regexp.replace', - 'es6.regexp.search', - 'es6.regexp.split', - 'es6.number.constructor', - 'es6.date.to-string', - 'es6.date.to-primitive', - ], - es5SpecialCase: [ - 'es6.object.create', - 'es6.object.define-property', - 'es6.object.define-properties', - 'es6.object.get-own-property-descriptor', - 'es6.object.get-prototype-of', - 'es6.object.keys', - 'es6.object.get-own-property-names', - 'es6.object.freeze', - 'es6.object.seal', - 'es6.object.prevent-extensions', - 'es6.object.is-frozen', - 'es6.object.is-sealed', - 'es6.object.is-extensible', - 'es6.function.bind', - 'es6.array.is-array', - 'es6.array.join', - 'es6.array.slice', - 'es6.array.sort', - 'es6.array.for-each', - 'es6.array.map', - 'es6.array.filter', - 'es6.array.some', - 'es6.array.every', - 'es6.array.reduce', - 'es6.array.reduce-right', - 'es6.array.index-of', - 'es6.array.last-index-of', - 'es6.number.to-fixed', - 'es6.number.to-precision', - 'es6.date.now', - 'es6.date.to-iso-string', - 'es6.date.to-json', - 'es6.string.trim', - 'es6.regexp.to-string', - 'es6.parse-int', - 'es6.parse-float', - ], - banner: '/**\n' + - ' * core-js ' + require('../package').version + '\n' + - ' * https://github.com/zloirock/core-js\n' + - ' * License: http://rock.mit-license.org\n' + - ' * © ' + new Date().getFullYear() + ' Denis Pushkarev\n' + - ' */', -}; diff --git a/forward_engineering/node_modules/core-js/build/index.js b/forward_engineering/node_modules/core-js/build/index.js deleted file mode 100644 index 1df7f10..0000000 --- a/forward_engineering/node_modules/core-js/build/index.js +++ /dev/null @@ -1,104 +0,0 @@ -// Generated by LiveScript 1.4.0 -(function(){ - var Promise, ref$, list, experimental, libraryBlacklist, es5SpecialCase, banner, readFile, writeFile, unlink, basename, dirname, join, webpack, temp; - Promise = require('../library/fn/promise'); - ref$ = require('./config'), list = ref$.list, experimental = ref$.experimental, libraryBlacklist = ref$.libraryBlacklist, es5SpecialCase = ref$.es5SpecialCase, banner = ref$.banner; - ref$ = require('fs'), readFile = ref$.readFile, writeFile = ref$.writeFile, unlink = ref$.unlink; - ref$ = require('path'), basename = ref$.basename, dirname = ref$.dirname, join = ref$.join; - webpack = require('webpack'); - temp = require('temp'); - module.exports = function(arg$){ - var modules, ref$, blacklist, library, umd, this$ = this; - modules = (ref$ = arg$.modules) != null - ? ref$ - : [], blacklist = (ref$ = arg$.blacklist) != null - ? ref$ - : [], library = (ref$ = arg$.library) != null ? ref$ : false, umd = (ref$ = arg$.umd) != null ? ref$ : true; - return new Promise(function(resolve, reject){ - (function(){ - var i$, x$, ref$, len$, y$, ns, name, j$, len1$, TARGET, this$ = this; - if (this.exp) { - for (i$ = 0, len$ = (ref$ = experimental).length; i$ < len$; ++i$) { - x$ = ref$[i$]; - this[x$] = true; - } - } - if (this.es5) { - for (i$ = 0, len$ = (ref$ = es5SpecialCase).length; i$ < len$; ++i$) { - y$ = ref$[i$]; - this[y$] = true; - } - } - for (ns in this) { - if (this[ns]) { - for (i$ = 0, len$ = (ref$ = list).length; i$ < len$; ++i$) { - name = ref$[i$]; - if (name.indexOf(ns + ".") === 0 && !in$(name, experimental)) { - this[name] = true; - } - } - } - } - if (library) { - blacklist = blacklist.concat(libraryBlacklist); - } - for (i$ = 0, len$ = blacklist.length; i$ < len$; ++i$) { - ns = blacklist[i$]; - for (j$ = 0, len1$ = (ref$ = list).length; j$ < len1$; ++j$) { - name = ref$[j$]; - if (name === ns || name.indexOf(ns + ".") === 0) { - this[name] = false; - } - } - } - TARGET = temp.path({ - suffix: '.js' - }); - webpack({ - entry: list.filter(function(it){ - return this$[it]; - }).map(function(it){ - if (library) { - return join(__dirname, '..', 'library', 'modules', it); - } else { - return join(__dirname, '..', 'modules', it); - } - }), - output: { - path: dirname(TARGET), - filename: basename("./" + TARGET) - } - }, function(err, info){ - if (err) { - return reject(err); - } - readFile(TARGET, function(err, script){ - if (err) { - return reject(err); - } - unlink(TARGET, function(err){ - var exportScript; - if (err) { - return reject(err); - } - if (umd) { - exportScript = "// CommonJS export\nif (typeof module != 'undefined' && module.exports) module.exports = __e;\n// RequireJS export\nelse if (typeof define == 'function' && define.amd) define(function () { return __e; });\n// Export to global object\nelse __g.core = __e;"; - } else { - exportScript = ""; - } - resolve("" + banner + "\n!function(__e, __g, undefined){\n'use strict';\n" + script + "\n" + exportScript + "\n}(1, 1);"); - }); - }); - }); - }.call(modules.reduce(function(memo, it){ - memo[it] = true; - return memo; - }, {}))); - }); - }; - function in$(x, xs){ - var i = -1, l = xs.length >>> 0; - while (++i < l) if (x === xs[i]) return true; - return false; - } -}).call(this); diff --git a/forward_engineering/node_modules/core-js/client/core.js b/forward_engineering/node_modules/core-js/client/core.js deleted file mode 100644 index be86c19..0000000 --- a/forward_engineering/node_modules/core-js/client/core.js +++ /dev/null @@ -1,9095 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(__e, __g, undefined){ -'use strict'; -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 134); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(13); -var hide = __webpack_require__(14); -var redefine = __webpack_require__(15); -var ctx = __webpack_require__(19); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); - var key, own, out, exp; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed - out = (own ? target : source)[key]; - // bind timers to global for call from export context - exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // extend global - if (target) redefine(target, key, out, type & $export.U); - // export - if (exports[key] != out) hide(exports, key, exp); - if (IS_PROTO && expProto[key] != out) expProto[key] = out; - } -}; -global.core = core; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; - - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - - -/***/ }), -/* 2 */ -/***/ (function(module, exports) { - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; - - -/***/ }), -/* 4 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; - - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -var store = __webpack_require__(47)('wks'); -var uid = __webpack_require__(37); -var Symbol = __webpack_require__(2).Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; - - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -// Thank's IE8 for his funny defineProperty -module.exports = !__webpack_require__(4)(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 7 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.15 ToLength -var toInteger = __webpack_require__(21); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; - - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var IE8_DOM_DEFINE = __webpack_require__(98); -var toPrimitive = __webpack_require__(23); -var dP = Object.defineProperty; - -exports.f = __webpack_require__(6) ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; - - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.13 ToObject(argument) -var defined = __webpack_require__(24); -module.exports = function (it) { - return Object(defined(it)); -}; - - -/***/ }), -/* 10 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; - - -/***/ }), -/* 11 */ -/***/ (function(module, exports, __webpack_require__) { - -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = __webpack_require__(48); -var defined = __webpack_require__(24); -module.exports = function (it) { - return IObject(defined(it)); -}; - - -/***/ }), -/* 12 */ -/***/ (function(module, exports) { - -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; - - -/***/ }), -/* 13 */ -/***/ (function(module, exports) { - -var core = module.exports = { version: '2.6.9' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - - -/***/ }), -/* 14 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var createDesc = __webpack_require__(31); -module.exports = __webpack_require__(6) ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; - - -/***/ }), -/* 15 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var hide = __webpack_require__(14); -var has = __webpack_require__(12); -var SRC = __webpack_require__(37)('src'); -var $toString = __webpack_require__(136); -var TO_STRING = 'toString'; -var TPL = ('' + $toString).split(TO_STRING); - -__webpack_require__(13).inspectSource = function (it) { - return $toString.call(it); -}; - -(module.exports = function (O, key, val, safe) { - var isFunction = typeof val == 'function'; - if (isFunction) has(val, 'name') || hide(val, 'name', key); - if (O[key] === val) return; - if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); - if (O === global) { - O[key] = val; - } else if (!safe) { - delete O[key]; - hide(O, key, val); - } else if (O[key]) { - O[key] = val; - } else { - hide(O, key, val); - } -// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative -})(Function.prototype, TO_STRING, function toString() { - return typeof this == 'function' && this[SRC] || $toString.call(this); -}); - - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __webpack_require__) { - -var pIE = __webpack_require__(49); -var createDesc = __webpack_require__(31); -var toIObject = __webpack_require__(11); -var toPrimitive = __webpack_require__(23); -var has = __webpack_require__(12); -var IE8_DOM_DEFINE = __webpack_require__(98); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = __webpack_require__(6) ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; - - -/***/ }), -/* 17 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = __webpack_require__(12); -var toObject = __webpack_require__(9); -var IE_PROTO = __webpack_require__(71)('IE_PROTO'); -var ObjectProto = Object.prototype; - -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; - - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var fails = __webpack_require__(4); -var defined = __webpack_require__(24); -var quot = /"/g; -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -var createHTML = function (string, tag, attribute, value) { - var S = String(defined(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; -module.exports = function (NAME, exec) { - var O = {}; - O[NAME] = exec(createHTML); - $export($export.P + $export.F * fails(function () { - var test = ''[NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }), 'String', O); -}; - - -/***/ }), -/* 19 */ -/***/ (function(module, exports, __webpack_require__) { - -// optional / simple context binding -var aFunction = __webpack_require__(10); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; - - -/***/ }), -/* 20 */ -/***/ (function(module, exports) { - -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; - - -/***/ }), -/* 21 */ -/***/ (function(module, exports) { - -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; - - -/***/ }), -/* 22 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var fails = __webpack_require__(4); - -module.exports = function (method, arg) { - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call - arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); - }); -}; - - -/***/ }), -/* 23 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = __webpack_require__(3); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; - - -/***/ }), -/* 24 */ -/***/ (function(module, exports) { - -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; - - -/***/ }), -/* 25 */ -/***/ (function(module, exports, __webpack_require__) { - -// most Object methods by ES6 should accept primitives -var $export = __webpack_require__(0); -var core = __webpack_require__(13); -var fails = __webpack_require__(4); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; - - -/***/ }), -/* 26 */ -/***/ (function(module, exports, __webpack_require__) { - -// 0 -> Array#forEach -// 1 -> Array#map -// 2 -> Array#filter -// 3 -> Array#some -// 4 -> Array#every -// 5 -> Array#find -// 6 -> Array#findIndex -var ctx = __webpack_require__(19); -var IObject = __webpack_require__(48); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(7); -var asc = __webpack_require__(86); -module.exports = function (TYPE, $create) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - var create = $create || asc; - return function ($this, callbackfn, that) { - var O = toObject($this); - var self = IObject(O); - var f = ctx(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var val, res; - for (;length > index; index++) if (NO_HOLES || index in self) { - val = self[index]; - res = f(val, index, O); - if (TYPE) { - if (IS_MAP) result[index] = res; // map - else if (res) switch (TYPE) { - case 3: return true; // some - case 5: return val; // find - case 6: return index; // findIndex - case 2: result.push(val); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; - }; -}; - - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = __webpack_require__(100); -var enumBugKeys = __webpack_require__(72); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; - - -/***/ }), -/* 28 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = __webpack_require__(1); -var dPs = __webpack_require__(101); -var enumBugKeys = __webpack_require__(72); -var IE_PROTO = __webpack_require__(71)('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(69)('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - __webpack_require__(73).appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; - - -/***/ }), -/* 29 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -if (__webpack_require__(6)) { - var LIBRARY = __webpack_require__(32); - var global = __webpack_require__(2); - var fails = __webpack_require__(4); - var $export = __webpack_require__(0); - var $typed = __webpack_require__(65); - var $buffer = __webpack_require__(96); - var ctx = __webpack_require__(19); - var anInstance = __webpack_require__(42); - var propertyDesc = __webpack_require__(31); - var hide = __webpack_require__(14); - var redefineAll = __webpack_require__(43); - var toInteger = __webpack_require__(21); - var toLength = __webpack_require__(7); - var toIndex = __webpack_require__(123); - var toAbsoluteIndex = __webpack_require__(38); - var toPrimitive = __webpack_require__(23); - var has = __webpack_require__(12); - var classof = __webpack_require__(34); - var isObject = __webpack_require__(3); - var toObject = __webpack_require__(9); - var isArrayIter = __webpack_require__(84); - var create = __webpack_require__(28); - var getPrototypeOf = __webpack_require__(17); - var gOPN = __webpack_require__(39).f; - var getIterFn = __webpack_require__(50); - var uid = __webpack_require__(37); - var wks = __webpack_require__(5); - var createArrayMethod = __webpack_require__(26); - var createArrayIncludes = __webpack_require__(53); - var speciesConstructor = __webpack_require__(52); - var ArrayIterators = __webpack_require__(88); - var Iterators = __webpack_require__(40); - var $iterDetect = __webpack_require__(60); - var setSpecies = __webpack_require__(41); - var arrayFill = __webpack_require__(87); - var arrayCopyWithin = __webpack_require__(113); - var $DP = __webpack_require__(8); - var $GOPD = __webpack_require__(16); - var dP = $DP.f; - var gOPD = $GOPD.f; - var RangeError = global.RangeError; - var TypeError = global.TypeError; - var Uint8Array = global.Uint8Array; - var ARRAY_BUFFER = 'ArrayBuffer'; - var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER; - var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; - var PROTOTYPE = 'prototype'; - var ArrayProto = Array[PROTOTYPE]; - var $ArrayBuffer = $buffer.ArrayBuffer; - var $DataView = $buffer.DataView; - var arrayForEach = createArrayMethod(0); - var arrayFilter = createArrayMethod(2); - var arraySome = createArrayMethod(3); - var arrayEvery = createArrayMethod(4); - var arrayFind = createArrayMethod(5); - var arrayFindIndex = createArrayMethod(6); - var arrayIncludes = createArrayIncludes(true); - var arrayIndexOf = createArrayIncludes(false); - var arrayValues = ArrayIterators.values; - var arrayKeys = ArrayIterators.keys; - var arrayEntries = ArrayIterators.entries; - var arrayLastIndexOf = ArrayProto.lastIndexOf; - var arrayReduce = ArrayProto.reduce; - var arrayReduceRight = ArrayProto.reduceRight; - var arrayJoin = ArrayProto.join; - var arraySort = ArrayProto.sort; - var arraySlice = ArrayProto.slice; - var arrayToString = ArrayProto.toString; - var arrayToLocaleString = ArrayProto.toLocaleString; - var ITERATOR = wks('iterator'); - var TAG = wks('toStringTag'); - var TYPED_CONSTRUCTOR = uid('typed_constructor'); - var DEF_CONSTRUCTOR = uid('def_constructor'); - var ALL_CONSTRUCTORS = $typed.CONSTR; - var TYPED_ARRAY = $typed.TYPED; - var VIEW = $typed.VIEW; - var WRONG_LENGTH = 'Wrong length!'; - - var $map = createArrayMethod(1, function (O, length) { - return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length); - }); - - var LITTLE_ENDIAN = fails(function () { - // eslint-disable-next-line no-undef - return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1; - }); - - var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () { - new Uint8Array(1).set({}); - }); - - var toOffset = function (it, BYTES) { - var offset = toInteger(it); - if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!'); - return offset; - }; - - var validate = function (it) { - if (isObject(it) && TYPED_ARRAY in it) return it; - throw TypeError(it + ' is not a typed array!'); - }; - - var allocate = function (C, length) { - if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) { - throw TypeError('It is not a typed array constructor!'); - } return new C(length); - }; - - var speciesFromList = function (O, list) { - return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list); - }; - - var fromList = function (C, list) { - var index = 0; - var length = list.length; - var result = allocate(C, length); - while (length > index) result[index] = list[index++]; - return result; - }; - - var addGetter = function (it, key, internal) { - dP(it, key, { get: function () { return this._d[internal]; } }); - }; - - var $from = function from(source /* , mapfn, thisArg */) { - var O = toObject(source); - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iterFn = getIterFn(O); - var i, length, values, result, step, iterator; - if (iterFn != undefined && !isArrayIter(iterFn)) { - for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) { - values.push(step.value); - } O = values; - } - if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2); - for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) { - result[i] = mapping ? mapfn(O[i], i) : O[i]; - } - return result; - }; - - var $of = function of(/* ...items */) { - var index = 0; - var length = arguments.length; - var result = allocate(this, length); - while (length > index) result[index] = arguments[index++]; - return result; - }; - - // iOS Safari 6.x fails here - var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); }); - - var $toLocaleString = function toLocaleString() { - return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments); - }; - - var proto = { - copyWithin: function copyWithin(target, start /* , end */) { - return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined); - }, - every: function every(callbackfn /* , thisArg */) { - return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars - return arrayFill.apply(validate(this), arguments); - }, - filter: function filter(callbackfn /* , thisArg */) { - return speciesFromList(this, arrayFilter(validate(this), callbackfn, - arguments.length > 1 ? arguments[1] : undefined)); - }, - find: function find(predicate /* , thisArg */) { - return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - findIndex: function findIndex(predicate /* , thisArg */) { - return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - forEach: function forEach(callbackfn /* , thisArg */) { - arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - indexOf: function indexOf(searchElement /* , fromIndex */) { - return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - includes: function includes(searchElement /* , fromIndex */) { - return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - join: function join(separator) { // eslint-disable-line no-unused-vars - return arrayJoin.apply(validate(this), arguments); - }, - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars - return arrayLastIndexOf.apply(validate(this), arguments); - }, - map: function map(mapfn /* , thisArg */) { - return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined); - }, - reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduce.apply(validate(this), arguments); - }, - reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduceRight.apply(validate(this), arguments); - }, - reverse: function reverse() { - var that = this; - var length = validate(that).length; - var middle = Math.floor(length / 2); - var index = 0; - var value; - while (index < middle) { - value = that[index]; - that[index++] = that[--length]; - that[length] = value; - } return that; - }, - some: function some(callbackfn /* , thisArg */) { - return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - sort: function sort(comparefn) { - return arraySort.call(validate(this), comparefn); - }, - subarray: function subarray(begin, end) { - var O = validate(this); - var length = O.length; - var $begin = toAbsoluteIndex(begin, length); - return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))( - O.buffer, - O.byteOffset + $begin * O.BYTES_PER_ELEMENT, - toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin) - ); - } - }; - - var $slice = function slice(start, end) { - return speciesFromList(this, arraySlice.call(validate(this), start, end)); - }; - - var $set = function set(arrayLike /* , offset */) { - validate(this); - var offset = toOffset(arguments[1], 1); - var length = this.length; - var src = toObject(arrayLike); - var len = toLength(src.length); - var index = 0; - if (len + offset > length) throw RangeError(WRONG_LENGTH); - while (index < len) this[offset + index] = src[index++]; - }; - - var $iterators = { - entries: function entries() { - return arrayEntries.call(validate(this)); - }, - keys: function keys() { - return arrayKeys.call(validate(this)); - }, - values: function values() { - return arrayValues.call(validate(this)); - } - }; - - var isTAIndex = function (target, key) { - return isObject(target) - && target[TYPED_ARRAY] - && typeof key != 'symbol' - && key in target - && String(+key) == String(key); - }; - var $getDesc = function getOwnPropertyDescriptor(target, key) { - return isTAIndex(target, key = toPrimitive(key, true)) - ? propertyDesc(2, target[key]) - : gOPD(target, key); - }; - var $setDesc = function defineProperty(target, key, desc) { - if (isTAIndex(target, key = toPrimitive(key, true)) - && isObject(desc) - && has(desc, 'value') - && !has(desc, 'get') - && !has(desc, 'set') - // TODO: add validation descriptor w/o calling accessors - && !desc.configurable - && (!has(desc, 'writable') || desc.writable) - && (!has(desc, 'enumerable') || desc.enumerable) - ) { - target[key] = desc.value; - return target; - } return dP(target, key, desc); - }; - - if (!ALL_CONSTRUCTORS) { - $GOPD.f = $getDesc; - $DP.f = $setDesc; - } - - $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', { - getOwnPropertyDescriptor: $getDesc, - defineProperty: $setDesc - }); - - if (fails(function () { arrayToString.call({}); })) { - arrayToString = arrayToLocaleString = function toString() { - return arrayJoin.call(this); - }; - } - - var $TypedArrayPrototype$ = redefineAll({}, proto); - redefineAll($TypedArrayPrototype$, $iterators); - hide($TypedArrayPrototype$, ITERATOR, $iterators.values); - redefineAll($TypedArrayPrototype$, { - slice: $slice, - set: $set, - constructor: function () { /* noop */ }, - toString: arrayToString, - toLocaleString: $toLocaleString - }); - addGetter($TypedArrayPrototype$, 'buffer', 'b'); - addGetter($TypedArrayPrototype$, 'byteOffset', 'o'); - addGetter($TypedArrayPrototype$, 'byteLength', 'l'); - addGetter($TypedArrayPrototype$, 'length', 'e'); - dP($TypedArrayPrototype$, TAG, { - get: function () { return this[TYPED_ARRAY]; } - }); - - // eslint-disable-next-line max-statements - module.exports = function (KEY, BYTES, wrapper, CLAMPED) { - CLAMPED = !!CLAMPED; - var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'; - var GETTER = 'get' + KEY; - var SETTER = 'set' + KEY; - var TypedArray = global[NAME]; - var Base = TypedArray || {}; - var TAC = TypedArray && getPrototypeOf(TypedArray); - var FORCED = !TypedArray || !$typed.ABV; - var O = {}; - var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE]; - var getter = function (that, index) { - var data = that._d; - return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN); - }; - var setter = function (that, index, value) { - var data = that._d; - if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff; - data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN); - }; - var addElement = function (that, index) { - dP(that, index, { - get: function () { - return getter(this, index); - }, - set: function (value) { - return setter(this, index, value); - }, - enumerable: true - }); - }; - if (FORCED) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME, '_d'); - var index = 0; - var offset = 0; - var buffer, byteLength, length, klass; - if (!isObject(data)) { - length = toIndex(data); - byteLength = length * BYTES; - buffer = new $ArrayBuffer(byteLength); - } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - buffer = data; - offset = toOffset($offset, BYTES); - var $len = data.byteLength; - if ($length === undefined) { - if ($len % BYTES) throw RangeError(WRONG_LENGTH); - byteLength = $len - offset; - if (byteLength < 0) throw RangeError(WRONG_LENGTH); - } else { - byteLength = toLength($length) * BYTES; - if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH); - } - length = byteLength / BYTES; - } else if (TYPED_ARRAY in data) { - return fromList(TypedArray, data); - } else { - return $from.call(TypedArray, data); - } - hide(that, '_d', { - b: buffer, - o: offset, - l: byteLength, - e: length, - v: new $DataView(buffer) - }); - while (index < length) addElement(that, index++); - }); - TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$); - hide(TypedArrayPrototype, 'constructor', TypedArray); - } else if (!fails(function () { - TypedArray(1); - }) || !fails(function () { - new TypedArray(-1); // eslint-disable-line no-new - }) || !$iterDetect(function (iter) { - new TypedArray(); // eslint-disable-line no-new - new TypedArray(null); // eslint-disable-line no-new - new TypedArray(1.5); // eslint-disable-line no-new - new TypedArray(iter); // eslint-disable-line no-new - }, true)) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME); - var klass; - // `ws` module bug, temporarily remove validation length for Uint8Array - // https://github.com/websockets/ws/pull/645 - if (!isObject(data)) return new Base(toIndex(data)); - if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - return $length !== undefined - ? new Base(data, toOffset($offset, BYTES), $length) - : $offset !== undefined - ? new Base(data, toOffset($offset, BYTES)) - : new Base(data); - } - if (TYPED_ARRAY in data) return fromList(TypedArray, data); - return $from.call(TypedArray, data); - }); - arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) { - if (!(key in TypedArray)) hide(TypedArray, key, Base[key]); - }); - TypedArray[PROTOTYPE] = TypedArrayPrototype; - if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray; - } - var $nativeIterator = TypedArrayPrototype[ITERATOR]; - var CORRECT_ITER_NAME = !!$nativeIterator - && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined); - var $iterator = $iterators.values; - hide(TypedArray, TYPED_CONSTRUCTOR, true); - hide(TypedArrayPrototype, TYPED_ARRAY, NAME); - hide(TypedArrayPrototype, VIEW, true); - hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray); - - if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) { - dP(TypedArrayPrototype, TAG, { - get: function () { return NAME; } - }); - } - - O[NAME] = TypedArray; - - $export($export.G + $export.W + $export.F * (TypedArray != Base), O); - - $export($export.S, NAME, { - BYTES_PER_ELEMENT: BYTES - }); - - $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, { - from: $from, - of: $of - }); - - if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES); - - $export($export.P, NAME, proto); - - setSpecies(NAME); - - $export($export.P + $export.F * FORCED_SET, NAME, { set: $set }); - - $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators); - - if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString; - - $export($export.P + $export.F * fails(function () { - new TypedArray(1).slice(); - }), NAME, { slice: $slice }); - - $export($export.P + $export.F * (fails(function () { - return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString(); - }) || !fails(function () { - TypedArrayPrototype.toLocaleString.call([1, 2]); - })), NAME, { toLocaleString: $toLocaleString }); - - Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator; - if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator); - }; -} else module.exports = function () { /* empty */ }; - - -/***/ }), -/* 30 */ -/***/ (function(module, exports, __webpack_require__) { - -var Map = __webpack_require__(118); -var $export = __webpack_require__(0); -var shared = __webpack_require__(47)('metadata'); -var store = shared.store || (shared.store = new (__webpack_require__(121))()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return undefined; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return undefined; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; -var toMetaKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; -var exp = function (O) { - $export($export.S, 'Reflect', O); -}; - -module.exports = { - store: store, - map: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - key: toMetaKey, - exp: exp -}; - - -/***/ }), -/* 31 */ -/***/ (function(module, exports) { - -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; - - -/***/ }), -/* 32 */ -/***/ (function(module, exports) { - -module.exports = false; - - -/***/ }), -/* 33 */ -/***/ (function(module, exports, __webpack_require__) { - -var META = __webpack_require__(37)('meta'); -var isObject = __webpack_require__(3); -var has = __webpack_require__(12); -var setDesc = __webpack_require__(8).f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !__webpack_require__(4)(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; - - -/***/ }), -/* 34 */ -/***/ (function(module, exports, __webpack_require__) { - -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = __webpack_require__(20); -var TAG = __webpack_require__(5)('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; - - -/***/ }), -/* 35 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.31 Array.prototype[@@unscopables] -var UNSCOPABLES = __webpack_require__(5)('unscopables'); -var ArrayProto = Array.prototype; -if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(14)(ArrayProto, UNSCOPABLES, {}); -module.exports = function (key) { - ArrayProto[UNSCOPABLES][key] = true; -}; - - -/***/ }), -/* 36 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(19); -var call = __webpack_require__(111); -var isArrayIter = __webpack_require__(84); -var anObject = __webpack_require__(1); -var toLength = __webpack_require__(7); -var getIterFn = __webpack_require__(50); -var BREAK = {}; -var RETURN = {}; -var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { - var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); - var f = ctx(fn, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); - // fast case for arrays with default iterator - if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) return result; - } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) return result; - } -}; -exports.BREAK = BREAK; -exports.RETURN = RETURN; - - -/***/ }), -/* 37 */ -/***/ (function(module, exports) { - -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; - - -/***/ }), -/* 38 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(21); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; - - -/***/ }), -/* 39 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = __webpack_require__(100); -var hiddenKeys = __webpack_require__(72).concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; - - -/***/ }), -/* 40 */ -/***/ (function(module, exports) { - -module.exports = {}; - - -/***/ }), -/* 41 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var dP = __webpack_require__(8); -var DESCRIPTORS = __webpack_require__(6); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (KEY) { - var C = global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; - - -/***/ }), -/* 42 */ -/***/ (function(module, exports) { - -module.exports = function (it, Constructor, name, forbiddenField) { - if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) { - throw TypeError(name + ': incorrect invocation!'); - } return it; -}; - - -/***/ }), -/* 43 */ -/***/ (function(module, exports, __webpack_require__) { - -var redefine = __webpack_require__(15); -module.exports = function (target, src, safe) { - for (var key in src) redefine(target, key, src[key], safe); - return target; -}; - - -/***/ }), -/* 44 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -module.exports = function (it, TYPE) { - if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); - return it; -}; - - -/***/ }), -/* 45 */ -/***/ (function(module, exports, __webpack_require__) { - -var def = __webpack_require__(8).f; -var has = __webpack_require__(12); -var TAG = __webpack_require__(5)('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; - - -/***/ }), -/* 46 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var defined = __webpack_require__(24); -var fails = __webpack_require__(4); -var spaces = __webpack_require__(78); -var space = '[' + spaces + ']'; -var non = '\u200b\u0085'; -var ltrim = RegExp('^' + space + space + '*'); -var rtrim = RegExp(space + space + '*$'); - -var exporter = function (KEY, exec, ALIAS) { - var exp = {}; - var FORCE = fails(function () { - return !!spaces[KEY]() || non[KEY]() != non; - }); - var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; - if (ALIAS) exp[ALIAS] = fn; - $export($export.P + $export.F * FORCE, 'String', exp); -}; - -// 1 -> String#trimLeft -// 2 -> String#trimRight -// 3 -> String#trim -var trim = exporter.trim = function (string, TYPE) { - string = String(defined(string)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; -}; - -module.exports = exporter; - - -/***/ }), -/* 47 */ -/***/ (function(module, exports, __webpack_require__) { - -var core = __webpack_require__(13); -var global = __webpack_require__(2); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: __webpack_require__(32) ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); - - -/***/ }), -/* 48 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = __webpack_require__(20); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; - - -/***/ }), -/* 49 */ -/***/ (function(module, exports) { - -exports.f = {}.propertyIsEnumerable; - - -/***/ }), -/* 50 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(34); -var ITERATOR = __webpack_require__(5)('iterator'); -var Iterators = __webpack_require__(40); -module.exports = __webpack_require__(13).getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; - - -/***/ }), -/* 51 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.2.5.3 get RegExp.prototype.flags -var anObject = __webpack_require__(1); -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; - - -/***/ }), -/* 52 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var SPECIES = __webpack_require__(5)('species'); -module.exports = function (O, D) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); -}; - - -/***/ }), -/* 53 */ -/***/ (function(module, exports, __webpack_require__) { - -// false -> Array#indexOf -// true -> Array#includes -var toIObject = __webpack_require__(11); -var toLength = __webpack_require__(7); -var toAbsoluteIndex = __webpack_require__(38); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; - - -/***/ }), -/* 54 */ -/***/ (function(module, exports) { - -exports.f = Object.getOwnPropertySymbols; - - -/***/ }), -/* 55 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.2 IsArray(argument) -var cof = __webpack_require__(20); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; - - -/***/ }), -/* 56 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(21); -var defined = __webpack_require__(24); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; - - -/***/ }), -/* 57 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.8 IsRegExp(argument) -var isObject = __webpack_require__(3); -var cof = __webpack_require__(20); -var MATCH = __webpack_require__(5)('match'); -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); -}; - - -/***/ }), -/* 58 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(32); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(15); -var hide = __webpack_require__(14); -var Iterators = __webpack_require__(40); -var $iterCreate = __webpack_require__(59); -var setToStringTag = __webpack_require__(45); -var getPrototypeOf = __webpack_require__(17); -var ITERATOR = __webpack_require__(5)('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; - - -/***/ }), -/* 59 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var create = __webpack_require__(28); -var descriptor = __webpack_require__(31); -var setToStringTag = __webpack_require__(45); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -__webpack_require__(14)(IteratorPrototype, __webpack_require__(5)('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; - - -/***/ }), -/* 60 */ -/***/ (function(module, exports, __webpack_require__) { - -var ITERATOR = __webpack_require__(5)('iterator'); -var SAFE_CLOSING = false; - -try { - var riter = [7][ITERATOR](); - riter['return'] = function () { SAFE_CLOSING = true; }; - // eslint-disable-next-line no-throw-literal - Array.from(riter, function () { throw 2; }); -} catch (e) { /* empty */ } - -module.exports = function (exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function () { return { done: safe = true }; }; - arr[ITERATOR] = function () { return iter; }; - exec(arr); - } catch (e) { /* empty */ } - return safe; -}; - - -/***/ }), -/* 61 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var classof = __webpack_require__(34); -var builtinExec = RegExp.prototype.exec; - - // `RegExpExec` abstract operation -// https://tc39.github.io/ecma262/#sec-regexpexec -module.exports = function (R, S) { - var exec = R.exec; - if (typeof exec === 'function') { - var result = exec.call(R, S); - if (typeof result !== 'object') { - throw new TypeError('RegExp exec method returned something other than an Object or null'); - } - return result; - } - if (classof(R) !== 'RegExp') { - throw new TypeError('RegExp#exec called on incompatible receiver'); - } - return builtinExec.call(R, S); -}; - - -/***/ }), -/* 62 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(114); -var redefine = __webpack_require__(15); -var hide = __webpack_require__(14); -var fails = __webpack_require__(4); -var defined = __webpack_require__(24); -var wks = __webpack_require__(5); -var regexpExec = __webpack_require__(90); - -var SPECIES = wks('species'); - -var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { - // #replace needs built-in support for named groups. - // #match works fine because it just return the exec results, even if it has - // a "grops" property. - var re = /./; - re.exec = function () { - var result = []; - result.groups = { a: '7' }; - return result; - }; - return ''.replace(re, '$') !== '7'; -}); - -var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { - // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec - var re = /(?:)/; - var originalExec = re.exec; - re.exec = function () { return originalExec.apply(this, arguments); }; - var result = 'ab'.split(re); - return result.length === 2 && result[0] === 'a' && result[1] === 'b'; -})(); - -module.exports = function (KEY, length, exec) { - var SYMBOL = wks(KEY); - - var DELEGATES_TO_SYMBOL = !fails(function () { - // String methods call symbol-named RegEp methods - var O = {}; - O[SYMBOL] = function () { return 7; }; - return ''[KEY](O) != 7; - }); - - var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { - // Symbol-named RegExp methods call .exec - var execCalled = false; - var re = /a/; - re.exec = function () { execCalled = true; return null; }; - if (KEY === 'split') { - // RegExp[@@split] doesn't call the regex's exec method, but first creates - // a new one. We need to return the patched regex when creating the new one. - re.constructor = {}; - re.constructor[SPECIES] = function () { return re; }; - } - re[SYMBOL](''); - return !execCalled; - }) : undefined; - - if ( - !DELEGATES_TO_SYMBOL || - !DELEGATES_TO_EXEC || - (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || - (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) - ) { - var nativeRegExpMethod = /./[SYMBOL]; - var fns = exec( - defined, - SYMBOL, - ''[KEY], - function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { - if (regexp.exec === regexpExec) { - if (DELEGATES_TO_SYMBOL && !forceStringMethod) { - // The native String method already delegates to @@method (this - // polyfilled function), leasing to infinite recursion. - // We avoid it by directly calling the native @@method method. - return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; - } - return { done: true, value: nativeMethod.call(str, regexp, arg2) }; - } - return { done: false }; - } - ); - var strfn = fns[0]; - var rxfn = fns[1]; - - redefine(String.prototype, KEY, strfn); - hide(RegExp.prototype, SYMBOL, length == 2 - // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) - // 21.2.5.11 RegExp.prototype[@@split](string, limit) - ? function (string, arg) { return rxfn.call(string, this, arg); } - // 21.2.5.6 RegExp.prototype[@@match](string) - // 21.2.5.9 RegExp.prototype[@@search](string) - : function (string) { return rxfn.call(string, this); } - ); - } -}; - - -/***/ }), -/* 63 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var navigator = global.navigator; - -module.exports = navigator && navigator.userAgent || ''; - - -/***/ }), -/* 64 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(15); -var redefineAll = __webpack_require__(43); -var meta = __webpack_require__(33); -var forOf = __webpack_require__(36); -var anInstance = __webpack_require__(42); -var isObject = __webpack_require__(3); -var fails = __webpack_require__(4); -var $iterDetect = __webpack_require__(60); -var setToStringTag = __webpack_require__(45); -var inheritIfRequired = __webpack_require__(77); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - var fixMethod = function (KEY) { - var fn = proto[KEY]; - redefine(proto, KEY, - KEY == 'delete' ? function (a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'has' ? function has(a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'get' ? function get(a) { - return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; } - : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; } - ); - }; - if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - var instance = new C(); - // early implementations not supports chaining - var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance; - // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false - var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); }); - // most early implementations doesn't supports iterables, most modern - not close it correctly - var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new - // for early implementations -0 and +0 not the same - var BUGGY_ZERO = !IS_WEAK && fails(function () { - // V8 ~ Chromium 42- fails only with 5+ elements - var $instance = new C(); - var index = 5; - while (index--) $instance[ADDER](index, index); - return !$instance.has(-0); - }); - if (!ACCEPT_ITERABLES) { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME); - var that = inheritIfRequired(new Base(), target, C); - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - return that; - }); - C.prototype = proto; - proto.constructor = C; - } - if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) { - fixMethod('delete'); - fixMethod('has'); - IS_MAP && fixMethod('get'); - } - if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER); - // weak collections should not contains .clear method - if (IS_WEAK && proto.clear) delete proto.clear; - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F * (C != Base), O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; - - -/***/ }), -/* 65 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var hide = __webpack_require__(14); -var uid = __webpack_require__(37); -var TYPED = uid('typed_array'); -var VIEW = uid('view'); -var ABV = !!(global.ArrayBuffer && global.DataView); -var CONSTR = ABV; -var i = 0; -var l = 9; -var Typed; - -var TypedArrayConstructors = ( - 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array' -).split(','); - -while (i < l) { - if (Typed = global[TypedArrayConstructors[i++]]) { - hide(Typed.prototype, TYPED, true); - hide(Typed.prototype, VIEW, true); - } else CONSTR = false; -} - -module.exports = { - ABV: ABV, - CONSTR: CONSTR, - TYPED: TYPED, - VIEW: VIEW -}; - - -/***/ }), -/* 66 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// Forced replacement prototype accessors methods -module.exports = __webpack_require__(32) || !__webpack_require__(4)(function () { - var K = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, K, function () { /* empty */ }); - delete __webpack_require__(2)[K]; -}); - - -/***/ }), -/* 67 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { of: function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); - } }); -}; - - -/***/ }), -/* 68 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var ctx = __webpack_require__(19); -var forOf = __webpack_require__(36); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { - var mapFn = arguments[1]; - var mapping, A, n, cb; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - cb = ctx(mapFn, arguments[2], 2); - forOf(source, false, function (nextItem) { - A.push(cb(nextItem, n++)); - }); - } else { - forOf(source, false, A.push, A); - } - return new this(A); - } }); -}; - - -/***/ }), -/* 69 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -var document = __webpack_require__(2).document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; - - -/***/ }), -/* 70 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(13); -var LIBRARY = __webpack_require__(32); -var wksExt = __webpack_require__(99); -var defineProperty = __webpack_require__(8).f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; - - -/***/ }), -/* 71 */ -/***/ (function(module, exports, __webpack_require__) { - -var shared = __webpack_require__(47)('keys'); -var uid = __webpack_require__(37); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; - - -/***/ }), -/* 72 */ -/***/ (function(module, exports) { - -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); - - -/***/ }), -/* 73 */ -/***/ (function(module, exports, __webpack_require__) { - -var document = __webpack_require__(2).document; -module.exports = document && document.documentElement; - - -/***/ }), -/* 74 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 19.1.2.1 Object.assign(target, source, ...) -var DESCRIPTORS = __webpack_require__(6); -var getKeys = __webpack_require__(27); -var gOPS = __webpack_require__(54); -var pIE = __webpack_require__(49); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(48); -var $assign = Object.assign; - -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || __webpack_require__(4)(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } return T; -} : $assign; - - -/***/ }), -/* 75 */ -/***/ (function(module, exports, __webpack_require__) { - -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = __webpack_require__(3); -var anObject = __webpack_require__(1); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = __webpack_require__(19)(Function.call, __webpack_require__(16).f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; - - -/***/ }), -/* 76 */ -/***/ (function(module, exports) { - -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; - - -/***/ }), -/* 77 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -var setPrototypeOf = __webpack_require__(75).set; -module.exports = function (that, target, C) { - var S = target.constructor; - var P; - if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { - setPrototypeOf(that, P); - } return that; -}; - - -/***/ }), -/* 78 */ -/***/ (function(module, exports) { - -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; - - -/***/ }), -/* 79 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var toInteger = __webpack_require__(21); -var defined = __webpack_require__(24); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; - - -/***/ }), -/* 80 */ -/***/ (function(module, exports) { - -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; - - -/***/ }), -/* 81 */ -/***/ (function(module, exports) { - -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; - - -/***/ }), -/* 82 */ -/***/ (function(module, exports, __webpack_require__) { - -// helper for String#{startsWith, endsWith, includes} -var isRegExp = __webpack_require__(57); -var defined = __webpack_require__(24); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; - - -/***/ }), -/* 83 */ -/***/ (function(module, exports, __webpack_require__) { - -var MATCH = __webpack_require__(5)('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; - - -/***/ }), -/* 84 */ -/***/ (function(module, exports, __webpack_require__) { - -// check on default Array iterator -var Iterators = __webpack_require__(40); -var ITERATOR = __webpack_require__(5)('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; - - -/***/ }), -/* 85 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $defineProperty = __webpack_require__(8); -var createDesc = __webpack_require__(31); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; - - -/***/ }), -/* 86 */ -/***/ (function(module, exports, __webpack_require__) { - -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = __webpack_require__(218); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; - - -/***/ }), -/* 87 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(38); -var toLength = __webpack_require__(7); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; - - -/***/ }), -/* 88 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var addToUnscopables = __webpack_require__(35); -var step = __webpack_require__(89); -var Iterators = __webpack_require__(40); -var toIObject = __webpack_require__(11); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = __webpack_require__(58)(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); - - -/***/ }), -/* 89 */ -/***/ (function(module, exports) { - -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; - - -/***/ }), -/* 90 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var regexpFlags = __webpack_require__(51); - -var nativeExec = RegExp.prototype.exec; -// This always refers to the native implementation, because the -// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, -// which loads this file before patching the method. -var nativeReplace = String.prototype.replace; - -var patchedExec = nativeExec; - -var LAST_INDEX = 'lastIndex'; - -var UPDATES_LAST_INDEX_WRONG = (function () { - var re1 = /a/, - re2 = /b*/g; - nativeExec.call(re1, 'a'); - nativeExec.call(re2, 'a'); - return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0; -})(); - -// nonparticipating capturing group, copied from es5-shim's String#split patch. -var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; - -var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; - -if (PATCH) { - patchedExec = function exec(str) { - var re = this; - var lastIndex, reCopy, match, i; - - if (NPCG_INCLUDED) { - reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); - } - if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX]; - - match = nativeExec.call(re, str); - - if (UPDATES_LAST_INDEX_WRONG && match) { - re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex; - } - if (NPCG_INCLUDED && match && match.length > 1) { - // Fix browsers whose `exec` methods don't consistently return `undefined` - // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ - // eslint-disable-next-line no-loop-func - nativeReplace.call(match[0], reCopy, function () { - for (i = 1; i < arguments.length - 2; i++) { - if (arguments[i] === undefined) match[i] = undefined; - } - }); - } - - return match; - }; -} - -module.exports = patchedExec; - - -/***/ }), -/* 91 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var at = __webpack_require__(56)(true); - - // `AdvanceStringIndex` abstract operation -// https://tc39.github.io/ecma262/#sec-advancestringindex -module.exports = function (S, index, unicode) { - return index + (unicode ? at(S, index).length : 1); -}; - - -/***/ }), -/* 92 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(19); -var invoke = __webpack_require__(76); -var html = __webpack_require__(73); -var cel = __webpack_require__(69); -var global = __webpack_require__(2); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); -}; -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!setTask || !clearTask) { - setTask = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - invoke(typeof fn == 'function' ? fn : Function(fn), args); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (__webpack_require__(20)(process) == 'process') { - defer = function (id) { - process.nextTick(ctx(run, id, 1)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(ctx(run, id, 1)); - }; - // Browsers with MessageChannel, includes WebWorkers - } else if (MessageChannel) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { - defer = function (id) { - global.postMessage(id + '', '*'); - }; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in cel('script')) { - defer = function (id) { - html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run.call(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(ctx(run, id, 1), 0); - }; - } -} -module.exports = { - set: setTask, - clear: clearTask -}; - - -/***/ }), -/* 93 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var macrotask = __webpack_require__(92).set; -var Observer = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var isNode = __webpack_require__(20)(process) == 'process'; - -module.exports = function () { - var head, last, notify; - - var flush = function () { - var parent, fn; - if (isNode && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (e) { - if (head) notify(); - else last = undefined; - throw e; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (isNode) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 - } else if (Observer && !(global.navigator && global.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(''); - new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - var promise = Promise.resolve(undefined); - notify = function () { - promise.then(flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } - - return function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; - }; -}; - - -/***/ }), -/* 94 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 25.4.1.5 NewPromiseCapability(C) -var aFunction = __webpack_require__(10); - -function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -} - -module.exports.f = function (C) { - return new PromiseCapability(C); -}; - - -/***/ }), -/* 95 */ -/***/ (function(module, exports, __webpack_require__) { - -// all object keys, includes non-enumerable and symbols -var gOPN = __webpack_require__(39); -var gOPS = __webpack_require__(54); -var anObject = __webpack_require__(1); -var Reflect = __webpack_require__(2).Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; - - -/***/ }), -/* 96 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var DESCRIPTORS = __webpack_require__(6); -var LIBRARY = __webpack_require__(32); -var $typed = __webpack_require__(65); -var hide = __webpack_require__(14); -var redefineAll = __webpack_require__(43); -var fails = __webpack_require__(4); -var anInstance = __webpack_require__(42); -var toInteger = __webpack_require__(21); -var toLength = __webpack_require__(7); -var toIndex = __webpack_require__(123); -var gOPN = __webpack_require__(39).f; -var dP = __webpack_require__(8).f; -var arrayFill = __webpack_require__(87); -var setToStringTag = __webpack_require__(45); -var ARRAY_BUFFER = 'ArrayBuffer'; -var DATA_VIEW = 'DataView'; -var PROTOTYPE = 'prototype'; -var WRONG_LENGTH = 'Wrong length!'; -var WRONG_INDEX = 'Wrong index!'; -var $ArrayBuffer = global[ARRAY_BUFFER]; -var $DataView = global[DATA_VIEW]; -var Math = global.Math; -var RangeError = global.RangeError; -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = global.Infinity; -var BaseBuffer = $ArrayBuffer; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; -var BUFFER = 'buffer'; -var BYTE_LENGTH = 'byteLength'; -var BYTE_OFFSET = 'byteOffset'; -var $BUFFER = DESCRIPTORS ? '_b' : BUFFER; -var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH; -var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET; - -// IEEE754 conversions based on https://github.com/feross/ieee754 -function packIEEE754(value, mLen, nBytes) { - var buffer = new Array(nBytes); - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0; - var i = 0; - var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; - var e, m, c; - value = abs(value); - // eslint-disable-next-line no-self-compare - if (value != value || value === Infinity) { - // eslint-disable-next-line no-self-compare - m = value != value ? 1 : 0; - e = eMax; - } else { - e = floor(log(value) / LN2); - if (value * (c = pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * pow(2, mLen); - e = e + eBias; - } else { - m = value * pow(2, eBias - 1) * pow(2, mLen); - e = 0; - } - } - for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8); - e = e << mLen | m; - eLen += mLen; - for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8); - buffer[--i] |= s * 128; - return buffer; -} -function unpackIEEE754(buffer, mLen, nBytes) { - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = eLen - 7; - var i = nBytes - 1; - var s = buffer[i--]; - var e = s & 127; - var m; - s >>= 7; - for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8); - m = e & (1 << -nBits) - 1; - e >>= -nBits; - nBits += mLen; - for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8); - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : s ? -Infinity : Infinity; - } else { - m = m + pow(2, mLen); - e = e - eBias; - } return (s ? -1 : 1) * m * pow(2, e - mLen); -} - -function unpackI32(bytes) { - return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0]; -} -function packI8(it) { - return [it & 0xff]; -} -function packI16(it) { - return [it & 0xff, it >> 8 & 0xff]; -} -function packI32(it) { - return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff]; -} -function packF64(it) { - return packIEEE754(it, 52, 8); -} -function packF32(it) { - return packIEEE754(it, 23, 4); -} - -function addGetter(C, key, internal) { - dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } }); -} - -function get(view, bytes, index, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = store.slice(start, start + bytes); - return isLittleEndian ? pack : pack.reverse(); -} -function set(view, bytes, index, conversion, value, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = conversion(+value); - for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1]; -} - -if (!$typed.ABV) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer, ARRAY_BUFFER); - var byteLength = toIndex(length); - this._b = arrayFill.call(new Array(byteLength), 0); - this[$LENGTH] = byteLength; - }; - - $DataView = function DataView(buffer, byteOffset, byteLength) { - anInstance(this, $DataView, DATA_VIEW); - anInstance(buffer, $ArrayBuffer, DATA_VIEW); - var bufferLength = buffer[$LENGTH]; - var offset = toInteger(byteOffset); - if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!'); - byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); - if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); - this[$BUFFER] = buffer; - this[$OFFSET] = offset; - this[$LENGTH] = byteLength; - }; - - if (DESCRIPTORS) { - addGetter($ArrayBuffer, BYTE_LENGTH, '_l'); - addGetter($DataView, BUFFER, '_b'); - addGetter($DataView, BYTE_LENGTH, '_l'); - addGetter($DataView, BYTE_OFFSET, '_o'); - } - - redefineAll($DataView[PROTOTYPE], { - getInt8: function getInt8(byteOffset) { - return get(this, 1, byteOffset)[0] << 24 >> 24; - }, - getUint8: function getUint8(byteOffset) { - return get(this, 1, byteOffset)[0]; - }, - getInt16: function getInt16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return (bytes[1] << 8 | bytes[0]) << 16 >> 16; - }, - getUint16: function getUint16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return bytes[1] << 8 | bytes[0]; - }, - getInt32: function getInt32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])); - }, - getUint32: function getUint32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0; - }, - getFloat32: function getFloat32(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4); - }, - getFloat64: function getFloat64(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8); - }, - setInt8: function setInt8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setUint8: function setUint8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setInt16: function setInt16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setUint16: function setUint16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setInt32: function setInt32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setUint32: function setUint32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packF32, value, arguments[2]); - }, - setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { - set(this, 8, byteOffset, packF64, value, arguments[2]); - } - }); -} else { - if (!fails(function () { - $ArrayBuffer(1); - }) || !fails(function () { - new $ArrayBuffer(-1); // eslint-disable-line no-new - }) || fails(function () { - new $ArrayBuffer(); // eslint-disable-line no-new - new $ArrayBuffer(1.5); // eslint-disable-line no-new - new $ArrayBuffer(NaN); // eslint-disable-line no-new - return $ArrayBuffer.name != ARRAY_BUFFER; - })) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer); - return new BaseBuffer(toIndex(length)); - }; - var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE]; - for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) { - if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]); - } - if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer; - } - // iOS Safari 7.x bug - var view = new $DataView(new $ArrayBuffer(2)); - var $setInt8 = $DataView[PROTOTYPE].setInt8; - view.setInt8(0, 2147483648); - view.setInt8(1, 2147483649); - if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], { - setInt8: function setInt8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - }, - setUint8: function setUint8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - } - }, true); -} -setToStringTag($ArrayBuffer, ARRAY_BUFFER); -setToStringTag($DataView, DATA_VIEW); -hide($DataView[PROTOTYPE], $typed.VIEW, true); -exports[ARRAY_BUFFER] = $ArrayBuffer; -exports[DATA_VIEW] = $DataView; - - -/***/ }), -/* 97 */ -/***/ (function(module, exports) { - -module.exports = function (regExp, replace) { - var replacer = replace === Object(replace) ? function (part) { - return replace[part]; - } : replace; - return function (it) { - return String(it).replace(regExp, replacer); - }; -}; - - -/***/ }), -/* 98 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = !__webpack_require__(6) && !__webpack_require__(4)(function () { - return Object.defineProperty(__webpack_require__(69)('div'), 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 99 */ -/***/ (function(module, exports, __webpack_require__) { - -exports.f = __webpack_require__(5); - - -/***/ }), -/* 100 */ -/***/ (function(module, exports, __webpack_require__) { - -var has = __webpack_require__(12); -var toIObject = __webpack_require__(11); -var arrayIndexOf = __webpack_require__(53)(false); -var IE_PROTO = __webpack_require__(71)('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; - - -/***/ }), -/* 101 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var anObject = __webpack_require__(1); -var getKeys = __webpack_require__(27); - -module.exports = __webpack_require__(6) ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; - - -/***/ }), -/* 102 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = __webpack_require__(11); -var gOPN = __webpack_require__(39).f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; - - -/***/ }), -/* 103 */ -/***/ (function(module, exports) { - -// 7.2.9 SameValue(x, y) -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; - - -/***/ }), -/* 104 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var aFunction = __webpack_require__(10); -var isObject = __webpack_require__(3); -var invoke = __webpack_require__(76); -var arraySlice = [].slice; -var factories = {}; - -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); -}; - -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; -}; - - -/***/ }), -/* 105 */ -/***/ (function(module, exports, __webpack_require__) { - -var cof = __webpack_require__(20); -module.exports = function (it, msg) { - if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); - return +it; -}; - - -/***/ }), -/* 106 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var isObject = __webpack_require__(3); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; - - -/***/ }), -/* 107 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseFloat = __webpack_require__(2).parseFloat; -var $trim = __webpack_require__(46).trim; - -module.exports = 1 / $parseFloat(__webpack_require__(78) + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; - - -/***/ }), -/* 108 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseInt = __webpack_require__(2).parseInt; -var $trim = __webpack_require__(46).trim; -var ws = __webpack_require__(78); -var hex = /^[-+]?0[xX]/; - -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; - - -/***/ }), -/* 109 */ -/***/ (function(module, exports) { - -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; - - -/***/ }), -/* 110 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var sign = __webpack_require__(80); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; - - -/***/ }), -/* 111 */ -/***/ (function(module, exports, __webpack_require__) { - -// call something on iterator step with safe closing on error -var anObject = __webpack_require__(1); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; - } -}; - - -/***/ }), -/* 112 */ -/***/ (function(module, exports, __webpack_require__) { - -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(48); -var toLength = __webpack_require__(7); - -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; - - -/***/ }), -/* 113 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(38); -var toLength = __webpack_require__(7); - -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; - - -/***/ }), -/* 114 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var regexpExec = __webpack_require__(90); -__webpack_require__(0)({ - target: 'RegExp', - proto: true, - forced: regexpExec !== /./.exec -}, { - exec: regexpExec -}); - - -/***/ }), -/* 115 */ -/***/ (function(module, exports, __webpack_require__) { - -// 21.2.5.3 get RegExp.prototype.flags() -if (__webpack_require__(6) && /./g.flags != 'g') __webpack_require__(8).f(RegExp.prototype, 'flags', { - configurable: true, - get: __webpack_require__(51) -}); - - -/***/ }), -/* 116 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } -}; - - -/***/ }), -/* 117 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var newPromiseCapability = __webpack_require__(94); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; - - -/***/ }), -/* 118 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(119); -var validate = __webpack_require__(44); -var MAP = 'Map'; - -// 23.1 Map Objects -module.exports = __webpack_require__(64)(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); - - -/***/ }), -/* 119 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var dP = __webpack_require__(8).f; -var create = __webpack_require__(28); -var redefineAll = __webpack_require__(43); -var ctx = __webpack_require__(19); -var anInstance = __webpack_require__(42); -var forOf = __webpack_require__(36); -var $iterDefine = __webpack_require__(58); -var step = __webpack_require__(89); -var setSpecies = __webpack_require__(41); -var DESCRIPTORS = __webpack_require__(6); -var fastKey = __webpack_require__(33).fastKey; -var validate = __webpack_require__(44); -var SIZE = DESCRIPTORS ? '_s' : 'size'; - -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); - } -}; - - -/***/ }), -/* 120 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(119); -var validate = __webpack_require__(44); -var SET = 'Set'; - -// 23.2 Set Objects -module.exports = __webpack_require__(64)(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); - } -}, strong); - - -/***/ }), -/* 121 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var each = __webpack_require__(26)(0); -var redefine = __webpack_require__(15); -var meta = __webpack_require__(33); -var assign = __webpack_require__(74); -var weak = __webpack_require__(122); -var isObject = __webpack_require__(3); -var validate = __webpack_require__(44); -var NATIVE_WEAK_MAP = __webpack_require__(44); -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var InternalMap; - -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; - -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = __webpack_require__(64)(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); -} - - -/***/ }), -/* 122 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var redefineAll = __webpack_require__(43); -var getWeak = __webpack_require__(33).getWeak; -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var anInstance = __webpack_require__(42); -var forOf = __webpack_require__(36); -var createArrayMethod = __webpack_require__(26); -var $has = __webpack_require__(12); -var validate = __webpack_require__(44); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); - } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; - - -/***/ }), -/* 123 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = __webpack_require__(21); -var toLength = __webpack_require__(7); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; - - -/***/ }), -/* 124 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = __webpack_require__(55); -var isObject = __webpack_require__(3); -var toLength = __webpack_require__(7); -var ctx = __webpack_require__(19); -var IS_CONCAT_SPREADABLE = __webpack_require__(5)('isConcatSpreadable'); - -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} - -module.exports = flattenIntoArray; - - -/***/ }), -/* 125 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = __webpack_require__(7); -var repeat = __webpack_require__(79); -var defined = __webpack_require__(24); - -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; - - -/***/ }), -/* 126 */ -/***/ (function(module, exports, __webpack_require__) { - -var DESCRIPTORS = __webpack_require__(6); -var getKeys = __webpack_require__(27); -var toIObject = __webpack_require__(11); -var isEnum = __webpack_require__(49).f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || isEnum.call(O, key)) { - result.push(isEntries ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; - - -/***/ }), -/* 127 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = __webpack_require__(34); -var from = __webpack_require__(128); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; -}; - - -/***/ }), -/* 128 */ -/***/ (function(module, exports, __webpack_require__) { - -var forOf = __webpack_require__(36); - -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; - - -/***/ }), -/* 129 */ -/***/ (function(module, exports) { - -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; - - -/***/ }), -/* 130 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(34); -var ITERATOR = __webpack_require__(5)('iterator'); -var Iterators = __webpack_require__(40); -module.exports = __webpack_require__(13).isIterable = function (it) { - var O = Object(it); - return O[ITERATOR] !== undefined - || '@@iterator' in O - // eslint-disable-next-line no-prototype-builtins - || Iterators.hasOwnProperty(classof(O)); -}; - - -/***/ }), -/* 131 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var path = __webpack_require__(132); -var invoke = __webpack_require__(76); -var aFunction = __webpack_require__(10); -module.exports = function (/* ...pargs */) { - var fn = aFunction(this); - var length = arguments.length; - var pargs = new Array(length); - var i = 0; - var _ = path._; - var holder = false; - while (length > i) if ((pargs[i] = arguments[i++]) === _) holder = true; - return function (/* ...args */) { - var that = this; - var aLen = arguments.length; - var j = 0; - var k = 0; - var args; - if (!holder && !aLen) return invoke(fn, pargs, that); - args = pargs.slice(); - if (holder) for (;length > j; j++) if (args[j] === _) args[j] = arguments[k++]; - while (aLen > k) args.push(arguments[k++]); - return invoke(fn, args, that); - }; -}; - - -/***/ }), -/* 132 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = __webpack_require__(2); - - -/***/ }), -/* 133 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var gOPD = __webpack_require__(16); -var ownKeys = __webpack_require__(95); -var toIObject = __webpack_require__(11); - -module.exports = function define(target, mixin) { - var keys = ownKeys(toIObject(mixin)); - var length = keys.length; - var i = 0; - var key; - while (length > i) dP.f(target, key = keys[i++], gOPD.f(mixin, key)); - return target; -}; - - -/***/ }), -/* 134 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(135); -__webpack_require__(138); -__webpack_require__(139); -__webpack_require__(140); -__webpack_require__(141); -__webpack_require__(142); -__webpack_require__(143); -__webpack_require__(144); -__webpack_require__(145); -__webpack_require__(146); -__webpack_require__(147); -__webpack_require__(148); -__webpack_require__(149); -__webpack_require__(150); -__webpack_require__(151); -__webpack_require__(152); -__webpack_require__(153); -__webpack_require__(154); -__webpack_require__(155); -__webpack_require__(156); -__webpack_require__(157); -__webpack_require__(158); -__webpack_require__(159); -__webpack_require__(160); -__webpack_require__(161); -__webpack_require__(162); -__webpack_require__(163); -__webpack_require__(164); -__webpack_require__(165); -__webpack_require__(166); -__webpack_require__(167); -__webpack_require__(168); -__webpack_require__(169); -__webpack_require__(170); -__webpack_require__(171); -__webpack_require__(172); -__webpack_require__(173); -__webpack_require__(174); -__webpack_require__(175); -__webpack_require__(176); -__webpack_require__(177); -__webpack_require__(178); -__webpack_require__(179); -__webpack_require__(180); -__webpack_require__(181); -__webpack_require__(182); -__webpack_require__(183); -__webpack_require__(184); -__webpack_require__(185); -__webpack_require__(186); -__webpack_require__(187); -__webpack_require__(188); -__webpack_require__(189); -__webpack_require__(190); -__webpack_require__(191); -__webpack_require__(192); -__webpack_require__(193); -__webpack_require__(194); -__webpack_require__(195); -__webpack_require__(196); -__webpack_require__(197); -__webpack_require__(198); -__webpack_require__(199); -__webpack_require__(200); -__webpack_require__(201); -__webpack_require__(202); -__webpack_require__(203); -__webpack_require__(204); -__webpack_require__(205); -__webpack_require__(206); -__webpack_require__(207); -__webpack_require__(208); -__webpack_require__(209); -__webpack_require__(210); -__webpack_require__(211); -__webpack_require__(212); -__webpack_require__(213); -__webpack_require__(214); -__webpack_require__(215); -__webpack_require__(216); -__webpack_require__(217); -__webpack_require__(219); -__webpack_require__(220); -__webpack_require__(221); -__webpack_require__(222); -__webpack_require__(223); -__webpack_require__(224); -__webpack_require__(225); -__webpack_require__(226); -__webpack_require__(227); -__webpack_require__(228); -__webpack_require__(229); -__webpack_require__(230); -__webpack_require__(88); -__webpack_require__(231); -__webpack_require__(232); -__webpack_require__(114); -__webpack_require__(233); -__webpack_require__(115); -__webpack_require__(234); -__webpack_require__(235); -__webpack_require__(236); -__webpack_require__(237); -__webpack_require__(238); -__webpack_require__(118); -__webpack_require__(120); -__webpack_require__(121); -__webpack_require__(239); -__webpack_require__(240); -__webpack_require__(241); -__webpack_require__(242); -__webpack_require__(243); -__webpack_require__(244); -__webpack_require__(245); -__webpack_require__(246); -__webpack_require__(247); -__webpack_require__(248); -__webpack_require__(249); -__webpack_require__(250); -__webpack_require__(251); -__webpack_require__(252); -__webpack_require__(253); -__webpack_require__(254); -__webpack_require__(255); -__webpack_require__(256); -__webpack_require__(258); -__webpack_require__(259); -__webpack_require__(261); -__webpack_require__(262); -__webpack_require__(263); -__webpack_require__(264); -__webpack_require__(265); -__webpack_require__(266); -__webpack_require__(267); -__webpack_require__(268); -__webpack_require__(269); -__webpack_require__(270); -__webpack_require__(271); -__webpack_require__(272); -__webpack_require__(273); -__webpack_require__(274); -__webpack_require__(275); -__webpack_require__(276); -__webpack_require__(277); -__webpack_require__(278); -__webpack_require__(279); -__webpack_require__(280); -__webpack_require__(281); -__webpack_require__(282); -__webpack_require__(283); -__webpack_require__(284); -__webpack_require__(285); -__webpack_require__(286); -__webpack_require__(287); -__webpack_require__(288); -__webpack_require__(289); -__webpack_require__(290); -__webpack_require__(291); -__webpack_require__(292); -__webpack_require__(293); -__webpack_require__(294); -__webpack_require__(295); -__webpack_require__(296); -__webpack_require__(297); -__webpack_require__(298); -__webpack_require__(299); -__webpack_require__(300); -__webpack_require__(301); -__webpack_require__(302); -__webpack_require__(303); -__webpack_require__(304); -__webpack_require__(305); -__webpack_require__(306); -__webpack_require__(307); -__webpack_require__(308); -__webpack_require__(309); -__webpack_require__(310); -__webpack_require__(311); -__webpack_require__(312); -__webpack_require__(313); -__webpack_require__(314); -__webpack_require__(315); -__webpack_require__(316); -__webpack_require__(317); -__webpack_require__(318); -__webpack_require__(319); -__webpack_require__(320); -__webpack_require__(321); -__webpack_require__(322); -__webpack_require__(323); -__webpack_require__(324); -__webpack_require__(325); -__webpack_require__(326); -__webpack_require__(327); -__webpack_require__(328); -__webpack_require__(329); -__webpack_require__(330); -__webpack_require__(331); -__webpack_require__(50); -__webpack_require__(333); -__webpack_require__(130); -__webpack_require__(334); -__webpack_require__(335); -__webpack_require__(336); -__webpack_require__(337); -__webpack_require__(338); -__webpack_require__(339); -__webpack_require__(340); -__webpack_require__(341); -__webpack_require__(342); -module.exports = __webpack_require__(343); - - -/***/ }), -/* 135 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// ECMAScript 6 symbols shim -var global = __webpack_require__(2); -var has = __webpack_require__(12); -var DESCRIPTORS = __webpack_require__(6); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(15); -var META = __webpack_require__(33).KEY; -var $fails = __webpack_require__(4); -var shared = __webpack_require__(47); -var setToStringTag = __webpack_require__(45); -var uid = __webpack_require__(37); -var wks = __webpack_require__(5); -var wksExt = __webpack_require__(99); -var wksDefine = __webpack_require__(70); -var enumKeys = __webpack_require__(137); -var isArray = __webpack_require__(55); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var toObject = __webpack_require__(9); -var toIObject = __webpack_require__(11); -var toPrimitive = __webpack_require__(23); -var createDesc = __webpack_require__(31); -var _create = __webpack_require__(28); -var gOPNExt = __webpack_require__(102); -var $GOPD = __webpack_require__(16); -var $GOPS = __webpack_require__(54); -var $DP = __webpack_require__(8); -var $keys = __webpack_require__(27); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - __webpack_require__(39).f = gOPNExt.f = $getOwnPropertyNames; - __webpack_require__(49).f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !__webpack_require__(32)) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); }); - -$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - } -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(14)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); - - -/***/ }), -/* 136 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = __webpack_require__(47)('native-function-to-string', Function.toString); - - -/***/ }), -/* 137 */ -/***/ (function(module, exports, __webpack_require__) { - -// all enumerable object keys, includes symbols -var getKeys = __webpack_require__(27); -var gOPS = __webpack_require__(54); -var pIE = __webpack_require__(49); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; - - -/***/ }), -/* 138 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) -$export($export.S + $export.F * !__webpack_require__(6), 'Object', { defineProperty: __webpack_require__(8).f }); - - -/***/ }), -/* 139 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties) -$export($export.S + $export.F * !__webpack_require__(6), 'Object', { defineProperties: __webpack_require__(101) }); - - -/***/ }), -/* 140 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) -var toIObject = __webpack_require__(11); -var $getOwnPropertyDescriptor = __webpack_require__(16).f; - -__webpack_require__(25)('getOwnPropertyDescriptor', function () { - return function getOwnPropertyDescriptor(it, key) { - return $getOwnPropertyDescriptor(toIObject(it), key); - }; -}); - - -/***/ }), -/* 141 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -$export($export.S, 'Object', { create: __webpack_require__(28) }); - - -/***/ }), -/* 142 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 Object.getPrototypeOf(O) -var toObject = __webpack_require__(9); -var $getPrototypeOf = __webpack_require__(17); - -__webpack_require__(25)('getPrototypeOf', function () { - return function getPrototypeOf(it) { - return $getPrototypeOf(toObject(it)); - }; -}); - - -/***/ }), -/* 143 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 Object.keys(O) -var toObject = __webpack_require__(9); -var $keys = __webpack_require__(27); - -__webpack_require__(25)('keys', function () { - return function keys(it) { - return $keys(toObject(it)); - }; -}); - - -/***/ }), -/* 144 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 Object.getOwnPropertyNames(O) -__webpack_require__(25)('getOwnPropertyNames', function () { - return __webpack_require__(102).f; -}); - - -/***/ }), -/* 145 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.5 Object.freeze(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(33).onFreeze; - -__webpack_require__(25)('freeze', function ($freeze) { - return function freeze(it) { - return $freeze && isObject(it) ? $freeze(meta(it)) : it; - }; -}); - - -/***/ }), -/* 146 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.17 Object.seal(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(33).onFreeze; - -__webpack_require__(25)('seal', function ($seal) { - return function seal(it) { - return $seal && isObject(it) ? $seal(meta(it)) : it; - }; -}); - - -/***/ }), -/* 147 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.15 Object.preventExtensions(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(33).onFreeze; - -__webpack_require__(25)('preventExtensions', function ($preventExtensions) { - return function preventExtensions(it) { - return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it; - }; -}); - - -/***/ }), -/* 148 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.12 Object.isFrozen(O) -var isObject = __webpack_require__(3); - -__webpack_require__(25)('isFrozen', function ($isFrozen) { - return function isFrozen(it) { - return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true; - }; -}); - - -/***/ }), -/* 149 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.13 Object.isSealed(O) -var isObject = __webpack_require__(3); - -__webpack_require__(25)('isSealed', function ($isSealed) { - return function isSealed(it) { - return isObject(it) ? $isSealed ? $isSealed(it) : false : true; - }; -}); - - -/***/ }), -/* 150 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.11 Object.isExtensible(O) -var isObject = __webpack_require__(3); - -__webpack_require__(25)('isExtensible', function ($isExtensible) { - return function isExtensible(it) { - return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false; - }; -}); - - -/***/ }), -/* 151 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.1 Object.assign(target, source) -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { assign: __webpack_require__(74) }); - - -/***/ }), -/* 152 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.10 Object.is(value1, value2) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { is: __webpack_require__(103) }); - - -/***/ }), -/* 153 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.19 Object.setPrototypeOf(O, proto) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(75).set }); - - -/***/ }), -/* 154 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 19.1.3.6 Object.prototype.toString() -var classof = __webpack_require__(34); -var test = {}; -test[__webpack_require__(5)('toStringTag')] = 'z'; -if (test + '' != '[object z]') { - __webpack_require__(15)(Object.prototype, 'toString', function toString() { - return '[object ' + classof(this) + ']'; - }, true); -} - - -/***/ }), -/* 155 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...) -var $export = __webpack_require__(0); - -$export($export.P, 'Function', { bind: __webpack_require__(104) }); - - -/***/ }), -/* 156 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8).f; -var FProto = Function.prototype; -var nameRE = /^\s*function ([^ (]*)/; -var NAME = 'name'; - -// 19.2.4.2 name -NAME in FProto || __webpack_require__(6) && dP(FProto, NAME, { - configurable: true, - get: function () { - try { - return ('' + this).match(nameRE)[1]; - } catch (e) { - return ''; - } - } -}); - - -/***/ }), -/* 157 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var isObject = __webpack_require__(3); -var getPrototypeOf = __webpack_require__(17); -var HAS_INSTANCE = __webpack_require__(5)('hasInstance'); -var FunctionProto = Function.prototype; -// 19.2.3.6 Function.prototype[@@hasInstance](V) -if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(8).f(FunctionProto, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; -} }); - - -/***/ }), -/* 158 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var has = __webpack_require__(12); -var cof = __webpack_require__(20); -var inheritIfRequired = __webpack_require__(77); -var toPrimitive = __webpack_require__(23); -var fails = __webpack_require__(4); -var gOPN = __webpack_require__(39).f; -var gOPD = __webpack_require__(16).f; -var dP = __webpack_require__(8).f; -var $trim = __webpack_require__(46).trim; -var NUMBER = 'Number'; -var $Number = global[NUMBER]; -var Base = $Number; -var proto = $Number.prototype; -// Opera ~12 has broken Object#toString -var BROKEN_COF = cof(__webpack_require__(28)(proto)) == NUMBER; -var TRIM = 'trim' in String.prototype; - -// 7.1.3 ToNumber(argument) -var toNumber = function (argument) { - var it = toPrimitive(argument, false); - if (typeof it == 'string' && it.length > 2) { - it = TRIM ? it.trim() : $trim(it, 3); - var first = it.charCodeAt(0); - var third, radix, maxCode; - if (first === 43 || first === 45) { - third = it.charCodeAt(2); - if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix - } else if (first === 48) { - switch (it.charCodeAt(1)) { - case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i - case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i - default: return +it; - } - for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) { - code = digits.charCodeAt(i); - // parseInt parses a string to a first unavailable symbol - // but ToNumber should return NaN if a string contains unavailable symbols - if (code < 48 || code > maxCode) return NaN; - } return parseInt(digits, radix); - } - } return +it; -}; - -if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) { - $Number = function Number(value) { - var it = arguments.length < 1 ? 0 : value; - var that = this; - return that instanceof $Number - // check on 1..constructor(foo) case - && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER) - ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it); - }; - for (var keys = __webpack_require__(6) ? gOPN(Base) : ( - // ES3: - 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' + - // ES6 (in case, if modules with ES6 Number statics required before): - 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' + - 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger' - ).split(','), j = 0, key; keys.length > j; j++) { - if (has(Base, key = keys[j]) && !has($Number, key)) { - dP($Number, key, gOPD(Base, key)); - } - } - $Number.prototype = proto; - proto.constructor = $Number; - __webpack_require__(15)(global, NUMBER, $Number); -} - - -/***/ }), -/* 159 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toInteger = __webpack_require__(21); -var aNumberValue = __webpack_require__(105); -var repeat = __webpack_require__(79); -var $toFixed = 1.0.toFixed; -var floor = Math.floor; -var data = [0, 0, 0, 0, 0, 0]; -var ERROR = 'Number.toFixed: incorrect invocation!'; -var ZERO = '0'; - -var multiply = function (n, c) { - var i = -1; - var c2 = c; - while (++i < 6) { - c2 += n * data[i]; - data[i] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } -}; -var divide = function (n) { - var i = 6; - var c = 0; - while (--i >= 0) { - c += data[i]; - data[i] = floor(c / n); - c = (c % n) * 1e7; - } -}; -var numToString = function () { - var i = 6; - var s = ''; - while (--i >= 0) { - if (s !== '' || i === 0 || data[i] !== 0) { - var t = String(data[i]); - s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t; - } - } return s; -}; -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -$export($export.P + $export.F * (!!$toFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !__webpack_require__(4)(function () { - // V8 ~ Android 4.3- - $toFixed.call({}); -})), 'Number', { - toFixed: function toFixed(fractionDigits) { - var x = aNumberValue(this, ERROR); - var f = toInteger(fractionDigits); - var s = ''; - var m = ZERO; - var e, z, j, k; - if (f < 0 || f > 20) throw RangeError(ERROR); - // eslint-disable-next-line no-self-compare - if (x != x) return 'NaN'; - if (x <= -1e21 || x >= 1e21) return String(x); - if (x < 0) { - s = '-'; - x = -x; - } - if (x > 1e-21) { - e = log(x * pow(2, 69, 1)) - 69; - z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = f; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - m = numToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - m = numToString() + repeat.call(ZERO, f); - } - } - if (f > 0) { - k = m.length; - m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); - } else { - m = s + m; - } return m; - } -}); - - -/***/ }), -/* 160 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $fails = __webpack_require__(4); -var aNumberValue = __webpack_require__(105); -var $toPrecision = 1.0.toPrecision; - -$export($export.P + $export.F * ($fails(function () { - // IE7- - return $toPrecision.call(1, undefined) !== '1'; -}) || !$fails(function () { - // V8 ~ Android 4.3- - $toPrecision.call({}); -})), 'Number', { - toPrecision: function toPrecision(precision) { - var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); - return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); - } -}); - - -/***/ }), -/* 161 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.1 Number.EPSILON -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) }); - - -/***/ }), -/* 162 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.2 Number.isFinite(number) -var $export = __webpack_require__(0); -var _isFinite = __webpack_require__(2).isFinite; - -$export($export.S, 'Number', { - isFinite: function isFinite(it) { - return typeof it == 'number' && _isFinite(it); - } -}); - - -/***/ }), -/* 163 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { isInteger: __webpack_require__(106) }); - - -/***/ }), -/* 164 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.4 Number.isNaN(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); - - -/***/ }), -/* 165 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.5 Number.isSafeInteger(number) -var $export = __webpack_require__(0); -var isInteger = __webpack_require__(106); -var abs = Math.abs; - -$export($export.S, 'Number', { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1fffffffffffff; - } -}); - - -/***/ }), -/* 166 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.6 Number.MAX_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff }); - - -/***/ }), -/* 167 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.10 Number.MIN_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff }); - - -/***/ }), -/* 168 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(107); -// 20.1.2.12 Number.parseFloat(string) -$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat }); - - -/***/ }), -/* 169 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(108); -// 20.1.2.13 Number.parseInt(string, radix) -$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt }); - - -/***/ }), -/* 170 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(108); -// 18.2.5 parseInt(string, radix) -$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt }); - - -/***/ }), -/* 171 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(107); -// 18.2.4 parseFloat(string) -$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat }); - - -/***/ }), -/* 172 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.3 Math.acosh(x) -var $export = __webpack_require__(0); -var log1p = __webpack_require__(109); -var sqrt = Math.sqrt; -var $acosh = Math.acosh; - -$export($export.S + $export.F * !($acosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - && Math.floor($acosh(Number.MAX_VALUE)) == 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - && $acosh(Infinity) == Infinity -), 'Math', { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? Math.log(x) + Math.LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); - - -/***/ }), -/* 173 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.5 Math.asinh(x) -var $export = __webpack_require__(0); -var $asinh = Math.asinh; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1)); -} - -// Tor Browser bug: Math.asinh(0) -> -0 -$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh }); - - -/***/ }), -/* 174 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.7 Math.atanh(x) -var $export = __webpack_require__(0); -var $atanh = Math.atanh; - -// Tor Browser bug: Math.atanh(-0) -> 0 -$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2; - } -}); - - -/***/ }), -/* 175 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.9 Math.cbrt(x) -var $export = __webpack_require__(0); -var sign = __webpack_require__(80); - -$export($export.S, 'Math', { - cbrt: function cbrt(x) { - return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3); - } -}); - - -/***/ }), -/* 176 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.11 Math.clz32(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32; - } -}); - - -/***/ }), -/* 177 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.12 Math.cosh(x) -var $export = __webpack_require__(0); -var exp = Math.exp; - -$export($export.S, 'Math', { - cosh: function cosh(x) { - return (exp(x = +x) + exp(-x)) / 2; - } -}); - - -/***/ }), -/* 178 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.14 Math.expm1(x) -var $export = __webpack_require__(0); -var $expm1 = __webpack_require__(81); - -$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 }); - - -/***/ }), -/* 179 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { fround: __webpack_require__(110) }); - - -/***/ }), -/* 180 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.17 Math.hypot([value1[, value2[, … ]]]) -var $export = __webpack_require__(0); -var abs = Math.abs; - -$export($export.S, 'Math', { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * Math.sqrt(sum); - } -}); - - -/***/ }), -/* 181 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.18 Math.imul(x, y) -var $export = __webpack_require__(0); -var $imul = Math.imul; - -// some WebKit versions fails with big numbers, some has wrong arity -$export($export.S + $export.F * __webpack_require__(4)(function () { - return $imul(0xffffffff, 5) != -5 || $imul.length != 2; -}), 'Math', { - imul: function imul(x, y) { - var UINT16 = 0xffff; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); - - -/***/ }), -/* 182 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.21 Math.log10(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log10: function log10(x) { - return Math.log(x) * Math.LOG10E; - } -}); - - -/***/ }), -/* 183 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.20 Math.log1p(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { log1p: __webpack_require__(109) }); - - -/***/ }), -/* 184 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.22 Math.log2(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log2: function log2(x) { - return Math.log(x) / Math.LN2; - } -}); - - -/***/ }), -/* 185 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.28 Math.sign(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { sign: __webpack_require__(80) }); - - -/***/ }), -/* 186 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.30 Math.sinh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(81); -var exp = Math.exp; - -// V8 near Chromium 38 has a problem with very small numbers -$export($export.S + $export.F * __webpack_require__(4)(function () { - return !Math.sinh(-2e-17) != -2e-17; -}), 'Math', { - sinh: function sinh(x) { - return Math.abs(x = +x) < 1 - ? (expm1(x) - expm1(-x)) / 2 - : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2); - } -}); - - -/***/ }), -/* 187 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.33 Math.tanh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(81); -var exp = Math.exp; - -$export($export.S, 'Math', { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); - - -/***/ }), -/* 188 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.34 Math.trunc(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - trunc: function trunc(it) { - return (it > 0 ? Math.floor : Math.ceil)(it); - } -}); - - -/***/ }), -/* 189 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toAbsoluteIndex = __webpack_require__(38); -var fromCharCode = String.fromCharCode; -var $fromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var res = []; - var aLen = arguments.length; - var i = 0; - var code; - while (aLen > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point'); - res.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) - ); - } return res.join(''); - } -}); - - -/***/ }), -/* 190 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var toLength = __webpack_require__(7); - -$export($export.S, 'String', { - // 21.1.2.4 String.raw(callSite, ...substitutions) - raw: function raw(callSite) { - var tpl = toIObject(callSite.raw); - var len = toLength(tpl.length); - var aLen = arguments.length; - var res = []; - var i = 0; - while (len > i) { - res.push(String(tpl[i++])); - if (i < aLen) res.push(String(arguments[i])); - } return res.join(''); - } -}); - - -/***/ }), -/* 191 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.1.3.25 String.prototype.trim() -__webpack_require__(46)('trim', function ($trim) { - return function trim() { - return $trim(this, 3); - }; -}); - - -/***/ }), -/* 192 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $at = __webpack_require__(56)(false); -$export($export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) - codePointAt: function codePointAt(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 193 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(7); -var context = __webpack_require__(82); -var ENDS_WITH = 'endsWith'; -var $endsWith = ''[ENDS_WITH]; - -$export($export.P + $export.F * __webpack_require__(83)(ENDS_WITH), 'String', { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = context(this, searchString, ENDS_WITH); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len); - var search = String(searchString); - return $endsWith - ? $endsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); - - -/***/ }), -/* 194 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.7 String.prototype.includes(searchString, position = 0) - -var $export = __webpack_require__(0); -var context = __webpack_require__(82); -var INCLUDES = 'includes'; - -$export($export.P + $export.F * __webpack_require__(83)(INCLUDES), 'String', { - includes: function includes(searchString /* , position = 0 */) { - return !!~context(this, searchString, INCLUDES) - .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); - } -}); - - -/***/ }), -/* 195 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.P, 'String', { - // 21.1.3.13 String.prototype.repeat(count) - repeat: __webpack_require__(79) -}); - - -/***/ }), -/* 196 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.18 String.prototype.startsWith(searchString [, position ]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(7); -var context = __webpack_require__(82); -var STARTS_WITH = 'startsWith'; -var $startsWith = ''[STARTS_WITH]; - -$export($export.P + $export.F * __webpack_require__(83)(STARTS_WITH), 'String', { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = context(this, searchString, STARTS_WITH); - var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return $startsWith - ? $startsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); - - -/***/ }), -/* 197 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $at = __webpack_require__(56)(true); - -// 21.1.3.27 String.prototype[@@iterator]() -__webpack_require__(58)(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); - - -/***/ }), -/* 198 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.2 String.prototype.anchor(name) -__webpack_require__(18)('anchor', function (createHTML) { - return function anchor(name) { - return createHTML(this, 'a', 'name', name); - }; -}); - - -/***/ }), -/* 199 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.3 String.prototype.big() -__webpack_require__(18)('big', function (createHTML) { - return function big() { - return createHTML(this, 'big', '', ''); - }; -}); - - -/***/ }), -/* 200 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.4 String.prototype.blink() -__webpack_require__(18)('blink', function (createHTML) { - return function blink() { - return createHTML(this, 'blink', '', ''); - }; -}); - - -/***/ }), -/* 201 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.5 String.prototype.bold() -__webpack_require__(18)('bold', function (createHTML) { - return function bold() { - return createHTML(this, 'b', '', ''); - }; -}); - - -/***/ }), -/* 202 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.6 String.prototype.fixed() -__webpack_require__(18)('fixed', function (createHTML) { - return function fixed() { - return createHTML(this, 'tt', '', ''); - }; -}); - - -/***/ }), -/* 203 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.7 String.prototype.fontcolor(color) -__webpack_require__(18)('fontcolor', function (createHTML) { - return function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - }; -}); - - -/***/ }), -/* 204 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.8 String.prototype.fontsize(size) -__webpack_require__(18)('fontsize', function (createHTML) { - return function fontsize(size) { - return createHTML(this, 'font', 'size', size); - }; -}); - - -/***/ }), -/* 205 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.9 String.prototype.italics() -__webpack_require__(18)('italics', function (createHTML) { - return function italics() { - return createHTML(this, 'i', '', ''); - }; -}); - - -/***/ }), -/* 206 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.10 String.prototype.link(url) -__webpack_require__(18)('link', function (createHTML) { - return function link(url) { - return createHTML(this, 'a', 'href', url); - }; -}); - - -/***/ }), -/* 207 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.11 String.prototype.small() -__webpack_require__(18)('small', function (createHTML) { - return function small() { - return createHTML(this, 'small', '', ''); - }; -}); - - -/***/ }), -/* 208 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.12 String.prototype.strike() -__webpack_require__(18)('strike', function (createHTML) { - return function strike() { - return createHTML(this, 'strike', '', ''); - }; -}); - - -/***/ }), -/* 209 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.13 String.prototype.sub() -__webpack_require__(18)('sub', function (createHTML) { - return function sub() { - return createHTML(this, 'sub', '', ''); - }; -}); - - -/***/ }), -/* 210 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.14 String.prototype.sup() -__webpack_require__(18)('sup', function (createHTML) { - return function sup() { - return createHTML(this, 'sup', '', ''); - }; -}); - - -/***/ }), -/* 211 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.2.2 / 15.4.3.2 Array.isArray(arg) -var $export = __webpack_require__(0); - -$export($export.S, 'Array', { isArray: __webpack_require__(55) }); - - -/***/ }), -/* 212 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var ctx = __webpack_require__(19); -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var call = __webpack_require__(111); -var isArrayIter = __webpack_require__(84); -var toLength = __webpack_require__(7); -var createProperty = __webpack_require__(85); -var getIterFn = __webpack_require__(50); - -$export($export.S + $export.F * !__webpack_require__(60)(function (iter) { Array.from(iter); }), 'Array', { - // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined) - from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var index = 0; - var iterFn = getIterFn(O); - var length, result, step, iterator; - if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2); - // if object isn't iterable or it's array with default iterator - use simple case - if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) { - for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) { - createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value); - } - } else { - length = toLength(O.length); - for (result = new C(length); length > index; index++) { - createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); - } - } - result.length = index; - return result; - } -}); - - -/***/ }), -/* 213 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var createProperty = __webpack_require__(85); - -// WebKit Array.of isn't generic -$export($export.S + $export.F * __webpack_require__(4)(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}), 'Array', { - // 22.1.2.3 Array.of( ...items) - of: function of(/* ...args */) { - var index = 0; - var aLen = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(aLen); - while (aLen > index) createProperty(result, index, arguments[index++]); - result.length = aLen; - return result; - } -}); - - -/***/ }), -/* 214 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.13 Array.prototype.join(separator) -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var arrayJoin = [].join; - -// fallback for not array-like strings -$export($export.P + $export.F * (__webpack_require__(48) != Object || !__webpack_require__(22)(arrayJoin)), 'Array', { - join: function join(separator) { - return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator); - } -}); - - -/***/ }), -/* 215 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var html = __webpack_require__(73); -var cof = __webpack_require__(20); -var toAbsoluteIndex = __webpack_require__(38); -var toLength = __webpack_require__(7); -var arraySlice = [].slice; - -// fallback for not array-like ES3 strings and DOM objects -$export($export.P + $export.F * __webpack_require__(4)(function () { - if (html) arraySlice.call(html); -}), 'Array', { - slice: function slice(begin, end) { - var len = toLength(this.length); - var klass = cof(this); - end = end === undefined ? len : end; - if (klass == 'Array') return arraySlice.call(this, begin, end); - var start = toAbsoluteIndex(begin, len); - var upTo = toAbsoluteIndex(end, len); - var size = toLength(upTo - start); - var cloned = new Array(size); - var i = 0; - for (; i < size; i++) cloned[i] = klass == 'String' - ? this.charAt(start + i) - : this[start + i]; - return cloned; - } -}); - - -/***/ }), -/* 216 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var fails = __webpack_require__(4); -var $sort = [].sort; -var test = [1, 2, 3]; - -$export($export.P + $export.F * (fails(function () { - // IE8- - test.sort(undefined); -}) || !fails(function () { - // V8 bug - test.sort(null); - // Old WebKit -}) || !__webpack_require__(22)($sort)), 'Array', { - // 22.1.3.25 Array.prototype.sort(comparefn) - sort: function sort(comparefn) { - return comparefn === undefined - ? $sort.call(toObject(this)) - : $sort.call(toObject(this), aFunction(comparefn)); - } -}); - - -/***/ }), -/* 217 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $forEach = __webpack_require__(26)(0); -var STRICT = __webpack_require__(22)([].forEach, true); - -$export($export.P + $export.F * !STRICT, 'Array', { - // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) - forEach: function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 218 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -var isArray = __webpack_require__(55); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (original) { - var C; - if (isArray(original)) { - C = original.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return C === undefined ? Array : C; -}; - - -/***/ }), -/* 219 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $map = __webpack_require__(26)(1); - -$export($export.P + $export.F * !__webpack_require__(22)([].map, true), 'Array', { - // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg]) - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 220 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $filter = __webpack_require__(26)(2); - -$export($export.P + $export.F * !__webpack_require__(22)([].filter, true), 'Array', { - // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg]) - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 221 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $some = __webpack_require__(26)(3); - -$export($export.P + $export.F * !__webpack_require__(22)([].some, true), 'Array', { - // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg]) - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 222 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $every = __webpack_require__(26)(4); - -$export($export.P + $export.F * !__webpack_require__(22)([].every, true), 'Array', { - // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg]) - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 223 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(112); - -$export($export.P + $export.F * !__webpack_require__(22)([].reduce, true), 'Array', { - // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], false); - } -}); - - -/***/ }), -/* 224 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(112); - -$export($export.P + $export.F * !__webpack_require__(22)([].reduceRight, true), 'Array', { - // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue]) - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], true); - } -}); - - -/***/ }), -/* 225 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $indexOf = __webpack_require__(53)(false); -var $native = [].indexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', { - // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? $native.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments[1]); - } -}); - - -/***/ }), -/* 226 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var toInteger = __webpack_require__(21); -var toLength = __webpack_require__(7); -var $native = [].lastIndexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', { - // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex]) - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0; - var O = toIObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; - return -1; - } -}); - - -/***/ }), -/* 227 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { copyWithin: __webpack_require__(113) }); - -__webpack_require__(35)('copyWithin'); - - -/***/ }), -/* 228 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { fill: __webpack_require__(87) }); - -__webpack_require__(35)('fill'); - - -/***/ }), -/* 229 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(26)(5); -var KEY = 'find'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(35)(KEY); - - -/***/ }), -/* 230 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(26)(6); -var KEY = 'findIndex'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(35)(KEY); - - -/***/ }), -/* 231 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(41)('Array'); - - -/***/ }), -/* 232 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var inheritIfRequired = __webpack_require__(77); -var dP = __webpack_require__(8).f; -var gOPN = __webpack_require__(39).f; -var isRegExp = __webpack_require__(57); -var $flags = __webpack_require__(51); -var $RegExp = global.RegExp; -var Base = $RegExp; -var proto = $RegExp.prototype; -var re1 = /a/g; -var re2 = /a/g; -// "new" creates a new object, old webkit buggy here -var CORRECT_NEW = new $RegExp(re1) !== re1; - -if (__webpack_require__(6) && (!CORRECT_NEW || __webpack_require__(4)(function () { - re2[__webpack_require__(5)('match')] = false; - // RegExp constructor can alter flags and IsRegExp works correct with @@match - return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i'; -}))) { - $RegExp = function RegExp(p, f) { - var tiRE = this instanceof $RegExp; - var piRE = isRegExp(p); - var fiU = f === undefined; - return !tiRE && piRE && p.constructor === $RegExp && fiU ? p - : inheritIfRequired(CORRECT_NEW - ? new Base(piRE && !fiU ? p.source : p, f) - : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f) - , tiRE ? this : proto, $RegExp); - }; - var proxy = function (key) { - key in $RegExp || dP($RegExp, key, { - configurable: true, - get: function () { return Base[key]; }, - set: function (it) { Base[key] = it; } - }); - }; - for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]); - proto.constructor = $RegExp; - $RegExp.prototype = proto; - __webpack_require__(15)(global, 'RegExp', $RegExp); -} - -__webpack_require__(41)('RegExp'); - - -/***/ }), -/* 233 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(115); -var anObject = __webpack_require__(1); -var $flags = __webpack_require__(51); -var DESCRIPTORS = __webpack_require__(6); -var TO_STRING = 'toString'; -var $toString = /./[TO_STRING]; - -var define = function (fn) { - __webpack_require__(15)(RegExp.prototype, TO_STRING, fn, true); -}; - -// 21.2.5.14 RegExp.prototype.toString() -if (__webpack_require__(4)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) { - define(function toString() { - var R = anObject(this); - return '/'.concat(R.source, '/', - 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined); - }); -// FF44- RegExp#toString has a wrong name -} else if ($toString.name != TO_STRING) { - define(function toString() { - return $toString.call(this); - }); -} - - -/***/ }), -/* 234 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var toLength = __webpack_require__(7); -var advanceStringIndex = __webpack_require__(91); -var regExpExec = __webpack_require__(61); - -// @@match logic -__webpack_require__(62)('match', 1, function (defined, MATCH, $match, maybeCallNative) { - return [ - // `String.prototype.match` method - // https://tc39.github.io/ecma262/#sec-string.prototype.match - function match(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[MATCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); - }, - // `RegExp.prototype[@@match]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match - function (regexp) { - var res = maybeCallNative($match, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - if (!rx.global) return regExpExec(rx, S); - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - var A = []; - var n = 0; - var result; - while ((result = regExpExec(rx, S)) !== null) { - var matchStr = String(result[0]); - A[n] = matchStr; - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - n++; - } - return n === 0 ? null : A; - } - ]; -}); - - -/***/ }), -/* 235 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(7); -var toInteger = __webpack_require__(21); -var advanceStringIndex = __webpack_require__(91); -var regExpExec = __webpack_require__(61); -var max = Math.max; -var min = Math.min; -var floor = Math.floor; -var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; -var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; - -var maybeToString = function (it) { - return it === undefined ? it : String(it); -}; - -// @@replace logic -__webpack_require__(62)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) { - return [ - // `String.prototype.replace` method - // https://tc39.github.io/ecma262/#sec-string.prototype.replace - function replace(searchValue, replaceValue) { - var O = defined(this); - var fn = searchValue == undefined ? undefined : searchValue[REPLACE]; - return fn !== undefined - ? fn.call(searchValue, O, replaceValue) - : $replace.call(String(O), searchValue, replaceValue); - }, - // `RegExp.prototype[@@replace]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace - function (regexp, replaceValue) { - var res = maybeCallNative($replace, regexp, this, replaceValue); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var functionalReplace = typeof replaceValue === 'function'; - if (!functionalReplace) replaceValue = String(replaceValue); - var global = rx.global; - if (global) { - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - } - var results = []; - while (true) { - var result = regExpExec(rx, S); - if (result === null) break; - results.push(result); - if (!global) break; - var matchStr = String(result[0]); - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - } - var accumulatedResult = ''; - var nextSourcePosition = 0; - for (var i = 0; i < results.length; i++) { - result = results[i]; - var matched = String(result[0]); - var position = max(min(toInteger(result.index), S.length), 0); - var captures = []; - // NOTE: This is equivalent to - // captures = result.slice(1).map(maybeToString) - // but for some reason `nativeSlice.call(result, 1, result.length)` (called in - // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and - // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. - for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); - var namedCaptures = result.groups; - if (functionalReplace) { - var replacerArgs = [matched].concat(captures, position, S); - if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); - var replacement = String(replaceValue.apply(undefined, replacerArgs)); - } else { - replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); - } - if (position >= nextSourcePosition) { - accumulatedResult += S.slice(nextSourcePosition, position) + replacement; - nextSourcePosition = position + matched.length; - } - } - return accumulatedResult + S.slice(nextSourcePosition); - } - ]; - - // https://tc39.github.io/ecma262/#sec-getsubstitution - function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { - var tailPos = position + matched.length; - var m = captures.length; - var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; - if (namedCaptures !== undefined) { - namedCaptures = toObject(namedCaptures); - symbols = SUBSTITUTION_SYMBOLS; - } - return $replace.call(replacement, symbols, function (match, ch) { - var capture; - switch (ch.charAt(0)) { - case '$': return '$'; - case '&': return matched; - case '`': return str.slice(0, position); - case "'": return str.slice(tailPos); - case '<': - capture = namedCaptures[ch.slice(1, -1)]; - break; - default: // \d\d? - var n = +ch; - if (n === 0) return match; - if (n > m) { - var f = floor(n / 10); - if (f === 0) return match; - if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); - return match; - } - capture = captures[n - 1]; - } - return capture === undefined ? '' : capture; - }); - } -}); - - -/***/ }), -/* 236 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var sameValue = __webpack_require__(103); -var regExpExec = __webpack_require__(61); - -// @@search logic -__webpack_require__(62)('search', 1, function (defined, SEARCH, $search, maybeCallNative) { - return [ - // `String.prototype.search` method - // https://tc39.github.io/ecma262/#sec-string.prototype.search - function search(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[SEARCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); - }, - // `RegExp.prototype[@@search]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search - function (regexp) { - var res = maybeCallNative($search, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - var previousLastIndex = rx.lastIndex; - if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; - var result = regExpExec(rx, S); - if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; - return result === null ? -1 : result.index; - } - ]; -}); - - -/***/ }), -/* 237 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var isRegExp = __webpack_require__(57); -var anObject = __webpack_require__(1); -var speciesConstructor = __webpack_require__(52); -var advanceStringIndex = __webpack_require__(91); -var toLength = __webpack_require__(7); -var callRegExpExec = __webpack_require__(61); -var regexpExec = __webpack_require__(90); -var fails = __webpack_require__(4); -var $min = Math.min; -var $push = [].push; -var $SPLIT = 'split'; -var LENGTH = 'length'; -var LAST_INDEX = 'lastIndex'; -var MAX_UINT32 = 0xffffffff; - -// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError -var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); }); - -// @@split logic -__webpack_require__(62)('split', 2, function (defined, SPLIT, $split, maybeCallNative) { - var internalSplit; - if ( - 'abbc'[$SPLIT](/(b)*/)[1] == 'c' || - 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 || - 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 || - '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 || - '.'[$SPLIT](/()()/)[LENGTH] > 1 || - ''[$SPLIT](/.?/)[LENGTH] - ) { - // based on es5-shim implementation, need to rework it - internalSplit = function (separator, limit) { - var string = String(this); - if (separator === undefined && limit === 0) return []; - // If `separator` is not a regex, use native split - if (!isRegExp(separator)) return $split.call(string, separator, limit); - var output = []; - var flags = (separator.ignoreCase ? 'i' : '') + - (separator.multiline ? 'm' : '') + - (separator.unicode ? 'u' : '') + - (separator.sticky ? 'y' : ''); - var lastLastIndex = 0; - var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0; - // Make `global` and avoid `lastIndex` issues by working with a copy - var separatorCopy = new RegExp(separator.source, flags + 'g'); - var match, lastIndex, lastLength; - while (match = regexpExec.call(separatorCopy, string)) { - lastIndex = separatorCopy[LAST_INDEX]; - if (lastIndex > lastLastIndex) { - output.push(string.slice(lastLastIndex, match.index)); - if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1)); - lastLength = match[0][LENGTH]; - lastLastIndex = lastIndex; - if (output[LENGTH] >= splitLimit) break; - } - if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop - } - if (lastLastIndex === string[LENGTH]) { - if (lastLength || !separatorCopy.test('')) output.push(''); - } else output.push(string.slice(lastLastIndex)); - return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output; - }; - // Chakra, V8 - } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) { - internalSplit = function (separator, limit) { - return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit); - }; - } else { - internalSplit = $split; - } - - return [ - // `String.prototype.split` method - // https://tc39.github.io/ecma262/#sec-string.prototype.split - function split(separator, limit) { - var O = defined(this); - var splitter = separator == undefined ? undefined : separator[SPLIT]; - return splitter !== undefined - ? splitter.call(separator, O, limit) - : internalSplit.call(String(O), separator, limit); - }, - // `RegExp.prototype[@@split]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split - // - // NOTE: This cannot be properly polyfilled in engines that don't support - // the 'y' flag. - function (regexp, limit) { - var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var C = speciesConstructor(rx, RegExp); - - var unicodeMatching = rx.unicode; - var flags = (rx.ignoreCase ? 'i' : '') + - (rx.multiline ? 'm' : '') + - (rx.unicode ? 'u' : '') + - (SUPPORTS_Y ? 'y' : 'g'); - - // ^(? + rx + ) is needed, in combination with some S slicing, to - // simulate the 'y' flag. - var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); - var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; - if (lim === 0) return []; - if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; - var p = 0; - var q = 0; - var A = []; - while (q < S.length) { - splitter.lastIndex = SUPPORTS_Y ? q : 0; - var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); - var e; - if ( - z === null || - (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p - ) { - q = advanceStringIndex(S, q, unicodeMatching); - } else { - A.push(S.slice(p, q)); - if (A.length === lim) return A; - for (var i = 1; i <= z.length - 1; i++) { - A.push(z[i]); - if (A.length === lim) return A; - } - q = p = e; - } - } - A.push(S.slice(p)); - return A; - } - ]; -}); - - -/***/ }), -/* 238 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(32); -var global = __webpack_require__(2); -var ctx = __webpack_require__(19); -var classof = __webpack_require__(34); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(3); -var aFunction = __webpack_require__(10); -var anInstance = __webpack_require__(42); -var forOf = __webpack_require__(36); -var speciesConstructor = __webpack_require__(52); -var task = __webpack_require__(92).set; -var microtask = __webpack_require__(93)(); -var newPromiseCapabilityModule = __webpack_require__(94); -var perform = __webpack_require__(116); -var userAgent = __webpack_require__(63); -var promiseResolve = __webpack_require__(117); -var PROMISE = 'Promise'; -var TypeError = global.TypeError; -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8 || ''; -var $Promise = global[PROMISE]; -var isNode = classof(process) == 'process'; -var empty = function () { /* empty */ }; -var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; -var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - -var USE_NATIVE = !!function () { - try { - // correct subclassing with @@species support - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[__webpack_require__(5)('species')] = function (exec) { - exec(empty, empty); - }; - // unhandled rejections tracking support, NodeJS Promise without it fails @@species test - return (isNode || typeof PromiseRejectionEvent == 'function') - && promise.then(empty) instanceof FakePromise - // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // we can't detect it synchronously, so just check versions - && v8.indexOf('6.6') !== 0 - && userAgent.indexOf('Chrome/66') === -1; - } catch (e) { /* empty */ } -}(); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; -var notify = function (promise, isReject) { - if (promise._n) return; - promise._n = true; - var chain = promise._c; - microtask(function () { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function (reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) onHandleUnhandled(promise); - promise._h = 1; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // may throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (e) { - if (domain && !exited) domain.exit(); - reject(e); - } - }; - while (chain.length > i) run(chain[i++]); // variable length - can't use forEach - promise._c = []; - promise._n = false; - if (isReject && !promise._h) onUnhandled(promise); - }); -}; -var onUnhandled = function (promise) { - task.call(global, function () { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console; - if (unhandled) { - result = perform(function () { - if (isNode) { - process.emit('unhandledRejection', value, promise); - } else if (handler = global.onunhandledrejection) { - handler({ promise: promise, reason: value }); - } else if ((console = global.console) && console.error) { - console.error('Unhandled promise rejection', value); - } - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } promise._a = undefined; - if (unhandled && result.e) throw result.v; - }); -}; -var isUnhandled = function (promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; -}; -var onHandleUnhandled = function (promise) { - task.call(global, function () { - var handler; - if (isNode) { - process.emit('rejectionHandled', promise); - } else if (handler = global.onrejectionhandled) { - handler({ promise: promise, reason: promise._v }); - } - }); -}; -var $reject = function (value) { - var promise = this; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - promise._v = value; - promise._s = 2; - if (!promise._a) promise._a = promise._c.slice(); - notify(promise, true); -}; -var $resolve = function (value) { - var promise = this; - var then; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function () { - var wrapper = { _w: promise, _d: false }; // wrap - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); - } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); - } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); // wrap - } -}; - -// constructor polyfill -if (!USE_NATIVE) { - // 25.4.3.1 Promise(executor) - $Promise = function Promise(executor) { - anInstance(this, $Promise, PROMISE, '_h'); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - this._c = []; // <- awaiting reactions - this._a = undefined; // <- checked in isUnhandled reactions - this._s = 0; // <- state - this._d = false; // <- done - this._v = undefined; // <- value - this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled - this._n = false; // <- notify - }; - Internal.prototype = __webpack_require__(43)($Promise.prototype, { - // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = isNode ? process.domain : undefined; - this._c.push(reaction); - if (this._a) this._a.push(reaction); - if (this._s) notify(this, false); - return reaction.promise; - }, - // 25.4.5.1 Promise.prototype.catch(onRejected) - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === $Promise || C === Wrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); -__webpack_require__(45)($Promise, PROMISE); -__webpack_require__(41)(PROMISE); -Wrapper = __webpack_require__(13)[PROMISE]; - -// statics -$export($export.S + $export.F * !USE_NATIVE, PROMISE, { - // 25.4.4.5 Promise.reject(r) - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } -}); -$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - // 25.4.4.6 Promise.resolve(x) - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } -}); -$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(60)(function (iter) { - $Promise.all(iter)['catch'](empty); -})), PROMISE, { - // 25.4.4.1 Promise.all(iterable) - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function (promise) { - var $index = index++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - C.resolve(promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) reject(result.v); - return capability.promise; - }, - // 25.4.4.4 Promise.race(iterable) - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - forOf(iterable, false, function (promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) reject(result.v); - return capability.promise; - } -}); - - -/***/ }), -/* 239 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var weak = __webpack_require__(122); -var validate = __webpack_require__(44); -var WEAK_SET = 'WeakSet'; - -// 23.4 WeakSet Objects -__webpack_require__(64)(WEAK_SET, function (get) { - return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return weak.def(validate(this, WEAK_SET), value, true); - } -}, weak, false, true); - - -/***/ }), -/* 240 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var rApply = (__webpack_require__(2).Reflect || {}).apply; -var fApply = Function.apply; -// MS Edge argumentsList argument is optional -$export($export.S + $export.F * !__webpack_require__(4)(function () { - rApply(function () { /* empty */ }); -}), 'Reflect', { - apply: function apply(target, thisArgument, argumentsList) { - var T = aFunction(target); - var L = anObject(argumentsList); - return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); - } -}); - - -/***/ }), -/* 241 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.2 Reflect.construct(target, argumentsList [, newTarget]) -var $export = __webpack_require__(0); -var create = __webpack_require__(28); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var fails = __webpack_require__(4); -var bind = __webpack_require__(104); -var rConstruct = (__webpack_require__(2).Reflect || {}).construct; - -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(rConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - rConstruct(function () { /* empty */ }); -}); - -$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); - - -/***/ }), -/* 242 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes) -var dP = __webpack_require__(8); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var toPrimitive = __webpack_require__(23); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -$export($export.S + $export.F * __webpack_require__(4)(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 }); -}), 'Reflect', { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - propertyKey = toPrimitive(propertyKey, true); - anObject(attributes); - try { - dP.f(target, propertyKey, attributes); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 243 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.4 Reflect.deleteProperty(target, propertyKey) -var $export = __webpack_require__(0); -var gOPD = __webpack_require__(16).f; -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - deleteProperty: function deleteProperty(target, propertyKey) { - var desc = gOPD(anObject(target), propertyKey); - return desc && !desc.configurable ? false : delete target[propertyKey]; - } -}); - - -/***/ }), -/* 244 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 26.1.5 Reflect.enumerate(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var Enumerate = function (iterated) { - this._t = anObject(iterated); // target - this._i = 0; // next index - var keys = this._k = []; // keys - var key; - for (key in iterated) keys.push(key); -}; -__webpack_require__(59)(Enumerate, 'Object', function () { - var that = this; - var keys = that._k; - var key; - do { - if (that._i >= keys.length) return { value: undefined, done: true }; - } while (!((key = keys[that._i++]) in that._t)); - return { value: key, done: false }; -}); - -$export($export.S, 'Reflect', { - enumerate: function enumerate(target) { - return new Enumerate(target); - } -}); - - -/***/ }), -/* 245 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.6 Reflect.get(target, propertyKey [, receiver]) -var gOPD = __webpack_require__(16); -var getPrototypeOf = __webpack_require__(17); -var has = __webpack_require__(12); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(3); -var anObject = __webpack_require__(1); - -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var desc, proto; - if (anObject(target) === receiver) return target[propertyKey]; - if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value') - ? desc.value - : desc.get !== undefined - ? desc.get.call(receiver) - : undefined; - if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver); -} - -$export($export.S, 'Reflect', { get: get }); - - -/***/ }), -/* 246 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey) -var gOPD = __webpack_require__(16); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return gOPD.f(anObject(target), propertyKey); - } -}); - - -/***/ }), -/* 247 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.8 Reflect.getPrototypeOf(target) -var $export = __webpack_require__(0); -var getProto = __webpack_require__(17); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getPrototypeOf: function getPrototypeOf(target) { - return getProto(anObject(target)); - } -}); - - -/***/ }), -/* 248 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.9 Reflect.has(target, propertyKey) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); - - -/***/ }), -/* 249 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.10 Reflect.isExtensible(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $isExtensible = Object.isExtensible; - -$export($export.S, 'Reflect', { - isExtensible: function isExtensible(target) { - anObject(target); - return $isExtensible ? $isExtensible(target) : true; - } -}); - - -/***/ }), -/* 250 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.11 Reflect.ownKeys(target) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { ownKeys: __webpack_require__(95) }); - - -/***/ }), -/* 251 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.12 Reflect.preventExtensions(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $preventExtensions = Object.preventExtensions; - -$export($export.S, 'Reflect', { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - if ($preventExtensions) $preventExtensions(target); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 252 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.13 Reflect.set(target, propertyKey, V [, receiver]) -var dP = __webpack_require__(8); -var gOPD = __webpack_require__(16); -var getPrototypeOf = __webpack_require__(17); -var has = __webpack_require__(12); -var $export = __webpack_require__(0); -var createDesc = __webpack_require__(31); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); - -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDesc = gOPD.f(anObject(target), propertyKey); - var existingDescriptor, proto; - if (!ownDesc) { - if (isObject(proto = getPrototypeOf(target))) { - return set(proto, propertyKey, V, receiver); - } - ownDesc = createDesc(0); - } - if (has(ownDesc, 'value')) { - if (ownDesc.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = gOPD.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - dP.f(receiver, propertyKey, existingDescriptor); - } else dP.f(receiver, propertyKey, createDesc(0, V)); - return true; - } - return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true); -} - -$export($export.S, 'Reflect', { set: set }); - - -/***/ }), -/* 253 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.14 Reflect.setPrototypeOf(target, proto) -var $export = __webpack_require__(0); -var setProto = __webpack_require__(75); - -if (setProto) $export($export.S, 'Reflect', { - setPrototypeOf: function setPrototypeOf(target, proto) { - setProto.check(target, proto); - try { - setProto.set(target, proto); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 254 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.3.1 / 15.9.4.4 Date.now() -var $export = __webpack_require__(0); - -$export($export.S, 'Date', { now: function () { return new Date().getTime(); } }); - - -/***/ }), -/* 255 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(23); - -$export($export.P + $export.F * __webpack_require__(4)(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString(); - } -}); - - -/***/ }), -/* 256 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var $export = __webpack_require__(0); -var toISOString = __webpack_require__(257); - -// PhantomJS / old WebKit has a broken implementations -$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', { - toISOString: toISOString -}); - - -/***/ }), -/* 257 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var fails = __webpack_require__(4); -var getTime = Date.prototype.getTime; -var $toISOString = Date.prototype.toISOString; - -var lz = function (num) { - return num > 9 ? num : '0' + num; -}; - -// PhantomJS / old WebKit has a broken implementations -module.exports = (fails(function () { - return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - $toISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var d = this; - var y = d.getUTCFullYear(); - var m = d.getUTCMilliseconds(); - var s = y < 0 ? '-' : y > 9999 ? '+' : ''; - return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) + - '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) + - 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) + - ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z'; -} : $toISOString; - - -/***/ }), -/* 258 */ -/***/ (function(module, exports, __webpack_require__) { - -var DateProto = Date.prototype; -var INVALID_DATE = 'Invalid Date'; -var TO_STRING = 'toString'; -var $toString = DateProto[TO_STRING]; -var getTime = DateProto.getTime; -if (new Date(NaN) + '' != INVALID_DATE) { - __webpack_require__(15)(DateProto, TO_STRING, function toString() { - var value = getTime.call(this); - // eslint-disable-next-line no-self-compare - return value === value ? $toString.call(this) : INVALID_DATE; - }); -} - - -/***/ }), -/* 259 */ -/***/ (function(module, exports, __webpack_require__) { - -var TO_PRIMITIVE = __webpack_require__(5)('toPrimitive'); -var proto = Date.prototype; - -if (!(TO_PRIMITIVE in proto)) __webpack_require__(14)(proto, TO_PRIMITIVE, __webpack_require__(260)); - - -/***/ }), -/* 260 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var anObject = __webpack_require__(1); -var toPrimitive = __webpack_require__(23); -var NUMBER = 'number'; - -module.exports = function (hint) { - if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint'); - return toPrimitive(anObject(this), hint != NUMBER); -}; - - -/***/ }), -/* 261 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $typed = __webpack_require__(65); -var buffer = __webpack_require__(96); -var anObject = __webpack_require__(1); -var toAbsoluteIndex = __webpack_require__(38); -var toLength = __webpack_require__(7); -var isObject = __webpack_require__(3); -var ArrayBuffer = __webpack_require__(2).ArrayBuffer; -var speciesConstructor = __webpack_require__(52); -var $ArrayBuffer = buffer.ArrayBuffer; -var $DataView = buffer.DataView; -var $isView = $typed.ABV && ArrayBuffer.isView; -var $slice = $ArrayBuffer.prototype.slice; -var VIEW = $typed.VIEW; -var ARRAY_BUFFER = 'ArrayBuffer'; - -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer }); - -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it) { - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); - -$export($export.P + $export.U + $export.F * __webpack_require__(4)(function () { - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end) { - if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength; - var first = toAbsoluteIndex(start, len); - var fin = toAbsoluteIndex(end === undefined ? len : end, len); - var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first)); - var viewS = new $DataView(this); - var viewT = new $DataView(result); - var index = 0; - while (first < fin) { - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -__webpack_require__(41)(ARRAY_BUFFER); - - -/***/ }), -/* 262 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -$export($export.G + $export.W + $export.F * !__webpack_require__(65).ABV, { - DataView: __webpack_require__(96).DataView -}); - - -/***/ }), -/* 263 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Int8', 1, function (init) { - return function Int8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 264 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Uint8', 1, function (init) { - return function Uint8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 265 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Uint8', 1, function (init) { - return function Uint8ClampedArray(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}, true); - - -/***/ }), -/* 266 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Int16', 2, function (init) { - return function Int16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 267 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Uint16', 2, function (init) { - return function Uint16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 268 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Int32', 4, function (init) { - return function Int32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 269 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Uint32', 4, function (init) { - return function Uint32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 270 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Float32', 4, function (init) { - return function Float32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 271 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(29)('Float64', 8, function (init) { - return function Float64Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 272 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/Array.prototype.includes -var $export = __webpack_require__(0); -var $includes = __webpack_require__(53)(true); - -$export($export.P, 'Array', { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -__webpack_require__(35)('includes'); - - -/***/ }), -/* 273 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(124); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(7); -var aFunction = __webpack_require__(10); -var arraySpeciesCreate = __webpack_require__(86); - -$export($export.P, 'Array', { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen, A; - aFunction(callbackfn); - sourceLen = toLength(O.length); - A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); - return A; - } -}); - -__webpack_require__(35)('flatMap'); - - -/***/ }), -/* 274 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(124); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(7); -var toInteger = __webpack_require__(21); -var arraySpeciesCreate = __webpack_require__(86); - -$export($export.P, 'Array', { - flatten: function flatten(/* depthArg = 1 */) { - var depthArg = arguments[0]; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); - -__webpack_require__(35)('flatten'); - - -/***/ }), -/* 275 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/mathiasbynens/String.prototype.at -var $export = __webpack_require__(0); -var $at = __webpack_require__(56)(true); - -$export($export.P, 'String', { - at: function at(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 276 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(125); -var userAgent = __webpack_require__(63); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); - } -}); - - -/***/ }), -/* 277 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(125); -var userAgent = __webpack_require__(63); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); - } -}); - - -/***/ }), -/* 278 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(46)('trimLeft', function ($trim) { - return function trimLeft() { - return $trim(this, 1); - }; -}, 'trimStart'); - - -/***/ }), -/* 279 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(46)('trimRight', function ($trim) { - return function trimRight() { - return $trim(this, 2); - }; -}, 'trimEnd'); - - -/***/ }), -/* 280 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/String.prototype.matchAll/ -var $export = __webpack_require__(0); -var defined = __webpack_require__(24); -var toLength = __webpack_require__(7); -var isRegExp = __webpack_require__(57); -var getFlags = __webpack_require__(51); -var RegExpProto = RegExp.prototype; - -var $RegExpStringIterator = function (regexp, string) { - this._r = regexp; - this._s = string; -}; - -__webpack_require__(59)($RegExpStringIterator, 'RegExp String', function next() { - var match = this._r.exec(this._s); - return { value: match, done: match === null }; -}); - -$export($export.P, 'String', { - matchAll: function matchAll(regexp) { - defined(this); - if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!'); - var S = String(this); - var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp); - var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags); - rx.lastIndex = toLength(regexp.lastIndex); - return new $RegExpStringIterator(rx, S); - } -}); - - -/***/ }), -/* 281 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(70)('asyncIterator'); - - -/***/ }), -/* 282 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(70)('observable'); - - -/***/ }), -/* 283 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-getownpropertydescriptors -var $export = __webpack_require__(0); -var ownKeys = __webpack_require__(95); -var toIObject = __webpack_require__(11); -var gOPD = __webpack_require__(16); -var createProperty = __webpack_require__(85); - -$export($export.S, 'Object', { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIObject(object); - var getDesc = gOPD.f; - var keys = ownKeys(O); - var result = {}; - var i = 0; - var key, desc; - while (keys.length > i) { - desc = getDesc(O, key = keys[i++]); - if (desc !== undefined) createProperty(result, key, desc); - } - return result; - } -}); - - -/***/ }), -/* 284 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $values = __webpack_require__(126)(false); - -$export($export.S, 'Object', { - values: function values(it) { - return $values(it); - } -}); - - -/***/ }), -/* 285 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $entries = __webpack_require__(126)(true); - -$export($export.S, 'Object', { - entries: function entries(it) { - return $entries(it); - } -}); - - -/***/ }), -/* 286 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.2 Object.prototype.__defineGetter__(P, getter) -__webpack_require__(6) && $export($export.P + __webpack_require__(66), 'Object', { - __defineGetter__: function __defineGetter__(P, getter) { - $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 287 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.3 Object.prototype.__defineSetter__(P, setter) -__webpack_require__(6) && $export($export.P + __webpack_require__(66), 'Object', { - __defineSetter__: function __defineSetter__(P, setter) { - $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 288 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(23); -var getPrototypeOf = __webpack_require__(17); -var getOwnPropertyDescriptor = __webpack_require__(16).f; - -// B.2.2.4 Object.prototype.__lookupGetter__(P) -__webpack_require__(6) && $export($export.P + __webpack_require__(66), 'Object', { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.get; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 289 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(23); -var getPrototypeOf = __webpack_require__(17); -var getOwnPropertyDescriptor = __webpack_require__(16).f; - -// B.2.2.5 Object.prototype.__lookupSetter__(P) -__webpack_require__(6) && $export($export.P + __webpack_require__(66), 'Object', { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.set; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 290 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(127)('Map') }); - - -/***/ }), -/* 291 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(127)('Set') }); - - -/***/ }), -/* 292 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -__webpack_require__(67)('Map'); - - -/***/ }), -/* 293 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -__webpack_require__(67)('Set'); - - -/***/ }), -/* 294 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -__webpack_require__(67)('WeakMap'); - - -/***/ }), -/* 295 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -__webpack_require__(67)('WeakSet'); - - -/***/ }), -/* 296 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -__webpack_require__(68)('Map'); - - -/***/ }), -/* 297 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -__webpack_require__(68)('Set'); - - -/***/ }), -/* 298 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -__webpack_require__(68)('WeakMap'); - - -/***/ }), -/* 299 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -__webpack_require__(68)('WeakSet'); - - -/***/ }), -/* 300 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.G, { global: __webpack_require__(2) }); - - -/***/ }), -/* 301 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.S, 'System', { global: __webpack_require__(2) }); - - -/***/ }), -/* 302 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/ljharb/proposal-is-error -var $export = __webpack_require__(0); -var cof = __webpack_require__(20); - -$export($export.S, 'Error', { - isError: function isError(it) { - return cof(it) === 'Error'; - } -}); - - -/***/ }), -/* 303 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clamp: function clamp(x, lower, upper) { - return Math.min(upper, Math.max(lower, x)); - } -}); - - -/***/ }), -/* 304 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 }); - - -/***/ }), -/* 305 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var RAD_PER_DEG = 180 / Math.PI; - -$export($export.S, 'Math', { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); - - -/***/ }), -/* 306 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var scale = __webpack_require__(129); -var fround = __webpack_require__(110); - -$export($export.S, 'Math', { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); - - -/***/ }), -/* 307 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); - - -/***/ }), -/* 308 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); - - -/***/ }), -/* 309 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - imulh: function imulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); - - -/***/ }), -/* 310 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI }); - - -/***/ }), -/* 311 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var DEG_PER_RAD = Math.PI / 180; - -$export($export.S, 'Math', { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); - - -/***/ }), -/* 312 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { scale: __webpack_require__(129) }); - - -/***/ }), -/* 313 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - umulh: function umulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); - - -/***/ }), -/* 314 */ -/***/ (function(module, exports, __webpack_require__) { - -// http://jfbastien.github.io/papers/Math.signbit.html -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { signbit: function signbit(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0; -} }); - - -/***/ }), -/* 315 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// https://github.com/tc39/proposal-promise-finally - -var $export = __webpack_require__(0); -var core = __webpack_require__(13); -var global = __webpack_require__(2); -var speciesConstructor = __webpack_require__(52); -var promiseResolve = __webpack_require__(117); - -$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) { - var C = speciesConstructor(this, core.Promise || global.Promise); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); -} }); - - -/***/ }), -/* 316 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-promise-try -var $export = __webpack_require__(0); -var newPromiseCapability = __webpack_require__(94); -var perform = __webpack_require__(116); - -$export($export.S, 'Promise', { 'try': function (callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; -} }); - - -/***/ }), -/* 317 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var ordinaryDefineOwnMetadata = metadata.set; - -metadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey)); -} }); - - -/***/ }), -/* 318 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var getOrCreateMetadataMap = metadata.map; -var store = metadata.store; - -metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); -} }); - - -/***/ }), -/* 319 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryHasOwnMetadata = metadata.has; -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -metadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 320 */ -/***/ (function(module, exports, __webpack_require__) { - -var Set = __webpack_require__(120); -var from = __webpack_require__(128); -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 321 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 322 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 323 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -metadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 324 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -metadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 325 */ -/***/ (function(module, exports, __webpack_require__) { - -var $metadata = __webpack_require__(30); -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var toMetaKey = $metadata.key; -var ordinaryDefineOwnMetadata = $metadata.set; - -$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, targetKey) { - ordinaryDefineOwnMetadata( - metadataKey, metadataValue, - (targetKey !== undefined ? anObject : aFunction)(target), - toMetaKey(targetKey) - ); - }; -} }); - - -/***/ }), -/* 326 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask -var $export = __webpack_require__(0); -var microtask = __webpack_require__(93)(); -var process = __webpack_require__(2).process; -var isNode = __webpack_require__(20)(process) == 'process'; - -$export($export.G, { - asap: function asap(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); - - -/***/ }), -/* 327 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/zenparsing/es-observable -var $export = __webpack_require__(0); -var global = __webpack_require__(2); -var core = __webpack_require__(13); -var microtask = __webpack_require__(93)(); -var OBSERVABLE = __webpack_require__(5)('observable'); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var anInstance = __webpack_require__(42); -var redefineAll = __webpack_require__(43); -var hide = __webpack_require__(14); -var forOf = __webpack_require__(36); -var RETURN = forOf.RETURN; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscription) { - var cleanup = subscription._c; - if (cleanup) { - subscription._c = undefined; - cleanup(); - } -}; - -var subscriptionClosed = function (subscription) { - return subscription._o === undefined; -}; - -var closeSubscription = function (subscription) { - if (!subscriptionClosed(subscription)) { - subscription._o = undefined; - cleanupSubscription(subscription); - } -}; - -var Subscription = function (observer, subscriber) { - anObject(observer); - this._c = undefined; - this._o = observer; - observer = new SubscriptionObserver(this); - try { - var cleanup = subscriber(observer); - var subscription = cleanup; - if (cleanup != null) { - if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); }; - else aFunction(cleanup); - this._c = cleanup; - } - } catch (e) { - observer.error(e); - return; - } if (subscriptionClosed(this)) cleanupSubscription(this); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { closeSubscription(this); } -}); - -var SubscriptionObserver = function (subscription) { - this._s = subscription; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - try { - var m = getMethod(observer.next); - if (m) return m.call(observer, value); - } catch (e) { - try { - closeSubscription(subscription); - } finally { - throw e; - } - } - } - }, - error: function error(value) { - var subscription = this._s; - if (subscriptionClosed(subscription)) throw value; - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.error); - if (!m) throw value; - value = m.call(observer, value); - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - }, - complete: function complete(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.complete); - value = m ? m.call(observer, value) : undefined; - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - } - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - return new Subscription(observer, this._f); - }, - forEach: function forEach(fn) { - var that = this; - return new (core.Promise || global.Promise)(function (resolve, reject) { - aFunction(fn); - var subscription = that.subscribe({ - next: function (value) { - try { - return fn(value); - } catch (e) { - reject(e); - subscription.unsubscribe(); - } - }, - error: reject, - complete: resolve - }); - }); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var method = getMethod(anObject(x)[OBSERVABLE]); - if (method) { - var observable = anObject(method.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - return new C(function (observer) { - var done = false; - microtask(function () { - if (!done) { - try { - if (forOf(x, false, function (it) { - observer.next(it); - if (done) return RETURN; - }) === RETURN) return; - } catch (e) { - if (done) throw e; - observer.error(e); - return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - }, - of: function of() { - for (var i = 0, l = arguments.length, items = new Array(l); i < l;) items[i] = arguments[i++]; - return new (typeof this === 'function' ? this : $Observable)(function (observer) { - var done = false; - microtask(function () { - if (!done) { - for (var j = 0; j < items.length; ++j) { - observer.next(items[j]); - if (done) return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - } -}); - -hide($Observable.prototype, OBSERVABLE, function () { return this; }); - -$export($export.G, { Observable: $Observable }); - -__webpack_require__(41)('Observable'); - - -/***/ }), -/* 328 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $task = __webpack_require__(92); -$export($export.G + $export.B, { - setImmediate: $task.set, - clearImmediate: $task.clear -}); - - -/***/ }), -/* 329 */ -/***/ (function(module, exports, __webpack_require__) { - -var $iterators = __webpack_require__(88); -var getKeys = __webpack_require__(27); -var redefine = __webpack_require__(15); -var global = __webpack_require__(2); -var hide = __webpack_require__(14); -var Iterators = __webpack_require__(40); -var wks = __webpack_require__(5); -var ITERATOR = wks('iterator'); -var TO_STRING_TAG = wks('toStringTag'); -var ArrayValues = Iterators.Array; - -var DOMIterables = { - CSSRuleList: true, // TODO: Not spec compliant, should be false. - CSSStyleDeclaration: false, - CSSValueList: false, - ClientRectList: false, - DOMRectList: false, - DOMStringList: false, - DOMTokenList: true, - DataTransferItemList: false, - FileList: false, - HTMLAllCollection: false, - HTMLCollection: false, - HTMLFormElement: false, - HTMLSelectElement: false, - MediaList: true, // TODO: Not spec compliant, should be false. - MimeTypeArray: false, - NamedNodeMap: false, - NodeList: true, - PaintRequestList: false, - Plugin: false, - PluginArray: false, - SVGLengthList: false, - SVGNumberList: false, - SVGPathSegList: false, - SVGPointList: false, - SVGStringList: false, - SVGTransformList: false, - SourceBufferList: false, - StyleSheetList: true, // TODO: Not spec compliant, should be false. - TextTrackCueList: false, - TextTrackList: false, - TouchList: false -}; - -for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) { - var NAME = collections[i]; - var explicit = DOMIterables[NAME]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - var key; - if (proto) { - if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues); - if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = ArrayValues; - if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true); - } -} - - -/***/ }), -/* 330 */ -/***/ (function(module, exports, __webpack_require__) { - -// ie9- setTimeout & setInterval additional parameters fix -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var userAgent = __webpack_require__(63); -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check -var wrap = function (set) { - return function (fn, time /* , ...args */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : false; - return set(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(this, args); - } : fn, time); - }; -}; -$export($export.G + $export.B + $export.F * MSIE, { - setTimeout: wrap(global.setTimeout), - setInterval: wrap(global.setInterval) -}); - - -/***/ }), -/* 331 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var ctx = __webpack_require__(19); -var $export = __webpack_require__(0); -var createDesc = __webpack_require__(31); -var assign = __webpack_require__(74); -var create = __webpack_require__(28); -var getPrototypeOf = __webpack_require__(17); -var getKeys = __webpack_require__(27); -var dP = __webpack_require__(8); -var keyOf = __webpack_require__(332); -var aFunction = __webpack_require__(10); -var forOf = __webpack_require__(36); -var isIterable = __webpack_require__(130); -var $iterCreate = __webpack_require__(59); -var step = __webpack_require__(89); -var isObject = __webpack_require__(3); -var toIObject = __webpack_require__(11); -var DESCRIPTORS = __webpack_require__(6); -var has = __webpack_require__(12); - -// 0 -> Dict.forEach -// 1 -> Dict.map -// 2 -> Dict.filter -// 3 -> Dict.some -// 4 -> Dict.every -// 5 -> Dict.find -// 6 -> Dict.findKey -// 7 -> Dict.mapPairs -var createDictMethod = function (TYPE) { - var IS_MAP = TYPE == 1; - var IS_EVERY = TYPE == 4; - return function (object, callbackfn, that /* = undefined */) { - var f = ctx(callbackfn, that, 3); - var O = toIObject(object); - var result = IS_MAP || TYPE == 7 || TYPE == 2 - ? new (typeof this == 'function' ? this : Dict)() : undefined; - var key, val, res; - for (key in O) if (has(O, key)) { - val = O[key]; - res = f(val, key, object); - if (TYPE) { - if (IS_MAP) result[key] = res; // map - else if (res) switch (TYPE) { - case 2: result[key] = val; break; // filter - case 3: return true; // some - case 5: return val; // find - case 6: return key; // findKey - case 7: result[res[0]] = res[1]; // mapPairs - } else if (IS_EVERY) return false; // every - } - } - return TYPE == 3 || IS_EVERY ? IS_EVERY : result; - }; -}; -var findKey = createDictMethod(6); - -var createDictIter = function (kind) { - return function (it) { - return new DictIterator(it, kind); - }; -}; -var DictIterator = function (iterated, kind) { - this._t = toIObject(iterated); // target - this._a = getKeys(iterated); // keys - this._i = 0; // next index - this._k = kind; // kind -}; -$iterCreate(DictIterator, 'Dict', function () { - var that = this; - var O = that._t; - var keys = that._a; - var kind = that._k; - var key; - do { - if (that._i >= keys.length) { - that._t = undefined; - return step(1); - } - } while (!has(O, key = keys[that._i++])); - if (kind == 'keys') return step(0, key); - if (kind == 'values') return step(0, O[key]); - return step(0, [key, O[key]]); -}); - -function Dict(iterable) { - var dict = create(null); - if (iterable != undefined) { - if (isIterable(iterable)) { - forOf(iterable, true, function (key, value) { - dict[key] = value; - }); - } else assign(dict, iterable); - } - return dict; -} -Dict.prototype = null; - -function reduce(object, mapfn, init) { - aFunction(mapfn); - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var memo, key; - if (arguments.length < 3) { - if (!length) throw TypeError('Reduce of empty object with no initial value'); - memo = O[keys[i++]]; - } else memo = Object(init); - while (length > i) if (has(O, key = keys[i++])) { - memo = mapfn(memo, O[key], key, object); - } - return memo; -} - -function includes(object, el) { - // eslint-disable-next-line no-self-compare - return (el == el ? keyOf(object, el) : findKey(object, function (it) { - // eslint-disable-next-line no-self-compare - return it != it; - })) !== undefined; -} - -function get(object, key) { - if (has(object, key)) return object[key]; -} -function set(object, key, value) { - if (DESCRIPTORS && key in Object) dP.f(object, key, createDesc(0, value)); - else object[key] = value; - return object; -} - -function isDict(it) { - return isObject(it) && getPrototypeOf(it) === Dict.prototype; -} - -$export($export.G + $export.F, { Dict: Dict }); - -$export($export.S, 'Dict', { - keys: createDictIter('keys'), - values: createDictIter('values'), - entries: createDictIter('entries'), - forEach: createDictMethod(0), - map: createDictMethod(1), - filter: createDictMethod(2), - some: createDictMethod(3), - every: createDictMethod(4), - find: createDictMethod(5), - findKey: findKey, - mapPairs: createDictMethod(7), - reduce: reduce, - keyOf: keyOf, - includes: includes, - has: has, - get: get, - set: set, - isDict: isDict -}); - - -/***/ }), -/* 332 */ -/***/ (function(module, exports, __webpack_require__) { - -var getKeys = __webpack_require__(27); -var toIObject = __webpack_require__(11); -module.exports = function (object, el) { - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var index = 0; - var key; - while (length > index) if (O[key = keys[index++]] === el) return key; -}; - - -/***/ }), -/* 333 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var get = __webpack_require__(50); -module.exports = __webpack_require__(13).getIterator = function (it) { - var iterFn = get(it); - if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!'); - return anObject(iterFn.call(it)); -}; - - -/***/ }), -/* 334 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(13); -var $export = __webpack_require__(0); -var partial = __webpack_require__(131); -// https://esdiscuss.org/topic/promise-returning-delay-function -$export($export.G + $export.F, { - delay: function delay(time) { - return new (core.Promise || global.Promise)(function (resolve) { - setTimeout(partial.call(resolve, true), time); - }); - } -}); - - -/***/ }), -/* 335 */ -/***/ (function(module, exports, __webpack_require__) { - -var path = __webpack_require__(132); -var $export = __webpack_require__(0); - -// Placeholder -__webpack_require__(13)._ = path._ = path._ || {}; - -$export($export.P + $export.F, 'Function', { part: __webpack_require__(131) }); - - -/***/ }), -/* 336 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { isObject: __webpack_require__(3) }); - - -/***/ }), -/* 337 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { classof: __webpack_require__(34) }); - - -/***/ }), -/* 338 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var define = __webpack_require__(133); - -$export($export.S + $export.F, 'Object', { define: define }); - - -/***/ }), -/* 339 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var define = __webpack_require__(133); -var create = __webpack_require__(28); - -$export($export.S + $export.F, 'Object', { - make: function (proto, mixin) { - return define(create(proto), mixin); - } -}); - - -/***/ }), -/* 340 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(58)(Number, 'Number', function (iterated) { - this._l = +iterated; - this._i = 0; -}, function () { - var i = this._i++; - var done = !(i < this._l); - return { done: done, value: done ? undefined : i }; -}); - - -/***/ }), -/* 341 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/benjamingr/RexExp.escape -var $export = __webpack_require__(0); -var $re = __webpack_require__(97)(/[\\^$*+?.()|[\]{}]/g, '\\$&'); - -$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } }); - - -/***/ }), -/* 342 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $re = __webpack_require__(97)(/[&<>"']/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}); - -$export($export.P + $export.F, 'String', { escapeHTML: function escapeHTML() { return $re(this); } }); - - -/***/ }), -/* 343 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $re = __webpack_require__(97)(/&(?:amp|lt|gt|quot|apos);/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}); - -$export($export.P + $export.F, 'String', { unescapeHTML: function unescapeHTML() { return $re(this); } }); - - -/***/ }) -/******/ ]); -// CommonJS export -if (typeof module != 'undefined' && module.exports) module.exports = __e; -// RequireJS export -else if (typeof define == 'function' && define.amd) define(function () { return __e; }); -// Export to global object -else __g.core = __e; -}(1, 1); \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/core.min.js b/forward_engineering/node_modules/core-js/client/core.min.js deleted file mode 100644 index a231c67..0000000 --- a/forward_engineering/node_modules/core-js/client/core.min.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(e,i,Jt){"use strict";!function(r){var e={};function __webpack_require__(t){if(e[t])return e[t].exports;var n=e[t]={i:t,l:!1,exports:{}};return r[t].call(n.exports,n,n.exports,__webpack_require__),n.l=!0,n.exports}__webpack_require__.m=r,__webpack_require__.c=e,__webpack_require__.d=function(t,n,r){__webpack_require__.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},__webpack_require__.n=function(t){var n=t&&t.__esModule?function getDefault(){return t["default"]}:function getModuleExports(){return t};return __webpack_require__.d(n,"a",n),n},__webpack_require__.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=134)}([function(t,n,r){var v=r(2),g=r(13),y=r(14),d=r(15),b=r(19),_="prototype",S=function(t,n,r){var e,i,o,u,c=t&S.F,f=t&S.G,a=t&S.P,s=t&S.B,l=f?v:t&S.S?v[n]||(v[n]={}):(v[n]||{})[_],h=f?g:g[n]||(g[n]={}),p=h[_]||(h[_]={});for(e in f&&(r=n),r)o=((i=!c&&l&&l[e]!==Jt)?l:r)[e],u=s&&i?b(o,v):a&&"function"==typeof o?b(Function.call,o):o,l&&d(l,e,o,t&S.U),h[e]!=o&&y(h,e,u),a&&p[e]!=o&&(p[e]=o)};v.core=g,S.F=1,S.G=2,S.S=4,S.P=8,S.B=16,S.W=32,S.U=64,S.R=128,t.exports=S},function(t,n,r){var e=r(3);t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof i&&(i=r)},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n,r){var e=r(47)("wks"),i=r(37),o=r(2).Symbol,u="function"==typeof o;(t.exports=function(t){return e[t]||(e[t]=u&&o[t]||(u?o:i)("Symbol."+t))}).store=e},function(t,n,r){t.exports=!r(4)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n,r){var e=r(21),i=Math.min;t.exports=function(t){return 0"+i+""};t.exports=function(n,t){var r={};r[n]=t(o),e(e.P+e.F*i(function(){var t=""[n]('"');return t!==t.toLowerCase()||3document.F=Object<\/script>"),t.close(),s=t.F;r--;)delete s[a][u[r]];return s()};t.exports=Object.create||function create(t,n){var r;return null!==t?(f[a]=i(t),r=new f,f[a]=null,r[c]=t):r=s(),n===Jt?r:o(r,n)}},function(t,n,r){if(r(6)){var y=r(32),d=r(2),b=r(4),_=r(0),S=r(65),e=r(96),h=r(19),x=r(42),i=r(31),m=r(14),o=r(43),u=r(21),w=r(7),E=r(123),c=r(38),f=r(23),a=r(12),O=r(34),M=r(3),p=r(9),v=r(84),P=r(28),I=r(17),F=r(39).f,g=r(50),s=r(37),l=r(5),A=r(26),k=r(53),j=r(52),N=r(88),R=r(40),T=r(60),D=r(41),L=r(87),C=r(113),U=r(8),W=r(16),G=U.f,V=W.f,B=d.RangeError,q=d.TypeError,z=d.Uint8Array,K="ArrayBuffer",J="Shared"+K,$="BYTES_PER_ELEMENT",H="prototype",Y=Array[H],X=e.ArrayBuffer,Z=e.DataView,Q=A(0),tt=A(2),nt=A(3),rt=A(4),et=A(5),it=A(6),ot=k(!0),ut=k(!1),ct=N.values,ft=N.keys,at=N.entries,st=Y.lastIndexOf,lt=Y.reduce,ht=Y.reduceRight,pt=Y.join,vt=Y.sort,gt=Y.slice,yt=Y.toString,dt=Y.toLocaleString,bt=l("iterator"),_t=l("toStringTag"),St=s("typed_constructor"),xt=s("def_constructor"),mt=S.CONSTR,wt=S.TYPED,Et=S.VIEW,Ot="Wrong length!",Mt=A(1,function(t,n){return kt(j(t,t[xt]),n)}),Pt=b(function(){return 1===new z(new Uint16Array([1]).buffer)[0]}),It=!!z&&!!z[H].set&&b(function(){new z(1).set({})}),Ft=function(t,n){var r=u(t);if(r<0||r%n)throw B("Wrong offset!");return r},At=function(t){if(M(t)&&wt in t)return t;throw q(t+" is not a typed array!")},kt=function(t,n){if(!(M(t)&&St in t))throw q("It is not a typed array constructor!");return new t(n)},jt=function(t,n){return Nt(j(t,t[xt]),n)},Nt=function(t,n){for(var r=0,e=n.length,i=kt(t,e);r")}),d=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(r,t,n){var e=p(r),o=!l(function(){var t={};return t[e]=function(){return 7},7!=""[r](t)}),i=o?!l(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===r&&(n.constructor={},n.constructor[g]=function(){return n}),n[e](""),!t}):Jt;if(!o||!i||"replace"===r&&!y||"split"===r&&!d){var u=/./[e],c=n(h,e,""[r],function maybeCallNative(t,n,r,e,i){return n.exec===v?o&&!i?{done:!0,value:u.call(n,r,e)}:{done:!0,value:t.call(r,n,e)}:{done:!1}}),f=c[1];a(String.prototype,r,c[0]),s(RegExp.prototype,e,2==t?function(t,n){return f.call(t,this,n)}:function(t){return f.call(t,this)})}}},function(t,n,r){var e=r(2).navigator;t.exports=e&&e.userAgent||""},function(t,n,r){var d=r(2),b=r(0),_=r(15),S=r(43),x=r(33),m=r(36),w=r(42),E=r(3),O=r(4),M=r(60),P=r(45),I=r(77);t.exports=function(e,t,n,r,i,o){var u=d[e],c=u,f=i?"set":"add",a=c&&c.prototype,s={},l=function(t){var r=a[t];_(a,t,"delete"==t?function(t){return!(o&&!E(t))&&r.call(this,0===t?0:t)}:"has"==t?function has(t){return!(o&&!E(t))&&r.call(this,0===t?0:t)}:"get"==t?function get(t){return o&&!E(t)?Jt:r.call(this,0===t?0:t)}:"add"==t?function add(t){return r.call(this,0===t?0:t),this}:function set(t,n){return r.call(this,0===t?0:t,n),this})};if("function"==typeof c&&(o||a.forEach&&!O(function(){(new c).entries().next()}))){var h=new c,p=h[f](o?{}:-0,1)!=h,v=O(function(){h.has(1)}),g=M(function(t){new c(t)}),y=!o&&O(function(){for(var t=new c,n=5;n--;)t[f](n,n);return!t.has(-0)});g||(((c=t(function(t,n){w(t,c,e);var r=I(new u,t,c);return n!=Jt&&m(n,i,r[f],r),r})).prototype=a).constructor=c),(v||y)&&(l("delete"),l("has"),i&&l("get")),(y||p)&&l(f),o&&a.clear&&delete a.clear}else c=r.getConstructor(t,e,i,f),S(c.prototype,n),x.NEED=!0;return P(c,e),b(b.G+b.W+b.F*((s[e]=c)!=u),s),o||r.setStrong(c,e,i),c}},function(t,n,r){for(var e,i=r(2),o=r(14),u=r(37),c=u("typed_array"),f=u("view"),a=!(!i.ArrayBuffer||!i.DataView),s=a,l=0,h="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l<9;)(e=i[h[l++]])?(o(e.prototype,c,!0),o(e.prototype,f,!0)):s=!1;t.exports={ABV:a,CONSTR:s,TYPED:c,VIEW:f}},function(t,n,r){t.exports=r(32)||!r(4)(function(){var t=Math.random();__defineSetter__.call(null,t,function(){}),delete r(2)[t]})},function(t,n,r){var e=r(0);t.exports=function(t){e(e.S,t,{of:function of(){for(var t=arguments.length,n=new Array(t);t--;)n[t]=arguments[t];return new this(n)}})}},function(t,n,r){var e=r(0),u=r(10),c=r(19),f=r(36);t.exports=function(t){e(e.S,t,{from:function from(t){var n,r,e,i,o=arguments[1];return u(this),(n=o!==Jt)&&u(o),t==Jt?new this:(r=[],n?(e=0,i=c(o,arguments[2],2),f(t,!1,function(t){r.push(i(t,e++))})):f(t,!1,r.push,r),new this(r))}})}},function(t,n,r){var e=r(3),i=r(2).document,o=e(i)&&e(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},function(t,n,r){var e=r(2),i=r(13),o=r(32),u=r(99),c=r(8).f;t.exports=function(t){var n=i.Symbol||(i.Symbol=o?{}:e.Symbol||{});"_"==t.charAt(0)||t in n||c(n,t,{value:u.f(t)})}},function(t,n,r){var e=r(47)("keys"),i=r(37);t.exports=function(t){return e[t]||(e[t]=i(t))}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,r){var e=r(2).document;t.exports=e&&e.documentElement},function(t,n,r){var h=r(6),p=r(27),v=r(54),g=r(49),y=r(9),d=r(48),i=Object.assign;t.exports=!i||r(4)(function(){var t={},n={},r=Symbol(),e="abcdefghijklmnopqrst";return t[r]=7,e.split("").forEach(function(t){n[t]=t}),7!=i({},t)[r]||Object.keys(i({},n)).join("")!=e})?function assign(t,n){for(var r=y(t),e=arguments.length,i=1,o=v.f,u=g.f;i>>=1)&&(n+=n))1&e&&(r+=n);return r}},function(t,n){t.exports=Math.sign||function sign(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},function(t,n){var r=Math.expm1;t.exports=!r||22025.465794806718>1,s=23===n?F(2,-24)-F(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for((t=I(t))!=t||t===M?(i=t!=t?1:0,e=f):(e=A(k(t)/j),t*(o=F(2,-e))<1&&(e--,o*=2),2<=(t+=1<=e+a?s/o:s*F(2,1-a))*o&&(e++,o/=2),f<=e+a?(i=0,e=f):1<=e+a?(i=(t*o-1)*F(2,n),e+=a):(i=t*F(2,a-1)*F(2,n),e=0));8<=n;u[l++]=255&i,i/=256,n-=8);for(e=e<>1,c=i-7,f=r-1,a=t[f--],s=127&a;for(a>>=7;0>=-c,c+=n;0>8&255]}function packI32(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function packF64(t){return packIEEE754(t,52,8)}function packF32(t){return packIEEE754(t,23,4)}function addGetter(t,n,r){g(t[S],n,{get:function(){return this[r]}})}function get(t,n,r,e){var i=p(+r);if(t[D]>24)},setUint8:function setUint8(t,n){B.call(this,t,n<<24>>24)}},!0)}else m=function ArrayBuffer(t){s(this,m,b);var n=p(t);this._b=y.call(new Array(n),0),this[D]=n},w=function DataView(t,n,r){s(this,w,_),s(t,m,_);var e=t[D],i=l(n);if(i<0||e>24},getUint8:function getUint8(t){ -return get(this,1,t)[0]},getInt16:function getInt16(t){var n=get(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function getUint16(t){var n=get(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function getInt32(t){return unpackI32(get(this,4,t,arguments[1]))},getUint32:function getUint32(t){return unpackI32(get(this,4,t,arguments[1]))>>>0},getFloat32:function getFloat32(t){return unpackIEEE754(get(this,4,t,arguments[1]),23,4)},getFloat64:function getFloat64(t){return unpackIEEE754(get(this,8,t,arguments[1]),52,8)},setInt8:function setInt8(t,n){set(this,1,t,packI8,n)},setUint8:function setUint8(t,n){set(this,1,t,packI8,n)},setInt16:function setInt16(t,n){set(this,2,t,packI16,n,arguments[2])},setUint16:function setUint16(t,n){set(this,2,t,packI16,n,arguments[2])},setInt32:function setInt32(t,n){set(this,4,t,packI32,n,arguments[2])},setUint32:function setUint32(t,n){set(this,4,t,packI32,n,arguments[2])},setFloat32:function setFloat32(t,n){set(this,4,t,packF32,n,arguments[2])},setFloat64:function setFloat64(t,n){set(this,8,t,packF64,n,arguments[2])}});d(m,b),d(w,_),c(w[S],u.VIEW,!0),n[b]=m,n[_]=w},function(t,n){t.exports=function(n,r){var e=r===Object(r)?function(t){return r[t]}:r;return function(t){return String(t).replace(n,e)}}},function(t,n,r){t.exports=!r(6)&&!r(4)(function(){return 7!=Object.defineProperty(r(69)("div"),"a",{get:function(){return 7}}).a})},function(t,n,r){n.f=r(5)},function(t,n,r){var u=r(12),c=r(11),f=r(53)(!1),a=r(71)("IE_PROTO");t.exports=function(t,n){var r,e=c(t),i=0,o=[];for(r in e)r!=a&&u(e,r)&&o.push(r);for(;i>>0||(u.test(r)?16:10))}:e},function(t,n){t.exports=Math.log1p||function log1p(t){return-1e-8<(t=+t)&&t<1e-8?t-t*t/2:Math.log(1+t)}},function(t,n,r){var o=r(80),e=Math.pow,u=e(2,-52),c=e(2,-23),f=e(2,127)*(2-c),a=e(2,-126);t.exports=Math.fround||function fround(t){var n,r,e=Math.abs(t),i=o(t);return e>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},function(t,n,r){var e=r(0),i=Math.exp;e(e.S,"Math",{cosh:function cosh(t){return(i(t=+t)+i(-t))/2}})},function(t,n,r){var e=r(0),i=r(81);e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},function(t,n,r){var e=r(0);e(e.S,"Math",{fround:r(110)})},function(t,n,r){var e=r(0),f=Math.abs;e(e.S,"Math",{hypot:function hypot(t,n){for(var r,e,i=0,o=0,u=arguments.length,c=0;o>>16)*u+o*(r&i>>>16)<<16>>>0)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log10:function log10(t){return Math.log(t)*Math.LOG10E}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log1p:r(109)})},function(t,n,r){var e=r(0);e(e.S,"Math",{log2:function log2(t){return Math.log(t)/Math.LN2}})},function(t,n,r){var e=r(0);e(e.S,"Math",{sign:r(80)})},function(t,n,r){var e=r(0),i=r(81),o=Math.exp;e(e.S+e.F*r(4)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},function(t,n,r){var e=r(0),i=r(81),o=Math.exp;e(e.S,"Math",{tanh:function tanh(t){var n=i(t=+t),r=i(-t);return n==Infinity?1:r==Infinity?-1:(n-r)/(o(t)+o(-t))}})},function(t,n,r){var e=r(0);e(e.S,"Math",{trunc:function trunc(t){return(0>10),n%1024+56320))}return r.join("")}})},function(t,n,r){var e=r(0),u=r(11),c=r(7);e(e.S,"String",{raw:function raw(t){for(var n=u(t.raw),r=c(n.length),e=arguments.length,i=[],o=0;o]*>)/g,v=/\$([$&`']|\d\d?)/g;r(62)("replace",2,function(i,o,x,m){return[function replace(t,n){var r=i(this),e=t==Jt?Jt:t[o];return e!==Jt?e.call(t,r,n):x.call(String(r),t,n)},function(t,n){var r=m(x,t,this,n);if(r.done)return r.value;var e=w(t),i=String(this),o="function"==typeof n;o||(n=String(n));var u=e.global;if(u){var c=e.unicode;e.lastIndex=0}for(var f=[];;){var a=P(e,i);if(null===a)break;if(f.push(a),!u)break;""===String(a[0])&&(e.lastIndex=M(i,E(e.lastIndex),c))}for(var s,l="",h=0,p=0;p>>0,a=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(e=l.call(a,r))&&!(c<(i=a[v])&&(u.push(r.slice(c,e.index)),1>>0;if(0===f)return[];if(0===i.length)return null===m(c,i)?[i]:[];for(var a=0,s=0,l=[];s>>0,o=r>>>0;return(n>>>0)+(e>>>0)+((i&o|(i|o)&~(i+o>>>0))>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{isubh:function isubh(t,n,r,e){var i=t>>>0,o=r>>>0;return(n>>>0)-(e>>>0)-((~i&o|~(i^o)&i-o>>>0)>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{imulh:function imulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>16,c=e>>16,f=(u*o>>>0)+(i*o>>>16);return u*c+(f>>16)+((i*c>>>0)+(65535&f)>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(t,n,r){var e=r(0),i=Math.PI/180;e(e.S,"Math",{radians:function radians(t){return t*i}})},function(t,n,r){var e=r(0);e(e.S,"Math",{scale:r(129)})},function(t,n,r){var e=r(0);e(e.S,"Math",{umulh:function umulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>>16,c=e>>>16,f=(u*o>>>0)+(i*o>>>16);return u*c+(f>>>16)+((i*c>>>0)+(65535&f)>>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{signbit:function signbit(t){return(t=+t)!=t?t:0==t?1/t==Infinity:0"']/g,{"&":"&","<":"<",">":">",'"':""","'":"'"});e(e.P+e.F,"String",{escapeHTML:function escapeHTML(){return i(this)}})},function(t,n,r){var e=r(0),i=r(97)(/&(?:amp|lt|gt|quot|apos);/g,{"&":"&","<":"<",">":">",""":'"',"'":"'"});e(e.P+e.F,"String",{unescapeHTML:function unescapeHTML(){return i(this)}})}]),"undefined"!=typeof module&&module.exports?module.exports=e:"function"==typeof define&&define.amd?define(function(){return e}):i.core=e}(1,1); -//# sourceMappingURL=core.min.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/core.min.js.map b/forward_engineering/node_modules/core-js/client/core.min.js.map deleted file mode 100644 index db7785d..0000000 --- a/forward_engineering/node_modules/core-js/client/core.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["core.js"],"names":["__e","__g","undefined","modules","installedModules","__webpack_require__","moduleId","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","getDefault","getModuleExports","object","property","prototype","hasOwnProperty","p","s","global","core","hide","redefine","ctx","PROTOTYPE","$export","type","source","key","own","out","exp","IS_FORCED","F","IS_GLOBAL","G","IS_PROTO","P","IS_BIND","B","target","S","expProto","Function","U","W","R","isObject","it","TypeError","window","Math","self","exec","e","store","uid","Symbol","USE_SYMBOL","a","toInteger","min","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","value","defined","IObject","version","createDesc","has","SRC","$toString","TO_STRING","TPL","split","inspectSource","val","safe","isFunction","join","String","toString","this","pIE","toIObject","gOPD","getOwnPropertyDescriptor","toObject","IE_PROTO","ObjectProto","getPrototypeOf","constructor","fails","quot","createHTML","string","tag","attribute","p1","replace","NAME","test","toLowerCase","length","aFunction","fn","that","b","apply","arguments","slice","ceil","floor","isNaN","method","arg","valueOf","KEY","toLength","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","create","$this","callbackfn","res","index","result","push","$keys","enumBugKeys","keys","dPs","Empty","createDict","iframeDocument","iframe","style","display","appendChild","src","contentWindow","document","open","write","lt","close","Properties","LIBRARY","$typed","$buffer","anInstance","propertyDesc","redefineAll","toIndex","toAbsoluteIndex","classof","isArrayIter","gOPN","getIterFn","wks","createArrayMethod","createArrayIncludes","speciesConstructor","ArrayIterators","Iterators","$iterDetect","setSpecies","arrayFill","arrayCopyWithin","$DP","$GOPD","RangeError","Uint8Array","ARRAY_BUFFER","SHARED_BUFFER","BYTES_PER_ELEMENT","ArrayProto","Array","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayFind","arrayFindIndex","arrayIncludes","arrayIndexOf","arrayValues","values","arrayKeys","arrayEntries","entries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arraySlice","arrayToString","arrayToLocaleString","toLocaleString","ITERATOR","TAG","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","WRONG_LENGTH","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","set","toOffset","BYTES","offset","validate","C","speciesFromList","list","fromList","addGetter","internal","_d","$from","from","step","iterator","aLen","mapfn","mapping","iterFn","next","done","$of","of","TO_LOCALE_BUG","$toLocaleString","proto","copyWithin","start","every","fill","filter","find","predicate","findIndex","forEach","indexOf","searchElement","includes","separator","map","reverse","middle","some","comparefn","subarray","begin","end","$begin","byteOffset","$slice","$set","arrayLike","len","$iterators","isTAIndex","$getDesc","$setDesc","desc","writable","$TypedArrayPrototype$","wrapper","CLAMPED","GETTER","SETTER","TypedArray","Base","TAC","TypedArrayPrototype","addElement","data","v","round","ABV","$offset","$length","byteLength","klass","$len","iter","concat","$nativeIterator","CORRECT_ITER_NAME","$iterator","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","MetadataKey","metadataMap","MetadataValue","_","bitmap","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","meta","NEED","fastKey","getWeak","onFreeze","cof","ARG","T","tryGet","callee","UNSCOPABLES","BREAK","RETURN","iterable","px","random","max","hiddenKeys","getOwnPropertyNames","DESCRIPTORS","SPECIES","Constructor","forbiddenField","_t","def","stat","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","SHARED","mode","copyright","propertyIsEnumerable","getIteratorMethod","ignoreCase","multiline","unicode","sticky","D","IS_INCLUDES","el","fromIndex","getOwnPropertySymbols","isArray","pos","charCodeAt","charAt","MATCH","isRegExp","$iterCreate","setToStringTag","BUGGY","VALUES","returnThis","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","descriptor","SAFE_CLOSING","riter","skipClosing","arr","builtinExec","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","maybeCallNative","nativeMethod","regexp","str","arg2","forceStringMethod","rxfn","navigator","userAgent","forOf","inheritIfRequired","common","IS_WEAK","ADDER","fixMethod","add","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","clear","getConstructor","setStrong","Typed","TypedArrayConstructors","K","__defineSetter__","COLLECTION","A","cb","mapFn","nextItem","is","createElement","wksExt","$Symbol","documentElement","getKeys","gOPS","$assign","assign","k","getSymbols","isEnum","j","check","setPrototypeOf","buggy","__proto__","args","un","repeat","count","Infinity","sign","x","$expm1","expm1","searchString","$defineProperty","original","endPos","addToUnscopables","iterated","_i","_k","Arguments","re1","re2","regexpFlags","nativeExec","nativeReplace","patchedExec","LAST_INDEX","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","lastIndex","reCopy","match","at","defer","channel","port","invoke","html","cel","process","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","ONREADYSTATECHANGE","run","listener","event","nextTick","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","macrotask","Observer","MutationObserver","WebKitMutationObserver","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","standalone","resolve","promise","then","toggle","node","createTextNode","observe","characterData","task","PromiseCapability","reject","$$resolve","$$reject","Reflect","ownKeys","DATA_VIEW","WRONG_INDEX","BaseBuffer","abs","pow","log","LN2","BYTE_LENGTH","BYTE_OFFSET","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","intIndex","pack","_b","conversion","ArrayBufferProto","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","regExp","replacer","part","names","defineProperties","windowNames","getWindowNames","y","factories","bind","partArgs","bound","construct","msg","isInteger","isFinite","$parseFloat","parseFloat","$trim","$parseInt","parseInt","ws","hex","radix","log1p","EPSILON","EPSILON32","MAX32","MIN32","fround","$abs","$sign","ret","memo","isRight","to","inc","forced","flags","newPromiseCapability","promiseCapability","strong","entry","getEntry","$iterDefine","SIZE","_f","_l","r","delete","prev","Set","InternalMap","each","weak","NATIVE_WEAK_MAP","IS_IE11","ActiveXObject","WEAK_MAP","uncaughtFrozenStore","ufstore","WeakMap","$WeakMap","$has","UncaughtFrozenStore","findUncaughtFrozen","splice","number","IS_CONCAT_SPREADABLE","flattenIntoArray","sourceLen","depth","mapper","thisArg","element","spreadable","targetIndex","sourceIndex","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","isEntries","toJSON","scale","inLow","inHigh","outLow","outHigh","isIterable","path","pargs","holder","define","mixin","$fails","wksDefine","enumKeys","_create","gOPNExt","$GOPS","$JSON","JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","SymbolRegistry","AllSymbols","OPSymbols","USE_NATIVE","QObject","setter","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","for","keyFor","useSetter","useSimple","FAILS_ON_PRIMITIVES","$replacer","symbols","$getPrototypeOf","$freeze","freeze","$seal","seal","$preventExtensions","$isFrozen","isFrozen","$isSealed","isSealed","$isExtensible","FProto","nameRE","HAS_INSTANCE","FunctionProto","NUMBER","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","code","digits","Number","aNumberValue","$toFixed","toFixed","ERROR","multiply","c2","divide","numToString","t","acc","fractionDigits","z","x2","$toPrecision","toPrecision","precision","_isFinite","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","sqrt","$acosh","acosh","MAX_VALUE","$asinh","asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","div","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LOG10E","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","raw","callSite","tpl","$at","codePointAt","context","ENDS_WITH","$endsWith","endsWith","endPosition","search","INCLUDES","STARTS_WITH","$startsWith","startsWith","point","anchor","big","blink","bold","fixed","fontcolor","color","fontsize","size","italics","link","url","small","strike","sub","sup","createProperty","upTo","cloned","$sort","$forEach","STRICT","$filter","$some","$every","$reduce","$indexOf","NEGATIVE_ZERO","$find","$flags","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","proxy","advanceStringIndex","regExpExec","$match","rx","fullUnicode","matchStr","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","sameValue","SEARCH","$search","previousLastIndex","callRegExpExec","$min","$push","$SPLIT","LENGTH","MAX_UINT32","SUPPORTS_Y","SPLIT","$split","internalSplit","limit","lastLength","output","lastLastIndex","splitLimit","separatorCopy","splitter","unicodeMatching","lim","q","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","PROMISE","versions","v8","$Promise","empty","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","exited","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","WEAK_SET","WeakSet","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","propertyKey","attributes","deleteProperty","Enumerate","enumerate","receiver","getProto","V","existingDescriptor","ownDesc","setProto","Date","getTime","toISOString","pv","$toISOString","lz","num","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","DateProto","INVALID_DATE","hint","$isView","isView","fin","viewS","viewT","init","Int8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint32Array","Float32Array","Float64Array","$includes","arraySpeciesCreate","flatMap","flatten","depthArg","$pad","WEBKIT_BUG","padStart","padEnd","trimLeft","trimRight","getFlags","RegExpProto","$RegExpStringIterator","_r","matchAll","getOwnPropertyDescriptors","getDesc","$values","__defineGetter__","__lookupGetter__","__lookupSetter__","isError","clamp","lower","upper","DEG_PER_RAD","PI","RAD_PER_DEG","degrees","radians","fscale","iaddh","x0","x1","y0","y1","$x0","$y0","isubh","imulh","u","$u","$v","u0","v0","u1","v1","umulh","signbit","finally","onFinally","try","metadata","toMetaKey","ordinaryDefineOwnMetadata","defineMetadata","metadataKey","metadataValue","deleteMetadata","ordinaryHasOwnMetadata","ordinaryGetOwnMetadata","ordinaryGetMetadata","getMetadata","ordinaryOwnMetadataKeys","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","getOwnMetadata","getOwnMetadataKeys","ordinaryHasMetadata","hasMetadata","hasOwnMetadata","$metadata","decorator","asap","OBSERVABLE","cleanupSubscription","subscription","cleanup","subscriptionClosed","_o","closeSubscription","Subscription","observer","subscriber","SubscriptionObserver","unsubscribe","complete","$Observable","Observable","subscribe","observable","items","$task","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","MSIE","time","boundArgs","setInterval","keyOf","createDictMethod","Dict","findKey","createDictIter","DictIterator","dict","mapPairs","isDict","getIterator","partial","delay","make","$re","escape","&","<",">","\"","'","escapeHTML","&","<",">",""","'","unescapeHTML","amd"],"mappings":"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B,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,IACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KA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","file":"core.min.js"} \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/library.js b/forward_engineering/node_modules/core-js/client/library.js deleted file mode 100644 index a04db28..0000000 --- a/forward_engineering/node_modules/core-js/client/library.js +++ /dev/null @@ -1,8163 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(__e, __g, undefined){ -'use strict'; -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 126); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(12); -var ctx = __webpack_require__(16); -var hide = __webpack_require__(17); -var has = __webpack_require__(15); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var IS_WRAP = type & $export.W; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE]; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; - var key, own, out; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - if (own && has(exports, key)) continue; - // export native or passed - out = own ? target[key] : source[key]; - // prevent global pollution for namespaces - exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] - // bind timers to global for call from export context - : IS_BIND && own ? ctx(out, global) - // wrap global constructors for prevent change them in library - : IS_WRAP && target[key] == out ? (function (C) { - var F = function (a, b, c) { - if (this instanceof C) { - switch (arguments.length) { - case 0: return new C(); - case 1: return new C(a); - case 2: return new C(a, b); - } return new C(a, b, c); - } return C.apply(this, arguments); - }; - F[PROTOTYPE] = C[PROTOTYPE]; - return F; - // make static versions for prototype methods - })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% - if (IS_PROTO) { - (exports.virtual || (exports.virtual = {}))[key] = out; - // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% - if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); - } - } -}; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; - - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - - -/***/ }), -/* 2 */ -/***/ (function(module, exports) { - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; - - -/***/ }), -/* 4 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; - - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -var store = __webpack_require__(49)('wks'); -var uid = __webpack_require__(41); -var Symbol = __webpack_require__(2).Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; - - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.15 ToLength -var toInteger = __webpack_require__(22); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; - - -/***/ }), -/* 7 */ -/***/ (function(module, exports, __webpack_require__) { - -// Thank's IE8 for his funny defineProperty -module.exports = !__webpack_require__(4)(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var IE8_DOM_DEFINE = __webpack_require__(90); -var toPrimitive = __webpack_require__(27); -var dP = Object.defineProperty; - -exports.f = __webpack_require__(7) ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; - - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.13 ToObject(argument) -var defined = __webpack_require__(24); -module.exports = function (it) { - return Object(defined(it)); -}; - - -/***/ }), -/* 10 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; - - -/***/ }), -/* 11 */ -/***/ (function(module, exports, __webpack_require__) { - -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = __webpack_require__(44); -var defined = __webpack_require__(24); -module.exports = function (it) { - return IObject(defined(it)); -}; - - -/***/ }), -/* 12 */ -/***/ (function(module, exports) { - -var core = module.exports = { version: '2.6.9' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - - -/***/ }), -/* 13 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = __webpack_require__(15); -var toObject = __webpack_require__(9); -var IE_PROTO = __webpack_require__(65)('IE_PROTO'); -var ObjectProto = Object.prototype; - -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; - - -/***/ }), -/* 14 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var fails = __webpack_require__(4); -var defined = __webpack_require__(24); -var quot = /"/g; -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -var createHTML = function (string, tag, attribute, value) { - var S = String(defined(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; -module.exports = function (NAME, exec) { - var O = {}; - O[NAME] = exec(createHTML); - $export($export.P + $export.F * fails(function () { - var test = ''[NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }), 'String', O); -}; - - -/***/ }), -/* 15 */ -/***/ (function(module, exports) { - -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; - - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __webpack_require__) { - -// optional / simple context binding -var aFunction = __webpack_require__(10); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; - - -/***/ }), -/* 17 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var createDesc = __webpack_require__(28); -module.exports = __webpack_require__(7) ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; - - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __webpack_require__) { - -var pIE = __webpack_require__(45); -var createDesc = __webpack_require__(28); -var toIObject = __webpack_require__(11); -var toPrimitive = __webpack_require__(27); -var has = __webpack_require__(15); -var IE8_DOM_DEFINE = __webpack_require__(90); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = __webpack_require__(7) ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; - - -/***/ }), -/* 19 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var fails = __webpack_require__(4); - -module.exports = function (method, arg) { - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call - arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); - }); -}; - - -/***/ }), -/* 20 */ -/***/ (function(module, exports, __webpack_require__) { - -// 0 -> Array#forEach -// 1 -> Array#map -// 2 -> Array#filter -// 3 -> Array#some -// 4 -> Array#every -// 5 -> Array#find -// 6 -> Array#findIndex -var ctx = __webpack_require__(16); -var IObject = __webpack_require__(44); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var asc = __webpack_require__(80); -module.exports = function (TYPE, $create) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - var create = $create || asc; - return function ($this, callbackfn, that) { - var O = toObject($this); - var self = IObject(O); - var f = ctx(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var val, res; - for (;length > index; index++) if (NO_HOLES || index in self) { - val = self[index]; - res = f(val, index, O); - if (TYPE) { - if (IS_MAP) result[index] = res; // map - else if (res) switch (TYPE) { - case 3: return true; // some - case 5: return val; // find - case 6: return index; // findIndex - case 2: result.push(val); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; - }; -}; - - -/***/ }), -/* 21 */ -/***/ (function(module, exports) { - -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; - - -/***/ }), -/* 22 */ -/***/ (function(module, exports) { - -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; - - -/***/ }), -/* 23 */ -/***/ (function(module, exports, __webpack_require__) { - -// most Object methods by ES6 should accept primitives -var $export = __webpack_require__(0); -var core = __webpack_require__(12); -var fails = __webpack_require__(4); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; - - -/***/ }), -/* 24 */ -/***/ (function(module, exports) { - -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; - - -/***/ }), -/* 25 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -if (__webpack_require__(7)) { - var LIBRARY = __webpack_require__(30); - var global = __webpack_require__(2); - var fails = __webpack_require__(4); - var $export = __webpack_require__(0); - var $typed = __webpack_require__(58); - var $buffer = __webpack_require__(88); - var ctx = __webpack_require__(16); - var anInstance = __webpack_require__(38); - var propertyDesc = __webpack_require__(28); - var hide = __webpack_require__(17); - var redefineAll = __webpack_require__(39); - var toInteger = __webpack_require__(22); - var toLength = __webpack_require__(6); - var toIndex = __webpack_require__(115); - var toAbsoluteIndex = __webpack_require__(35); - var toPrimitive = __webpack_require__(27); - var has = __webpack_require__(15); - var classof = __webpack_require__(37); - var isObject = __webpack_require__(3); - var toObject = __webpack_require__(9); - var isArrayIter = __webpack_require__(77); - var create = __webpack_require__(32); - var getPrototypeOf = __webpack_require__(13); - var gOPN = __webpack_require__(46).f; - var getIterFn = __webpack_require__(48); - var uid = __webpack_require__(41); - var wks = __webpack_require__(5); - var createArrayMethod = __webpack_require__(20); - var createArrayIncludes = __webpack_require__(50); - var speciesConstructor = __webpack_require__(55); - var ArrayIterators = __webpack_require__(82); - var Iterators = __webpack_require__(36); - var $iterDetect = __webpack_require__(79); - var setSpecies = __webpack_require__(43); - var arrayFill = __webpack_require__(81); - var arrayCopyWithin = __webpack_require__(106); - var $DP = __webpack_require__(8); - var $GOPD = __webpack_require__(18); - var dP = $DP.f; - var gOPD = $GOPD.f; - var RangeError = global.RangeError; - var TypeError = global.TypeError; - var Uint8Array = global.Uint8Array; - var ARRAY_BUFFER = 'ArrayBuffer'; - var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER; - var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; - var PROTOTYPE = 'prototype'; - var ArrayProto = Array[PROTOTYPE]; - var $ArrayBuffer = $buffer.ArrayBuffer; - var $DataView = $buffer.DataView; - var arrayForEach = createArrayMethod(0); - var arrayFilter = createArrayMethod(2); - var arraySome = createArrayMethod(3); - var arrayEvery = createArrayMethod(4); - var arrayFind = createArrayMethod(5); - var arrayFindIndex = createArrayMethod(6); - var arrayIncludes = createArrayIncludes(true); - var arrayIndexOf = createArrayIncludes(false); - var arrayValues = ArrayIterators.values; - var arrayKeys = ArrayIterators.keys; - var arrayEntries = ArrayIterators.entries; - var arrayLastIndexOf = ArrayProto.lastIndexOf; - var arrayReduce = ArrayProto.reduce; - var arrayReduceRight = ArrayProto.reduceRight; - var arrayJoin = ArrayProto.join; - var arraySort = ArrayProto.sort; - var arraySlice = ArrayProto.slice; - var arrayToString = ArrayProto.toString; - var arrayToLocaleString = ArrayProto.toLocaleString; - var ITERATOR = wks('iterator'); - var TAG = wks('toStringTag'); - var TYPED_CONSTRUCTOR = uid('typed_constructor'); - var DEF_CONSTRUCTOR = uid('def_constructor'); - var ALL_CONSTRUCTORS = $typed.CONSTR; - var TYPED_ARRAY = $typed.TYPED; - var VIEW = $typed.VIEW; - var WRONG_LENGTH = 'Wrong length!'; - - var $map = createArrayMethod(1, function (O, length) { - return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length); - }); - - var LITTLE_ENDIAN = fails(function () { - // eslint-disable-next-line no-undef - return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1; - }); - - var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () { - new Uint8Array(1).set({}); - }); - - var toOffset = function (it, BYTES) { - var offset = toInteger(it); - if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!'); - return offset; - }; - - var validate = function (it) { - if (isObject(it) && TYPED_ARRAY in it) return it; - throw TypeError(it + ' is not a typed array!'); - }; - - var allocate = function (C, length) { - if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) { - throw TypeError('It is not a typed array constructor!'); - } return new C(length); - }; - - var speciesFromList = function (O, list) { - return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list); - }; - - var fromList = function (C, list) { - var index = 0; - var length = list.length; - var result = allocate(C, length); - while (length > index) result[index] = list[index++]; - return result; - }; - - var addGetter = function (it, key, internal) { - dP(it, key, { get: function () { return this._d[internal]; } }); - }; - - var $from = function from(source /* , mapfn, thisArg */) { - var O = toObject(source); - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iterFn = getIterFn(O); - var i, length, values, result, step, iterator; - if (iterFn != undefined && !isArrayIter(iterFn)) { - for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) { - values.push(step.value); - } O = values; - } - if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2); - for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) { - result[i] = mapping ? mapfn(O[i], i) : O[i]; - } - return result; - }; - - var $of = function of(/* ...items */) { - var index = 0; - var length = arguments.length; - var result = allocate(this, length); - while (length > index) result[index] = arguments[index++]; - return result; - }; - - // iOS Safari 6.x fails here - var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); }); - - var $toLocaleString = function toLocaleString() { - return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments); - }; - - var proto = { - copyWithin: function copyWithin(target, start /* , end */) { - return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined); - }, - every: function every(callbackfn /* , thisArg */) { - return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars - return arrayFill.apply(validate(this), arguments); - }, - filter: function filter(callbackfn /* , thisArg */) { - return speciesFromList(this, arrayFilter(validate(this), callbackfn, - arguments.length > 1 ? arguments[1] : undefined)); - }, - find: function find(predicate /* , thisArg */) { - return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - findIndex: function findIndex(predicate /* , thisArg */) { - return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - forEach: function forEach(callbackfn /* , thisArg */) { - arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - indexOf: function indexOf(searchElement /* , fromIndex */) { - return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - includes: function includes(searchElement /* , fromIndex */) { - return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - join: function join(separator) { // eslint-disable-line no-unused-vars - return arrayJoin.apply(validate(this), arguments); - }, - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars - return arrayLastIndexOf.apply(validate(this), arguments); - }, - map: function map(mapfn /* , thisArg */) { - return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined); - }, - reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduce.apply(validate(this), arguments); - }, - reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduceRight.apply(validate(this), arguments); - }, - reverse: function reverse() { - var that = this; - var length = validate(that).length; - var middle = Math.floor(length / 2); - var index = 0; - var value; - while (index < middle) { - value = that[index]; - that[index++] = that[--length]; - that[length] = value; - } return that; - }, - some: function some(callbackfn /* , thisArg */) { - return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - sort: function sort(comparefn) { - return arraySort.call(validate(this), comparefn); - }, - subarray: function subarray(begin, end) { - var O = validate(this); - var length = O.length; - var $begin = toAbsoluteIndex(begin, length); - return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))( - O.buffer, - O.byteOffset + $begin * O.BYTES_PER_ELEMENT, - toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin) - ); - } - }; - - var $slice = function slice(start, end) { - return speciesFromList(this, arraySlice.call(validate(this), start, end)); - }; - - var $set = function set(arrayLike /* , offset */) { - validate(this); - var offset = toOffset(arguments[1], 1); - var length = this.length; - var src = toObject(arrayLike); - var len = toLength(src.length); - var index = 0; - if (len + offset > length) throw RangeError(WRONG_LENGTH); - while (index < len) this[offset + index] = src[index++]; - }; - - var $iterators = { - entries: function entries() { - return arrayEntries.call(validate(this)); - }, - keys: function keys() { - return arrayKeys.call(validate(this)); - }, - values: function values() { - return arrayValues.call(validate(this)); - } - }; - - var isTAIndex = function (target, key) { - return isObject(target) - && target[TYPED_ARRAY] - && typeof key != 'symbol' - && key in target - && String(+key) == String(key); - }; - var $getDesc = function getOwnPropertyDescriptor(target, key) { - return isTAIndex(target, key = toPrimitive(key, true)) - ? propertyDesc(2, target[key]) - : gOPD(target, key); - }; - var $setDesc = function defineProperty(target, key, desc) { - if (isTAIndex(target, key = toPrimitive(key, true)) - && isObject(desc) - && has(desc, 'value') - && !has(desc, 'get') - && !has(desc, 'set') - // TODO: add validation descriptor w/o calling accessors - && !desc.configurable - && (!has(desc, 'writable') || desc.writable) - && (!has(desc, 'enumerable') || desc.enumerable) - ) { - target[key] = desc.value; - return target; - } return dP(target, key, desc); - }; - - if (!ALL_CONSTRUCTORS) { - $GOPD.f = $getDesc; - $DP.f = $setDesc; - } - - $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', { - getOwnPropertyDescriptor: $getDesc, - defineProperty: $setDesc - }); - - if (fails(function () { arrayToString.call({}); })) { - arrayToString = arrayToLocaleString = function toString() { - return arrayJoin.call(this); - }; - } - - var $TypedArrayPrototype$ = redefineAll({}, proto); - redefineAll($TypedArrayPrototype$, $iterators); - hide($TypedArrayPrototype$, ITERATOR, $iterators.values); - redefineAll($TypedArrayPrototype$, { - slice: $slice, - set: $set, - constructor: function () { /* noop */ }, - toString: arrayToString, - toLocaleString: $toLocaleString - }); - addGetter($TypedArrayPrototype$, 'buffer', 'b'); - addGetter($TypedArrayPrototype$, 'byteOffset', 'o'); - addGetter($TypedArrayPrototype$, 'byteLength', 'l'); - addGetter($TypedArrayPrototype$, 'length', 'e'); - dP($TypedArrayPrototype$, TAG, { - get: function () { return this[TYPED_ARRAY]; } - }); - - // eslint-disable-next-line max-statements - module.exports = function (KEY, BYTES, wrapper, CLAMPED) { - CLAMPED = !!CLAMPED; - var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'; - var GETTER = 'get' + KEY; - var SETTER = 'set' + KEY; - var TypedArray = global[NAME]; - var Base = TypedArray || {}; - var TAC = TypedArray && getPrototypeOf(TypedArray); - var FORCED = !TypedArray || !$typed.ABV; - var O = {}; - var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE]; - var getter = function (that, index) { - var data = that._d; - return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN); - }; - var setter = function (that, index, value) { - var data = that._d; - if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff; - data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN); - }; - var addElement = function (that, index) { - dP(that, index, { - get: function () { - return getter(this, index); - }, - set: function (value) { - return setter(this, index, value); - }, - enumerable: true - }); - }; - if (FORCED) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME, '_d'); - var index = 0; - var offset = 0; - var buffer, byteLength, length, klass; - if (!isObject(data)) { - length = toIndex(data); - byteLength = length * BYTES; - buffer = new $ArrayBuffer(byteLength); - } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - buffer = data; - offset = toOffset($offset, BYTES); - var $len = data.byteLength; - if ($length === undefined) { - if ($len % BYTES) throw RangeError(WRONG_LENGTH); - byteLength = $len - offset; - if (byteLength < 0) throw RangeError(WRONG_LENGTH); - } else { - byteLength = toLength($length) * BYTES; - if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH); - } - length = byteLength / BYTES; - } else if (TYPED_ARRAY in data) { - return fromList(TypedArray, data); - } else { - return $from.call(TypedArray, data); - } - hide(that, '_d', { - b: buffer, - o: offset, - l: byteLength, - e: length, - v: new $DataView(buffer) - }); - while (index < length) addElement(that, index++); - }); - TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$); - hide(TypedArrayPrototype, 'constructor', TypedArray); - } else if (!fails(function () { - TypedArray(1); - }) || !fails(function () { - new TypedArray(-1); // eslint-disable-line no-new - }) || !$iterDetect(function (iter) { - new TypedArray(); // eslint-disable-line no-new - new TypedArray(null); // eslint-disable-line no-new - new TypedArray(1.5); // eslint-disable-line no-new - new TypedArray(iter); // eslint-disable-line no-new - }, true)) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME); - var klass; - // `ws` module bug, temporarily remove validation length for Uint8Array - // https://github.com/websockets/ws/pull/645 - if (!isObject(data)) return new Base(toIndex(data)); - if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - return $length !== undefined - ? new Base(data, toOffset($offset, BYTES), $length) - : $offset !== undefined - ? new Base(data, toOffset($offset, BYTES)) - : new Base(data); - } - if (TYPED_ARRAY in data) return fromList(TypedArray, data); - return $from.call(TypedArray, data); - }); - arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) { - if (!(key in TypedArray)) hide(TypedArray, key, Base[key]); - }); - TypedArray[PROTOTYPE] = TypedArrayPrototype; - if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray; - } - var $nativeIterator = TypedArrayPrototype[ITERATOR]; - var CORRECT_ITER_NAME = !!$nativeIterator - && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined); - var $iterator = $iterators.values; - hide(TypedArray, TYPED_CONSTRUCTOR, true); - hide(TypedArrayPrototype, TYPED_ARRAY, NAME); - hide(TypedArrayPrototype, VIEW, true); - hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray); - - if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) { - dP(TypedArrayPrototype, TAG, { - get: function () { return NAME; } - }); - } - - O[NAME] = TypedArray; - - $export($export.G + $export.W + $export.F * (TypedArray != Base), O); - - $export($export.S, NAME, { - BYTES_PER_ELEMENT: BYTES - }); - - $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, { - from: $from, - of: $of - }); - - if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES); - - $export($export.P, NAME, proto); - - setSpecies(NAME); - - $export($export.P + $export.F * FORCED_SET, NAME, { set: $set }); - - $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators); - - if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString; - - $export($export.P + $export.F * fails(function () { - new TypedArray(1).slice(); - }), NAME, { slice: $slice }); - - $export($export.P + $export.F * (fails(function () { - return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString(); - }) || !fails(function () { - TypedArrayPrototype.toLocaleString.call([1, 2]); - })), NAME, { toLocaleString: $toLocaleString }); - - Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator; - if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator); - }; -} else module.exports = function () { /* empty */ }; - - -/***/ }), -/* 26 */ -/***/ (function(module, exports, __webpack_require__) { - -var Map = __webpack_require__(109); -var $export = __webpack_require__(0); -var shared = __webpack_require__(49)('metadata'); -var store = shared.store || (shared.store = new (__webpack_require__(112))()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return undefined; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return undefined; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; -var toMetaKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; -var exp = function (O) { - $export($export.S, 'Reflect', O); -}; - -module.exports = { - store: store, - map: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - key: toMetaKey, - exp: exp -}; - - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = __webpack_require__(3); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; - - -/***/ }), -/* 28 */ -/***/ (function(module, exports) { - -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; - - -/***/ }), -/* 29 */ -/***/ (function(module, exports, __webpack_require__) { - -var META = __webpack_require__(41)('meta'); -var isObject = __webpack_require__(3); -var has = __webpack_require__(15); -var setDesc = __webpack_require__(8).f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !__webpack_require__(4)(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; - - -/***/ }), -/* 30 */ -/***/ (function(module, exports) { - -module.exports = true; - - -/***/ }), -/* 31 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = __webpack_require__(92); -var enumBugKeys = __webpack_require__(66); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; - - -/***/ }), -/* 32 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = __webpack_require__(1); -var dPs = __webpack_require__(93); -var enumBugKeys = __webpack_require__(66); -var IE_PROTO = __webpack_require__(65)('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(62)('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - __webpack_require__(67).appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; - - -/***/ }), -/* 33 */ -/***/ (function(module, exports) { - -module.exports = function () { /* empty */ }; - - -/***/ }), -/* 34 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(16); -var call = __webpack_require__(104); -var isArrayIter = __webpack_require__(77); -var anObject = __webpack_require__(1); -var toLength = __webpack_require__(6); -var getIterFn = __webpack_require__(48); -var BREAK = {}; -var RETURN = {}; -var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { - var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); - var f = ctx(fn, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); - // fast case for arrays with default iterator - if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) return result; - } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) return result; - } -}; -exports.BREAK = BREAK; -exports.RETURN = RETURN; - - -/***/ }), -/* 35 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(22); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; - - -/***/ }), -/* 36 */ -/***/ (function(module, exports) { - -module.exports = {}; - - -/***/ }), -/* 37 */ -/***/ (function(module, exports, __webpack_require__) { - -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = __webpack_require__(21); -var TAG = __webpack_require__(5)('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; - - -/***/ }), -/* 38 */ -/***/ (function(module, exports) { - -module.exports = function (it, Constructor, name, forbiddenField) { - if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) { - throw TypeError(name + ': incorrect invocation!'); - } return it; -}; - - -/***/ }), -/* 39 */ -/***/ (function(module, exports, __webpack_require__) { - -var hide = __webpack_require__(17); -module.exports = function (target, src, safe) { - for (var key in src) { - if (safe && target[key]) target[key] = src[key]; - else hide(target, key, src[key]); - } return target; -}; - - -/***/ }), -/* 40 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -module.exports = function (it, TYPE) { - if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); - return it; -}; - - -/***/ }), -/* 41 */ -/***/ (function(module, exports) { - -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; - - -/***/ }), -/* 42 */ -/***/ (function(module, exports, __webpack_require__) { - -var def = __webpack_require__(8).f; -var has = __webpack_require__(15); -var TAG = __webpack_require__(5)('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; - - -/***/ }), -/* 43 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var core = __webpack_require__(12); -var dP = __webpack_require__(8); -var DESCRIPTORS = __webpack_require__(7); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (KEY) { - var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; - - -/***/ }), -/* 44 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = __webpack_require__(21); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; - - -/***/ }), -/* 45 */ -/***/ (function(module, exports) { - -exports.f = {}.propertyIsEnumerable; - - -/***/ }), -/* 46 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = __webpack_require__(92); -var hiddenKeys = __webpack_require__(66).concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; - - -/***/ }), -/* 47 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var defined = __webpack_require__(24); -var fails = __webpack_require__(4); -var spaces = __webpack_require__(71); -var space = '[' + spaces + ']'; -var non = '\u200b\u0085'; -var ltrim = RegExp('^' + space + space + '*'); -var rtrim = RegExp(space + space + '*$'); - -var exporter = function (KEY, exec, ALIAS) { - var exp = {}; - var FORCE = fails(function () { - return !!spaces[KEY]() || non[KEY]() != non; - }); - var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; - if (ALIAS) exp[ALIAS] = fn; - $export($export.P + $export.F * FORCE, 'String', exp); -}; - -// 1 -> String#trimLeft -// 2 -> String#trimRight -// 3 -> String#trim -var trim = exporter.trim = function (string, TYPE) { - string = String(defined(string)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; -}; - -module.exports = exporter; - - -/***/ }), -/* 48 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(37); -var ITERATOR = __webpack_require__(5)('iterator'); -var Iterators = __webpack_require__(36); -module.exports = __webpack_require__(12).getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; - - -/***/ }), -/* 49 */ -/***/ (function(module, exports, __webpack_require__) { - -var core = __webpack_require__(12); -var global = __webpack_require__(2); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: __webpack_require__(30) ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); - - -/***/ }), -/* 50 */ -/***/ (function(module, exports, __webpack_require__) { - -// false -> Array#indexOf -// true -> Array#includes -var toIObject = __webpack_require__(11); -var toLength = __webpack_require__(6); -var toAbsoluteIndex = __webpack_require__(35); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; - - -/***/ }), -/* 51 */ -/***/ (function(module, exports) { - -exports.f = Object.getOwnPropertySymbols; - - -/***/ }), -/* 52 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.2 IsArray(argument) -var cof = __webpack_require__(21); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; - - -/***/ }), -/* 53 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(30); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(63); -var hide = __webpack_require__(17); -var Iterators = __webpack_require__(36); -var $iterCreate = __webpack_require__(54); -var setToStringTag = __webpack_require__(42); -var getPrototypeOf = __webpack_require__(13); -var ITERATOR = __webpack_require__(5)('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; - - -/***/ }), -/* 54 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var create = __webpack_require__(32); -var descriptor = __webpack_require__(28); -var setToStringTag = __webpack_require__(42); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -__webpack_require__(17)(IteratorPrototype, __webpack_require__(5)('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; - - -/***/ }), -/* 55 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var SPECIES = __webpack_require__(5)('species'); -module.exports = function (O, D) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); -}; - - -/***/ }), -/* 56 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var navigator = global.navigator; - -module.exports = navigator && navigator.userAgent || ''; - - -/***/ }), -/* 57 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var meta = __webpack_require__(29); -var fails = __webpack_require__(4); -var hide = __webpack_require__(17); -var redefineAll = __webpack_require__(39); -var forOf = __webpack_require__(34); -var anInstance = __webpack_require__(38); -var isObject = __webpack_require__(3); -var setToStringTag = __webpack_require__(42); -var dP = __webpack_require__(8).f; -var each = __webpack_require__(20)(0); -var DESCRIPTORS = __webpack_require__(7); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME, '_c'); - target._c = new Base(); - if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target); - }); - each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) { - var IS_ADDER = KEY == 'add' || KEY == 'set'; - if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) { - anInstance(this, C, KEY); - if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false; - var result = this._c[KEY](a === 0 ? 0 : a, b); - return IS_ADDER ? this : result; - }); - }); - IS_WEAK || dP(C.prototype, 'size', { - get: function () { - return this._c.size; - } - }); - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F, O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; - - -/***/ }), -/* 58 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var hide = __webpack_require__(17); -var uid = __webpack_require__(41); -var TYPED = uid('typed_array'); -var VIEW = uid('view'); -var ABV = !!(global.ArrayBuffer && global.DataView); -var CONSTR = ABV; -var i = 0; -var l = 9; -var Typed; - -var TypedArrayConstructors = ( - 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array' -).split(','); - -while (i < l) { - if (Typed = global[TypedArrayConstructors[i++]]) { - hide(Typed.prototype, TYPED, true); - hide(Typed.prototype, VIEW, true); - } else CONSTR = false; -} - -module.exports = { - ABV: ABV, - CONSTR: CONSTR, - TYPED: TYPED, - VIEW: VIEW -}; - - -/***/ }), -/* 59 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// Forced replacement prototype accessors methods -module.exports = __webpack_require__(30) || !__webpack_require__(4)(function () { - var K = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, K, function () { /* empty */ }); - delete __webpack_require__(2)[K]; -}); - - -/***/ }), -/* 60 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { of: function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); - } }); -}; - - -/***/ }), -/* 61 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var ctx = __webpack_require__(16); -var forOf = __webpack_require__(34); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { - var mapFn = arguments[1]; - var mapping, A, n, cb; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - cb = ctx(mapFn, arguments[2], 2); - forOf(source, false, function (nextItem) { - A.push(cb(nextItem, n++)); - }); - } else { - forOf(source, false, A.push, A); - } - return new this(A); - } }); -}; - - -/***/ }), -/* 62 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -var document = __webpack_require__(2).document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; - - -/***/ }), -/* 63 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = __webpack_require__(17); - - -/***/ }), -/* 64 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(12); -var LIBRARY = __webpack_require__(30); -var wksExt = __webpack_require__(91); -var defineProperty = __webpack_require__(8).f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; - - -/***/ }), -/* 65 */ -/***/ (function(module, exports, __webpack_require__) { - -var shared = __webpack_require__(49)('keys'); -var uid = __webpack_require__(41); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; - - -/***/ }), -/* 66 */ -/***/ (function(module, exports) { - -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); - - -/***/ }), -/* 67 */ -/***/ (function(module, exports, __webpack_require__) { - -var document = __webpack_require__(2).document; -module.exports = document && document.documentElement; - - -/***/ }), -/* 68 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 19.1.2.1 Object.assign(target, source, ...) -var DESCRIPTORS = __webpack_require__(7); -var getKeys = __webpack_require__(31); -var gOPS = __webpack_require__(51); -var pIE = __webpack_require__(45); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(44); -var $assign = Object.assign; - -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || __webpack_require__(4)(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } return T; -} : $assign; - - -/***/ }), -/* 69 */ -/***/ (function(module, exports) { - -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; - - -/***/ }), -/* 70 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var toInteger = __webpack_require__(22); -var defined = __webpack_require__(24); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; - - -/***/ }), -/* 71 */ -/***/ (function(module, exports) { - -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; - - -/***/ }), -/* 72 */ -/***/ (function(module, exports) { - -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; - - -/***/ }), -/* 73 */ -/***/ (function(module, exports) { - -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; - - -/***/ }), -/* 74 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(22); -var defined = __webpack_require__(24); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; - - -/***/ }), -/* 75 */ -/***/ (function(module, exports, __webpack_require__) { - -// helper for String#{startsWith, endsWith, includes} -var isRegExp = __webpack_require__(103); -var defined = __webpack_require__(24); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; - - -/***/ }), -/* 76 */ -/***/ (function(module, exports, __webpack_require__) { - -var MATCH = __webpack_require__(5)('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; - - -/***/ }), -/* 77 */ -/***/ (function(module, exports, __webpack_require__) { - -// check on default Array iterator -var Iterators = __webpack_require__(36); -var ITERATOR = __webpack_require__(5)('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; - - -/***/ }), -/* 78 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $defineProperty = __webpack_require__(8); -var createDesc = __webpack_require__(28); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; - - -/***/ }), -/* 79 */ -/***/ (function(module, exports, __webpack_require__) { - -var ITERATOR = __webpack_require__(5)('iterator'); -var SAFE_CLOSING = false; - -try { - var riter = [7][ITERATOR](); - riter['return'] = function () { SAFE_CLOSING = true; }; - // eslint-disable-next-line no-throw-literal - Array.from(riter, function () { throw 2; }); -} catch (e) { /* empty */ } - -module.exports = function (exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function () { return { done: safe = true }; }; - arr[ITERATOR] = function () { return iter; }; - exec(arr); - } catch (e) { /* empty */ } - return safe; -}; - - -/***/ }), -/* 80 */ -/***/ (function(module, exports, __webpack_require__) { - -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = __webpack_require__(207); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; - - -/***/ }), -/* 81 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; - - -/***/ }), -/* 82 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var addToUnscopables = __webpack_require__(33); -var step = __webpack_require__(83); -var Iterators = __webpack_require__(36); -var toIObject = __webpack_require__(11); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = __webpack_require__(53)(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); - - -/***/ }), -/* 83 */ -/***/ (function(module, exports) { - -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; - - -/***/ }), -/* 84 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(16); -var invoke = __webpack_require__(69); -var html = __webpack_require__(67); -var cel = __webpack_require__(62); -var global = __webpack_require__(2); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); -}; -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!setTask || !clearTask) { - setTask = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - invoke(typeof fn == 'function' ? fn : Function(fn), args); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (__webpack_require__(21)(process) == 'process') { - defer = function (id) { - process.nextTick(ctx(run, id, 1)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(ctx(run, id, 1)); - }; - // Browsers with MessageChannel, includes WebWorkers - } else if (MessageChannel) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { - defer = function (id) { - global.postMessage(id + '', '*'); - }; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in cel('script')) { - defer = function (id) { - html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run.call(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(ctx(run, id, 1), 0); - }; - } -} -module.exports = { - set: setTask, - clear: clearTask -}; - - -/***/ }), -/* 85 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var macrotask = __webpack_require__(84).set; -var Observer = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var isNode = __webpack_require__(21)(process) == 'process'; - -module.exports = function () { - var head, last, notify; - - var flush = function () { - var parent, fn; - if (isNode && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (e) { - if (head) notify(); - else last = undefined; - throw e; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (isNode) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 - } else if (Observer && !(global.navigator && global.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(''); - new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - var promise = Promise.resolve(undefined); - notify = function () { - promise.then(flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } - - return function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; - }; -}; - - -/***/ }), -/* 86 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 25.4.1.5 NewPromiseCapability(C) -var aFunction = __webpack_require__(10); - -function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -} - -module.exports.f = function (C) { - return new PromiseCapability(C); -}; - - -/***/ }), -/* 87 */ -/***/ (function(module, exports, __webpack_require__) { - -// all object keys, includes non-enumerable and symbols -var gOPN = __webpack_require__(46); -var gOPS = __webpack_require__(51); -var anObject = __webpack_require__(1); -var Reflect = __webpack_require__(2).Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; - - -/***/ }), -/* 88 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var DESCRIPTORS = __webpack_require__(7); -var LIBRARY = __webpack_require__(30); -var $typed = __webpack_require__(58); -var hide = __webpack_require__(17); -var redefineAll = __webpack_require__(39); -var fails = __webpack_require__(4); -var anInstance = __webpack_require__(38); -var toInteger = __webpack_require__(22); -var toLength = __webpack_require__(6); -var toIndex = __webpack_require__(115); -var gOPN = __webpack_require__(46).f; -var dP = __webpack_require__(8).f; -var arrayFill = __webpack_require__(81); -var setToStringTag = __webpack_require__(42); -var ARRAY_BUFFER = 'ArrayBuffer'; -var DATA_VIEW = 'DataView'; -var PROTOTYPE = 'prototype'; -var WRONG_LENGTH = 'Wrong length!'; -var WRONG_INDEX = 'Wrong index!'; -var $ArrayBuffer = global[ARRAY_BUFFER]; -var $DataView = global[DATA_VIEW]; -var Math = global.Math; -var RangeError = global.RangeError; -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = global.Infinity; -var BaseBuffer = $ArrayBuffer; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; -var BUFFER = 'buffer'; -var BYTE_LENGTH = 'byteLength'; -var BYTE_OFFSET = 'byteOffset'; -var $BUFFER = DESCRIPTORS ? '_b' : BUFFER; -var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH; -var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET; - -// IEEE754 conversions based on https://github.com/feross/ieee754 -function packIEEE754(value, mLen, nBytes) { - var buffer = new Array(nBytes); - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0; - var i = 0; - var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; - var e, m, c; - value = abs(value); - // eslint-disable-next-line no-self-compare - if (value != value || value === Infinity) { - // eslint-disable-next-line no-self-compare - m = value != value ? 1 : 0; - e = eMax; - } else { - e = floor(log(value) / LN2); - if (value * (c = pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * pow(2, mLen); - e = e + eBias; - } else { - m = value * pow(2, eBias - 1) * pow(2, mLen); - e = 0; - } - } - for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8); - e = e << mLen | m; - eLen += mLen; - for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8); - buffer[--i] |= s * 128; - return buffer; -} -function unpackIEEE754(buffer, mLen, nBytes) { - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = eLen - 7; - var i = nBytes - 1; - var s = buffer[i--]; - var e = s & 127; - var m; - s >>= 7; - for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8); - m = e & (1 << -nBits) - 1; - e >>= -nBits; - nBits += mLen; - for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8); - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : s ? -Infinity : Infinity; - } else { - m = m + pow(2, mLen); - e = e - eBias; - } return (s ? -1 : 1) * m * pow(2, e - mLen); -} - -function unpackI32(bytes) { - return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0]; -} -function packI8(it) { - return [it & 0xff]; -} -function packI16(it) { - return [it & 0xff, it >> 8 & 0xff]; -} -function packI32(it) { - return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff]; -} -function packF64(it) { - return packIEEE754(it, 52, 8); -} -function packF32(it) { - return packIEEE754(it, 23, 4); -} - -function addGetter(C, key, internal) { - dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } }); -} - -function get(view, bytes, index, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = store.slice(start, start + bytes); - return isLittleEndian ? pack : pack.reverse(); -} -function set(view, bytes, index, conversion, value, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = conversion(+value); - for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1]; -} - -if (!$typed.ABV) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer, ARRAY_BUFFER); - var byteLength = toIndex(length); - this._b = arrayFill.call(new Array(byteLength), 0); - this[$LENGTH] = byteLength; - }; - - $DataView = function DataView(buffer, byteOffset, byteLength) { - anInstance(this, $DataView, DATA_VIEW); - anInstance(buffer, $ArrayBuffer, DATA_VIEW); - var bufferLength = buffer[$LENGTH]; - var offset = toInteger(byteOffset); - if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!'); - byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); - if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); - this[$BUFFER] = buffer; - this[$OFFSET] = offset; - this[$LENGTH] = byteLength; - }; - - if (DESCRIPTORS) { - addGetter($ArrayBuffer, BYTE_LENGTH, '_l'); - addGetter($DataView, BUFFER, '_b'); - addGetter($DataView, BYTE_LENGTH, '_l'); - addGetter($DataView, BYTE_OFFSET, '_o'); - } - - redefineAll($DataView[PROTOTYPE], { - getInt8: function getInt8(byteOffset) { - return get(this, 1, byteOffset)[0] << 24 >> 24; - }, - getUint8: function getUint8(byteOffset) { - return get(this, 1, byteOffset)[0]; - }, - getInt16: function getInt16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return (bytes[1] << 8 | bytes[0]) << 16 >> 16; - }, - getUint16: function getUint16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return bytes[1] << 8 | bytes[0]; - }, - getInt32: function getInt32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])); - }, - getUint32: function getUint32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0; - }, - getFloat32: function getFloat32(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4); - }, - getFloat64: function getFloat64(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8); - }, - setInt8: function setInt8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setUint8: function setUint8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setInt16: function setInt16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setUint16: function setUint16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setInt32: function setInt32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setUint32: function setUint32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packF32, value, arguments[2]); - }, - setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { - set(this, 8, byteOffset, packF64, value, arguments[2]); - } - }); -} else { - if (!fails(function () { - $ArrayBuffer(1); - }) || !fails(function () { - new $ArrayBuffer(-1); // eslint-disable-line no-new - }) || fails(function () { - new $ArrayBuffer(); // eslint-disable-line no-new - new $ArrayBuffer(1.5); // eslint-disable-line no-new - new $ArrayBuffer(NaN); // eslint-disable-line no-new - return $ArrayBuffer.name != ARRAY_BUFFER; - })) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer); - return new BaseBuffer(toIndex(length)); - }; - var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE]; - for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) { - if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]); - } - if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer; - } - // iOS Safari 7.x bug - var view = new $DataView(new $ArrayBuffer(2)); - var $setInt8 = $DataView[PROTOTYPE].setInt8; - view.setInt8(0, 2147483648); - view.setInt8(1, 2147483649); - if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], { - setInt8: function setInt8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - }, - setUint8: function setUint8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - } - }, true); -} -setToStringTag($ArrayBuffer, ARRAY_BUFFER); -setToStringTag($DataView, DATA_VIEW); -hide($DataView[PROTOTYPE], $typed.VIEW, true); -exports[ARRAY_BUFFER] = $ArrayBuffer; -exports[DATA_VIEW] = $DataView; - - -/***/ }), -/* 89 */ -/***/ (function(module, exports) { - -module.exports = function (regExp, replace) { - var replacer = replace === Object(replace) ? function (part) { - return replace[part]; - } : replace; - return function (it) { - return String(it).replace(regExp, replacer); - }; -}; - - -/***/ }), -/* 90 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = !__webpack_require__(7) && !__webpack_require__(4)(function () { - return Object.defineProperty(__webpack_require__(62)('div'), 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 91 */ -/***/ (function(module, exports, __webpack_require__) { - -exports.f = __webpack_require__(5); - - -/***/ }), -/* 92 */ -/***/ (function(module, exports, __webpack_require__) { - -var has = __webpack_require__(15); -var toIObject = __webpack_require__(11); -var arrayIndexOf = __webpack_require__(50)(false); -var IE_PROTO = __webpack_require__(65)('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; - - -/***/ }), -/* 93 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var anObject = __webpack_require__(1); -var getKeys = __webpack_require__(31); - -module.exports = __webpack_require__(7) ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; - - -/***/ }), -/* 94 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = __webpack_require__(11); -var gOPN = __webpack_require__(46).f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; - - -/***/ }), -/* 95 */ -/***/ (function(module, exports, __webpack_require__) { - -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = __webpack_require__(3); -var anObject = __webpack_require__(1); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = __webpack_require__(16)(Function.call, __webpack_require__(18).f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; - - -/***/ }), -/* 96 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var aFunction = __webpack_require__(10); -var isObject = __webpack_require__(3); -var invoke = __webpack_require__(69); -var arraySlice = [].slice; -var factories = {}; - -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); -}; - -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; -}; - - -/***/ }), -/* 97 */ -/***/ (function(module, exports, __webpack_require__) { - -var cof = __webpack_require__(21); -module.exports = function (it, msg) { - if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); - return +it; -}; - - -/***/ }), -/* 98 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var isObject = __webpack_require__(3); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; - - -/***/ }), -/* 99 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseFloat = __webpack_require__(2).parseFloat; -var $trim = __webpack_require__(47).trim; - -module.exports = 1 / $parseFloat(__webpack_require__(71) + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; - - -/***/ }), -/* 100 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseInt = __webpack_require__(2).parseInt; -var $trim = __webpack_require__(47).trim; -var ws = __webpack_require__(71); -var hex = /^[-+]?0[xX]/; - -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; - - -/***/ }), -/* 101 */ -/***/ (function(module, exports) { - -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; - - -/***/ }), -/* 102 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var sign = __webpack_require__(72); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; - - -/***/ }), -/* 103 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.8 IsRegExp(argument) -var isObject = __webpack_require__(3); -var cof = __webpack_require__(21); -var MATCH = __webpack_require__(5)('match'); -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); -}; - - -/***/ }), -/* 104 */ -/***/ (function(module, exports, __webpack_require__) { - -// call something on iterator step with safe closing on error -var anObject = __webpack_require__(1); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; - } -}; - - -/***/ }), -/* 105 */ -/***/ (function(module, exports, __webpack_require__) { - -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(44); -var toLength = __webpack_require__(6); - -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; - - -/***/ }), -/* 106 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); - -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; - - -/***/ }), -/* 107 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } -}; - - -/***/ }), -/* 108 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var newPromiseCapability = __webpack_require__(86); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; - - -/***/ }), -/* 109 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(110); -var validate = __webpack_require__(40); -var MAP = 'Map'; - -// 23.1 Map Objects -module.exports = __webpack_require__(57)(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); - - -/***/ }), -/* 110 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var dP = __webpack_require__(8).f; -var create = __webpack_require__(32); -var redefineAll = __webpack_require__(39); -var ctx = __webpack_require__(16); -var anInstance = __webpack_require__(38); -var forOf = __webpack_require__(34); -var $iterDefine = __webpack_require__(53); -var step = __webpack_require__(83); -var setSpecies = __webpack_require__(43); -var DESCRIPTORS = __webpack_require__(7); -var fastKey = __webpack_require__(29).fastKey; -var validate = __webpack_require__(40); -var SIZE = DESCRIPTORS ? '_s' : 'size'; - -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); - } -}; - - -/***/ }), -/* 111 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(110); -var validate = __webpack_require__(40); -var SET = 'Set'; - -// 23.2 Set Objects -module.exports = __webpack_require__(57)(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); - } -}, strong); - - -/***/ }), -/* 112 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var each = __webpack_require__(20)(0); -var redefine = __webpack_require__(63); -var meta = __webpack_require__(29); -var assign = __webpack_require__(68); -var weak = __webpack_require__(113); -var isObject = __webpack_require__(3); -var validate = __webpack_require__(40); -var NATIVE_WEAK_MAP = __webpack_require__(40); -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var InternalMap; - -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; - -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = __webpack_require__(57)(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); -} - - -/***/ }), -/* 113 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var redefineAll = __webpack_require__(39); -var getWeak = __webpack_require__(29).getWeak; -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var anInstance = __webpack_require__(38); -var forOf = __webpack_require__(34); -var createArrayMethod = __webpack_require__(20); -var $has = __webpack_require__(15); -var validate = __webpack_require__(40); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); - } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; - - -/***/ }), -/* 114 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var fails = __webpack_require__(4); -var getTime = Date.prototype.getTime; -var $toISOString = Date.prototype.toISOString; - -var lz = function (num) { - return num > 9 ? num : '0' + num; -}; - -// PhantomJS / old WebKit has a broken implementations -module.exports = (fails(function () { - return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - $toISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var d = this; - var y = d.getUTCFullYear(); - var m = d.getUTCMilliseconds(); - var s = y < 0 ? '-' : y > 9999 ? '+' : ''; - return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) + - '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) + - 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) + - ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z'; -} : $toISOString; - - -/***/ }), -/* 115 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = __webpack_require__(22); -var toLength = __webpack_require__(6); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; - - -/***/ }), -/* 116 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = __webpack_require__(52); -var isObject = __webpack_require__(3); -var toLength = __webpack_require__(6); -var ctx = __webpack_require__(16); -var IS_CONCAT_SPREADABLE = __webpack_require__(5)('isConcatSpreadable'); - -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} - -module.exports = flattenIntoArray; - - -/***/ }), -/* 117 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = __webpack_require__(6); -var repeat = __webpack_require__(70); -var defined = __webpack_require__(24); - -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; - - -/***/ }), -/* 118 */ -/***/ (function(module, exports, __webpack_require__) { - -var DESCRIPTORS = __webpack_require__(7); -var getKeys = __webpack_require__(31); -var toIObject = __webpack_require__(11); -var isEnum = __webpack_require__(45).f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || isEnum.call(O, key)) { - result.push(isEntries ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; - - -/***/ }), -/* 119 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = __webpack_require__(37); -var from = __webpack_require__(120); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; -}; - - -/***/ }), -/* 120 */ -/***/ (function(module, exports, __webpack_require__) { - -var forOf = __webpack_require__(34); - -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; - - -/***/ }), -/* 121 */ -/***/ (function(module, exports) { - -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; - - -/***/ }), -/* 122 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(37); -var ITERATOR = __webpack_require__(5)('iterator'); -var Iterators = __webpack_require__(36); -module.exports = __webpack_require__(12).isIterable = function (it) { - var O = Object(it); - return O[ITERATOR] !== undefined - || '@@iterator' in O - // eslint-disable-next-line no-prototype-builtins - || Iterators.hasOwnProperty(classof(O)); -}; - - -/***/ }), -/* 123 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var path = __webpack_require__(124); -var invoke = __webpack_require__(69); -var aFunction = __webpack_require__(10); -module.exports = function (/* ...pargs */) { - var fn = aFunction(this); - var length = arguments.length; - var pargs = new Array(length); - var i = 0; - var _ = path._; - var holder = false; - while (length > i) if ((pargs[i] = arguments[i++]) === _) holder = true; - return function (/* ...args */) { - var that = this; - var aLen = arguments.length; - var j = 0; - var k = 0; - var args; - if (!holder && !aLen) return invoke(fn, pargs, that); - args = pargs.slice(); - if (holder) for (;length > j; j++) if (args[j] === _) args[j] = arguments[k++]; - while (aLen > k) args.push(arguments[k++]); - return invoke(fn, args, that); - }; -}; - - -/***/ }), -/* 124 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = __webpack_require__(12); - - -/***/ }), -/* 125 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var gOPD = __webpack_require__(18); -var ownKeys = __webpack_require__(87); -var toIObject = __webpack_require__(11); - -module.exports = function define(target, mixin) { - var keys = ownKeys(toIObject(mixin)); - var length = keys.length; - var i = 0; - var key; - while (length > i) dP.f(target, key = keys[i++], gOPD.f(mixin, key)); - return target; -}; - - -/***/ }), -/* 126 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(127); -__webpack_require__(129); -__webpack_require__(130); -__webpack_require__(131); -__webpack_require__(132); -__webpack_require__(133); -__webpack_require__(134); -__webpack_require__(135); -__webpack_require__(136); -__webpack_require__(137); -__webpack_require__(138); -__webpack_require__(139); -__webpack_require__(140); -__webpack_require__(141); -__webpack_require__(142); -__webpack_require__(143); -__webpack_require__(145); -__webpack_require__(146); -__webpack_require__(147); -__webpack_require__(148); -__webpack_require__(149); -__webpack_require__(150); -__webpack_require__(151); -__webpack_require__(152); -__webpack_require__(153); -__webpack_require__(154); -__webpack_require__(155); -__webpack_require__(156); -__webpack_require__(157); -__webpack_require__(158); -__webpack_require__(159); -__webpack_require__(160); -__webpack_require__(161); -__webpack_require__(162); -__webpack_require__(163); -__webpack_require__(164); -__webpack_require__(165); -__webpack_require__(166); -__webpack_require__(167); -__webpack_require__(168); -__webpack_require__(169); -__webpack_require__(170); -__webpack_require__(171); -__webpack_require__(172); -__webpack_require__(173); -__webpack_require__(174); -__webpack_require__(175); -__webpack_require__(176); -__webpack_require__(177); -__webpack_require__(178); -__webpack_require__(179); -__webpack_require__(180); -__webpack_require__(181); -__webpack_require__(182); -__webpack_require__(183); -__webpack_require__(184); -__webpack_require__(185); -__webpack_require__(186); -__webpack_require__(187); -__webpack_require__(188); -__webpack_require__(189); -__webpack_require__(190); -__webpack_require__(191); -__webpack_require__(192); -__webpack_require__(193); -__webpack_require__(194); -__webpack_require__(195); -__webpack_require__(196); -__webpack_require__(197); -__webpack_require__(198); -__webpack_require__(199); -__webpack_require__(200); -__webpack_require__(201); -__webpack_require__(202); -__webpack_require__(203); -__webpack_require__(204); -__webpack_require__(205); -__webpack_require__(206); -__webpack_require__(208); -__webpack_require__(209); -__webpack_require__(210); -__webpack_require__(211); -__webpack_require__(212); -__webpack_require__(213); -__webpack_require__(214); -__webpack_require__(215); -__webpack_require__(216); -__webpack_require__(217); -__webpack_require__(218); -__webpack_require__(219); -__webpack_require__(82); -__webpack_require__(220); -__webpack_require__(221); -__webpack_require__(222); -__webpack_require__(109); -__webpack_require__(111); -__webpack_require__(112); -__webpack_require__(223); -__webpack_require__(224); -__webpack_require__(225); -__webpack_require__(226); -__webpack_require__(227); -__webpack_require__(228); -__webpack_require__(229); -__webpack_require__(230); -__webpack_require__(231); -__webpack_require__(232); -__webpack_require__(233); -__webpack_require__(234); -__webpack_require__(235); -__webpack_require__(236); -__webpack_require__(237); -__webpack_require__(238); -__webpack_require__(239); -__webpack_require__(240); -__webpack_require__(241); -__webpack_require__(242); -__webpack_require__(243); -__webpack_require__(244); -__webpack_require__(245); -__webpack_require__(246); -__webpack_require__(247); -__webpack_require__(248); -__webpack_require__(249); -__webpack_require__(250); -__webpack_require__(251); -__webpack_require__(252); -__webpack_require__(253); -__webpack_require__(254); -__webpack_require__(255); -__webpack_require__(256); -__webpack_require__(257); -__webpack_require__(258); -__webpack_require__(259); -__webpack_require__(260); -__webpack_require__(262); -__webpack_require__(263); -__webpack_require__(264); -__webpack_require__(265); -__webpack_require__(266); -__webpack_require__(267); -__webpack_require__(268); -__webpack_require__(269); -__webpack_require__(270); -__webpack_require__(271); -__webpack_require__(272); -__webpack_require__(273); -__webpack_require__(274); -__webpack_require__(275); -__webpack_require__(276); -__webpack_require__(277); -__webpack_require__(278); -__webpack_require__(279); -__webpack_require__(280); -__webpack_require__(281); -__webpack_require__(282); -__webpack_require__(283); -__webpack_require__(284); -__webpack_require__(285); -__webpack_require__(286); -__webpack_require__(287); -__webpack_require__(288); -__webpack_require__(289); -__webpack_require__(290); -__webpack_require__(291); -__webpack_require__(292); -__webpack_require__(293); -__webpack_require__(294); -__webpack_require__(295); -__webpack_require__(296); -__webpack_require__(297); -__webpack_require__(298); -__webpack_require__(299); -__webpack_require__(300); -__webpack_require__(301); -__webpack_require__(302); -__webpack_require__(303); -__webpack_require__(304); -__webpack_require__(305); -__webpack_require__(306); -__webpack_require__(307); -__webpack_require__(308); -__webpack_require__(309); -__webpack_require__(310); -__webpack_require__(311); -__webpack_require__(312); -__webpack_require__(48); -__webpack_require__(314); -__webpack_require__(122); -__webpack_require__(315); -__webpack_require__(316); -__webpack_require__(317); -__webpack_require__(318); -__webpack_require__(319); -__webpack_require__(320); -__webpack_require__(321); -__webpack_require__(322); -__webpack_require__(323); -module.exports = __webpack_require__(324); - - -/***/ }), -/* 127 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// ECMAScript 6 symbols shim -var global = __webpack_require__(2); -var has = __webpack_require__(15); -var DESCRIPTORS = __webpack_require__(7); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(63); -var META = __webpack_require__(29).KEY; -var $fails = __webpack_require__(4); -var shared = __webpack_require__(49); -var setToStringTag = __webpack_require__(42); -var uid = __webpack_require__(41); -var wks = __webpack_require__(5); -var wksExt = __webpack_require__(91); -var wksDefine = __webpack_require__(64); -var enumKeys = __webpack_require__(128); -var isArray = __webpack_require__(52); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var toObject = __webpack_require__(9); -var toIObject = __webpack_require__(11); -var toPrimitive = __webpack_require__(27); -var createDesc = __webpack_require__(28); -var _create = __webpack_require__(32); -var gOPNExt = __webpack_require__(94); -var $GOPD = __webpack_require__(18); -var $GOPS = __webpack_require__(51); -var $DP = __webpack_require__(8); -var $keys = __webpack_require__(31); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - __webpack_require__(46).f = gOPNExt.f = $getOwnPropertyNames; - __webpack_require__(45).f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !__webpack_require__(30)) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); }); - -$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - } -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(17)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); - - -/***/ }), -/* 128 */ -/***/ (function(module, exports, __webpack_require__) { - -// all enumerable object keys, includes symbols -var getKeys = __webpack_require__(31); -var gOPS = __webpack_require__(51); -var pIE = __webpack_require__(45); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; - - -/***/ }), -/* 129 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) -$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperty: __webpack_require__(8).f }); - - -/***/ }), -/* 130 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties) -$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperties: __webpack_require__(93) }); - - -/***/ }), -/* 131 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) -var toIObject = __webpack_require__(11); -var $getOwnPropertyDescriptor = __webpack_require__(18).f; - -__webpack_require__(23)('getOwnPropertyDescriptor', function () { - return function getOwnPropertyDescriptor(it, key) { - return $getOwnPropertyDescriptor(toIObject(it), key); - }; -}); - - -/***/ }), -/* 132 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -$export($export.S, 'Object', { create: __webpack_require__(32) }); - - -/***/ }), -/* 133 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 Object.getPrototypeOf(O) -var toObject = __webpack_require__(9); -var $getPrototypeOf = __webpack_require__(13); - -__webpack_require__(23)('getPrototypeOf', function () { - return function getPrototypeOf(it) { - return $getPrototypeOf(toObject(it)); - }; -}); - - -/***/ }), -/* 134 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 Object.keys(O) -var toObject = __webpack_require__(9); -var $keys = __webpack_require__(31); - -__webpack_require__(23)('keys', function () { - return function keys(it) { - return $keys(toObject(it)); - }; -}); - - -/***/ }), -/* 135 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 Object.getOwnPropertyNames(O) -__webpack_require__(23)('getOwnPropertyNames', function () { - return __webpack_require__(94).f; -}); - - -/***/ }), -/* 136 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.5 Object.freeze(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(29).onFreeze; - -__webpack_require__(23)('freeze', function ($freeze) { - return function freeze(it) { - return $freeze && isObject(it) ? $freeze(meta(it)) : it; - }; -}); - - -/***/ }), -/* 137 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.17 Object.seal(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(29).onFreeze; - -__webpack_require__(23)('seal', function ($seal) { - return function seal(it) { - return $seal && isObject(it) ? $seal(meta(it)) : it; - }; -}); - - -/***/ }), -/* 138 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.15 Object.preventExtensions(O) -var isObject = __webpack_require__(3); -var meta = __webpack_require__(29).onFreeze; - -__webpack_require__(23)('preventExtensions', function ($preventExtensions) { - return function preventExtensions(it) { - return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it; - }; -}); - - -/***/ }), -/* 139 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.12 Object.isFrozen(O) -var isObject = __webpack_require__(3); - -__webpack_require__(23)('isFrozen', function ($isFrozen) { - return function isFrozen(it) { - return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true; - }; -}); - - -/***/ }), -/* 140 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.13 Object.isSealed(O) -var isObject = __webpack_require__(3); - -__webpack_require__(23)('isSealed', function ($isSealed) { - return function isSealed(it) { - return isObject(it) ? $isSealed ? $isSealed(it) : false : true; - }; -}); - - -/***/ }), -/* 141 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.11 Object.isExtensible(O) -var isObject = __webpack_require__(3); - -__webpack_require__(23)('isExtensible', function ($isExtensible) { - return function isExtensible(it) { - return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false; - }; -}); - - -/***/ }), -/* 142 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.1 Object.assign(target, source) -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { assign: __webpack_require__(68) }); - - -/***/ }), -/* 143 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.10 Object.is(value1, value2) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { is: __webpack_require__(144) }); - - -/***/ }), -/* 144 */ -/***/ (function(module, exports) { - -// 7.2.9 SameValue(x, y) -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; - - -/***/ }), -/* 145 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.19 Object.setPrototypeOf(O, proto) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(95).set }); - - -/***/ }), -/* 146 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...) -var $export = __webpack_require__(0); - -$export($export.P, 'Function', { bind: __webpack_require__(96) }); - - -/***/ }), -/* 147 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var isObject = __webpack_require__(3); -var getPrototypeOf = __webpack_require__(13); -var HAS_INSTANCE = __webpack_require__(5)('hasInstance'); -var FunctionProto = Function.prototype; -// 19.2.3.6 Function.prototype[@@hasInstance](V) -if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(8).f(FunctionProto, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; -} }); - - -/***/ }), -/* 148 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toInteger = __webpack_require__(22); -var aNumberValue = __webpack_require__(97); -var repeat = __webpack_require__(70); -var $toFixed = 1.0.toFixed; -var floor = Math.floor; -var data = [0, 0, 0, 0, 0, 0]; -var ERROR = 'Number.toFixed: incorrect invocation!'; -var ZERO = '0'; - -var multiply = function (n, c) { - var i = -1; - var c2 = c; - while (++i < 6) { - c2 += n * data[i]; - data[i] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } -}; -var divide = function (n) { - var i = 6; - var c = 0; - while (--i >= 0) { - c += data[i]; - data[i] = floor(c / n); - c = (c % n) * 1e7; - } -}; -var numToString = function () { - var i = 6; - var s = ''; - while (--i >= 0) { - if (s !== '' || i === 0 || data[i] !== 0) { - var t = String(data[i]); - s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t; - } - } return s; -}; -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -$export($export.P + $export.F * (!!$toFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !__webpack_require__(4)(function () { - // V8 ~ Android 4.3- - $toFixed.call({}); -})), 'Number', { - toFixed: function toFixed(fractionDigits) { - var x = aNumberValue(this, ERROR); - var f = toInteger(fractionDigits); - var s = ''; - var m = ZERO; - var e, z, j, k; - if (f < 0 || f > 20) throw RangeError(ERROR); - // eslint-disable-next-line no-self-compare - if (x != x) return 'NaN'; - if (x <= -1e21 || x >= 1e21) return String(x); - if (x < 0) { - s = '-'; - x = -x; - } - if (x > 1e-21) { - e = log(x * pow(2, 69, 1)) - 69; - z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = f; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - m = numToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - m = numToString() + repeat.call(ZERO, f); - } - } - if (f > 0) { - k = m.length; - m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); - } else { - m = s + m; - } return m; - } -}); - - -/***/ }), -/* 149 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $fails = __webpack_require__(4); -var aNumberValue = __webpack_require__(97); -var $toPrecision = 1.0.toPrecision; - -$export($export.P + $export.F * ($fails(function () { - // IE7- - return $toPrecision.call(1, undefined) !== '1'; -}) || !$fails(function () { - // V8 ~ Android 4.3- - $toPrecision.call({}); -})), 'Number', { - toPrecision: function toPrecision(precision) { - var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); - return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); - } -}); - - -/***/ }), -/* 150 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.1 Number.EPSILON -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) }); - - -/***/ }), -/* 151 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.2 Number.isFinite(number) -var $export = __webpack_require__(0); -var _isFinite = __webpack_require__(2).isFinite; - -$export($export.S, 'Number', { - isFinite: function isFinite(it) { - return typeof it == 'number' && _isFinite(it); - } -}); - - -/***/ }), -/* 152 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { isInteger: __webpack_require__(98) }); - - -/***/ }), -/* 153 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.4 Number.isNaN(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); - - -/***/ }), -/* 154 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.5 Number.isSafeInteger(number) -var $export = __webpack_require__(0); -var isInteger = __webpack_require__(98); -var abs = Math.abs; - -$export($export.S, 'Number', { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1fffffffffffff; - } -}); - - -/***/ }), -/* 155 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.6 Number.MAX_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff }); - - -/***/ }), -/* 156 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.10 Number.MIN_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff }); - - -/***/ }), -/* 157 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(99); -// 20.1.2.12 Number.parseFloat(string) -$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat }); - - -/***/ }), -/* 158 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(100); -// 20.1.2.13 Number.parseInt(string, radix) -$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt }); - - -/***/ }), -/* 159 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(100); -// 18.2.5 parseInt(string, radix) -$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt }); - - -/***/ }), -/* 160 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(99); -// 18.2.4 parseFloat(string) -$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat }); - - -/***/ }), -/* 161 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.3 Math.acosh(x) -var $export = __webpack_require__(0); -var log1p = __webpack_require__(101); -var sqrt = Math.sqrt; -var $acosh = Math.acosh; - -$export($export.S + $export.F * !($acosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - && Math.floor($acosh(Number.MAX_VALUE)) == 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - && $acosh(Infinity) == Infinity -), 'Math', { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? Math.log(x) + Math.LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); - - -/***/ }), -/* 162 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.5 Math.asinh(x) -var $export = __webpack_require__(0); -var $asinh = Math.asinh; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1)); -} - -// Tor Browser bug: Math.asinh(0) -> -0 -$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh }); - - -/***/ }), -/* 163 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.7 Math.atanh(x) -var $export = __webpack_require__(0); -var $atanh = Math.atanh; - -// Tor Browser bug: Math.atanh(-0) -> 0 -$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2; - } -}); - - -/***/ }), -/* 164 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.9 Math.cbrt(x) -var $export = __webpack_require__(0); -var sign = __webpack_require__(72); - -$export($export.S, 'Math', { - cbrt: function cbrt(x) { - return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3); - } -}); - - -/***/ }), -/* 165 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.11 Math.clz32(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32; - } -}); - - -/***/ }), -/* 166 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.12 Math.cosh(x) -var $export = __webpack_require__(0); -var exp = Math.exp; - -$export($export.S, 'Math', { - cosh: function cosh(x) { - return (exp(x = +x) + exp(-x)) / 2; - } -}); - - -/***/ }), -/* 167 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.14 Math.expm1(x) -var $export = __webpack_require__(0); -var $expm1 = __webpack_require__(73); - -$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 }); - - -/***/ }), -/* 168 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { fround: __webpack_require__(102) }); - - -/***/ }), -/* 169 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.17 Math.hypot([value1[, value2[, … ]]]) -var $export = __webpack_require__(0); -var abs = Math.abs; - -$export($export.S, 'Math', { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * Math.sqrt(sum); - } -}); - - -/***/ }), -/* 170 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.18 Math.imul(x, y) -var $export = __webpack_require__(0); -var $imul = Math.imul; - -// some WebKit versions fails with big numbers, some has wrong arity -$export($export.S + $export.F * __webpack_require__(4)(function () { - return $imul(0xffffffff, 5) != -5 || $imul.length != 2; -}), 'Math', { - imul: function imul(x, y) { - var UINT16 = 0xffff; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); - - -/***/ }), -/* 171 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.21 Math.log10(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log10: function log10(x) { - return Math.log(x) * Math.LOG10E; - } -}); - - -/***/ }), -/* 172 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.20 Math.log1p(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { log1p: __webpack_require__(101) }); - - -/***/ }), -/* 173 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.22 Math.log2(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log2: function log2(x) { - return Math.log(x) / Math.LN2; - } -}); - - -/***/ }), -/* 174 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.28 Math.sign(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { sign: __webpack_require__(72) }); - - -/***/ }), -/* 175 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.30 Math.sinh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(73); -var exp = Math.exp; - -// V8 near Chromium 38 has a problem with very small numbers -$export($export.S + $export.F * __webpack_require__(4)(function () { - return !Math.sinh(-2e-17) != -2e-17; -}), 'Math', { - sinh: function sinh(x) { - return Math.abs(x = +x) < 1 - ? (expm1(x) - expm1(-x)) / 2 - : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2); - } -}); - - -/***/ }), -/* 176 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.33 Math.tanh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(73); -var exp = Math.exp; - -$export($export.S, 'Math', { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); - - -/***/ }), -/* 177 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.34 Math.trunc(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - trunc: function trunc(it) { - return (it > 0 ? Math.floor : Math.ceil)(it); - } -}); - - -/***/ }), -/* 178 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toAbsoluteIndex = __webpack_require__(35); -var fromCharCode = String.fromCharCode; -var $fromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var res = []; - var aLen = arguments.length; - var i = 0; - var code; - while (aLen > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point'); - res.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) - ); - } return res.join(''); - } -}); - - -/***/ }), -/* 179 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var toLength = __webpack_require__(6); - -$export($export.S, 'String', { - // 21.1.2.4 String.raw(callSite, ...substitutions) - raw: function raw(callSite) { - var tpl = toIObject(callSite.raw); - var len = toLength(tpl.length); - var aLen = arguments.length; - var res = []; - var i = 0; - while (len > i) { - res.push(String(tpl[i++])); - if (i < aLen) res.push(String(arguments[i])); - } return res.join(''); - } -}); - - -/***/ }), -/* 180 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.1.3.25 String.prototype.trim() -__webpack_require__(47)('trim', function ($trim) { - return function trim() { - return $trim(this, 3); - }; -}); - - -/***/ }), -/* 181 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $at = __webpack_require__(74)(false); -$export($export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) - codePointAt: function codePointAt(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 182 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(6); -var context = __webpack_require__(75); -var ENDS_WITH = 'endsWith'; -var $endsWith = ''[ENDS_WITH]; - -$export($export.P + $export.F * __webpack_require__(76)(ENDS_WITH), 'String', { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = context(this, searchString, ENDS_WITH); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len); - var search = String(searchString); - return $endsWith - ? $endsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); - - -/***/ }), -/* 183 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.7 String.prototype.includes(searchString, position = 0) - -var $export = __webpack_require__(0); -var context = __webpack_require__(75); -var INCLUDES = 'includes'; - -$export($export.P + $export.F * __webpack_require__(76)(INCLUDES), 'String', { - includes: function includes(searchString /* , position = 0 */) { - return !!~context(this, searchString, INCLUDES) - .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); - } -}); - - -/***/ }), -/* 184 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.P, 'String', { - // 21.1.3.13 String.prototype.repeat(count) - repeat: __webpack_require__(70) -}); - - -/***/ }), -/* 185 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.18 String.prototype.startsWith(searchString [, position ]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(6); -var context = __webpack_require__(75); -var STARTS_WITH = 'startsWith'; -var $startsWith = ''[STARTS_WITH]; - -$export($export.P + $export.F * __webpack_require__(76)(STARTS_WITH), 'String', { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = context(this, searchString, STARTS_WITH); - var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return $startsWith - ? $startsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); - - -/***/ }), -/* 186 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $at = __webpack_require__(74)(true); - -// 21.1.3.27 String.prototype[@@iterator]() -__webpack_require__(53)(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); - - -/***/ }), -/* 187 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.2 String.prototype.anchor(name) -__webpack_require__(14)('anchor', function (createHTML) { - return function anchor(name) { - return createHTML(this, 'a', 'name', name); - }; -}); - - -/***/ }), -/* 188 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.3 String.prototype.big() -__webpack_require__(14)('big', function (createHTML) { - return function big() { - return createHTML(this, 'big', '', ''); - }; -}); - - -/***/ }), -/* 189 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.4 String.prototype.blink() -__webpack_require__(14)('blink', function (createHTML) { - return function blink() { - return createHTML(this, 'blink', '', ''); - }; -}); - - -/***/ }), -/* 190 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.5 String.prototype.bold() -__webpack_require__(14)('bold', function (createHTML) { - return function bold() { - return createHTML(this, 'b', '', ''); - }; -}); - - -/***/ }), -/* 191 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.6 String.prototype.fixed() -__webpack_require__(14)('fixed', function (createHTML) { - return function fixed() { - return createHTML(this, 'tt', '', ''); - }; -}); - - -/***/ }), -/* 192 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.7 String.prototype.fontcolor(color) -__webpack_require__(14)('fontcolor', function (createHTML) { - return function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - }; -}); - - -/***/ }), -/* 193 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.8 String.prototype.fontsize(size) -__webpack_require__(14)('fontsize', function (createHTML) { - return function fontsize(size) { - return createHTML(this, 'font', 'size', size); - }; -}); - - -/***/ }), -/* 194 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.9 String.prototype.italics() -__webpack_require__(14)('italics', function (createHTML) { - return function italics() { - return createHTML(this, 'i', '', ''); - }; -}); - - -/***/ }), -/* 195 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.10 String.prototype.link(url) -__webpack_require__(14)('link', function (createHTML) { - return function link(url) { - return createHTML(this, 'a', 'href', url); - }; -}); - - -/***/ }), -/* 196 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.11 String.prototype.small() -__webpack_require__(14)('small', function (createHTML) { - return function small() { - return createHTML(this, 'small', '', ''); - }; -}); - - -/***/ }), -/* 197 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.12 String.prototype.strike() -__webpack_require__(14)('strike', function (createHTML) { - return function strike() { - return createHTML(this, 'strike', '', ''); - }; -}); - - -/***/ }), -/* 198 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.13 String.prototype.sub() -__webpack_require__(14)('sub', function (createHTML) { - return function sub() { - return createHTML(this, 'sub', '', ''); - }; -}); - - -/***/ }), -/* 199 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.14 String.prototype.sup() -__webpack_require__(14)('sup', function (createHTML) { - return function sup() { - return createHTML(this, 'sup', '', ''); - }; -}); - - -/***/ }), -/* 200 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.2.2 / 15.4.3.2 Array.isArray(arg) -var $export = __webpack_require__(0); - -$export($export.S, 'Array', { isArray: __webpack_require__(52) }); - - -/***/ }), -/* 201 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var ctx = __webpack_require__(16); -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var call = __webpack_require__(104); -var isArrayIter = __webpack_require__(77); -var toLength = __webpack_require__(6); -var createProperty = __webpack_require__(78); -var getIterFn = __webpack_require__(48); - -$export($export.S + $export.F * !__webpack_require__(79)(function (iter) { Array.from(iter); }), 'Array', { - // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined) - from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var index = 0; - var iterFn = getIterFn(O); - var length, result, step, iterator; - if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2); - // if object isn't iterable or it's array with default iterator - use simple case - if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) { - for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) { - createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value); - } - } else { - length = toLength(O.length); - for (result = new C(length); length > index; index++) { - createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); - } - } - result.length = index; - return result; - } -}); - - -/***/ }), -/* 202 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var createProperty = __webpack_require__(78); - -// WebKit Array.of isn't generic -$export($export.S + $export.F * __webpack_require__(4)(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}), 'Array', { - // 22.1.2.3 Array.of( ...items) - of: function of(/* ...args */) { - var index = 0; - var aLen = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(aLen); - while (aLen > index) createProperty(result, index, arguments[index++]); - result.length = aLen; - return result; - } -}); - - -/***/ }), -/* 203 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.13 Array.prototype.join(separator) -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var arrayJoin = [].join; - -// fallback for not array-like strings -$export($export.P + $export.F * (__webpack_require__(44) != Object || !__webpack_require__(19)(arrayJoin)), 'Array', { - join: function join(separator) { - return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator); - } -}); - - -/***/ }), -/* 204 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var html = __webpack_require__(67); -var cof = __webpack_require__(21); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -var arraySlice = [].slice; - -// fallback for not array-like ES3 strings and DOM objects -$export($export.P + $export.F * __webpack_require__(4)(function () { - if (html) arraySlice.call(html); -}), 'Array', { - slice: function slice(begin, end) { - var len = toLength(this.length); - var klass = cof(this); - end = end === undefined ? len : end; - if (klass == 'Array') return arraySlice.call(this, begin, end); - var start = toAbsoluteIndex(begin, len); - var upTo = toAbsoluteIndex(end, len); - var size = toLength(upTo - start); - var cloned = new Array(size); - var i = 0; - for (; i < size; i++) cloned[i] = klass == 'String' - ? this.charAt(start + i) - : this[start + i]; - return cloned; - } -}); - - -/***/ }), -/* 205 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var fails = __webpack_require__(4); -var $sort = [].sort; -var test = [1, 2, 3]; - -$export($export.P + $export.F * (fails(function () { - // IE8- - test.sort(undefined); -}) || !fails(function () { - // V8 bug - test.sort(null); - // Old WebKit -}) || !__webpack_require__(19)($sort)), 'Array', { - // 22.1.3.25 Array.prototype.sort(comparefn) - sort: function sort(comparefn) { - return comparefn === undefined - ? $sort.call(toObject(this)) - : $sort.call(toObject(this), aFunction(comparefn)); - } -}); - - -/***/ }), -/* 206 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $forEach = __webpack_require__(20)(0); -var STRICT = __webpack_require__(19)([].forEach, true); - -$export($export.P + $export.F * !STRICT, 'Array', { - // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) - forEach: function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 207 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(3); -var isArray = __webpack_require__(52); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (original) { - var C; - if (isArray(original)) { - C = original.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return C === undefined ? Array : C; -}; - - -/***/ }), -/* 208 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $map = __webpack_require__(20)(1); - -$export($export.P + $export.F * !__webpack_require__(19)([].map, true), 'Array', { - // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg]) - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 209 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $filter = __webpack_require__(20)(2); - -$export($export.P + $export.F * !__webpack_require__(19)([].filter, true), 'Array', { - // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg]) - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 210 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $some = __webpack_require__(20)(3); - -$export($export.P + $export.F * !__webpack_require__(19)([].some, true), 'Array', { - // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg]) - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 211 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $every = __webpack_require__(20)(4); - -$export($export.P + $export.F * !__webpack_require__(19)([].every, true), 'Array', { - // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg]) - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 212 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(105); - -$export($export.P + $export.F * !__webpack_require__(19)([].reduce, true), 'Array', { - // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], false); - } -}); - - -/***/ }), -/* 213 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(105); - -$export($export.P + $export.F * !__webpack_require__(19)([].reduceRight, true), 'Array', { - // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue]) - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], true); - } -}); - - -/***/ }), -/* 214 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $indexOf = __webpack_require__(50)(false); -var $native = [].indexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(19)($native)), 'Array', { - // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? $native.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments[1]); - } -}); - - -/***/ }), -/* 215 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(11); -var toInteger = __webpack_require__(22); -var toLength = __webpack_require__(6); -var $native = [].lastIndexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(19)($native)), 'Array', { - // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex]) - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0; - var O = toIObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; - return -1; - } -}); - - -/***/ }), -/* 216 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { copyWithin: __webpack_require__(106) }); - -__webpack_require__(33)('copyWithin'); - - -/***/ }), -/* 217 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { fill: __webpack_require__(81) }); - -__webpack_require__(33)('fill'); - - -/***/ }), -/* 218 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(20)(5); -var KEY = 'find'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(33)(KEY); - - -/***/ }), -/* 219 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(20)(6); -var KEY = 'findIndex'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(33)(KEY); - - -/***/ }), -/* 220 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(43)('Array'); - - -/***/ }), -/* 221 */ -/***/ (function(module, exports) { - -// empty - - -/***/ }), -/* 222 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(30); -var global = __webpack_require__(2); -var ctx = __webpack_require__(16); -var classof = __webpack_require__(37); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(3); -var aFunction = __webpack_require__(10); -var anInstance = __webpack_require__(38); -var forOf = __webpack_require__(34); -var speciesConstructor = __webpack_require__(55); -var task = __webpack_require__(84).set; -var microtask = __webpack_require__(85)(); -var newPromiseCapabilityModule = __webpack_require__(86); -var perform = __webpack_require__(107); -var userAgent = __webpack_require__(56); -var promiseResolve = __webpack_require__(108); -var PROMISE = 'Promise'; -var TypeError = global.TypeError; -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8 || ''; -var $Promise = global[PROMISE]; -var isNode = classof(process) == 'process'; -var empty = function () { /* empty */ }; -var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; -var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - -var USE_NATIVE = !!function () { - try { - // correct subclassing with @@species support - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[__webpack_require__(5)('species')] = function (exec) { - exec(empty, empty); - }; - // unhandled rejections tracking support, NodeJS Promise without it fails @@species test - return (isNode || typeof PromiseRejectionEvent == 'function') - && promise.then(empty) instanceof FakePromise - // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // we can't detect it synchronously, so just check versions - && v8.indexOf('6.6') !== 0 - && userAgent.indexOf('Chrome/66') === -1; - } catch (e) { /* empty */ } -}(); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; -var notify = function (promise, isReject) { - if (promise._n) return; - promise._n = true; - var chain = promise._c; - microtask(function () { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function (reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) onHandleUnhandled(promise); - promise._h = 1; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // may throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (e) { - if (domain && !exited) domain.exit(); - reject(e); - } - }; - while (chain.length > i) run(chain[i++]); // variable length - can't use forEach - promise._c = []; - promise._n = false; - if (isReject && !promise._h) onUnhandled(promise); - }); -}; -var onUnhandled = function (promise) { - task.call(global, function () { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console; - if (unhandled) { - result = perform(function () { - if (isNode) { - process.emit('unhandledRejection', value, promise); - } else if (handler = global.onunhandledrejection) { - handler({ promise: promise, reason: value }); - } else if ((console = global.console) && console.error) { - console.error('Unhandled promise rejection', value); - } - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } promise._a = undefined; - if (unhandled && result.e) throw result.v; - }); -}; -var isUnhandled = function (promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; -}; -var onHandleUnhandled = function (promise) { - task.call(global, function () { - var handler; - if (isNode) { - process.emit('rejectionHandled', promise); - } else if (handler = global.onrejectionhandled) { - handler({ promise: promise, reason: promise._v }); - } - }); -}; -var $reject = function (value) { - var promise = this; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - promise._v = value; - promise._s = 2; - if (!promise._a) promise._a = promise._c.slice(); - notify(promise, true); -}; -var $resolve = function (value) { - var promise = this; - var then; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function () { - var wrapper = { _w: promise, _d: false }; // wrap - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); - } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); - } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); // wrap - } -}; - -// constructor polyfill -if (!USE_NATIVE) { - // 25.4.3.1 Promise(executor) - $Promise = function Promise(executor) { - anInstance(this, $Promise, PROMISE, '_h'); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - this._c = []; // <- awaiting reactions - this._a = undefined; // <- checked in isUnhandled reactions - this._s = 0; // <- state - this._d = false; // <- done - this._v = undefined; // <- value - this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled - this._n = false; // <- notify - }; - Internal.prototype = __webpack_require__(39)($Promise.prototype, { - // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = isNode ? process.domain : undefined; - this._c.push(reaction); - if (this._a) this._a.push(reaction); - if (this._s) notify(this, false); - return reaction.promise; - }, - // 25.4.5.1 Promise.prototype.catch(onRejected) - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === $Promise || C === Wrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); -__webpack_require__(42)($Promise, PROMISE); -__webpack_require__(43)(PROMISE); -Wrapper = __webpack_require__(12)[PROMISE]; - -// statics -$export($export.S + $export.F * !USE_NATIVE, PROMISE, { - // 25.4.4.5 Promise.reject(r) - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } -}); -$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - // 25.4.4.6 Promise.resolve(x) - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } -}); -$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(79)(function (iter) { - $Promise.all(iter)['catch'](empty); -})), PROMISE, { - // 25.4.4.1 Promise.all(iterable) - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function (promise) { - var $index = index++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - C.resolve(promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) reject(result.v); - return capability.promise; - }, - // 25.4.4.4 Promise.race(iterable) - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - forOf(iterable, false, function (promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) reject(result.v); - return capability.promise; - } -}); - - -/***/ }), -/* 223 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var weak = __webpack_require__(113); -var validate = __webpack_require__(40); -var WEAK_SET = 'WeakSet'; - -// 23.4 WeakSet Objects -__webpack_require__(57)(WEAK_SET, function (get) { - return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return weak.def(validate(this, WEAK_SET), value, true); - } -}, weak, false, true); - - -/***/ }), -/* 224 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var rApply = (__webpack_require__(2).Reflect || {}).apply; -var fApply = Function.apply; -// MS Edge argumentsList argument is optional -$export($export.S + $export.F * !__webpack_require__(4)(function () { - rApply(function () { /* empty */ }); -}), 'Reflect', { - apply: function apply(target, thisArgument, argumentsList) { - var T = aFunction(target); - var L = anObject(argumentsList); - return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); - } -}); - - -/***/ }), -/* 225 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.2 Reflect.construct(target, argumentsList [, newTarget]) -var $export = __webpack_require__(0); -var create = __webpack_require__(32); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); -var fails = __webpack_require__(4); -var bind = __webpack_require__(96); -var rConstruct = (__webpack_require__(2).Reflect || {}).construct; - -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(rConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - rConstruct(function () { /* empty */ }); -}); - -$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); - - -/***/ }), -/* 226 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes) -var dP = __webpack_require__(8); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var toPrimitive = __webpack_require__(27); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -$export($export.S + $export.F * __webpack_require__(4)(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 }); -}), 'Reflect', { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - propertyKey = toPrimitive(propertyKey, true); - anObject(attributes); - try { - dP.f(target, propertyKey, attributes); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 227 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.4 Reflect.deleteProperty(target, propertyKey) -var $export = __webpack_require__(0); -var gOPD = __webpack_require__(18).f; -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - deleteProperty: function deleteProperty(target, propertyKey) { - var desc = gOPD(anObject(target), propertyKey); - return desc && !desc.configurable ? false : delete target[propertyKey]; - } -}); - - -/***/ }), -/* 228 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 26.1.5 Reflect.enumerate(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var Enumerate = function (iterated) { - this._t = anObject(iterated); // target - this._i = 0; // next index - var keys = this._k = []; // keys - var key; - for (key in iterated) keys.push(key); -}; -__webpack_require__(54)(Enumerate, 'Object', function () { - var that = this; - var keys = that._k; - var key; - do { - if (that._i >= keys.length) return { value: undefined, done: true }; - } while (!((key = keys[that._i++]) in that._t)); - return { value: key, done: false }; -}); - -$export($export.S, 'Reflect', { - enumerate: function enumerate(target) { - return new Enumerate(target); - } -}); - - -/***/ }), -/* 229 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.6 Reflect.get(target, propertyKey [, receiver]) -var gOPD = __webpack_require__(18); -var getPrototypeOf = __webpack_require__(13); -var has = __webpack_require__(15); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(3); -var anObject = __webpack_require__(1); - -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var desc, proto; - if (anObject(target) === receiver) return target[propertyKey]; - if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value') - ? desc.value - : desc.get !== undefined - ? desc.get.call(receiver) - : undefined; - if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver); -} - -$export($export.S, 'Reflect', { get: get }); - - -/***/ }), -/* 230 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey) -var gOPD = __webpack_require__(18); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return gOPD.f(anObject(target), propertyKey); - } -}); - - -/***/ }), -/* 231 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.8 Reflect.getPrototypeOf(target) -var $export = __webpack_require__(0); -var getProto = __webpack_require__(13); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getPrototypeOf: function getPrototypeOf(target) { - return getProto(anObject(target)); - } -}); - - -/***/ }), -/* 232 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.9 Reflect.has(target, propertyKey) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); - - -/***/ }), -/* 233 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.10 Reflect.isExtensible(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $isExtensible = Object.isExtensible; - -$export($export.S, 'Reflect', { - isExtensible: function isExtensible(target) { - anObject(target); - return $isExtensible ? $isExtensible(target) : true; - } -}); - - -/***/ }), -/* 234 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.11 Reflect.ownKeys(target) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { ownKeys: __webpack_require__(87) }); - - -/***/ }), -/* 235 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.12 Reflect.preventExtensions(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $preventExtensions = Object.preventExtensions; - -$export($export.S, 'Reflect', { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - if ($preventExtensions) $preventExtensions(target); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 236 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.13 Reflect.set(target, propertyKey, V [, receiver]) -var dP = __webpack_require__(8); -var gOPD = __webpack_require__(18); -var getPrototypeOf = __webpack_require__(13); -var has = __webpack_require__(15); -var $export = __webpack_require__(0); -var createDesc = __webpack_require__(28); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(3); - -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDesc = gOPD.f(anObject(target), propertyKey); - var existingDescriptor, proto; - if (!ownDesc) { - if (isObject(proto = getPrototypeOf(target))) { - return set(proto, propertyKey, V, receiver); - } - ownDesc = createDesc(0); - } - if (has(ownDesc, 'value')) { - if (ownDesc.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = gOPD.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - dP.f(receiver, propertyKey, existingDescriptor); - } else dP.f(receiver, propertyKey, createDesc(0, V)); - return true; - } - return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true); -} - -$export($export.S, 'Reflect', { set: set }); - - -/***/ }), -/* 237 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.14 Reflect.setPrototypeOf(target, proto) -var $export = __webpack_require__(0); -var setProto = __webpack_require__(95); - -if (setProto) $export($export.S, 'Reflect', { - setPrototypeOf: function setPrototypeOf(target, proto) { - setProto.check(target, proto); - try { - setProto.set(target, proto); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 238 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.3.1 / 15.9.4.4 Date.now() -var $export = __webpack_require__(0); - -$export($export.S, 'Date', { now: function () { return new Date().getTime(); } }); - - -/***/ }), -/* 239 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(27); -var toISOString = __webpack_require__(114); -var classof = __webpack_require__(37); - -$export($export.P + $export.F * __webpack_require__(4)(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : - (!('toISOString' in O) && classof(O) == 'Date') ? toISOString.call(O) : O.toISOString(); - } -}); - - -/***/ }), -/* 240 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var $export = __webpack_require__(0); -var toISOString = __webpack_require__(114); - -// PhantomJS / old WebKit has a broken implementations -$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', { - toISOString: toISOString -}); - - -/***/ }), -/* 241 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $typed = __webpack_require__(58); -var buffer = __webpack_require__(88); -var anObject = __webpack_require__(1); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -var isObject = __webpack_require__(3); -var ArrayBuffer = __webpack_require__(2).ArrayBuffer; -var speciesConstructor = __webpack_require__(55); -var $ArrayBuffer = buffer.ArrayBuffer; -var $DataView = buffer.DataView; -var $isView = $typed.ABV && ArrayBuffer.isView; -var $slice = $ArrayBuffer.prototype.slice; -var VIEW = $typed.VIEW; -var ARRAY_BUFFER = 'ArrayBuffer'; - -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer }); - -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it) { - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); - -$export($export.P + $export.U + $export.F * __webpack_require__(4)(function () { - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end) { - if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength; - var first = toAbsoluteIndex(start, len); - var fin = toAbsoluteIndex(end === undefined ? len : end, len); - var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first)); - var viewS = new $DataView(this); - var viewT = new $DataView(result); - var index = 0; - while (first < fin) { - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -__webpack_require__(43)(ARRAY_BUFFER); - - -/***/ }), -/* 242 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -$export($export.G + $export.W + $export.F * !__webpack_require__(58).ABV, { - DataView: __webpack_require__(88).DataView -}); - - -/***/ }), -/* 243 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Int8', 1, function (init) { - return function Int8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 244 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Uint8', 1, function (init) { - return function Uint8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 245 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Uint8', 1, function (init) { - return function Uint8ClampedArray(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}, true); - - -/***/ }), -/* 246 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Int16', 2, function (init) { - return function Int16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 247 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Uint16', 2, function (init) { - return function Uint16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 248 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Int32', 4, function (init) { - return function Int32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 249 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Uint32', 4, function (init) { - return function Uint32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 250 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Float32', 4, function (init) { - return function Float32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 251 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(25)('Float64', 8, function (init) { - return function Float64Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 252 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/Array.prototype.includes -var $export = __webpack_require__(0); -var $includes = __webpack_require__(50)(true); - -$export($export.P, 'Array', { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -__webpack_require__(33)('includes'); - - -/***/ }), -/* 253 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(116); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var aFunction = __webpack_require__(10); -var arraySpeciesCreate = __webpack_require__(80); - -$export($export.P, 'Array', { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen, A; - aFunction(callbackfn); - sourceLen = toLength(O.length); - A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); - return A; - } -}); - -__webpack_require__(33)('flatMap'); - - -/***/ }), -/* 254 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(116); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var toInteger = __webpack_require__(22); -var arraySpeciesCreate = __webpack_require__(80); - -$export($export.P, 'Array', { - flatten: function flatten(/* depthArg = 1 */) { - var depthArg = arguments[0]; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); - -__webpack_require__(33)('flatten'); - - -/***/ }), -/* 255 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/mathiasbynens/String.prototype.at -var $export = __webpack_require__(0); -var $at = __webpack_require__(74)(true); - -$export($export.P, 'String', { - at: function at(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 256 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(117); -var userAgent = __webpack_require__(56); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); - } -}); - - -/***/ }), -/* 257 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(117); -var userAgent = __webpack_require__(56); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); - } -}); - - -/***/ }), -/* 258 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(47)('trimLeft', function ($trim) { - return function trimLeft() { - return $trim(this, 1); - }; -}, 'trimStart'); - - -/***/ }), -/* 259 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(47)('trimRight', function ($trim) { - return function trimRight() { - return $trim(this, 2); - }; -}, 'trimEnd'); - - -/***/ }), -/* 260 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/String.prototype.matchAll/ -var $export = __webpack_require__(0); -var defined = __webpack_require__(24); -var toLength = __webpack_require__(6); -var isRegExp = __webpack_require__(103); -var getFlags = __webpack_require__(261); -var RegExpProto = RegExp.prototype; - -var $RegExpStringIterator = function (regexp, string) { - this._r = regexp; - this._s = string; -}; - -__webpack_require__(54)($RegExpStringIterator, 'RegExp String', function next() { - var match = this._r.exec(this._s); - return { value: match, done: match === null }; -}); - -$export($export.P, 'String', { - matchAll: function matchAll(regexp) { - defined(this); - if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!'); - var S = String(this); - var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp); - var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags); - rx.lastIndex = toLength(regexp.lastIndex); - return new $RegExpStringIterator(rx, S); - } -}); - - -/***/ }), -/* 261 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.2.5.3 get RegExp.prototype.flags -var anObject = __webpack_require__(1); -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; - - -/***/ }), -/* 262 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(64)('asyncIterator'); - - -/***/ }), -/* 263 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(64)('observable'); - - -/***/ }), -/* 264 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-getownpropertydescriptors -var $export = __webpack_require__(0); -var ownKeys = __webpack_require__(87); -var toIObject = __webpack_require__(11); -var gOPD = __webpack_require__(18); -var createProperty = __webpack_require__(78); - -$export($export.S, 'Object', { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIObject(object); - var getDesc = gOPD.f; - var keys = ownKeys(O); - var result = {}; - var i = 0; - var key, desc; - while (keys.length > i) { - desc = getDesc(O, key = keys[i++]); - if (desc !== undefined) createProperty(result, key, desc); - } - return result; - } -}); - - -/***/ }), -/* 265 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $values = __webpack_require__(118)(false); - -$export($export.S, 'Object', { - values: function values(it) { - return $values(it); - } -}); - - -/***/ }), -/* 266 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $entries = __webpack_require__(118)(true); - -$export($export.S, 'Object', { - entries: function entries(it) { - return $entries(it); - } -}); - - -/***/ }), -/* 267 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.2 Object.prototype.__defineGetter__(P, getter) -__webpack_require__(7) && $export($export.P + __webpack_require__(59), 'Object', { - __defineGetter__: function __defineGetter__(P, getter) { - $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 268 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.3 Object.prototype.__defineSetter__(P, setter) -__webpack_require__(7) && $export($export.P + __webpack_require__(59), 'Object', { - __defineSetter__: function __defineSetter__(P, setter) { - $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 269 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(27); -var getPrototypeOf = __webpack_require__(13); -var getOwnPropertyDescriptor = __webpack_require__(18).f; - -// B.2.2.4 Object.prototype.__lookupGetter__(P) -__webpack_require__(7) && $export($export.P + __webpack_require__(59), 'Object', { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.get; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 270 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(27); -var getPrototypeOf = __webpack_require__(13); -var getOwnPropertyDescriptor = __webpack_require__(18).f; - -// B.2.2.5 Object.prototype.__lookupSetter__(P) -__webpack_require__(7) && $export($export.P + __webpack_require__(59), 'Object', { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.set; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 271 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(119)('Map') }); - - -/***/ }), -/* 272 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(119)('Set') }); - - -/***/ }), -/* 273 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -__webpack_require__(60)('Map'); - - -/***/ }), -/* 274 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -__webpack_require__(60)('Set'); - - -/***/ }), -/* 275 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -__webpack_require__(60)('WeakMap'); - - -/***/ }), -/* 276 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -__webpack_require__(60)('WeakSet'); - - -/***/ }), -/* 277 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -__webpack_require__(61)('Map'); - - -/***/ }), -/* 278 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -__webpack_require__(61)('Set'); - - -/***/ }), -/* 279 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -__webpack_require__(61)('WeakMap'); - - -/***/ }), -/* 280 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -__webpack_require__(61)('WeakSet'); - - -/***/ }), -/* 281 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.G, { global: __webpack_require__(2) }); - - -/***/ }), -/* 282 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.S, 'System', { global: __webpack_require__(2) }); - - -/***/ }), -/* 283 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/ljharb/proposal-is-error -var $export = __webpack_require__(0); -var cof = __webpack_require__(21); - -$export($export.S, 'Error', { - isError: function isError(it) { - return cof(it) === 'Error'; - } -}); - - -/***/ }), -/* 284 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clamp: function clamp(x, lower, upper) { - return Math.min(upper, Math.max(lower, x)); - } -}); - - -/***/ }), -/* 285 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 }); - - -/***/ }), -/* 286 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var RAD_PER_DEG = 180 / Math.PI; - -$export($export.S, 'Math', { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); - - -/***/ }), -/* 287 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var scale = __webpack_require__(121); -var fround = __webpack_require__(102); - -$export($export.S, 'Math', { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); - - -/***/ }), -/* 288 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); - - -/***/ }), -/* 289 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); - - -/***/ }), -/* 290 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - imulh: function imulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); - - -/***/ }), -/* 291 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI }); - - -/***/ }), -/* 292 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var DEG_PER_RAD = Math.PI / 180; - -$export($export.S, 'Math', { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); - - -/***/ }), -/* 293 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { scale: __webpack_require__(121) }); - - -/***/ }), -/* 294 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - umulh: function umulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); - - -/***/ }), -/* 295 */ -/***/ (function(module, exports, __webpack_require__) { - -// http://jfbastien.github.io/papers/Math.signbit.html -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { signbit: function signbit(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0; -} }); - - -/***/ }), -/* 296 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// https://github.com/tc39/proposal-promise-finally - -var $export = __webpack_require__(0); -var core = __webpack_require__(12); -var global = __webpack_require__(2); -var speciesConstructor = __webpack_require__(55); -var promiseResolve = __webpack_require__(108); - -$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) { - var C = speciesConstructor(this, core.Promise || global.Promise); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); -} }); - - -/***/ }), -/* 297 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-promise-try -var $export = __webpack_require__(0); -var newPromiseCapability = __webpack_require__(86); -var perform = __webpack_require__(107); - -$export($export.S, 'Promise', { 'try': function (callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; -} }); - - -/***/ }), -/* 298 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var ordinaryDefineOwnMetadata = metadata.set; - -metadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey)); -} }); - - -/***/ }), -/* 299 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var getOrCreateMetadataMap = metadata.map; -var store = metadata.store; - -metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); -} }); - - -/***/ }), -/* 300 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(13); -var ordinaryHasOwnMetadata = metadata.has; -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -metadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 301 */ -/***/ (function(module, exports, __webpack_require__) { - -var Set = __webpack_require__(111); -var from = __webpack_require__(120); -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(13); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 302 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 303 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 304 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(13); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -metadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 305 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -metadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 306 */ -/***/ (function(module, exports, __webpack_require__) { - -var $metadata = __webpack_require__(26); -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var toMetaKey = $metadata.key; -var ordinaryDefineOwnMetadata = $metadata.set; - -$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, targetKey) { - ordinaryDefineOwnMetadata( - metadataKey, metadataValue, - (targetKey !== undefined ? anObject : aFunction)(target), - toMetaKey(targetKey) - ); - }; -} }); - - -/***/ }), -/* 307 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask -var $export = __webpack_require__(0); -var microtask = __webpack_require__(85)(); -var process = __webpack_require__(2).process; -var isNode = __webpack_require__(21)(process) == 'process'; - -$export($export.G, { - asap: function asap(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); - - -/***/ }), -/* 308 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/zenparsing/es-observable -var $export = __webpack_require__(0); -var global = __webpack_require__(2); -var core = __webpack_require__(12); -var microtask = __webpack_require__(85)(); -var OBSERVABLE = __webpack_require__(5)('observable'); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var anInstance = __webpack_require__(38); -var redefineAll = __webpack_require__(39); -var hide = __webpack_require__(17); -var forOf = __webpack_require__(34); -var RETURN = forOf.RETURN; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscription) { - var cleanup = subscription._c; - if (cleanup) { - subscription._c = undefined; - cleanup(); - } -}; - -var subscriptionClosed = function (subscription) { - return subscription._o === undefined; -}; - -var closeSubscription = function (subscription) { - if (!subscriptionClosed(subscription)) { - subscription._o = undefined; - cleanupSubscription(subscription); - } -}; - -var Subscription = function (observer, subscriber) { - anObject(observer); - this._c = undefined; - this._o = observer; - observer = new SubscriptionObserver(this); - try { - var cleanup = subscriber(observer); - var subscription = cleanup; - if (cleanup != null) { - if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); }; - else aFunction(cleanup); - this._c = cleanup; - } - } catch (e) { - observer.error(e); - return; - } if (subscriptionClosed(this)) cleanupSubscription(this); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { closeSubscription(this); } -}); - -var SubscriptionObserver = function (subscription) { - this._s = subscription; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - try { - var m = getMethod(observer.next); - if (m) return m.call(observer, value); - } catch (e) { - try { - closeSubscription(subscription); - } finally { - throw e; - } - } - } - }, - error: function error(value) { - var subscription = this._s; - if (subscriptionClosed(subscription)) throw value; - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.error); - if (!m) throw value; - value = m.call(observer, value); - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - }, - complete: function complete(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.complete); - value = m ? m.call(observer, value) : undefined; - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - } - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - return new Subscription(observer, this._f); - }, - forEach: function forEach(fn) { - var that = this; - return new (core.Promise || global.Promise)(function (resolve, reject) { - aFunction(fn); - var subscription = that.subscribe({ - next: function (value) { - try { - return fn(value); - } catch (e) { - reject(e); - subscription.unsubscribe(); - } - }, - error: reject, - complete: resolve - }); - }); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var method = getMethod(anObject(x)[OBSERVABLE]); - if (method) { - var observable = anObject(method.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - return new C(function (observer) { - var done = false; - microtask(function () { - if (!done) { - try { - if (forOf(x, false, function (it) { - observer.next(it); - if (done) return RETURN; - }) === RETURN) return; - } catch (e) { - if (done) throw e; - observer.error(e); - return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - }, - of: function of() { - for (var i = 0, l = arguments.length, items = new Array(l); i < l;) items[i] = arguments[i++]; - return new (typeof this === 'function' ? this : $Observable)(function (observer) { - var done = false; - microtask(function () { - if (!done) { - for (var j = 0; j < items.length; ++j) { - observer.next(items[j]); - if (done) return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - } -}); - -hide($Observable.prototype, OBSERVABLE, function () { return this; }); - -$export($export.G, { Observable: $Observable }); - -__webpack_require__(43)('Observable'); - - -/***/ }), -/* 309 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $task = __webpack_require__(84); -$export($export.G + $export.B, { - setImmediate: $task.set, - clearImmediate: $task.clear -}); - - -/***/ }), -/* 310 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(82); -var global = __webpack_require__(2); -var hide = __webpack_require__(17); -var Iterators = __webpack_require__(36); -var TO_STRING_TAG = __webpack_require__(5)('toStringTag'); - -var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + - 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + - 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + - 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + - 'TextTrackList,TouchList').split(','); - -for (var i = 0; i < DOMIterables.length; i++) { - var NAME = DOMIterables[i]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = Iterators.Array; -} - - -/***/ }), -/* 311 */ -/***/ (function(module, exports, __webpack_require__) { - -// ie9- setTimeout & setInterval additional parameters fix -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var userAgent = __webpack_require__(56); -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check -var wrap = function (set) { - return function (fn, time /* , ...args */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : false; - return set(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(this, args); - } : fn, time); - }; -}; -$export($export.G + $export.B + $export.F * MSIE, { - setTimeout: wrap(global.setTimeout), - setInterval: wrap(global.setInterval) -}); - - -/***/ }), -/* 312 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var ctx = __webpack_require__(16); -var $export = __webpack_require__(0); -var createDesc = __webpack_require__(28); -var assign = __webpack_require__(68); -var create = __webpack_require__(32); -var getPrototypeOf = __webpack_require__(13); -var getKeys = __webpack_require__(31); -var dP = __webpack_require__(8); -var keyOf = __webpack_require__(313); -var aFunction = __webpack_require__(10); -var forOf = __webpack_require__(34); -var isIterable = __webpack_require__(122); -var $iterCreate = __webpack_require__(54); -var step = __webpack_require__(83); -var isObject = __webpack_require__(3); -var toIObject = __webpack_require__(11); -var DESCRIPTORS = __webpack_require__(7); -var has = __webpack_require__(15); - -// 0 -> Dict.forEach -// 1 -> Dict.map -// 2 -> Dict.filter -// 3 -> Dict.some -// 4 -> Dict.every -// 5 -> Dict.find -// 6 -> Dict.findKey -// 7 -> Dict.mapPairs -var createDictMethod = function (TYPE) { - var IS_MAP = TYPE == 1; - var IS_EVERY = TYPE == 4; - return function (object, callbackfn, that /* = undefined */) { - var f = ctx(callbackfn, that, 3); - var O = toIObject(object); - var result = IS_MAP || TYPE == 7 || TYPE == 2 - ? new (typeof this == 'function' ? this : Dict)() : undefined; - var key, val, res; - for (key in O) if (has(O, key)) { - val = O[key]; - res = f(val, key, object); - if (TYPE) { - if (IS_MAP) result[key] = res; // map - else if (res) switch (TYPE) { - case 2: result[key] = val; break; // filter - case 3: return true; // some - case 5: return val; // find - case 6: return key; // findKey - case 7: result[res[0]] = res[1]; // mapPairs - } else if (IS_EVERY) return false; // every - } - } - return TYPE == 3 || IS_EVERY ? IS_EVERY : result; - }; -}; -var findKey = createDictMethod(6); - -var createDictIter = function (kind) { - return function (it) { - return new DictIterator(it, kind); - }; -}; -var DictIterator = function (iterated, kind) { - this._t = toIObject(iterated); // target - this._a = getKeys(iterated); // keys - this._i = 0; // next index - this._k = kind; // kind -}; -$iterCreate(DictIterator, 'Dict', function () { - var that = this; - var O = that._t; - var keys = that._a; - var kind = that._k; - var key; - do { - if (that._i >= keys.length) { - that._t = undefined; - return step(1); - } - } while (!has(O, key = keys[that._i++])); - if (kind == 'keys') return step(0, key); - if (kind == 'values') return step(0, O[key]); - return step(0, [key, O[key]]); -}); - -function Dict(iterable) { - var dict = create(null); - if (iterable != undefined) { - if (isIterable(iterable)) { - forOf(iterable, true, function (key, value) { - dict[key] = value; - }); - } else assign(dict, iterable); - } - return dict; -} -Dict.prototype = null; - -function reduce(object, mapfn, init) { - aFunction(mapfn); - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var memo, key; - if (arguments.length < 3) { - if (!length) throw TypeError('Reduce of empty object with no initial value'); - memo = O[keys[i++]]; - } else memo = Object(init); - while (length > i) if (has(O, key = keys[i++])) { - memo = mapfn(memo, O[key], key, object); - } - return memo; -} - -function includes(object, el) { - // eslint-disable-next-line no-self-compare - return (el == el ? keyOf(object, el) : findKey(object, function (it) { - // eslint-disable-next-line no-self-compare - return it != it; - })) !== undefined; -} - -function get(object, key) { - if (has(object, key)) return object[key]; -} -function set(object, key, value) { - if (DESCRIPTORS && key in Object) dP.f(object, key, createDesc(0, value)); - else object[key] = value; - return object; -} - -function isDict(it) { - return isObject(it) && getPrototypeOf(it) === Dict.prototype; -} - -$export($export.G + $export.F, { Dict: Dict }); - -$export($export.S, 'Dict', { - keys: createDictIter('keys'), - values: createDictIter('values'), - entries: createDictIter('entries'), - forEach: createDictMethod(0), - map: createDictMethod(1), - filter: createDictMethod(2), - some: createDictMethod(3), - every: createDictMethod(4), - find: createDictMethod(5), - findKey: findKey, - mapPairs: createDictMethod(7), - reduce: reduce, - keyOf: keyOf, - includes: includes, - has: has, - get: get, - set: set, - isDict: isDict -}); - - -/***/ }), -/* 313 */ -/***/ (function(module, exports, __webpack_require__) { - -var getKeys = __webpack_require__(31); -var toIObject = __webpack_require__(11); -module.exports = function (object, el) { - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var index = 0; - var key; - while (length > index) if (O[key = keys[index++]] === el) return key; -}; - - -/***/ }), -/* 314 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var get = __webpack_require__(48); -module.exports = __webpack_require__(12).getIterator = function (it) { - var iterFn = get(it); - if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!'); - return anObject(iterFn.call(it)); -}; - - -/***/ }), -/* 315 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(12); -var $export = __webpack_require__(0); -var partial = __webpack_require__(123); -// https://esdiscuss.org/topic/promise-returning-delay-function -$export($export.G + $export.F, { - delay: function delay(time) { - return new (core.Promise || global.Promise)(function (resolve) { - setTimeout(partial.call(resolve, true), time); - }); - } -}); - - -/***/ }), -/* 316 */ -/***/ (function(module, exports, __webpack_require__) { - -var path = __webpack_require__(124); -var $export = __webpack_require__(0); - -// Placeholder -__webpack_require__(12)._ = path._ = path._ || {}; - -$export($export.P + $export.F, 'Function', { part: __webpack_require__(123) }); - - -/***/ }), -/* 317 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { isObject: __webpack_require__(3) }); - - -/***/ }), -/* 318 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { classof: __webpack_require__(37) }); - - -/***/ }), -/* 319 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var define = __webpack_require__(125); - -$export($export.S + $export.F, 'Object', { define: define }); - - -/***/ }), -/* 320 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var define = __webpack_require__(125); -var create = __webpack_require__(32); - -$export($export.S + $export.F, 'Object', { - make: function (proto, mixin) { - return define(create(proto), mixin); - } -}); - - -/***/ }), -/* 321 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(53)(Number, 'Number', function (iterated) { - this._l = +iterated; - this._i = 0; -}, function () { - var i = this._i++; - var done = !(i < this._l); - return { done: done, value: done ? undefined : i }; -}); - - -/***/ }), -/* 322 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/benjamingr/RexExp.escape -var $export = __webpack_require__(0); -var $re = __webpack_require__(89)(/[\\^$*+?.()|[\]{}]/g, '\\$&'); - -$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } }); - - -/***/ }), -/* 323 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $re = __webpack_require__(89)(/[&<>"']/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}); - -$export($export.P + $export.F, 'String', { escapeHTML: function escapeHTML() { return $re(this); } }); - - -/***/ }), -/* 324 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $re = __webpack_require__(89)(/&(?:amp|lt|gt|quot|apos);/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}); - -$export($export.P + $export.F, 'String', { unescapeHTML: function unescapeHTML() { return $re(this); } }); - - -/***/ }) -/******/ ]); -// CommonJS export -if (typeof module != 'undefined' && module.exports) module.exports = __e; -// RequireJS export -else if (typeof define == 'function' && define.amd) define(function () { return __e; }); -// Export to global object -else __g.core = __e; -}(1, 1); \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/library.min.js b/forward_engineering/node_modules/core-js/client/library.min.js deleted file mode 100644 index d8c13d2..0000000 --- a/forward_engineering/node_modules/core-js/client/library.min.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(e,i,Jt){"use strict";!function(r){var e={};function __webpack_require__(t){if(e[t])return e[t].exports;var n=e[t]={i:t,l:!1,exports:{}};return r[t].call(n.exports,n,n.exports,__webpack_require__),n.l=!0,n.exports}__webpack_require__.m=r,__webpack_require__.c=e,__webpack_require__.d=function(t,n,r){__webpack_require__.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},__webpack_require__.n=function(t){var n=t&&t.__esModule?function getDefault(){return t["default"]}:function getModuleExports(){return t};return __webpack_require__.d(n,"a",n),n},__webpack_require__.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=126)}([function(t,n,r){var y=r(2),g=r(12),d=r(16),_=r(17),b=r(15),S="prototype",m=function(t,n,r){var e,i,o,u=t&m.F,c=t&m.G,f=t&m.S,a=t&m.P,s=t&m.B,l=t&m.W,h=c?g:g[n]||(g[n]={}),p=h[S],v=c?y:f?y[n]:(y[n]||{})[S];for(e in c&&(r=n),r)(i=!u&&v&&v[e]!==Jt)&&b(h,e)||(o=i?v[e]:r[e],h[e]=c&&"function"!=typeof v[e]?r[e]:s&&i?d(o,y):l&&v[e]==o?function(e){var t=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return t[S]=e[S],t}(o):a&&"function"==typeof o?d(Function.call,o):o,a&&((h.virtual||(h.virtual={}))[e]=o,t&m.R&&p&&!p[e]&&_(p,e,o)))};m.F=1,m.G=2,m.S=4,m.P=8,m.B=16,m.W=32,m.U=64,m.R=128,t.exports=m},function(t,n,r){var e=r(3);t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof i&&(i=r)},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n,r){var e=r(49)("wks"),i=r(41),o=r(2).Symbol,u="function"==typeof o;(t.exports=function(t){return e[t]||(e[t]=u&&o[t]||(u?o:i)("Symbol."+t))}).store=e},function(t,n,r){var e=r(22),i=Math.min;t.exports=function(t){return 0"+i+""};t.exports=function(n,t){var r={};r[n]=t(o),e(e.P+e.F*i(function(){var t=""[n]('"');return t!==t.toLowerCase()||3document.F=Object<\/script>"),t.close(),s=t.F;r--;)delete s[a][u[r]];return s()};t.exports=Object.create||function create(t,n){var r;return null!==t?(f[a]=i(t),r=new f,f[a]=null,r[c]=t):r=s(),n===Jt?r:o(r,n)}},function(t,n){t.exports=function(){}},function(t,n,r){var h=r(16),p=r(104),v=r(77),y=r(1),g=r(6),d=r(48),_={},b={};(n=t.exports=function(t,n,r,e,i){var o,u,c,f,a=i?function(){return t}:d(t),s=h(r,e,n?2:1),l=0;if("function"!=typeof a)throw TypeError(t+" is not iterable!");if(v(a)){for(o=g(t.length);l>>=1)&&(n+=n))1&e&&(r+=n);return r}},function(t,n){t.exports="\t\n\x0B\f\r   ᠎              \u2028\u2029\ufeff"},function(t,n){t.exports=Math.sign||function sign(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},function(t,n){var r=Math.expm1;t.exports=!r||22025.465794806718>1,s=23===n?I(2,-24)-I(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for((t=F(t))!=t||t===M?(i=t!=t?1:0,e=f):(e=k(A(t)/j),t*(o=I(2,-e))<1&&(e--,o*=2),2<=(t+=1<=e+a?s/o:s*I(2,1-a))*o&&(e++,o/=2),f<=e+a?(i=0,e=f):1<=e+a?(i=(t*o-1)*I(2,n),e+=a):(i=t*I(2,a-1)*I(2,n),e=0));8<=n;u[l++]=255&i,i/=256,n-=8);for(e=e<>1,c=i-7,f=r-1,a=t[f--],s=127&a;for(a>>=7;0>=-c,c+=n;0>8&255]}function packI32(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function packF64(t){return packIEEE754(t,52,8)}function packF32(t){return packIEEE754(t,23,4)}function addGetter(t,n,r){y(t[S],n,{get:function(){return this[r]}})}function get(t,n,r,e){var i=p(+r);if(t[D]>24)},setUint8:function setUint8(t,n){B.call(this,t,n<<24>>24)}},!0)}else w=function ArrayBuffer(t){s(this,w,_);var n=p(t);this._b=g.call(new Array(n),0),this[D]=n},x=function DataView(t,n,r){s(this,x,b),s(t,w,b);var e=t[D],i=l(n);if(i<0||e>24},getUint8:function getUint8(t){return get(this,1,t)[0]},getInt16:function getInt16(t){var n=get(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function getUint16(t){var n=get(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function getInt32(t){return unpackI32(get(this,4,t,arguments[1]))},getUint32:function getUint32(t){return unpackI32(get(this,4,t,arguments[1]))>>>0},getFloat32:function getFloat32(t){return unpackIEEE754(get(this,4,t,arguments[1]),23,4)},getFloat64:function getFloat64(t){return unpackIEEE754(get(this,8,t,arguments[1]),52,8)},setInt8:function setInt8(t,n){set(this,1,t,packI8,n)},setUint8:function setUint8(t,n){set(this,1,t,packI8,n)},setInt16:function setInt16(t,n){set(this,2,t,packI16,n,arguments[2])},setUint16:function setUint16(t,n){set(this,2,t,packI16,n,arguments[2])},setInt32:function setInt32(t,n){set(this,4,t,packI32,n,arguments[2])},setUint32:function setUint32(t,n){set(this,4,t,packI32,n,arguments[2])},setFloat32:function setFloat32(t,n){set(this,4,t,packF32,n,arguments[2])},setFloat64:function setFloat64(t,n){set(this,8,t,packF64,n,arguments[2])}});d(w,_),d(x,b),c(x[S],u.VIEW,!0),n[_]=w,n[b]=x},function(t,n){t.exports=function(n,r){var e=r===Object(r)?function(t){return r[t]}:r;return function(t){return String(t).replace(n,e)}}},function(t,n,r){t.exports=!r(7)&&!r(4)(function(){return 7!=Object.defineProperty(r(62)("div"),"a",{get:function(){return 7}}).a})},function(t,n,r){n.f=r(5)},function(t,n,r){var u=r(15),c=r(11),f=r(50)(!1),a=r(65)("IE_PROTO");t.exports=function(t,n){var r,e=c(t),i=0,o=[];for(r in e)r!=a&&u(e,r)&&o.push(r);for(;i>>0||(u.test(r)?16:10))}:e},function(t,n){t.exports=Math.log1p||function log1p(t){return-1e-8<(t=+t)&&t<1e-8?t-t*t/2:Math.log(1+t)}},function(t,n,r){var o=r(72),e=Math.pow,u=e(2,-52),c=e(2,-23),f=e(2,127)*(2-c),a=e(2,-126);t.exports=Math.fround||function fround(t){var n,r,e=Math.abs(t),i=o(t);return e>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},function(t,n,r){var e=r(0),i=Math.exp;e(e.S,"Math",{cosh:function cosh(t){return(i(t=+t)+i(-t))/2}})},function(t,n,r){var e=r(0),i=r(73);e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},function(t,n,r){var e=r(0);e(e.S,"Math",{fround:r(102)})},function(t,n,r){var e=r(0),f=Math.abs;e(e.S,"Math",{hypot:function hypot(t,n){for(var r,e,i=0,o=0,u=arguments.length,c=0;o>>16)*u+o*(r&i>>>16)<<16>>>0)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log10:function log10(t){return Math.log(t)*Math.LOG10E}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log1p:r(101)})},function(t,n,r){var e=r(0);e(e.S,"Math",{log2:function log2(t){return Math.log(t)/Math.LN2}})},function(t,n,r){var e=r(0);e(e.S,"Math",{sign:r(72)})},function(t,n,r){var e=r(0),i=r(73),o=Math.exp;e(e.S+e.F*r(4)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},function(t,n,r){var e=r(0),i=r(73),o=Math.exp;e(e.S,"Math",{tanh:function tanh(t){var n=i(t=+t),r=i(-t);return n==Infinity?1:r==Infinity?-1:(n-r)/(o(t)+o(-t))}})},function(t,n,r){var e=r(0);e(e.S,"Math",{trunc:function trunc(t){return(0>10),n%1024+56320))}return r.join("")}})},function(t,n,r){var e=r(0),u=r(11),c=r(6);e(e.S,"String",{raw:function raw(t){for(var n=u(t.raw),r=c(n.length),e=arguments.length,i=[],o=0;o>>0,o=r>>>0;return(n>>>0)+(e>>>0)+((i&o|(i|o)&~(i+o>>>0))>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{isubh:function isubh(t,n,r,e){var i=t>>>0,o=r>>>0;return(n>>>0)-(e>>>0)-((~i&o|~(i^o)&i-o>>>0)>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{imulh:function imulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>16,c=e>>16,f=(u*o>>>0)+(i*o>>>16);return u*c+(f>>16)+((i*c>>>0)+(65535&f)>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(t,n,r){var e=r(0),i=Math.PI/180;e(e.S,"Math",{radians:function radians(t){return t*i}})},function(t,n,r){var e=r(0);e(e.S,"Math",{scale:r(121)})},function(t,n,r){var e=r(0);e(e.S,"Math",{umulh:function umulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>>16,c=e>>>16,f=(u*o>>>0)+(i*o>>>16);return u*c+(f>>>16)+((i*c>>>0)+(65535&f)>>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{signbit:function signbit(t){return(t=+t)!=t?t:0==t?1/t==Infinity:0"']/g,{"&":"&","<":"<",">":">",'"':""","'":"'"});e(e.P+e.F,"String",{escapeHTML:function escapeHTML(){return i(this)}})},function(t,n,r){var e=r(0),i=r(89)(/&(?:amp|lt|gt|quot|apos);/g,{"&":"&","<":"<",">":">",""":'"',"'":"'"});e(e.P+e.F,"String",{unescapeHTML:function unescapeHTML(){return i(this)}})}]),"undefined"!=typeof module&&module.exports?module.exports=e:"function"==typeof define&&define.amd?define(function(){return e}):i.core=e}(1,1); -//# sourceMappingURL=library.min.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/library.min.js.map b/forward_engineering/node_modules/core-js/client/library.min.js.map deleted file mode 100644 index c0daaab..0000000 --- a/forward_engineering/node_modules/core-js/client/library.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["library.js"],"names":["__e","__g","undefined","modules","installedModules","__webpack_require__","moduleId","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","getDefault","getModuleExports","object","property","prototype","hasOwnProperty","p","s","global","core","ctx","hide","has","PROTOTYPE","$export","type","source","key","own","out","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","P","IS_BIND","B","IS_WRAP","W","expProto","target","C","a","b","this","arguments","length","apply","Function","virtual","R","U","isObject","it","TypeError","window","Math","self","exec","e","store","uid","Symbol","USE_SYMBOL","toInteger","min","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","value","defined","IObject","version","toObject","IE_PROTO","ObjectProto","getPrototypeOf","constructor","fails","quot","createHTML","string","tag","attribute","String","p1","replace","NAME","test","toLowerCase","split","aFunction","fn","that","createDesc","pIE","toIObject","gOPD","getOwnPropertyDescriptor","method","arg","toLength","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","create","$this","callbackfn","val","res","index","result","push","toString","slice","ceil","floor","isNaN","KEY","exp","LIBRARY","$typed","$buffer","anInstance","propertyDesc","redefineAll","toIndex","toAbsoluteIndex","classof","isArrayIter","gOPN","getIterFn","wks","createArrayMethod","createArrayIncludes","speciesConstructor","ArrayIterators","Iterators","$iterDetect","setSpecies","arrayFill","arrayCopyWithin","$DP","$GOPD","RangeError","Uint8Array","ARRAY_BUFFER","SHARED_BUFFER","BYTES_PER_ELEMENT","ArrayProto","Array","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayFind","arrayFindIndex","arrayIncludes","arrayIndexOf","arrayValues","values","arrayKeys","keys","arrayEntries","entries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","join","arraySort","sort","arraySlice","arrayToString","arrayToLocaleString","toLocaleString","ITERATOR","TAG","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","WRONG_LENGTH","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","set","toOffset","BYTES","offset","validate","speciesFromList","list","fromList","addGetter","internal","_d","$from","from","step","iterator","aLen","mapfn","mapping","iterFn","next","done","$of","of","TO_LOCALE_BUG","$toLocaleString","proto","copyWithin","start","every","fill","filter","find","predicate","findIndex","forEach","indexOf","searchElement","includes","separator","map","reverse","middle","some","comparefn","subarray","begin","end","$begin","byteOffset","$slice","$set","arrayLike","src","len","$iterators","isTAIndex","$getDesc","$setDesc","desc","writable","$TypedArrayPrototype$","wrapper","CLAMPED","GETTER","SETTER","TypedArray","Base","TAC","TypedArrayPrototype","addElement","data","v","round","ABV","$offset","$length","byteLength","klass","$len","iter","concat","$nativeIterator","CORRECT_ITER_NAME","$iterator","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","MetadataKey","metadataMap","MetadataValue","_","valueOf","bitmap","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","meta","NEED","fastKey","getWeak","onFreeze","$keys","enumBugKeys","dPs","Empty","createDict","iframeDocument","iframe","style","display","appendChild","contentWindow","document","open","write","lt","close","Properties","BREAK","RETURN","iterable","max","cof","ARG","T","tryGet","callee","Constructor","forbiddenField","safe","_t","px","random","def","stat","DESCRIPTORS","SPECIES","propertyIsEnumerable","hiddenKeys","getOwnPropertyNames","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","getIteratorMethod","SHARED","mode","copyright","IS_INCLUDES","el","fromIndex","getOwnPropertySymbols","isArray","redefine","$iterCreate","setToStringTag","BUGGY","VALUES","returnThis","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","descriptor","D","navigator","userAgent","forOf","each","common","IS_WEAK","ADDER","_c","IS_ADDER","size","getConstructor","setStrong","Typed","TypedArrayConstructors","K","__defineSetter__","COLLECTION","A","cb","mapFn","nextItem","is","createElement","wksExt","$Symbol","charAt","documentElement","getKeys","gOPS","$assign","assign","k","getSymbols","isEnum","j","args","un","repeat","count","str","Infinity","sign","x","$expm1","expm1","TO_STRING","pos","charCodeAt","isRegExp","searchString","MATCH","re","$defineProperty","SAFE_CLOSING","riter","skipClosing","arr","original","endPos","addToUnscopables","iterated","_i","_k","Arguments","defer","channel","port","invoke","html","cel","process","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","ONREADYSTATECHANGE","run","listener","event","nextTick","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","clear","macrotask","Observer","MutationObserver","WebKitMutationObserver","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","standalone","resolve","promise","then","toggle","node","createTextNode","observe","characterData","task","PromiseCapability","reject","$$resolve","$$reject","Reflect","ownKeys","DATA_VIEW","WRONG_INDEX","BaseBuffer","abs","pow","log","LN2","BYTE_LENGTH","BYTE_OFFSET","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","intIndex","pack","_b","conversion","ArrayBufferProto","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","regExp","replacer","part","names","defineProperties","windowNames","getWindowNames","check","setPrototypeOf","buggy","__proto__","factories","bind","partArgs","bound","construct","msg","isInteger","isFinite","$parseFloat","parseFloat","$trim","$parseInt","parseInt","ws","hex","radix","log1p","EPSILON","EPSILON32","MAX32","MIN32","fround","$abs","$sign","ret","memo","isRight","to","inc","newPromiseCapability","promiseCapability","strong","entry","getEntry","$iterDefine","SIZE","_f","_l","r","delete","prev","Set","add","InternalMap","weak","NATIVE_WEAK_MAP","IS_IE11","ActiveXObject","WEAK_MAP","uncaughtFrozenStore","ufstore","WeakMap","$WeakMap","$has","UncaughtFrozenStore","findUncaughtFrozen","splice","getTime","Date","$toISOString","toISOString","lz","num","y","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","number","IS_CONCAT_SPREADABLE","flattenIntoArray","sourceLen","depth","mapper","thisArg","element","spreadable","targetIndex","sourceIndex","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","isEntries","toJSON","scale","inLow","inHigh","outLow","outHigh","isIterable","path","pargs","holder","define","mixin","$fails","wksDefine","enumKeys","_create","gOPNExt","$GOPS","$JSON","JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","SymbolRegistry","AllSymbols","OPSymbols","USE_NATIVE","QObject","setter","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","for","keyFor","useSetter","useSimple","FAILS_ON_PRIMITIVES","$replacer","symbols","$getPrototypeOf","$freeze","freeze","$seal","seal","$preventExtensions","$isFrozen","isFrozen","$isSealed","isSealed","$isExtensible","HAS_INSTANCE","FunctionProto","aNumberValue","$toFixed","toFixed","ERROR","multiply","c2","divide","numToString","t","acc","fractionDigits","z","x2","$toPrecision","toPrecision","precision","_isFinite","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","Number","sqrt","$acosh","acosh","MAX_VALUE","$asinh","asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","div","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LOG10E","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","code","raw","callSite","tpl","$at","codePointAt","context","ENDS_WITH","$endsWith","endsWith","endPosition","search","INCLUDES","STARTS_WITH","$startsWith","startsWith","point","anchor","big","blink","bold","fixed","fontcolor","color","fontsize","italics","link","url","small","strike","sub","sup","createProperty","upTo","cloned","$sort","$forEach","STRICT","$filter","$some","$every","$reduce","$indexOf","NEGATIVE_ZERO","$find","forced","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","PROMISE","versions","v8","$Promise","empty","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_v","ok","_s","reaction","exited","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","WEAK_SET","WeakSet","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","instance","propertyKey","attributes","deleteProperty","Enumerate","enumerate","receiver","getProto","V","existingDescriptor","ownDesc","setProto","pv","$isView","isView","first","fin","viewS","viewT","init","Int8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint32Array","Float32Array","Float64Array","$includes","arraySpeciesCreate","flatMap","flatten","depthArg","at","$pad","WEBKIT_BUG","padStart","padEnd","trimLeft","trimRight","getFlags","RegExpProto","$RegExpStringIterator","regexp","_r","match","matchAll","flags","rx","lastIndex","ignoreCase","multiline","unicode","sticky","getOwnPropertyDescriptors","getDesc","$values","__defineGetter__","__lookupGetter__","__lookupSetter__","isError","clamp","lower","upper","DEG_PER_RAD","PI","RAD_PER_DEG","degrees","radians","fscale","iaddh","x0","x1","y0","y1","$x0","$y0","isubh","imulh","u","$u","$v","u0","v0","u1","v1","umulh","signbit","finally","onFinally","isFunction","try","metadata","toMetaKey","ordinaryDefineOwnMetadata","defineMetadata","metadataKey","metadataValue","deleteMetadata","ordinaryHasOwnMetadata","ordinaryGetOwnMetadata","ordinaryGetMetadata","getMetadata","ordinaryOwnMetadataKeys","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","getOwnMetadata","getOwnMetadataKeys","ordinaryHasMetadata","hasMetadata","hasOwnMetadata","$metadata","decorator","asap","OBSERVABLE","cleanupSubscription","subscription","cleanup","subscriptionClosed","_o","closeSubscription","Subscription","observer","subscriber","SubscriptionObserver","unsubscribe","complete","$Observable","Observable","subscribe","observable","items","$task","TO_STRING_TAG","DOMIterables","Collection","MSIE","time","boundArgs","setInterval","keyOf","createDictMethod","Dict","findKey","createDictIter","DictIterator","dict","mapPairs","isDict","getIterator","partial","delay","make","$re","escape","&","<",">","\"","'","escapeHTML","&","<",">",""","'","unescapeHTML","amd"],"mappings":"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AAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,IACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,IACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBA,EAAoB,KACpBG,EAAOD,QAAUF,EAAoB,MAK/B,SAAUG,EAAQD,EAASF,GAKjC,IAAI4B,EAAS5B,EAAoB,GAC7BgC,EAAMhC,EAAoB,IAC1B6W,EAAc7W,EAAoB,GAClCkC,EAAUlC,EAAoB,GAC9BoY,EAAWpY,EAAoB,IAC/B8T,EAAO9T,EAAoB,IAAI6I,IAC/BgjB,EAAS7rB,EAAoB,GAC7BmT,EAASnT,EAAoB,IAC7BsY,EAAiBtY,EAAoB,IACrC0E,EAAM1E,EAAoB,IAC1B2J,EAAM3J,EAAoB,GAC1Bgb,EAAShb,EAAoB,IAC7B8rB,EAAY9rB,EAAoB,IAChC+rB,EAAW/rB,EAAoB,KAC/BmY,EAAUnY,EAAoB,IAC9B+E,EAAW/E,EAAoB,GAC/BiE,EAAWjE,EAAoB,GAC/B0F,EAAW1F,EAAoB,GAC/BiH,EAAYjH,EAAoB,IAChCiF,EAAcjF,EAAoB,IAClC+G,EAAa/G,EAAoB,IACjCgsB,EAAUhsB,EAAoB,IAC9BisB,EAAUjsB,EAAoB,IAC9BsK,EAAQtK,EAAoB,IAC5BksB,EAAQlsB,EAAoB,IAC5BqK,EAAMrK,EAAoB,GAC1B2U,EAAQ3U,EAAoB,IAC5BkH,EAAOoD,EAAMnF,EACbD,EAAKmF,EAAIlF,EACTsE,EAAOwiB,EAAQ9mB,EACf8V,EAAUrZ,EAAO+C,OACjBwnB,EAAQvqB,EAAOwqB,KACfC,EAAaF,GAASA,EAAMG,UAC5BrqB,EAAY,YACZsqB,EAAS5iB,EAAI,WACb6iB,EAAe7iB,EAAI,eACnB+R,EAAS,GAAG3E,qBACZ0V,EAAiBtZ,EAAO,mBACxBuZ,EAAavZ,EAAO,WACpBwZ,EAAYxZ,EAAO,cACnBvN,EAAc/E,OAAOoB,GACrB2qB,EAA+B,mBAAX3R,KAA2BiR,EAAM/mB,EACrD0nB,EAAUjrB,EAAOirB,QAEjBC,GAAUD,IAAYA,EAAQ5qB,KAAe4qB,EAAQ5qB,GAAW8qB,UAGhEC,EAAgBnW,GAAegV,EAAO,WACxC,OAES,GAFFG,EAAQ9mB,EAAG,GAAI,IAAK,CACzBjE,IAAK,WAAc,OAAOiE,EAAGzB,KAAM,IAAK,CAAE6B,MAAO,IAAK/B,MACpDA,IACD,SAAUW,EAAI7B,EAAKmX,GACtB,IAAIyT,EAAY/lB,EAAKtB,EAAavD,GAC9B4qB,UAAkBrnB,EAAYvD,GAClC6C,EAAGhB,EAAI7B,EAAKmX,GACRyT,GAAa/oB,IAAO0B,GAAaV,EAAGU,EAAavD,EAAK4qB,IACxD/nB,EAEAgoB,EAAO,SAAU/mB,GACnB,IAAIgnB,EAAMT,EAAWvmB,GAAO6lB,EAAQ/Q,EAAQhZ,IAE5C,OADAkrB,EAAI5P,GAAKpX,EACFgnB,GAGLC,EAAWR,GAAyC,iBAApB3R,EAAQrM,SAAuB,SAAU1K,GAC3E,MAAoB,iBAANA,GACZ,SAAUA,GACZ,OAAOA,aAAc+W,GAGnB4B,EAAkB,SAAS/b,eAAeoD,EAAI7B,EAAKmX,GAKrD,OAJItV,IAAO0B,GAAaiX,EAAgB8P,EAAWtqB,EAAKmX,GACxDzU,EAASb,GACT7B,EAAM4C,EAAY5C,GAAK,GACvB0C,EAASyU,GACLxX,EAAI0qB,EAAYrqB,IACbmX,EAAExY,YAIDgB,EAAIkC,EAAIqoB,IAAWroB,EAAGqoB,GAAQlqB,KAAM6B,EAAGqoB,GAAQlqB,IAAO,GAC1DmX,EAAIwS,EAAQxS,EAAG,CAAExY,WAAY+F,EAAW,GAAG,OAJtC/E,EAAIkC,EAAIqoB,IAASrnB,EAAGhB,EAAIqoB,EAAQxlB,EAAW,EAAG,KACnD7C,EAAGqoB,GAAQlqB,IAAO,GAIX2qB,EAAc9oB,EAAI7B,EAAKmX,IACzBtU,EAAGhB,EAAI7B,EAAKmX,IAEnB6T,EAAoB,SAAStI,iBAAiB7gB,EAAInB,GACpDgC,EAASb,GAKT,IAJA,IAGI7B,EAHAwJ,EAAOkgB,EAAShpB,EAAIkE,EAAUlE,IAC9B3C,EAAI,EACJC,EAAIwL,EAAKlI,OAEFvD,EAAJC,GAAOwc,EAAgB3Y,EAAI7B,EAAMwJ,EAAKzL,KAAM2C,EAAEV,IACrD,OAAO6B,GAKLopB,EAAwB,SAASvW,qBAAqB1U,GACxD,IAAIkrB,EAAI7R,EAAOpb,KAAKmD,KAAMpB,EAAM4C,EAAY5C,GAAK,IACjD,QAAIoB,OAASmC,GAAe5D,EAAI0qB,EAAYrqB,KAASL,EAAI2qB,EAAWtqB,QAC7DkrB,IAAMvrB,EAAIyB,KAAMpB,KAASL,EAAI0qB,EAAYrqB,IAAQL,EAAIyB,KAAM8oB,IAAW9oB,KAAK8oB,GAAQlqB,KAAOkrB,IAE/FC,EAA4B,SAASrmB,yBAAyBjD,EAAI7B,GAGpE,GAFA6B,EAAK+C,EAAU/C,GACf7B,EAAM4C,EAAY5C,GAAK,GACnB6B,IAAO0B,IAAe5D,EAAI0qB,EAAYrqB,IAASL,EAAI2qB,EAAWtqB,GAAlE,CACA,IAAImX,EAAItS,EAAKhD,EAAI7B,GAEjB,OADImX,IAAKxX,EAAI0qB,EAAYrqB,IAAUL,EAAIkC,EAAIqoB,IAAWroB,EAAGqoB,GAAQlqB,KAAOmX,EAAExY,YAAa,GAChFwY,IAELiU,GAAuB,SAASxW,oBAAoB/S,GAKtD,IAJA,IAGI7B,EAHAyiB,EAAQrb,EAAKxC,EAAU/C,IACvBoE,EAAS,GACTlI,EAAI,EAEcA,EAAf0kB,EAAMnhB,QACN3B,EAAI0qB,EAAYrqB,EAAMyiB,EAAM1kB,OAASiC,GAAOkqB,GAAUlqB,GAAOyR,GAAMxL,EAAOC,KAAKlG,GACpF,OAAOiG,GAEPolB,GAAyB,SAASxV,sBAAsBhU,GAM1D,IALA,IAII7B,EAJAsrB,EAAQzpB,IAAO0B,EACfkf,EAAQrb,EAAKkkB,EAAQhB,EAAY1lB,EAAU/C,IAC3CoE,EAAS,GACTlI,EAAI,EAEcA,EAAf0kB,EAAMnhB,SACP3B,EAAI0qB,EAAYrqB,EAAMyiB,EAAM1kB,OAAUutB,IAAQ3rB,EAAI4D,EAAavD,IAAciG,EAAOC,KAAKmkB,EAAWrqB,IACxG,OAAOiG,GAINskB,IAYHxU,GAXA6C,EAAU,SAAStW,SACjB,GAAIlB,gBAAgBwX,EAAS,MAAM9W,UAAU,gCAC7C,IAAIgC,EAAMzB,EAAuB,EAAnBhB,UAAUC,OAAaD,UAAU,GAAK7D,IAChDmR,EAAO,SAAU1L,GACf7B,OAASmC,GAAaoL,EAAK1Q,KAAKqsB,EAAWrnB,GAC3CtD,EAAIyB,KAAM8oB,IAAWvqB,EAAIyB,KAAK8oB,GAASpmB,KAAM1C,KAAK8oB,GAAQpmB,IAAO,GACrE6mB,EAAcvpB,KAAM0C,EAAKY,EAAW,EAAGzB,KAGzC,OADIuR,GAAeiW,GAAQE,EAAcpnB,EAAaO,EAAK,CAAEpF,cAAc,EAAM+M,IAAKkD,IAC/Ekc,EAAK/mB,KAEGlE,GAAY,WAAY,SAASuG,WAChD,OAAO/E,KAAK8Z,KAGdjT,EAAMnF,EAAIqoB,EACVnjB,EAAIlF,EAAI0X,EACR7c,EAAoB,IAAImF,EAAI8mB,EAAQ9mB,EAAIsoB,GACxCztB,EAAoB,IAAImF,EAAImoB,EAC5BpB,EAAM/mB,EAAIuoB,GAEN7W,IAAgB7W,EAAoB,KACtCoY,EAASxS,EAAa,uBAAwB0nB,GAAuB,GAGvEtS,EAAO7V,EAAI,SAAUzE,GACnB,OAAOwsB,EAAKvjB,EAAIjJ,MAIpBwB,EAAQA,EAAQS,EAAIT,EAAQiB,EAAIjB,EAAQO,GAAKmqB,EAAY,CAAEjoB,OAAQsW,IAEnE,IAAK,IAAI2S,GAAa,iHAGpBjnB,MAAM,KAAMgV,GAAI,EAAuBA,GAApBiS,GAAWjqB,QAAYgG,EAAIikB,GAAWjS,OAE3D,IAAK,IAAIkS,GAAmBlZ,EAAMhL,EAAIlF,OAAQ+W,GAAI,EAA6BA,GAA1BqS,GAAiBlqB,QAAamoB,EAAU+B,GAAiBrS,OAE9GtZ,EAAQA,EAAQW,EAAIX,EAAQO,GAAKmqB,EAAY,SAAU,CAErDkB,MAAO,SAAUzrB,GACf,OAAOL,EAAIyqB,EAAgBpqB,GAAO,IAC9BoqB,EAAepqB,GACfoqB,EAAepqB,GAAO4Y,EAAQ5Y,IAGpC0rB,OAAQ,SAASA,OAAOZ,GACtB,IAAKC,EAASD,GAAM,MAAMhpB,UAAUgpB,EAAM,qBAC1C,IAAK,IAAI9qB,KAAOoqB,EAAgB,GAAIA,EAAepqB,KAAS8qB,EAAK,OAAO9qB,GAE1E2rB,UAAW,WAAclB,GAAS,GAClCmB,UAAW,WAAcnB,GAAS,KAGpC5qB,EAAQA,EAAQW,EAAIX,EAAQO,GAAKmqB,EAAY,SAAU,CAErD5kB,OA/FY,SAASA,OAAO9D,EAAInB,GAChC,OAAOA,IAAMlD,GAAYmsB,EAAQ9nB,GAAMmpB,EAAkBrB,EAAQ9nB,GAAKnB,IAgGtEjC,eAAgB+b,EAEhBkI,iBAAkBsI,EAElBlmB,yBAA0BqmB,EAE1BvW,oBAAqBwW,GAErBvV,sBAAuBwV,KAKzB,IAAIQ,GAAsBrC,EAAO,WAAcK,EAAM/mB,EAAE,KAEvDjD,EAAQA,EAAQW,EAAIX,EAAQO,EAAIyrB,GAAqB,SAAU,CAC7DhW,sBAAuB,SAASA,sBAAsBhU,GACpD,OAAOgoB,EAAM/mB,EAAEO,EAASxB,OAK5BioB,GAASjqB,EAAQA,EAAQW,EAAIX,EAAQO,IAAMmqB,GAAcf,EAAO,WAC9D,IAAIhpB,EAAIoY,IAIR,MAA0B,UAAnBoR,EAAW,CAACxpB,KAA2C,MAAxBwpB,EAAW,CAAE9oB,EAAGV,KAAyC,MAAzBwpB,EAAWxrB,OAAOgC,OACrF,OAAQ,CACXypB,UAAW,SAASA,UAAUpoB,GAI5B,IAHA,IAEI0gB,EAAUuJ,EAFVvS,EAAO,CAAC1X,GACR9D,EAAI,EAEkBA,EAAnBsD,UAAUC,QAAYiY,EAAKrT,KAAK7E,UAAUtD,MAEjD,GADA+tB,EAAYvJ,EAAWhJ,EAAK,IACvB3X,EAAS2gB,IAAa1gB,IAAOrE,MAAautB,EAASlpB,GAMxD,OALKiU,EAAQyM,KAAWA,EAAW,SAAUviB,EAAKiD,GAEhD,GADwB,mBAAb6oB,IAAyB7oB,EAAQ6oB,EAAU7tB,KAAKmD,KAAMpB,EAAKiD,KACjE8nB,EAAS9nB,GAAQ,OAAOA,IAE/BsW,EAAK,GAAKgJ,EACHyH,EAAWzoB,MAAMuoB,EAAOvQ,MAKnCX,EAAQhZ,GAAWuqB,IAAiBxsB,EAAoB,GAApBA,CAAwBib,EAAQhZ,GAAYuqB,EAAcvR,EAAQhZ,GAAW2R,SAEjH0E,EAAe2C,EAAS,UAExB3C,EAAejU,KAAM,QAAQ,GAE7BiU,EAAe1W,EAAOwqB,KAAM,QAAQ,IAK9B,SAAUjsB,EAAQD,EAASF,GAGjC,IAAIob,EAAUpb,EAAoB,IAC9Bqb,EAAOrb,EAAoB,IAC3BgH,EAAMhH,EAAoB,IAC9BG,EAAOD,QAAU,SAAUgE,GACzB,IAAIoE,EAAS8S,EAAQlX,GACjBuX,EAAaJ,EAAKlW,EACtB,GAAIsW,EAKF,IAJA,IAGIpZ,EAHA+rB,EAAU3S,EAAWvX,GACrBwX,EAAS1U,EAAI7B,EACb/E,EAAI,EAEgBA,EAAjBguB,EAAQzqB,QAAgB+X,EAAOpb,KAAK4D,EAAI7B,EAAM+rB,EAAQhuB,OAAOkI,EAAOC,KAAKlG,GAChF,OAAOiG,IAML,SAAUnI,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAKzC,EAAoB,GAAI,SAAU,CAAEc,eAAgBd,EAAoB,GAAGmF,KAKtG,SAAUhF,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAKzC,EAAoB,GAAI,SAAU,CAAE+kB,iBAAkB/kB,EAAoB,OAKrG,SAAUG,EAAQD,EAASF,GAGjC,IAAIiH,EAAYjH,EAAoB,IAChCwtB,EAA4BxtB,EAAoB,IAAImF,EAExDnF,EAAoB,GAApBA,CAAwB,2BAA4B,WAClD,OAAO,SAASmH,yBAAyBjD,EAAI7B,GAC3C,OAAOmrB,EAA0BvmB,EAAU/C,GAAK7B,OAO9C,SAAUlC,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEmF,OAAQhI,EAAoB,OAKrD,SAAUG,EAAQD,EAASF,GAGjC,IAAI0F,EAAW1F,EAAoB,GAC/BquB,EAAkBruB,EAAoB,IAE1CA,EAAoB,GAApBA,CAAwB,iBAAkB,WACxC,OAAO,SAAS6F,eAAe3B,GAC7B,OAAOmqB,EAAgB3oB,EAASxB,QAO9B,SAAU/D,EAAQD,EAASF,GAGjC,IAAI0F,EAAW1F,EAAoB,GAC/B2U,EAAQ3U,EAAoB,IAEhCA,EAAoB,GAApBA,CAAwB,OAAQ,WAC9B,OAAO,SAAS6L,KAAK3H,GACnB,OAAOyQ,EAAMjP,EAASxB,QAOpB,SAAU/D,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,sBAAuB,WAC7C,OAAOA,EAAoB,IAAImF,KAM3B,SAAUhF,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAC/BsU,EAAOtU,EAAoB,IAAI0U,SAEnC1U,EAAoB,GAApBA,CAAwB,SAAU,SAAUsuB,GAC1C,OAAO,SAASC,OAAOrqB,GACrB,OAAOoqB,GAAWrqB,EAASC,GAAMoqB,EAAQha,EAAKpQ,IAAOA,MAOnD,SAAU/D,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAC/BsU,EAAOtU,EAAoB,IAAI0U,SAEnC1U,EAAoB,GAApBA,CAAwB,OAAQ,SAAUwuB,GACxC,OAAO,SAASC,KAAKvqB,GACnB,OAAOsqB,GAASvqB,EAASC,GAAMsqB,EAAMla,EAAKpQ,IAAOA,MAO/C,SAAU/D,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAC/BsU,EAAOtU,EAAoB,IAAI0U,SAEnC1U,EAAoB,GAApBA,CAAwB,oBAAqB,SAAU0uB,GACrD,OAAO,SAASva,kBAAkBjQ,GAChC,OAAOwqB,GAAsBzqB,EAASC,GAAMwqB,EAAmBpa,EAAKpQ,IAAOA,MAOzE,SAAU/D,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAEnCA,EAAoB,GAApBA,CAAwB,WAAY,SAAU2uB,GAC5C,OAAO,SAASC,SAAS1qB,GACvB,OAAOD,EAASC,MAAMyqB,GAAYA,EAAUzqB,OAO1C,SAAU/D,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAEnCA,EAAoB,GAApBA,CAAwB,WAAY,SAAU6uB,GAC5C,OAAO,SAASC,SAAS5qB,GACvB,OAAOD,EAASC,MAAM2qB,GAAYA,EAAU3qB,OAO1C,SAAU/D,EAAQD,EAASF,GAGjC,IAAIiE,EAAWjE,EAAoB,GAEnCA,EAAoB,GAApBA,CAAwB,eAAgB,SAAU+uB,GAChD,OAAO,SAAS9a,aAAa/P,GAC3B,QAAOD,EAASC,MAAM6qB,GAAgBA,EAAc7qB,QAOlD,SAAU/D,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAG,SAAU,CAAE8Y,OAAQvb,EAAoB,OAKjE,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAClCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEiY,GAAI9a,EAAoB,QAKjD,SAAUG,EAAQD,GAGxBC,EAAOD,QAAUW,OAAOia,IAAM,SAASA,GAAGqB,EAAGkN,GAE3C,OAAOlN,IAAMkN,EAAU,IAANlN,GAAW,EAAIA,GAAM,EAAIkN,EAAIlN,GAAKA,GAAKkN,GAAKA,IAMzD,SAAUlpB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAClCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEsiB,eAAgBnlB,EAAoB,IAAI8N,OAKjE,SAAU3N,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAG,WAAY,CAAEwiB,KAAMvlB,EAAoB,OAKrD,SAAUG,EAAQD,EAASF,GAIjC,IAAIiE,EAAWjE,EAAoB,GAC/B6F,EAAiB7F,EAAoB,IACrCgvB,EAAehvB,EAAoB,EAApBA,CAAuB,eACtCivB,EAAgBprB,SAASrC,UAEvBwtB,KAAgBC,GAAgBjvB,EAAoB,GAAGmF,EAAE8pB,EAAeD,EAAc,CAAE1pB,MAAO,SAAUF,GAC7G,GAAmB,mBAAR3B,OAAuBQ,EAASmB,GAAI,OAAO,EACtD,IAAKnB,EAASR,KAAKjC,WAAY,OAAO4D,aAAa3B,KAEnD,KAAO2B,EAAIS,EAAeT,IAAI,GAAI3B,KAAKjC,YAAc4D,EAAG,OAAO,EAC/D,OAAO,MAMH,SAAUjF,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B6E,EAAY7E,EAAoB,IAChCkvB,EAAelvB,EAAoB,IACnC8b,EAAS9b,EAAoB,IAC7BmvB,EAAW,GAAIC,QACfzmB,EAAQtE,KAAKsE,MACbyJ,EAAO,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GACvBid,EAAQ,wCAGRC,EAAW,SAAUpuB,EAAGV,GAG1B,IAFA,IAAIJ,GAAK,EACLmvB,EAAK/uB,IACAJ,EAAI,GAEXgS,EAAKhS,IADLmvB,GAAMruB,EAAIkR,EAAKhS,IACA,IACfmvB,EAAK5mB,EAAM4mB,EAAK,MAGhBC,EAAS,SAAUtuB,GAGrB,IAFA,IAAId,EAAI,EACJI,EAAI,EACM,KAALJ,GAEPgS,EAAKhS,GAAKuI,GADVnI,GAAK4R,EAAKhS,IACUc,GACpBV,EAAKA,EAAIU,EAAK,KAGduuB,EAAc,WAGhB,IAFA,IAAIrvB,EAAI,EACJuB,EAAI,GACM,KAALvB,GACP,GAAU,KAANuB,GAAkB,IAANvB,GAAuB,IAAZgS,EAAKhS,GAAU,CACxC,IAAIsvB,EAAIrpB,OAAO+L,EAAKhS,IACpBuB,EAAU,KAANA,EAAW+tB,EAAI/tB,EAAIma,EAAOxb,KA1BzB,IA0BoC,EAAIovB,EAAE/rB,QAAU+rB,EAE3D,OAAO/tB,GAEP8f,EAAM,SAAUtF,EAAGjb,EAAGyuB,GACxB,OAAa,IAANzuB,EAAUyuB,EAAMzuB,EAAI,GAAM,EAAIugB,EAAItF,EAAGjb,EAAI,EAAGyuB,EAAMxT,GAAKsF,EAAItF,EAAIA,EAAGjb,EAAI,EAAGyuB,IAelFztB,EAAQA,EAAQa,EAAIb,EAAQO,KAAO0sB,IACV,UAAvB,KAAQC,QAAQ,IACG,MAAnB,GAAIA,QAAQ,IACS,SAArB,MAAMA,QAAQ,IACuB,yBAArC,mBAAsBA,QAAQ,MAC1BpvB,EAAoB,EAApBA,CAAuB,WAE3BmvB,EAAS7uB,KAAK,OACX,SAAU,CACb8uB,QAAS,SAASA,QAAQQ,GACxB,IAIIprB,EAAGqrB,EAAGlU,EAAGH,EAJTW,EAAI+S,EAAazrB,KAAM4rB,GACvBlqB,EAAIN,EAAU+qB,GACdjuB,EAAI,GACJpB,EA3DG,IA6DP,GAAI4E,EAAI,GAAS,GAAJA,EAAQ,MAAMoF,WAAW8kB,GAEtC,GAAIlT,GAAKA,EAAG,MAAO,MACnB,GAAIA,IAAM,MAAa,MAALA,EAAW,OAAO9V,OAAO8V,GAK3C,GAJIA,EAAI,IACNxa,EAAI,IACJwa,GAAKA,GAEC,MAAJA,EAKF,GAHA0T,GADArrB,EArCI,SAAU2X,GAGlB,IAFA,IAAIjb,EAAI,EACJ4uB,EAAK3T,EACI,MAAN2T,GACL5uB,GAAK,GACL4uB,GAAM,KAER,KAAa,GAANA,GACL5uB,GAAK,EACL4uB,GAAM,EACN,OAAO5uB,EA2BDwgB,CAAIvF,EAAIsF,EAAI,EAAG,GAAI,IAAM,IACrB,EAAItF,EAAIsF,EAAI,GAAIjd,EAAG,GAAK2X,EAAIsF,EAAI,EAAGjd,EAAG,GAC9CqrB,GAAK,iBAEG,GADRrrB,EAAI,GAAKA,GACE,CAGT,IAFA8qB,EAAS,EAAGO,GACZlU,EAAIxW,EACQ,GAALwW,GACL2T,EAAS,IAAK,GACd3T,GAAK,EAIP,IAFA2T,EAAS7N,EAAI,GAAI9F,EAAG,GAAI,GACxBA,EAAInX,EAAI,EACI,IAALmX,GACL6T,EAAO,GAAK,IACZ7T,GAAK,GAEP6T,EAAO,GAAK7T,GACZ2T,EAAS,EAAG,GACZE,EAAO,GACPjvB,EAAIkvB,SAEJH,EAAS,EAAGO,GACZP,EAAS,IAAM9qB,EAAG,GAClBjE,EAAIkvB,IAAgB3T,EAAOxb,KA9FxB,IA8FmC6E,GAQxC,OAHA5E,EAFM,EAAJ4E,EAEExD,IADJ6Z,EAAIjb,EAAEoD,SACQwB,EAAI,KAAO2W,EAAOxb,KAnG3B,IAmGsC6E,EAAIqW,GAAKjb,EAAIA,EAAEkI,MAAM,EAAG+S,EAAIrW,GAAK,IAAM5E,EAAEkI,MAAM+S,EAAIrW,IAE1FxD,EAAIpB,MAQR,SAAUJ,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B6rB,EAAS7rB,EAAoB,GAC7BkvB,EAAelvB,EAAoB,IACnC+vB,EAAe,GAAIC,YAEvB9tB,EAAQA,EAAQa,EAAIb,EAAQO,GAAKopB,EAAO,WAEtC,MAA2C,MAApCkE,EAAazvB,KAAK,EAAGT,QACvBgsB,EAAO,WAEZkE,EAAazvB,KAAK,OACf,SAAU,CACb0vB,YAAa,SAASA,YAAYC,GAChC,IAAInpB,EAAOooB,EAAazrB,KAAM,6CAC9B,OAAOwsB,IAAcpwB,GAAYkwB,EAAazvB,KAAKwG,GAAQipB,EAAazvB,KAAKwG,EAAMmpB,OAOjF,SAAU9vB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAE0jB,QAASliB,KAAKod,IAAI,GAAI,OAK/C,SAAUthB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BkwB,EAAYlwB,EAAoB,GAAG6lB,SAEvC3jB,EAAQA,EAAQW,EAAG,SAAU,CAC3BgjB,SAAU,SAASA,SAAS3hB,GAC1B,MAAoB,iBAANA,GAAkBgsB,EAAUhsB,OAOxC,SAAU/D,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAE+iB,UAAW5lB,EAAoB,OAKxD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAC3B+F,MAAO,SAASA,MAAMihB,GAEpB,OAAOA,GAAUA,MAOf,SAAU1pB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B4lB,EAAY5lB,EAAoB,IAChCwhB,EAAMnd,KAAKmd,IAEftf,EAAQA,EAAQW,EAAG,SAAU,CAC3BstB,cAAe,SAASA,cAActG,GACpC,OAAOjE,EAAUiE,IAAWrI,EAAIqI,IAAW,qBAOzC,SAAU1pB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEutB,iBAAkB,oBAK3C,SAAUjwB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEwtB,kBAAmB,oBAK5C,SAAUlwB,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9B8lB,EAAc9lB,EAAoB,IAEtCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAK6tB,OAAOvK,YAAcD,GAAc,SAAU,CAAEC,WAAYD,KAKtF,SAAU3lB,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9BimB,EAAYjmB,EAAoB,KAEpCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAK6tB,OAAOpK,UAAYD,GAAY,SAAU,CAAEC,SAAUD,KAKhF,SAAU9lB,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9BimB,EAAYjmB,EAAoB,KAEpCkC,EAAQA,EAAQS,EAAIT,EAAQO,GAAKyjB,UAAYD,GAAY,CAAEC,SAAUD,KAK/D,SAAU9lB,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9B8lB,EAAc9lB,EAAoB,IAEtCkC,EAAQA,EAAQS,EAAIT,EAAQO,GAAKsjB,YAAcD,GAAc,CAAEC,WAAYD,KAKrE,SAAU3lB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BsmB,EAAQtmB,EAAoB,KAC5BuwB,EAAOlsB,KAAKksB,KACZC,EAASnsB,KAAKosB,MAElBvuB,EAAQA,EAAQW,EAAIX,EAAQO,IAAM+tB,GAEW,KAAxCnsB,KAAKsE,MAAM6nB,EAAOF,OAAOI,aAEzBF,EAAOvU,WAAaA,UACtB,OAAQ,CACTwU,MAAO,SAASA,MAAMtU,GACpB,OAAQA,GAAKA,GAAK,EAAIuG,IAAU,kBAAJvG,EACxB9X,KAAKqd,IAAIvF,GAAK9X,KAAKsd,IACnB2E,EAAMnK,EAAI,EAAIoU,EAAKpU,EAAI,GAAKoU,EAAKpU,EAAI,QAOvC,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B2wB,EAAStsB,KAAKusB,MAOlB1uB,EAAQA,EAAQW,EAAIX,EAAQO,IAAMkuB,GAA0B,EAAhB,EAAIA,EAAO,IAAS,OAAQ,CAAEC,MAL1E,SAASA,MAAMzU,GACb,OAAQ0J,SAAS1J,GAAKA,IAAW,GAALA,EAAaA,EAAI,GAAKyU,OAAOzU,GAAK9X,KAAKqd,IAAIvF,EAAI9X,KAAKksB,KAAKpU,EAAIA,EAAI,IAAxDA,MASjC,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B6wB,EAASxsB,KAAKysB,MAGlB5uB,EAAQA,EAAQW,EAAIX,EAAQO,IAAMouB,GAAU,EAAIA,GAAQ,GAAK,GAAI,OAAQ,CACvEC,MAAO,SAASA,MAAM3U,GACpB,OAAmB,IAAXA,GAAKA,GAAUA,EAAI9X,KAAKqd,KAAK,EAAIvF,IAAM,EAAIA,IAAM,MAOvD,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Bkc,EAAOlc,EAAoB,IAE/BkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBkuB,KAAM,SAASA,KAAK5U,GAClB,OAAOD,EAAKC,GAAKA,GAAK9X,KAAKod,IAAIpd,KAAKmd,IAAIrF,GAAI,EAAI,OAO9C,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBmuB,MAAO,SAASA,MAAM7U,GACpB,OAAQA,KAAO,GAAK,GAAK9X,KAAKsE,MAAMtE,KAAKqd,IAAIvF,EAAI,IAAO9X,KAAK4sB,OAAS,OAOpE,SAAU9wB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B8I,EAAMzE,KAAKyE,IAEf5G,EAAQA,EAAQW,EAAG,OAAQ,CACzBquB,KAAM,SAASA,KAAK/U,GAClB,OAAQrT,EAAIqT,GAAKA,GAAKrT,GAAKqT,IAAM,MAO/B,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Boc,EAASpc,EAAoB,IAEjCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAK2Z,GAAU/X,KAAKgY,OAAQ,OAAQ,CAAEA,MAAOD,KAKnE,SAAUjc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAE8jB,OAAQ3mB,EAAoB,QAKnD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BwhB,EAAMnd,KAAKmd,IAEftf,EAAQA,EAAQW,EAAG,OAAQ,CACzBsuB,MAAO,SAASA,MAAMC,EAAQC,GAM5B,IALA,IAIIhqB,EAAKiqB,EAJLC,EAAM,EACNnxB,EAAI,EACJyO,EAAOnL,UAAUC,OACjB6tB,EAAO,EAEJpxB,EAAIyO,GAEL2iB,GADJnqB,EAAMma,EAAI9d,UAAUtD,QAGlBmxB,EAAMA,GADND,EAAME,EAAOnqB,GACKiqB,EAAM,EACxBE,EAAOnqB,GAGPkqB,GAFe,EAANlqB,GACTiqB,EAAMjqB,EAAMmqB,GACCF,EACDjqB,EAEhB,OAAOmqB,IAASvV,SAAWA,SAAWuV,EAAOntB,KAAKksB,KAAKgB,OAOrD,SAAUpxB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9ByxB,EAAQptB,KAAKqtB,KAGjBxvB,EAAQA,EAAQW,EAAIX,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACrD,OAAgC,GAAzByxB,EAAM,WAAY,IAA4B,GAAhBA,EAAM9tB,SACzC,OAAQ,CACV+tB,KAAM,SAASA,KAAKvV,EAAGkN,GACrB,IAAIsI,EAAS,MACTC,GAAMzV,EACN0V,GAAMxI,EACNyI,EAAKH,EAASC,EACdG,EAAKJ,EAASE,EAClB,OAAO,EAAIC,EAAKC,IAAOJ,EAASC,IAAO,IAAMG,EAAKD,GAAMH,EAASE,IAAO,KAAO,KAAO,OAOpF,SAAU1xB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBmvB,MAAO,SAASA,MAAM7V,GACpB,OAAO9X,KAAKqd,IAAIvF,GAAK9X,KAAK4tB,WAOxB,SAAU9xB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAEyjB,MAAOtmB,EAAoB,QAKlD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBqvB,KAAM,SAASA,KAAK/V,GAClB,OAAO9X,KAAKqd,IAAIvF,GAAK9X,KAAKsd,QAOxB,SAAUxhB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAEqZ,KAAMlc,EAAoB,OAKjD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Bqc,EAAQrc,EAAoB,IAC5B8I,EAAMzE,KAAKyE,IAGf5G,EAAQA,EAAQW,EAAIX,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACrD,OAA8B,QAAtBqE,KAAK8tB,MAAM,SACjB,OAAQ,CACVA,KAAM,SAASA,KAAKhW,GAClB,OAAO9X,KAAKmd,IAAIrF,GAAKA,GAAK,GACrBE,EAAMF,GAAKE,GAAOF,IAAM,GACxBrT,EAAIqT,EAAI,GAAKrT,GAAKqT,EAAI,KAAO9X,KAAKkpB,EAAI,OAOzC,SAAUptB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Bqc,EAAQrc,EAAoB,IAC5B8I,EAAMzE,KAAKyE,IAEf5G,EAAQA,EAAQW,EAAG,OAAQ,CACzBuvB,KAAM,SAASA,KAAKjW,GAClB,IAAI5Y,EAAI8Y,EAAMF,GAAKA,GACf3Y,EAAI6Y,GAAOF,GACf,OAAO5Y,GAAK0Y,SAAW,EAAIzY,GAAKyY,UAAY,GAAK1Y,EAAIC,IAAMsF,EAAIqT,GAAKrT,GAAKqT,QAOvE,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBwvB,MAAO,SAASA,MAAMnuB,GACpB,OAAa,EAALA,EAASG,KAAKsE,MAAQtE,KAAKqE,MAAMxE,OAOvC,SAAU/D,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9BsJ,EAAkBtJ,EAAoB,IACtCsyB,EAAejsB,OAAOisB,aACtBC,EAAiBlsB,OAAOmsB,cAG5BtwB,EAAQA,EAAQW,EAAIX,EAAQO,KAAO8vB,GAA2C,GAAzBA,EAAe5uB,QAAc,SAAU,CAE1F6uB,cAAe,SAASA,cAAcrW,GAKpC,IAJA,IAGIsW,EAHArqB,EAAM,GACNyG,EAAOnL,UAAUC,OACjBvD,EAAI,EAEMA,EAAPyO,GAAU,CAEf,GADA4jB,GAAQ/uB,UAAUtD,KACdkJ,EAAgBmpB,EAAM,WAAcA,EAAM,MAAMloB,WAAWkoB,EAAO,8BACtErqB,EAAIG,KAAKkqB,EAAO,MACZH,EAAaG,GACbH,EAAyC,QAA1BG,GAAQ,QAAY,IAAcA,EAAO,KAAQ,QAEpE,OAAOrqB,EAAImE,KAAK,QAOhB,SAAUpM,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9BiH,EAAYjH,EAAoB,IAChCsH,EAAWtH,EAAoB,GAEnCkC,EAAQA,EAAQW,EAAG,SAAU,CAE3B6vB,IAAK,SAASA,IAAIC,GAMhB,IALA,IAAIC,EAAM3rB,EAAU0rB,EAASD,KACzBvhB,EAAM7J,EAASsrB,EAAIjvB,QACnBkL,EAAOnL,UAAUC,OACjByE,EAAM,GACNhI,EAAI,EACKA,EAAN+Q,GACL/I,EAAIG,KAAKlC,OAAOusB,EAAIxyB,OAChBA,EAAIyO,GAAMzG,EAAIG,KAAKlC,OAAO3C,UAAUtD,KACxC,OAAOgI,EAAImE,KAAK,QAOhB,SAAUpM,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,OAAQ,SAAUgmB,GACxC,OAAO,SAAStO,OACd,OAAOsO,EAAMviB,KAAM,OAOjB,SAAUtD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B6yB,EAAM7yB,EAAoB,GAApBA,EAAwB,GAClCkC,EAAQA,EAAQa,EAAG,SAAU,CAE3B+vB,YAAa,SAASA,YAAYvW,GAChC,OAAOsW,EAAIpvB,KAAM8Y,OAOf,SAAUpc,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9BsH,EAAWtH,EAAoB,GAC/B+yB,EAAU/yB,EAAoB,IAC9BgzB,EAAY,WACZC,EAAY,GAAGD,GAEnB9wB,EAAQA,EAAQa,EAAIb,EAAQO,EAAIzC,EAAoB,GAApBA,CAAwBgzB,GAAY,SAAU,CAC5EE,SAAU,SAASA,SAASxW,GAC1B,IAAI5V,EAAOisB,EAAQtvB,KAAMiZ,EAAcsW,GACnCG,EAAiC,EAAnBzvB,UAAUC,OAAaD,UAAU,GAAK7D,GACpDsR,EAAM7J,EAASR,EAAKnD,QACpBiN,EAAMuiB,IAAgBtzB,GAAYsR,EAAM9M,KAAKS,IAAIwC,EAAS6rB,GAAchiB,GACxEiiB,EAAS/sB,OAAOqW,GACpB,OAAOuW,EACHA,EAAU3yB,KAAKwG,EAAMssB,EAAQxiB,GAC7B9J,EAAK2B,MAAMmI,EAAMwiB,EAAOzvB,OAAQiN,KAASwiB,MAO3C,SAAUjzB,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B+yB,EAAU/yB,EAAoB,IAC9BqzB,EAAW,WAEfnxB,EAAQA,EAAQa,EAAIb,EAAQO,EAAIzC,EAAoB,GAApBA,CAAwBqzB,GAAW,SAAU,CAC3EljB,SAAU,SAASA,SAASuM,GAC1B,SAAUqW,EAAQtvB,KAAMiZ,EAAc2W,GACnCpjB,QAAQyM,EAAiC,EAAnBhZ,UAAUC,OAAaD,UAAU,GAAK7D,QAO7D,SAAUM,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAG,SAAU,CAE3B+Y,OAAQ9b,EAAoB,OAMxB,SAAUG,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9BsH,EAAWtH,EAAoB,GAC/B+yB,EAAU/yB,EAAoB,IAC9BszB,EAAc,aACdC,EAAc,GAAGD,GAErBpxB,EAAQA,EAAQa,EAAIb,EAAQO,EAAIzC,EAAoB,GAApBA,CAAwBszB,GAAc,SAAU,CAC9EE,WAAY,SAASA,WAAW9W,GAC9B,IAAI5V,EAAOisB,EAAQtvB,KAAMiZ,EAAc4W,GACnCjrB,EAAQf,EAASjD,KAAKS,IAAuB,EAAnBpB,UAAUC,OAAaD,UAAU,GAAK7D,GAAWiH,EAAKnD,SAChFyvB,EAAS/sB,OAAOqW,GACpB,OAAO6W,EACHA,EAAYjzB,KAAKwG,EAAMssB,EAAQ/qB,GAC/BvB,EAAK2B,MAAMJ,EAAOA,EAAQ+qB,EAAOzvB,UAAYyvB,MAO/C,SAAUjzB,EAAQD,EAASF,GAIjC,IAAI6yB,EAAM7yB,EAAoB,GAApBA,EAAwB,GAGlCA,EAAoB,GAApBA,CAAwBqG,OAAQ,SAAU,SAAUgX,GAClD5Z,KAAK+S,GAAKnQ,OAAOgX,GACjB5Z,KAAK6Z,GAAK,GAET,WACD,IAEImW,EAFAruB,EAAI3B,KAAK+S,GACTnO,EAAQ5E,KAAK6Z,GAEjB,OAAalY,EAAEzB,QAAX0E,EAA0B,CAAE/C,MAAOzF,GAAWqP,MAAM,IACxDukB,EAAQZ,EAAIztB,EAAGiD,GACf5E,KAAK6Z,IAAMmW,EAAM9vB,OACV,CAAE2B,MAAOmuB,EAAOvkB,MAAM,OAMzB,SAAU/O,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,SAAU,SAAUiG,GAC1C,OAAO,SAASytB,OAAOhzB,GACrB,OAAOuF,EAAWxC,KAAM,IAAK,OAAQ/C,OAOnC,SAAUP,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,MAAO,SAAUiG,GACvC,OAAO,SAAS0tB,MACd,OAAO1tB,EAAWxC,KAAM,MAAO,GAAI,QAOjC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,QAAS,SAAUiG,GACzC,OAAO,SAAS2tB,QACd,OAAO3tB,EAAWxC,KAAM,QAAS,GAAI,QAOnC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,OAAQ,SAAUiG,GACxC,OAAO,SAAS4tB,OACd,OAAO5tB,EAAWxC,KAAM,IAAK,GAAI,QAO/B,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,QAAS,SAAUiG,GACzC,OAAO,SAAS6tB,QACd,OAAO7tB,EAAWxC,KAAM,KAAM,GAAI,QAOhC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,YAAa,SAAUiG,GAC7C,OAAO,SAAS8tB,UAAUC,GACxB,OAAO/tB,EAAWxC,KAAM,OAAQ,QAASuwB,OAOvC,SAAU7zB,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,WAAY,SAAUiG,GAC5C,OAAO,SAASguB,SAAS/Z,GACvB,OAAOjU,EAAWxC,KAAM,OAAQ,OAAQyW,OAOtC,SAAU/Z,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,UAAW,SAAUiG,GAC3C,OAAO,SAASiuB,UACd,OAAOjuB,EAAWxC,KAAM,IAAK,GAAI,QAO/B,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,OAAQ,SAAUiG,GACxC,OAAO,SAASkuB,KAAKC,GACnB,OAAOnuB,EAAWxC,KAAM,IAAK,OAAQ2wB,OAOnC,SAAUj0B,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,QAAS,SAAUiG,GACzC,OAAO,SAASouB,QACd,OAAOpuB,EAAWxC,KAAM,QAAS,GAAI,QAOnC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,SAAU,SAAUiG,GAC1C,OAAO,SAASquB,SACd,OAAOruB,EAAWxC,KAAM,SAAU,GAAI,QAOpC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,MAAO,SAAUiG,GACvC,OAAO,SAASsuB,MACd,OAAOtuB,EAAWxC,KAAM,MAAO,GAAI,QAOjC,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,MAAO,SAAUiG,GACvC,OAAO,SAASuuB,MACd,OAAOvuB,EAAWxC,KAAM,MAAO,GAAI,QAOjC,SAAUtD,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,QAAS,CAAEsV,QAASnY,EAAoB,OAKrD,SAAUG,EAAQD,EAASF,GAIjC,IAAI8B,EAAM9B,EAAoB,IAC1BkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/BM,EAAON,EAAoB,KAC3BwJ,EAAcxJ,EAAoB,IAClCsH,EAAWtH,EAAoB,GAC/By0B,EAAiBz0B,EAAoB,IACrC0J,EAAY1J,EAAoB,IAEpCkC,EAAQA,EAAQW,EAAIX,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,SAAU6S,GAAQhI,MAAM6D,KAAKmE,KAAW,QAAS,CAExGnE,KAAM,SAASA,KAAKuC,GAClB,IAOItN,EAAQ2E,EAAQqG,EAAMC,EAPtBxJ,EAAIM,EAASuL,GACb3N,EAAmB,mBAARG,KAAqBA,KAAOoH,MACvCgE,EAAOnL,UAAUC,OACjBmL,EAAe,EAAPD,EAAWnL,UAAU,GAAK7D,GAClCkP,EAAUD,IAAUjP,GACpBwI,EAAQ,EACR2G,EAAStF,EAAUtE,GAIvB,GAFI2J,IAASD,EAAQhN,EAAIgN,EAAc,EAAPD,EAAWnL,UAAU,GAAK7D,GAAW,IAEjEmP,GAAUnP,IAAeyD,GAAKuH,OAASrB,EAAYwF,GAMrD,IAAK1G,EAAS,IAAIhF,EADlBK,EAAS2D,EAASlC,EAAEzB,SACkB0E,EAAT1E,EAAgB0E,IAC3CosB,EAAensB,EAAQD,EAAO0G,EAAUD,EAAM1J,EAAEiD,GAAQA,GAASjD,EAAEiD,SANrE,IAAKuG,EAAWI,EAAO1O,KAAK8E,GAAIkD,EAAS,IAAIhF,IAAOqL,EAAOC,EAASK,QAAQC,KAAM7G,IAChFosB,EAAensB,EAAQD,EAAO0G,EAAUzO,EAAKsO,EAAUE,EAAO,CAACH,EAAKrJ,MAAO+C,IAAQ,GAAQsG,EAAKrJ,OASpG,OADAgD,EAAO3E,OAAS0E,EACTC,MAOL,SAAUnI,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9By0B,EAAiBz0B,EAAoB,IAGzCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACrD,SAASyC,KACT,QAASoI,MAAMuE,GAAG9O,KAAKmC,aAAcA,KACnC,QAAS,CAEX2M,GAAI,SAASA,KAIX,IAHA,IAAI/G,EAAQ,EACRwG,EAAOnL,UAAUC,OACjB2E,EAAS,IAAoB,mBAAR7E,KAAqBA,KAAOoH,OAAOgE,GAC9CxG,EAAPwG,GAAc4lB,EAAensB,EAAQD,EAAO3E,UAAU2E,MAE7D,OADAC,EAAO3E,OAASkL,EACTvG,MAOL,SAAUnI,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9BiH,EAAYjH,EAAoB,IAChCsM,EAAY,GAAGC,KAGnBrK,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,KAAOa,SAAWb,EAAoB,GAApBA,CAAwBsM,IAAa,QAAS,CACnHC,KAAM,SAASA,KAAK6D,GAClB,OAAO9D,EAAUhM,KAAK2G,EAAUxD,MAAO2M,IAAcvQ,GAAY,IAAMuQ,OAOrE,SAAUjQ,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B6d,EAAO7d,EAAoB,IAC3BgW,EAAMhW,EAAoB,IAC1BsJ,EAAkBtJ,EAAoB,IACtCsH,EAAWtH,EAAoB,GAC/B0M,EAAa,GAAGjE,MAGpBvG,EAAQA,EAAQa,EAAIb,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACjD6d,GAAMnR,EAAWpM,KAAKud,KACxB,QAAS,CACXpV,MAAO,SAASA,MAAMkI,EAAOC,GAC3B,IAAIO,EAAM7J,EAAS7D,KAAKE,QACpBgP,EAAQqD,EAAIvS,MAEhB,GADAmN,EAAMA,IAAQ/Q,GAAYsR,EAAMP,EACnB,SAAT+B,EAAkB,OAAOjG,EAAWpM,KAAKmD,KAAMkN,EAAOC,GAM1D,IALA,IAAInB,EAAQnG,EAAgBqH,EAAOQ,GAC/BujB,EAAOprB,EAAgBsH,EAAKO,GAC5B+I,EAAO5S,EAASotB,EAAOjlB,GACvBklB,EAAS,IAAI9pB,MAAMqP,GACnB9Z,EAAI,EACDA,EAAI8Z,EAAM9Z,IAAKu0B,EAAOv0B,GAAc,UAATuS,EAC9BlP,KAAKyX,OAAOzL,EAAQrP,GACpBqD,KAAKgM,EAAQrP,GACjB,OAAOu0B,MAOL,SAAUx0B,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B4G,EAAY5G,EAAoB,IAChC0F,EAAW1F,EAAoB,GAC/B+F,EAAQ/F,EAAoB,GAC5B40B,EAAQ,GAAGnoB,KACXhG,EAAO,CAAC,EAAG,EAAG,GAElBvE,EAAQA,EAAQa,EAAIb,EAAQO,GAAKsD,EAAM,WAErCU,EAAKgG,KAAK5M,QACLkG,EAAM,WAEXU,EAAKgG,KAAK,UAELzM,EAAoB,GAApBA,CAAwB40B,IAAS,QAAS,CAE/CnoB,KAAM,SAASA,KAAKgE,GAClB,OAAOA,IAAc5Q,GACjB+0B,EAAMt0B,KAAKoF,EAASjC,OACpBmxB,EAAMt0B,KAAKoF,EAASjC,MAAOmD,EAAU6J,QAOvC,SAAUtQ,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B60B,EAAW70B,EAAoB,GAApBA,CAAwB,GACnC80B,EAAS90B,EAAoB,GAApBA,CAAwB,GAAGgQ,SAAS,GAEjD9N,EAAQA,EAAQa,EAAIb,EAAQO,GAAKqyB,EAAQ,QAAS,CAEhD9kB,QAAS,SAASA,QAAQ9H,GACxB,OAAO2sB,EAASpxB,KAAMyE,EAAYxE,UAAU,QAO1C,SAAUvD,EAAQD,EAASF,GAEjC,IAAIiE,EAAWjE,EAAoB,GAC/BmY,EAAUnY,EAAoB,IAC9B8W,EAAU9W,EAAoB,EAApBA,CAAuB,WAErCG,EAAOD,QAAU,SAAUgd,GACzB,IAAI5Z,EASF,OARE6U,EAAQ+E,KAGM,mBAFhB5Z,EAAI4Z,EAASpX,cAEkBxC,IAAMuH,QAASsN,EAAQ7U,EAAE9B,aAAa8B,EAAIzD,IACrEoE,EAASX,IAED,QADVA,EAAIA,EAAEwT,MACUxT,EAAIzD,KAEfyD,IAAMzD,GAAYgL,MAAQvH,IAM/B,SAAUnD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9BwN,EAAOxN,EAAoB,GAApBA,CAAwB,GAEnCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAGqQ,KAAK,GAAO,QAAS,CAE/EA,IAAK,SAASA,IAAInI,GAChB,OAAOsF,EAAK/J,KAAMyE,EAAYxE,UAAU,QAOtC,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B+0B,EAAU/0B,EAAoB,GAApBA,CAAwB,GAEtCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAG4P,QAAQ,GAAO,QAAS,CAElFA,OAAQ,SAASA,OAAO1H,GACtB,OAAO6sB,EAAQtxB,KAAMyE,EAAYxE,UAAU,QAOzC,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9Bg1B,EAAQh1B,EAAoB,GAApBA,CAAwB,GAEpCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAGwQ,MAAM,GAAO,QAAS,CAEhFA,KAAM,SAASA,KAAKtI,GAClB,OAAO8sB,EAAMvxB,KAAMyE,EAAYxE,UAAU,QAOvC,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9Bi1B,EAASj1B,EAAoB,GAApBA,CAAwB,GAErCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAG0P,OAAO,GAAO,QAAS,CAEjFA,MAAO,SAASA,MAAMxH,GACpB,OAAO+sB,EAAOxxB,KAAMyE,EAAYxE,UAAU,QAOxC,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9Bk1B,EAAUl1B,EAAoB,KAElCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAGmM,QAAQ,GAAO,QAAS,CAElFA,OAAQ,SAASA,OAAOjE,GACtB,OAAOgtB,EAAQzxB,KAAMyE,EAAYxE,UAAUC,OAAQD,UAAU,IAAI,OAO/D,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9Bk1B,EAAUl1B,EAAoB,KAElCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKzC,EAAoB,GAApBA,CAAwB,GAAGqM,aAAa,GAAO,QAAS,CAEvFA,YAAa,SAASA,YAAYnE,GAChC,OAAOgtB,EAAQzxB,KAAMyE,EAAYxE,UAAUC,OAAQD,UAAU,IAAI,OAO/D,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9Bm1B,EAAWn1B,EAAoB,GAApBA,EAAwB,GACnCmZ,EAAU,GAAGlJ,QACbmlB,IAAkBjc,GAAW,EAAI,CAAC,GAAGlJ,QAAQ,GAAI,GAAK,EAE1D/N,EAAQA,EAAQa,EAAIb,EAAQO,GAAK2yB,IAAkBp1B,EAAoB,GAApBA,CAAwBmZ,IAAW,QAAS,CAE7FlJ,QAAS,SAASA,QAAQC,GACxB,OAAOklB,EAEHjc,EAAQvV,MAAMH,KAAMC,YAAc,EAClCyxB,EAAS1xB,KAAMyM,EAAexM,UAAU,QAO1C,SAAUvD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9BiH,EAAYjH,EAAoB,IAChC6E,EAAY7E,EAAoB,IAChCsH,EAAWtH,EAAoB,GAC/BmZ,EAAU,GAAGlN,YACbmpB,IAAkBjc,GAAW,EAAI,CAAC,GAAGlN,YAAY,GAAI,GAAK,EAE9D/J,EAAQA,EAAQa,EAAIb,EAAQO,GAAK2yB,IAAkBp1B,EAAoB,GAApBA,CAAwBmZ,IAAW,QAAS,CAE7FlN,YAAa,SAASA,YAAYiE,GAEhC,GAAIklB,EAAe,OAAOjc,EAAQvV,MAAMH,KAAMC,YAAc,EAC5D,IAAI0B,EAAI6B,EAAUxD,MACdE,EAAS2D,EAASlC,EAAEzB,QACpB0E,EAAQ1E,EAAS,EAGrB,IAFuB,EAAnBD,UAAUC,SAAY0E,EAAQhE,KAAKS,IAAIuD,EAAOxD,EAAUnB,UAAU,MAClE2E,EAAQ,IAAGA,EAAQ1E,EAAS0E,GACjB,GAATA,EAAYA,IAAS,GAAIA,KAASjD,GAAOA,EAAEiD,KAAW6H,EAAe,OAAO7H,GAAS,EAC3F,OAAQ,MAON,SAAUlI,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAG,QAAS,CAAEyM,WAAYxP,EAAoB,OAE9DA,EAAoB,GAApBA,CAAwB,eAKlB,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAG,QAAS,CAAE4M,KAAM3P,EAAoB,MAExDA,EAAoB,GAApBA,CAAwB,SAKlB,SAAUG,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9Bq1B,EAAQr1B,EAAoB,GAApBA,CAAwB,GAChC6I,EAAM,OACNysB,GAAS,EAETzsB,IAAO,IAAIgC,MAAM,GAAGhC,GAAK,WAAcysB,GAAS,IACpDpzB,EAAQA,EAAQa,EAAIb,EAAQO,EAAI6yB,EAAQ,QAAS,CAC/CzlB,KAAM,SAASA,KAAK3H,GAClB,OAAOmtB,EAAM5xB,KAAMyE,EAA+B,EAAnBxE,UAAUC,OAAaD,UAAU,GAAK7D,OAGzEG,EAAoB,GAApBA,CAAwB6I,IAKlB,SAAU1I,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9Bq1B,EAAQr1B,EAAoB,GAApBA,CAAwB,GAChC6I,EAAM,YACNysB,GAAS,EAETzsB,IAAO,IAAIgC,MAAM,GAAGhC,GAAK,WAAcysB,GAAS,IACpDpzB,EAAQA,EAAQa,EAAIb,EAAQO,EAAI6yB,EAAQ,QAAS,CAC/CvlB,UAAW,SAASA,UAAU7H,GAC5B,OAAOmtB,EAAM5xB,KAAMyE,EAA+B,EAAnBxE,UAAUC,OAAaD,UAAU,GAAK7D,OAGzEG,EAAoB,GAApBA,CAAwB6I,IAKlB,SAAU1I,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,UAKlB,SAAUG,EAAQD,KAOlB,SAAUC,EAAQD,EAASF,GAIjC,IAwBIu1B,EAAUC,EAA6BC,EAAsBC,EAxB7D3sB,EAAU/I,EAAoB,IAC9B4B,EAAS5B,EAAoB,GAC7B8B,EAAM9B,EAAoB,IAC1BuJ,EAAUvJ,EAAoB,IAC9BkC,EAAUlC,EAAoB,GAC9BiE,EAAWjE,EAAoB,GAC/B4G,EAAY5G,EAAoB,IAChCkJ,EAAalJ,EAAoB,IACjC2Z,EAAQ3Z,EAAoB,IAC5B8J,EAAqB9J,EAAoB,IACzC8gB,EAAO9gB,EAAoB,IAAI8N,IAC/B6nB,EAAY31B,EAAoB,GAApBA,GACZ41B,EAA6B51B,EAAoB,IACjD61B,EAAU71B,EAAoB,KAC9B0Z,EAAY1Z,EAAoB,IAChC81B,EAAiB91B,EAAoB,KACrC+1B,EAAU,UACV5xB,EAAYvC,EAAOuC,UACnB4Z,EAAUnc,EAAOmc,QACjBiY,EAAWjY,GAAWA,EAAQiY,SAC9BC,EAAKD,GAAYA,EAASC,IAAM,GAChCC,EAAWt0B,EAAOm0B,GAClBnW,EAA6B,WAApBrW,EAAQwU,GACjBoY,EAAQ,aAERhP,EAAuBqO,EAA8BI,EAA2BzwB,EAEhFynB,IAAe,WACjB,IAEE,IAAIrM,EAAU2V,EAAS5V,QAAQ,GAC3B8V,GAAe7V,EAAQza,YAAc,IAAI9F,EAAoB,EAApBA,CAAuB,YAAc,SAAUuE,GAC1FA,EAAK4xB,EAAOA,IAGd,OAAQvW,GAA0C,mBAAzByW,wBACpB9V,EAAQC,KAAK2V,aAAkBC,GAIT,IAAtBH,EAAGhmB,QAAQ,SACyB,IAApCyJ,EAAUzJ,QAAQ,aACvB,MAAOzL,KAfQ,GAmBf8xB,EAAa,SAAUpyB,GACzB,IAAIsc,EACJ,SAAOvc,EAASC,IAAkC,mBAAnBsc,EAAOtc,EAAGsc,QAAsBA,GAE7DT,EAAS,SAAUQ,EAASgW,GAC9B,IAAIhW,EAAQiW,GAAZ,CACAjW,EAAQiW,IAAK,EACb,IAAIC,EAAQlW,EAAQvG,GACpB2b,EAAU,WAoCR,IAnCA,IAAIrwB,EAAQib,EAAQmW,GAChBC,EAAmB,GAAdpW,EAAQqW,GACbx2B,EAAI,EACJqe,EAAM,SAAUoY,GAClB,IAIIvuB,EAAQkY,EAAMsW,EAJdC,EAAUJ,EAAKE,EAASF,GAAKE,EAASG,KACtC1W,EAAUuW,EAASvW,QACnBU,EAAS6V,EAAS7V,OAClBd,EAAS2W,EAAS3W,OAEtB,IACM6W,GACGJ,IACe,GAAdpW,EAAQ0W,IAASC,EAAkB3W,GACvCA,EAAQ0W,GAAK,IAEC,IAAZF,EAAkBzuB,EAAShD,GAEzB4a,GAAQA,EAAOE,QACnB9X,EAASyuB,EAAQzxB,GACb4a,IACFA,EAAOC,OACP2W,GAAS,IAGTxuB,IAAWuuB,EAAStW,QACtBS,EAAO7c,EAAU,yBACRqc,EAAO8V,EAAWhuB,IAC3BkY,EAAKlgB,KAAKgI,EAAQgY,EAASU,GACtBV,EAAQhY,IACV0Y,EAAO1b,GACd,MAAOd,GACH0b,IAAW4W,GAAQ5W,EAAOC,OAC9Ba,EAAOxc,KAGWpE,EAAfq2B,EAAM9yB,QAAY8a,EAAIgY,EAAMr2B,MACnCmgB,EAAQvG,GAAK,GACbuG,EAAQiW,IAAK,EACTD,IAAahW,EAAQ0W,IAAIE,EAAY5W,OAGzC4W,EAAc,SAAU5W,GAC1BO,EAAKxgB,KAAKsB,EAAQ,WAChB,IAEI0G,EAAQyuB,EAASK,EAFjB9xB,EAAQib,EAAQmW,GAChBW,EAAYC,EAAY/W,GAe5B,GAbI8W,IACF/uB,EAASutB,EAAQ,WACXjW,EACF7B,EAAQwZ,KAAK,qBAAsBjyB,EAAOib,IACjCwW,EAAUn1B,EAAO41B,sBAC1BT,EAAQ,CAAExW,QAASA,EAASkX,OAAQnyB,KAC1B8xB,EAAUx1B,EAAOw1B,UAAYA,EAAQM,OAC/CN,EAAQM,MAAM,8BAA+BpyB,KAIjDib,EAAQ0W,GAAKrX,GAAU0X,EAAY/W,GAAW,EAAI,GAClDA,EAAQoX,GAAK93B,GACXw3B,GAAa/uB,EAAO9D,EAAG,MAAM8D,EAAO+J,KAGxCilB,EAAc,SAAU/W,GAC1B,OAAsB,IAAfA,EAAQ0W,IAAkD,KAArC1W,EAAQoX,IAAMpX,EAAQvG,IAAIrW,QAEpDuzB,EAAoB,SAAU3W,GAChCO,EAAKxgB,KAAKsB,EAAQ,WAChB,IAAIm1B,EACAnX,EACF7B,EAAQwZ,KAAK,mBAAoBhX,IACxBwW,EAAUn1B,EAAOg2B,qBAC1Bb,EAAQ,CAAExW,QAASA,EAASkX,OAAQlX,EAAQmW,QAI9CmB,EAAU,SAAUvyB,GACtB,IAAIib,EAAU9c,KACV8c,EAAQ/R,KACZ+R,EAAQ/R,IAAK,GACb+R,EAAUA,EAAQuX,IAAMvX,GAChBmW,GAAKpxB,EACbib,EAAQqW,GAAK,EACRrW,EAAQoX,KAAIpX,EAAQoX,GAAKpX,EAAQvG,GAAGvR,SACzCsX,EAAOQ,GAAS,KAEdwX,EAAW,SAAUzyB,GACvB,IACIkb,EADAD,EAAU9c,KAEd,IAAI8c,EAAQ/R,GAAZ,CACA+R,EAAQ/R,IAAK,EACb+R,EAAUA,EAAQuX,IAAMvX,EACxB,IACE,GAAIA,IAAYjb,EAAO,MAAMnB,EAAU,qCACnCqc,EAAO8V,EAAWhxB,IACpBqwB,EAAU,WACR,IAAIhkB,EAAU,CAAEmmB,GAAIvX,EAAS/R,IAAI,GACjC,IACEgS,EAAKlgB,KAAKgF,EAAOxD,EAAIi2B,EAAUpmB,EAAS,GAAI7P,EAAI+1B,EAASlmB,EAAS,IAClE,MAAOnN,GACPqzB,EAAQv3B,KAAKqR,EAASnN,OAI1B+b,EAAQmW,GAAKpxB,EACbib,EAAQqW,GAAK,EACb7W,EAAOQ,GAAS,IAElB,MAAO/b,GACPqzB,EAAQv3B,KAAK,CAAEw3B,GAAIvX,EAAS/R,IAAI,GAAShK,MAKxCooB,IAEHsJ,EAAW,SAASvW,QAAQqY,GAC1B9uB,EAAWzF,KAAMyyB,EAAUH,EAAS,MACpCnvB,EAAUoxB,GACVzC,EAASj1B,KAAKmD,MACd,IACEu0B,EAASl2B,EAAIi2B,EAAUt0B,KAAM,GAAI3B,EAAI+1B,EAASp0B,KAAM,IACpD,MAAOw0B,GACPJ,EAAQv3B,KAAKmD,KAAMw0B,MAIvB1C,EAAW,SAAS5V,QAAQqY,GAC1Bv0B,KAAKuW,GAAK,GACVvW,KAAKk0B,GAAK93B,GACV4D,KAAKmzB,GAAK,EACVnzB,KAAK+K,IAAK,EACV/K,KAAKizB,GAAK72B,GACV4D,KAAKwzB,GAAK,EACVxzB,KAAK+yB,IAAK,IAEHh1B,UAAYxB,EAAoB,GAApBA,CAAwBk2B,EAAS10B,UAAW,CAE/Dgf,KAAM,SAASA,KAAK0X,EAAaC,GAC/B,IAAItB,EAAW1P,EAAqBrd,EAAmBrG,KAAMyyB,IAO7D,OANAW,EAASF,GAA2B,mBAAfuB,GAA4BA,EACjDrB,EAASG,KAA4B,mBAAdmB,GAA4BA,EACnDtB,EAAS3W,OAASN,EAAS7B,EAAQmC,OAASrgB,GAC5C4D,KAAKuW,GAAGzR,KAAKsuB,GACTpzB,KAAKk0B,IAAIl0B,KAAKk0B,GAAGpvB,KAAKsuB,GACtBpzB,KAAKmzB,IAAI7W,EAAOtc,MAAM,GACnBozB,EAAStW,SAGlB6X,QAAS,SAAUD,GACjB,OAAO10B,KAAK+c,KAAK3gB,GAAWs4B,MAGhC1C,EAAuB,WACrB,IAAIlV,EAAU,IAAIgV,EAClB9xB,KAAK8c,QAAUA,EACf9c,KAAK6c,QAAUxe,EAAIi2B,EAAUxX,EAAS,GACtC9c,KAAKud,OAASlf,EAAI+1B,EAAStX,EAAS,IAEtCqV,EAA2BzwB,EAAIgiB,EAAuB,SAAU7jB,GAC9D,OAAOA,IAAM4yB,GAAY5yB,IAAMoyB,EAC3B,IAAID,EAAqBnyB,GACzBkyB,EAA4BlyB,KAIpCpB,EAAQA,EAAQS,EAAIT,EAAQiB,EAAIjB,EAAQO,GAAKmqB,EAAY,CAAEjN,QAASuW,IACpEl2B,EAAoB,GAApBA,CAAwBk2B,EAAUH,GAClC/1B,EAAoB,GAApBA,CAAwB+1B,GACxBL,EAAU11B,EAAoB,IAAI+1B,GAGlC7zB,EAAQA,EAAQW,EAAIX,EAAQO,GAAKmqB,EAAYmJ,EAAS,CAEpD/U,OAAQ,SAASA,OAAO4G,GACtB,IAAIyQ,EAAalR,EAAqB1jB,MAGtC,OADAyd,EADemX,EAAWrX,QACjB4G,GACFyQ,EAAW9X,WAGtBre,EAAQA,EAAQW,EAAIX,EAAQO,GAAKsG,IAAY6jB,GAAamJ,EAAS,CAEjEzV,QAAS,SAASA,QAAQnE,GACxB,OAAO2Z,EAAe/sB,GAAWtF,OAASiyB,EAAUQ,EAAWzyB,KAAM0Y,MAGzEja,EAAQA,EAAQW,EAAIX,EAAQO,IAAMmqB,GAAc5sB,EAAoB,GAApBA,CAAwB,SAAU6S,GAChFqjB,EAASoC,IAAIzlB,GAAa,SAAEsjB,MACzBJ,EAAS,CAEZuC,IAAK,SAASA,IAAIxiB,GAChB,IAAIxS,EAAIG,KACJ40B,EAAalR,EAAqB7jB,GAClCgd,EAAU+X,EAAW/X,QACrBU,EAASqX,EAAWrX,OACpB1Y,EAASutB,EAAQ,WACnB,IAAIlqB,EAAS,GACTtD,EAAQ,EACRkwB,EAAY,EAChB5e,EAAM7D,GAAU,EAAO,SAAUyK,GAC/B,IAAIiY,EAASnwB,IACTowB,GAAgB,EACpB9sB,EAAOpD,KAAK1I,IACZ04B,IACAj1B,EAAEgd,QAAQC,GAASC,KAAK,SAAUlb,GAC5BmzB,IACJA,GAAgB,EAChB9sB,EAAO6sB,GAAUlzB,IACfizB,GAAajY,EAAQ3U,KACtBqV,OAEHuX,GAAajY,EAAQ3U,KAGzB,OADIrD,EAAO9D,GAAGwc,EAAO1Y,EAAO+J,GACrBgmB,EAAW9X,SAGpBmY,KAAM,SAASA,KAAK5iB,GAClB,IAAIxS,EAAIG,KACJ40B,EAAalR,EAAqB7jB,GAClC0d,EAASqX,EAAWrX,OACpB1Y,EAASutB,EAAQ,WACnBlc,EAAM7D,GAAU,EAAO,SAAUyK,GAC/Bjd,EAAEgd,QAAQC,GAASC,KAAK6X,EAAW/X,QAASU,OAIhD,OADI1Y,EAAO9D,GAAGwc,EAAO1Y,EAAO+J,GACrBgmB,EAAW9X,YAOhB,SAAUpgB,EAAQD,EAASF,GAIjC,IAAIkoB,EAAOloB,EAAoB,KAC3BkO,EAAWlO,EAAoB,IAC/B24B,EAAW,UAGf34B,EAAoB,GAApBA,CAAwB24B,EAAU,SAAU13B,GAC1C,OAAO,SAAS23B,UAAY,OAAO33B,EAAIwC,KAAyB,EAAnBC,UAAUC,OAAaD,UAAU,GAAK7D,MAClF,CAEDmoB,IAAK,SAASA,IAAI1iB,GAChB,OAAO4iB,EAAKvR,IAAIzI,EAASzK,KAAMk1B,GAAWrzB,GAAO,KAElD4iB,GAAM,GAAO,IAKV,SAAU/nB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B4G,EAAY5G,EAAoB,IAChC+E,EAAW/E,EAAoB,GAC/B64B,GAAU74B,EAAoB,GAAGmhB,SAAW,IAAIvd,MAChDk1B,EAASj1B,SAASD,MAEtB1B,EAAQA,EAAQW,EAAIX,EAAQO,GAAKzC,EAAoB,EAApBA,CAAuB,WACtD64B,EAAO,gBACL,UAAW,CACbj1B,MAAO,SAASA,MAAMP,EAAQ01B,EAAcC,GAC1C,IAAI9iB,EAAItP,EAAUvD,GACd41B,EAAIl0B,EAASi0B,GACjB,OAAOH,EAASA,EAAO3iB,EAAG6iB,EAAcE,GAAKH,EAAOx4B,KAAK4V,EAAG6iB,EAAcE,OAOxE,SAAU94B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BgI,EAAShI,EAAoB,IAC7B4G,EAAY5G,EAAoB,IAChC+E,EAAW/E,EAAoB,GAC/BiE,EAAWjE,EAAoB,GAC/B+F,EAAQ/F,EAAoB,GAC5BulB,EAAOvlB,EAAoB,IAC3Bk5B,GAAcl5B,EAAoB,GAAGmhB,SAAW,IAAIuE,UAIpDyT,EAAiBpzB,EAAM,WACzB,SAAStD,KACT,QAASy2B,EAAW,aAA6B,GAAIz2B,aAAcA,KAEjE22B,GAAYrzB,EAAM,WACpBmzB,EAAW,gBAGbh3B,EAAQA,EAAQW,EAAIX,EAAQO,GAAK02B,GAAkBC,GAAW,UAAW,CACvE1T,UAAW,SAASA,UAAU2T,EAAQzd,GACpChV,EAAUyyB,GACVt0B,EAAS6W,GACT,IAAI0d,EAAY51B,UAAUC,OAAS,EAAI01B,EAASzyB,EAAUlD,UAAU,IACpE,GAAI01B,IAAaD,EAAgB,OAAOD,EAAWG,EAAQzd,EAAM0d,GACjE,GAAID,GAAUC,EAAW,CAEvB,OAAQ1d,EAAKjY,QACX,KAAK,EAAG,OAAO,IAAI01B,EACnB,KAAK,EAAG,OAAO,IAAIA,EAAOzd,EAAK,IAC/B,KAAK,EAAG,OAAO,IAAIyd,EAAOzd,EAAK,GAAIA,EAAK,IACxC,KAAK,EAAG,OAAO,IAAIyd,EAAOzd,EAAK,GAAIA,EAAK,GAAIA,EAAK,IACjD,KAAK,EAAG,OAAO,IAAIyd,EAAOzd,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAG5D,IAAI2d,EAAQ,CAAC,MAEb,OADAA,EAAMhxB,KAAK3E,MAAM21B,EAAO3d,GACjB,IAAK2J,EAAK3hB,MAAMy1B,EAAQE,IAGjC,IAAIhqB,EAAQ+pB,EAAU93B,UAClBg4B,EAAWxxB,EAAO/D,EAASsL,GAASA,EAAQ1O,OAAOW,WACnD8G,EAASzE,SAASD,MAAMtD,KAAK+4B,EAAQG,EAAU5d,GACnD,OAAO3X,EAASqE,GAAUA,EAASkxB,MAOjC,SAAUr5B,EAAQD,EAASF,GAGjC,IAAIkF,EAAKlF,EAAoB,GACzBkC,EAAUlC,EAAoB,GAC9B+E,EAAW/E,EAAoB,GAC/BiF,EAAcjF,EAAoB,IAGtCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WAErDmhB,QAAQrgB,eAAeoE,EAAGC,EAAE,GAAI,EAAG,CAAEG,MAAO,IAAM,EAAG,CAAEA,MAAO,MAC5D,UAAW,CACbxE,eAAgB,SAASA,eAAeuC,EAAQo2B,EAAaC,GAC3D30B,EAAS1B,GACTo2B,EAAcx0B,EAAYw0B,GAAa,GACvC10B,EAAS20B,GACT,IAEE,OADAx0B,EAAGC,EAAE9B,EAAQo2B,EAAaC,IACnB,EACP,MAAOl1B,GACP,OAAO,OAQP,SAAUrE,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BkH,EAAOlH,EAAoB,IAAImF,EAC/BJ,EAAW/E,EAAoB,GAEnCkC,EAAQA,EAAQW,EAAG,UAAW,CAC5B82B,eAAgB,SAASA,eAAet2B,EAAQo2B,GAC9C,IAAIjoB,EAAOtK,EAAKnC,EAAS1B,GAASo2B,GAClC,QAAOjoB,IAASA,EAAKzQ,sBAA8BsC,EAAOo2B,OAOxD,SAAUt5B,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B+E,EAAW/E,EAAoB,GAC/B45B,EAAY,SAAUvc,GACxB5Z,KAAK+S,GAAKzR,EAASsY,GACnB5Z,KAAK6Z,GAAK,EACV,IACIjb,EADAwJ,EAAOpI,KAAK8Z,GAAK,GAErB,IAAKlb,KAAOgb,EAAUxR,EAAKtD,KAAKlG,IAElCrC,EAAoB,GAApBA,CAAwB45B,EAAW,SAAU,WAC3C,IAEIv3B,EADAwJ,EADOpI,KACK8Z,GAEhB,GACE,GAAe1R,EAAKlI,QAJXF,KAIA6Z,GAAmB,MAAO,CAAEhY,MAAOzF,GAAWqP,MAAM,YACnD7M,EAAMwJ,EALPpI,KAKiB6Z,SALjB7Z,KAKgC+S,KAC3C,MAAO,CAAElR,MAAOjD,EAAK6M,MAAM,KAG7BhN,EAAQA,EAAQW,EAAG,UAAW;AAC5Bg3B,UAAW,SAASA,UAAUx2B,GAC5B,OAAO,IAAIu2B,EAAUv2B,OAOnB,SAAUlD,EAAQD,EAASF,GAGjC,IAAIkH,EAAOlH,EAAoB,IAC3B6F,EAAiB7F,EAAoB,IACrCgC,EAAMhC,EAAoB,IAC1BkC,EAAUlC,EAAoB,GAC9BiE,EAAWjE,EAAoB,GAC/B+E,EAAW/E,EAAoB,GAcnCkC,EAAQA,EAAQW,EAAG,UAAW,CAAE5B,IAZhC,SAASA,IAAIoC,EAAQo2B,GACnB,IACIjoB,EAAMjC,EADNuqB,EAAWp2B,UAAUC,OAAS,EAAIN,EAASK,UAAU,GAEzD,OAAIqB,EAAS1B,KAAYy2B,EAAiBz2B,EAAOo2B,IAC7CjoB,EAAOtK,EAAK/B,EAAE9B,EAAQo2B,IAAqBz3B,EAAIwP,EAAM,SACrDA,EAAKlM,MACLkM,EAAKvQ,MAAQpB,GACX2R,EAAKvQ,IAAIX,KAAKw5B,GACdj6B,GACFoE,EAASsL,EAAQ1J,EAAexC,IAAiBpC,IAAIsO,EAAOkqB,EAAaK,QAA7E,MAQI,SAAU35B,EAAQD,EAASF,GAGjC,IAAIkH,EAAOlH,EAAoB,IAC3BkC,EAAUlC,EAAoB,GAC9B+E,EAAW/E,EAAoB,GAEnCkC,EAAQA,EAAQW,EAAG,UAAW,CAC5BsE,yBAA0B,SAASA,yBAAyB9D,EAAQo2B,GAClE,OAAOvyB,EAAK/B,EAAEJ,EAAS1B,GAASo2B,OAO9B,SAAUt5B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B+5B,EAAW/5B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAEnCkC,EAAQA,EAAQW,EAAG,UAAW,CAC5BgD,eAAgB,SAASA,eAAexC,GACtC,OAAO02B,EAASh1B,EAAS1B,QAOvB,SAAUlD,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,UAAW,CAC5Bb,IAAK,SAASA,IAAIqB,EAAQo2B,GACxB,OAAOA,KAAep2B,MAOpB,SAAUlD,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B+E,EAAW/E,EAAoB,GAC/B+uB,EAAgBluB,OAAOoT,aAE3B/R,EAAQA,EAAQW,EAAG,UAAW,CAC5BoR,aAAc,SAASA,aAAa5Q,GAElC,OADA0B,EAAS1B,IACF0rB,GAAgBA,EAAc1rB,OAOnC,SAAUlD,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,UAAW,CAAEue,QAASphB,EAAoB,OAKvD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B+E,EAAW/E,EAAoB,GAC/B0uB,EAAqB7tB,OAAOsT,kBAEhCjS,EAAQA,EAAQW,EAAG,UAAW,CAC5BsR,kBAAmB,SAASA,kBAAkB9Q,GAC5C0B,EAAS1B,GACT,IAEE,OADIqrB,GAAoBA,EAAmBrrB,IACpC,EACP,MAAOmB,GACP,OAAO,OAQP,SAAUrE,EAAQD,EAASF,GAGjC,IAAIkF,EAAKlF,EAAoB,GACzBkH,EAAOlH,EAAoB,IAC3B6F,EAAiB7F,EAAoB,IACrCgC,EAAMhC,EAAoB,IAC1BkC,EAAUlC,EAAoB,GAC9B+G,EAAa/G,EAAoB,IACjC+E,EAAW/E,EAAoB,GAC/BiE,EAAWjE,EAAoB,GAwBnCkC,EAAQA,EAAQW,EAAG,UAAW,CAAEiL,IAtBhC,SAASA,IAAIzK,EAAQo2B,EAAaO,GAChC,IAEIC,EAAoB1qB,EAFpBuqB,EAAWp2B,UAAUC,OAAS,EAAIN,EAASK,UAAU,GACrDw2B,EAAUhzB,EAAK/B,EAAEJ,EAAS1B,GAASo2B,GAEvC,IAAKS,EAAS,CACZ,GAAIj2B,EAASsL,EAAQ1J,EAAexC,IAClC,OAAOyK,IAAIyB,EAAOkqB,EAAaO,EAAGF,GAEpCI,EAAUnzB,EAAW,GAEvB,GAAI/E,EAAIk4B,EAAS,SAAU,CACzB,IAAyB,IAArBA,EAAQzoB,WAAuBxN,EAAS61B,GAAW,OAAO,EAC9D,GAAIG,EAAqB/yB,EAAK/B,EAAE20B,EAAUL,GAAc,CACtD,GAAIQ,EAAmBh5B,KAAOg5B,EAAmBnsB,MAAuC,IAAhCmsB,EAAmBxoB,SAAoB,OAAO,EACtGwoB,EAAmB30B,MAAQ00B,EAC3B90B,EAAGC,EAAE20B,EAAUL,EAAaQ,QACvB/0B,EAAGC,EAAE20B,EAAUL,EAAa1yB,EAAW,EAAGizB,IACjD,OAAO,EAET,OAAOE,EAAQpsB,MAAQjO,KAAqBq6B,EAAQpsB,IAAIxN,KAAKw5B,EAAUE,IAAI,OAQvE,SAAU75B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Bm6B,EAAWn6B,EAAoB,IAE/Bm6B,GAAUj4B,EAAQA,EAAQW,EAAG,UAAW,CAC1CsiB,eAAgB,SAASA,eAAe9hB,EAAQkM,GAC9C4qB,EAASjV,MAAM7hB,EAAQkM,GACvB,IAEE,OADA4qB,EAASrsB,IAAIzK,EAAQkM,IACd,EACP,MAAO/K,GACP,OAAO,OAQP,SAAUrE,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAEgc,IAAK,WAAc,OAAO,IAAImK,MAAOD,cAK5D,SAAU5oB,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/BiF,EAAcjF,EAAoB,IAClCkpB,EAAclpB,EAAoB,KAClCuJ,EAAUvJ,EAAoB,IAElCkC,EAAQA,EAAQa,EAAIb,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACrD,OAAkC,OAA3B,IAAIgpB,KAAKtG,KAAKuI,UAC2D,IAA3EjC,KAAKxnB,UAAUypB,OAAO3qB,KAAK,CAAE4oB,YAAa,WAAc,OAAO,OAClE,OAAQ,CAEV+B,OAAQ,SAASA,OAAO5oB,GACtB,IAAI+C,EAAIM,EAASjC,MACb22B,EAAKn1B,EAAYG,GACrB,MAAoB,iBAANg1B,GAAmBvU,SAASuU,GACrC,gBAAiBh1B,GAAoB,QAAdmE,EAAQnE,GAAsCA,EAAE8jB,cAAxBA,EAAY5oB,KAAK8E,GADrB,SAQ9C,SAAUjF,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BkpB,EAAclpB,EAAoB,KAGtCkC,EAAQA,EAAQa,EAAIb,EAAQO,GAAKumB,KAAKxnB,UAAU0nB,cAAgBA,GAAc,OAAQ,CACpFA,YAAaA,KAMT,SAAU/oB,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9BgJ,EAAShJ,EAAoB,IAC7B4N,EAAS5N,EAAoB,IAC7B+E,EAAW/E,EAAoB,GAC/BsJ,EAAkBtJ,EAAoB,IACtCsH,EAAWtH,EAAoB,GAC/BiE,EAAWjE,EAAoB,GAC/B+K,EAAc/K,EAAoB,GAAG+K,YACrCjB,EAAqB9J,EAAoB,IACzC8K,EAAe8C,EAAO7C,YACtBC,EAAY4C,EAAO3C,SACnBovB,EAAUrxB,EAAOuJ,KAAOxH,EAAYuvB,OACpCvpB,EAASjG,EAAatJ,UAAUiH,MAChC6E,EAAOtE,EAAOsE,KACd7C,EAAe,cAEnBvI,EAAQA,EAAQS,EAAIT,EAAQiB,EAAIjB,EAAQO,GAAKsI,IAAgBD,GAAe,CAAEC,YAAaD,IAE3F5I,EAAQA,EAAQW,EAAIX,EAAQO,GAAKuG,EAAOmE,OAAQ1C,EAAc,CAE5D6vB,OAAQ,SAASA,OAAOp2B,GACtB,OAAOm2B,GAAWA,EAAQn2B,IAAOD,EAASC,IAAOoJ,KAAQpJ,KAI7DhC,EAAQA,EAAQa,EAAIb,EAAQ8B,EAAI9B,EAAQO,EAAIzC,EAAoB,EAApBA,CAAuB,WACjE,OAAQ,IAAI8K,EAAa,GAAGrC,MAAM,EAAG5I,IAAW6S,aAC9CjI,EAAc,CAEhBhC,MAAO,SAASA,MAAMgH,EAAOmB,GAC3B,GAAIG,IAAWlR,IAAa+Q,IAAQ/Q,GAAW,OAAOkR,EAAOzQ,KAAKyE,EAAStB,MAAOgM,GAQlF,IAPA,IAAI0B,EAAMpM,EAAStB,MAAMiP,WACrB6nB,EAAQjxB,EAAgBmG,EAAO0B,GAC/BqpB,EAAMlxB,EAAgBsH,IAAQ/Q,GAAYsR,EAAMP,EAAKO,GACrD7I,EAAS,IAAKwB,EAAmBrG,KAAMqH,GAA9B,CAA6CxD,EAASkzB,EAAMD,IACrEE,EAAQ,IAAIzvB,EAAUvH,MACtBi3B,EAAQ,IAAI1vB,EAAU1C,GACtBD,EAAQ,EACLkyB,EAAQC,GACbE,EAAM9W,SAASvb,IAASoyB,EAAM3W,SAASyW,MACvC,OAAOjyB,KAIbtI,EAAoB,GAApBA,CAAwByK,IAKlB,SAAUtK,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAClCkC,EAAQA,EAAQS,EAAIT,EAAQiB,EAAIjB,EAAQO,GAAKzC,EAAoB,IAAIuS,IAAK,CACxEtH,SAAUjL,EAAoB,IAAIiL,YAM9B,SAAU9K,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,OAAQ,EAAG,SAAU26B,GAC3C,OAAO,SAASC,UAAUxoB,EAAMtB,EAAYnN,GAC1C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,QAAS,EAAG,SAAU26B,GAC5C,OAAO,SAASnwB,WAAW4H,EAAMtB,EAAYnN,GAC3C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,QAAS,EAAG,SAAU26B,GAC5C,OAAO,SAASE,kBAAkBzoB,EAAMtB,EAAYnN,GAClD,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,MAErC,IAKG,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,QAAS,EAAG,SAAU26B,GAC5C,OAAO,SAASG,WAAW1oB,EAAMtB,EAAYnN,GAC3C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,SAAU,EAAG,SAAU26B,GAC7C,OAAO,SAAShtB,YAAYyE,EAAMtB,EAAYnN,GAC5C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,QAAS,EAAG,SAAU26B,GAC5C,OAAO,SAASI,WAAW3oB,EAAMtB,EAAYnN,GAC3C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,SAAU,EAAG,SAAU26B,GAC7C,OAAO,SAASK,YAAY5oB,EAAMtB,EAAYnN,GAC5C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,UAAW,EAAG,SAAU26B,GAC9C,OAAO,SAASM,aAAa7oB,EAAMtB,EAAYnN,GAC7C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,UAAW,EAAG,SAAU26B,GAC9C,OAAO,SAASO,aAAa9oB,EAAMtB,EAAYnN,GAC7C,OAAOg3B,EAAKl3B,KAAM2O,EAAMtB,EAAYnN,OAOlC,SAAUxD,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9Bm7B,EAAYn7B,EAAoB,GAApBA,EAAwB,GAExCkC,EAAQA,EAAQa,EAAG,QAAS,CAC1BoN,SAAU,SAASA,SAAS6H,GAC1B,OAAOmjB,EAAU13B,KAAMuU,EAAuB,EAAnBtU,UAAUC,OAAaD,UAAU,GAAK7D,OAIrEG,EAAoB,GAApBA,CAAwB,aAKlB,SAAUG,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B+pB,EAAmB/pB,EAAoB,KACvC0F,EAAW1F,EAAoB,GAC/BsH,EAAWtH,EAAoB,GAC/B4G,EAAY5G,EAAoB,IAChCo7B,EAAqBp7B,EAAoB,IAE7CkC,EAAQA,EAAQa,EAAG,QAAS,CAC1Bs4B,QAAS,SAASA,QAAQnzB,GACxB,IACI8hB,EAAWtP,EADXtV,EAAIM,EAASjC,MAMjB,OAJAmD,EAAUsB,GACV8hB,EAAY1iB,EAASlC,EAAEzB,QACvB+W,EAAI0gB,EAAmBh2B,EAAG,GAC1B2kB,EAAiBrP,EAAGtV,EAAGA,EAAG4kB,EAAW,EAAG,EAAG9hB,EAAYxE,UAAU,IAC1DgX,KAIX1a,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B+pB,EAAmB/pB,EAAoB,KACvC0F,EAAW1F,EAAoB,GAC/BsH,EAAWtH,EAAoB,GAC/B6E,EAAY7E,EAAoB,IAChCo7B,EAAqBp7B,EAAoB,IAE7CkC,EAAQA,EAAQa,EAAG,QAAS,CAC1Bu4B,QAAS,SAASA,UAChB,IAAIC,EAAW73B,UAAU,GACrB0B,EAAIM,EAASjC,MACbumB,EAAY1iB,EAASlC,EAAEzB,QACvB+W,EAAI0gB,EAAmBh2B,EAAG,GAE9B,OADA2kB,EAAiBrP,EAAGtV,EAAGA,EAAG4kB,EAAW,EAAGuR,IAAa17B,GAAY,EAAIgF,EAAU02B,IACxE7gB,KAIX1a,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B6yB,EAAM7yB,EAAoB,GAApBA,EAAwB,GAElCkC,EAAQA,EAAQa,EAAG,SAAU,CAC3By4B,GAAI,SAASA,GAAGjf,GACd,OAAOsW,EAAIpvB,KAAM8Y,OAOf,SAAUpc,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9By7B,EAAOz7B,EAAoB,KAC3B0Z,EAAY1Z,EAAoB,IAGhC07B,EAAa,mDAAmDj1B,KAAKiT,GAEzExX,EAAQA,EAAQa,EAAIb,EAAQO,EAAIi5B,EAAY,SAAU,CACpDC,SAAU,SAASA,SAASnR,GAC1B,OAAOiR,EAAKh4B,KAAM+mB,EAA8B,EAAnB9mB,UAAUC,OAAaD,UAAU,GAAK7D,IAAW,OAO5E,SAAUM,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9By7B,EAAOz7B,EAAoB,KAC3B0Z,EAAY1Z,EAAoB,IAGhC07B,EAAa,mDAAmDj1B,KAAKiT,GAEzExX,EAAQA,EAAQa,EAAIb,EAAQO,EAAIi5B,EAAY,SAAU,CACpDE,OAAQ,SAASA,OAAOpR,GACtB,OAAOiR,EAAKh4B,KAAM+mB,EAA8B,EAAnB9mB,UAAUC,OAAaD,UAAU,GAAK7D,IAAW,OAO5E,SAAUM,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,WAAY,SAAUgmB,GAC5C,OAAO,SAAS6V,WACd,OAAO7V,EAAMviB,KAAM,KAEpB,cAKG,SAAUtD,EAAQD,EAASF,GAKjCA,EAAoB,GAApBA,CAAwB,YAAa,SAAUgmB,GAC7C,OAAO,SAAS8V,YACd,OAAO9V,EAAMviB,KAAM,KAEpB,YAKG,SAAUtD,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9BuF,EAAUvF,EAAoB,IAC9BsH,EAAWtH,EAAoB,GAC/Byc,EAAWzc,EAAoB,KAC/B+7B,EAAW/7B,EAAoB,KAC/Bg8B,EAAc3kB,OAAO7V,UAErBy6B,EAAwB,SAAUC,EAAQh2B,GAC5CzC,KAAK04B,GAAKD,EACVz4B,KAAKmzB,GAAK1wB,GAGZlG,EAAoB,GAApBA,CAAwBi8B,EAAuB,gBAAiB,SAAShtB,OACvE,IAAImtB,EAAQ34B,KAAK04B,GAAG53B,KAAKd,KAAKmzB,IAC9B,MAAO,CAAEtxB,MAAO82B,EAAOltB,KAAgB,OAAVktB,KAG/Bl6B,EAAQA,EAAQa,EAAG,SAAU,CAC3Bs5B,SAAU,SAASA,SAASH,GAE1B,GADA32B,EAAQ9B,OACHgZ,EAASyf,GAAS,MAAM/3B,UAAU+3B,EAAS,qBAChD,IAAIr5B,EAAIwD,OAAO5C,MACX64B,EAAQ,UAAWN,EAAc31B,OAAO61B,EAAOI,OAASP,EAASz7B,KAAK47B,GACtEK,EAAK,IAAIllB,OAAO6kB,EAAO95B,QAASk6B,EAAMrsB,QAAQ,KAAOqsB,EAAQ,IAAMA,GAEvE,OADAC,EAAGC,UAAYl1B,EAAS40B,EAAOM,WACxB,IAAIP,EAAsBM,EAAI15B,OAOnC,SAAU1C,EAAQD,EAASF,GAKjC,IAAI+E,EAAW/E,EAAoB,GACnCG,EAAOD,QAAU,WACf,IAAI4G,EAAO/B,EAAStB,MAChB6E,EAAS,GAMb,OALIxB,EAAKlF,SAAQ0G,GAAU,KACvBxB,EAAK21B,aAAYn0B,GAAU,KAC3BxB,EAAK41B,YAAWp0B,GAAU,KAC1BxB,EAAK61B,UAASr0B,GAAU,KACxBxB,EAAK81B,SAAQt0B,GAAU,KACpBA,IAMH,SAAUnI,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,kBAKlB,SAAUG,EAAQD,EAASF,GAEjCA,EAAoB,GAApBA,CAAwB,eAKlB,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BohB,EAAUphB,EAAoB,IAC9BiH,EAAYjH,EAAoB,IAChCkH,EAAOlH,EAAoB,IAC3By0B,EAAiBz0B,EAAoB,IAEzCkC,EAAQA,EAAQW,EAAG,SAAU,CAC3Bg6B,0BAA2B,SAASA,0BAA0Bv7B,GAO5D,IANA,IAKIe,EAAKmP,EALLpM,EAAI6B,EAAU3F,GACdw7B,EAAU51B,EAAK/B,EACf0G,EAAOuV,EAAQhc,GACfkD,EAAS,GACTlI,EAAI,EAEaA,EAAdyL,EAAKlI,SACV6N,EAAOsrB,EAAQ13B,EAAG/C,EAAMwJ,EAAKzL,SAChBP,IAAW40B,EAAensB,EAAQjG,EAAKmP,GAEtD,OAAOlJ,MAOL,SAAUnI,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B+8B,EAAU/8B,EAAoB,IAApBA,EAAyB,GAEvCkC,EAAQA,EAAQW,EAAG,SAAU,CAC3B8I,OAAQ,SAASA,OAAOzH,GACtB,OAAO64B,EAAQ74B,OAOb,SAAU/D,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BqZ,EAAWrZ,EAAoB,IAApBA,EAAyB,GAExCkC,EAAQA,EAAQW,EAAG,SAAU,CAC3BkJ,QAAS,SAASA,QAAQ7H,GACxB,OAAOmV,EAASnV,OAOd,SAAU/D,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/B4G,EAAY5G,EAAoB,IAChC6c,EAAkB7c,EAAoB,GAG1CA,EAAoB,IAAMkC,EAAQA,EAAQa,EAAI/C,EAAoB,IAAK,SAAU,CAC/Eg9B,iBAAkB,SAASA,iBAAiBj6B,EAAGpC,GAC7Ckc,EAAgB1X,EAAEO,EAASjC,MAAOV,EAAG,CAAE9B,IAAK2F,EAAUjG,GAASK,YAAY,EAAMD,cAAc,QAO7F,SAAUZ,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/B4G,EAAY5G,EAAoB,IAChC6c,EAAkB7c,EAAoB,GAG1CA,EAAoB,IAAMkC,EAAQA,EAAQa,EAAI/C,EAAoB,IAAK,SAAU,CAC/Ewa,iBAAkB,SAASA,iBAAiBzX,EAAG+pB,GAC7CjQ,EAAgB1X,EAAEO,EAASjC,MAAOV,EAAG,CAAE+K,IAAKlH,EAAUkmB,GAAS9rB,YAAY,EAAMD,cAAc,QAO7F,SAAUZ,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/BiF,EAAcjF,EAAoB,IAClC6F,EAAiB7F,EAAoB,IACrCmH,EAA2BnH,EAAoB,IAAImF,EAGvDnF,EAAoB,IAAMkC,EAAQA,EAAQa,EAAI/C,EAAoB,IAAK,SAAU,CAC/Ei9B,iBAAkB,SAASA,iBAAiBl6B,GAC1C,IAEIyW,EAFApU,EAAIM,EAASjC,MACb8W,EAAItV,EAAYlC,GAAG,GAEvB,GACE,GAAIyW,EAAIrS,EAAyB/B,EAAGmV,GAAI,OAAOf,EAAEvY,UAC1CmE,EAAIS,EAAeT,QAO1B,SAAUjF,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9B0F,EAAW1F,EAAoB,GAC/BiF,EAAcjF,EAAoB,IAClC6F,EAAiB7F,EAAoB,IACrCmH,EAA2BnH,EAAoB,IAAImF,EAGvDnF,EAAoB,IAAMkC,EAAQA,EAAQa,EAAI/C,EAAoB,IAAK,SAAU,CAC/Ek9B,iBAAkB,SAASA,iBAAiBn6B,GAC1C,IAEIyW,EAFApU,EAAIM,EAASjC,MACb8W,EAAItV,EAAYlC,GAAG,GAEvB,GACE,GAAIyW,EAAIrS,EAAyB/B,EAAGmV,GAAI,OAAOf,EAAE1L,UAC1C1I,EAAIS,EAAeT,QAO1B,SAAUjF,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAIb,EAAQ6B,EAAG,MAAO,CAAEknB,OAAQjrB,EAAoB,IAApBA,CAAyB,UAKnE,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQa,EAAIb,EAAQ6B,EAAG,MAAO,CAAEknB,OAAQjrB,EAAoB,IAApBA,CAAyB,UAKnE,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,QAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,QAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,QAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,QAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAGjCA,EAAoB,GAApBA,CAAwB,YAKlB,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQS,EAAG,CAAEf,OAAQ5B,EAAoB,MAK3C,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,SAAU,CAAEjB,OAAQ5B,EAAoB,MAKrD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BgW,EAAMhW,EAAoB,IAE9BkC,EAAQA,EAAQW,EAAG,QAAS,CAC1Bs6B,QAAS,SAASA,QAAQj5B,GACxB,MAAmB,UAAZ8R,EAAI9R,OAOT,SAAU/D,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBu6B,MAAO,SAASA,MAAMjhB,EAAGkhB,EAAOC,GAC9B,OAAOj5B,KAAKS,IAAIw4B,EAAOj5B,KAAK0R,IAAIsnB,EAAOlhB,QAOrC,SAAUhc,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAE06B,YAAal5B,KAAKm5B,GAAK,OAK9C,SAAUr9B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9By9B,EAAc,IAAMp5B,KAAKm5B,GAE7Bt7B,EAAQA,EAAQW,EAAG,OAAQ,CACzB66B,QAAS,SAASA,QAAQC,GACxB,OAAOA,EAAUF,MAOf,SAAUt9B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BkrB,EAAQlrB,EAAoB,KAC5B2mB,EAAS3mB,EAAoB,KAEjCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzB+6B,OAAQ,SAASA,OAAOzhB,EAAGgP,EAAOC,EAAQC,EAAQC,GAChD,OAAO3E,EAAOuE,EAAM/O,EAAGgP,EAAOC,EAAQC,EAAQC,QAO5C,SAAUnrB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBg7B,MAAO,SAASA,MAAMC,EAAIC,EAAIC,EAAIC,GAChC,IAAIC,EAAMJ,IAAO,EAEbK,EAAMH,IAAO,EACjB,OAFUD,IAAO,IAEHE,IAAO,KAAOC,EAAMC,GAAOD,EAAMC,KAASD,EAAMC,IAAQ,MAAQ,IAAM,MAOlF,SAAUh+B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBu7B,MAAO,SAASA,MAAMN,EAAIC,EAAIC,EAAIC,GAChC,IAAIC,EAAMJ,IAAO,EAEbK,EAAMH,IAAO,EACjB,OAFUD,IAAO,IAEHE,IAAO,MAAQC,EAAMC,IAAQD,EAAMC,GAAOD,EAAMC,IAAQ,KAAO,IAAM,MAOjF,SAAUh+B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBw7B,MAAO,SAASA,MAAMC,EAAGjsB,GACvB,IACIksB,GAAMD,EACNE,GAAMnsB,EACNosB,EAHS,MAGJF,EACLG,EAJS,MAIJF,EACLG,EAAKJ,GAAM,GACXK,EAAKJ,GAAM,GACX9O,GAAKiP,EAAKD,IAAO,IAAMD,EAAKC,IAAO,IACvC,OAAOC,EAAKC,GAAMlP,GAAK,MAAQ+O,EAAKG,IAAO,IAR9B,MAQoClP,IAAe,QAO9D,SAAUvvB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAE46B,YAAa,IAAMp5B,KAAKm5B,MAK/C,SAAUr9B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9Bu9B,EAAcl5B,KAAKm5B,GAAK,IAE5Bt7B,EAAQA,EAAQW,EAAG,OAAQ,CACzB86B,QAAS,SAASA,QAAQD,GACxB,OAAOA,EAAUH,MAOf,SAAUp9B,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAEqoB,MAAOlrB,EAAoB,QAKlD,SAAUG,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CACzBg8B,MAAO,SAASA,MAAMP,EAAGjsB,GACvB,IACIksB,GAAMD,EACNE,GAAMnsB,EACNosB,EAHS,MAGJF,EACLG,EAJS,MAIJF,EACLG,EAAKJ,IAAO,GACZK,EAAKJ,IAAO,GACZ9O,GAAKiP,EAAKD,IAAO,IAAMD,EAAKC,IAAO,IACvC,OAAOC,EAAKC,GAAMlP,IAAM,MAAQ+O,EAAKG,IAAO,IAR/B,MAQqClP,KAAgB,QAOhE,SAAUvvB,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAG,OAAQ,CAAEi8B,QAAS,SAASA,QAAQ3iB,GAErD,OAAQA,GAAKA,IAAMA,EAAIA,EAAS,GAALA,EAAS,EAAIA,GAAKF,SAAe,EAAJE,MAMpD,SAAUhc,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B6B,EAAO7B,EAAoB,IAC3B4B,EAAS5B,EAAoB,GAC7B8J,EAAqB9J,EAAoB,IACzC81B,EAAiB91B,EAAoB,KAEzCkC,EAAQA,EAAQa,EAAIb,EAAQ6B,EAAG,UAAW,CAAEg7B,UAAW,SAAUC,GAC/D,IAAI17B,EAAIwG,EAAmBrG,KAAM5B,EAAK8d,SAAW/d,EAAO+d,SACpDsf,EAAiC,mBAAbD,EACxB,OAAOv7B,KAAK+c,KACVye,EAAa,SAAU9iB,GACrB,OAAO2Z,EAAexyB,EAAG07B,KAAaxe,KAAK,WAAc,OAAOrE,KAC9D6iB,EACJC,EAAa,SAAUz6B,GACrB,OAAOsxB,EAAexyB,EAAG07B,KAAaxe,KAAK,WAAc,MAAMhc,KAC7Dw6B,OAOF,SAAU7+B,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9BmnB,EAAuBnnB,EAAoB,IAC3C61B,EAAU71B,EAAoB,KAElCkC,EAAQA,EAAQW,EAAG,UAAW,CAAEq8B,MAAO,SAAUh3B,GAC/C,IAAIkf,EAAoBD,EAAqBhiB,EAAE1B,MAC3C6E,EAASutB,EAAQ3tB,GAErB,OADCI,EAAO9D,EAAI4iB,EAAkBpG,OAASoG,EAAkB9G,SAAShY,EAAO+J,GAClE+U,EAAkB7G,YAMrB,SAAUpgB,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/Bo/B,EAAYD,EAAS98B,IACrBg9B,EAA4BF,EAASrxB,IAEzCqxB,EAASr2B,IAAI,CAAEw2B,eAAgB,SAASA,eAAeC,EAAaC,EAAen8B,EAAQgQ,GACzFgsB,EAA0BE,EAAaC,EAAez6B,EAAS1B,GAAS+7B,EAAU/rB,QAM9E,SAAUlT,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/Bo/B,EAAYD,EAAS98B,IACrB+Q,EAAyB+rB,EAAS9uB,IAClC5L,EAAQ06B,EAAS16B,MAErB06B,EAASr2B,IAAI,CAAE22B,eAAgB,SAASA,eAAeF,EAAal8B,GAClE,IAAIgQ,EAAY3P,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,IACnE+P,EAAcL,EAAuBrO,EAAS1B,GAASgQ,GAAW,GACtE,GAAII,IAAgB5T,KAAc4T,EAAoB,UAAE8rB,GAAc,OAAO,EAC7E,GAAI9rB,EAAYyG,KAAM,OAAO,EAC7B,IAAI5G,EAAiB7O,EAAMxD,IAAIoC,GAE/B,OADAiQ,EAAuB,UAAED,KAChBC,EAAe4G,MAAQzV,EAAc,UAAEpB,OAM5C,SAAUlD,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B6F,EAAiB7F,EAAoB,IACrC0/B,EAAyBP,EAASn9B,IAClC29B,EAAyBR,EAASl+B,IAClCm+B,EAAYD,EAAS98B,IAErBu9B,EAAsB,SAAUpsB,EAAapO,EAAGrC,GAElD,GADa28B,EAAuBlsB,EAAapO,EAAGrC,GACxC,OAAO48B,EAAuBnsB,EAAapO,EAAGrC,GAC1D,IAAIkd,EAASpa,EAAeT,GAC5B,OAAkB,OAAX6a,EAAkB2f,EAAoBpsB,EAAayM,EAAQld,GAAKlD,IAGzEs/B,EAASr2B,IAAI,CAAE+2B,YAAa,SAASA,YAAYN,EAAal8B,GAC5D,OAAOu8B,EAAoBL,EAAax6B,EAAS1B,GAASK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAM7G,SAAUvD,EAAQD,EAASF,GAEjC,IAAI+nB,EAAM/nB,EAAoB,KAC1B0O,EAAO1O,EAAoB,KAC3Bm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B6F,EAAiB7F,EAAoB,IACrC8/B,EAA0BX,EAAStzB,KACnCuzB,EAAYD,EAAS98B,IAErB09B,EAAuB,SAAU36B,EAAGrC,GACtC,IAAIi9B,EAAQF,EAAwB16B,EAAGrC,GACnCkd,EAASpa,EAAeT,GAC5B,GAAe,OAAX6a,EAAiB,OAAO+f,EAC5B,IAAIC,EAAQF,EAAqB9f,EAAQld,GACzC,OAAOk9B,EAAMt8B,OAASq8B,EAAMr8B,OAAS+K,EAAK,IAAIqZ,EAAIiY,EAAMltB,OAAOmtB,KAAWA,EAAQD,GAGpFb,EAASr2B,IAAI,CAAEo3B,gBAAiB,SAASA,gBAAgB78B,GACvD,OAAO08B,EAAqBh7B,EAAS1B,GAASK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAMjG,SAAUvD,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B2/B,EAAyBR,EAASl+B,IAClCm+B,EAAYD,EAAS98B,IAEzB88B,EAASr2B,IAAI,CAAEq3B,eAAgB,SAASA,eAAeZ,EAAal8B,GAClE,OAAOs8B,EAAuBJ,EAAax6B,EAAS1B,GAChDK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAMvD,SAAUvD,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B8/B,EAA0BX,EAAStzB,KACnCuzB,EAAYD,EAAS98B,IAEzB88B,EAASr2B,IAAI,CAAEs3B,mBAAoB,SAASA,mBAAmB/8B,GAC7D,OAAOy8B,EAAwB/6B,EAAS1B,GAASK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAMpG,SAAUvD,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B6F,EAAiB7F,EAAoB,IACrC0/B,EAAyBP,EAASn9B,IAClCo9B,EAAYD,EAAS98B,IAErBg+B,EAAsB,SAAU7sB,EAAapO,EAAGrC,GAElD,GADa28B,EAAuBlsB,EAAapO,EAAGrC,GACxC,OAAO,EACnB,IAAIkd,EAASpa,EAAeT,GAC5B,OAAkB,OAAX6a,GAAkBogB,EAAoB7sB,EAAayM,EAAQld,IAGpEo8B,EAASr2B,IAAI,CAAEw3B,YAAa,SAASA,YAAYf,EAAal8B,GAC5D,OAAOg9B,EAAoBd,EAAax6B,EAAS1B,GAASK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAM7G,SAAUvD,EAAQD,EAASF,GAEjC,IAAIm/B,EAAWn/B,EAAoB,IAC/B+E,EAAW/E,EAAoB,GAC/B0/B,EAAyBP,EAASn9B,IAClCo9B,EAAYD,EAAS98B,IAEzB88B,EAASr2B,IAAI,CAAEy3B,eAAgB,SAASA,eAAehB,EAAal8B,GAClE,OAAOq8B,EAAuBH,EAAax6B,EAAS1B,GAChDK,UAAUC,OAAS,EAAI9D,GAAYu/B,EAAU17B,UAAU,SAMvD,SAAUvD,EAAQD,EAASF,GAEjC,IAAIwgC,EAAYxgC,EAAoB,IAChC+E,EAAW/E,EAAoB,GAC/B4G,EAAY5G,EAAoB,IAChCo/B,EAAYoB,EAAUn+B,IACtBg9B,EAA4BmB,EAAU1yB,IAE1C0yB,EAAU13B,IAAI,CAAEq2B,SAAU,SAASA,SAASI,EAAaC,GACvD,OAAO,SAASiB,UAAUp9B,EAAQgQ,GAChCgsB,EACEE,EAAaC,GACZnsB,IAAcxT,GAAYkF,EAAW6B,GAAWvD,GACjD+7B,EAAU/rB,SAQV,SAAUlT,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9B21B,EAAY31B,EAAoB,GAApBA,GACZ+d,EAAU/d,EAAoB,GAAG+d,QACjC6B,EAA6C,WAApC5f,EAAoB,GAApBA,CAAwB+d,GAErC7b,EAAQA,EAAQS,EAAG,CACjB+9B,KAAM,SAASA,KAAK75B,GAClB,IAAIqZ,EAASN,GAAU7B,EAAQmC,OAC/ByV,EAAUzV,EAASA,EAAOqF,KAAK1e,GAAMA,OAOnC,SAAU1G,EAAQD,EAASF,GAKjC,IAAIkC,EAAUlC,EAAoB,GAC9B4B,EAAS5B,EAAoB,GAC7B6B,EAAO7B,EAAoB,IAC3B21B,EAAY31B,EAAoB,GAApBA,GACZ2gC,EAAa3gC,EAAoB,EAApBA,CAAuB,cACpC4G,EAAY5G,EAAoB,IAChC+E,EAAW/E,EAAoB,GAC/BkJ,EAAalJ,EAAoB,IACjCoJ,EAAcpJ,EAAoB,IAClC+B,EAAO/B,EAAoB,IAC3B2Z,EAAQ3Z,EAAoB,IAC5B6V,EAAS8D,EAAM9D,OAEfkD,EAAY,SAAUlS,GACxB,OAAa,MAANA,EAAahH,GAAY+G,EAAUC,IAGxC+5B,EAAsB,SAAUC,GAClC,IAAIC,EAAUD,EAAa7mB,GACvB8mB,IACFD,EAAa7mB,GAAKna,GAClBihC,MAIAC,EAAqB,SAAUF,GACjC,OAAOA,EAAaG,KAAOnhC,IAGzBohC,EAAoB,SAAUJ,GAC3BE,EAAmBF,KACtBA,EAAaG,GAAKnhC,GAClB+gC,EAAoBC,KAIpBK,EAAe,SAAUC,EAAUC,GACrCr8B,EAASo8B,GACT19B,KAAKuW,GAAKna,GACV4D,KAAKu9B,GAAKG,EACVA,EAAW,IAAIE,EAAqB59B,MACpC,IACE,IAAIq9B,EAAUM,EAAWD,GACrBN,EAAeC,EACJ,MAAXA,IACiC,mBAAxBA,EAAQQ,YAA4BR,EAAU,WAAcD,EAAaS,eAC/E16B,EAAUk6B,GACfr9B,KAAKuW,GAAK8mB,GAEZ,MAAOt8B,GAEP,YADA28B,EAASzJ,MAAMlzB,GAEXu8B,EAAmBt9B,OAAOm9B,EAAoBn9B,OAGtDy9B,EAAa1/B,UAAY4H,EAAY,GAAI,CACvCk4B,YAAa,SAASA,cAAgBL,EAAkBx9B,SAG1D,IAAI49B,EAAuB,SAAUR,GACnCp9B,KAAKmzB,GAAKiK,GAGZQ,EAAqB7/B,UAAY4H,EAAY,GAAI,CAC/C6F,KAAM,SAASA,KAAK3J,GAClB,IAAIu7B,EAAep9B,KAAKmzB,GACxB,IAAKmK,EAAmBF,GAAe,CACrC,IAAIM,EAAWN,EAAaG,GAC5B,IACE,IAAIzgC,EAAIwY,EAAUooB,EAASlyB,MAC3B,GAAI1O,EAAG,OAAOA,EAAED,KAAK6gC,EAAU77B,GAC/B,MAAOd,GACP,IACEy8B,EAAkBJ,GAClB,QACA,MAAMr8B,MAKdkzB,MAAO,SAASA,MAAMpyB,GACpB,IAAIu7B,EAAep9B,KAAKmzB,GACxB,GAAImK,EAAmBF,GAAe,MAAMv7B,EAC5C,IAAI67B,EAAWN,EAAaG,GAC5BH,EAAaG,GAAKnhC,GAClB,IACE,IAAIU,EAAIwY,EAAUooB,EAASzJ,OAC3B,IAAKn3B,EAAG,MAAM+E,EACdA,EAAQ/E,EAAED,KAAK6gC,EAAU77B,GACzB,MAAOd,GACP,IACEo8B,EAAoBC,GACpB,QACA,MAAMr8B,GAGV,OADEo8B,EAAoBC,GACfv7B,GAETi8B,SAAU,SAASA,SAASj8B,GAC1B,IAAIu7B,EAAep9B,KAAKmzB,GACxB,IAAKmK,EAAmBF,GAAe,CACrC,IAAIM,EAAWN,EAAaG,GAC5BH,EAAaG,GAAKnhC,GAClB,IACE,IAAIU,EAAIwY,EAAUooB,EAASI,UAC3Bj8B,EAAQ/E,EAAIA,EAAED,KAAK6gC,EAAU77B,GAASzF,GACtC,MAAO2E,GACP,IACEo8B,EAAoBC,GACpB,QACA,MAAMr8B,GAGV,OADEo8B,EAAoBC,GACfv7B,MAKb,IAAIk8B,EAAc,SAASC,WAAWL,GACpCl4B,EAAWzF,KAAM+9B,EAAa,aAAc,MAAM9Z,GAAK9gB,EAAUw6B,IAGnEh4B,EAAYo4B,EAAYhgC,UAAW,CACjCkgC,UAAW,SAASA,UAAUP,GAC5B,OAAO,IAAID,EAAaC,EAAU19B,KAAKikB,KAEzC1X,QAAS,SAASA,QAAQnJ,GACxB,IAAIC,EAAOrD,KACX,OAAO,IAAK5B,EAAK8d,SAAW/d,EAAO+d,SAAS,SAAUW,EAASU,GAC7Dpa,EAAUC,GACV,IAAIg6B,EAAe/5B,EAAK46B,UAAU,CAChCzyB,KAAM,SAAU3J,GACd,IACE,OAAOuB,EAAGvB,GACV,MAAOd,GACPwc,EAAOxc,GACPq8B,EAAaS,gBAGjB5J,MAAO1W,EACPugB,SAAUjhB,SAMlBlX,EAAYo4B,EAAa,CACvB9yB,KAAM,SAASA,KAAKyN,GAClB,IAAI7Y,EAAoB,mBAATG,KAAsBA,KAAO+9B,EACxCp6B,EAAS2R,EAAUhU,EAASoX,GAAGwkB,IACnC,GAAIv5B,EAAQ,CACV,IAAIu6B,EAAa58B,EAASqC,EAAO9G,KAAK6b,IACtC,OAAOwlB,EAAW77B,cAAgBxC,EAAIq+B,EAAa,IAAIr+B,EAAE,SAAU69B,GACjE,OAAOQ,EAAWD,UAAUP,KAGhC,OAAO,IAAI79B,EAAE,SAAU69B,GACrB,IAAIjyB,GAAO,EAeX,OAdAymB,EAAU,WACR,IAAKzmB,EAAM,CACT,IACE,GAAIyK,EAAMwC,GAAG,EAAO,SAAUjY,GAE5B,GADAi9B,EAASlyB,KAAK/K,GACVgL,EAAM,OAAO2G,MACZA,EAAQ,OACf,MAAOrR,GACP,GAAI0K,EAAM,MAAM1K,EAEhB,YADA28B,EAASzJ,MAAMlzB,GAEf28B,EAASI,cAGR,WAAcryB,GAAO,MAGhCE,GAAI,SAASA,KACX,IAAK,IAAIhP,EAAI,EAAGC,EAAIqD,UAAUC,OAAQi+B,EAAQ,IAAI/2B,MAAMxK,GAAID,EAAIC,GAAIuhC,EAAMxhC,GAAKsD,UAAUtD,KACzF,OAAO,IAAqB,mBAATqD,KAAsBA,KAAO+9B,GAAa,SAAUL,GACrE,IAAIjyB,GAAO,EASX,OARAymB,EAAU,WACR,IAAKzmB,EAAM,CACT,IAAK,IAAIyM,EAAI,EAAGA,EAAIimB,EAAMj+B,SAAUgY,EAElC,GADAwlB,EAASlyB,KAAK2yB,EAAMjmB,IAChBzM,EAAM,OACViyB,EAASI,cAGR,WAAcryB,GAAO,QAKlCnN,EAAKy/B,EAAYhgC,UAAWm/B,EAAY,WAAc,OAAOl9B,OAE7DvB,EAAQA,EAAQS,EAAG,CAAE8+B,WAAYD,IAEjCxhC,EAAoB,GAApBA,CAAwB,eAKlB,SAAUG,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9B6hC,EAAQ7hC,EAAoB,IAChCkC,EAAQA,EAAQS,EAAIT,EAAQe,EAAG,CAC7Bgb,aAAc4jB,EAAM/zB,IACpBqQ,eAAgB0jB,EAAMviB,SAMlB,SAAUnf,EAAQD,EAASF,GAEjCA,EAAoB,IAYpB,IAXA,IAAI4B,EAAS5B,EAAoB,GAC7B+B,EAAO/B,EAAoB,IAC3BgK,EAAYhK,EAAoB,IAChC8hC,EAAgB9hC,EAAoB,EAApBA,CAAuB,eAEvC+hC,EAAe,wbAIUp7B,MAAM,KAE1BvG,EAAI,EAAGA,EAAI2hC,EAAap+B,OAAQvD,IAAK,CAC5C,IAAIoG,EAAOu7B,EAAa3hC,GACpB4hC,EAAapgC,EAAO4E,GACpB+I,EAAQyyB,GAAcA,EAAWxgC,UACjC+N,IAAUA,EAAMuyB,IAAgB//B,EAAKwN,EAAOuyB,EAAet7B,GAC/DwD,EAAUxD,GAAQwD,EAAUa,QAMxB,SAAU1K,EAAQD,EAASF,GAGjC,IAAI4B,EAAS5B,EAAoB,GAC7BkC,EAAUlC,EAAoB,GAC9B0Z,EAAY1Z,EAAoB,IAChCyI,EAAQ,GAAGA,MACXw5B,EAAO,WAAWx7B,KAAKiT,GACvBwT,EAAO,SAAUpf,GACnB,OAAO,SAAUjH,EAAIq7B,GACnB,IAAIC,EAA+B,EAAnBz+B,UAAUC,OACtBiY,IAAOumB,GAAY15B,EAAMnI,KAAKoD,UAAW,GAC7C,OAAOoK,EAAIq0B,EAAY,YAEP,mBAANt7B,EAAmBA,EAAKhD,SAASgD,IAAKjD,MAAMH,KAAMmY,IACxD/U,EAAIq7B,KAGZhgC,EAAQA,EAAQS,EAAIT,EAAQe,EAAIf,EAAQO,EAAIw/B,EAAM,CAChD5iB,WAAY6N,EAAKtrB,EAAOyd,YACxB+iB,YAAalV,EAAKtrB,EAAOwgC,gBAMrB,SAAUjiC,EAAQD,EAASF,GAIjC,IAAI8B,EAAM9B,EAAoB,IAC1BkC,EAAUlC,EAAoB,GAC9B+G,EAAa/G,EAAoB,IACjCub,EAASvb,EAAoB,IAC7BgI,EAAShI,EAAoB,IAC7B6F,EAAiB7F,EAAoB,IACrCob,EAAUpb,EAAoB,IAC9BkF,EAAKlF,EAAoB,GACzBqiC,EAAQriC,EAAoB,KAC5B4G,EAAY5G,EAAoB,IAChC2Z,EAAQ3Z,EAAoB,IAC5BurB,EAAavrB,EAAoB,KACjCqY,EAAcrY,EAAoB,IAClC2O,EAAO3O,EAAoB,IAC3BiE,EAAWjE,EAAoB,GAC/BiH,EAAYjH,EAAoB,IAChC6W,EAAc7W,EAAoB,GAClCgC,EAAMhC,EAAoB,IAU1BsiC,EAAmB,SAAU96B,GAC/B,IAAIE,EAAiB,GAARF,EACTK,EAAmB,GAARL,EACf,OAAO,SAAUlG,EAAQ4G,EAAYpB,GACnC,IAIIzE,EAAK8F,EAAKC,EAJVjD,EAAIrD,EAAIoG,EAAYpB,EAAM,GAC1B1B,EAAI6B,EAAU3F,GACdgH,EAASZ,GAAkB,GAARF,GAAqB,GAARA,EAC5B,IAAoB,mBAAR/D,KAAqBA,KAAO8+B,MAAU1iC,GAE1D,IAAKwC,KAAO+C,EAAG,GAAIpD,EAAIoD,EAAG/C,KAExB+F,EAAMjD,EADNgD,EAAM/C,EAAE/C,GACKA,EAAKf,GACdkG,GACF,GAAIE,EAAQY,EAAOjG,GAAO+F,OACrB,GAAIA,EAAK,OAAQZ,GACpB,KAAK,EAAGc,EAAOjG,GAAO8F,EAAK,MAC3B,KAAK,EAAG,OAAO,EACf,KAAK,EAAG,OAAOA,EACf,KAAK,EAAG,OAAO9F,EACf,KAAK,EAAGiG,EAAOF,EAAI,IAAMA,EAAI,QACxB,GAAIP,EAAU,OAAO,EAGhC,OAAe,GAARL,GAAaK,EAAWA,EAAWS,IAG1Ck6B,EAAUF,EAAiB,GAE3BG,EAAiB,SAAUzpB,GAC7B,OAAO,SAAU9U,GACf,OAAO,IAAIw+B,EAAax+B,EAAI8U,KAG5B0pB,EAAe,SAAUrlB,EAAUrE,GACrCvV,KAAK+S,GAAKvP,EAAUoW,GACpB5Z,KAAKk0B,GAAKvc,EAAQiC,GAClB5Z,KAAK6Z,GAAK,EACV7Z,KAAK8Z,GAAKvE,GAmBZ,SAASupB,KAAKzsB,GACZ,IAAI6sB,EAAO36B,EAAO,MAQlB,OAPI8N,GAAYjW,KACV0rB,EAAWzV,GACb6D,EAAM7D,GAAU,EAAM,SAAUzT,EAAKiD,GACnCq9B,EAAKtgC,GAAOiD,IAETiW,EAAOonB,EAAM7sB,IAEf6sB,EA1BTtqB,EAAYqqB,EAAc,OAAQ,WAChC,IAIIrgC,EAJAyE,EAAOrD,KACP2B,EAAI0B,EAAK0P,GACT3K,EAAO/E,EAAK6wB,GACZ3e,EAAOlS,EAAKyW,GAEhB,GACE,GAAe1R,EAAKlI,QAAhBmD,EAAKwW,GAEP,OADAxW,EAAK0P,GAAK3W,GACH8O,EAAK,UAEN3M,EAAIoD,EAAG/C,EAAMwJ,EAAK/E,EAAKwW,QACjC,OAA2B3O,EAAK,EAApB,QAARqK,EAA+B3W,EACvB,UAAR2W,EAAiC5T,EAAE/C,GACxB,CAACA,EAAK+C,EAAE/C,OAczBkgC,KAAK/gC,UAAY,KAwCjBU,EAAQA,EAAQS,EAAIT,EAAQO,EAAG,CAAE8/B,KAAMA,OAEvCrgC,EAAQA,EAAQW,EAAG,OAAQ,CACzBgJ,KAAM42B,EAAe,QACrB92B,OAAQ82B,EAAe,UACvB12B,QAAS02B,EAAe,WACxBzyB,QAASsyB,EAAiB,GAC1BjyB,IAAKiyB,EAAiB,GACtB1yB,OAAQ0yB,EAAiB,GACzB9xB,KAAM8xB,EAAiB,GACvB5yB,MAAO4yB,EAAiB,GACxBzyB,KAAMyyB,EAAiB,GACvBE,QAASA,EACTI,SAAUN,EAAiB,GAC3Bn2B,OApDF,SAASA,OAAO7K,EAAQwN,EAAO6rB,GAC7B/zB,EAAUkI,GACV,IAIIiY,EAAM1kB,EAJN+C,EAAI6B,EAAU3F,GACduK,EAAOuP,EAAQhW,GACfzB,EAASkI,EAAKlI,OACdvD,EAAI,EAER,GAAIsD,UAAUC,OAAS,EAAG,CACxB,IAAKA,EAAQ,MAAMQ,UAAU,gDAC7B4iB,EAAO3hB,EAAEyG,EAAKzL,WACT2mB,EAAOlmB,OAAO85B,GACrB,KAAgBv6B,EAATuD,GAAgB3B,EAAIoD,EAAG/C,EAAMwJ,EAAKzL,QACvC2mB,EAAOjY,EAAMiY,EAAM3hB,EAAE/C,GAAMA,EAAKf,IAElC,OAAOylB,GAuCPsb,MAAOA,EACPlyB,SArCF,SAASA,SAAS7O,EAAQ0W,GAExB,OAAQA,GAAMA,EAAKqqB,EAAM/gC,EAAQ0W,GAAMwqB,EAAQlhC,EAAQ,SAAU4C,GAE/D,OAAOA,GAAMA,OACPrE,IAiCRmC,IAAKA,EACLf,IA/BF,SAASA,IAAIK,EAAQe,GACnB,GAAIL,EAAIV,EAAQe,GAAM,OAAOf,EAAOe,IA+BpCyL,IA7BF,SAASA,IAAIxM,EAAQe,EAAKiD,GAGxB,OAFIuR,GAAexU,KAAOxB,OAAQqE,EAAGC,EAAE7D,EAAQe,EAAK0E,EAAW,EAAGzB,IAC7DhE,EAAOe,GAAOiD,EACZhE,GA2BPuhC,OAxBF,SAASA,OAAO3+B,GACd,OAAOD,EAASC,IAAO2B,EAAe3B,KAAQq+B,KAAK/gC,cA6B/C,SAAUrB,EAAQD,EAASF,GAEjC,IAAIob,EAAUpb,EAAoB,IAC9BiH,EAAYjH,EAAoB,IACpCG,EAAOD,QAAU,SAAUoB,EAAQ0W,GAMjC,IALA,IAII3V,EAJA+C,EAAI6B,EAAU3F,GACduK,EAAOuP,EAAQhW,GACfzB,EAASkI,EAAKlI,OACd0E,EAAQ,EAEIA,EAAT1E,GAAgB,GAAIyB,EAAE/C,EAAMwJ,EAAKxD,QAAc2P,EAAI,OAAO3V,IAM7D,SAAUlC,EAAQD,EAASF,GAEjC,IAAI+E,EAAW/E,EAAoB,GAC/BiB,EAAMjB,EAAoB,IAC9BG,EAAOD,QAAUF,EAAoB,IAAI8iC,YAAc,SAAU5+B,GAC/D,IAAI8K,EAAS/N,EAAIiD,GACjB,GAAqB,mBAAV8K,EAAsB,MAAM7K,UAAUD,EAAK,qBACtD,OAAOa,EAASiK,EAAO1O,KAAK4D,MAMxB,SAAU/D,EAAQD,EAASF,GAEjC,IAAI4B,EAAS5B,EAAoB,GAC7B6B,EAAO7B,EAAoB,IAC3BkC,EAAUlC,EAAoB,GAC9B+iC,EAAU/iC,EAAoB,KAElCkC,EAAQA,EAAQS,EAAIT,EAAQO,EAAG,CAC7BugC,MAAO,SAASA,MAAMd,GACpB,OAAO,IAAKrgC,EAAK8d,SAAW/d,EAAO+d,SAAS,SAAUW,GACpDjB,WAAW0jB,EAAQziC,KAAKggB,GAAS,GAAO4hB,SAQxC,SAAU/hC,EAAQD,EAASF,GAEjC,IAAIwrB,EAAOxrB,EAAoB,KAC3BkC,EAAUlC,EAAoB,GAGlCA,EAAoB,IAAI2T,EAAI6X,EAAK7X,EAAI6X,EAAK7X,GAAK,GAE/CzR,EAAQA,EAAQa,EAAIb,EAAQO,EAAG,WAAY,CAAEoiB,KAAM7kB,EAAoB,QAKjE,SAAUG,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAG,SAAU,CAAEwB,SAAUjE,EAAoB,MAKnE,SAAUG,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAElCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAG,SAAU,CAAE8G,QAASvJ,EAAoB,OAKlE,SAAUG,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9B2rB,EAAS3rB,EAAoB,KAEjCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAG,SAAU,CAAEkpB,OAAQA,KAK7C,SAAUxrB,EAAQD,EAASF,GAEjC,IAAIkC,EAAUlC,EAAoB,GAC9B2rB,EAAS3rB,EAAoB,KAC7BgI,EAAShI,EAAoB,IAEjCkC,EAAQA,EAAQW,EAAIX,EAAQO,EAAG,SAAU,CACvCwgC,KAAM,SAAU1zB,EAAOqc,GACrB,OAAOD,EAAO3jB,EAAOuH,GAAQqc,OAO3B,SAAUzrB,EAAQD,EAASF,GAIjCA,EAAoB,GAApBA,CAAwBswB,OAAQ,SAAU,SAAUjT,GAClD5Z,KAAKkkB,IAAMtK,EACX5Z,KAAK6Z,GAAK,GACT,WACD,IAAIld,EAAIqD,KAAK6Z,KACTpO,IAAS9O,EAAIqD,KAAKkkB,IACtB,MAAO,CAAEzY,KAAMA,EAAM5J,MAAO4J,EAAOrP,GAAYO,MAM3C,SAAUD,EAAQD,EAASF,GAGjC,IAAIkC,EAAUlC,EAAoB,GAC9BkjC,EAAMljC,EAAoB,GAApBA,CAAwB,sBAAuB,QAEzDkC,EAAQA,EAAQW,EAAG,SAAU,CAAEsgC,OAAQ,SAASA,OAAOj/B,GAAM,OAAOg/B,EAAIh/B,OAKlE,SAAU/D,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9BkjC,EAAMljC,EAAoB,GAApBA,CAAwB,WAAY,CAC5CojC,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,SACLC,IAAK,WAGPthC,EAAQA,EAAQa,EAAIb,EAAQO,EAAG,SAAU,CAAEghC,WAAY,SAASA,aAAe,OAAOP,EAAIz/B,UAKpF,SAAUtD,EAAQD,EAASF,GAIjC,IAAIkC,EAAUlC,EAAoB,GAC9BkjC,EAAMljC,EAAoB,GAApBA,CAAwB,6BAA8B,CAC9D0jC,QAAS,IACTC,OAAQ,IACRC,OAAQ,IACRC,SAAU,IACVC,SAAU,MAGZ5hC,EAAQA,EAAQa,EAAIb,EAAQO,EAAG,SAAU,CAAEshC,aAAc,SAASA,eAAiB,OAAOb,EAAIz/B,YAMzE,oBAAVtD,QAAyBA,OAAOD,QAASC,OAAOD,QAAUP,EAE3C,mBAAVgsB,QAAwBA,OAAOqY,IAAKrY,OAAO,WAAc,OAAOhsB,IAE3EC,EAAIiC,KAAOlC,EA39Pf,CA49PC,EAAG","file":"library.min.js"} \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/shim.js b/forward_engineering/node_modules/core-js/client/shim.js deleted file mode 100644 index ea722e8..0000000 --- a/forward_engineering/node_modules/core-js/client/shim.js +++ /dev/null @@ -1,8663 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(__e, __g, undefined){ -'use strict'; -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 129); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(26); -var hide = __webpack_require__(11); -var redefine = __webpack_require__(12); -var ctx = __webpack_require__(18); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); - var key, own, out, exp; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed - out = (own ? target : source)[key]; - // bind timers to global for call from export context - exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // extend global - if (target) redefine(target, key, out, type & $export.U); - // export - if (exports[key] != out) hide(exports, key, exp); - if (IS_PROTO && expProto[key] != out) expProto[key] = out; - } -}; -global.core = core; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; - - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(4); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - - -/***/ }), -/* 2 */ -/***/ (function(module, exports) { - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; - - -/***/ }), -/* 4 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; - - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -var store = __webpack_require__(47)('wks'); -var uid = __webpack_require__(33); -var Symbol = __webpack_require__(2).Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; - - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.15 ToLength -var toInteger = __webpack_require__(20); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; - - -/***/ }), -/* 7 */ -/***/ (function(module, exports, __webpack_require__) { - -// Thank's IE8 for his funny defineProperty -module.exports = !__webpack_require__(3)(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var IE8_DOM_DEFINE = __webpack_require__(93); -var toPrimitive = __webpack_require__(22); -var dP = Object.defineProperty; - -exports.f = __webpack_require__(7) ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; - - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.13 ToObject(argument) -var defined = __webpack_require__(23); -module.exports = function (it) { - return Object(defined(it)); -}; - - -/***/ }), -/* 10 */ -/***/ (function(module, exports) { - -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; - - -/***/ }), -/* 11 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var createDesc = __webpack_require__(32); -module.exports = __webpack_require__(7) ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; - - -/***/ }), -/* 12 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var hide = __webpack_require__(11); -var has = __webpack_require__(14); -var SRC = __webpack_require__(33)('src'); -var $toString = __webpack_require__(131); -var TO_STRING = 'toString'; -var TPL = ('' + $toString).split(TO_STRING); - -__webpack_require__(26).inspectSource = function (it) { - return $toString.call(it); -}; - -(module.exports = function (O, key, val, safe) { - var isFunction = typeof val == 'function'; - if (isFunction) has(val, 'name') || hide(val, 'name', key); - if (O[key] === val) return; - if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); - if (O === global) { - O[key] = val; - } else if (!safe) { - delete O[key]; - hide(O, key, val); - } else if (O[key]) { - O[key] = val; - } else { - hide(O, key, val); - } -// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative -})(Function.prototype, TO_STRING, function toString() { - return typeof this == 'function' && this[SRC] || $toString.call(this); -}); - - -/***/ }), -/* 13 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var fails = __webpack_require__(3); -var defined = __webpack_require__(23); -var quot = /"/g; -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -var createHTML = function (string, tag, attribute, value) { - var S = String(defined(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; -module.exports = function (NAME, exec) { - var O = {}; - O[NAME] = exec(createHTML); - $export($export.P + $export.F * fails(function () { - var test = ''[NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }), 'String', O); -}; - - -/***/ }), -/* 14 */ -/***/ (function(module, exports) { - -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; - - -/***/ }), -/* 15 */ -/***/ (function(module, exports, __webpack_require__) { - -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = __webpack_require__(48); -var defined = __webpack_require__(23); -module.exports = function (it) { - return IObject(defined(it)); -}; - - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __webpack_require__) { - -var pIE = __webpack_require__(49); -var createDesc = __webpack_require__(32); -var toIObject = __webpack_require__(15); -var toPrimitive = __webpack_require__(22); -var has = __webpack_require__(14); -var IE8_DOM_DEFINE = __webpack_require__(93); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = __webpack_require__(7) ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; - - -/***/ }), -/* 17 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = __webpack_require__(14); -var toObject = __webpack_require__(9); -var IE_PROTO = __webpack_require__(68)('IE_PROTO'); -var ObjectProto = Object.prototype; - -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; - - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __webpack_require__) { - -// optional / simple context binding -var aFunction = __webpack_require__(10); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; - - -/***/ }), -/* 19 */ -/***/ (function(module, exports) { - -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; - - -/***/ }), -/* 20 */ -/***/ (function(module, exports) { - -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; - - -/***/ }), -/* 21 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var fails = __webpack_require__(3); - -module.exports = function (method, arg) { - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call - arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); - }); -}; - - -/***/ }), -/* 22 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = __webpack_require__(4); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; - - -/***/ }), -/* 23 */ -/***/ (function(module, exports) { - -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; - - -/***/ }), -/* 24 */ -/***/ (function(module, exports, __webpack_require__) { - -// most Object methods by ES6 should accept primitives -var $export = __webpack_require__(0); -var core = __webpack_require__(26); -var fails = __webpack_require__(3); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; - - -/***/ }), -/* 25 */ -/***/ (function(module, exports, __webpack_require__) { - -// 0 -> Array#forEach -// 1 -> Array#map -// 2 -> Array#filter -// 3 -> Array#some -// 4 -> Array#every -// 5 -> Array#find -// 6 -> Array#findIndex -var ctx = __webpack_require__(18); -var IObject = __webpack_require__(48); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var asc = __webpack_require__(84); -module.exports = function (TYPE, $create) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - var create = $create || asc; - return function ($this, callbackfn, that) { - var O = toObject($this); - var self = IObject(O); - var f = ctx(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var val, res; - for (;length > index; index++) if (NO_HOLES || index in self) { - val = self[index]; - res = f(val, index, O); - if (TYPE) { - if (IS_MAP) result[index] = res; // map - else if (res) switch (TYPE) { - case 3: return true; // some - case 5: return val; // find - case 6: return index; // findIndex - case 2: result.push(val); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; - }; -}; - - -/***/ }), -/* 26 */ -/***/ (function(module, exports) { - -var core = module.exports = { version: '2.6.9' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -if (__webpack_require__(7)) { - var LIBRARY = __webpack_require__(29); - var global = __webpack_require__(2); - var fails = __webpack_require__(3); - var $export = __webpack_require__(0); - var $typed = __webpack_require__(62); - var $buffer = __webpack_require__(92); - var ctx = __webpack_require__(18); - var anInstance = __webpack_require__(39); - var propertyDesc = __webpack_require__(32); - var hide = __webpack_require__(11); - var redefineAll = __webpack_require__(41); - var toInteger = __webpack_require__(20); - var toLength = __webpack_require__(6); - var toIndex = __webpack_require__(122); - var toAbsoluteIndex = __webpack_require__(35); - var toPrimitive = __webpack_require__(22); - var has = __webpack_require__(14); - var classof = __webpack_require__(44); - var isObject = __webpack_require__(4); - var toObject = __webpack_require__(9); - var isArrayIter = __webpack_require__(81); - var create = __webpack_require__(36); - var getPrototypeOf = __webpack_require__(17); - var gOPN = __webpack_require__(37).f; - var getIterFn = __webpack_require__(83); - var uid = __webpack_require__(33); - var wks = __webpack_require__(5); - var createArrayMethod = __webpack_require__(25); - var createArrayIncludes = __webpack_require__(52); - var speciesConstructor = __webpack_require__(51); - var ArrayIterators = __webpack_require__(86); - var Iterators = __webpack_require__(46); - var $iterDetect = __webpack_require__(57); - var setSpecies = __webpack_require__(38); - var arrayFill = __webpack_require__(85); - var arrayCopyWithin = __webpack_require__(110); - var $DP = __webpack_require__(8); - var $GOPD = __webpack_require__(16); - var dP = $DP.f; - var gOPD = $GOPD.f; - var RangeError = global.RangeError; - var TypeError = global.TypeError; - var Uint8Array = global.Uint8Array; - var ARRAY_BUFFER = 'ArrayBuffer'; - var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER; - var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; - var PROTOTYPE = 'prototype'; - var ArrayProto = Array[PROTOTYPE]; - var $ArrayBuffer = $buffer.ArrayBuffer; - var $DataView = $buffer.DataView; - var arrayForEach = createArrayMethod(0); - var arrayFilter = createArrayMethod(2); - var arraySome = createArrayMethod(3); - var arrayEvery = createArrayMethod(4); - var arrayFind = createArrayMethod(5); - var arrayFindIndex = createArrayMethod(6); - var arrayIncludes = createArrayIncludes(true); - var arrayIndexOf = createArrayIncludes(false); - var arrayValues = ArrayIterators.values; - var arrayKeys = ArrayIterators.keys; - var arrayEntries = ArrayIterators.entries; - var arrayLastIndexOf = ArrayProto.lastIndexOf; - var arrayReduce = ArrayProto.reduce; - var arrayReduceRight = ArrayProto.reduceRight; - var arrayJoin = ArrayProto.join; - var arraySort = ArrayProto.sort; - var arraySlice = ArrayProto.slice; - var arrayToString = ArrayProto.toString; - var arrayToLocaleString = ArrayProto.toLocaleString; - var ITERATOR = wks('iterator'); - var TAG = wks('toStringTag'); - var TYPED_CONSTRUCTOR = uid('typed_constructor'); - var DEF_CONSTRUCTOR = uid('def_constructor'); - var ALL_CONSTRUCTORS = $typed.CONSTR; - var TYPED_ARRAY = $typed.TYPED; - var VIEW = $typed.VIEW; - var WRONG_LENGTH = 'Wrong length!'; - - var $map = createArrayMethod(1, function (O, length) { - return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length); - }); - - var LITTLE_ENDIAN = fails(function () { - // eslint-disable-next-line no-undef - return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1; - }); - - var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () { - new Uint8Array(1).set({}); - }); - - var toOffset = function (it, BYTES) { - var offset = toInteger(it); - if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!'); - return offset; - }; - - var validate = function (it) { - if (isObject(it) && TYPED_ARRAY in it) return it; - throw TypeError(it + ' is not a typed array!'); - }; - - var allocate = function (C, length) { - if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) { - throw TypeError('It is not a typed array constructor!'); - } return new C(length); - }; - - var speciesFromList = function (O, list) { - return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list); - }; - - var fromList = function (C, list) { - var index = 0; - var length = list.length; - var result = allocate(C, length); - while (length > index) result[index] = list[index++]; - return result; - }; - - var addGetter = function (it, key, internal) { - dP(it, key, { get: function () { return this._d[internal]; } }); - }; - - var $from = function from(source /* , mapfn, thisArg */) { - var O = toObject(source); - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iterFn = getIterFn(O); - var i, length, values, result, step, iterator; - if (iterFn != undefined && !isArrayIter(iterFn)) { - for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) { - values.push(step.value); - } O = values; - } - if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2); - for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) { - result[i] = mapping ? mapfn(O[i], i) : O[i]; - } - return result; - }; - - var $of = function of(/* ...items */) { - var index = 0; - var length = arguments.length; - var result = allocate(this, length); - while (length > index) result[index] = arguments[index++]; - return result; - }; - - // iOS Safari 6.x fails here - var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); }); - - var $toLocaleString = function toLocaleString() { - return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments); - }; - - var proto = { - copyWithin: function copyWithin(target, start /* , end */) { - return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined); - }, - every: function every(callbackfn /* , thisArg */) { - return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars - return arrayFill.apply(validate(this), arguments); - }, - filter: function filter(callbackfn /* , thisArg */) { - return speciesFromList(this, arrayFilter(validate(this), callbackfn, - arguments.length > 1 ? arguments[1] : undefined)); - }, - find: function find(predicate /* , thisArg */) { - return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - findIndex: function findIndex(predicate /* , thisArg */) { - return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - forEach: function forEach(callbackfn /* , thisArg */) { - arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - indexOf: function indexOf(searchElement /* , fromIndex */) { - return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - includes: function includes(searchElement /* , fromIndex */) { - return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - join: function join(separator) { // eslint-disable-line no-unused-vars - return arrayJoin.apply(validate(this), arguments); - }, - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars - return arrayLastIndexOf.apply(validate(this), arguments); - }, - map: function map(mapfn /* , thisArg */) { - return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined); - }, - reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduce.apply(validate(this), arguments); - }, - reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduceRight.apply(validate(this), arguments); - }, - reverse: function reverse() { - var that = this; - var length = validate(that).length; - var middle = Math.floor(length / 2); - var index = 0; - var value; - while (index < middle) { - value = that[index]; - that[index++] = that[--length]; - that[length] = value; - } return that; - }, - some: function some(callbackfn /* , thisArg */) { - return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - sort: function sort(comparefn) { - return arraySort.call(validate(this), comparefn); - }, - subarray: function subarray(begin, end) { - var O = validate(this); - var length = O.length; - var $begin = toAbsoluteIndex(begin, length); - return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))( - O.buffer, - O.byteOffset + $begin * O.BYTES_PER_ELEMENT, - toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin) - ); - } - }; - - var $slice = function slice(start, end) { - return speciesFromList(this, arraySlice.call(validate(this), start, end)); - }; - - var $set = function set(arrayLike /* , offset */) { - validate(this); - var offset = toOffset(arguments[1], 1); - var length = this.length; - var src = toObject(arrayLike); - var len = toLength(src.length); - var index = 0; - if (len + offset > length) throw RangeError(WRONG_LENGTH); - while (index < len) this[offset + index] = src[index++]; - }; - - var $iterators = { - entries: function entries() { - return arrayEntries.call(validate(this)); - }, - keys: function keys() { - return arrayKeys.call(validate(this)); - }, - values: function values() { - return arrayValues.call(validate(this)); - } - }; - - var isTAIndex = function (target, key) { - return isObject(target) - && target[TYPED_ARRAY] - && typeof key != 'symbol' - && key in target - && String(+key) == String(key); - }; - var $getDesc = function getOwnPropertyDescriptor(target, key) { - return isTAIndex(target, key = toPrimitive(key, true)) - ? propertyDesc(2, target[key]) - : gOPD(target, key); - }; - var $setDesc = function defineProperty(target, key, desc) { - if (isTAIndex(target, key = toPrimitive(key, true)) - && isObject(desc) - && has(desc, 'value') - && !has(desc, 'get') - && !has(desc, 'set') - // TODO: add validation descriptor w/o calling accessors - && !desc.configurable - && (!has(desc, 'writable') || desc.writable) - && (!has(desc, 'enumerable') || desc.enumerable) - ) { - target[key] = desc.value; - return target; - } return dP(target, key, desc); - }; - - if (!ALL_CONSTRUCTORS) { - $GOPD.f = $getDesc; - $DP.f = $setDesc; - } - - $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', { - getOwnPropertyDescriptor: $getDesc, - defineProperty: $setDesc - }); - - if (fails(function () { arrayToString.call({}); })) { - arrayToString = arrayToLocaleString = function toString() { - return arrayJoin.call(this); - }; - } - - var $TypedArrayPrototype$ = redefineAll({}, proto); - redefineAll($TypedArrayPrototype$, $iterators); - hide($TypedArrayPrototype$, ITERATOR, $iterators.values); - redefineAll($TypedArrayPrototype$, { - slice: $slice, - set: $set, - constructor: function () { /* noop */ }, - toString: arrayToString, - toLocaleString: $toLocaleString - }); - addGetter($TypedArrayPrototype$, 'buffer', 'b'); - addGetter($TypedArrayPrototype$, 'byteOffset', 'o'); - addGetter($TypedArrayPrototype$, 'byteLength', 'l'); - addGetter($TypedArrayPrototype$, 'length', 'e'); - dP($TypedArrayPrototype$, TAG, { - get: function () { return this[TYPED_ARRAY]; } - }); - - // eslint-disable-next-line max-statements - module.exports = function (KEY, BYTES, wrapper, CLAMPED) { - CLAMPED = !!CLAMPED; - var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'; - var GETTER = 'get' + KEY; - var SETTER = 'set' + KEY; - var TypedArray = global[NAME]; - var Base = TypedArray || {}; - var TAC = TypedArray && getPrototypeOf(TypedArray); - var FORCED = !TypedArray || !$typed.ABV; - var O = {}; - var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE]; - var getter = function (that, index) { - var data = that._d; - return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN); - }; - var setter = function (that, index, value) { - var data = that._d; - if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff; - data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN); - }; - var addElement = function (that, index) { - dP(that, index, { - get: function () { - return getter(this, index); - }, - set: function (value) { - return setter(this, index, value); - }, - enumerable: true - }); - }; - if (FORCED) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME, '_d'); - var index = 0; - var offset = 0; - var buffer, byteLength, length, klass; - if (!isObject(data)) { - length = toIndex(data); - byteLength = length * BYTES; - buffer = new $ArrayBuffer(byteLength); - } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - buffer = data; - offset = toOffset($offset, BYTES); - var $len = data.byteLength; - if ($length === undefined) { - if ($len % BYTES) throw RangeError(WRONG_LENGTH); - byteLength = $len - offset; - if (byteLength < 0) throw RangeError(WRONG_LENGTH); - } else { - byteLength = toLength($length) * BYTES; - if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH); - } - length = byteLength / BYTES; - } else if (TYPED_ARRAY in data) { - return fromList(TypedArray, data); - } else { - return $from.call(TypedArray, data); - } - hide(that, '_d', { - b: buffer, - o: offset, - l: byteLength, - e: length, - v: new $DataView(buffer) - }); - while (index < length) addElement(that, index++); - }); - TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$); - hide(TypedArrayPrototype, 'constructor', TypedArray); - } else if (!fails(function () { - TypedArray(1); - }) || !fails(function () { - new TypedArray(-1); // eslint-disable-line no-new - }) || !$iterDetect(function (iter) { - new TypedArray(); // eslint-disable-line no-new - new TypedArray(null); // eslint-disable-line no-new - new TypedArray(1.5); // eslint-disable-line no-new - new TypedArray(iter); // eslint-disable-line no-new - }, true)) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME); - var klass; - // `ws` module bug, temporarily remove validation length for Uint8Array - // https://github.com/websockets/ws/pull/645 - if (!isObject(data)) return new Base(toIndex(data)); - if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - return $length !== undefined - ? new Base(data, toOffset($offset, BYTES), $length) - : $offset !== undefined - ? new Base(data, toOffset($offset, BYTES)) - : new Base(data); - } - if (TYPED_ARRAY in data) return fromList(TypedArray, data); - return $from.call(TypedArray, data); - }); - arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) { - if (!(key in TypedArray)) hide(TypedArray, key, Base[key]); - }); - TypedArray[PROTOTYPE] = TypedArrayPrototype; - if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray; - } - var $nativeIterator = TypedArrayPrototype[ITERATOR]; - var CORRECT_ITER_NAME = !!$nativeIterator - && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined); - var $iterator = $iterators.values; - hide(TypedArray, TYPED_CONSTRUCTOR, true); - hide(TypedArrayPrototype, TYPED_ARRAY, NAME); - hide(TypedArrayPrototype, VIEW, true); - hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray); - - if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) { - dP(TypedArrayPrototype, TAG, { - get: function () { return NAME; } - }); - } - - O[NAME] = TypedArray; - - $export($export.G + $export.W + $export.F * (TypedArray != Base), O); - - $export($export.S, NAME, { - BYTES_PER_ELEMENT: BYTES - }); - - $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, { - from: $from, - of: $of - }); - - if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES); - - $export($export.P, NAME, proto); - - setSpecies(NAME); - - $export($export.P + $export.F * FORCED_SET, NAME, { set: $set }); - - $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators); - - if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString; - - $export($export.P + $export.F * fails(function () { - new TypedArray(1).slice(); - }), NAME, { slice: $slice }); - - $export($export.P + $export.F * (fails(function () { - return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString(); - }) || !fails(function () { - TypedArrayPrototype.toLocaleString.call([1, 2]); - })), NAME, { toLocaleString: $toLocaleString }); - - Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator; - if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator); - }; -} else module.exports = function () { /* empty */ }; - - -/***/ }), -/* 28 */ -/***/ (function(module, exports, __webpack_require__) { - -var Map = __webpack_require__(116); -var $export = __webpack_require__(0); -var shared = __webpack_require__(47)('metadata'); -var store = shared.store || (shared.store = new (__webpack_require__(119))()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return undefined; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return undefined; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; -var toMetaKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; -var exp = function (O) { - $export($export.S, 'Reflect', O); -}; - -module.exports = { - store: store, - map: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - key: toMetaKey, - exp: exp -}; - - -/***/ }), -/* 29 */ -/***/ (function(module, exports) { - -module.exports = false; - - -/***/ }), -/* 30 */ -/***/ (function(module, exports, __webpack_require__) { - -var META = __webpack_require__(33)('meta'); -var isObject = __webpack_require__(4); -var has = __webpack_require__(14); -var setDesc = __webpack_require__(8).f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !__webpack_require__(3)(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; - - -/***/ }), -/* 31 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.31 Array.prototype[@@unscopables] -var UNSCOPABLES = __webpack_require__(5)('unscopables'); -var ArrayProto = Array.prototype; -if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(11)(ArrayProto, UNSCOPABLES, {}); -module.exports = function (key) { - ArrayProto[UNSCOPABLES][key] = true; -}; - - -/***/ }), -/* 32 */ -/***/ (function(module, exports) { - -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; - - -/***/ }), -/* 33 */ -/***/ (function(module, exports) { - -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; - - -/***/ }), -/* 34 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = __webpack_require__(95); -var enumBugKeys = __webpack_require__(69); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; - - -/***/ }), -/* 35 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(20); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; - - -/***/ }), -/* 36 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = __webpack_require__(1); -var dPs = __webpack_require__(96); -var enumBugKeys = __webpack_require__(69); -var IE_PROTO = __webpack_require__(68)('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = __webpack_require__(66)('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - __webpack_require__(70).appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; - - -/***/ }), -/* 37 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = __webpack_require__(95); -var hiddenKeys = __webpack_require__(69).concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; - - -/***/ }), -/* 38 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var dP = __webpack_require__(8); -var DESCRIPTORS = __webpack_require__(7); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (KEY) { - var C = global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; - - -/***/ }), -/* 39 */ -/***/ (function(module, exports) { - -module.exports = function (it, Constructor, name, forbiddenField) { - if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) { - throw TypeError(name + ': incorrect invocation!'); - } return it; -}; - - -/***/ }), -/* 40 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(18); -var call = __webpack_require__(108); -var isArrayIter = __webpack_require__(81); -var anObject = __webpack_require__(1); -var toLength = __webpack_require__(6); -var getIterFn = __webpack_require__(83); -var BREAK = {}; -var RETURN = {}; -var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { - var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); - var f = ctx(fn, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); - // fast case for arrays with default iterator - if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) return result; - } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) return result; - } -}; -exports.BREAK = BREAK; -exports.RETURN = RETURN; - - -/***/ }), -/* 41 */ -/***/ (function(module, exports, __webpack_require__) { - -var redefine = __webpack_require__(12); -module.exports = function (target, src, safe) { - for (var key in src) redefine(target, key, src[key], safe); - return target; -}; - - -/***/ }), -/* 42 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(4); -module.exports = function (it, TYPE) { - if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); - return it; -}; - - -/***/ }), -/* 43 */ -/***/ (function(module, exports, __webpack_require__) { - -var def = __webpack_require__(8).f; -var has = __webpack_require__(14); -var TAG = __webpack_require__(5)('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; - - -/***/ }), -/* 44 */ -/***/ (function(module, exports, __webpack_require__) { - -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = __webpack_require__(19); -var TAG = __webpack_require__(5)('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; - - -/***/ }), -/* 45 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var defined = __webpack_require__(23); -var fails = __webpack_require__(3); -var spaces = __webpack_require__(73); -var space = '[' + spaces + ']'; -var non = '\u200b\u0085'; -var ltrim = RegExp('^' + space + space + '*'); -var rtrim = RegExp(space + space + '*$'); - -var exporter = function (KEY, exec, ALIAS) { - var exp = {}; - var FORCE = fails(function () { - return !!spaces[KEY]() || non[KEY]() != non; - }); - var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; - if (ALIAS) exp[ALIAS] = fn; - $export($export.P + $export.F * FORCE, 'String', exp); -}; - -// 1 -> String#trimLeft -// 2 -> String#trimRight -// 3 -> String#trim -var trim = exporter.trim = function (string, TYPE) { - string = String(defined(string)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; -}; - -module.exports = exporter; - - -/***/ }), -/* 46 */ -/***/ (function(module, exports) { - -module.exports = {}; - - -/***/ }), -/* 47 */ -/***/ (function(module, exports, __webpack_require__) { - -var core = __webpack_require__(26); -var global = __webpack_require__(2); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: __webpack_require__(29) ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); - - -/***/ }), -/* 48 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = __webpack_require__(19); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; - - -/***/ }), -/* 49 */ -/***/ (function(module, exports) { - -exports.f = {}.propertyIsEnumerable; - - -/***/ }), -/* 50 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.2.5.3 get RegExp.prototype.flags -var anObject = __webpack_require__(1); -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; - - -/***/ }), -/* 51 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var SPECIES = __webpack_require__(5)('species'); -module.exports = function (O, D) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); -}; - - -/***/ }), -/* 52 */ -/***/ (function(module, exports, __webpack_require__) { - -// false -> Array#indexOf -// true -> Array#includes -var toIObject = __webpack_require__(15); -var toLength = __webpack_require__(6); -var toAbsoluteIndex = __webpack_require__(35); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; - - -/***/ }), -/* 53 */ -/***/ (function(module, exports) { - -exports.f = Object.getOwnPropertySymbols; - - -/***/ }), -/* 54 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.2 IsArray(argument) -var cof = __webpack_require__(19); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; - - -/***/ }), -/* 55 */ -/***/ (function(module, exports, __webpack_require__) { - -var toInteger = __webpack_require__(20); -var defined = __webpack_require__(23); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; - - -/***/ }), -/* 56 */ -/***/ (function(module, exports, __webpack_require__) { - -// 7.2.8 IsRegExp(argument) -var isObject = __webpack_require__(4); -var cof = __webpack_require__(19); -var MATCH = __webpack_require__(5)('match'); -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); -}; - - -/***/ }), -/* 57 */ -/***/ (function(module, exports, __webpack_require__) { - -var ITERATOR = __webpack_require__(5)('iterator'); -var SAFE_CLOSING = false; - -try { - var riter = [7][ITERATOR](); - riter['return'] = function () { SAFE_CLOSING = true; }; - // eslint-disable-next-line no-throw-literal - Array.from(riter, function () { throw 2; }); -} catch (e) { /* empty */ } - -module.exports = function (exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function () { return { done: safe = true }; }; - arr[ITERATOR] = function () { return iter; }; - exec(arr); - } catch (e) { /* empty */ } - return safe; -}; - - -/***/ }), -/* 58 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var classof = __webpack_require__(44); -var builtinExec = RegExp.prototype.exec; - - // `RegExpExec` abstract operation -// https://tc39.github.io/ecma262/#sec-regexpexec -module.exports = function (R, S) { - var exec = R.exec; - if (typeof exec === 'function') { - var result = exec.call(R, S); - if (typeof result !== 'object') { - throw new TypeError('RegExp exec method returned something other than an Object or null'); - } - return result; - } - if (classof(R) !== 'RegExp') { - throw new TypeError('RegExp#exec called on incompatible receiver'); - } - return builtinExec.call(R, S); -}; - - -/***/ }), -/* 59 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(112); -var redefine = __webpack_require__(12); -var hide = __webpack_require__(11); -var fails = __webpack_require__(3); -var defined = __webpack_require__(23); -var wks = __webpack_require__(5); -var regexpExec = __webpack_require__(87); - -var SPECIES = wks('species'); - -var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { - // #replace needs built-in support for named groups. - // #match works fine because it just return the exec results, even if it has - // a "grops" property. - var re = /./; - re.exec = function () { - var result = []; - result.groups = { a: '7' }; - return result; - }; - return ''.replace(re, '$') !== '7'; -}); - -var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { - // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec - var re = /(?:)/; - var originalExec = re.exec; - re.exec = function () { return originalExec.apply(this, arguments); }; - var result = 'ab'.split(re); - return result.length === 2 && result[0] === 'a' && result[1] === 'b'; -})(); - -module.exports = function (KEY, length, exec) { - var SYMBOL = wks(KEY); - - var DELEGATES_TO_SYMBOL = !fails(function () { - // String methods call symbol-named RegEp methods - var O = {}; - O[SYMBOL] = function () { return 7; }; - return ''[KEY](O) != 7; - }); - - var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { - // Symbol-named RegExp methods call .exec - var execCalled = false; - var re = /a/; - re.exec = function () { execCalled = true; return null; }; - if (KEY === 'split') { - // RegExp[@@split] doesn't call the regex's exec method, but first creates - // a new one. We need to return the patched regex when creating the new one. - re.constructor = {}; - re.constructor[SPECIES] = function () { return re; }; - } - re[SYMBOL](''); - return !execCalled; - }) : undefined; - - if ( - !DELEGATES_TO_SYMBOL || - !DELEGATES_TO_EXEC || - (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || - (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) - ) { - var nativeRegExpMethod = /./[SYMBOL]; - var fns = exec( - defined, - SYMBOL, - ''[KEY], - function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { - if (regexp.exec === regexpExec) { - if (DELEGATES_TO_SYMBOL && !forceStringMethod) { - // The native String method already delegates to @@method (this - // polyfilled function), leasing to infinite recursion. - // We avoid it by directly calling the native @@method method. - return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; - } - return { done: true, value: nativeMethod.call(str, regexp, arg2) }; - } - return { done: false }; - } - ); - var strfn = fns[0]; - var rxfn = fns[1]; - - redefine(String.prototype, KEY, strfn); - hide(RegExp.prototype, SYMBOL, length == 2 - // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) - // 21.2.5.11 RegExp.prototype[@@split](string, limit) - ? function (string, arg) { return rxfn.call(string, this, arg); } - // 21.2.5.6 RegExp.prototype[@@match](string) - // 21.2.5.9 RegExp.prototype[@@search](string) - : function (string) { return rxfn.call(string, this); } - ); - } -}; - - -/***/ }), -/* 60 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var navigator = global.navigator; - -module.exports = navigator && navigator.userAgent || ''; - - -/***/ }), -/* 61 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(12); -var redefineAll = __webpack_require__(41); -var meta = __webpack_require__(30); -var forOf = __webpack_require__(40); -var anInstance = __webpack_require__(39); -var isObject = __webpack_require__(4); -var fails = __webpack_require__(3); -var $iterDetect = __webpack_require__(57); -var setToStringTag = __webpack_require__(43); -var inheritIfRequired = __webpack_require__(72); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - var fixMethod = function (KEY) { - var fn = proto[KEY]; - redefine(proto, KEY, - KEY == 'delete' ? function (a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'has' ? function has(a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'get' ? function get(a) { - return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; } - : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; } - ); - }; - if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - var instance = new C(); - // early implementations not supports chaining - var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance; - // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false - var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); }); - // most early implementations doesn't supports iterables, most modern - not close it correctly - var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new - // for early implementations -0 and +0 not the same - var BUGGY_ZERO = !IS_WEAK && fails(function () { - // V8 ~ Chromium 42- fails only with 5+ elements - var $instance = new C(); - var index = 5; - while (index--) $instance[ADDER](index, index); - return !$instance.has(-0); - }); - if (!ACCEPT_ITERABLES) { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME); - var that = inheritIfRequired(new Base(), target, C); - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - return that; - }); - C.prototype = proto; - proto.constructor = C; - } - if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) { - fixMethod('delete'); - fixMethod('has'); - IS_MAP && fixMethod('get'); - } - if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER); - // weak collections should not contains .clear method - if (IS_WEAK && proto.clear) delete proto.clear; - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F * (C != Base), O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; - - -/***/ }), -/* 62 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var hide = __webpack_require__(11); -var uid = __webpack_require__(33); -var TYPED = uid('typed_array'); -var VIEW = uid('view'); -var ABV = !!(global.ArrayBuffer && global.DataView); -var CONSTR = ABV; -var i = 0; -var l = 9; -var Typed; - -var TypedArrayConstructors = ( - 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array' -).split(','); - -while (i < l) { - if (Typed = global[TypedArrayConstructors[i++]]) { - hide(Typed.prototype, TYPED, true); - hide(Typed.prototype, VIEW, true); - } else CONSTR = false; -} - -module.exports = { - ABV: ABV, - CONSTR: CONSTR, - TYPED: TYPED, - VIEW: VIEW -}; - - -/***/ }), -/* 63 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// Forced replacement prototype accessors methods -module.exports = __webpack_require__(29) || !__webpack_require__(3)(function () { - var K = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, K, function () { /* empty */ }); - delete __webpack_require__(2)[K]; -}); - - -/***/ }), -/* 64 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { of: function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); - } }); -}; - - -/***/ }), -/* 65 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var ctx = __webpack_require__(18); -var forOf = __webpack_require__(40); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { - var mapFn = arguments[1]; - var mapping, A, n, cb; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - cb = ctx(mapFn, arguments[2], 2); - forOf(source, false, function (nextItem) { - A.push(cb(nextItem, n++)); - }); - } else { - forOf(source, false, A.push, A); - } - return new this(A); - } }); -}; - - -/***/ }), -/* 66 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(4); -var document = __webpack_require__(2).document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; - - -/***/ }), -/* 67 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var core = __webpack_require__(26); -var LIBRARY = __webpack_require__(29); -var wksExt = __webpack_require__(94); -var defineProperty = __webpack_require__(8).f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; - - -/***/ }), -/* 68 */ -/***/ (function(module, exports, __webpack_require__) { - -var shared = __webpack_require__(47)('keys'); -var uid = __webpack_require__(33); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; - - -/***/ }), -/* 69 */ -/***/ (function(module, exports) { - -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); - - -/***/ }), -/* 70 */ -/***/ (function(module, exports, __webpack_require__) { - -var document = __webpack_require__(2).document; -module.exports = document && document.documentElement; - - -/***/ }), -/* 71 */ -/***/ (function(module, exports, __webpack_require__) { - -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = __webpack_require__(4); -var anObject = __webpack_require__(1); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = __webpack_require__(18)(Function.call, __webpack_require__(16).f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; - - -/***/ }), -/* 72 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(4); -var setPrototypeOf = __webpack_require__(71).set; -module.exports = function (that, target, C) { - var S = target.constructor; - var P; - if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { - setPrototypeOf(that, P); - } return that; -}; - - -/***/ }), -/* 73 */ -/***/ (function(module, exports) { - -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; - - -/***/ }), -/* 74 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var toInteger = __webpack_require__(20); -var defined = __webpack_require__(23); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; - - -/***/ }), -/* 75 */ -/***/ (function(module, exports) { - -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; - - -/***/ }), -/* 76 */ -/***/ (function(module, exports) { - -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; - - -/***/ }), -/* 77 */ -/***/ (function(module, exports, __webpack_require__) { - -// helper for String#{startsWith, endsWith, includes} -var isRegExp = __webpack_require__(56); -var defined = __webpack_require__(23); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; - - -/***/ }), -/* 78 */ -/***/ (function(module, exports, __webpack_require__) { - -var MATCH = __webpack_require__(5)('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; - - -/***/ }), -/* 79 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(29); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(12); -var hide = __webpack_require__(11); -var Iterators = __webpack_require__(46); -var $iterCreate = __webpack_require__(80); -var setToStringTag = __webpack_require__(43); -var getPrototypeOf = __webpack_require__(17); -var ITERATOR = __webpack_require__(5)('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; - - -/***/ }), -/* 80 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var create = __webpack_require__(36); -var descriptor = __webpack_require__(32); -var setToStringTag = __webpack_require__(43); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -__webpack_require__(11)(IteratorPrototype, __webpack_require__(5)('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; - - -/***/ }), -/* 81 */ -/***/ (function(module, exports, __webpack_require__) { - -// check on default Array iterator -var Iterators = __webpack_require__(46); -var ITERATOR = __webpack_require__(5)('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; - - -/***/ }), -/* 82 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $defineProperty = __webpack_require__(8); -var createDesc = __webpack_require__(32); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; - - -/***/ }), -/* 83 */ -/***/ (function(module, exports, __webpack_require__) { - -var classof = __webpack_require__(44); -var ITERATOR = __webpack_require__(5)('iterator'); -var Iterators = __webpack_require__(46); -module.exports = __webpack_require__(26).getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; - - -/***/ }), -/* 84 */ -/***/ (function(module, exports, __webpack_require__) { - -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = __webpack_require__(213); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; - - -/***/ }), -/* 85 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; - - -/***/ }), -/* 86 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var addToUnscopables = __webpack_require__(31); -var step = __webpack_require__(111); -var Iterators = __webpack_require__(46); -var toIObject = __webpack_require__(15); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = __webpack_require__(79)(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); - - -/***/ }), -/* 87 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var regexpFlags = __webpack_require__(50); - -var nativeExec = RegExp.prototype.exec; -// This always refers to the native implementation, because the -// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, -// which loads this file before patching the method. -var nativeReplace = String.prototype.replace; - -var patchedExec = nativeExec; - -var LAST_INDEX = 'lastIndex'; - -var UPDATES_LAST_INDEX_WRONG = (function () { - var re1 = /a/, - re2 = /b*/g; - nativeExec.call(re1, 'a'); - nativeExec.call(re2, 'a'); - return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0; -})(); - -// nonparticipating capturing group, copied from es5-shim's String#split patch. -var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; - -var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; - -if (PATCH) { - patchedExec = function exec(str) { - var re = this; - var lastIndex, reCopy, match, i; - - if (NPCG_INCLUDED) { - reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); - } - if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX]; - - match = nativeExec.call(re, str); - - if (UPDATES_LAST_INDEX_WRONG && match) { - re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex; - } - if (NPCG_INCLUDED && match && match.length > 1) { - // Fix browsers whose `exec` methods don't consistently return `undefined` - // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ - // eslint-disable-next-line no-loop-func - nativeReplace.call(match[0], reCopy, function () { - for (i = 1; i < arguments.length - 2; i++) { - if (arguments[i] === undefined) match[i] = undefined; - } - }); - } - - return match; - }; -} - -module.exports = patchedExec; - - -/***/ }), -/* 88 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var at = __webpack_require__(55)(true); - - // `AdvanceStringIndex` abstract operation -// https://tc39.github.io/ecma262/#sec-advancestringindex -module.exports = function (S, index, unicode) { - return index + (unicode ? at(S, index).length : 1); -}; - - -/***/ }), -/* 89 */ -/***/ (function(module, exports, __webpack_require__) { - -var ctx = __webpack_require__(18); -var invoke = __webpack_require__(101); -var html = __webpack_require__(70); -var cel = __webpack_require__(66); -var global = __webpack_require__(2); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); -}; -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!setTask || !clearTask) { - setTask = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - invoke(typeof fn == 'function' ? fn : Function(fn), args); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (__webpack_require__(19)(process) == 'process') { - defer = function (id) { - process.nextTick(ctx(run, id, 1)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(ctx(run, id, 1)); - }; - // Browsers with MessageChannel, includes WebWorkers - } else if (MessageChannel) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { - defer = function (id) { - global.postMessage(id + '', '*'); - }; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in cel('script')) { - defer = function (id) { - html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run.call(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(ctx(run, id, 1), 0); - }; - } -} -module.exports = { - set: setTask, - clear: clearTask -}; - - -/***/ }), -/* 90 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var macrotask = __webpack_require__(89).set; -var Observer = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var isNode = __webpack_require__(19)(process) == 'process'; - -module.exports = function () { - var head, last, notify; - - var flush = function () { - var parent, fn; - if (isNode && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (e) { - if (head) notify(); - else last = undefined; - throw e; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (isNode) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 - } else if (Observer && !(global.navigator && global.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(''); - new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - var promise = Promise.resolve(undefined); - notify = function () { - promise.then(flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } - - return function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; - }; -}; - - -/***/ }), -/* 91 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 25.4.1.5 NewPromiseCapability(C) -var aFunction = __webpack_require__(10); - -function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -} - -module.exports.f = function (C) { - return new PromiseCapability(C); -}; - - -/***/ }), -/* 92 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var DESCRIPTORS = __webpack_require__(7); -var LIBRARY = __webpack_require__(29); -var $typed = __webpack_require__(62); -var hide = __webpack_require__(11); -var redefineAll = __webpack_require__(41); -var fails = __webpack_require__(3); -var anInstance = __webpack_require__(39); -var toInteger = __webpack_require__(20); -var toLength = __webpack_require__(6); -var toIndex = __webpack_require__(122); -var gOPN = __webpack_require__(37).f; -var dP = __webpack_require__(8).f; -var arrayFill = __webpack_require__(85); -var setToStringTag = __webpack_require__(43); -var ARRAY_BUFFER = 'ArrayBuffer'; -var DATA_VIEW = 'DataView'; -var PROTOTYPE = 'prototype'; -var WRONG_LENGTH = 'Wrong length!'; -var WRONG_INDEX = 'Wrong index!'; -var $ArrayBuffer = global[ARRAY_BUFFER]; -var $DataView = global[DATA_VIEW]; -var Math = global.Math; -var RangeError = global.RangeError; -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = global.Infinity; -var BaseBuffer = $ArrayBuffer; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; -var BUFFER = 'buffer'; -var BYTE_LENGTH = 'byteLength'; -var BYTE_OFFSET = 'byteOffset'; -var $BUFFER = DESCRIPTORS ? '_b' : BUFFER; -var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH; -var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET; - -// IEEE754 conversions based on https://github.com/feross/ieee754 -function packIEEE754(value, mLen, nBytes) { - var buffer = new Array(nBytes); - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0; - var i = 0; - var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; - var e, m, c; - value = abs(value); - // eslint-disable-next-line no-self-compare - if (value != value || value === Infinity) { - // eslint-disable-next-line no-self-compare - m = value != value ? 1 : 0; - e = eMax; - } else { - e = floor(log(value) / LN2); - if (value * (c = pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * pow(2, mLen); - e = e + eBias; - } else { - m = value * pow(2, eBias - 1) * pow(2, mLen); - e = 0; - } - } - for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8); - e = e << mLen | m; - eLen += mLen; - for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8); - buffer[--i] |= s * 128; - return buffer; -} -function unpackIEEE754(buffer, mLen, nBytes) { - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = eLen - 7; - var i = nBytes - 1; - var s = buffer[i--]; - var e = s & 127; - var m; - s >>= 7; - for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8); - m = e & (1 << -nBits) - 1; - e >>= -nBits; - nBits += mLen; - for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8); - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : s ? -Infinity : Infinity; - } else { - m = m + pow(2, mLen); - e = e - eBias; - } return (s ? -1 : 1) * m * pow(2, e - mLen); -} - -function unpackI32(bytes) { - return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0]; -} -function packI8(it) { - return [it & 0xff]; -} -function packI16(it) { - return [it & 0xff, it >> 8 & 0xff]; -} -function packI32(it) { - return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff]; -} -function packF64(it) { - return packIEEE754(it, 52, 8); -} -function packF32(it) { - return packIEEE754(it, 23, 4); -} - -function addGetter(C, key, internal) { - dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } }); -} - -function get(view, bytes, index, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = store.slice(start, start + bytes); - return isLittleEndian ? pack : pack.reverse(); -} -function set(view, bytes, index, conversion, value, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = conversion(+value); - for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1]; -} - -if (!$typed.ABV) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer, ARRAY_BUFFER); - var byteLength = toIndex(length); - this._b = arrayFill.call(new Array(byteLength), 0); - this[$LENGTH] = byteLength; - }; - - $DataView = function DataView(buffer, byteOffset, byteLength) { - anInstance(this, $DataView, DATA_VIEW); - anInstance(buffer, $ArrayBuffer, DATA_VIEW); - var bufferLength = buffer[$LENGTH]; - var offset = toInteger(byteOffset); - if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!'); - byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); - if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); - this[$BUFFER] = buffer; - this[$OFFSET] = offset; - this[$LENGTH] = byteLength; - }; - - if (DESCRIPTORS) { - addGetter($ArrayBuffer, BYTE_LENGTH, '_l'); - addGetter($DataView, BUFFER, '_b'); - addGetter($DataView, BYTE_LENGTH, '_l'); - addGetter($DataView, BYTE_OFFSET, '_o'); - } - - redefineAll($DataView[PROTOTYPE], { - getInt8: function getInt8(byteOffset) { - return get(this, 1, byteOffset)[0] << 24 >> 24; - }, - getUint8: function getUint8(byteOffset) { - return get(this, 1, byteOffset)[0]; - }, - getInt16: function getInt16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return (bytes[1] << 8 | bytes[0]) << 16 >> 16; - }, - getUint16: function getUint16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return bytes[1] << 8 | bytes[0]; - }, - getInt32: function getInt32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])); - }, - getUint32: function getUint32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0; - }, - getFloat32: function getFloat32(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4); - }, - getFloat64: function getFloat64(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8); - }, - setInt8: function setInt8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setUint8: function setUint8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setInt16: function setInt16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setUint16: function setUint16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setInt32: function setInt32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setUint32: function setUint32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packF32, value, arguments[2]); - }, - setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { - set(this, 8, byteOffset, packF64, value, arguments[2]); - } - }); -} else { - if (!fails(function () { - $ArrayBuffer(1); - }) || !fails(function () { - new $ArrayBuffer(-1); // eslint-disable-line no-new - }) || fails(function () { - new $ArrayBuffer(); // eslint-disable-line no-new - new $ArrayBuffer(1.5); // eslint-disable-line no-new - new $ArrayBuffer(NaN); // eslint-disable-line no-new - return $ArrayBuffer.name != ARRAY_BUFFER; - })) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer); - return new BaseBuffer(toIndex(length)); - }; - var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE]; - for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) { - if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]); - } - if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer; - } - // iOS Safari 7.x bug - var view = new $DataView(new $ArrayBuffer(2)); - var $setInt8 = $DataView[PROTOTYPE].setInt8; - view.setInt8(0, 2147483648); - view.setInt8(1, 2147483649); - if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], { - setInt8: function setInt8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - }, - setUint8: function setUint8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - } - }, true); -} -setToStringTag($ArrayBuffer, ARRAY_BUFFER); -setToStringTag($DataView, DATA_VIEW); -hide($DataView[PROTOTYPE], $typed.VIEW, true); -exports[ARRAY_BUFFER] = $ArrayBuffer; -exports[DATA_VIEW] = $DataView; - - -/***/ }), -/* 93 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = !__webpack_require__(7) && !__webpack_require__(3)(function () { - return Object.defineProperty(__webpack_require__(66)('div'), 'a', { get: function () { return 7; } }).a != 7; -}); - - -/***/ }), -/* 94 */ -/***/ (function(module, exports, __webpack_require__) { - -exports.f = __webpack_require__(5); - - -/***/ }), -/* 95 */ -/***/ (function(module, exports, __webpack_require__) { - -var has = __webpack_require__(14); -var toIObject = __webpack_require__(15); -var arrayIndexOf = __webpack_require__(52)(false); -var IE_PROTO = __webpack_require__(68)('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; - - -/***/ }), -/* 96 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8); -var anObject = __webpack_require__(1); -var getKeys = __webpack_require__(34); - -module.exports = __webpack_require__(7) ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; - - -/***/ }), -/* 97 */ -/***/ (function(module, exports, __webpack_require__) { - -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = __webpack_require__(15); -var gOPN = __webpack_require__(37).f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; - - -/***/ }), -/* 98 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 19.1.2.1 Object.assign(target, source, ...) -var DESCRIPTORS = __webpack_require__(7); -var getKeys = __webpack_require__(34); -var gOPS = __webpack_require__(53); -var pIE = __webpack_require__(49); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(48); -var $assign = Object.assign; - -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || __webpack_require__(3)(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } return T; -} : $assign; - - -/***/ }), -/* 99 */ -/***/ (function(module, exports) { - -// 7.2.9 SameValue(x, y) -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; - - -/***/ }), -/* 100 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var aFunction = __webpack_require__(10); -var isObject = __webpack_require__(4); -var invoke = __webpack_require__(101); -var arraySlice = [].slice; -var factories = {}; - -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); -}; - -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; -}; - - -/***/ }), -/* 101 */ -/***/ (function(module, exports) { - -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; - - -/***/ }), -/* 102 */ -/***/ (function(module, exports, __webpack_require__) { - -var cof = __webpack_require__(19); -module.exports = function (it, msg) { - if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); - return +it; -}; - - -/***/ }), -/* 103 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var isObject = __webpack_require__(4); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; - - -/***/ }), -/* 104 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseFloat = __webpack_require__(2).parseFloat; -var $trim = __webpack_require__(45).trim; - -module.exports = 1 / $parseFloat(__webpack_require__(73) + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; - - -/***/ }), -/* 105 */ -/***/ (function(module, exports, __webpack_require__) { - -var $parseInt = __webpack_require__(2).parseInt; -var $trim = __webpack_require__(45).trim; -var ws = __webpack_require__(73); -var hex = /^[-+]?0[xX]/; - -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; - - -/***/ }), -/* 106 */ -/***/ (function(module, exports) { - -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; - - -/***/ }), -/* 107 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var sign = __webpack_require__(75); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; - - -/***/ }), -/* 108 */ -/***/ (function(module, exports, __webpack_require__) { - -// call something on iterator step with safe closing on error -var anObject = __webpack_require__(1); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; - } -}; - - -/***/ }), -/* 109 */ -/***/ (function(module, exports, __webpack_require__) { - -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var IObject = __webpack_require__(48); -var toLength = __webpack_require__(6); - -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; - - -/***/ }), -/* 110 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) - -var toObject = __webpack_require__(9); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); - -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; - - -/***/ }), -/* 111 */ -/***/ (function(module, exports) { - -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; - - -/***/ }), -/* 112 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var regexpExec = __webpack_require__(87); -__webpack_require__(0)({ - target: 'RegExp', - proto: true, - forced: regexpExec !== /./.exec -}, { - exec: regexpExec -}); - - -/***/ }), -/* 113 */ -/***/ (function(module, exports, __webpack_require__) { - -// 21.2.5.3 get RegExp.prototype.flags() -if (__webpack_require__(7) && /./g.flags != 'g') __webpack_require__(8).f(RegExp.prototype, 'flags', { - configurable: true, - get: __webpack_require__(50) -}); - - -/***/ }), -/* 114 */ -/***/ (function(module, exports) { - -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } -}; - - -/***/ }), -/* 115 */ -/***/ (function(module, exports, __webpack_require__) { - -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(4); -var newPromiseCapability = __webpack_require__(91); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; - - -/***/ }), -/* 116 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(117); -var validate = __webpack_require__(42); -var MAP = 'Map'; - -// 23.1 Map Objects -module.exports = __webpack_require__(61)(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); - - -/***/ }), -/* 117 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var dP = __webpack_require__(8).f; -var create = __webpack_require__(36); -var redefineAll = __webpack_require__(41); -var ctx = __webpack_require__(18); -var anInstance = __webpack_require__(39); -var forOf = __webpack_require__(40); -var $iterDefine = __webpack_require__(79); -var step = __webpack_require__(111); -var setSpecies = __webpack_require__(38); -var DESCRIPTORS = __webpack_require__(7); -var fastKey = __webpack_require__(30).fastKey; -var validate = __webpack_require__(42); -var SIZE = DESCRIPTORS ? '_s' : 'size'; - -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); - } -}; - - -/***/ }), -/* 118 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var strong = __webpack_require__(117); -var validate = __webpack_require__(42); -var SET = 'Set'; - -// 23.2 Set Objects -module.exports = __webpack_require__(61)(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); - } -}, strong); - - -/***/ }), -/* 119 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var each = __webpack_require__(25)(0); -var redefine = __webpack_require__(12); -var meta = __webpack_require__(30); -var assign = __webpack_require__(98); -var weak = __webpack_require__(120); -var isObject = __webpack_require__(4); -var validate = __webpack_require__(42); -var NATIVE_WEAK_MAP = __webpack_require__(42); -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var InternalMap; - -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; - -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = __webpack_require__(61)(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); -} - - -/***/ }), -/* 120 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var redefineAll = __webpack_require__(41); -var getWeak = __webpack_require__(30).getWeak; -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(4); -var anInstance = __webpack_require__(39); -var forOf = __webpack_require__(40); -var createArrayMethod = __webpack_require__(25); -var $has = __webpack_require__(14); -var validate = __webpack_require__(42); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); - } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; - - -/***/ }), -/* 121 */ -/***/ (function(module, exports, __webpack_require__) { - -// all object keys, includes non-enumerable and symbols -var gOPN = __webpack_require__(37); -var gOPS = __webpack_require__(53); -var anObject = __webpack_require__(1); -var Reflect = __webpack_require__(2).Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; - - -/***/ }), -/* 122 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = __webpack_require__(20); -var toLength = __webpack_require__(6); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; - - -/***/ }), -/* 123 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = __webpack_require__(54); -var isObject = __webpack_require__(4); -var toLength = __webpack_require__(6); -var ctx = __webpack_require__(18); -var IS_CONCAT_SPREADABLE = __webpack_require__(5)('isConcatSpreadable'); - -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} - -module.exports = flattenIntoArray; - - -/***/ }), -/* 124 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = __webpack_require__(6); -var repeat = __webpack_require__(74); -var defined = __webpack_require__(23); - -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; - - -/***/ }), -/* 125 */ -/***/ (function(module, exports, __webpack_require__) { - -var DESCRIPTORS = __webpack_require__(7); -var getKeys = __webpack_require__(34); -var toIObject = __webpack_require__(15); -var isEnum = __webpack_require__(49).f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || isEnum.call(O, key)) { - result.push(isEntries ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; - - -/***/ }), -/* 126 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = __webpack_require__(44); -var from = __webpack_require__(127); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; -}; - - -/***/ }), -/* 127 */ -/***/ (function(module, exports, __webpack_require__) { - -var forOf = __webpack_require__(40); - -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; - - -/***/ }), -/* 128 */ -/***/ (function(module, exports) { - -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; - - -/***/ }), -/* 129 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(130); -__webpack_require__(133); -__webpack_require__(134); -__webpack_require__(135); -__webpack_require__(136); -__webpack_require__(137); -__webpack_require__(138); -__webpack_require__(139); -__webpack_require__(140); -__webpack_require__(141); -__webpack_require__(142); -__webpack_require__(143); -__webpack_require__(144); -__webpack_require__(145); -__webpack_require__(146); -__webpack_require__(147); -__webpack_require__(148); -__webpack_require__(149); -__webpack_require__(150); -__webpack_require__(151); -__webpack_require__(152); -__webpack_require__(153); -__webpack_require__(154); -__webpack_require__(155); -__webpack_require__(156); -__webpack_require__(157); -__webpack_require__(158); -__webpack_require__(159); -__webpack_require__(160); -__webpack_require__(161); -__webpack_require__(162); -__webpack_require__(163); -__webpack_require__(164); -__webpack_require__(165); -__webpack_require__(166); -__webpack_require__(167); -__webpack_require__(168); -__webpack_require__(169); -__webpack_require__(170); -__webpack_require__(171); -__webpack_require__(172); -__webpack_require__(173); -__webpack_require__(174); -__webpack_require__(175); -__webpack_require__(176); -__webpack_require__(177); -__webpack_require__(178); -__webpack_require__(179); -__webpack_require__(180); -__webpack_require__(181); -__webpack_require__(182); -__webpack_require__(183); -__webpack_require__(184); -__webpack_require__(185); -__webpack_require__(186); -__webpack_require__(187); -__webpack_require__(188); -__webpack_require__(189); -__webpack_require__(190); -__webpack_require__(191); -__webpack_require__(192); -__webpack_require__(193); -__webpack_require__(194); -__webpack_require__(195); -__webpack_require__(196); -__webpack_require__(197); -__webpack_require__(198); -__webpack_require__(199); -__webpack_require__(200); -__webpack_require__(201); -__webpack_require__(202); -__webpack_require__(203); -__webpack_require__(204); -__webpack_require__(205); -__webpack_require__(206); -__webpack_require__(207); -__webpack_require__(208); -__webpack_require__(209); -__webpack_require__(210); -__webpack_require__(211); -__webpack_require__(212); -__webpack_require__(214); -__webpack_require__(215); -__webpack_require__(216); -__webpack_require__(217); -__webpack_require__(218); -__webpack_require__(219); -__webpack_require__(220); -__webpack_require__(221); -__webpack_require__(222); -__webpack_require__(223); -__webpack_require__(224); -__webpack_require__(225); -__webpack_require__(86); -__webpack_require__(226); -__webpack_require__(227); -__webpack_require__(112); -__webpack_require__(228); -__webpack_require__(113); -__webpack_require__(229); -__webpack_require__(230); -__webpack_require__(231); -__webpack_require__(232); -__webpack_require__(233); -__webpack_require__(116); -__webpack_require__(118); -__webpack_require__(119); -__webpack_require__(234); -__webpack_require__(235); -__webpack_require__(236); -__webpack_require__(237); -__webpack_require__(238); -__webpack_require__(239); -__webpack_require__(240); -__webpack_require__(241); -__webpack_require__(242); -__webpack_require__(243); -__webpack_require__(244); -__webpack_require__(245); -__webpack_require__(246); -__webpack_require__(247); -__webpack_require__(248); -__webpack_require__(249); -__webpack_require__(250); -__webpack_require__(251); -__webpack_require__(253); -__webpack_require__(254); -__webpack_require__(256); -__webpack_require__(257); -__webpack_require__(258); -__webpack_require__(259); -__webpack_require__(260); -__webpack_require__(261); -__webpack_require__(262); -__webpack_require__(263); -__webpack_require__(264); -__webpack_require__(265); -__webpack_require__(266); -__webpack_require__(267); -__webpack_require__(268); -__webpack_require__(269); -__webpack_require__(270); -__webpack_require__(271); -__webpack_require__(272); -__webpack_require__(273); -__webpack_require__(274); -__webpack_require__(275); -__webpack_require__(276); -__webpack_require__(277); -__webpack_require__(278); -__webpack_require__(279); -__webpack_require__(280); -__webpack_require__(281); -__webpack_require__(282); -__webpack_require__(283); -__webpack_require__(284); -__webpack_require__(285); -__webpack_require__(286); -__webpack_require__(287); -__webpack_require__(288); -__webpack_require__(289); -__webpack_require__(290); -__webpack_require__(291); -__webpack_require__(292); -__webpack_require__(293); -__webpack_require__(294); -__webpack_require__(295); -__webpack_require__(296); -__webpack_require__(297); -__webpack_require__(298); -__webpack_require__(299); -__webpack_require__(300); -__webpack_require__(301); -__webpack_require__(302); -__webpack_require__(303); -__webpack_require__(304); -__webpack_require__(305); -__webpack_require__(306); -__webpack_require__(307); -__webpack_require__(308); -__webpack_require__(309); -__webpack_require__(310); -__webpack_require__(311); -__webpack_require__(312); -__webpack_require__(313); -__webpack_require__(314); -__webpack_require__(315); -__webpack_require__(316); -__webpack_require__(317); -__webpack_require__(318); -__webpack_require__(319); -__webpack_require__(320); -__webpack_require__(321); -__webpack_require__(322); -__webpack_require__(323); -__webpack_require__(324); -module.exports = __webpack_require__(325); - - -/***/ }), -/* 130 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// ECMAScript 6 symbols shim -var global = __webpack_require__(2); -var has = __webpack_require__(14); -var DESCRIPTORS = __webpack_require__(7); -var $export = __webpack_require__(0); -var redefine = __webpack_require__(12); -var META = __webpack_require__(30).KEY; -var $fails = __webpack_require__(3); -var shared = __webpack_require__(47); -var setToStringTag = __webpack_require__(43); -var uid = __webpack_require__(33); -var wks = __webpack_require__(5); -var wksExt = __webpack_require__(94); -var wksDefine = __webpack_require__(67); -var enumKeys = __webpack_require__(132); -var isArray = __webpack_require__(54); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(4); -var toObject = __webpack_require__(9); -var toIObject = __webpack_require__(15); -var toPrimitive = __webpack_require__(22); -var createDesc = __webpack_require__(32); -var _create = __webpack_require__(36); -var gOPNExt = __webpack_require__(97); -var $GOPD = __webpack_require__(16); -var $GOPS = __webpack_require__(53); -var $DP = __webpack_require__(8); -var $keys = __webpack_require__(34); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - __webpack_require__(37).f = gOPNExt.f = $getOwnPropertyNames; - __webpack_require__(49).f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !__webpack_require__(29)) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); }); - -$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - } -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(11)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); - - -/***/ }), -/* 131 */ -/***/ (function(module, exports, __webpack_require__) { - -module.exports = __webpack_require__(47)('native-function-to-string', Function.toString); - - -/***/ }), -/* 132 */ -/***/ (function(module, exports, __webpack_require__) { - -// all enumerable object keys, includes symbols -var getKeys = __webpack_require__(34); -var gOPS = __webpack_require__(53); -var pIE = __webpack_require__(49); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; - - -/***/ }), -/* 133 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) -$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperty: __webpack_require__(8).f }); - - -/***/ }), -/* 134 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties) -$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperties: __webpack_require__(96) }); - - -/***/ }), -/* 135 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) -var toIObject = __webpack_require__(15); -var $getOwnPropertyDescriptor = __webpack_require__(16).f; - -__webpack_require__(24)('getOwnPropertyDescriptor', function () { - return function getOwnPropertyDescriptor(it, key) { - return $getOwnPropertyDescriptor(toIObject(it), key); - }; -}); - - -/***/ }), -/* 136 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -$export($export.S, 'Object', { create: __webpack_require__(36) }); - - -/***/ }), -/* 137 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.9 Object.getPrototypeOf(O) -var toObject = __webpack_require__(9); -var $getPrototypeOf = __webpack_require__(17); - -__webpack_require__(24)('getPrototypeOf', function () { - return function getPrototypeOf(it) { - return $getPrototypeOf(toObject(it)); - }; -}); - - -/***/ }), -/* 138 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.14 Object.keys(O) -var toObject = __webpack_require__(9); -var $keys = __webpack_require__(34); - -__webpack_require__(24)('keys', function () { - return function keys(it) { - return $keys(toObject(it)); - }; -}); - - -/***/ }), -/* 139 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.7 Object.getOwnPropertyNames(O) -__webpack_require__(24)('getOwnPropertyNames', function () { - return __webpack_require__(97).f; -}); - - -/***/ }), -/* 140 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.5 Object.freeze(O) -var isObject = __webpack_require__(4); -var meta = __webpack_require__(30).onFreeze; - -__webpack_require__(24)('freeze', function ($freeze) { - return function freeze(it) { - return $freeze && isObject(it) ? $freeze(meta(it)) : it; - }; -}); - - -/***/ }), -/* 141 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.17 Object.seal(O) -var isObject = __webpack_require__(4); -var meta = __webpack_require__(30).onFreeze; - -__webpack_require__(24)('seal', function ($seal) { - return function seal(it) { - return $seal && isObject(it) ? $seal(meta(it)) : it; - }; -}); - - -/***/ }), -/* 142 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.15 Object.preventExtensions(O) -var isObject = __webpack_require__(4); -var meta = __webpack_require__(30).onFreeze; - -__webpack_require__(24)('preventExtensions', function ($preventExtensions) { - return function preventExtensions(it) { - return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it; - }; -}); - - -/***/ }), -/* 143 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.12 Object.isFrozen(O) -var isObject = __webpack_require__(4); - -__webpack_require__(24)('isFrozen', function ($isFrozen) { - return function isFrozen(it) { - return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true; - }; -}); - - -/***/ }), -/* 144 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.13 Object.isSealed(O) -var isObject = __webpack_require__(4); - -__webpack_require__(24)('isSealed', function ($isSealed) { - return function isSealed(it) { - return isObject(it) ? $isSealed ? $isSealed(it) : false : true; - }; -}); - - -/***/ }), -/* 145 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.2.11 Object.isExtensible(O) -var isObject = __webpack_require__(4); - -__webpack_require__(24)('isExtensible', function ($isExtensible) { - return function isExtensible(it) { - return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false; - }; -}); - - -/***/ }), -/* 146 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.1 Object.assign(target, source) -var $export = __webpack_require__(0); - -$export($export.S + $export.F, 'Object', { assign: __webpack_require__(98) }); - - -/***/ }), -/* 147 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.10 Object.is(value1, value2) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { is: __webpack_require__(99) }); - - -/***/ }), -/* 148 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.1.3.19 Object.setPrototypeOf(O, proto) -var $export = __webpack_require__(0); -$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(71).set }); - - -/***/ }), -/* 149 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 19.1.3.6 Object.prototype.toString() -var classof = __webpack_require__(44); -var test = {}; -test[__webpack_require__(5)('toStringTag')] = 'z'; -if (test + '' != '[object z]') { - __webpack_require__(12)(Object.prototype, 'toString', function toString() { - return '[object ' + classof(this) + ']'; - }, true); -} - - -/***/ }), -/* 150 */ -/***/ (function(module, exports, __webpack_require__) { - -// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...) -var $export = __webpack_require__(0); - -$export($export.P, 'Function', { bind: __webpack_require__(100) }); - - -/***/ }), -/* 151 */ -/***/ (function(module, exports, __webpack_require__) { - -var dP = __webpack_require__(8).f; -var FProto = Function.prototype; -var nameRE = /^\s*function ([^ (]*)/; -var NAME = 'name'; - -// 19.2.4.2 name -NAME in FProto || __webpack_require__(7) && dP(FProto, NAME, { - configurable: true, - get: function () { - try { - return ('' + this).match(nameRE)[1]; - } catch (e) { - return ''; - } - } -}); - - -/***/ }), -/* 152 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var isObject = __webpack_require__(4); -var getPrototypeOf = __webpack_require__(17); -var HAS_INSTANCE = __webpack_require__(5)('hasInstance'); -var FunctionProto = Function.prototype; -// 19.2.3.6 Function.prototype[@@hasInstance](V) -if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(8).f(FunctionProto, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; -} }); - - -/***/ }), -/* 153 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var global = __webpack_require__(2); -var has = __webpack_require__(14); -var cof = __webpack_require__(19); -var inheritIfRequired = __webpack_require__(72); -var toPrimitive = __webpack_require__(22); -var fails = __webpack_require__(3); -var gOPN = __webpack_require__(37).f; -var gOPD = __webpack_require__(16).f; -var dP = __webpack_require__(8).f; -var $trim = __webpack_require__(45).trim; -var NUMBER = 'Number'; -var $Number = global[NUMBER]; -var Base = $Number; -var proto = $Number.prototype; -// Opera ~12 has broken Object#toString -var BROKEN_COF = cof(__webpack_require__(36)(proto)) == NUMBER; -var TRIM = 'trim' in String.prototype; - -// 7.1.3 ToNumber(argument) -var toNumber = function (argument) { - var it = toPrimitive(argument, false); - if (typeof it == 'string' && it.length > 2) { - it = TRIM ? it.trim() : $trim(it, 3); - var first = it.charCodeAt(0); - var third, radix, maxCode; - if (first === 43 || first === 45) { - third = it.charCodeAt(2); - if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix - } else if (first === 48) { - switch (it.charCodeAt(1)) { - case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i - case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i - default: return +it; - } - for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) { - code = digits.charCodeAt(i); - // parseInt parses a string to a first unavailable symbol - // but ToNumber should return NaN if a string contains unavailable symbols - if (code < 48 || code > maxCode) return NaN; - } return parseInt(digits, radix); - } - } return +it; -}; - -if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) { - $Number = function Number(value) { - var it = arguments.length < 1 ? 0 : value; - var that = this; - return that instanceof $Number - // check on 1..constructor(foo) case - && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER) - ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it); - }; - for (var keys = __webpack_require__(7) ? gOPN(Base) : ( - // ES3: - 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' + - // ES6 (in case, if modules with ES6 Number statics required before): - 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' + - 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger' - ).split(','), j = 0, key; keys.length > j; j++) { - if (has(Base, key = keys[j]) && !has($Number, key)) { - dP($Number, key, gOPD(Base, key)); - } - } - $Number.prototype = proto; - proto.constructor = $Number; - __webpack_require__(12)(global, NUMBER, $Number); -} - - -/***/ }), -/* 154 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toInteger = __webpack_require__(20); -var aNumberValue = __webpack_require__(102); -var repeat = __webpack_require__(74); -var $toFixed = 1.0.toFixed; -var floor = Math.floor; -var data = [0, 0, 0, 0, 0, 0]; -var ERROR = 'Number.toFixed: incorrect invocation!'; -var ZERO = '0'; - -var multiply = function (n, c) { - var i = -1; - var c2 = c; - while (++i < 6) { - c2 += n * data[i]; - data[i] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } -}; -var divide = function (n) { - var i = 6; - var c = 0; - while (--i >= 0) { - c += data[i]; - data[i] = floor(c / n); - c = (c % n) * 1e7; - } -}; -var numToString = function () { - var i = 6; - var s = ''; - while (--i >= 0) { - if (s !== '' || i === 0 || data[i] !== 0) { - var t = String(data[i]); - s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t; - } - } return s; -}; -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -$export($export.P + $export.F * (!!$toFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !__webpack_require__(3)(function () { - // V8 ~ Android 4.3- - $toFixed.call({}); -})), 'Number', { - toFixed: function toFixed(fractionDigits) { - var x = aNumberValue(this, ERROR); - var f = toInteger(fractionDigits); - var s = ''; - var m = ZERO; - var e, z, j, k; - if (f < 0 || f > 20) throw RangeError(ERROR); - // eslint-disable-next-line no-self-compare - if (x != x) return 'NaN'; - if (x <= -1e21 || x >= 1e21) return String(x); - if (x < 0) { - s = '-'; - x = -x; - } - if (x > 1e-21) { - e = log(x * pow(2, 69, 1)) - 69; - z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = f; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - m = numToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - m = numToString() + repeat.call(ZERO, f); - } - } - if (f > 0) { - k = m.length; - m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); - } else { - m = s + m; - } return m; - } -}); - - -/***/ }), -/* 155 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $fails = __webpack_require__(3); -var aNumberValue = __webpack_require__(102); -var $toPrecision = 1.0.toPrecision; - -$export($export.P + $export.F * ($fails(function () { - // IE7- - return $toPrecision.call(1, undefined) !== '1'; -}) || !$fails(function () { - // V8 ~ Android 4.3- - $toPrecision.call({}); -})), 'Number', { - toPrecision: function toPrecision(precision) { - var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); - return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); - } -}); - - -/***/ }), -/* 156 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.1 Number.EPSILON -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) }); - - -/***/ }), -/* 157 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.2 Number.isFinite(number) -var $export = __webpack_require__(0); -var _isFinite = __webpack_require__(2).isFinite; - -$export($export.S, 'Number', { - isFinite: function isFinite(it) { - return typeof it == 'number' && _isFinite(it); - } -}); - - -/***/ }), -/* 158 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.3 Number.isInteger(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { isInteger: __webpack_require__(103) }); - - -/***/ }), -/* 159 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.4 Number.isNaN(number) -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); - - -/***/ }), -/* 160 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.5 Number.isSafeInteger(number) -var $export = __webpack_require__(0); -var isInteger = __webpack_require__(103); -var abs = Math.abs; - -$export($export.S, 'Number', { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1fffffffffffff; - } -}); - - -/***/ }), -/* 161 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.6 Number.MAX_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff }); - - -/***/ }), -/* 162 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.1.2.10 Number.MIN_SAFE_INTEGER -var $export = __webpack_require__(0); - -$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff }); - - -/***/ }), -/* 163 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(104); -// 20.1.2.12 Number.parseFloat(string) -$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat }); - - -/***/ }), -/* 164 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(105); -// 20.1.2.13 Number.parseInt(string, radix) -$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt }); - - -/***/ }), -/* 165 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseInt = __webpack_require__(105); -// 18.2.5 parseInt(string, radix) -$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt }); - - -/***/ }), -/* 166 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $parseFloat = __webpack_require__(104); -// 18.2.4 parseFloat(string) -$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat }); - - -/***/ }), -/* 167 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.3 Math.acosh(x) -var $export = __webpack_require__(0); -var log1p = __webpack_require__(106); -var sqrt = Math.sqrt; -var $acosh = Math.acosh; - -$export($export.S + $export.F * !($acosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - && Math.floor($acosh(Number.MAX_VALUE)) == 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - && $acosh(Infinity) == Infinity -), 'Math', { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? Math.log(x) + Math.LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); - - -/***/ }), -/* 168 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.5 Math.asinh(x) -var $export = __webpack_require__(0); -var $asinh = Math.asinh; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1)); -} - -// Tor Browser bug: Math.asinh(0) -> -0 -$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh }); - - -/***/ }), -/* 169 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.7 Math.atanh(x) -var $export = __webpack_require__(0); -var $atanh = Math.atanh; - -// Tor Browser bug: Math.atanh(-0) -> 0 -$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2; - } -}); - - -/***/ }), -/* 170 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.9 Math.cbrt(x) -var $export = __webpack_require__(0); -var sign = __webpack_require__(75); - -$export($export.S, 'Math', { - cbrt: function cbrt(x) { - return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3); - } -}); - - -/***/ }), -/* 171 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.11 Math.clz32(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32; - } -}); - - -/***/ }), -/* 172 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.12 Math.cosh(x) -var $export = __webpack_require__(0); -var exp = Math.exp; - -$export($export.S, 'Math', { - cosh: function cosh(x) { - return (exp(x = +x) + exp(-x)) / 2; - } -}); - - -/***/ }), -/* 173 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.14 Math.expm1(x) -var $export = __webpack_require__(0); -var $expm1 = __webpack_require__(76); - -$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 }); - - -/***/ }), -/* 174 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.16 Math.fround(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { fround: __webpack_require__(107) }); - - -/***/ }), -/* 175 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.17 Math.hypot([value1[, value2[, … ]]]) -var $export = __webpack_require__(0); -var abs = Math.abs; - -$export($export.S, 'Math', { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * Math.sqrt(sum); - } -}); - - -/***/ }), -/* 176 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.18 Math.imul(x, y) -var $export = __webpack_require__(0); -var $imul = Math.imul; - -// some WebKit versions fails with big numbers, some has wrong arity -$export($export.S + $export.F * __webpack_require__(3)(function () { - return $imul(0xffffffff, 5) != -5 || $imul.length != 2; -}), 'Math', { - imul: function imul(x, y) { - var UINT16 = 0xffff; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); - - -/***/ }), -/* 177 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.21 Math.log10(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log10: function log10(x) { - return Math.log(x) * Math.LOG10E; - } -}); - - -/***/ }), -/* 178 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.20 Math.log1p(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { log1p: __webpack_require__(106) }); - - -/***/ }), -/* 179 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.22 Math.log2(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - log2: function log2(x) { - return Math.log(x) / Math.LN2; - } -}); - - -/***/ }), -/* 180 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.28 Math.sign(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { sign: __webpack_require__(75) }); - - -/***/ }), -/* 181 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.30 Math.sinh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(76); -var exp = Math.exp; - -// V8 near Chromium 38 has a problem with very small numbers -$export($export.S + $export.F * __webpack_require__(3)(function () { - return !Math.sinh(-2e-17) != -2e-17; -}), 'Math', { - sinh: function sinh(x) { - return Math.abs(x = +x) < 1 - ? (expm1(x) - expm1(-x)) / 2 - : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2); - } -}); - - -/***/ }), -/* 182 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.33 Math.tanh(x) -var $export = __webpack_require__(0); -var expm1 = __webpack_require__(76); -var exp = Math.exp; - -$export($export.S, 'Math', { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); - - -/***/ }), -/* 183 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.2.2.34 Math.trunc(x) -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - trunc: function trunc(it) { - return (it > 0 ? Math.floor : Math.ceil)(it); - } -}); - - -/***/ }), -/* 184 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toAbsoluteIndex = __webpack_require__(35); -var fromCharCode = String.fromCharCode; -var $fromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var res = []; - var aLen = arguments.length; - var i = 0; - var code; - while (aLen > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point'); - res.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) - ); - } return res.join(''); - } -}); - - -/***/ }), -/* 185 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(15); -var toLength = __webpack_require__(6); - -$export($export.S, 'String', { - // 21.1.2.4 String.raw(callSite, ...substitutions) - raw: function raw(callSite) { - var tpl = toIObject(callSite.raw); - var len = toLength(tpl.length); - var aLen = arguments.length; - var res = []; - var i = 0; - while (len > i) { - res.push(String(tpl[i++])); - if (i < aLen) res.push(String(arguments[i])); - } return res.join(''); - } -}); - - -/***/ }), -/* 186 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 21.1.3.25 String.prototype.trim() -__webpack_require__(45)('trim', function ($trim) { - return function trim() { - return $trim(this, 3); - }; -}); - - -/***/ }), -/* 187 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $at = __webpack_require__(55)(false); -$export($export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) - codePointAt: function codePointAt(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 188 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(6); -var context = __webpack_require__(77); -var ENDS_WITH = 'endsWith'; -var $endsWith = ''[ENDS_WITH]; - -$export($export.P + $export.F * __webpack_require__(78)(ENDS_WITH), 'String', { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = context(this, searchString, ENDS_WITH); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len); - var search = String(searchString); - return $endsWith - ? $endsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); - - -/***/ }), -/* 189 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.7 String.prototype.includes(searchString, position = 0) - -var $export = __webpack_require__(0); -var context = __webpack_require__(77); -var INCLUDES = 'includes'; - -$export($export.P + $export.F * __webpack_require__(78)(INCLUDES), 'String', { - includes: function includes(searchString /* , position = 0 */) { - return !!~context(this, searchString, INCLUDES) - .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); - } -}); - - -/***/ }), -/* 190 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); - -$export($export.P, 'String', { - // 21.1.3.13 String.prototype.repeat(count) - repeat: __webpack_require__(74) -}); - - -/***/ }), -/* 191 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// 21.1.3.18 String.prototype.startsWith(searchString [, position ]) - -var $export = __webpack_require__(0); -var toLength = __webpack_require__(6); -var context = __webpack_require__(77); -var STARTS_WITH = 'startsWith'; -var $startsWith = ''[STARTS_WITH]; - -$export($export.P + $export.F * __webpack_require__(78)(STARTS_WITH), 'String', { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = context(this, searchString, STARTS_WITH); - var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return $startsWith - ? $startsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); - - -/***/ }), -/* 192 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $at = __webpack_require__(55)(true); - -// 21.1.3.27 String.prototype[@@iterator]() -__webpack_require__(79)(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); - - -/***/ }), -/* 193 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.2 String.prototype.anchor(name) -__webpack_require__(13)('anchor', function (createHTML) { - return function anchor(name) { - return createHTML(this, 'a', 'name', name); - }; -}); - - -/***/ }), -/* 194 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.3 String.prototype.big() -__webpack_require__(13)('big', function (createHTML) { - return function big() { - return createHTML(this, 'big', '', ''); - }; -}); - - -/***/ }), -/* 195 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.4 String.prototype.blink() -__webpack_require__(13)('blink', function (createHTML) { - return function blink() { - return createHTML(this, 'blink', '', ''); - }; -}); - - -/***/ }), -/* 196 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.5 String.prototype.bold() -__webpack_require__(13)('bold', function (createHTML) { - return function bold() { - return createHTML(this, 'b', '', ''); - }; -}); - - -/***/ }), -/* 197 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.6 String.prototype.fixed() -__webpack_require__(13)('fixed', function (createHTML) { - return function fixed() { - return createHTML(this, 'tt', '', ''); - }; -}); - - -/***/ }), -/* 198 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.7 String.prototype.fontcolor(color) -__webpack_require__(13)('fontcolor', function (createHTML) { - return function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - }; -}); - - -/***/ }), -/* 199 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.8 String.prototype.fontsize(size) -__webpack_require__(13)('fontsize', function (createHTML) { - return function fontsize(size) { - return createHTML(this, 'font', 'size', size); - }; -}); - - -/***/ }), -/* 200 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.9 String.prototype.italics() -__webpack_require__(13)('italics', function (createHTML) { - return function italics() { - return createHTML(this, 'i', '', ''); - }; -}); - - -/***/ }), -/* 201 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.10 String.prototype.link(url) -__webpack_require__(13)('link', function (createHTML) { - return function link(url) { - return createHTML(this, 'a', 'href', url); - }; -}); - - -/***/ }), -/* 202 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.11 String.prototype.small() -__webpack_require__(13)('small', function (createHTML) { - return function small() { - return createHTML(this, 'small', '', ''); - }; -}); - - -/***/ }), -/* 203 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.12 String.prototype.strike() -__webpack_require__(13)('strike', function (createHTML) { - return function strike() { - return createHTML(this, 'strike', '', ''); - }; -}); - - -/***/ }), -/* 204 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.13 String.prototype.sub() -__webpack_require__(13)('sub', function (createHTML) { - return function sub() { - return createHTML(this, 'sub', '', ''); - }; -}); - - -/***/ }), -/* 205 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// B.2.3.14 String.prototype.sup() -__webpack_require__(13)('sup', function (createHTML) { - return function sup() { - return createHTML(this, 'sup', '', ''); - }; -}); - - -/***/ }), -/* 206 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.2.2 / 15.4.3.2 Array.isArray(arg) -var $export = __webpack_require__(0); - -$export($export.S, 'Array', { isArray: __webpack_require__(54) }); - - -/***/ }), -/* 207 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var ctx = __webpack_require__(18); -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var call = __webpack_require__(108); -var isArrayIter = __webpack_require__(81); -var toLength = __webpack_require__(6); -var createProperty = __webpack_require__(82); -var getIterFn = __webpack_require__(83); - -$export($export.S + $export.F * !__webpack_require__(57)(function (iter) { Array.from(iter); }), 'Array', { - // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined) - from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var index = 0; - var iterFn = getIterFn(O); - var length, result, step, iterator; - if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2); - // if object isn't iterable or it's array with default iterator - use simple case - if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) { - for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) { - createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value); - } - } else { - length = toLength(O.length); - for (result = new C(length); length > index; index++) { - createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); - } - } - result.length = index; - return result; - } -}); - - -/***/ }), -/* 208 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var createProperty = __webpack_require__(82); - -// WebKit Array.of isn't generic -$export($export.S + $export.F * __webpack_require__(3)(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}), 'Array', { - // 22.1.2.3 Array.of( ...items) - of: function of(/* ...args */) { - var index = 0; - var aLen = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(aLen); - while (aLen > index) createProperty(result, index, arguments[index++]); - result.length = aLen; - return result; - } -}); - - -/***/ }), -/* 209 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.13 Array.prototype.join(separator) -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(15); -var arrayJoin = [].join; - -// fallback for not array-like strings -$export($export.P + $export.F * (__webpack_require__(48) != Object || !__webpack_require__(21)(arrayJoin)), 'Array', { - join: function join(separator) { - return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator); - } -}); - - -/***/ }), -/* 210 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var html = __webpack_require__(70); -var cof = __webpack_require__(19); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -var arraySlice = [].slice; - -// fallback for not array-like ES3 strings and DOM objects -$export($export.P + $export.F * __webpack_require__(3)(function () { - if (html) arraySlice.call(html); -}), 'Array', { - slice: function slice(begin, end) { - var len = toLength(this.length); - var klass = cof(this); - end = end === undefined ? len : end; - if (klass == 'Array') return arraySlice.call(this, begin, end); - var start = toAbsoluteIndex(begin, len); - var upTo = toAbsoluteIndex(end, len); - var size = toLength(upTo - start); - var cloned = new Array(size); - var i = 0; - for (; i < size; i++) cloned[i] = klass == 'String' - ? this.charAt(start + i) - : this[start + i]; - return cloned; - } -}); - - -/***/ }), -/* 211 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var toObject = __webpack_require__(9); -var fails = __webpack_require__(3); -var $sort = [].sort; -var test = [1, 2, 3]; - -$export($export.P + $export.F * (fails(function () { - // IE8- - test.sort(undefined); -}) || !fails(function () { - // V8 bug - test.sort(null); - // Old WebKit -}) || !__webpack_require__(21)($sort)), 'Array', { - // 22.1.3.25 Array.prototype.sort(comparefn) - sort: function sort(comparefn) { - return comparefn === undefined - ? $sort.call(toObject(this)) - : $sort.call(toObject(this), aFunction(comparefn)); - } -}); - - -/***/ }), -/* 212 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $forEach = __webpack_require__(25)(0); -var STRICT = __webpack_require__(21)([].forEach, true); - -$export($export.P + $export.F * !STRICT, 'Array', { - // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) - forEach: function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 213 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(4); -var isArray = __webpack_require__(54); -var SPECIES = __webpack_require__(5)('species'); - -module.exports = function (original) { - var C; - if (isArray(original)) { - C = original.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return C === undefined ? Array : C; -}; - - -/***/ }), -/* 214 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $map = __webpack_require__(25)(1); - -$export($export.P + $export.F * !__webpack_require__(21)([].map, true), 'Array', { - // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg]) - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 215 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $filter = __webpack_require__(25)(2); - -$export($export.P + $export.F * !__webpack_require__(21)([].filter, true), 'Array', { - // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg]) - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 216 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $some = __webpack_require__(25)(3); - -$export($export.P + $export.F * !__webpack_require__(21)([].some, true), 'Array', { - // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg]) - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 217 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $every = __webpack_require__(25)(4); - -$export($export.P + $export.F * !__webpack_require__(21)([].every, true), 'Array', { - // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg]) - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments[1]); - } -}); - - -/***/ }), -/* 218 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(109); - -$export($export.P + $export.F * !__webpack_require__(21)([].reduce, true), 'Array', { - // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], false); - } -}); - - -/***/ }), -/* 219 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $reduce = __webpack_require__(109); - -$export($export.P + $export.F * !__webpack_require__(21)([].reduceRight, true), 'Array', { - // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue]) - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], true); - } -}); - - -/***/ }), -/* 220 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $indexOf = __webpack_require__(52)(false); -var $native = [].indexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(21)($native)), 'Array', { - // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? $native.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments[1]); - } -}); - - -/***/ }), -/* 221 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toIObject = __webpack_require__(15); -var toInteger = __webpack_require__(20); -var toLength = __webpack_require__(6); -var $native = [].lastIndexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(21)($native)), 'Array', { - // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex]) - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0; - var O = toIObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; - return -1; - } -}); - - -/***/ }), -/* 222 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { copyWithin: __webpack_require__(110) }); - -__webpack_require__(31)('copyWithin'); - - -/***/ }), -/* 223 */ -/***/ (function(module, exports, __webpack_require__) { - -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -var $export = __webpack_require__(0); - -$export($export.P, 'Array', { fill: __webpack_require__(85) }); - -__webpack_require__(31)('fill'); - - -/***/ }), -/* 224 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(25)(5); -var KEY = 'find'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(31)(KEY); - - -/***/ }), -/* 225 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined) -var $export = __webpack_require__(0); -var $find = __webpack_require__(25)(6); -var KEY = 'findIndex'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -__webpack_require__(31)(KEY); - - -/***/ }), -/* 226 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(38)('Array'); - - -/***/ }), -/* 227 */ -/***/ (function(module, exports, __webpack_require__) { - -var global = __webpack_require__(2); -var inheritIfRequired = __webpack_require__(72); -var dP = __webpack_require__(8).f; -var gOPN = __webpack_require__(37).f; -var isRegExp = __webpack_require__(56); -var $flags = __webpack_require__(50); -var $RegExp = global.RegExp; -var Base = $RegExp; -var proto = $RegExp.prototype; -var re1 = /a/g; -var re2 = /a/g; -// "new" creates a new object, old webkit buggy here -var CORRECT_NEW = new $RegExp(re1) !== re1; - -if (__webpack_require__(7) && (!CORRECT_NEW || __webpack_require__(3)(function () { - re2[__webpack_require__(5)('match')] = false; - // RegExp constructor can alter flags and IsRegExp works correct with @@match - return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i'; -}))) { - $RegExp = function RegExp(p, f) { - var tiRE = this instanceof $RegExp; - var piRE = isRegExp(p); - var fiU = f === undefined; - return !tiRE && piRE && p.constructor === $RegExp && fiU ? p - : inheritIfRequired(CORRECT_NEW - ? new Base(piRE && !fiU ? p.source : p, f) - : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f) - , tiRE ? this : proto, $RegExp); - }; - var proxy = function (key) { - key in $RegExp || dP($RegExp, key, { - configurable: true, - get: function () { return Base[key]; }, - set: function (it) { Base[key] = it; } - }); - }; - for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]); - proto.constructor = $RegExp; - $RegExp.prototype = proto; - __webpack_require__(12)(global, 'RegExp', $RegExp); -} - -__webpack_require__(38)('RegExp'); - - -/***/ }), -/* 228 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -__webpack_require__(113); -var anObject = __webpack_require__(1); -var $flags = __webpack_require__(50); -var DESCRIPTORS = __webpack_require__(7); -var TO_STRING = 'toString'; -var $toString = /./[TO_STRING]; - -var define = function (fn) { - __webpack_require__(12)(RegExp.prototype, TO_STRING, fn, true); -}; - -// 21.2.5.14 RegExp.prototype.toString() -if (__webpack_require__(3)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) { - define(function toString() { - var R = anObject(this); - return '/'.concat(R.source, '/', - 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined); - }); -// FF44- RegExp#toString has a wrong name -} else if ($toString.name != TO_STRING) { - define(function toString() { - return $toString.call(this); - }); -} - - -/***/ }), -/* 229 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var toLength = __webpack_require__(6); -var advanceStringIndex = __webpack_require__(88); -var regExpExec = __webpack_require__(58); - -// @@match logic -__webpack_require__(59)('match', 1, function (defined, MATCH, $match, maybeCallNative) { - return [ - // `String.prototype.match` method - // https://tc39.github.io/ecma262/#sec-string.prototype.match - function match(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[MATCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); - }, - // `RegExp.prototype[@@match]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match - function (regexp) { - var res = maybeCallNative($match, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - if (!rx.global) return regExpExec(rx, S); - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - var A = []; - var n = 0; - var result; - while ((result = regExpExec(rx, S)) !== null) { - var matchStr = String(result[0]); - A[n] = matchStr; - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - n++; - } - return n === 0 ? null : A; - } - ]; -}); - - -/***/ }), -/* 230 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var toInteger = __webpack_require__(20); -var advanceStringIndex = __webpack_require__(88); -var regExpExec = __webpack_require__(58); -var max = Math.max; -var min = Math.min; -var floor = Math.floor; -var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; -var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; - -var maybeToString = function (it) { - return it === undefined ? it : String(it); -}; - -// @@replace logic -__webpack_require__(59)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) { - return [ - // `String.prototype.replace` method - // https://tc39.github.io/ecma262/#sec-string.prototype.replace - function replace(searchValue, replaceValue) { - var O = defined(this); - var fn = searchValue == undefined ? undefined : searchValue[REPLACE]; - return fn !== undefined - ? fn.call(searchValue, O, replaceValue) - : $replace.call(String(O), searchValue, replaceValue); - }, - // `RegExp.prototype[@@replace]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace - function (regexp, replaceValue) { - var res = maybeCallNative($replace, regexp, this, replaceValue); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var functionalReplace = typeof replaceValue === 'function'; - if (!functionalReplace) replaceValue = String(replaceValue); - var global = rx.global; - if (global) { - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - } - var results = []; - while (true) { - var result = regExpExec(rx, S); - if (result === null) break; - results.push(result); - if (!global) break; - var matchStr = String(result[0]); - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - } - var accumulatedResult = ''; - var nextSourcePosition = 0; - for (var i = 0; i < results.length; i++) { - result = results[i]; - var matched = String(result[0]); - var position = max(min(toInteger(result.index), S.length), 0); - var captures = []; - // NOTE: This is equivalent to - // captures = result.slice(1).map(maybeToString) - // but for some reason `nativeSlice.call(result, 1, result.length)` (called in - // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and - // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. - for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); - var namedCaptures = result.groups; - if (functionalReplace) { - var replacerArgs = [matched].concat(captures, position, S); - if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); - var replacement = String(replaceValue.apply(undefined, replacerArgs)); - } else { - replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); - } - if (position >= nextSourcePosition) { - accumulatedResult += S.slice(nextSourcePosition, position) + replacement; - nextSourcePosition = position + matched.length; - } - } - return accumulatedResult + S.slice(nextSourcePosition); - } - ]; - - // https://tc39.github.io/ecma262/#sec-getsubstitution - function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { - var tailPos = position + matched.length; - var m = captures.length; - var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; - if (namedCaptures !== undefined) { - namedCaptures = toObject(namedCaptures); - symbols = SUBSTITUTION_SYMBOLS; - } - return $replace.call(replacement, symbols, function (match, ch) { - var capture; - switch (ch.charAt(0)) { - case '$': return '$'; - case '&': return matched; - case '`': return str.slice(0, position); - case "'": return str.slice(tailPos); - case '<': - capture = namedCaptures[ch.slice(1, -1)]; - break; - default: // \d\d? - var n = +ch; - if (n === 0) return match; - if (n > m) { - var f = floor(n / 10); - if (f === 0) return match; - if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); - return match; - } - capture = captures[n - 1]; - } - return capture === undefined ? '' : capture; - }); - } -}); - - -/***/ }), -/* 231 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var anObject = __webpack_require__(1); -var sameValue = __webpack_require__(99); -var regExpExec = __webpack_require__(58); - -// @@search logic -__webpack_require__(59)('search', 1, function (defined, SEARCH, $search, maybeCallNative) { - return [ - // `String.prototype.search` method - // https://tc39.github.io/ecma262/#sec-string.prototype.search - function search(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[SEARCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); - }, - // `RegExp.prototype[@@search]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search - function (regexp) { - var res = maybeCallNative($search, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - var previousLastIndex = rx.lastIndex; - if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; - var result = regExpExec(rx, S); - if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; - return result === null ? -1 : result.index; - } - ]; -}); - - -/***/ }), -/* 232 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var isRegExp = __webpack_require__(56); -var anObject = __webpack_require__(1); -var speciesConstructor = __webpack_require__(51); -var advanceStringIndex = __webpack_require__(88); -var toLength = __webpack_require__(6); -var callRegExpExec = __webpack_require__(58); -var regexpExec = __webpack_require__(87); -var fails = __webpack_require__(3); -var $min = Math.min; -var $push = [].push; -var $SPLIT = 'split'; -var LENGTH = 'length'; -var LAST_INDEX = 'lastIndex'; -var MAX_UINT32 = 0xffffffff; - -// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError -var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); }); - -// @@split logic -__webpack_require__(59)('split', 2, function (defined, SPLIT, $split, maybeCallNative) { - var internalSplit; - if ( - 'abbc'[$SPLIT](/(b)*/)[1] == 'c' || - 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 || - 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 || - '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 || - '.'[$SPLIT](/()()/)[LENGTH] > 1 || - ''[$SPLIT](/.?/)[LENGTH] - ) { - // based on es5-shim implementation, need to rework it - internalSplit = function (separator, limit) { - var string = String(this); - if (separator === undefined && limit === 0) return []; - // If `separator` is not a regex, use native split - if (!isRegExp(separator)) return $split.call(string, separator, limit); - var output = []; - var flags = (separator.ignoreCase ? 'i' : '') + - (separator.multiline ? 'm' : '') + - (separator.unicode ? 'u' : '') + - (separator.sticky ? 'y' : ''); - var lastLastIndex = 0; - var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0; - // Make `global` and avoid `lastIndex` issues by working with a copy - var separatorCopy = new RegExp(separator.source, flags + 'g'); - var match, lastIndex, lastLength; - while (match = regexpExec.call(separatorCopy, string)) { - lastIndex = separatorCopy[LAST_INDEX]; - if (lastIndex > lastLastIndex) { - output.push(string.slice(lastLastIndex, match.index)); - if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1)); - lastLength = match[0][LENGTH]; - lastLastIndex = lastIndex; - if (output[LENGTH] >= splitLimit) break; - } - if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop - } - if (lastLastIndex === string[LENGTH]) { - if (lastLength || !separatorCopy.test('')) output.push(''); - } else output.push(string.slice(lastLastIndex)); - return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output; - }; - // Chakra, V8 - } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) { - internalSplit = function (separator, limit) { - return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit); - }; - } else { - internalSplit = $split; - } - - return [ - // `String.prototype.split` method - // https://tc39.github.io/ecma262/#sec-string.prototype.split - function split(separator, limit) { - var O = defined(this); - var splitter = separator == undefined ? undefined : separator[SPLIT]; - return splitter !== undefined - ? splitter.call(separator, O, limit) - : internalSplit.call(String(O), separator, limit); - }, - // `RegExp.prototype[@@split]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split - // - // NOTE: This cannot be properly polyfilled in engines that don't support - // the 'y' flag. - function (regexp, limit) { - var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var C = speciesConstructor(rx, RegExp); - - var unicodeMatching = rx.unicode; - var flags = (rx.ignoreCase ? 'i' : '') + - (rx.multiline ? 'm' : '') + - (rx.unicode ? 'u' : '') + - (SUPPORTS_Y ? 'y' : 'g'); - - // ^(? + rx + ) is needed, in combination with some S slicing, to - // simulate the 'y' flag. - var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); - var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; - if (lim === 0) return []; - if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; - var p = 0; - var q = 0; - var A = []; - while (q < S.length) { - splitter.lastIndex = SUPPORTS_Y ? q : 0; - var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); - var e; - if ( - z === null || - (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p - ) { - q = advanceStringIndex(S, q, unicodeMatching); - } else { - A.push(S.slice(p, q)); - if (A.length === lim) return A; - for (var i = 1; i <= z.length - 1; i++) { - A.push(z[i]); - if (A.length === lim) return A; - } - q = p = e; - } - } - A.push(S.slice(p)); - return A; - } - ]; -}); - - -/***/ }), -/* 233 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var LIBRARY = __webpack_require__(29); -var global = __webpack_require__(2); -var ctx = __webpack_require__(18); -var classof = __webpack_require__(44); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(4); -var aFunction = __webpack_require__(10); -var anInstance = __webpack_require__(39); -var forOf = __webpack_require__(40); -var speciesConstructor = __webpack_require__(51); -var task = __webpack_require__(89).set; -var microtask = __webpack_require__(90)(); -var newPromiseCapabilityModule = __webpack_require__(91); -var perform = __webpack_require__(114); -var userAgent = __webpack_require__(60); -var promiseResolve = __webpack_require__(115); -var PROMISE = 'Promise'; -var TypeError = global.TypeError; -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8 || ''; -var $Promise = global[PROMISE]; -var isNode = classof(process) == 'process'; -var empty = function () { /* empty */ }; -var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; -var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - -var USE_NATIVE = !!function () { - try { - // correct subclassing with @@species support - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[__webpack_require__(5)('species')] = function (exec) { - exec(empty, empty); - }; - // unhandled rejections tracking support, NodeJS Promise without it fails @@species test - return (isNode || typeof PromiseRejectionEvent == 'function') - && promise.then(empty) instanceof FakePromise - // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // we can't detect it synchronously, so just check versions - && v8.indexOf('6.6') !== 0 - && userAgent.indexOf('Chrome/66') === -1; - } catch (e) { /* empty */ } -}(); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; -var notify = function (promise, isReject) { - if (promise._n) return; - promise._n = true; - var chain = promise._c; - microtask(function () { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function (reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) onHandleUnhandled(promise); - promise._h = 1; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // may throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (e) { - if (domain && !exited) domain.exit(); - reject(e); - } - }; - while (chain.length > i) run(chain[i++]); // variable length - can't use forEach - promise._c = []; - promise._n = false; - if (isReject && !promise._h) onUnhandled(promise); - }); -}; -var onUnhandled = function (promise) { - task.call(global, function () { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console; - if (unhandled) { - result = perform(function () { - if (isNode) { - process.emit('unhandledRejection', value, promise); - } else if (handler = global.onunhandledrejection) { - handler({ promise: promise, reason: value }); - } else if ((console = global.console) && console.error) { - console.error('Unhandled promise rejection', value); - } - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } promise._a = undefined; - if (unhandled && result.e) throw result.v; - }); -}; -var isUnhandled = function (promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; -}; -var onHandleUnhandled = function (promise) { - task.call(global, function () { - var handler; - if (isNode) { - process.emit('rejectionHandled', promise); - } else if (handler = global.onrejectionhandled) { - handler({ promise: promise, reason: promise._v }); - } - }); -}; -var $reject = function (value) { - var promise = this; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - promise._v = value; - promise._s = 2; - if (!promise._a) promise._a = promise._c.slice(); - notify(promise, true); -}; -var $resolve = function (value) { - var promise = this; - var then; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function () { - var wrapper = { _w: promise, _d: false }; // wrap - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); - } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); - } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); // wrap - } -}; - -// constructor polyfill -if (!USE_NATIVE) { - // 25.4.3.1 Promise(executor) - $Promise = function Promise(executor) { - anInstance(this, $Promise, PROMISE, '_h'); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - this._c = []; // <- awaiting reactions - this._a = undefined; // <- checked in isUnhandled reactions - this._s = 0; // <- state - this._d = false; // <- done - this._v = undefined; // <- value - this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled - this._n = false; // <- notify - }; - Internal.prototype = __webpack_require__(41)($Promise.prototype, { - // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = isNode ? process.domain : undefined; - this._c.push(reaction); - if (this._a) this._a.push(reaction); - if (this._s) notify(this, false); - return reaction.promise; - }, - // 25.4.5.1 Promise.prototype.catch(onRejected) - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === $Promise || C === Wrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); -__webpack_require__(43)($Promise, PROMISE); -__webpack_require__(38)(PROMISE); -Wrapper = __webpack_require__(26)[PROMISE]; - -// statics -$export($export.S + $export.F * !USE_NATIVE, PROMISE, { - // 25.4.4.5 Promise.reject(r) - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } -}); -$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - // 25.4.4.6 Promise.resolve(x) - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } -}); -$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(57)(function (iter) { - $Promise.all(iter)['catch'](empty); -})), PROMISE, { - // 25.4.4.1 Promise.all(iterable) - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function (promise) { - var $index = index++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - C.resolve(promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) reject(result.v); - return capability.promise; - }, - // 25.4.4.4 Promise.race(iterable) - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - forOf(iterable, false, function (promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) reject(result.v); - return capability.promise; - } -}); - - -/***/ }), -/* 234 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var weak = __webpack_require__(120); -var validate = __webpack_require__(42); -var WEAK_SET = 'WeakSet'; - -// 23.4 WeakSet Objects -__webpack_require__(61)(WEAK_SET, function (get) { - return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return weak.def(validate(this, WEAK_SET), value, true); - } -}, weak, false, true); - - -/***/ }), -/* 235 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) -var $export = __webpack_require__(0); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var rApply = (__webpack_require__(2).Reflect || {}).apply; -var fApply = Function.apply; -// MS Edge argumentsList argument is optional -$export($export.S + $export.F * !__webpack_require__(3)(function () { - rApply(function () { /* empty */ }); -}), 'Reflect', { - apply: function apply(target, thisArgument, argumentsList) { - var T = aFunction(target); - var L = anObject(argumentsList); - return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); - } -}); - - -/***/ }), -/* 236 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.2 Reflect.construct(target, argumentsList [, newTarget]) -var $export = __webpack_require__(0); -var create = __webpack_require__(36); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(4); -var fails = __webpack_require__(3); -var bind = __webpack_require__(100); -var rConstruct = (__webpack_require__(2).Reflect || {}).construct; - -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(rConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - rConstruct(function () { /* empty */ }); -}); - -$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); - - -/***/ }), -/* 237 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes) -var dP = __webpack_require__(8); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var toPrimitive = __webpack_require__(22); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -$export($export.S + $export.F * __webpack_require__(3)(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 }); -}), 'Reflect', { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - propertyKey = toPrimitive(propertyKey, true); - anObject(attributes); - try { - dP.f(target, propertyKey, attributes); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 238 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.4 Reflect.deleteProperty(target, propertyKey) -var $export = __webpack_require__(0); -var gOPD = __webpack_require__(16).f; -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - deleteProperty: function deleteProperty(target, propertyKey) { - var desc = gOPD(anObject(target), propertyKey); - return desc && !desc.configurable ? false : delete target[propertyKey]; - } -}); - - -/***/ }), -/* 239 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 26.1.5 Reflect.enumerate(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var Enumerate = function (iterated) { - this._t = anObject(iterated); // target - this._i = 0; // next index - var keys = this._k = []; // keys - var key; - for (key in iterated) keys.push(key); -}; -__webpack_require__(80)(Enumerate, 'Object', function () { - var that = this; - var keys = that._k; - var key; - do { - if (that._i >= keys.length) return { value: undefined, done: true }; - } while (!((key = keys[that._i++]) in that._t)); - return { value: key, done: false }; -}); - -$export($export.S, 'Reflect', { - enumerate: function enumerate(target) { - return new Enumerate(target); - } -}); - - -/***/ }), -/* 240 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.6 Reflect.get(target, propertyKey [, receiver]) -var gOPD = __webpack_require__(16); -var getPrototypeOf = __webpack_require__(17); -var has = __webpack_require__(14); -var $export = __webpack_require__(0); -var isObject = __webpack_require__(4); -var anObject = __webpack_require__(1); - -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var desc, proto; - if (anObject(target) === receiver) return target[propertyKey]; - if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value') - ? desc.value - : desc.get !== undefined - ? desc.get.call(receiver) - : undefined; - if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver); -} - -$export($export.S, 'Reflect', { get: get }); - - -/***/ }), -/* 241 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey) -var gOPD = __webpack_require__(16); -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return gOPD.f(anObject(target), propertyKey); - } -}); - - -/***/ }), -/* 242 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.8 Reflect.getPrototypeOf(target) -var $export = __webpack_require__(0); -var getProto = __webpack_require__(17); -var anObject = __webpack_require__(1); - -$export($export.S, 'Reflect', { - getPrototypeOf: function getPrototypeOf(target) { - return getProto(anObject(target)); - } -}); - - -/***/ }), -/* 243 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.9 Reflect.has(target, propertyKey) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); - - -/***/ }), -/* 244 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.10 Reflect.isExtensible(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $isExtensible = Object.isExtensible; - -$export($export.S, 'Reflect', { - isExtensible: function isExtensible(target) { - anObject(target); - return $isExtensible ? $isExtensible(target) : true; - } -}); - - -/***/ }), -/* 245 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.11 Reflect.ownKeys(target) -var $export = __webpack_require__(0); - -$export($export.S, 'Reflect', { ownKeys: __webpack_require__(121) }); - - -/***/ }), -/* 246 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.12 Reflect.preventExtensions(target) -var $export = __webpack_require__(0); -var anObject = __webpack_require__(1); -var $preventExtensions = Object.preventExtensions; - -$export($export.S, 'Reflect', { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - if ($preventExtensions) $preventExtensions(target); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 247 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.13 Reflect.set(target, propertyKey, V [, receiver]) -var dP = __webpack_require__(8); -var gOPD = __webpack_require__(16); -var getPrototypeOf = __webpack_require__(17); -var has = __webpack_require__(14); -var $export = __webpack_require__(0); -var createDesc = __webpack_require__(32); -var anObject = __webpack_require__(1); -var isObject = __webpack_require__(4); - -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDesc = gOPD.f(anObject(target), propertyKey); - var existingDescriptor, proto; - if (!ownDesc) { - if (isObject(proto = getPrototypeOf(target))) { - return set(proto, propertyKey, V, receiver); - } - ownDesc = createDesc(0); - } - if (has(ownDesc, 'value')) { - if (ownDesc.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = gOPD.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - dP.f(receiver, propertyKey, existingDescriptor); - } else dP.f(receiver, propertyKey, createDesc(0, V)); - return true; - } - return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true); -} - -$export($export.S, 'Reflect', { set: set }); - - -/***/ }), -/* 248 */ -/***/ (function(module, exports, __webpack_require__) { - -// 26.1.14 Reflect.setPrototypeOf(target, proto) -var $export = __webpack_require__(0); -var setProto = __webpack_require__(71); - -if (setProto) $export($export.S, 'Reflect', { - setPrototypeOf: function setPrototypeOf(target, proto) { - setProto.check(target, proto); - try { - setProto.set(target, proto); - return true; - } catch (e) { - return false; - } - } -}); - - -/***/ }), -/* 249 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.3.1 / 15.9.4.4 Date.now() -var $export = __webpack_require__(0); - -$export($export.S, 'Date', { now: function () { return new Date().getTime(); } }); - - -/***/ }), -/* 250 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(22); - -$export($export.P + $export.F * __webpack_require__(3)(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString(); - } -}); - - -/***/ }), -/* 251 */ -/***/ (function(module, exports, __webpack_require__) { - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var $export = __webpack_require__(0); -var toISOString = __webpack_require__(252); - -// PhantomJS / old WebKit has a broken implementations -$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', { - toISOString: toISOString -}); - - -/***/ }), -/* 252 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var fails = __webpack_require__(3); -var getTime = Date.prototype.getTime; -var $toISOString = Date.prototype.toISOString; - -var lz = function (num) { - return num > 9 ? num : '0' + num; -}; - -// PhantomJS / old WebKit has a broken implementations -module.exports = (fails(function () { - return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - $toISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var d = this; - var y = d.getUTCFullYear(); - var m = d.getUTCMilliseconds(); - var s = y < 0 ? '-' : y > 9999 ? '+' : ''; - return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) + - '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) + - 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) + - ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z'; -} : $toISOString; - - -/***/ }), -/* 253 */ -/***/ (function(module, exports, __webpack_require__) { - -var DateProto = Date.prototype; -var INVALID_DATE = 'Invalid Date'; -var TO_STRING = 'toString'; -var $toString = DateProto[TO_STRING]; -var getTime = DateProto.getTime; -if (new Date(NaN) + '' != INVALID_DATE) { - __webpack_require__(12)(DateProto, TO_STRING, function toString() { - var value = getTime.call(this); - // eslint-disable-next-line no-self-compare - return value === value ? $toString.call(this) : INVALID_DATE; - }); -} - - -/***/ }), -/* 254 */ -/***/ (function(module, exports, __webpack_require__) { - -var TO_PRIMITIVE = __webpack_require__(5)('toPrimitive'); -var proto = Date.prototype; - -if (!(TO_PRIMITIVE in proto)) __webpack_require__(11)(proto, TO_PRIMITIVE, __webpack_require__(255)); - - -/***/ }), -/* 255 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var anObject = __webpack_require__(1); -var toPrimitive = __webpack_require__(22); -var NUMBER = 'number'; - -module.exports = function (hint) { - if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint'); - return toPrimitive(anObject(this), hint != NUMBER); -}; - - -/***/ }), -/* 256 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var $typed = __webpack_require__(62); -var buffer = __webpack_require__(92); -var anObject = __webpack_require__(1); -var toAbsoluteIndex = __webpack_require__(35); -var toLength = __webpack_require__(6); -var isObject = __webpack_require__(4); -var ArrayBuffer = __webpack_require__(2).ArrayBuffer; -var speciesConstructor = __webpack_require__(51); -var $ArrayBuffer = buffer.ArrayBuffer; -var $DataView = buffer.DataView; -var $isView = $typed.ABV && ArrayBuffer.isView; -var $slice = $ArrayBuffer.prototype.slice; -var VIEW = $typed.VIEW; -var ARRAY_BUFFER = 'ArrayBuffer'; - -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer }); - -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it) { - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); - -$export($export.P + $export.U + $export.F * __webpack_require__(3)(function () { - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end) { - if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength; - var first = toAbsoluteIndex(start, len); - var fin = toAbsoluteIndex(end === undefined ? len : end, len); - var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first)); - var viewS = new $DataView(this); - var viewT = new $DataView(result); - var index = 0; - while (first < fin) { - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -__webpack_require__(38)(ARRAY_BUFFER); - - -/***/ }), -/* 257 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -$export($export.G + $export.W + $export.F * !__webpack_require__(62).ABV, { - DataView: __webpack_require__(92).DataView -}); - - -/***/ }), -/* 258 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Int8', 1, function (init) { - return function Int8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 259 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Uint8', 1, function (init) { - return function Uint8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 260 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Uint8', 1, function (init) { - return function Uint8ClampedArray(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}, true); - - -/***/ }), -/* 261 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Int16', 2, function (init) { - return function Int16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 262 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Uint16', 2, function (init) { - return function Uint16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 263 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Int32', 4, function (init) { - return function Int32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 264 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Uint32', 4, function (init) { - return function Uint32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 265 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Float32', 4, function (init) { - return function Float32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 266 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(27)('Float64', 8, function (init) { - return function Float64Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); - - -/***/ }), -/* 267 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/Array.prototype.includes -var $export = __webpack_require__(0); -var $includes = __webpack_require__(52)(true); - -$export($export.P, 'Array', { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -__webpack_require__(31)('includes'); - - -/***/ }), -/* 268 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(123); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var aFunction = __webpack_require__(10); -var arraySpeciesCreate = __webpack_require__(84); - -$export($export.P, 'Array', { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen, A; - aFunction(callbackfn); - sourceLen = toLength(O.length); - A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); - return A; - } -}); - -__webpack_require__(31)('flatMap'); - - -/***/ }), -/* 269 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten -var $export = __webpack_require__(0); -var flattenIntoArray = __webpack_require__(123); -var toObject = __webpack_require__(9); -var toLength = __webpack_require__(6); -var toInteger = __webpack_require__(20); -var arraySpeciesCreate = __webpack_require__(84); - -$export($export.P, 'Array', { - flatten: function flatten(/* depthArg = 1 */) { - var depthArg = arguments[0]; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); - -__webpack_require__(31)('flatten'); - - -/***/ }), -/* 270 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/mathiasbynens/String.prototype.at -var $export = __webpack_require__(0); -var $at = __webpack_require__(55)(true); - -$export($export.P, 'String', { - at: function at(pos) { - return $at(this, pos); - } -}); - - -/***/ }), -/* 271 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(124); -var userAgent = __webpack_require__(60); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); - } -}); - - -/***/ }), -/* 272 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-string-pad-start-end -var $export = __webpack_require__(0); -var $pad = __webpack_require__(124); -var userAgent = __webpack_require__(60); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); - } -}); - - -/***/ }), -/* 273 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(45)('trimLeft', function ($trim) { - return function trimLeft() { - return $trim(this, 1); - }; -}, 'trimStart'); - - -/***/ }), -/* 274 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -__webpack_require__(45)('trimRight', function ($trim) { - return function trimRight() { - return $trim(this, 2); - }; -}, 'trimEnd'); - - -/***/ }), -/* 275 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://tc39.github.io/String.prototype.matchAll/ -var $export = __webpack_require__(0); -var defined = __webpack_require__(23); -var toLength = __webpack_require__(6); -var isRegExp = __webpack_require__(56); -var getFlags = __webpack_require__(50); -var RegExpProto = RegExp.prototype; - -var $RegExpStringIterator = function (regexp, string) { - this._r = regexp; - this._s = string; -}; - -__webpack_require__(80)($RegExpStringIterator, 'RegExp String', function next() { - var match = this._r.exec(this._s); - return { value: match, done: match === null }; -}); - -$export($export.P, 'String', { - matchAll: function matchAll(regexp) { - defined(this); - if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!'); - var S = String(this); - var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp); - var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags); - rx.lastIndex = toLength(regexp.lastIndex); - return new $RegExpStringIterator(rx, S); - } -}); - - -/***/ }), -/* 276 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(67)('asyncIterator'); - - -/***/ }), -/* 277 */ -/***/ (function(module, exports, __webpack_require__) { - -__webpack_require__(67)('observable'); - - -/***/ }), -/* 278 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-getownpropertydescriptors -var $export = __webpack_require__(0); -var ownKeys = __webpack_require__(121); -var toIObject = __webpack_require__(15); -var gOPD = __webpack_require__(16); -var createProperty = __webpack_require__(82); - -$export($export.S, 'Object', { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIObject(object); - var getDesc = gOPD.f; - var keys = ownKeys(O); - var result = {}; - var i = 0; - var key, desc; - while (keys.length > i) { - desc = getDesc(O, key = keys[i++]); - if (desc !== undefined) createProperty(result, key, desc); - } - return result; - } -}); - - -/***/ }), -/* 279 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $values = __webpack_require__(125)(false); - -$export($export.S, 'Object', { - values: function values(it) { - return $values(it); - } -}); - - -/***/ }), -/* 280 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-object-values-entries -var $export = __webpack_require__(0); -var $entries = __webpack_require__(125)(true); - -$export($export.S, 'Object', { - entries: function entries(it) { - return $entries(it); - } -}); - - -/***/ }), -/* 281 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.2 Object.prototype.__defineGetter__(P, getter) -__webpack_require__(7) && $export($export.P + __webpack_require__(63), 'Object', { - __defineGetter__: function __defineGetter__(P, getter) { - $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 282 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var aFunction = __webpack_require__(10); -var $defineProperty = __webpack_require__(8); - -// B.2.2.3 Object.prototype.__defineSetter__(P, setter) -__webpack_require__(7) && $export($export.P + __webpack_require__(63), 'Object', { - __defineSetter__: function __defineSetter__(P, setter) { - $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } -}); - - -/***/ }), -/* 283 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(22); -var getPrototypeOf = __webpack_require__(17); -var getOwnPropertyDescriptor = __webpack_require__(16).f; - -// B.2.2.4 Object.prototype.__lookupGetter__(P) -__webpack_require__(7) && $export($export.P + __webpack_require__(63), 'Object', { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.get; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 284 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -var $export = __webpack_require__(0); -var toObject = __webpack_require__(9); -var toPrimitive = __webpack_require__(22); -var getPrototypeOf = __webpack_require__(17); -var getOwnPropertyDescriptor = __webpack_require__(16).f; - -// B.2.2.5 Object.prototype.__lookupSetter__(P) -__webpack_require__(7) && $export($export.P + __webpack_require__(63), 'Object', { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.set; - } while (O = getPrototypeOf(O)); - } -}); - - -/***/ }), -/* 285 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(126)('Map') }); - - -/***/ }), -/* 286 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = __webpack_require__(0); - -$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(126)('Set') }); - - -/***/ }), -/* 287 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -__webpack_require__(64)('Map'); - - -/***/ }), -/* 288 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -__webpack_require__(64)('Set'); - - -/***/ }), -/* 289 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -__webpack_require__(64)('WeakMap'); - - -/***/ }), -/* 290 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -__webpack_require__(64)('WeakSet'); - - -/***/ }), -/* 291 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -__webpack_require__(65)('Map'); - - -/***/ }), -/* 292 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -__webpack_require__(65)('Set'); - - -/***/ }), -/* 293 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -__webpack_require__(65)('WeakMap'); - - -/***/ }), -/* 294 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -__webpack_require__(65)('WeakSet'); - - -/***/ }), -/* 295 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.G, { global: __webpack_require__(2) }); - - -/***/ }), -/* 296 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/tc39/proposal-global -var $export = __webpack_require__(0); - -$export($export.S, 'System', { global: __webpack_require__(2) }); - - -/***/ }), -/* 297 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/ljharb/proposal-is-error -var $export = __webpack_require__(0); -var cof = __webpack_require__(19); - -$export($export.S, 'Error', { - isError: function isError(it) { - return cof(it) === 'Error'; - } -}); - - -/***/ }), -/* 298 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - clamp: function clamp(x, lower, upper) { - return Math.min(upper, Math.max(lower, x)); - } -}); - - -/***/ }), -/* 299 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 }); - - -/***/ }), -/* 300 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var RAD_PER_DEG = 180 / Math.PI; - -$export($export.S, 'Math', { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); - - -/***/ }), -/* 301 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var scale = __webpack_require__(128); -var fround = __webpack_require__(107); - -$export($export.S, 'Math', { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); - - -/***/ }), -/* 302 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); - - -/***/ }), -/* 303 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); - - -/***/ }), -/* 304 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - imulh: function imulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); - - -/***/ }), -/* 305 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI }); - - -/***/ }), -/* 306 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); -var DEG_PER_RAD = Math.PI / 180; - -$export($export.S, 'Math', { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); - - -/***/ }), -/* 307 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { scale: __webpack_require__(128) }); - - -/***/ }), -/* 308 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { - umulh: function umulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); - - -/***/ }), -/* 309 */ -/***/ (function(module, exports, __webpack_require__) { - -// http://jfbastien.github.io/papers/Math.signbit.html -var $export = __webpack_require__(0); - -$export($export.S, 'Math', { signbit: function signbit(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0; -} }); - - -/***/ }), -/* 310 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -// https://github.com/tc39/proposal-promise-finally - -var $export = __webpack_require__(0); -var core = __webpack_require__(26); -var global = __webpack_require__(2); -var speciesConstructor = __webpack_require__(51); -var promiseResolve = __webpack_require__(115); - -$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) { - var C = speciesConstructor(this, core.Promise || global.Promise); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); -} }); - - -/***/ }), -/* 311 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/tc39/proposal-promise-try -var $export = __webpack_require__(0); -var newPromiseCapability = __webpack_require__(91); -var perform = __webpack_require__(114); - -$export($export.S, 'Promise', { 'try': function (callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; -} }); - - -/***/ }), -/* 312 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var ordinaryDefineOwnMetadata = metadata.set; - -metadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey)); -} }); - - -/***/ }), -/* 313 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var toMetaKey = metadata.key; -var getOrCreateMetadataMap = metadata.map; -var store = metadata.store; - -metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); -} }); - - -/***/ }), -/* 314 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryHasOwnMetadata = metadata.has; -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -metadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 315 */ -/***/ (function(module, exports, __webpack_require__) { - -var Set = __webpack_require__(118); -var from = __webpack_require__(127); -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 316 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 317 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); - - -/***/ }), -/* 318 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var getPrototypeOf = __webpack_require__(17); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -metadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 319 */ -/***/ (function(module, exports, __webpack_require__) { - -var metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -metadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); - - -/***/ }), -/* 320 */ -/***/ (function(module, exports, __webpack_require__) { - -var $metadata = __webpack_require__(28); -var anObject = __webpack_require__(1); -var aFunction = __webpack_require__(10); -var toMetaKey = $metadata.key; -var ordinaryDefineOwnMetadata = $metadata.set; - -$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, targetKey) { - ordinaryDefineOwnMetadata( - metadataKey, metadataValue, - (targetKey !== undefined ? anObject : aFunction)(target), - toMetaKey(targetKey) - ); - }; -} }); - - -/***/ }), -/* 321 */ -/***/ (function(module, exports, __webpack_require__) { - -// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask -var $export = __webpack_require__(0); -var microtask = __webpack_require__(90)(); -var process = __webpack_require__(2).process; -var isNode = __webpack_require__(19)(process) == 'process'; - -$export($export.G, { - asap: function asap(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); - - -/***/ }), -/* 322 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -// https://github.com/zenparsing/es-observable -var $export = __webpack_require__(0); -var global = __webpack_require__(2); -var core = __webpack_require__(26); -var microtask = __webpack_require__(90)(); -var OBSERVABLE = __webpack_require__(5)('observable'); -var aFunction = __webpack_require__(10); -var anObject = __webpack_require__(1); -var anInstance = __webpack_require__(39); -var redefineAll = __webpack_require__(41); -var hide = __webpack_require__(11); -var forOf = __webpack_require__(40); -var RETURN = forOf.RETURN; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscription) { - var cleanup = subscription._c; - if (cleanup) { - subscription._c = undefined; - cleanup(); - } -}; - -var subscriptionClosed = function (subscription) { - return subscription._o === undefined; -}; - -var closeSubscription = function (subscription) { - if (!subscriptionClosed(subscription)) { - subscription._o = undefined; - cleanupSubscription(subscription); - } -}; - -var Subscription = function (observer, subscriber) { - anObject(observer); - this._c = undefined; - this._o = observer; - observer = new SubscriptionObserver(this); - try { - var cleanup = subscriber(observer); - var subscription = cleanup; - if (cleanup != null) { - if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); }; - else aFunction(cleanup); - this._c = cleanup; - } - } catch (e) { - observer.error(e); - return; - } if (subscriptionClosed(this)) cleanupSubscription(this); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { closeSubscription(this); } -}); - -var SubscriptionObserver = function (subscription) { - this._s = subscription; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - try { - var m = getMethod(observer.next); - if (m) return m.call(observer, value); - } catch (e) { - try { - closeSubscription(subscription); - } finally { - throw e; - } - } - } - }, - error: function error(value) { - var subscription = this._s; - if (subscriptionClosed(subscription)) throw value; - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.error); - if (!m) throw value; - value = m.call(observer, value); - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - }, - complete: function complete(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.complete); - value = m ? m.call(observer, value) : undefined; - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - } - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - return new Subscription(observer, this._f); - }, - forEach: function forEach(fn) { - var that = this; - return new (core.Promise || global.Promise)(function (resolve, reject) { - aFunction(fn); - var subscription = that.subscribe({ - next: function (value) { - try { - return fn(value); - } catch (e) { - reject(e); - subscription.unsubscribe(); - } - }, - error: reject, - complete: resolve - }); - }); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var method = getMethod(anObject(x)[OBSERVABLE]); - if (method) { - var observable = anObject(method.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - return new C(function (observer) { - var done = false; - microtask(function () { - if (!done) { - try { - if (forOf(x, false, function (it) { - observer.next(it); - if (done) return RETURN; - }) === RETURN) return; - } catch (e) { - if (done) throw e; - observer.error(e); - return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - }, - of: function of() { - for (var i = 0, l = arguments.length, items = new Array(l); i < l;) items[i] = arguments[i++]; - return new (typeof this === 'function' ? this : $Observable)(function (observer) { - var done = false; - microtask(function () { - if (!done) { - for (var j = 0; j < items.length; ++j) { - observer.next(items[j]); - if (done) return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - } -}); - -hide($Observable.prototype, OBSERVABLE, function () { return this; }); - -$export($export.G, { Observable: $Observable }); - -__webpack_require__(38)('Observable'); - - -/***/ }), -/* 323 */ -/***/ (function(module, exports, __webpack_require__) { - -var $export = __webpack_require__(0); -var $task = __webpack_require__(89); -$export($export.G + $export.B, { - setImmediate: $task.set, - clearImmediate: $task.clear -}); - - -/***/ }), -/* 324 */ -/***/ (function(module, exports, __webpack_require__) { - -var $iterators = __webpack_require__(86); -var getKeys = __webpack_require__(34); -var redefine = __webpack_require__(12); -var global = __webpack_require__(2); -var hide = __webpack_require__(11); -var Iterators = __webpack_require__(46); -var wks = __webpack_require__(5); -var ITERATOR = wks('iterator'); -var TO_STRING_TAG = wks('toStringTag'); -var ArrayValues = Iterators.Array; - -var DOMIterables = { - CSSRuleList: true, // TODO: Not spec compliant, should be false. - CSSStyleDeclaration: false, - CSSValueList: false, - ClientRectList: false, - DOMRectList: false, - DOMStringList: false, - DOMTokenList: true, - DataTransferItemList: false, - FileList: false, - HTMLAllCollection: false, - HTMLCollection: false, - HTMLFormElement: false, - HTMLSelectElement: false, - MediaList: true, // TODO: Not spec compliant, should be false. - MimeTypeArray: false, - NamedNodeMap: false, - NodeList: true, - PaintRequestList: false, - Plugin: false, - PluginArray: false, - SVGLengthList: false, - SVGNumberList: false, - SVGPathSegList: false, - SVGPointList: false, - SVGStringList: false, - SVGTransformList: false, - SourceBufferList: false, - StyleSheetList: true, // TODO: Not spec compliant, should be false. - TextTrackCueList: false, - TextTrackList: false, - TouchList: false -}; - -for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) { - var NAME = collections[i]; - var explicit = DOMIterables[NAME]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - var key; - if (proto) { - if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues); - if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = ArrayValues; - if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true); - } -} - - -/***/ }), -/* 325 */ -/***/ (function(module, exports, __webpack_require__) { - -// ie9- setTimeout & setInterval additional parameters fix -var global = __webpack_require__(2); -var $export = __webpack_require__(0); -var userAgent = __webpack_require__(60); -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check -var wrap = function (set) { - return function (fn, time /* , ...args */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : false; - return set(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(this, args); - } : fn, time); - }; -}; -$export($export.G + $export.B + $export.F * MSIE, { - setTimeout: wrap(global.setTimeout), - setInterval: wrap(global.setInterval) -}); - - -/***/ }) -/******/ ]); -// CommonJS export -if (typeof module != 'undefined' && module.exports) module.exports = __e; -// RequireJS export -else if (typeof define == 'function' && define.amd) define(function () { return __e; }); -// Export to global object -else __g.core = __e; -}(1, 1); \ No newline at end of file diff --git a/forward_engineering/node_modules/core-js/client/shim.min.js b/forward_engineering/node_modules/core-js/client/shim.min.js deleted file mode 100644 index def83cc..0000000 --- a/forward_engineering/node_modules/core-js/client/shim.min.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * core-js 2.6.9 - * https://github.com/zloirock/core-js - * License: http://rock.mit-license.org - * © 2019 Denis Pushkarev - */ -!function(e,i,Jt){"use strict";!function(r){var e={};function __webpack_require__(t){if(e[t])return e[t].exports;var n=e[t]={i:t,l:!1,exports:{}};return r[t].call(n.exports,n,n.exports,__webpack_require__),n.l=!0,n.exports}__webpack_require__.m=r,__webpack_require__.c=e,__webpack_require__.d=function(t,n,r){__webpack_require__.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},__webpack_require__.n=function(t){var n=t&&t.__esModule?function getDefault(){return t["default"]}:function getModuleExports(){return t};return __webpack_require__.d(n,"a",n),n},__webpack_require__.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=129)}([function(t,n,r){var v=r(2),g=r(26),y=r(11),d=r(12),b=r(18),S="prototype",_=function(t,n,r){var e,i,o,u,c=t&_.F,a=t&_.G,f=t&_.P,s=t&_.B,l=a?v:t&_.S?v[n]||(v[n]={}):(v[n]||{})[S],h=a?g:g[n]||(g[n]={}),p=h[S]||(h[S]={});for(e in a&&(r=n),r)o=((i=!c&&l&&l[e]!==Jt)?l:r)[e],u=s&&i?b(o,v):f&&"function"==typeof o?b(Function.call,o):o,l&&d(l,e,o,t&_.U),h[e]!=o&&y(h,e,u),f&&p[e]!=o&&(p[e]=o)};v.core=g,_.F=1,_.G=2,_.S=4,_.P=8,_.B=16,_.W=32,_.U=64,_.R=128,t.exports=_},function(t,n,r){var e=r(4);t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof i&&(i=r)},function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n,r){var e=r(47)("wks"),i=r(33),o=r(2).Symbol,u="function"==typeof o;(t.exports=function(t){return e[t]||(e[t]=u&&o[t]||(u?o:i)("Symbol."+t))}).store=e},function(t,n,r){var e=r(20),i=Math.min;t.exports=function(t){return 0"+i+""};t.exports=function(n,t){var r={};r[n]=t(o),e(e.P+e.F*i(function(){var t=""[n]('"');return t!==t.toLowerCase()||3document.F=Object<\/script>"),t.close(),s=t.F;r--;)delete s[f][u[r]];return s()};t.exports=Object.create||function create(t,n){var r;return null!==t?(a[f]=i(t),r=new a,a[f]=null,r[c]=t):r=s(),n===Jt?r:o(r,n)}},function(t,n,r){var e=r(95),i=r(69).concat("length","prototype");n.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return e(t,i)}},function(t,n,r){var e=r(2),i=r(8),o=r(7),u=r(5)("species");t.exports=function(t){var n=e[t];o&&n&&!n[u]&&i.f(n,u,{configurable:!0,get:function(){return this}})}},function(t,n){t.exports=function(t,n,r,e){if(!(t instanceof n)||e!==Jt&&e in t)throw TypeError(r+": incorrect invocation!");return t}},function(t,n,r){var h=r(18),p=r(108),v=r(81),g=r(1),y=r(6),d=r(83),b={},S={};(n=t.exports=function(t,n,r,e,i){var o,u,c,a,f=i?function(){return t}:d(t),s=h(r,e,n?2:1),l=0;if("function"!=typeof f)throw TypeError(t+" is not iterable!");if(v(f)){for(o=y(t.length);l")}),d=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(r,t,n){var e=p(r),o=!l(function(){var t={};return t[e]=function(){return 7},7!=""[r](t)}),i=o?!l(function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===r&&(n.constructor={},n.constructor[g]=function(){return n}),n[e](""),!t}):Jt;if(!o||!i||"replace"===r&&!y||"split"===r&&!d){var u=/./[e],c=n(h,e,""[r],function maybeCallNative(t,n,r,e,i){return n.exec===v?o&&!i?{done:!0,value:u.call(n,r,e)}:{done:!0,value:t.call(r,n,e)}:{done:!1}}),a=c[1];f(String.prototype,r,c[0]),s(RegExp.prototype,e,2==t?function(t,n){return a.call(t,this,n)}:function(t){return a.call(t,this)})}}},function(t,n,r){var e=r(2).navigator;t.exports=e&&e.userAgent||""},function(t,n,r){var d=r(2),b=r(0),S=r(12),_=r(41),x=r(30),m=r(40),w=r(39),E=r(4),O=r(3),M=r(57),I=r(43),P=r(72);t.exports=function(e,t,n,r,i,o){var u=d[e],c=u,a=i?"set":"add",f=c&&c.prototype,s={},l=function(t){var r=f[t];S(f,t,"delete"==t?function(t){return!(o&&!E(t))&&r.call(this,0===t?0:t)}:"has"==t?function has(t){return!(o&&!E(t))&&r.call(this,0===t?0:t)}:"get"==t?function get(t){return o&&!E(t)?Jt:r.call(this,0===t?0:t)}:"add"==t?function add(t){return r.call(this,0===t?0:t),this}:function set(t,n){return r.call(this,0===t?0:t,n),this})};if("function"==typeof c&&(o||f.forEach&&!O(function(){(new c).entries().next()}))){var h=new c,p=h[a](o?{}:-0,1)!=h,v=O(function(){h.has(1)}),g=M(function(t){new c(t)}),y=!o&&O(function(){for(var t=new c,n=5;n--;)t[a](n,n);return!t.has(-0)});g||(((c=t(function(t,n){w(t,c,e);var r=P(new u,t,c);return n!=Jt&&m(n,i,r[a],r),r})).prototype=f).constructor=c),(v||y)&&(l("delete"),l("has"),i&&l("get")),(y||p)&&l(a),o&&f.clear&&delete f.clear}else c=r.getConstructor(t,e,i,a),_(c.prototype,n),x.NEED=!0;return I(c,e),b(b.G+b.W+b.F*((s[e]=c)!=u),s),o||r.setStrong(c,e,i),c}},function(t,n,r){for(var e,i=r(2),o=r(11),u=r(33),c=u("typed_array"),a=u("view"),f=!(!i.ArrayBuffer||!i.DataView),s=f,l=0,h="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l<9;)(e=i[h[l++]])?(o(e.prototype,c,!0),o(e.prototype,a,!0)):s=!1;t.exports={ABV:f,CONSTR:s,TYPED:c,VIEW:a}},function(t,n,r){t.exports=r(29)||!r(3)(function(){var t=Math.random();__defineSetter__.call(null,t,function(){}),delete r(2)[t]})},function(t,n,r){var e=r(0);t.exports=function(t){e(e.S,t,{of:function of(){for(var t=arguments.length,n=new Array(t);t--;)n[t]=arguments[t];return new this(n)}})}},function(t,n,r){var e=r(0),u=r(10),c=r(18),a=r(40);t.exports=function(t){e(e.S,t,{from:function from(t){var n,r,e,i,o=arguments[1];return u(this),(n=o!==Jt)&&u(o),t==Jt?new this:(r=[],n?(e=0,i=c(o,arguments[2],2),a(t,!1,function(t){r.push(i(t,e++))})):a(t,!1,r.push,r),new this(r))}})}},function(t,n,r){var e=r(4),i=r(2).document,o=e(i)&&e(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},function(t,n,r){var e=r(2),i=r(26),o=r(29),u=r(94),c=r(8).f;t.exports=function(t){var n=i.Symbol||(i.Symbol=o?{}:e.Symbol||{});"_"==t.charAt(0)||t in n||c(n,t,{value:u.f(t)})}},function(t,n,r){var e=r(47)("keys"),i=r(33);t.exports=function(t){return e[t]||(e[t]=i(t))}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,r){var e=r(2).document;t.exports=e&&e.documentElement},function(t,n,i){var r=i(4),e=i(1),o=function(t,n){if(e(t),!r(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,e){try{(e=i(18)(Function.call,i(16).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(n){r=!0}return function setPrototypeOf(t,n){return o(t,n),r?t.__proto__=n:e(t,n),t}}({},!1):Jt),check:o}},function(t,n,r){var o=r(4),u=r(71).set;t.exports=function(t,n,r){var e,i=n.constructor;return i!==r&&"function"==typeof i&&(e=i.prototype)!==r.prototype&&o(e)&&u&&u(t,e),t}},function(t,n){t.exports="\t\n\x0B\f\r   ᠎              \u2028\u2029\ufeff"},function(t,n,r){var i=r(20),o=r(23);t.exports=function repeat(t){var n=String(o(this)),r="",e=i(t);if(e<0||e==Infinity)throw RangeError("Count can't be negative");for(;0>>=1)&&(n+=n))1&e&&(r+=n);return r}},function(t,n){t.exports=Math.sign||function sign(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},function(t,n){var r=Math.expm1;t.exports=!r||22025.465794806718>1,s=23===n?F(2,-24)-F(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for((t=P(t))!=t||t===M?(i=t!=t?1:0,e=a):(e=A(k(t)/N),t*(o=F(2,-e))<1&&(e--,o*=2),2<=(t+=1<=e+f?s/o:s*F(2,1-f))*o&&(e++,o/=2),a<=e+f?(i=0,e=a):1<=e+f?(i=(t*o-1)*F(2,n),e+=f):(i=t*F(2,f-1)*F(2,n),e=0));8<=n;u[l++]=255&i,i/=256,n-=8);for(e=e<>1,c=i-7,a=r-1,f=t[a--],s=127&f;for(f>>=7;0>=-c,c+=n;0>8&255]}function packI32(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function packF64(t){return packIEEE754(t,52,8)}function packF32(t){return packIEEE754(t,23,4)}function addGetter(t,n,r){g(t[_],n,{get:function(){return this[r]}})}function get(t,n,r,e){var i=p(+r);if(t[L]>24)},setUint8:function setUint8(t,n){B.call(this,t,n<<24>>24)}},!0)}else m=function ArrayBuffer(t){s(this,m,b);var n=p(t);this._b=y.call(new Array(n),0),this[L]=n},w=function DataView(t,n,r){s(this,w,S),s(t,m,S);var e=t[L],i=l(n);if(i<0||e>24},getUint8:function getUint8(t){return get(this,1,t)[0]},getInt16:function getInt16(t){var n=get(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function getUint16(t){var n=get(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function getInt32(t){return unpackI32(get(this,4,t,arguments[1]))},getUint32:function getUint32(t){return unpackI32(get(this,4,t,arguments[1]))>>>0},getFloat32:function getFloat32(t){return unpackIEEE754(get(this,4,t,arguments[1]),23,4)},getFloat64:function getFloat64(t){return unpackIEEE754(get(this,8,t,arguments[1]),52,8)},setInt8:function setInt8(t,n){set(this,1,t,packI8,n)},setUint8:function setUint8(t,n){set(this,1,t,packI8,n)},setInt16:function setInt16(t,n){set(this,2,t,packI16,n,arguments[2])},setUint16:function setUint16(t,n){set(this,2,t,packI16,n,arguments[2])},setInt32:function setInt32(t,n){set(this,4,t,packI32,n,arguments[2])},setUint32:function setUint32(t,n){set(this,4,t,packI32,n,arguments[2])},setFloat32:function setFloat32(t,n){set(this,4,t,packF32,n,arguments[2])}, -setFloat64:function setFloat64(t,n){set(this,8,t,packF64,n,arguments[2])}});d(m,b),d(w,S),c(w[_],u.VIEW,!0),n[b]=m,n[S]=w},function(t,n,r){t.exports=!r(7)&&!r(3)(function(){return 7!=Object.defineProperty(r(66)("div"),"a",{get:function(){return 7}}).a})},function(t,n,r){n.f=r(5)},function(t,n,r){var u=r(14),c=r(15),a=r(52)(!1),f=r(68)("IE_PROTO");t.exports=function(t,n){var r,e=c(t),i=0,o=[];for(r in e)r!=f&&u(e,r)&&o.push(r);for(;i>>0||(u.test(r)?16:10))}:e},function(t,n){t.exports=Math.log1p||function log1p(t){return-1e-8<(t=+t)&&t<1e-8?t-t*t/2:Math.log(1+t)}},function(t,n,r){var o=r(75),e=Math.pow,u=e(2,-52),c=e(2,-23),a=e(2,127)*(2-c),f=e(2,-126);t.exports=Math.fround||function fround(t){var n,r,e=Math.abs(t),i=o(t);return e>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},function(t,n,r){var e=r(0),i=Math.exp;e(e.S,"Math",{cosh:function cosh(t){return(i(t=+t)+i(-t))/2}})},function(t,n,r){var e=r(0),i=r(76);e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},function(t,n,r){var e=r(0);e(e.S,"Math",{fround:r(107)})},function(t,n,r){var e=r(0),a=Math.abs;e(e.S,"Math",{hypot:function hypot(t,n){for(var r,e,i=0,o=0,u=arguments.length,c=0;o>>16)*u+o*(r&i>>>16)<<16>>>0)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log10:function log10(t){return Math.log(t)*Math.LOG10E}})},function(t,n,r){var e=r(0);e(e.S,"Math",{log1p:r(106)})},function(t,n,r){var e=r(0);e(e.S,"Math",{log2:function log2(t){return Math.log(t)/Math.LN2}})},function(t,n,r){var e=r(0);e(e.S,"Math",{sign:r(75)})},function(t,n,r){var e=r(0),i=r(76),o=Math.exp;e(e.S+e.F*r(3)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},function(t,n,r){var e=r(0),i=r(76),o=Math.exp;e(e.S,"Math",{tanh:function tanh(t){var n=i(t=+t),r=i(-t);return n==Infinity?1:r==Infinity?-1:(n-r)/(o(t)+o(-t))}})},function(t,n,r){var e=r(0);e(e.S,"Math",{trunc:function trunc(t){return(0>10),n%1024+56320))}return r.join("")}})},function(t,n,r){var e=r(0),u=r(15),c=r(6);e(e.S,"String",{raw:function raw(t){for(var n=u(t.raw),r=c(n.length),e=arguments.length,i=[],o=0;o]*>)/g,v=/\$([$&`']|\d\d?)/g;r(59)("replace",2,function(i,o,x,m){return[function replace(t,n){var r=i(this),e=t==Jt?Jt:t[o];return e!==Jt?e.call(t,r,n):x.call(String(r),t,n)},function(t,n){var r=m(x,t,this,n);if(r.done)return r.value;var e=w(t),i=String(this),o="function"==typeof n;o||(n=String(n));var u=e.global;if(u){var c=e.unicode;e.lastIndex=0}for(var a=[];;){var f=I(e,i);if( -null===f)break;if(a.push(f),!u)break;""===String(f[0])&&(e.lastIndex=M(i,E(e.lastIndex),c))}for(var s,l="",h=0,p=0;p>>0,f=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(e=l.call(f,r))&&!(c<(i=f[v])&&(u.push(r.slice(c,e.index)),1>>0;if(0===a)return[];if(0===i.length)return null===m(c,i)?[i]:[];for(var f=0,s=0,l=[];s>>0,o=r>>>0;return(n>>>0)+(e>>>0)+((i&o|(i|o)&~(i+o>>>0))>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{isubh:function isubh(t,n,r,e){var i=t>>>0,o=r>>>0;return(n>>>0)-(e>>>0)-((~i&o|~(i^o)&i-o>>>0)>>>31)|0}})},function(t,n,r){var e=r(0);e(e.S,"Math",{imulh:function imulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>16,c=e>>16,a=(u*o>>>0)+(i*o>>>16);return u*c+(a>>16)+((i*c>>>0)+(65535&a)>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(t,n,r){var e=r(0),i=Math.PI/180;e(e.S,"Math",{radians:function radians(t){return t*i}})},function(t,n,r){var e=r(0);e(e.S,"Math",{scale:r(128)})},function(t,n,r){var e=r(0);e(e.S,"Math",{umulh:function umulh(t,n){var r=+t,e=+n,i=65535&r,o=65535&e,u=r>>>16,c=e>>>16,a=(u*o>>>0)+(i*o>>>16);return u*c+(a>>>16)+((i*c>>>0)+(65535&a)>>>16)}})},function(t,n,r){var e=r(0);e(e.S,"Math",{signbit:function signbit(t){return(t=+t)!=t?t:0==t?1/t==Infinity:0 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-fill.js b/forward_engineering/node_modules/core-js/library/modules/_array-fill.js deleted file mode 100644 index 0753c36..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-fill.js +++ /dev/null @@ -1,15 +0,0 @@ -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -'use strict'; -var toObject = require('./_to-object'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-from-iterable.js b/forward_engineering/node_modules/core-js/library/modules/_array-from-iterable.js deleted file mode 100644 index 08be255..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-from-iterable.js +++ /dev/null @@ -1,7 +0,0 @@ -var forOf = require('./_for-of'); - -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-includes.js b/forward_engineering/node_modules/core-js/library/modules/_array-includes.js deleted file mode 100644 index 0ef3efe..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-includes.js +++ /dev/null @@ -1,23 +0,0 @@ -// false -> Array#indexOf -// true -> Array#includes -var toIObject = require('./_to-iobject'); -var toLength = require('./_to-length'); -var toAbsoluteIndex = require('./_to-absolute-index'); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-methods.js b/forward_engineering/node_modules/core-js/library/modules/_array-methods.js deleted file mode 100644 index ae7f447..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-methods.js +++ /dev/null @@ -1,44 +0,0 @@ -// 0 -> Array#forEach -// 1 -> Array#map -// 2 -> Array#filter -// 3 -> Array#some -// 4 -> Array#every -// 5 -> Array#find -// 6 -> Array#findIndex -var ctx = require('./_ctx'); -var IObject = require('./_iobject'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var asc = require('./_array-species-create'); -module.exports = function (TYPE, $create) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - var create = $create || asc; - return function ($this, callbackfn, that) { - var O = toObject($this); - var self = IObject(O); - var f = ctx(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var val, res; - for (;length > index; index++) if (NO_HOLES || index in self) { - val = self[index]; - res = f(val, index, O); - if (TYPE) { - if (IS_MAP) result[index] = res; // map - else if (res) switch (TYPE) { - case 3: return true; // some - case 5: return val; // find - case 6: return index; // findIndex - case 2: result.push(val); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-reduce.js b/forward_engineering/node_modules/core-js/library/modules/_array-reduce.js deleted file mode 100644 index 8596ac7..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-reduce.js +++ /dev/null @@ -1,28 +0,0 @@ -var aFunction = require('./_a-function'); -var toObject = require('./_to-object'); -var IObject = require('./_iobject'); -var toLength = require('./_to-length'); - -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-species-constructor.js b/forward_engineering/node_modules/core-js/library/modules/_array-species-constructor.js deleted file mode 100644 index 0771c23..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-species-constructor.js +++ /dev/null @@ -1,16 +0,0 @@ -var isObject = require('./_is-object'); -var isArray = require('./_is-array'); -var SPECIES = require('./_wks')('species'); - -module.exports = function (original) { - var C; - if (isArray(original)) { - C = original.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return C === undefined ? Array : C; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_array-species-create.js b/forward_engineering/node_modules/core-js/library/modules/_array-species-create.js deleted file mode 100644 index 36ed58b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_array-species-create.js +++ /dev/null @@ -1,6 +0,0 @@ -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = require('./_array-species-constructor'); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_bind.js b/forward_engineering/node_modules/core-js/library/modules/_bind.js deleted file mode 100644 index 3cf1e5a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_bind.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -var aFunction = require('./_a-function'); -var isObject = require('./_is-object'); -var invoke = require('./_invoke'); -var arraySlice = [].slice; -var factories = {}; - -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); -}; - -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_classof.js b/forward_engineering/node_modules/core-js/library/modules/_classof.js deleted file mode 100644 index d106d5b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_classof.js +++ /dev/null @@ -1,23 +0,0 @@ -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = require('./_cof'); -var TAG = require('./_wks')('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_cof.js b/forward_engineering/node_modules/core-js/library/modules/_cof.js deleted file mode 100644 index 332c0bc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_cof.js +++ /dev/null @@ -1,5 +0,0 @@ -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_collection-strong.js b/forward_engineering/node_modules/core-js/library/modules/_collection-strong.js deleted file mode 100644 index 68ce63f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_collection-strong.js +++ /dev/null @@ -1,144 +0,0 @@ -'use strict'; -var dP = require('./_object-dp').f; -var create = require('./_object-create'); -var redefineAll = require('./_redefine-all'); -var ctx = require('./_ctx'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var $iterDefine = require('./_iter-define'); -var step = require('./_iter-step'); -var setSpecies = require('./_set-species'); -var DESCRIPTORS = require('./_descriptors'); -var fastKey = require('./_meta').fastKey; -var validate = require('./_validate-collection'); -var SIZE = DESCRIPTORS ? '_s' : 'size'; - -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); - } -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_collection-to-json.js b/forward_engineering/node_modules/core-js/library/modules/_collection-to-json.js deleted file mode 100644 index a6ee002..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_collection-to-json.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = require('./_classof'); -var from = require('./_array-from-iterable'); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_collection-weak.js b/forward_engineering/node_modules/core-js/library/modules/_collection-weak.js deleted file mode 100644 index 04d3af5..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_collection-weak.js +++ /dev/null @@ -1,85 +0,0 @@ -'use strict'; -var redefineAll = require('./_redefine-all'); -var getWeak = require('./_meta').getWeak; -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var createArrayMethod = require('./_array-methods'); -var $has = require('./_has'); -var validate = require('./_validate-collection'); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); - } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_collection.js b/forward_engineering/node_modules/core-js/library/modules/_collection.js deleted file mode 100644 index 31a36b8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_collection.js +++ /dev/null @@ -1,59 +0,0 @@ -'use strict'; -var global = require('./_global'); -var $export = require('./_export'); -var meta = require('./_meta'); -var fails = require('./_fails'); -var hide = require('./_hide'); -var redefineAll = require('./_redefine-all'); -var forOf = require('./_for-of'); -var anInstance = require('./_an-instance'); -var isObject = require('./_is-object'); -var setToStringTag = require('./_set-to-string-tag'); -var dP = require('./_object-dp').f; -var each = require('./_array-methods')(0); -var DESCRIPTORS = require('./_descriptors'); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME, '_c'); - target._c = new Base(); - if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target); - }); - each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) { - var IS_ADDER = KEY == 'add' || KEY == 'set'; - if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) { - anInstance(this, C, KEY); - if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false; - var result = this._c[KEY](a === 0 ? 0 : a, b); - return IS_ADDER ? this : result; - }); - }); - IS_WEAK || dP(C.prototype, 'size', { - get: function () { - return this._c.size; - } - }); - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F, O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_core.js b/forward_engineering/node_modules/core-js/library/modules/_core.js deleted file mode 100644 index 6ab2de5..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_core.js +++ /dev/null @@ -1,2 +0,0 @@ -var core = module.exports = { version: '2.6.9' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef diff --git a/forward_engineering/node_modules/core-js/library/modules/_create-property.js b/forward_engineering/node_modules/core-js/library/modules/_create-property.js deleted file mode 100644 index fd0ea8c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_create-property.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -var $defineProperty = require('./_object-dp'); -var createDesc = require('./_property-desc'); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_ctx.js b/forward_engineering/node_modules/core-js/library/modules/_ctx.js deleted file mode 100644 index 0a100ff..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_ctx.js +++ /dev/null @@ -1,20 +0,0 @@ -// optional / simple context binding -var aFunction = require('./_a-function'); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_date-to-iso-string.js b/forward_engineering/node_modules/core-js/library/modules/_date-to-iso-string.js deleted file mode 100644 index 95a02e2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_date-to-iso-string.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var fails = require('./_fails'); -var getTime = Date.prototype.getTime; -var $toISOString = Date.prototype.toISOString; - -var lz = function (num) { - return num > 9 ? num : '0' + num; -}; - -// PhantomJS / old WebKit has a broken implementations -module.exports = (fails(function () { - return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - $toISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var d = this; - var y = d.getUTCFullYear(); - var m = d.getUTCMilliseconds(); - var s = y < 0 ? '-' : y > 9999 ? '+' : ''; - return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) + - '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) + - 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) + - ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z'; -} : $toISOString; diff --git a/forward_engineering/node_modules/core-js/library/modules/_date-to-primitive.js b/forward_engineering/node_modules/core-js/library/modules/_date-to-primitive.js deleted file mode 100644 index 57c3203..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_date-to-primitive.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var anObject = require('./_an-object'); -var toPrimitive = require('./_to-primitive'); -var NUMBER = 'number'; - -module.exports = function (hint) { - if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint'); - return toPrimitive(anObject(this), hint != NUMBER); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_defined.js b/forward_engineering/node_modules/core-js/library/modules/_defined.js deleted file mode 100644 index 66c7ed3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_defined.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_descriptors.js b/forward_engineering/node_modules/core-js/library/modules/_descriptors.js deleted file mode 100644 index 0469740..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_descriptors.js +++ /dev/null @@ -1,4 +0,0 @@ -// Thank's IE8 for his funny defineProperty -module.exports = !require('./_fails')(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/_dom-create.js b/forward_engineering/node_modules/core-js/library/modules/_dom-create.js deleted file mode 100644 index 39ca256..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_dom-create.js +++ /dev/null @@ -1,7 +0,0 @@ -var isObject = require('./_is-object'); -var document = require('./_global').document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_entry-virtual.js b/forward_engineering/node_modules/core-js/library/modules/_entry-virtual.js deleted file mode 100644 index 7a73439..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_entry-virtual.js +++ /dev/null @@ -1,5 +0,0 @@ -var core = require('./_core'); -module.exports = function (CONSTRUCTOR) { - var C = core[CONSTRUCTOR]; - return (C.virtual || C.prototype); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_enum-bug-keys.js b/forward_engineering/node_modules/core-js/library/modules/_enum-bug-keys.js deleted file mode 100644 index d9ad855..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_enum-bug-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); diff --git a/forward_engineering/node_modules/core-js/library/modules/_enum-keys.js b/forward_engineering/node_modules/core-js/library/modules/_enum-keys.js deleted file mode 100644 index 3e7053d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_enum-keys.js +++ /dev/null @@ -1,15 +0,0 @@ -// all enumerable object keys, includes symbols -var getKeys = require('./_object-keys'); -var gOPS = require('./_object-gops'); -var pIE = require('./_object-pie'); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_export.js b/forward_engineering/node_modules/core-js/library/modules/_export.js deleted file mode 100644 index 02bddc0..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_export.js +++ /dev/null @@ -1,62 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var ctx = require('./_ctx'); -var hide = require('./_hide'); -var has = require('./_has'); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var IS_WRAP = type & $export.W; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE]; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; - var key, own, out; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - if (own && has(exports, key)) continue; - // export native or passed - out = own ? target[key] : source[key]; - // prevent global pollution for namespaces - exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] - // bind timers to global for call from export context - : IS_BIND && own ? ctx(out, global) - // wrap global constructors for prevent change them in library - : IS_WRAP && target[key] == out ? (function (C) { - var F = function (a, b, c) { - if (this instanceof C) { - switch (arguments.length) { - case 0: return new C(); - case 1: return new C(a); - case 2: return new C(a, b); - } return new C(a, b, c); - } return C.apply(this, arguments); - }; - F[PROTOTYPE] = C[PROTOTYPE]; - return F; - // make static versions for prototype methods - })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% - if (IS_PROTO) { - (exports.virtual || (exports.virtual = {}))[key] = out; - // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% - if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); - } - } -}; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; diff --git a/forward_engineering/node_modules/core-js/library/modules/_fails-is-regexp.js b/forward_engineering/node_modules/core-js/library/modules/_fails-is-regexp.js deleted file mode 100644 index 8eec2e4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_fails-is-regexp.js +++ /dev/null @@ -1,12 +0,0 @@ -var MATCH = require('./_wks')('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_fails.js b/forward_engineering/node_modules/core-js/library/modules/_fails.js deleted file mode 100644 index 3b4cdf6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_fails.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_fix-re-wks.js b/forward_engineering/node_modules/core-js/library/modules/_fix-re-wks.js deleted file mode 100644 index 64d00fe..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_fix-re-wks.js +++ /dev/null @@ -1,96 +0,0 @@ -'use strict'; -require('./es6.regexp.exec'); -var redefine = require('./_redefine'); -var hide = require('./_hide'); -var fails = require('./_fails'); -var defined = require('./_defined'); -var wks = require('./_wks'); -var regexpExec = require('./_regexp-exec'); - -var SPECIES = wks('species'); - -var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { - // #replace needs built-in support for named groups. - // #match works fine because it just return the exec results, even if it has - // a "grops" property. - var re = /./; - re.exec = function () { - var result = []; - result.groups = { a: '7' }; - return result; - }; - return ''.replace(re, '$') !== '7'; -}); - -var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { - // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec - var re = /(?:)/; - var originalExec = re.exec; - re.exec = function () { return originalExec.apply(this, arguments); }; - var result = 'ab'.split(re); - return result.length === 2 && result[0] === 'a' && result[1] === 'b'; -})(); - -module.exports = function (KEY, length, exec) { - var SYMBOL = wks(KEY); - - var DELEGATES_TO_SYMBOL = !fails(function () { - // String methods call symbol-named RegEp methods - var O = {}; - O[SYMBOL] = function () { return 7; }; - return ''[KEY](O) != 7; - }); - - var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { - // Symbol-named RegExp methods call .exec - var execCalled = false; - var re = /a/; - re.exec = function () { execCalled = true; return null; }; - if (KEY === 'split') { - // RegExp[@@split] doesn't call the regex's exec method, but first creates - // a new one. We need to return the patched regex when creating the new one. - re.constructor = {}; - re.constructor[SPECIES] = function () { return re; }; - } - re[SYMBOL](''); - return !execCalled; - }) : undefined; - - if ( - !DELEGATES_TO_SYMBOL || - !DELEGATES_TO_EXEC || - (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || - (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) - ) { - var nativeRegExpMethod = /./[SYMBOL]; - var fns = exec( - defined, - SYMBOL, - ''[KEY], - function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { - if (regexp.exec === regexpExec) { - if (DELEGATES_TO_SYMBOL && !forceStringMethod) { - // The native String method already delegates to @@method (this - // polyfilled function), leasing to infinite recursion. - // We avoid it by directly calling the native @@method method. - return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; - } - return { done: true, value: nativeMethod.call(str, regexp, arg2) }; - } - return { done: false }; - } - ); - var strfn = fns[0]; - var rxfn = fns[1]; - - redefine(String.prototype, KEY, strfn); - hide(RegExp.prototype, SYMBOL, length == 2 - // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) - // 21.2.5.11 RegExp.prototype[@@split](string, limit) - ? function (string, arg) { return rxfn.call(string, this, arg); } - // 21.2.5.6 RegExp.prototype[@@match](string) - // 21.2.5.9 RegExp.prototype[@@search](string) - : function (string) { return rxfn.call(string, this); } - ); - } -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_flags.js b/forward_engineering/node_modules/core-js/library/modules/_flags.js deleted file mode 100644 index b6fc324..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_flags.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -// 21.2.5.3 get RegExp.prototype.flags -var anObject = require('./_an-object'); -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_flatten-into-array.js b/forward_engineering/node_modules/core-js/library/modules/_flatten-into-array.js deleted file mode 100644 index 1838517..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_flatten-into-array.js +++ /dev/null @@ -1,39 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = require('./_is-array'); -var isObject = require('./_is-object'); -var toLength = require('./_to-length'); -var ctx = require('./_ctx'); -var IS_CONCAT_SPREADABLE = require('./_wks')('isConcatSpreadable'); - -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} - -module.exports = flattenIntoArray; diff --git a/forward_engineering/node_modules/core-js/library/modules/_for-of.js b/forward_engineering/node_modules/core-js/library/modules/_for-of.js deleted file mode 100644 index 9ed2281..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_for-of.js +++ /dev/null @@ -1,25 +0,0 @@ -var ctx = require('./_ctx'); -var call = require('./_iter-call'); -var isArrayIter = require('./_is-array-iter'); -var anObject = require('./_an-object'); -var toLength = require('./_to-length'); -var getIterFn = require('./core.get-iterator-method'); -var BREAK = {}; -var RETURN = {}; -var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { - var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); - var f = ctx(fn, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); - // fast case for arrays with default iterator - if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) return result; - } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) return result; - } -}; -exports.BREAK = BREAK; -exports.RETURN = RETURN; diff --git a/forward_engineering/node_modules/core-js/library/modules/_function-to-string.js b/forward_engineering/node_modules/core-js/library/modules/_function-to-string.js deleted file mode 100644 index d7f5419..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_function-to-string.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_shared')('native-function-to-string', Function.toString); diff --git a/forward_engineering/node_modules/core-js/library/modules/_global.js b/forward_engineering/node_modules/core-js/library/modules/_global.js deleted file mode 100644 index bf85b44..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_global.js +++ /dev/null @@ -1,6 +0,0 @@ -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef diff --git a/forward_engineering/node_modules/core-js/library/modules/_has.js b/forward_engineering/node_modules/core-js/library/modules/_has.js deleted file mode 100644 index 2a37d8b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_has.js +++ /dev/null @@ -1,4 +0,0 @@ -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_hide.js b/forward_engineering/node_modules/core-js/library/modules/_hide.js deleted file mode 100644 index cec258a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_hide.js +++ /dev/null @@ -1,8 +0,0 @@ -var dP = require('./_object-dp'); -var createDesc = require('./_property-desc'); -module.exports = require('./_descriptors') ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_html.js b/forward_engineering/node_modules/core-js/library/modules/_html.js deleted file mode 100644 index 7daff14..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_html.js +++ /dev/null @@ -1,2 +0,0 @@ -var document = require('./_global').document; -module.exports = document && document.documentElement; diff --git a/forward_engineering/node_modules/core-js/library/modules/_ie8-dom-define.js b/forward_engineering/node_modules/core-js/library/modules/_ie8-dom-define.js deleted file mode 100644 index a3805cb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_ie8-dom-define.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = !require('./_descriptors') && !require('./_fails')(function () { - return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/_inherit-if-required.js b/forward_engineering/node_modules/core-js/library/modules/_inherit-if-required.js deleted file mode 100644 index b95fcd9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_inherit-if-required.js +++ /dev/null @@ -1,9 +0,0 @@ -var isObject = require('./_is-object'); -var setPrototypeOf = require('./_set-proto').set; -module.exports = function (that, target, C) { - var S = target.constructor; - var P; - if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { - setPrototypeOf(that, P); - } return that; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_invoke.js b/forward_engineering/node_modules/core-js/library/modules/_invoke.js deleted file mode 100644 index 6cccebd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_invoke.js +++ /dev/null @@ -1,16 +0,0 @@ -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iobject.js b/forward_engineering/node_modules/core-js/library/modules/_iobject.js deleted file mode 100644 index 2b57c8a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iobject.js +++ /dev/null @@ -1,6 +0,0 @@ -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = require('./_cof'); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_is-array-iter.js b/forward_engineering/node_modules/core-js/library/modules/_is-array-iter.js deleted file mode 100644 index 6f67d90..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_is-array-iter.js +++ /dev/null @@ -1,8 +0,0 @@ -// check on default Array iterator -var Iterators = require('./_iterators'); -var ITERATOR = require('./_wks')('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_is-array.js b/forward_engineering/node_modules/core-js/library/modules/_is-array.js deleted file mode 100644 index 0581dc2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_is-array.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.2 IsArray(argument) -var cof = require('./_cof'); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_is-integer.js b/forward_engineering/node_modules/core-js/library/modules/_is-integer.js deleted file mode 100644 index 0074ae9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_is-integer.js +++ /dev/null @@ -1,6 +0,0 @@ -// 20.1.2.3 Number.isInteger(number) -var isObject = require('./_is-object'); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_is-object.js b/forward_engineering/node_modules/core-js/library/modules/_is-object.js deleted file mode 100644 index dda6e04..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_is-object.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_is-regexp.js b/forward_engineering/node_modules/core-js/library/modules/_is-regexp.js deleted file mode 100644 index 598d159..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_is-regexp.js +++ /dev/null @@ -1,8 +0,0 @@ -// 7.2.8 IsRegExp(argument) -var isObject = require('./_is-object'); -var cof = require('./_cof'); -var MATCH = require('./_wks')('match'); -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iter-call.js b/forward_engineering/node_modules/core-js/library/modules/_iter-call.js deleted file mode 100644 index a7026e3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iter-call.js +++ /dev/null @@ -1,12 +0,0 @@ -// call something on iterator step with safe closing on error -var anObject = require('./_an-object'); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; - } -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iter-create.js b/forward_engineering/node_modules/core-js/library/modules/_iter-create.js deleted file mode 100644 index 04708c8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iter-create.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var create = require('./_object-create'); -var descriptor = require('./_property-desc'); -var setToStringTag = require('./_set-to-string-tag'); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iter-define.js b/forward_engineering/node_modules/core-js/library/modules/_iter-define.js deleted file mode 100644 index 578dfb7..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iter-define.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; -var LIBRARY = require('./_library'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var hide = require('./_hide'); -var Iterators = require('./_iterators'); -var $iterCreate = require('./_iter-create'); -var setToStringTag = require('./_set-to-string-tag'); -var getPrototypeOf = require('./_object-gpo'); -var ITERATOR = require('./_wks')('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iter-detect.js b/forward_engineering/node_modules/core-js/library/modules/_iter-detect.js deleted file mode 100644 index 5cb3497..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iter-detect.js +++ /dev/null @@ -1,22 +0,0 @@ -var ITERATOR = require('./_wks')('iterator'); -var SAFE_CLOSING = false; - -try { - var riter = [7][ITERATOR](); - riter['return'] = function () { SAFE_CLOSING = true; }; - // eslint-disable-next-line no-throw-literal - Array.from(riter, function () { throw 2; }); -} catch (e) { /* empty */ } - -module.exports = function (exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function () { return { done: safe = true }; }; - arr[ITERATOR] = function () { return iter; }; - exec(arr); - } catch (e) { /* empty */ } - return safe; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iter-step.js b/forward_engineering/node_modules/core-js/library/modules/_iter-step.js deleted file mode 100644 index b0691c8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iter-step.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_iterators.js b/forward_engineering/node_modules/core-js/library/modules/_iterators.js deleted file mode 100644 index f053ebf..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_iterators.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_keyof.js b/forward_engineering/node_modules/core-js/library/modules/_keyof.js deleted file mode 100644 index 0786096..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_keyof.js +++ /dev/null @@ -1,10 +0,0 @@ -var getKeys = require('./_object-keys'); -var toIObject = require('./_to-iobject'); -module.exports = function (object, el) { - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var index = 0; - var key; - while (length > index) if (O[key = keys[index++]] === el) return key; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_library.js b/forward_engineering/node_modules/core-js/library/modules/_library.js deleted file mode 100644 index ec01c2c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_library.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = true; diff --git a/forward_engineering/node_modules/core-js/library/modules/_math-expm1.js b/forward_engineering/node_modules/core-js/library/modules/_math-expm1.js deleted file mode 100644 index 75c6850..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_math-expm1.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; diff --git a/forward_engineering/node_modules/core-js/library/modules/_math-fround.js b/forward_engineering/node_modules/core-js/library/modules/_math-fround.js deleted file mode 100644 index c85eb4b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_math-fround.js +++ /dev/null @@ -1,23 +0,0 @@ -// 20.2.2.16 Math.fround(x) -var sign = require('./_math-sign'); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_math-log1p.js b/forward_engineering/node_modules/core-js/library/modules/_math-log1p.js deleted file mode 100644 index 16d5f49..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_math-log1p.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_math-scale.js b/forward_engineering/node_modules/core-js/library/modules/_math-scale.js deleted file mode 100644 index ba3cdb2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_math-scale.js +++ /dev/null @@ -1,18 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_math-sign.js b/forward_engineering/node_modules/core-js/library/modules/_math-sign.js deleted file mode 100644 index 7a46b9d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_math-sign.js +++ /dev/null @@ -1,5 +0,0 @@ -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_meta.js b/forward_engineering/node_modules/core-js/library/modules/_meta.js deleted file mode 100644 index 2d4b325..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_meta.js +++ /dev/null @@ -1,53 +0,0 @@ -var META = require('./_uid')('meta'); -var isObject = require('./_is-object'); -var has = require('./_has'); -var setDesc = require('./_object-dp').f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !require('./_fails')(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_metadata.js b/forward_engineering/node_modules/core-js/library/modules/_metadata.js deleted file mode 100644 index 759cfc4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_metadata.js +++ /dev/null @@ -1,51 +0,0 @@ -var Map = require('./es6.map'); -var $export = require('./_export'); -var shared = require('./_shared')('metadata'); -var store = shared.store || (shared.store = new (require('./es6.weak-map'))()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return undefined; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return undefined; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; -var toMetaKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; -var exp = function (O) { - $export($export.S, 'Reflect', O); -}; - -module.exports = { - store: store, - map: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - key: toMetaKey, - exp: exp -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_microtask.js b/forward_engineering/node_modules/core-js/library/modules/_microtask.js deleted file mode 100644 index b321c64..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_microtask.js +++ /dev/null @@ -1,69 +0,0 @@ -var global = require('./_global'); -var macrotask = require('./_task').set; -var Observer = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var isNode = require('./_cof')(process) == 'process'; - -module.exports = function () { - var head, last, notify; - - var flush = function () { - var parent, fn; - if (isNode && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (e) { - if (head) notify(); - else last = undefined; - throw e; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (isNode) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 - } else if (Observer && !(global.navigator && global.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(''); - new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - var promise = Promise.resolve(undefined); - notify = function () { - promise.then(flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } - - return function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_native-weak-map.js b/forward_engineering/node_modules/core-js/library/modules/_native-weak-map.js deleted file mode 100644 index ebaf445..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_native-weak-map.js +++ /dev/null @@ -1,4 +0,0 @@ -var nativeFunctionToString = require('./_function-to-string'); -var WeakMap = require('./_global').WeakMap; - -module.exports = typeof WeakMap === 'function' && /native code/.test(nativeFunctionToString.call(WeakMap)); diff --git a/forward_engineering/node_modules/core-js/library/modules/_new-promise-capability.js b/forward_engineering/node_modules/core-js/library/modules/_new-promise-capability.js deleted file mode 100644 index 82b74a3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_new-promise-capability.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -// 25.4.1.5 NewPromiseCapability(C) -var aFunction = require('./_a-function'); - -function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -} - -module.exports.f = function (C) { - return new PromiseCapability(C); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-assign.js b/forward_engineering/node_modules/core-js/library/modules/_object-assign.js deleted file mode 100644 index d739c43..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-assign.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; -// 19.1.2.1 Object.assign(target, source, ...) -var DESCRIPTORS = require('./_descriptors'); -var getKeys = require('./_object-keys'); -var gOPS = require('./_object-gops'); -var pIE = require('./_object-pie'); -var toObject = require('./_to-object'); -var IObject = require('./_iobject'); -var $assign = Object.assign; - -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || require('./_fails')(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } return T; -} : $assign; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-create.js b/forward_engineering/node_modules/core-js/library/modules/_object-create.js deleted file mode 100644 index a76808e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-create.js +++ /dev/null @@ -1,41 +0,0 @@ -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = require('./_an-object'); -var dPs = require('./_object-dps'); -var enumBugKeys = require('./_enum-bug-keys'); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = require('./_dom-create')('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - require('./_html').appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-define.js b/forward_engineering/node_modules/core-js/library/modules/_object-define.js deleted file mode 100644 index 4d131f3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-define.js +++ /dev/null @@ -1,13 +0,0 @@ -var dP = require('./_object-dp'); -var gOPD = require('./_object-gopd'); -var ownKeys = require('./_own-keys'); -var toIObject = require('./_to-iobject'); - -module.exports = function define(target, mixin) { - var keys = ownKeys(toIObject(mixin)); - var length = keys.length; - var i = 0; - var key; - while (length > i) dP.f(target, key = keys[i++], gOPD.f(mixin, key)); - return target; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-dp.js b/forward_engineering/node_modules/core-js/library/modules/_object-dp.js deleted file mode 100644 index 0340a83..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-dp.js +++ /dev/null @@ -1,16 +0,0 @@ -var anObject = require('./_an-object'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var toPrimitive = require('./_to-primitive'); -var dP = Object.defineProperty; - -exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-dps.js b/forward_engineering/node_modules/core-js/library/modules/_object-dps.js deleted file mode 100644 index 173c338..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-dps.js +++ /dev/null @@ -1,13 +0,0 @@ -var dP = require('./_object-dp'); -var anObject = require('./_an-object'); -var getKeys = require('./_object-keys'); - -module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-forced-pam.js b/forward_engineering/node_modules/core-js/library/modules/_object-forced-pam.js deleted file mode 100644 index 71ede92..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-forced-pam.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -// Forced replacement prototype accessors methods -module.exports = require('./_library') || !require('./_fails')(function () { - var K = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, K, function () { /* empty */ }); - delete require('./_global')[K]; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-gopd.js b/forward_engineering/node_modules/core-js/library/modules/_object-gopd.js deleted file mode 100644 index 555dd31..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-gopd.js +++ /dev/null @@ -1,16 +0,0 @@ -var pIE = require('./_object-pie'); -var createDesc = require('./_property-desc'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var has = require('./_has'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-gopn-ext.js b/forward_engineering/node_modules/core-js/library/modules/_object-gopn-ext.js deleted file mode 100644 index 4abb6ae..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-gopn-ext.js +++ /dev/null @@ -1,19 +0,0 @@ -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = require('./_to-iobject'); -var gOPN = require('./_object-gopn').f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-gopn.js b/forward_engineering/node_modules/core-js/library/modules/_object-gopn.js deleted file mode 100644 index da82333..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-gopn.js +++ /dev/null @@ -1,7 +0,0 @@ -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = require('./_object-keys-internal'); -var hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-gops.js b/forward_engineering/node_modules/core-js/library/modules/_object-gops.js deleted file mode 100644 index bc06729..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-gops.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = Object.getOwnPropertySymbols; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-gpo.js b/forward_engineering/node_modules/core-js/library/modules/_object-gpo.js deleted file mode 100644 index 27f2a94..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-gpo.js +++ /dev/null @@ -1,13 +0,0 @@ -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = require('./_has'); -var toObject = require('./_to-object'); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); -var ObjectProto = Object.prototype; - -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-keys-internal.js b/forward_engineering/node_modules/core-js/library/modules/_object-keys-internal.js deleted file mode 100644 index 71abdd1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-keys-internal.js +++ /dev/null @@ -1,17 +0,0 @@ -var has = require('./_has'); -var toIObject = require('./_to-iobject'); -var arrayIndexOf = require('./_array-includes')(false); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-keys.js b/forward_engineering/node_modules/core-js/library/modules/_object-keys.js deleted file mode 100644 index 62f73f9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-keys.js +++ /dev/null @@ -1,7 +0,0 @@ -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = require('./_object-keys-internal'); -var enumBugKeys = require('./_enum-bug-keys'); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-pie.js b/forward_engineering/node_modules/core-js/library/modules/_object-pie.js deleted file mode 100644 index 4cc7107..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-pie.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = {}.propertyIsEnumerable; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-sap.js b/forward_engineering/node_modules/core-js/library/modules/_object-sap.js deleted file mode 100644 index 643535e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-sap.js +++ /dev/null @@ -1,10 +0,0 @@ -// most Object methods by ES6 should accept primitives -var $export = require('./_export'); -var core = require('./_core'); -var fails = require('./_fails'); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_object-to-array.js b/forward_engineering/node_modules/core-js/library/modules/_object-to-array.js deleted file mode 100644 index 288b5fc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_object-to-array.js +++ /dev/null @@ -1,21 +0,0 @@ -var DESCRIPTORS = require('./_descriptors'); -var getKeys = require('./_object-keys'); -var toIObject = require('./_to-iobject'); -var isEnum = require('./_object-pie').f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || isEnum.call(O, key)) { - result.push(isEntries ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_own-keys.js b/forward_engineering/node_modules/core-js/library/modules/_own-keys.js deleted file mode 100644 index 84faece..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_own-keys.js +++ /dev/null @@ -1,10 +0,0 @@ -// all object keys, includes non-enumerable and symbols -var gOPN = require('./_object-gopn'); -var gOPS = require('./_object-gops'); -var anObject = require('./_an-object'); -var Reflect = require('./_global').Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_parse-float.js b/forward_engineering/node_modules/core-js/library/modules/_parse-float.js deleted file mode 100644 index acfb350..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_parse-float.js +++ /dev/null @@ -1,8 +0,0 @@ -var $parseFloat = require('./_global').parseFloat; -var $trim = require('./_string-trim').trim; - -module.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; diff --git a/forward_engineering/node_modules/core-js/library/modules/_parse-int.js b/forward_engineering/node_modules/core-js/library/modules/_parse-int.js deleted file mode 100644 index ddd7172..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_parse-int.js +++ /dev/null @@ -1,9 +0,0 @@ -var $parseInt = require('./_global').parseInt; -var $trim = require('./_string-trim').trim; -var ws = require('./_string-ws'); -var hex = /^[-+]?0[xX]/; - -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; diff --git a/forward_engineering/node_modules/core-js/library/modules/_partial.js b/forward_engineering/node_modules/core-js/library/modules/_partial.js deleted file mode 100644 index ca3f35b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_partial.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -var path = require('./_path'); -var invoke = require('./_invoke'); -var aFunction = require('./_a-function'); -module.exports = function (/* ...pargs */) { - var fn = aFunction(this); - var length = arguments.length; - var pargs = new Array(length); - var i = 0; - var _ = path._; - var holder = false; - while (length > i) if ((pargs[i] = arguments[i++]) === _) holder = true; - return function (/* ...args */) { - var that = this; - var aLen = arguments.length; - var j = 0; - var k = 0; - var args; - if (!holder && !aLen) return invoke(fn, pargs, that); - args = pargs.slice(); - if (holder) for (;length > j; j++) if (args[j] === _) args[j] = arguments[k++]; - while (aLen > k) args.push(arguments[k++]); - return invoke(fn, args, that); - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_path.js b/forward_engineering/node_modules/core-js/library/modules/_path.js deleted file mode 100644 index 2796ebc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_path.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_core'); diff --git a/forward_engineering/node_modules/core-js/library/modules/_perform.js b/forward_engineering/node_modules/core-js/library/modules/_perform.js deleted file mode 100644 index bfc7b29..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_perform.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_promise-resolve.js b/forward_engineering/node_modules/core-js/library/modules/_promise-resolve.js deleted file mode 100644 index c3cac76..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_promise-resolve.js +++ /dev/null @@ -1,12 +0,0 @@ -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var newPromiseCapability = require('./_new-promise-capability'); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_property-desc.js b/forward_engineering/node_modules/core-js/library/modules/_property-desc.js deleted file mode 100644 index 0905934..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_property-desc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_redefine-all.js b/forward_engineering/node_modules/core-js/library/modules/_redefine-all.js deleted file mode 100644 index bf8c0ea..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_redefine-all.js +++ /dev/null @@ -1,7 +0,0 @@ -var hide = require('./_hide'); -module.exports = function (target, src, safe) { - for (var key in src) { - if (safe && target[key]) target[key] = src[key]; - else hide(target, key, src[key]); - } return target; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_redefine.js b/forward_engineering/node_modules/core-js/library/modules/_redefine.js deleted file mode 100644 index fde6108..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_redefine.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_hide'); diff --git a/forward_engineering/node_modules/core-js/library/modules/_regexp-exec-abstract.js b/forward_engineering/node_modules/core-js/library/modules/_regexp-exec-abstract.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_regexp-exec-abstract.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/library/modules/_regexp-exec.js b/forward_engineering/node_modules/core-js/library/modules/_regexp-exec.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_regexp-exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/library/modules/_replacer.js b/forward_engineering/node_modules/core-js/library/modules/_replacer.js deleted file mode 100644 index c37703d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_replacer.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function (regExp, replace) { - var replacer = replace === Object(replace) ? function (part) { - return replace[part]; - } : replace; - return function (it) { - return String(it).replace(regExp, replacer); - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_same-value.js b/forward_engineering/node_modules/core-js/library/modules/_same-value.js deleted file mode 100644 index c6d045e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_same-value.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.9 SameValue(x, y) -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_set-collection-from.js b/forward_engineering/node_modules/core-js/library/modules/_set-collection-from.js deleted file mode 100644 index d5001f9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_set-collection-from.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var ctx = require('./_ctx'); -var forOf = require('./_for-of'); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { - var mapFn = arguments[1]; - var mapping, A, n, cb; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - cb = ctx(mapFn, arguments[2], 2); - forOf(source, false, function (nextItem) { - A.push(cb(nextItem, n++)); - }); - } else { - forOf(source, false, A.push, A); - } - return new this(A); - } }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_set-collection-of.js b/forward_engineering/node_modules/core-js/library/modules/_set-collection-of.js deleted file mode 100644 index f559af3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_set-collection-of.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = require('./_export'); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { of: function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); - } }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_set-proto.js b/forward_engineering/node_modules/core-js/library/modules/_set-proto.js deleted file mode 100644 index c199062..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_set-proto.js +++ /dev/null @@ -1,25 +0,0 @@ -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = require('./_is-object'); -var anObject = require('./_an-object'); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_set-species.js b/forward_engineering/node_modules/core-js/library/modules/_set-species.js deleted file mode 100644 index 1f25fde..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_set-species.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var global = require('./_global'); -var core = require('./_core'); -var dP = require('./_object-dp'); -var DESCRIPTORS = require('./_descriptors'); -var SPECIES = require('./_wks')('species'); - -module.exports = function (KEY) { - var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_set-to-string-tag.js b/forward_engineering/node_modules/core-js/library/modules/_set-to-string-tag.js deleted file mode 100644 index 5bd6414..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_set-to-string-tag.js +++ /dev/null @@ -1,7 +0,0 @@ -var def = require('./_object-dp').f; -var has = require('./_has'); -var TAG = require('./_wks')('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_shared-key.js b/forward_engineering/node_modules/core-js/library/modules/_shared-key.js deleted file mode 100644 index d47fe7a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_shared-key.js +++ /dev/null @@ -1,5 +0,0 @@ -var shared = require('./_shared')('keys'); -var uid = require('./_uid'); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_shared.js b/forward_engineering/node_modules/core-js/library/modules/_shared.js deleted file mode 100644 index 3adec72..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_shared.js +++ /dev/null @@ -1,12 +0,0 @@ -var core = require('./_core'); -var global = require('./_global'); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: require('./_library') ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/_species-constructor.js b/forward_engineering/node_modules/core-js/library/modules/_species-constructor.js deleted file mode 100644 index 0cb4ffb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_species-constructor.js +++ /dev/null @@ -1,9 +0,0 @@ -// 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = require('./_an-object'); -var aFunction = require('./_a-function'); -var SPECIES = require('./_wks')('species'); -module.exports = function (O, D) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_strict-method.js b/forward_engineering/node_modules/core-js/library/modules/_strict-method.js deleted file mode 100644 index e68f41b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_strict-method.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var fails = require('./_fails'); - -module.exports = function (method, arg) { - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call - arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); - }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-at.js b/forward_engineering/node_modules/core-js/library/modules/_string-at.js deleted file mode 100644 index 88d66bd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-at.js +++ /dev/null @@ -1,17 +0,0 @@ -var toInteger = require('./_to-integer'); -var defined = require('./_defined'); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-context.js b/forward_engineering/node_modules/core-js/library/modules/_string-context.js deleted file mode 100644 index becf3fb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-context.js +++ /dev/null @@ -1,8 +0,0 @@ -// helper for String#{startsWith, endsWith, includes} -var isRegExp = require('./_is-regexp'); -var defined = require('./_defined'); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-html.js b/forward_engineering/node_modules/core-js/library/modules/_string-html.js deleted file mode 100644 index 1dcc95b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-html.js +++ /dev/null @@ -1,19 +0,0 @@ -var $export = require('./_export'); -var fails = require('./_fails'); -var defined = require('./_defined'); -var quot = /"/g; -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -var createHTML = function (string, tag, attribute, value) { - var S = String(defined(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; -module.exports = function (NAME, exec) { - var O = {}; - O[NAME] = exec(createHTML); - $export($export.P + $export.F * fails(function () { - var test = ''[NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }), 'String', O); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-pad.js b/forward_engineering/node_modules/core-js/library/modules/_string-pad.js deleted file mode 100644 index ceb6077..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-pad.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = require('./_to-length'); -var repeat = require('./_string-repeat'); -var defined = require('./_defined'); - -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-repeat.js b/forward_engineering/node_modules/core-js/library/modules/_string-repeat.js deleted file mode 100644 index a69b962..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-repeat.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var toInteger = require('./_to-integer'); -var defined = require('./_defined'); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-trim.js b/forward_engineering/node_modules/core-js/library/modules/_string-trim.js deleted file mode 100644 index 6b54a81..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-trim.js +++ /dev/null @@ -1,30 +0,0 @@ -var $export = require('./_export'); -var defined = require('./_defined'); -var fails = require('./_fails'); -var spaces = require('./_string-ws'); -var space = '[' + spaces + ']'; -var non = '\u200b\u0085'; -var ltrim = RegExp('^' + space + space + '*'); -var rtrim = RegExp(space + space + '*$'); - -var exporter = function (KEY, exec, ALIAS) { - var exp = {}; - var FORCE = fails(function () { - return !!spaces[KEY]() || non[KEY]() != non; - }); - var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; - if (ALIAS) exp[ALIAS] = fn; - $export($export.P + $export.F * FORCE, 'String', exp); -}; - -// 1 -> String#trimLeft -// 2 -> String#trimRight -// 3 -> String#trim -var trim = exporter.trim = function (string, TYPE) { - string = String(defined(string)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; -}; - -module.exports = exporter; diff --git a/forward_engineering/node_modules/core-js/library/modules/_string-ws.js b/forward_engineering/node_modules/core-js/library/modules/_string-ws.js deleted file mode 100644 index 2c68cf9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_string-ws.js +++ /dev/null @@ -1,2 +0,0 @@ -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; diff --git a/forward_engineering/node_modules/core-js/library/modules/_task.js b/forward_engineering/node_modules/core-js/library/modules/_task.js deleted file mode 100644 index 8777a6e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_task.js +++ /dev/null @@ -1,84 +0,0 @@ -var ctx = require('./_ctx'); -var invoke = require('./_invoke'); -var html = require('./_html'); -var cel = require('./_dom-create'); -var global = require('./_global'); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); -}; -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!setTask || !clearTask) { - setTask = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - invoke(typeof fn == 'function' ? fn : Function(fn), args); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (require('./_cof')(process) == 'process') { - defer = function (id) { - process.nextTick(ctx(run, id, 1)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(ctx(run, id, 1)); - }; - // Browsers with MessageChannel, includes WebWorkers - } else if (MessageChannel) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { - defer = function (id) { - global.postMessage(id + '', '*'); - }; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in cel('script')) { - defer = function (id) { - html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run.call(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(ctx(run, id, 1), 0); - }; - } -} -module.exports = { - set: setTask, - clear: clearTask -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-absolute-index.js b/forward_engineering/node_modules/core-js/library/modules/_to-absolute-index.js deleted file mode 100644 index dfee02e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-absolute-index.js +++ /dev/null @@ -1,7 +0,0 @@ -var toInteger = require('./_to-integer'); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-index.js b/forward_engineering/node_modules/core-js/library/modules/_to-index.js deleted file mode 100644 index 8f51c32..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-index.js +++ /dev/null @@ -1,10 +0,0 @@ -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-integer.js b/forward_engineering/node_modules/core-js/library/modules/_to-integer.js deleted file mode 100644 index 3d50f97..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-integer.js +++ /dev/null @@ -1,6 +0,0 @@ -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-iobject.js b/forward_engineering/node_modules/core-js/library/modules/_to-iobject.js deleted file mode 100644 index 7614503..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-iobject.js +++ /dev/null @@ -1,6 +0,0 @@ -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = require('./_iobject'); -var defined = require('./_defined'); -module.exports = function (it) { - return IObject(defined(it)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-length.js b/forward_engineering/node_modules/core-js/library/modules/_to-length.js deleted file mode 100644 index a9db501..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-length.js +++ /dev/null @@ -1,6 +0,0 @@ -// 7.1.15 ToLength -var toInteger = require('./_to-integer'); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-object.js b/forward_engineering/node_modules/core-js/library/modules/_to-object.js deleted file mode 100644 index 0efea4c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-object.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.1.13 ToObject(argument) -var defined = require('./_defined'); -module.exports = function (it) { - return Object(defined(it)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_to-primitive.js b/forward_engineering/node_modules/core-js/library/modules/_to-primitive.js deleted file mode 100644 index de3dd6b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_to-primitive.js +++ /dev/null @@ -1,12 +0,0 @@ -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = require('./_is-object'); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_typed-array.js b/forward_engineering/node_modules/core-js/library/modules/_typed-array.js deleted file mode 100644 index 30d9c0b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_typed-array.js +++ /dev/null @@ -1,480 +0,0 @@ -'use strict'; -if (require('./_descriptors')) { - var LIBRARY = require('./_library'); - var global = require('./_global'); - var fails = require('./_fails'); - var $export = require('./_export'); - var $typed = require('./_typed'); - var $buffer = require('./_typed-buffer'); - var ctx = require('./_ctx'); - var anInstance = require('./_an-instance'); - var propertyDesc = require('./_property-desc'); - var hide = require('./_hide'); - var redefineAll = require('./_redefine-all'); - var toInteger = require('./_to-integer'); - var toLength = require('./_to-length'); - var toIndex = require('./_to-index'); - var toAbsoluteIndex = require('./_to-absolute-index'); - var toPrimitive = require('./_to-primitive'); - var has = require('./_has'); - var classof = require('./_classof'); - var isObject = require('./_is-object'); - var toObject = require('./_to-object'); - var isArrayIter = require('./_is-array-iter'); - var create = require('./_object-create'); - var getPrototypeOf = require('./_object-gpo'); - var gOPN = require('./_object-gopn').f; - var getIterFn = require('./core.get-iterator-method'); - var uid = require('./_uid'); - var wks = require('./_wks'); - var createArrayMethod = require('./_array-methods'); - var createArrayIncludes = require('./_array-includes'); - var speciesConstructor = require('./_species-constructor'); - var ArrayIterators = require('./es6.array.iterator'); - var Iterators = require('./_iterators'); - var $iterDetect = require('./_iter-detect'); - var setSpecies = require('./_set-species'); - var arrayFill = require('./_array-fill'); - var arrayCopyWithin = require('./_array-copy-within'); - var $DP = require('./_object-dp'); - var $GOPD = require('./_object-gopd'); - var dP = $DP.f; - var gOPD = $GOPD.f; - var RangeError = global.RangeError; - var TypeError = global.TypeError; - var Uint8Array = global.Uint8Array; - var ARRAY_BUFFER = 'ArrayBuffer'; - var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER; - var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; - var PROTOTYPE = 'prototype'; - var ArrayProto = Array[PROTOTYPE]; - var $ArrayBuffer = $buffer.ArrayBuffer; - var $DataView = $buffer.DataView; - var arrayForEach = createArrayMethod(0); - var arrayFilter = createArrayMethod(2); - var arraySome = createArrayMethod(3); - var arrayEvery = createArrayMethod(4); - var arrayFind = createArrayMethod(5); - var arrayFindIndex = createArrayMethod(6); - var arrayIncludes = createArrayIncludes(true); - var arrayIndexOf = createArrayIncludes(false); - var arrayValues = ArrayIterators.values; - var arrayKeys = ArrayIterators.keys; - var arrayEntries = ArrayIterators.entries; - var arrayLastIndexOf = ArrayProto.lastIndexOf; - var arrayReduce = ArrayProto.reduce; - var arrayReduceRight = ArrayProto.reduceRight; - var arrayJoin = ArrayProto.join; - var arraySort = ArrayProto.sort; - var arraySlice = ArrayProto.slice; - var arrayToString = ArrayProto.toString; - var arrayToLocaleString = ArrayProto.toLocaleString; - var ITERATOR = wks('iterator'); - var TAG = wks('toStringTag'); - var TYPED_CONSTRUCTOR = uid('typed_constructor'); - var DEF_CONSTRUCTOR = uid('def_constructor'); - var ALL_CONSTRUCTORS = $typed.CONSTR; - var TYPED_ARRAY = $typed.TYPED; - var VIEW = $typed.VIEW; - var WRONG_LENGTH = 'Wrong length!'; - - var $map = createArrayMethod(1, function (O, length) { - return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length); - }); - - var LITTLE_ENDIAN = fails(function () { - // eslint-disable-next-line no-undef - return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1; - }); - - var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () { - new Uint8Array(1).set({}); - }); - - var toOffset = function (it, BYTES) { - var offset = toInteger(it); - if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!'); - return offset; - }; - - var validate = function (it) { - if (isObject(it) && TYPED_ARRAY in it) return it; - throw TypeError(it + ' is not a typed array!'); - }; - - var allocate = function (C, length) { - if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) { - throw TypeError('It is not a typed array constructor!'); - } return new C(length); - }; - - var speciesFromList = function (O, list) { - return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list); - }; - - var fromList = function (C, list) { - var index = 0; - var length = list.length; - var result = allocate(C, length); - while (length > index) result[index] = list[index++]; - return result; - }; - - var addGetter = function (it, key, internal) { - dP(it, key, { get: function () { return this._d[internal]; } }); - }; - - var $from = function from(source /* , mapfn, thisArg */) { - var O = toObject(source); - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iterFn = getIterFn(O); - var i, length, values, result, step, iterator; - if (iterFn != undefined && !isArrayIter(iterFn)) { - for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) { - values.push(step.value); - } O = values; - } - if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2); - for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) { - result[i] = mapping ? mapfn(O[i], i) : O[i]; - } - return result; - }; - - var $of = function of(/* ...items */) { - var index = 0; - var length = arguments.length; - var result = allocate(this, length); - while (length > index) result[index] = arguments[index++]; - return result; - }; - - // iOS Safari 6.x fails here - var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); }); - - var $toLocaleString = function toLocaleString() { - return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments); - }; - - var proto = { - copyWithin: function copyWithin(target, start /* , end */) { - return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined); - }, - every: function every(callbackfn /* , thisArg */) { - return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars - return arrayFill.apply(validate(this), arguments); - }, - filter: function filter(callbackfn /* , thisArg */) { - return speciesFromList(this, arrayFilter(validate(this), callbackfn, - arguments.length > 1 ? arguments[1] : undefined)); - }, - find: function find(predicate /* , thisArg */) { - return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - findIndex: function findIndex(predicate /* , thisArg */) { - return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - forEach: function forEach(callbackfn /* , thisArg */) { - arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - indexOf: function indexOf(searchElement /* , fromIndex */) { - return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - includes: function includes(searchElement /* , fromIndex */) { - return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - join: function join(separator) { // eslint-disable-line no-unused-vars - return arrayJoin.apply(validate(this), arguments); - }, - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars - return arrayLastIndexOf.apply(validate(this), arguments); - }, - map: function map(mapfn /* , thisArg */) { - return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined); - }, - reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduce.apply(validate(this), arguments); - }, - reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduceRight.apply(validate(this), arguments); - }, - reverse: function reverse() { - var that = this; - var length = validate(that).length; - var middle = Math.floor(length / 2); - var index = 0; - var value; - while (index < middle) { - value = that[index]; - that[index++] = that[--length]; - that[length] = value; - } return that; - }, - some: function some(callbackfn /* , thisArg */) { - return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - sort: function sort(comparefn) { - return arraySort.call(validate(this), comparefn); - }, - subarray: function subarray(begin, end) { - var O = validate(this); - var length = O.length; - var $begin = toAbsoluteIndex(begin, length); - return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))( - O.buffer, - O.byteOffset + $begin * O.BYTES_PER_ELEMENT, - toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin) - ); - } - }; - - var $slice = function slice(start, end) { - return speciesFromList(this, arraySlice.call(validate(this), start, end)); - }; - - var $set = function set(arrayLike /* , offset */) { - validate(this); - var offset = toOffset(arguments[1], 1); - var length = this.length; - var src = toObject(arrayLike); - var len = toLength(src.length); - var index = 0; - if (len + offset > length) throw RangeError(WRONG_LENGTH); - while (index < len) this[offset + index] = src[index++]; - }; - - var $iterators = { - entries: function entries() { - return arrayEntries.call(validate(this)); - }, - keys: function keys() { - return arrayKeys.call(validate(this)); - }, - values: function values() { - return arrayValues.call(validate(this)); - } - }; - - var isTAIndex = function (target, key) { - return isObject(target) - && target[TYPED_ARRAY] - && typeof key != 'symbol' - && key in target - && String(+key) == String(key); - }; - var $getDesc = function getOwnPropertyDescriptor(target, key) { - return isTAIndex(target, key = toPrimitive(key, true)) - ? propertyDesc(2, target[key]) - : gOPD(target, key); - }; - var $setDesc = function defineProperty(target, key, desc) { - if (isTAIndex(target, key = toPrimitive(key, true)) - && isObject(desc) - && has(desc, 'value') - && !has(desc, 'get') - && !has(desc, 'set') - // TODO: add validation descriptor w/o calling accessors - && !desc.configurable - && (!has(desc, 'writable') || desc.writable) - && (!has(desc, 'enumerable') || desc.enumerable) - ) { - target[key] = desc.value; - return target; - } return dP(target, key, desc); - }; - - if (!ALL_CONSTRUCTORS) { - $GOPD.f = $getDesc; - $DP.f = $setDesc; - } - - $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', { - getOwnPropertyDescriptor: $getDesc, - defineProperty: $setDesc - }); - - if (fails(function () { arrayToString.call({}); })) { - arrayToString = arrayToLocaleString = function toString() { - return arrayJoin.call(this); - }; - } - - var $TypedArrayPrototype$ = redefineAll({}, proto); - redefineAll($TypedArrayPrototype$, $iterators); - hide($TypedArrayPrototype$, ITERATOR, $iterators.values); - redefineAll($TypedArrayPrototype$, { - slice: $slice, - set: $set, - constructor: function () { /* noop */ }, - toString: arrayToString, - toLocaleString: $toLocaleString - }); - addGetter($TypedArrayPrototype$, 'buffer', 'b'); - addGetter($TypedArrayPrototype$, 'byteOffset', 'o'); - addGetter($TypedArrayPrototype$, 'byteLength', 'l'); - addGetter($TypedArrayPrototype$, 'length', 'e'); - dP($TypedArrayPrototype$, TAG, { - get: function () { return this[TYPED_ARRAY]; } - }); - - // eslint-disable-next-line max-statements - module.exports = function (KEY, BYTES, wrapper, CLAMPED) { - CLAMPED = !!CLAMPED; - var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'; - var GETTER = 'get' + KEY; - var SETTER = 'set' + KEY; - var TypedArray = global[NAME]; - var Base = TypedArray || {}; - var TAC = TypedArray && getPrototypeOf(TypedArray); - var FORCED = !TypedArray || !$typed.ABV; - var O = {}; - var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE]; - var getter = function (that, index) { - var data = that._d; - return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN); - }; - var setter = function (that, index, value) { - var data = that._d; - if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff; - data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN); - }; - var addElement = function (that, index) { - dP(that, index, { - get: function () { - return getter(this, index); - }, - set: function (value) { - return setter(this, index, value); - }, - enumerable: true - }); - }; - if (FORCED) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME, '_d'); - var index = 0; - var offset = 0; - var buffer, byteLength, length, klass; - if (!isObject(data)) { - length = toIndex(data); - byteLength = length * BYTES; - buffer = new $ArrayBuffer(byteLength); - } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - buffer = data; - offset = toOffset($offset, BYTES); - var $len = data.byteLength; - if ($length === undefined) { - if ($len % BYTES) throw RangeError(WRONG_LENGTH); - byteLength = $len - offset; - if (byteLength < 0) throw RangeError(WRONG_LENGTH); - } else { - byteLength = toLength($length) * BYTES; - if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH); - } - length = byteLength / BYTES; - } else if (TYPED_ARRAY in data) { - return fromList(TypedArray, data); - } else { - return $from.call(TypedArray, data); - } - hide(that, '_d', { - b: buffer, - o: offset, - l: byteLength, - e: length, - v: new $DataView(buffer) - }); - while (index < length) addElement(that, index++); - }); - TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$); - hide(TypedArrayPrototype, 'constructor', TypedArray); - } else if (!fails(function () { - TypedArray(1); - }) || !fails(function () { - new TypedArray(-1); // eslint-disable-line no-new - }) || !$iterDetect(function (iter) { - new TypedArray(); // eslint-disable-line no-new - new TypedArray(null); // eslint-disable-line no-new - new TypedArray(1.5); // eslint-disable-line no-new - new TypedArray(iter); // eslint-disable-line no-new - }, true)) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME); - var klass; - // `ws` module bug, temporarily remove validation length for Uint8Array - // https://github.com/websockets/ws/pull/645 - if (!isObject(data)) return new Base(toIndex(data)); - if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - return $length !== undefined - ? new Base(data, toOffset($offset, BYTES), $length) - : $offset !== undefined - ? new Base(data, toOffset($offset, BYTES)) - : new Base(data); - } - if (TYPED_ARRAY in data) return fromList(TypedArray, data); - return $from.call(TypedArray, data); - }); - arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) { - if (!(key in TypedArray)) hide(TypedArray, key, Base[key]); - }); - TypedArray[PROTOTYPE] = TypedArrayPrototype; - if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray; - } - var $nativeIterator = TypedArrayPrototype[ITERATOR]; - var CORRECT_ITER_NAME = !!$nativeIterator - && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined); - var $iterator = $iterators.values; - hide(TypedArray, TYPED_CONSTRUCTOR, true); - hide(TypedArrayPrototype, TYPED_ARRAY, NAME); - hide(TypedArrayPrototype, VIEW, true); - hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray); - - if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) { - dP(TypedArrayPrototype, TAG, { - get: function () { return NAME; } - }); - } - - O[NAME] = TypedArray; - - $export($export.G + $export.W + $export.F * (TypedArray != Base), O); - - $export($export.S, NAME, { - BYTES_PER_ELEMENT: BYTES - }); - - $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, { - from: $from, - of: $of - }); - - if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES); - - $export($export.P, NAME, proto); - - setSpecies(NAME); - - $export($export.P + $export.F * FORCED_SET, NAME, { set: $set }); - - $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators); - - if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString; - - $export($export.P + $export.F * fails(function () { - new TypedArray(1).slice(); - }), NAME, { slice: $slice }); - - $export($export.P + $export.F * (fails(function () { - return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString(); - }) || !fails(function () { - TypedArrayPrototype.toLocaleString.call([1, 2]); - })), NAME, { toLocaleString: $toLocaleString }); - - Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator; - if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator); - }; -} else module.exports = function () { /* empty */ }; diff --git a/forward_engineering/node_modules/core-js/library/modules/_typed-buffer.js b/forward_engineering/node_modules/core-js/library/modules/_typed-buffer.js deleted file mode 100644 index c24cef3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_typed-buffer.js +++ /dev/null @@ -1,276 +0,0 @@ -'use strict'; -var global = require('./_global'); -var DESCRIPTORS = require('./_descriptors'); -var LIBRARY = require('./_library'); -var $typed = require('./_typed'); -var hide = require('./_hide'); -var redefineAll = require('./_redefine-all'); -var fails = require('./_fails'); -var anInstance = require('./_an-instance'); -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -var toIndex = require('./_to-index'); -var gOPN = require('./_object-gopn').f; -var dP = require('./_object-dp').f; -var arrayFill = require('./_array-fill'); -var setToStringTag = require('./_set-to-string-tag'); -var ARRAY_BUFFER = 'ArrayBuffer'; -var DATA_VIEW = 'DataView'; -var PROTOTYPE = 'prototype'; -var WRONG_LENGTH = 'Wrong length!'; -var WRONG_INDEX = 'Wrong index!'; -var $ArrayBuffer = global[ARRAY_BUFFER]; -var $DataView = global[DATA_VIEW]; -var Math = global.Math; -var RangeError = global.RangeError; -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = global.Infinity; -var BaseBuffer = $ArrayBuffer; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; -var BUFFER = 'buffer'; -var BYTE_LENGTH = 'byteLength'; -var BYTE_OFFSET = 'byteOffset'; -var $BUFFER = DESCRIPTORS ? '_b' : BUFFER; -var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH; -var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET; - -// IEEE754 conversions based on https://github.com/feross/ieee754 -function packIEEE754(value, mLen, nBytes) { - var buffer = new Array(nBytes); - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0; - var i = 0; - var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; - var e, m, c; - value = abs(value); - // eslint-disable-next-line no-self-compare - if (value != value || value === Infinity) { - // eslint-disable-next-line no-self-compare - m = value != value ? 1 : 0; - e = eMax; - } else { - e = floor(log(value) / LN2); - if (value * (c = pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * pow(2, mLen); - e = e + eBias; - } else { - m = value * pow(2, eBias - 1) * pow(2, mLen); - e = 0; - } - } - for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8); - e = e << mLen | m; - eLen += mLen; - for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8); - buffer[--i] |= s * 128; - return buffer; -} -function unpackIEEE754(buffer, mLen, nBytes) { - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = eLen - 7; - var i = nBytes - 1; - var s = buffer[i--]; - var e = s & 127; - var m; - s >>= 7; - for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8); - m = e & (1 << -nBits) - 1; - e >>= -nBits; - nBits += mLen; - for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8); - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : s ? -Infinity : Infinity; - } else { - m = m + pow(2, mLen); - e = e - eBias; - } return (s ? -1 : 1) * m * pow(2, e - mLen); -} - -function unpackI32(bytes) { - return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0]; -} -function packI8(it) { - return [it & 0xff]; -} -function packI16(it) { - return [it & 0xff, it >> 8 & 0xff]; -} -function packI32(it) { - return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff]; -} -function packF64(it) { - return packIEEE754(it, 52, 8); -} -function packF32(it) { - return packIEEE754(it, 23, 4); -} - -function addGetter(C, key, internal) { - dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } }); -} - -function get(view, bytes, index, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = store.slice(start, start + bytes); - return isLittleEndian ? pack : pack.reverse(); -} -function set(view, bytes, index, conversion, value, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = conversion(+value); - for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1]; -} - -if (!$typed.ABV) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer, ARRAY_BUFFER); - var byteLength = toIndex(length); - this._b = arrayFill.call(new Array(byteLength), 0); - this[$LENGTH] = byteLength; - }; - - $DataView = function DataView(buffer, byteOffset, byteLength) { - anInstance(this, $DataView, DATA_VIEW); - anInstance(buffer, $ArrayBuffer, DATA_VIEW); - var bufferLength = buffer[$LENGTH]; - var offset = toInteger(byteOffset); - if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!'); - byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); - if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); - this[$BUFFER] = buffer; - this[$OFFSET] = offset; - this[$LENGTH] = byteLength; - }; - - if (DESCRIPTORS) { - addGetter($ArrayBuffer, BYTE_LENGTH, '_l'); - addGetter($DataView, BUFFER, '_b'); - addGetter($DataView, BYTE_LENGTH, '_l'); - addGetter($DataView, BYTE_OFFSET, '_o'); - } - - redefineAll($DataView[PROTOTYPE], { - getInt8: function getInt8(byteOffset) { - return get(this, 1, byteOffset)[0] << 24 >> 24; - }, - getUint8: function getUint8(byteOffset) { - return get(this, 1, byteOffset)[0]; - }, - getInt16: function getInt16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return (bytes[1] << 8 | bytes[0]) << 16 >> 16; - }, - getUint16: function getUint16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return bytes[1] << 8 | bytes[0]; - }, - getInt32: function getInt32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])); - }, - getUint32: function getUint32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0; - }, - getFloat32: function getFloat32(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4); - }, - getFloat64: function getFloat64(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8); - }, - setInt8: function setInt8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setUint8: function setUint8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setInt16: function setInt16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setUint16: function setUint16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setInt32: function setInt32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setUint32: function setUint32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packF32, value, arguments[2]); - }, - setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { - set(this, 8, byteOffset, packF64, value, arguments[2]); - } - }); -} else { - if (!fails(function () { - $ArrayBuffer(1); - }) || !fails(function () { - new $ArrayBuffer(-1); // eslint-disable-line no-new - }) || fails(function () { - new $ArrayBuffer(); // eslint-disable-line no-new - new $ArrayBuffer(1.5); // eslint-disable-line no-new - new $ArrayBuffer(NaN); // eslint-disable-line no-new - return $ArrayBuffer.name != ARRAY_BUFFER; - })) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer); - return new BaseBuffer(toIndex(length)); - }; - var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE]; - for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) { - if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]); - } - if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer; - } - // iOS Safari 7.x bug - var view = new $DataView(new $ArrayBuffer(2)); - var $setInt8 = $DataView[PROTOTYPE].setInt8; - view.setInt8(0, 2147483648); - view.setInt8(1, 2147483649); - if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], { - setInt8: function setInt8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - }, - setUint8: function setUint8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - } - }, true); -} -setToStringTag($ArrayBuffer, ARRAY_BUFFER); -setToStringTag($DataView, DATA_VIEW); -hide($DataView[PROTOTYPE], $typed.VIEW, true); -exports[ARRAY_BUFFER] = $ArrayBuffer; -exports[DATA_VIEW] = $DataView; diff --git a/forward_engineering/node_modules/core-js/library/modules/_typed.js b/forward_engineering/node_modules/core-js/library/modules/_typed.js deleted file mode 100644 index 8747ffd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_typed.js +++ /dev/null @@ -1,28 +0,0 @@ -var global = require('./_global'); -var hide = require('./_hide'); -var uid = require('./_uid'); -var TYPED = uid('typed_array'); -var VIEW = uid('view'); -var ABV = !!(global.ArrayBuffer && global.DataView); -var CONSTR = ABV; -var i = 0; -var l = 9; -var Typed; - -var TypedArrayConstructors = ( - 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array' -).split(','); - -while (i < l) { - if (Typed = global[TypedArrayConstructors[i++]]) { - hide(Typed.prototype, TYPED, true); - hide(Typed.prototype, VIEW, true); - } else CONSTR = false; -} - -module.exports = { - ABV: ABV, - CONSTR: CONSTR, - TYPED: TYPED, - VIEW: VIEW -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_uid.js b/forward_engineering/node_modules/core-js/library/modules/_uid.js deleted file mode 100644 index ffbe718..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_uid.js +++ /dev/null @@ -1,5 +0,0 @@ -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_user-agent.js b/forward_engineering/node_modules/core-js/library/modules/_user-agent.js deleted file mode 100644 index 363fedc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_user-agent.js +++ /dev/null @@ -1,4 +0,0 @@ -var global = require('./_global'); -var navigator = global.navigator; - -module.exports = navigator && navigator.userAgent || ''; diff --git a/forward_engineering/node_modules/core-js/library/modules/_validate-collection.js b/forward_engineering/node_modules/core-js/library/modules/_validate-collection.js deleted file mode 100644 index cec1cef..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_validate-collection.js +++ /dev/null @@ -1,5 +0,0 @@ -var isObject = require('./_is-object'); -module.exports = function (it, TYPE) { - if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_wks-define.js b/forward_engineering/node_modules/core-js/library/modules/_wks-define.js deleted file mode 100644 index 7284d6a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_wks-define.js +++ /dev/null @@ -1,9 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var LIBRARY = require('./_library'); -var wksExt = require('./_wks-ext'); -var defineProperty = require('./_object-dp').f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/_wks-ext.js b/forward_engineering/node_modules/core-js/library/modules/_wks-ext.js deleted file mode 100644 index 13bd83b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_wks-ext.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = require('./_wks'); diff --git a/forward_engineering/node_modules/core-js/library/modules/_wks.js b/forward_engineering/node_modules/core-js/library/modules/_wks.js deleted file mode 100644 index e33f857..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/_wks.js +++ /dev/null @@ -1,11 +0,0 @@ -var store = require('./_shared')('wks'); -var uid = require('./_uid'); -var Symbol = require('./_global').Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; diff --git a/forward_engineering/node_modules/core-js/library/modules/core.delay.js b/forward_engineering/node_modules/core-js/library/modules/core.delay.js deleted file mode 100644 index 73712c0..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.delay.js +++ /dev/null @@ -1,12 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var $export = require('./_export'); -var partial = require('./_partial'); -// https://esdiscuss.org/topic/promise-returning-delay-function -$export($export.G + $export.F, { - delay: function delay(time) { - return new (core.Promise || global.Promise)(function (resolve) { - setTimeout(partial.call(resolve, true), time); - }); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.dict.js b/forward_engineering/node_modules/core-js/library/modules/core.dict.js deleted file mode 100644 index 5422ad3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.dict.js +++ /dev/null @@ -1,157 +0,0 @@ -'use strict'; -var ctx = require('./_ctx'); -var $export = require('./_export'); -var createDesc = require('./_property-desc'); -var assign = require('./_object-assign'); -var create = require('./_object-create'); -var getPrototypeOf = require('./_object-gpo'); -var getKeys = require('./_object-keys'); -var dP = require('./_object-dp'); -var keyOf = require('./_keyof'); -var aFunction = require('./_a-function'); -var forOf = require('./_for-of'); -var isIterable = require('./core.is-iterable'); -var $iterCreate = require('./_iter-create'); -var step = require('./_iter-step'); -var isObject = require('./_is-object'); -var toIObject = require('./_to-iobject'); -var DESCRIPTORS = require('./_descriptors'); -var has = require('./_has'); - -// 0 -> Dict.forEach -// 1 -> Dict.map -// 2 -> Dict.filter -// 3 -> Dict.some -// 4 -> Dict.every -// 5 -> Dict.find -// 6 -> Dict.findKey -// 7 -> Dict.mapPairs -var createDictMethod = function (TYPE) { - var IS_MAP = TYPE == 1; - var IS_EVERY = TYPE == 4; - return function (object, callbackfn, that /* = undefined */) { - var f = ctx(callbackfn, that, 3); - var O = toIObject(object); - var result = IS_MAP || TYPE == 7 || TYPE == 2 - ? new (typeof this == 'function' ? this : Dict)() : undefined; - var key, val, res; - for (key in O) if (has(O, key)) { - val = O[key]; - res = f(val, key, object); - if (TYPE) { - if (IS_MAP) result[key] = res; // map - else if (res) switch (TYPE) { - case 2: result[key] = val; break; // filter - case 3: return true; // some - case 5: return val; // find - case 6: return key; // findKey - case 7: result[res[0]] = res[1]; // mapPairs - } else if (IS_EVERY) return false; // every - } - } - return TYPE == 3 || IS_EVERY ? IS_EVERY : result; - }; -}; -var findKey = createDictMethod(6); - -var createDictIter = function (kind) { - return function (it) { - return new DictIterator(it, kind); - }; -}; -var DictIterator = function (iterated, kind) { - this._t = toIObject(iterated); // target - this._a = getKeys(iterated); // keys - this._i = 0; // next index - this._k = kind; // kind -}; -$iterCreate(DictIterator, 'Dict', function () { - var that = this; - var O = that._t; - var keys = that._a; - var kind = that._k; - var key; - do { - if (that._i >= keys.length) { - that._t = undefined; - return step(1); - } - } while (!has(O, key = keys[that._i++])); - if (kind == 'keys') return step(0, key); - if (kind == 'values') return step(0, O[key]); - return step(0, [key, O[key]]); -}); - -function Dict(iterable) { - var dict = create(null); - if (iterable != undefined) { - if (isIterable(iterable)) { - forOf(iterable, true, function (key, value) { - dict[key] = value; - }); - } else assign(dict, iterable); - } - return dict; -} -Dict.prototype = null; - -function reduce(object, mapfn, init) { - aFunction(mapfn); - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var memo, key; - if (arguments.length < 3) { - if (!length) throw TypeError('Reduce of empty object with no initial value'); - memo = O[keys[i++]]; - } else memo = Object(init); - while (length > i) if (has(O, key = keys[i++])) { - memo = mapfn(memo, O[key], key, object); - } - return memo; -} - -function includes(object, el) { - // eslint-disable-next-line no-self-compare - return (el == el ? keyOf(object, el) : findKey(object, function (it) { - // eslint-disable-next-line no-self-compare - return it != it; - })) !== undefined; -} - -function get(object, key) { - if (has(object, key)) return object[key]; -} -function set(object, key, value) { - if (DESCRIPTORS && key in Object) dP.f(object, key, createDesc(0, value)); - else object[key] = value; - return object; -} - -function isDict(it) { - return isObject(it) && getPrototypeOf(it) === Dict.prototype; -} - -$export($export.G + $export.F, { Dict: Dict }); - -$export($export.S, 'Dict', { - keys: createDictIter('keys'), - values: createDictIter('values'), - entries: createDictIter('entries'), - forEach: createDictMethod(0), - map: createDictMethod(1), - filter: createDictMethod(2), - some: createDictMethod(3), - every: createDictMethod(4), - find: createDictMethod(5), - findKey: findKey, - mapPairs: createDictMethod(7), - reduce: reduce, - keyOf: keyOf, - includes: includes, - has: has, - get: get, - set: set, - isDict: isDict -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.function.part.js b/forward_engineering/node_modules/core-js/library/modules/core.function.part.js deleted file mode 100644 index 050154f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.function.part.js +++ /dev/null @@ -1,7 +0,0 @@ -var path = require('./_path'); -var $export = require('./_export'); - -// Placeholder -require('./_core')._ = path._ = path._ || {}; - -$export($export.P + $export.F, 'Function', { part: require('./_partial') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.get-iterator-method.js b/forward_engineering/node_modules/core-js/library/modules/core.get-iterator-method.js deleted file mode 100644 index 9b6fa62..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.get-iterator-method.js +++ /dev/null @@ -1,8 +0,0 @@ -var classof = require('./_classof'); -var ITERATOR = require('./_wks')('iterator'); -var Iterators = require('./_iterators'); -module.exports = require('./_core').getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/core.get-iterator.js b/forward_engineering/node_modules/core-js/library/modules/core.get-iterator.js deleted file mode 100644 index 04568c8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.get-iterator.js +++ /dev/null @@ -1,7 +0,0 @@ -var anObject = require('./_an-object'); -var get = require('./core.get-iterator-method'); -module.exports = require('./_core').getIterator = function (it) { - var iterFn = get(it); - if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!'); - return anObject(iterFn.call(it)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/core.is-iterable.js b/forward_engineering/node_modules/core-js/library/modules/core.is-iterable.js deleted file mode 100644 index 388e5e3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.is-iterable.js +++ /dev/null @@ -1,10 +0,0 @@ -var classof = require('./_classof'); -var ITERATOR = require('./_wks')('iterator'); -var Iterators = require('./_iterators'); -module.exports = require('./_core').isIterable = function (it) { - var O = Object(it); - return O[ITERATOR] !== undefined - || '@@iterator' in O - // eslint-disable-next-line no-prototype-builtins - || Iterators.hasOwnProperty(classof(O)); -}; diff --git a/forward_engineering/node_modules/core-js/library/modules/core.number.iterator.js b/forward_engineering/node_modules/core-js/library/modules/core.number.iterator.js deleted file mode 100644 index fa37791..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.number.iterator.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -require('./_iter-define')(Number, 'Number', function (iterated) { - this._l = +iterated; - this._i = 0; -}, function () { - var i = this._i++; - var done = !(i < this._l); - return { done: done, value: done ? undefined : i }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.object.classof.js b/forward_engineering/node_modules/core-js/library/modules/core.object.classof.js deleted file mode 100644 index fe16595..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.object.classof.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { classof: require('./_classof') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.object.define.js b/forward_engineering/node_modules/core-js/library/modules/core.object.define.js deleted file mode 100644 index e4e717b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.object.define.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var define = require('./_object-define'); - -$export($export.S + $export.F, 'Object', { define: define }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.object.is-object.js b/forward_engineering/node_modules/core-js/library/modules/core.object.is-object.js deleted file mode 100644 index fea80b6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.object.is-object.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { isObject: require('./_is-object') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.object.make.js b/forward_engineering/node_modules/core-js/library/modules/core.object.make.js deleted file mode 100644 index 51d4774..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.object.make.js +++ /dev/null @@ -1,9 +0,0 @@ -var $export = require('./_export'); -var define = require('./_object-define'); -var create = require('./_object-create'); - -$export($export.S + $export.F, 'Object', { - make: function (proto, mixin) { - return define(create(proto), mixin); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.regexp.escape.js b/forward_engineering/node_modules/core-js/library/modules/core.regexp.escape.js deleted file mode 100644 index 3ddd748..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.regexp.escape.js +++ /dev/null @@ -1,5 +0,0 @@ -// https://github.com/benjamingr/RexExp.escape -var $export = require('./_export'); -var $re = require('./_replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&'); - -$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.string.escape-html.js b/forward_engineering/node_modules/core-js/library/modules/core.string.escape-html.js deleted file mode 100644 index f967886..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.string.escape-html.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $re = require('./_replacer')(/[&<>"']/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}); - -$export($export.P + $export.F, 'String', { escapeHTML: function escapeHTML() { return $re(this); } }); diff --git a/forward_engineering/node_modules/core-js/library/modules/core.string.unescape-html.js b/forward_engineering/node_modules/core-js/library/modules/core.string.unescape-html.js deleted file mode 100644 index eb8a6cf..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/core.string.unescape-html.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $re = require('./_replacer')(/&(?:amp|lt|gt|quot|apos);/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}); - -$export($export.P + $export.F, 'String', { unescapeHTML: function unescapeHTML() { return $re(this); } }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es5.js b/forward_engineering/node_modules/core-js/library/modules/es5.js deleted file mode 100644 index ca10612..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es5.js +++ /dev/null @@ -1,35 +0,0 @@ -// This file still here for a legacy code and will be removed in a near time -require('./es6.object.create'); -require('./es6.object.define-property'); -require('./es6.object.define-properties'); -require('./es6.object.get-own-property-descriptor'); -require('./es6.object.get-prototype-of'); -require('./es6.object.keys'); -require('./es6.object.get-own-property-names'); -require('./es6.object.freeze'); -require('./es6.object.seal'); -require('./es6.object.prevent-extensions'); -require('./es6.object.is-frozen'); -require('./es6.object.is-sealed'); -require('./es6.object.is-extensible'); -require('./es6.function.bind'); -require('./es6.array.is-array'); -require('./es6.array.join'); -require('./es6.array.slice'); -require('./es6.array.sort'); -require('./es6.array.for-each'); -require('./es6.array.map'); -require('./es6.array.filter'); -require('./es6.array.some'); -require('./es6.array.every'); -require('./es6.array.reduce'); -require('./es6.array.reduce-right'); -require('./es6.array.index-of'); -require('./es6.array.last-index-of'); -require('./es6.date.now'); -require('./es6.date.to-iso-string'); -require('./es6.date.to-json'); -require('./es6.parse-int'); -require('./es6.parse-float'); -require('./es6.string.trim'); -require('./es6.regexp.to-string'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.copy-within.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.copy-within.js deleted file mode 100644 index f866a95..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.copy-within.js +++ /dev/null @@ -1,6 +0,0 @@ -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -var $export = require('./_export'); - -$export($export.P, 'Array', { copyWithin: require('./_array-copy-within') }); - -require('./_add-to-unscopables')('copyWithin'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.every.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.every.js deleted file mode 100644 index cfd448f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.every.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $every = require('./_array-methods')(4); - -$export($export.P + $export.F * !require('./_strict-method')([].every, true), 'Array', { - // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg]) - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.fill.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.fill.js deleted file mode 100644 index ac17144..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.fill.js +++ /dev/null @@ -1,6 +0,0 @@ -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -var $export = require('./_export'); - -$export($export.P, 'Array', { fill: require('./_array-fill') }); - -require('./_add-to-unscopables')('fill'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.filter.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.filter.js deleted file mode 100644 index 447ecf4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.filter.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $filter = require('./_array-methods')(2); - -$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', { - // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg]) - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.find-index.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.find-index.js deleted file mode 100644 index 374cadd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.find-index.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined) -var $export = require('./_export'); -var $find = require('./_array-methods')(6); -var KEY = 'findIndex'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -require('./_add-to-unscopables')(KEY); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.find.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.find.js deleted file mode 100644 index 4fbe76c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.find.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) -var $export = require('./_export'); -var $find = require('./_array-methods')(5); -var KEY = 'find'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -require('./_add-to-unscopables')(KEY); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.for-each.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.for-each.js deleted file mode 100644 index 525ba07..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.for-each.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $forEach = require('./_array-methods')(0); -var STRICT = require('./_strict-method')([].forEach, true); - -$export($export.P + $export.F * !STRICT, 'Array', { - // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) - forEach: function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.from.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.from.js deleted file mode 100644 index 4db3801..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.from.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; -var ctx = require('./_ctx'); -var $export = require('./_export'); -var toObject = require('./_to-object'); -var call = require('./_iter-call'); -var isArrayIter = require('./_is-array-iter'); -var toLength = require('./_to-length'); -var createProperty = require('./_create-property'); -var getIterFn = require('./core.get-iterator-method'); - -$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', { - // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined) - from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var index = 0; - var iterFn = getIterFn(O); - var length, result, step, iterator; - if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2); - // if object isn't iterable or it's array with default iterator - use simple case - if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) { - for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) { - createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value); - } - } else { - length = toLength(O.length); - for (result = new C(length); length > index; index++) { - createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); - } - } - result.length = index; - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.index-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.index-of.js deleted file mode 100644 index 231c92e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.index-of.js +++ /dev/null @@ -1,15 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $indexOf = require('./_array-includes')(false); -var $native = [].indexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', { - // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? $native.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.is-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.is-array.js deleted file mode 100644 index 27ca6fc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.is-array.js +++ /dev/null @@ -1,4 +0,0 @@ -// 22.1.2.2 / 15.4.3.2 Array.isArray(arg) -var $export = require('./_export'); - -$export($export.S, 'Array', { isArray: require('./_is-array') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.iterator.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.iterator.js deleted file mode 100644 index c64e88b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.iterator.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; -var addToUnscopables = require('./_add-to-unscopables'); -var step = require('./_iter-step'); -var Iterators = require('./_iterators'); -var toIObject = require('./_to-iobject'); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.join.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.join.js deleted file mode 100644 index 48e55d2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.join.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// 22.1.3.13 Array.prototype.join(separator) -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var arrayJoin = [].join; - -// fallback for not array-like strings -$export($export.P + $export.F * (require('./_iobject') != Object || !require('./_strict-method')(arrayJoin)), 'Array', { - join: function join(separator) { - return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.last-index-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.last-index-of.js deleted file mode 100644 index 1f70e34..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.last-index-of.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -var $native = [].lastIndexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', { - // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex]) - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0; - var O = toIObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; - return -1; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.map.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.map.js deleted file mode 100644 index 1326033..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.map.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $map = require('./_array-methods')(1); - -$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', { - // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg]) - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.of.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.of.js deleted file mode 100644 index b83e058..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.of.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var createProperty = require('./_create-property'); - -// WebKit Array.of isn't generic -$export($export.S + $export.F * require('./_fails')(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}), 'Array', { - // 22.1.2.3 Array.of( ...items) - of: function of(/* ...args */) { - var index = 0; - var aLen = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(aLen); - while (aLen > index) createProperty(result, index, arguments[index++]); - result.length = aLen; - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce-right.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce-right.js deleted file mode 100644 index 168e421..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce-right.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $reduce = require('./_array-reduce'); - -$export($export.P + $export.F * !require('./_strict-method')([].reduceRight, true), 'Array', { - // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue]) - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], true); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce.js deleted file mode 100644 index f4e4761..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.reduce.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $reduce = require('./_array-reduce'); - -$export($export.P + $export.F * !require('./_strict-method')([].reduce, true), 'Array', { - // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], false); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.slice.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.slice.js deleted file mode 100644 index bdd496e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.slice.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var html = require('./_html'); -var cof = require('./_cof'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -var arraySlice = [].slice; - -// fallback for not array-like ES3 strings and DOM objects -$export($export.P + $export.F * require('./_fails')(function () { - if (html) arraySlice.call(html); -}), 'Array', { - slice: function slice(begin, end) { - var len = toLength(this.length); - var klass = cof(this); - end = end === undefined ? len : end; - if (klass == 'Array') return arraySlice.call(this, begin, end); - var start = toAbsoluteIndex(begin, len); - var upTo = toAbsoluteIndex(end, len); - var size = toLength(upTo - start); - var cloned = new Array(size); - var i = 0; - for (; i < size; i++) cloned[i] = klass == 'String' - ? this.charAt(start + i) - : this[start + i]; - return cloned; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.some.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.some.js deleted file mode 100644 index 14c5eec..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.some.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $some = require('./_array-methods')(3); - -$export($export.P + $export.F * !require('./_strict-method')([].some, true), 'Array', { - // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg]) - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.sort.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.sort.js deleted file mode 100644 index 39817ff..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.sort.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var toObject = require('./_to-object'); -var fails = require('./_fails'); -var $sort = [].sort; -var test = [1, 2, 3]; - -$export($export.P + $export.F * (fails(function () { - // IE8- - test.sort(undefined); -}) || !fails(function () { - // V8 bug - test.sort(null); - // Old WebKit -}) || !require('./_strict-method')($sort)), 'Array', { - // 22.1.3.25 Array.prototype.sort(comparefn) - sort: function sort(comparefn) { - return comparefn === undefined - ? $sort.call(toObject(this)) - : $sort.call(toObject(this), aFunction(comparefn)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.array.species.js b/forward_engineering/node_modules/core-js/library/modules/es6.array.species.js deleted file mode 100644 index ce0b891..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.array.species.js +++ /dev/null @@ -1 +0,0 @@ -require('./_set-species')('Array'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.date.now.js b/forward_engineering/node_modules/core-js/library/modules/es6.date.now.js deleted file mode 100644 index 65f134e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.date.now.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.3.3.1 / 15.9.4.4 Date.now() -var $export = require('./_export'); - -$export($export.S, 'Date', { now: function () { return new Date().getTime(); } }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-iso-string.js b/forward_engineering/node_modules/core-js/library/modules/es6.date.to-iso-string.js deleted file mode 100644 index 13b2781..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-iso-string.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var $export = require('./_export'); -var toISOString = require('./_date-to-iso-string'); - -// PhantomJS / old WebKit has a broken implementations -$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', { - toISOString: toISOString -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-json.js b/forward_engineering/node_modules/core-js/library/modules/es6.date.to-json.js deleted file mode 100644 index 69b1f30..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-json.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var toISOString = require('./_date-to-iso-string'); -var classof = require('./_classof'); - -$export($export.P + $export.F * require('./_fails')(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : - (!('toISOString' in O) && classof(O) == 'Date') ? toISOString.call(O) : O.toISOString(); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-primitive.js b/forward_engineering/node_modules/core-js/library/modules/es6.date.to-primitive.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.date.to-string.js b/forward_engineering/node_modules/core-js/library/modules/es6.date.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.function.bind.js b/forward_engineering/node_modules/core-js/library/modules/es6.function.bind.js deleted file mode 100644 index 38e84e1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.function.bind.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...) -var $export = require('./_export'); - -$export($export.P, 'Function', { bind: require('./_bind') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.function.has-instance.js b/forward_engineering/node_modules/core-js/library/modules/es6.function.has-instance.js deleted file mode 100644 index 7556ed9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.function.has-instance.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var isObject = require('./_is-object'); -var getPrototypeOf = require('./_object-gpo'); -var HAS_INSTANCE = require('./_wks')('hasInstance'); -var FunctionProto = Function.prototype; -// 19.2.3.6 Function.prototype[@@hasInstance](V) -if (!(HAS_INSTANCE in FunctionProto)) require('./_object-dp').f(FunctionProto, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.function.name.js b/forward_engineering/node_modules/core-js/library/modules/es6.function.name.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.map.js b/forward_engineering/node_modules/core-js/library/modules/es6.map.js deleted file mode 100644 index a282f02..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.map.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var strong = require('./_collection-strong'); -var validate = require('./_validate-collection'); -var MAP = 'Map'; - -// 23.1 Map Objects -module.exports = require('./_collection')(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.acosh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.acosh.js deleted file mode 100644 index 8a8989e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.acosh.js +++ /dev/null @@ -1,18 +0,0 @@ -// 20.2.2.3 Math.acosh(x) -var $export = require('./_export'); -var log1p = require('./_math-log1p'); -var sqrt = Math.sqrt; -var $acosh = Math.acosh; - -$export($export.S + $export.F * !($acosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - && Math.floor($acosh(Number.MAX_VALUE)) == 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - && $acosh(Infinity) == Infinity -), 'Math', { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? Math.log(x) + Math.LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.asinh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.asinh.js deleted file mode 100644 index ddf4666..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.asinh.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.5 Math.asinh(x) -var $export = require('./_export'); -var $asinh = Math.asinh; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1)); -} - -// Tor Browser bug: Math.asinh(0) -> -0 -$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.atanh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.atanh.js deleted file mode 100644 index af3c3e8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.atanh.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.7 Math.atanh(x) -var $export = require('./_export'); -var $atanh = Math.atanh; - -// Tor Browser bug: Math.atanh(-0) -> 0 -$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.cbrt.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.cbrt.js deleted file mode 100644 index e45ac44..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.cbrt.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.2.2.9 Math.cbrt(x) -var $export = require('./_export'); -var sign = require('./_math-sign'); - -$export($export.S, 'Math', { - cbrt: function cbrt(x) { - return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.clz32.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.clz32.js deleted file mode 100644 index 1e4d7e1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.clz32.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.11 Math.clz32(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.cosh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.cosh.js deleted file mode 100644 index 1e0cffc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.cosh.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.2.2.12 Math.cosh(x) -var $export = require('./_export'); -var exp = Math.exp; - -$export($export.S, 'Math', { - cosh: function cosh(x) { - return (exp(x = +x) + exp(-x)) / 2; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.expm1.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.expm1.js deleted file mode 100644 index da4c90d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.expm1.js +++ /dev/null @@ -1,5 +0,0 @@ -// 20.2.2.14 Math.expm1(x) -var $export = require('./_export'); -var $expm1 = require('./_math-expm1'); - -$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.fround.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.fround.js deleted file mode 100644 index 9c262f2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.fround.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.16 Math.fround(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { fround: require('./_math-fround') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.hypot.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.hypot.js deleted file mode 100644 index 41ffdb2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.hypot.js +++ /dev/null @@ -1,25 +0,0 @@ -// 20.2.2.17 Math.hypot([value1[, value2[, … ]]]) -var $export = require('./_export'); -var abs = Math.abs; - -$export($export.S, 'Math', { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * Math.sqrt(sum); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.imul.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.imul.js deleted file mode 100644 index 96e683d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.imul.js +++ /dev/null @@ -1,17 +0,0 @@ -// 20.2.2.18 Math.imul(x, y) -var $export = require('./_export'); -var $imul = Math.imul; - -// some WebKit versions fails with big numbers, some has wrong arity -$export($export.S + $export.F * require('./_fails')(function () { - return $imul(0xffffffff, 5) != -5 || $imul.length != 2; -}), 'Math', { - imul: function imul(x, y) { - var UINT16 = 0xffff; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.log10.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.log10.js deleted file mode 100644 index 9ee8ae6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.log10.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.21 Math.log10(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - log10: function log10(x) { - return Math.log(x) * Math.LOG10E; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.log1p.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.log1p.js deleted file mode 100644 index 6295980..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.log1p.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.20 Math.log1p(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { log1p: require('./_math-log1p') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.log2.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.log2.js deleted file mode 100644 index 03d127c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.log2.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.22 Math.log2(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - log2: function log2(x) { - return Math.log(x) / Math.LN2; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.sign.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.sign.js deleted file mode 100644 index 981f69e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.sign.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.28 Math.sign(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { sign: require('./_math-sign') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.sinh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.sinh.js deleted file mode 100644 index 5760633..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.sinh.js +++ /dev/null @@ -1,15 +0,0 @@ -// 20.2.2.30 Math.sinh(x) -var $export = require('./_export'); -var expm1 = require('./_math-expm1'); -var exp = Math.exp; - -// V8 near Chromium 38 has a problem with very small numbers -$export($export.S + $export.F * require('./_fails')(function () { - return !Math.sinh(-2e-17) != -2e-17; -}), 'Math', { - sinh: function sinh(x) { - return Math.abs(x = +x) < 1 - ? (expm1(x) - expm1(-x)) / 2 - : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.tanh.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.tanh.js deleted file mode 100644 index 0d3135b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.tanh.js +++ /dev/null @@ -1,12 +0,0 @@ -// 20.2.2.33 Math.tanh(x) -var $export = require('./_export'); -var expm1 = require('./_math-expm1'); -var exp = Math.exp; - -$export($export.S, 'Math', { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.math.trunc.js b/forward_engineering/node_modules/core-js/library/modules/es6.math.trunc.js deleted file mode 100644 index 35ddb80..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.math.trunc.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.34 Math.trunc(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - trunc: function trunc(it) { - return (it > 0 ? Math.floor : Math.ceil)(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.constructor.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.constructor.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.epsilon.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.epsilon.js deleted file mode 100644 index 34a2ec5..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.epsilon.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.1 Number.EPSILON -var $export = require('./_export'); - -$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-finite.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.is-finite.js deleted file mode 100644 index 8719da9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-finite.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.1.2.2 Number.isFinite(number) -var $export = require('./_export'); -var _isFinite = require('./_global').isFinite; - -$export($export.S, 'Number', { - isFinite: function isFinite(it) { - return typeof it == 'number' && _isFinite(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-integer.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.is-integer.js deleted file mode 100644 index f1ab5dc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.3 Number.isInteger(number) -var $export = require('./_export'); - -$export($export.S, 'Number', { isInteger: require('./_is-integer') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-nan.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.is-nan.js deleted file mode 100644 index 01d76ba..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-nan.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.1.2.4 Number.isNaN(number) -var $export = require('./_export'); - -$export($export.S, 'Number', { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-safe-integer.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.is-safe-integer.js deleted file mode 100644 index 004e7d1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.is-safe-integer.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.1.2.5 Number.isSafeInteger(number) -var $export = require('./_export'); -var isInteger = require('./_is-integer'); -var abs = Math.abs; - -$export($export.S, 'Number', { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1fffffffffffff; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.max-safe-integer.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.max-safe-integer.js deleted file mode 100644 index a4f248f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.max-safe-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.6 Number.MAX_SAFE_INTEGER -var $export = require('./_export'); - -$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.min-safe-integer.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.min-safe-integer.js deleted file mode 100644 index 34df374..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.min-safe-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.10 Number.MIN_SAFE_INTEGER -var $export = require('./_export'); - -$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-float.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-float.js deleted file mode 100644 index 317c431..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseFloat = require('./_parse-float'); -// 20.1.2.12 Number.parseFloat(string) -$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-int.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-int.js deleted file mode 100644 index cb48da2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseInt = require('./_parse-int'); -// 20.1.2.13 Number.parseInt(string, radix) -$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.to-fixed.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.to-fixed.js deleted file mode 100644 index 2bf78af..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.to-fixed.js +++ /dev/null @@ -1,114 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toInteger = require('./_to-integer'); -var aNumberValue = require('./_a-number-value'); -var repeat = require('./_string-repeat'); -var $toFixed = 1.0.toFixed; -var floor = Math.floor; -var data = [0, 0, 0, 0, 0, 0]; -var ERROR = 'Number.toFixed: incorrect invocation!'; -var ZERO = '0'; - -var multiply = function (n, c) { - var i = -1; - var c2 = c; - while (++i < 6) { - c2 += n * data[i]; - data[i] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } -}; -var divide = function (n) { - var i = 6; - var c = 0; - while (--i >= 0) { - c += data[i]; - data[i] = floor(c / n); - c = (c % n) * 1e7; - } -}; -var numToString = function () { - var i = 6; - var s = ''; - while (--i >= 0) { - if (s !== '' || i === 0 || data[i] !== 0) { - var t = String(data[i]); - s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t; - } - } return s; -}; -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -$export($export.P + $export.F * (!!$toFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !require('./_fails')(function () { - // V8 ~ Android 4.3- - $toFixed.call({}); -})), 'Number', { - toFixed: function toFixed(fractionDigits) { - var x = aNumberValue(this, ERROR); - var f = toInteger(fractionDigits); - var s = ''; - var m = ZERO; - var e, z, j, k; - if (f < 0 || f > 20) throw RangeError(ERROR); - // eslint-disable-next-line no-self-compare - if (x != x) return 'NaN'; - if (x <= -1e21 || x >= 1e21) return String(x); - if (x < 0) { - s = '-'; - x = -x; - } - if (x > 1e-21) { - e = log(x * pow(2, 69, 1)) - 69; - z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = f; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - m = numToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - m = numToString() + repeat.call(ZERO, f); - } - } - if (f > 0) { - k = m.length; - m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); - } else { - m = s + m; - } return m; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.number.to-precision.js b/forward_engineering/node_modules/core-js/library/modules/es6.number.to-precision.js deleted file mode 100644 index 0d92527..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.number.to-precision.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $fails = require('./_fails'); -var aNumberValue = require('./_a-number-value'); -var $toPrecision = 1.0.toPrecision; - -$export($export.P + $export.F * ($fails(function () { - // IE7- - return $toPrecision.call(1, undefined) !== '1'; -}) || !$fails(function () { - // V8 ~ Android 4.3- - $toPrecision.call({}); -})), 'Number', { - toPrecision: function toPrecision(precision) { - var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); - return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.assign.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.assign.js deleted file mode 100644 index d28085a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.assign.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.1.3.1 Object.assign(target, source) -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.create.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.create.js deleted file mode 100644 index 70627d6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.create.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -$export($export.S, 'Object', { create: require('./_object-create') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.define-properties.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.define-properties.js deleted file mode 100644 index 5ec3421..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.define-properties.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties) -$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperties: require('./_object-dps') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.define-property.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.define-property.js deleted file mode 100644 index 1206858..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) -$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.freeze.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.freeze.js deleted file mode 100644 index 0856ce9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.freeze.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.5 Object.freeze(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('freeze', function ($freeze) { - return function freeze(it) { - return $freeze && isObject(it) ? $freeze(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js deleted file mode 100644 index 9df2141..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) -var toIObject = require('./_to-iobject'); -var $getOwnPropertyDescriptor = require('./_object-gopd').f; - -require('./_object-sap')('getOwnPropertyDescriptor', function () { - return function getOwnPropertyDescriptor(it, key) { - return $getOwnPropertyDescriptor(toIObject(it), key); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-names.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-names.js deleted file mode 100644 index 172f51c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-own-property-names.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.1.2.7 Object.getOwnPropertyNames(O) -require('./_object-sap')('getOwnPropertyNames', function () { - return require('./_object-gopn-ext').f; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-prototype-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.get-prototype-of.js deleted file mode 100644 index 8fe2728..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.get-prototype-of.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.9 Object.getPrototypeOf(O) -var toObject = require('./_to-object'); -var $getPrototypeOf = require('./_object-gpo'); - -require('./_object-sap')('getPrototypeOf', function () { - return function getPrototypeOf(it) { - return $getPrototypeOf(toObject(it)); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-extensible.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.is-extensible.js deleted file mode 100644 index 5cd4575..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-extensible.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.11 Object.isExtensible(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isExtensible', function ($isExtensible) { - return function isExtensible(it) { - return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-frozen.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.is-frozen.js deleted file mode 100644 index 0ceeabb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-frozen.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.12 Object.isFrozen(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isFrozen', function ($isFrozen) { - return function isFrozen(it) { - return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-sealed.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.is-sealed.js deleted file mode 100644 index 7fa8dde..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.is-sealed.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.13 Object.isSealed(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isSealed', function ($isSealed) { - return function isSealed(it) { - return isObject(it) ? $isSealed ? $isSealed(it) : false : true; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.is.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.is.js deleted file mode 100644 index 204d703..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.is.js +++ /dev/null @@ -1,3 +0,0 @@ -// 19.1.3.10 Object.is(value1, value2) -var $export = require('./_export'); -$export($export.S, 'Object', { is: require('./_same-value') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.keys.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.keys.js deleted file mode 100644 index e9dade7..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.keys.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.14 Object.keys(O) -var toObject = require('./_to-object'); -var $keys = require('./_object-keys'); - -require('./_object-sap')('keys', function () { - return function keys(it) { - return $keys(toObject(it)); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.prevent-extensions.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.prevent-extensions.js deleted file mode 100644 index 2f72918..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.prevent-extensions.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.15 Object.preventExtensions(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('preventExtensions', function ($preventExtensions) { - return function preventExtensions(it) { - return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.seal.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.seal.js deleted file mode 100644 index 12c3f6a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.seal.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.17 Object.seal(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('seal', function ($seal) { - return function seal(it) { - return $seal && isObject(it) ? $seal(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.set-prototype-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.set-prototype-of.js deleted file mode 100644 index 461dbd2..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.object.set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -// 19.1.3.19 Object.setPrototypeOf(O, proto) -var $export = require('./_export'); -$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.object.to-string.js b/forward_engineering/node_modules/core-js/library/modules/es6.object.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.parse-float.js b/forward_engineering/node_modules/core-js/library/modules/es6.parse-float.js deleted file mode 100644 index cbf50ea..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseFloat = require('./_parse-float'); -// 18.2.4 parseFloat(string) -$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.parse-int.js b/forward_engineering/node_modules/core-js/library/modules/es6.parse-int.js deleted file mode 100644 index 7ea358e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseInt = require('./_parse-int'); -// 18.2.5 parseInt(string, radix) -$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.promise.js b/forward_engineering/node_modules/core-js/library/modules/es6.promise.js deleted file mode 100644 index b0ff3bf..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.promise.js +++ /dev/null @@ -1,286 +0,0 @@ -'use strict'; -var LIBRARY = require('./_library'); -var global = require('./_global'); -var ctx = require('./_ctx'); -var classof = require('./_classof'); -var $export = require('./_export'); -var isObject = require('./_is-object'); -var aFunction = require('./_a-function'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var speciesConstructor = require('./_species-constructor'); -var task = require('./_task').set; -var microtask = require('./_microtask')(); -var newPromiseCapabilityModule = require('./_new-promise-capability'); -var perform = require('./_perform'); -var userAgent = require('./_user-agent'); -var promiseResolve = require('./_promise-resolve'); -var PROMISE = 'Promise'; -var TypeError = global.TypeError; -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8 || ''; -var $Promise = global[PROMISE]; -var isNode = classof(process) == 'process'; -var empty = function () { /* empty */ }; -var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; -var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - -var USE_NATIVE = !!function () { - try { - // correct subclassing with @@species support - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) { - exec(empty, empty); - }; - // unhandled rejections tracking support, NodeJS Promise without it fails @@species test - return (isNode || typeof PromiseRejectionEvent == 'function') - && promise.then(empty) instanceof FakePromise - // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // we can't detect it synchronously, so just check versions - && v8.indexOf('6.6') !== 0 - && userAgent.indexOf('Chrome/66') === -1; - } catch (e) { /* empty */ } -}(); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; -var notify = function (promise, isReject) { - if (promise._n) return; - promise._n = true; - var chain = promise._c; - microtask(function () { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function (reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) onHandleUnhandled(promise); - promise._h = 1; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // may throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (e) { - if (domain && !exited) domain.exit(); - reject(e); - } - }; - while (chain.length > i) run(chain[i++]); // variable length - can't use forEach - promise._c = []; - promise._n = false; - if (isReject && !promise._h) onUnhandled(promise); - }); -}; -var onUnhandled = function (promise) { - task.call(global, function () { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console; - if (unhandled) { - result = perform(function () { - if (isNode) { - process.emit('unhandledRejection', value, promise); - } else if (handler = global.onunhandledrejection) { - handler({ promise: promise, reason: value }); - } else if ((console = global.console) && console.error) { - console.error('Unhandled promise rejection', value); - } - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } promise._a = undefined; - if (unhandled && result.e) throw result.v; - }); -}; -var isUnhandled = function (promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; -}; -var onHandleUnhandled = function (promise) { - task.call(global, function () { - var handler; - if (isNode) { - process.emit('rejectionHandled', promise); - } else if (handler = global.onrejectionhandled) { - handler({ promise: promise, reason: promise._v }); - } - }); -}; -var $reject = function (value) { - var promise = this; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - promise._v = value; - promise._s = 2; - if (!promise._a) promise._a = promise._c.slice(); - notify(promise, true); -}; -var $resolve = function (value) { - var promise = this; - var then; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function () { - var wrapper = { _w: promise, _d: false }; // wrap - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); - } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); - } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); // wrap - } -}; - -// constructor polyfill -if (!USE_NATIVE) { - // 25.4.3.1 Promise(executor) - $Promise = function Promise(executor) { - anInstance(this, $Promise, PROMISE, '_h'); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - this._c = []; // <- awaiting reactions - this._a = undefined; // <- checked in isUnhandled reactions - this._s = 0; // <- state - this._d = false; // <- done - this._v = undefined; // <- value - this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled - this._n = false; // <- notify - }; - Internal.prototype = require('./_redefine-all')($Promise.prototype, { - // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = isNode ? process.domain : undefined; - this._c.push(reaction); - if (this._a) this._a.push(reaction); - if (this._s) notify(this, false); - return reaction.promise; - }, - // 25.4.5.1 Promise.prototype.catch(onRejected) - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === $Promise || C === Wrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); -require('./_set-to-string-tag')($Promise, PROMISE); -require('./_set-species')(PROMISE); -Wrapper = require('./_core')[PROMISE]; - -// statics -$export($export.S + $export.F * !USE_NATIVE, PROMISE, { - // 25.4.4.5 Promise.reject(r) - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } -}); -$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - // 25.4.4.6 Promise.resolve(x) - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } -}); -$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) { - $Promise.all(iter)['catch'](empty); -})), PROMISE, { - // 25.4.4.1 Promise.all(iterable) - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function (promise) { - var $index = index++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - C.resolve(promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) reject(result.v); - return capability.promise; - }, - // 25.4.4.4 Promise.race(iterable) - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - forOf(iterable, false, function (promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) reject(result.v); - return capability.promise; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.apply.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.apply.js deleted file mode 100644 index 3b9c03a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.apply.js +++ /dev/null @@ -1,16 +0,0 @@ -// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var rApply = (require('./_global').Reflect || {}).apply; -var fApply = Function.apply; -// MS Edge argumentsList argument is optional -$export($export.S + $export.F * !require('./_fails')(function () { - rApply(function () { /* empty */ }); -}), 'Reflect', { - apply: function apply(target, thisArgument, argumentsList) { - var T = aFunction(target); - var L = anObject(argumentsList); - return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.construct.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.construct.js deleted file mode 100644 index 380addb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.construct.js +++ /dev/null @@ -1,47 +0,0 @@ -// 26.1.2 Reflect.construct(target, argumentsList [, newTarget]) -var $export = require('./_export'); -var create = require('./_object-create'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var fails = require('./_fails'); -var bind = require('./_bind'); -var rConstruct = (require('./_global').Reflect || {}).construct; - -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(rConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - rConstruct(function () { /* empty */ }); -}); - -$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.define-property.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.define-property.js deleted file mode 100644 index be7fbde..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.define-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes) -var dP = require('./_object-dp'); -var $export = require('./_export'); -var anObject = require('./_an-object'); -var toPrimitive = require('./_to-primitive'); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -$export($export.S + $export.F * require('./_fails')(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 }); -}), 'Reflect', { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - propertyKey = toPrimitive(propertyKey, true); - anObject(attributes); - try { - dP.f(target, propertyKey, attributes); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.delete-property.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.delete-property.js deleted file mode 100644 index 0902b38..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.delete-property.js +++ /dev/null @@ -1,11 +0,0 @@ -// 26.1.4 Reflect.deleteProperty(target, propertyKey) -var $export = require('./_export'); -var gOPD = require('./_object-gopd').f; -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - deleteProperty: function deleteProperty(target, propertyKey) { - var desc = gOPD(anObject(target), propertyKey); - return desc && !desc.configurable ? false : delete target[propertyKey]; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.enumerate.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.enumerate.js deleted file mode 100644 index 9e7c76a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.enumerate.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -// 26.1.5 Reflect.enumerate(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var Enumerate = function (iterated) { - this._t = anObject(iterated); // target - this._i = 0; // next index - var keys = this._k = []; // keys - var key; - for (key in iterated) keys.push(key); -}; -require('./_iter-create')(Enumerate, 'Object', function () { - var that = this; - var keys = that._k; - var key; - do { - if (that._i >= keys.length) return { value: undefined, done: true }; - } while (!((key = keys[that._i++]) in that._t)); - return { value: key, done: false }; -}); - -$export($export.S, 'Reflect', { - enumerate: function enumerate(target) { - return new Enumerate(target); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js deleted file mode 100644 index e1299f9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js +++ /dev/null @@ -1,10 +0,0 @@ -// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey) -var gOPD = require('./_object-gopd'); -var $export = require('./_export'); -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return gOPD.f(anObject(target), propertyKey); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js deleted file mode 100644 index 28351d4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js +++ /dev/null @@ -1,10 +0,0 @@ -// 26.1.8 Reflect.getPrototypeOf(target) -var $export = require('./_export'); -var getProto = require('./_object-gpo'); -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - getPrototypeOf: function getPrototypeOf(target) { - return getProto(anObject(target)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get.js deleted file mode 100644 index a7ee766..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.get.js +++ /dev/null @@ -1,21 +0,0 @@ -// 26.1.6 Reflect.get(target, propertyKey [, receiver]) -var gOPD = require('./_object-gopd'); -var getPrototypeOf = require('./_object-gpo'); -var has = require('./_has'); -var $export = require('./_export'); -var isObject = require('./_is-object'); -var anObject = require('./_an-object'); - -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var desc, proto; - if (anObject(target) === receiver) return target[propertyKey]; - if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value') - ? desc.value - : desc.get !== undefined - ? desc.get.call(receiver) - : undefined; - if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver); -} - -$export($export.S, 'Reflect', { get: get }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.has.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.has.js deleted file mode 100644 index 4f5efa9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.has.js +++ /dev/null @@ -1,8 +0,0 @@ -// 26.1.9 Reflect.has(target, propertyKey) -var $export = require('./_export'); - -$export($export.S, 'Reflect', { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.is-extensible.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.is-extensible.js deleted file mode 100644 index 700f938..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.is-extensible.js +++ /dev/null @@ -1,11 +0,0 @@ -// 26.1.10 Reflect.isExtensible(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var $isExtensible = Object.isExtensible; - -$export($export.S, 'Reflect', { - isExtensible: function isExtensible(target) { - anObject(target); - return $isExtensible ? $isExtensible(target) : true; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.own-keys.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.own-keys.js deleted file mode 100644 index 9f2424a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.own-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -// 26.1.11 Reflect.ownKeys(target) -var $export = require('./_export'); - -$export($export.S, 'Reflect', { ownKeys: require('./_own-keys') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js deleted file mode 100644 index e1037fa..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js +++ /dev/null @@ -1,16 +0,0 @@ -// 26.1.12 Reflect.preventExtensions(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var $preventExtensions = Object.preventExtensions; - -$export($export.S, 'Reflect', { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - if ($preventExtensions) $preventExtensions(target); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js deleted file mode 100644 index 5dae901..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js +++ /dev/null @@ -1,15 +0,0 @@ -// 26.1.14 Reflect.setPrototypeOf(target, proto) -var $export = require('./_export'); -var setProto = require('./_set-proto'); - -if (setProto) $export($export.S, 'Reflect', { - setPrototypeOf: function setPrototypeOf(target, proto) { - setProto.check(target, proto); - try { - setProto.set(target, proto); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set.js b/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set.js deleted file mode 100644 index d809d7a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.reflect.set.js +++ /dev/null @@ -1,33 +0,0 @@ -// 26.1.13 Reflect.set(target, propertyKey, V [, receiver]) -var dP = require('./_object-dp'); -var gOPD = require('./_object-gopd'); -var getPrototypeOf = require('./_object-gpo'); -var has = require('./_has'); -var $export = require('./_export'); -var createDesc = require('./_property-desc'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); - -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDesc = gOPD.f(anObject(target), propertyKey); - var existingDescriptor, proto; - if (!ownDesc) { - if (isObject(proto = getPrototypeOf(target))) { - return set(proto, propertyKey, V, receiver); - } - ownDesc = createDesc(0); - } - if (has(ownDesc, 'value')) { - if (ownDesc.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = gOPD.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - dP.f(receiver, propertyKey, existingDescriptor); - } else dP.f(receiver, propertyKey, createDesc(0, V)); - return true; - } - return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true); -} - -$export($export.S, 'Reflect', { set: set }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.constructor.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.constructor.js deleted file mode 100644 index e85e314..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.constructor.js +++ /dev/null @@ -1 +0,0 @@ -require('./_set-species')('RegExp'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.exec.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.exec.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.flags.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.flags.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.match.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.match.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.replace.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.replace.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.search.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.search.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.split.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.split.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.regexp.to-string.js b/forward_engineering/node_modules/core-js/library/modules/es6.regexp.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.set.js b/forward_engineering/node_modules/core-js/library/modules/es6.set.js deleted file mode 100644 index 55b8bdd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.set.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var strong = require('./_collection-strong'); -var validate = require('./_validate-collection'); -var SET = 'Set'; - -// 23.2 Set Objects -module.exports = require('./_collection')(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); - } -}, strong); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.anchor.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.anchor.js deleted file mode 100644 index 3493e54..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.anchor.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.2 String.prototype.anchor(name) -require('./_string-html')('anchor', function (createHTML) { - return function anchor(name) { - return createHTML(this, 'a', 'name', name); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.big.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.big.js deleted file mode 100644 index 38aab34..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.big.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.3 String.prototype.big() -require('./_string-html')('big', function (createHTML) { - return function big() { - return createHTML(this, 'big', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.blink.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.blink.js deleted file mode 100644 index 6188d96..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.blink.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.4 String.prototype.blink() -require('./_string-html')('blink', function (createHTML) { - return function blink() { - return createHTML(this, 'blink', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.bold.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.bold.js deleted file mode 100644 index ff3ecb9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.bold.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.5 String.prototype.bold() -require('./_string-html')('bold', function (createHTML) { - return function bold() { - return createHTML(this, 'b', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.code-point-at.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.code-point-at.js deleted file mode 100644 index e39b8c5..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.code-point-at.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $at = require('./_string-at')(false); -$export($export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) - codePointAt: function codePointAt(pos) { - return $at(this, pos); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.ends-with.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.ends-with.js deleted file mode 100644 index 0656888..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.ends-with.js +++ /dev/null @@ -1,20 +0,0 @@ -// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition]) -'use strict'; -var $export = require('./_export'); -var toLength = require('./_to-length'); -var context = require('./_string-context'); -var ENDS_WITH = 'endsWith'; -var $endsWith = ''[ENDS_WITH]; - -$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = context(this, searchString, ENDS_WITH); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len); - var search = String(searchString); - return $endsWith - ? $endsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.fixed.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.fixed.js deleted file mode 100644 index d4a60f3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.fixed.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.6 String.prototype.fixed() -require('./_string-html')('fixed', function (createHTML) { - return function fixed() { - return createHTML(this, 'tt', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.fontcolor.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.fontcolor.js deleted file mode 100644 index f7b9595..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.fontcolor.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.7 String.prototype.fontcolor(color) -require('./_string-html')('fontcolor', function (createHTML) { - return function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.fontsize.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.fontsize.js deleted file mode 100644 index f4cc20a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.fontsize.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.8 String.prototype.fontsize(size) -require('./_string-html')('fontsize', function (createHTML) { - return function fontsize(size) { - return createHTML(this, 'font', 'size', size); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.from-code-point.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.from-code-point.js deleted file mode 100644 index bece66e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.from-code-point.js +++ /dev/null @@ -1,23 +0,0 @@ -var $export = require('./_export'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var fromCharCode = String.fromCharCode; -var $fromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var res = []; - var aLen = arguments.length; - var i = 0; - var code; - while (aLen > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point'); - res.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) - ); - } return res.join(''); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.includes.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.includes.js deleted file mode 100644 index 28d1741..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.includes.js +++ /dev/null @@ -1,12 +0,0 @@ -// 21.1.3.7 String.prototype.includes(searchString, position = 0) -'use strict'; -var $export = require('./_export'); -var context = require('./_string-context'); -var INCLUDES = 'includes'; - -$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', { - includes: function includes(searchString /* , position = 0 */) { - return !!~context(this, searchString, INCLUDES) - .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.italics.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.italics.js deleted file mode 100644 index ed4cc3b..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.italics.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.9 String.prototype.italics() -require('./_string-html')('italics', function (createHTML) { - return function italics() { - return createHTML(this, 'i', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.iterator.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.iterator.js deleted file mode 100644 index 5d84c7f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.iterator.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $at = require('./_string-at')(true); - -// 21.1.3.27 String.prototype[@@iterator]() -require('./_iter-define')(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.link.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.link.js deleted file mode 100644 index d0255ed..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.link.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.10 String.prototype.link(url) -require('./_string-html')('link', function (createHTML) { - return function link(url) { - return createHTML(this, 'a', 'href', url); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.raw.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.raw.js deleted file mode 100644 index aa40ff6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.raw.js +++ /dev/null @@ -1,18 +0,0 @@ -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var toLength = require('./_to-length'); - -$export($export.S, 'String', { - // 21.1.2.4 String.raw(callSite, ...substitutions) - raw: function raw(callSite) { - var tpl = toIObject(callSite.raw); - var len = toLength(tpl.length); - var aLen = arguments.length; - var res = []; - var i = 0; - while (len > i) { - res.push(String(tpl[i++])); - if (i < aLen) res.push(String(arguments[i])); - } return res.join(''); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.repeat.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.repeat.js deleted file mode 100644 index 08412d9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.repeat.js +++ /dev/null @@ -1,6 +0,0 @@ -var $export = require('./_export'); - -$export($export.P, 'String', { - // 21.1.3.13 String.prototype.repeat(count) - repeat: require('./_string-repeat') -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.small.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.small.js deleted file mode 100644 index 941e4a7..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.small.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.11 String.prototype.small() -require('./_string-html')('small', function (createHTML) { - return function small() { - return createHTML(this, 'small', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.starts-with.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.starts-with.js deleted file mode 100644 index c172376..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.starts-with.js +++ /dev/null @@ -1,18 +0,0 @@ -// 21.1.3.18 String.prototype.startsWith(searchString [, position ]) -'use strict'; -var $export = require('./_export'); -var toLength = require('./_to-length'); -var context = require('./_string-context'); -var STARTS_WITH = 'startsWith'; -var $startsWith = ''[STARTS_WITH]; - -$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = context(this, searchString, STARTS_WITH); - var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return $startsWith - ? $startsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.strike.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.strike.js deleted file mode 100644 index 66055bc..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.strike.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.12 String.prototype.strike() -require('./_string-html')('strike', function (createHTML) { - return function strike() { - return createHTML(this, 'strike', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.sub.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.sub.js deleted file mode 100644 index e295a27..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.sub.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.13 String.prototype.sub() -require('./_string-html')('sub', function (createHTML) { - return function sub() { - return createHTML(this, 'sub', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.sup.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.sup.js deleted file mode 100644 index 125a989..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.sup.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.14 String.prototype.sup() -require('./_string-html')('sup', function (createHTML) { - return function sup() { - return createHTML(this, 'sup', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.string.trim.js b/forward_engineering/node_modules/core-js/library/modules/es6.string.trim.js deleted file mode 100644 index 02b8a6c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.string.trim.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// 21.1.3.25 String.prototype.trim() -require('./_string-trim')('trim', function ($trim) { - return function trim() { - return $trim(this, 3); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.symbol.js b/forward_engineering/node_modules/core-js/library/modules/es6.symbol.js deleted file mode 100644 index 52dbbc8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.symbol.js +++ /dev/null @@ -1,246 +0,0 @@ -'use strict'; -// ECMAScript 6 symbols shim -var global = require('./_global'); -var has = require('./_has'); -var DESCRIPTORS = require('./_descriptors'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var META = require('./_meta').KEY; -var $fails = require('./_fails'); -var shared = require('./_shared'); -var setToStringTag = require('./_set-to-string-tag'); -var uid = require('./_uid'); -var wks = require('./_wks'); -var wksExt = require('./_wks-ext'); -var wksDefine = require('./_wks-define'); -var enumKeys = require('./_enum-keys'); -var isArray = require('./_is-array'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var toObject = require('./_to-object'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var createDesc = require('./_property-desc'); -var _create = require('./_object-create'); -var gOPNExt = require('./_object-gopn-ext'); -var $GOPD = require('./_object-gopd'); -var $GOPS = require('./_object-gops'); -var $DP = require('./_object-dp'); -var $keys = require('./_object-keys'); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames; - require('./_object-pie').f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !require('./_library')) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); }); - -$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - } -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.array-buffer.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.array-buffer.js deleted file mode 100644 index b247370..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.array-buffer.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $typed = require('./_typed'); -var buffer = require('./_typed-buffer'); -var anObject = require('./_an-object'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -var isObject = require('./_is-object'); -var ArrayBuffer = require('./_global').ArrayBuffer; -var speciesConstructor = require('./_species-constructor'); -var $ArrayBuffer = buffer.ArrayBuffer; -var $DataView = buffer.DataView; -var $isView = $typed.ABV && ArrayBuffer.isView; -var $slice = $ArrayBuffer.prototype.slice; -var VIEW = $typed.VIEW; -var ARRAY_BUFFER = 'ArrayBuffer'; - -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer }); - -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it) { - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); - -$export($export.P + $export.U + $export.F * require('./_fails')(function () { - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end) { - if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength; - var first = toAbsoluteIndex(start, len); - var fin = toAbsoluteIndex(end === undefined ? len : end, len); - var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first)); - var viewS = new $DataView(this); - var viewT = new $DataView(result); - var index = 0; - while (first < fin) { - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -require('./_set-species')(ARRAY_BUFFER); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.data-view.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.data-view.js deleted file mode 100644 index d0e2353..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.data-view.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -$export($export.G + $export.W + $export.F * !require('./_typed').ABV, { - DataView: require('./_typed-buffer').DataView -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.float32-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.float32-array.js deleted file mode 100644 index f497006..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.float32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Float32', 4, function (init) { - return function Float32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.float64-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.float64-array.js deleted file mode 100644 index 85dedcd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.float64-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Float64', 8, function (init) { - return function Float64Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int16-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.int16-array.js deleted file mode 100644 index b20ed04..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int16', 2, function (init) { - return function Int16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int32-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.int32-array.js deleted file mode 100644 index c7e6ae0..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int32', 4, function (init) { - return function Int32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int8-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.int8-array.js deleted file mode 100644 index 58ab9f3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.int8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int8', 1, function (init) { - return function Int8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint16-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint16-array.js deleted file mode 100644 index 992805d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint16', 2, function (init) { - return function Uint16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint32-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint32-array.js deleted file mode 100644 index 5c44424..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint32', 4, function (init) { - return function Uint32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-array.js deleted file mode 100644 index 465cdc8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint8', 1, function (init) { - return function Uint8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js b/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js deleted file mode 100644 index a84a1c1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint8', 1, function (init) { - return function Uint8ClampedArray(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}, true); diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.weak-map.js b/forward_engineering/node_modules/core-js/library/modules/es6.weak-map.js deleted file mode 100644 index 3560521..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.weak-map.js +++ /dev/null @@ -1,60 +0,0 @@ -'use strict'; -var global = require('./_global'); -var each = require('./_array-methods')(0); -var redefine = require('./_redefine'); -var meta = require('./_meta'); -var assign = require('./_object-assign'); -var weak = require('./_collection-weak'); -var isObject = require('./_is-object'); -var validate = require('./_validate-collection'); -var NATIVE_WEAK_MAP = require('./_validate-collection'); -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var InternalMap; - -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; - -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); -} diff --git a/forward_engineering/node_modules/core-js/library/modules/es6.weak-set.js b/forward_engineering/node_modules/core-js/library/modules/es6.weak-set.js deleted file mode 100644 index 18a81e5..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es6.weak-set.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var weak = require('./_collection-weak'); -var validate = require('./_validate-collection'); -var WEAK_SET = 'WeakSet'; - -// 23.4 WeakSet Objects -require('./_collection')(WEAK_SET, function (get) { - return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return weak.def(validate(this, WEAK_SET), value, true); - } -}, weak, false, true); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.array.flat-map.js b/forward_engineering/node_modules/core-js/library/modules/es7.array.flat-map.js deleted file mode 100644 index 2a210cd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.array.flat-map.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap -var $export = require('./_export'); -var flattenIntoArray = require('./_flatten-into-array'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var aFunction = require('./_a-function'); -var arraySpeciesCreate = require('./_array-species-create'); - -$export($export.P, 'Array', { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen, A; - aFunction(callbackfn); - sourceLen = toLength(O.length); - A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); - return A; - } -}); - -require('./_add-to-unscopables')('flatMap'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.array.flatten.js b/forward_engineering/node_modules/core-js/library/modules/es7.array.flatten.js deleted file mode 100644 index 9019b2d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.array.flatten.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten -var $export = require('./_export'); -var flattenIntoArray = require('./_flatten-into-array'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var toInteger = require('./_to-integer'); -var arraySpeciesCreate = require('./_array-species-create'); - -$export($export.P, 'Array', { - flatten: function flatten(/* depthArg = 1 */) { - var depthArg = arguments[0]; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); - -require('./_add-to-unscopables')('flatten'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.array.includes.js b/forward_engineering/node_modules/core-js/library/modules/es7.array.includes.js deleted file mode 100644 index 1b77f0e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.array.includes.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://github.com/tc39/Array.prototype.includes -var $export = require('./_export'); -var $includes = require('./_array-includes')(true); - -$export($export.P, 'Array', { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -require('./_add-to-unscopables')('includes'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.asap.js b/forward_engineering/node_modules/core-js/library/modules/es7.asap.js deleted file mode 100644 index d36f7c7..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.asap.js +++ /dev/null @@ -1,12 +0,0 @@ -// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask -var $export = require('./_export'); -var microtask = require('./_microtask')(); -var process = require('./_global').process; -var isNode = require('./_cof')(process) == 'process'; - -$export($export.G, { - asap: function asap(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.error.is-error.js b/forward_engineering/node_modules/core-js/library/modules/es7.error.is-error.js deleted file mode 100644 index ba94f5d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.error.is-error.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/ljharb/proposal-is-error -var $export = require('./_export'); -var cof = require('./_cof'); - -$export($export.S, 'Error', { - isError: function isError(it) { - return cof(it) === 'Error'; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.global.js b/forward_engineering/node_modules/core-js/library/modules/es7.global.js deleted file mode 100644 index a315fd4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.global.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/tc39/proposal-global -var $export = require('./_export'); - -$export($export.G, { global: require('./_global') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.map.from.js b/forward_engineering/node_modules/core-js/library/modules/es7.map.from.js deleted file mode 100644 index a605737..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.map.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -require('./_set-collection-from')('Map'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.map.of.js b/forward_engineering/node_modules/core-js/library/modules/es7.map.of.js deleted file mode 100644 index a2bf1fe..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.map.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -require('./_set-collection-of')('Map'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.map.to-json.js b/forward_engineering/node_modules/core-js/library/modules/es7.map.to-json.js deleted file mode 100644 index 95a3569..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.map.to-json.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = require('./_export'); - -$export($export.P + $export.R, 'Map', { toJSON: require('./_collection-to-json')('Map') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.clamp.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.clamp.js deleted file mode 100644 index 319cda6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.clamp.js +++ /dev/null @@ -1,8 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { - clamp: function clamp(x, lower, upper) { - return Math.min(upper, Math.max(lower, x)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.deg-per-rad.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.deg-per-rad.js deleted file mode 100644 index 99b95bb..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.deg-per-rad.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.degrees.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.degrees.js deleted file mode 100644 index 6637d91..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.degrees.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var RAD_PER_DEG = 180 / Math.PI; - -$export($export.S, 'Math', { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.fscale.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.fscale.js deleted file mode 100644 index ad660a0..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.fscale.js +++ /dev/null @@ -1,10 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var scale = require('./_math-scale'); -var fround = require('./_math-fround'); - -$export($export.S, 'Math', { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.iaddh.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.iaddh.js deleted file mode 100644 index a331ba9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.iaddh.js +++ /dev/null @@ -1,11 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.imulh.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.imulh.js deleted file mode 100644 index 58d19f3..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.imulh.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - imulh: function imulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.isubh.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.isubh.js deleted file mode 100644 index de22793..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.isubh.js +++ /dev/null @@ -1,11 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.rad-per-deg.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.rad-per-deg.js deleted file mode 100644 index 6f70259..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.rad-per-deg.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.radians.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.radians.js deleted file mode 100644 index abd9575..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.radians.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var DEG_PER_RAD = Math.PI / 180; - -$export($export.S, 'Math', { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.scale.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.scale.js deleted file mode 100644 index 2866dcd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.scale.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { scale: require('./_math-scale') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.signbit.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.signbit.js deleted file mode 100644 index c256804..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.signbit.js +++ /dev/null @@ -1,7 +0,0 @@ -// http://jfbastien.github.io/papers/Math.signbit.html -var $export = require('./_export'); - -$export($export.S, 'Math', { signbit: function signbit(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0; -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.math.umulh.js b/forward_engineering/node_modules/core-js/library/modules/es7.math.umulh.js deleted file mode 100644 index 3ddfa46..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.math.umulh.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - umulh: function umulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.define-getter.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.define-getter.js deleted file mode 100644 index ffc6203..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.define-getter.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var aFunction = require('./_a-function'); -var $defineProperty = require('./_object-dp'); - -// B.2.2.2 Object.prototype.__defineGetter__(P, getter) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __defineGetter__: function __defineGetter__(P, getter) { - $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.define-setter.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.define-setter.js deleted file mode 100644 index 8ceefdd..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.define-setter.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var aFunction = require('./_a-function'); -var $defineProperty = require('./_object-dp'); - -// B.2.2.3 Object.prototype.__defineSetter__(P, setter) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __defineSetter__: function __defineSetter__(P, setter) { - $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.entries.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.entries.js deleted file mode 100644 index 2f83437..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.entries.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/tc39/proposal-object-values-entries -var $export = require('./_export'); -var $entries = require('./_object-to-array')(true); - -$export($export.S, 'Object', { - entries: function entries(it) { - return $entries(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js deleted file mode 100644 index b1ab72f..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js +++ /dev/null @@ -1,22 +0,0 @@ -// https://github.com/tc39/proposal-object-getownpropertydescriptors -var $export = require('./_export'); -var ownKeys = require('./_own-keys'); -var toIObject = require('./_to-iobject'); -var gOPD = require('./_object-gopd'); -var createProperty = require('./_create-property'); - -$export($export.S, 'Object', { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIObject(object); - var getDesc = gOPD.f; - var keys = ownKeys(O); - var result = {}; - var i = 0; - var key, desc; - while (keys.length > i) { - desc = getDesc(O, key = keys[i++]); - if (desc !== undefined) createProperty(result, key, desc); - } - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-getter.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-getter.js deleted file mode 100644 index f802229..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-getter.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var getPrototypeOf = require('./_object-gpo'); -var getOwnPropertyDescriptor = require('./_object-gopd').f; - -// B.2.2.4 Object.prototype.__lookupGetter__(P) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.get; - } while (O = getPrototypeOf(O)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-setter.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-setter.js deleted file mode 100644 index 8bf8b64..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.lookup-setter.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var getPrototypeOf = require('./_object-gpo'); -var getOwnPropertyDescriptor = require('./_object-gopd').f; - -// B.2.2.5 Object.prototype.__lookupSetter__(P) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.set; - } while (O = getPrototypeOf(O)); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.object.values.js b/forward_engineering/node_modules/core-js/library/modules/es7.object.values.js deleted file mode 100644 index d6f0952..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.object.values.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/tc39/proposal-object-values-entries -var $export = require('./_export'); -var $values = require('./_object-to-array')(false); - -$export($export.S, 'Object', { - values: function values(it) { - return $values(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.observable.js b/forward_engineering/node_modules/core-js/library/modules/es7.observable.js deleted file mode 100644 index 6dcb2c8..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.observable.js +++ /dev/null @@ -1,199 +0,0 @@ -'use strict'; -// https://github.com/zenparsing/es-observable -var $export = require('./_export'); -var global = require('./_global'); -var core = require('./_core'); -var microtask = require('./_microtask')(); -var OBSERVABLE = require('./_wks')('observable'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var anInstance = require('./_an-instance'); -var redefineAll = require('./_redefine-all'); -var hide = require('./_hide'); -var forOf = require('./_for-of'); -var RETURN = forOf.RETURN; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscription) { - var cleanup = subscription._c; - if (cleanup) { - subscription._c = undefined; - cleanup(); - } -}; - -var subscriptionClosed = function (subscription) { - return subscription._o === undefined; -}; - -var closeSubscription = function (subscription) { - if (!subscriptionClosed(subscription)) { - subscription._o = undefined; - cleanupSubscription(subscription); - } -}; - -var Subscription = function (observer, subscriber) { - anObject(observer); - this._c = undefined; - this._o = observer; - observer = new SubscriptionObserver(this); - try { - var cleanup = subscriber(observer); - var subscription = cleanup; - if (cleanup != null) { - if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); }; - else aFunction(cleanup); - this._c = cleanup; - } - } catch (e) { - observer.error(e); - return; - } if (subscriptionClosed(this)) cleanupSubscription(this); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { closeSubscription(this); } -}); - -var SubscriptionObserver = function (subscription) { - this._s = subscription; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - try { - var m = getMethod(observer.next); - if (m) return m.call(observer, value); - } catch (e) { - try { - closeSubscription(subscription); - } finally { - throw e; - } - } - } - }, - error: function error(value) { - var subscription = this._s; - if (subscriptionClosed(subscription)) throw value; - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.error); - if (!m) throw value; - value = m.call(observer, value); - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - }, - complete: function complete(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.complete); - value = m ? m.call(observer, value) : undefined; - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - } - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - return new Subscription(observer, this._f); - }, - forEach: function forEach(fn) { - var that = this; - return new (core.Promise || global.Promise)(function (resolve, reject) { - aFunction(fn); - var subscription = that.subscribe({ - next: function (value) { - try { - return fn(value); - } catch (e) { - reject(e); - subscription.unsubscribe(); - } - }, - error: reject, - complete: resolve - }); - }); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var method = getMethod(anObject(x)[OBSERVABLE]); - if (method) { - var observable = anObject(method.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - return new C(function (observer) { - var done = false; - microtask(function () { - if (!done) { - try { - if (forOf(x, false, function (it) { - observer.next(it); - if (done) return RETURN; - }) === RETURN) return; - } catch (e) { - if (done) throw e; - observer.error(e); - return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - }, - of: function of() { - for (var i = 0, l = arguments.length, items = new Array(l); i < l;) items[i] = arguments[i++]; - return new (typeof this === 'function' ? this : $Observable)(function (observer) { - var done = false; - microtask(function () { - if (!done) { - for (var j = 0; j < items.length; ++j) { - observer.next(items[j]); - if (done) return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - } -}); - -hide($Observable.prototype, OBSERVABLE, function () { return this; }); - -$export($export.G, { Observable: $Observable }); - -require('./_set-species')('Observable'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.promise.finally.js b/forward_engineering/node_modules/core-js/library/modules/es7.promise.finally.js deleted file mode 100644 index fa04b63..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.promise.finally.js +++ /dev/null @@ -1,20 +0,0 @@ -// https://github.com/tc39/proposal-promise-finally -'use strict'; -var $export = require('./_export'); -var core = require('./_core'); -var global = require('./_global'); -var speciesConstructor = require('./_species-constructor'); -var promiseResolve = require('./_promise-resolve'); - -$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) { - var C = speciesConstructor(this, core.Promise || global.Promise); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.promise.try.js b/forward_engineering/node_modules/core-js/library/modules/es7.promise.try.js deleted file mode 100644 index e816372..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.promise.try.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-promise-try -var $export = require('./_export'); -var newPromiseCapability = require('./_new-promise-capability'); -var perform = require('./_perform'); - -$export($export.S, 'Promise', { 'try': function (callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.define-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.define-metadata.js deleted file mode 100644 index ebef52c..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.define-metadata.js +++ /dev/null @@ -1,8 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var toMetaKey = metadata.key; -var ordinaryDefineOwnMetadata = metadata.set; - -metadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey)); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.delete-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.delete-metadata.js deleted file mode 100644 index 590ed53..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.delete-metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var toMetaKey = metadata.key; -var getOrCreateMetadataMap = metadata.map; -var store = metadata.store; - -metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata-keys.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata-keys.js deleted file mode 100644 index f344172..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata-keys.js +++ /dev/null @@ -1,19 +0,0 @@ -var Set = require('./es6.set'); -var from = require('./_array-from-iterable'); -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata.js deleted file mode 100644 index 58c278e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-metadata.js +++ /dev/null @@ -1,17 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryHasOwnMetadata = metadata.has; -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -metadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata-keys.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata-keys.js deleted file mode 100644 index 03e3201..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata-keys.js +++ /dev/null @@ -1,8 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata.js deleted file mode 100644 index 4a18b07..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.get-own-metadata.js +++ /dev/null @@ -1,9 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-metadata.js deleted file mode 100644 index b934bb4..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-metadata.js +++ /dev/null @@ -1,16 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -metadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-own-metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-own-metadata.js deleted file mode 100644 index 512850d..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.has-own-metadata.js +++ /dev/null @@ -1,9 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -metadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.metadata.js b/forward_engineering/node_modules/core-js/library/modules/es7.reflect.metadata.js deleted file mode 100644 index efb9a9e..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.reflect.metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var $metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var aFunction = require('./_a-function'); -var toMetaKey = $metadata.key; -var ordinaryDefineOwnMetadata = $metadata.set; - -$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, targetKey) { - ordinaryDefineOwnMetadata( - metadataKey, metadataValue, - (targetKey !== undefined ? anObject : aFunction)(target), - toMetaKey(targetKey) - ); - }; -} }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.set.from.js b/forward_engineering/node_modules/core-js/library/modules/es7.set.from.js deleted file mode 100644 index 26542b6..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.set.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -require('./_set-collection-from')('Set'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.set.of.js b/forward_engineering/node_modules/core-js/library/modules/es7.set.of.js deleted file mode 100644 index 2a50ad9..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.set.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -require('./_set-collection-of')('Set'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.set.to-json.js b/forward_engineering/node_modules/core-js/library/modules/es7.set.to-json.js deleted file mode 100644 index 95cbcfa..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.set.to-json.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = require('./_export'); - -$export($export.P + $export.R, 'Set', { toJSON: require('./_collection-to-json')('Set') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.at.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.at.js deleted file mode 100644 index 8b3ab98..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.at.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/mathiasbynens/String.prototype.at -var $export = require('./_export'); -var $at = require('./_string-at')(true); - -$export($export.P, 'String', { - at: function at(pos) { - return $at(this, pos); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.match-all.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.match-all.js deleted file mode 100644 index 7823703..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.match-all.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -// https://tc39.github.io/String.prototype.matchAll/ -var $export = require('./_export'); -var defined = require('./_defined'); -var toLength = require('./_to-length'); -var isRegExp = require('./_is-regexp'); -var getFlags = require('./_flags'); -var RegExpProto = RegExp.prototype; - -var $RegExpStringIterator = function (regexp, string) { - this._r = regexp; - this._s = string; -}; - -require('./_iter-create')($RegExpStringIterator, 'RegExp String', function next() { - var match = this._r.exec(this._s); - return { value: match, done: match === null }; -}); - -$export($export.P, 'String', { - matchAll: function matchAll(regexp) { - defined(this); - if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!'); - var S = String(this); - var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp); - var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags); - rx.lastIndex = toLength(regexp.lastIndex); - return new $RegExpStringIterator(rx, S); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-end.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-end.js deleted file mode 100644 index 5a531a1..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-end.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-string-pad-start-end -var $export = require('./_export'); -var $pad = require('./_string-pad'); -var userAgent = require('./_user-agent'); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-start.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-start.js deleted file mode 100644 index 729ed93..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.pad-start.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-string-pad-start-end -var $export = require('./_export'); -var $pad = require('./_string-pad'); -var userAgent = require('./_user-agent'); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); - } -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-left.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-left.js deleted file mode 100644 index 39a4b47..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-left.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -require('./_string-trim')('trimLeft', function ($trim) { - return function trimLeft() { - return $trim(this, 1); - }; -}, 'trimStart'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-right.js b/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-right.js deleted file mode 100644 index 7b7c452..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.string.trim-right.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -require('./_string-trim')('trimRight', function ($trim) { - return function trimRight() { - return $trim(this, 2); - }; -}, 'trimEnd'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.symbol.async-iterator.js b/forward_engineering/node_modules/core-js/library/modules/es7.symbol.async-iterator.js deleted file mode 100644 index f56dc2a..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.symbol.async-iterator.js +++ /dev/null @@ -1 +0,0 @@ -require('./_wks-define')('asyncIterator'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.symbol.observable.js b/forward_engineering/node_modules/core-js/library/modules/es7.symbol.observable.js deleted file mode 100644 index fc9a237..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.symbol.observable.js +++ /dev/null @@ -1 +0,0 @@ -require('./_wks-define')('observable'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.system.global.js b/forward_engineering/node_modules/core-js/library/modules/es7.system.global.js deleted file mode 100644 index 310a802..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.system.global.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/tc39/proposal-global -var $export = require('./_export'); - -$export($export.S, 'System', { global: require('./_global') }); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.from.js b/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.from.js deleted file mode 100644 index 1a01365..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -require('./_set-collection-from')('WeakMap'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.of.js b/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.of.js deleted file mode 100644 index 52c3f66..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.weak-map.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -require('./_set-collection-of')('WeakMap'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.from.js b/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.from.js deleted file mode 100644 index 493e5be..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -require('./_set-collection-from')('WeakSet'); diff --git a/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.of.js b/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.of.js deleted file mode 100644 index 5941e72..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/es7.weak-set.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -require('./_set-collection-of')('WeakSet'); diff --git a/forward_engineering/node_modules/core-js/library/modules/web.dom.iterable.js b/forward_engineering/node_modules/core-js/library/modules/web.dom.iterable.js deleted file mode 100644 index fc00afa..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/web.dom.iterable.js +++ /dev/null @@ -1,19 +0,0 @@ -require('./es6.array.iterator'); -var global = require('./_global'); -var hide = require('./_hide'); -var Iterators = require('./_iterators'); -var TO_STRING_TAG = require('./_wks')('toStringTag'); - -var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + - 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + - 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + - 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + - 'TextTrackList,TouchList').split(','); - -for (var i = 0; i < DOMIterables.length; i++) { - var NAME = DOMIterables[i]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = Iterators.Array; -} diff --git a/forward_engineering/node_modules/core-js/library/modules/web.immediate.js b/forward_engineering/node_modules/core-js/library/modules/web.immediate.js deleted file mode 100644 index 70f3e70..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/web.immediate.js +++ /dev/null @@ -1,6 +0,0 @@ -var $export = require('./_export'); -var $task = require('./_task'); -$export($export.G + $export.B, { - setImmediate: $task.set, - clearImmediate: $task.clear -}); diff --git a/forward_engineering/node_modules/core-js/library/modules/web.timers.js b/forward_engineering/node_modules/core-js/library/modules/web.timers.js deleted file mode 100644 index c879083..0000000 --- a/forward_engineering/node_modules/core-js/library/modules/web.timers.js +++ /dev/null @@ -1,20 +0,0 @@ -// ie9- setTimeout & setInterval additional parameters fix -var global = require('./_global'); -var $export = require('./_export'); -var userAgent = require('./_user-agent'); -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check -var wrap = function (set) { - return function (fn, time /* , ...args */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : false; - return set(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(this, args); - } : fn, time); - }; -}; -$export($export.G + $export.B + $export.F * MSIE, { - setTimeout: wrap(global.setTimeout), - setInterval: wrap(global.setInterval) -}); diff --git a/forward_engineering/node_modules/core-js/library/shim.js b/forward_engineering/node_modules/core-js/library/shim.js deleted file mode 100644 index e2d53f4..0000000 --- a/forward_engineering/node_modules/core-js/library/shim.js +++ /dev/null @@ -1,198 +0,0 @@ -require('./modules/es6.symbol'); -require('./modules/es6.object.create'); -require('./modules/es6.object.define-property'); -require('./modules/es6.object.define-properties'); -require('./modules/es6.object.get-own-property-descriptor'); -require('./modules/es6.object.get-prototype-of'); -require('./modules/es6.object.keys'); -require('./modules/es6.object.get-own-property-names'); -require('./modules/es6.object.freeze'); -require('./modules/es6.object.seal'); -require('./modules/es6.object.prevent-extensions'); -require('./modules/es6.object.is-frozen'); -require('./modules/es6.object.is-sealed'); -require('./modules/es6.object.is-extensible'); -require('./modules/es6.object.assign'); -require('./modules/es6.object.is'); -require('./modules/es6.object.set-prototype-of'); -require('./modules/es6.object.to-string'); -require('./modules/es6.function.bind'); -require('./modules/es6.function.name'); -require('./modules/es6.function.has-instance'); -require('./modules/es6.parse-int'); -require('./modules/es6.parse-float'); -require('./modules/es6.number.constructor'); -require('./modules/es6.number.to-fixed'); -require('./modules/es6.number.to-precision'); -require('./modules/es6.number.epsilon'); -require('./modules/es6.number.is-finite'); -require('./modules/es6.number.is-integer'); -require('./modules/es6.number.is-nan'); -require('./modules/es6.number.is-safe-integer'); -require('./modules/es6.number.max-safe-integer'); -require('./modules/es6.number.min-safe-integer'); -require('./modules/es6.number.parse-float'); -require('./modules/es6.number.parse-int'); -require('./modules/es6.math.acosh'); -require('./modules/es6.math.asinh'); -require('./modules/es6.math.atanh'); -require('./modules/es6.math.cbrt'); -require('./modules/es6.math.clz32'); -require('./modules/es6.math.cosh'); -require('./modules/es6.math.expm1'); -require('./modules/es6.math.fround'); -require('./modules/es6.math.hypot'); -require('./modules/es6.math.imul'); -require('./modules/es6.math.log10'); -require('./modules/es6.math.log1p'); -require('./modules/es6.math.log2'); -require('./modules/es6.math.sign'); -require('./modules/es6.math.sinh'); -require('./modules/es6.math.tanh'); -require('./modules/es6.math.trunc'); -require('./modules/es6.string.from-code-point'); -require('./modules/es6.string.raw'); -require('./modules/es6.string.trim'); -require('./modules/es6.string.iterator'); -require('./modules/es6.string.code-point-at'); -require('./modules/es6.string.ends-with'); -require('./modules/es6.string.includes'); -require('./modules/es6.string.repeat'); -require('./modules/es6.string.starts-with'); -require('./modules/es6.string.anchor'); -require('./modules/es6.string.big'); -require('./modules/es6.string.blink'); -require('./modules/es6.string.bold'); -require('./modules/es6.string.fixed'); -require('./modules/es6.string.fontcolor'); -require('./modules/es6.string.fontsize'); -require('./modules/es6.string.italics'); -require('./modules/es6.string.link'); -require('./modules/es6.string.small'); -require('./modules/es6.string.strike'); -require('./modules/es6.string.sub'); -require('./modules/es6.string.sup'); -require('./modules/es6.date.now'); -require('./modules/es6.date.to-json'); -require('./modules/es6.date.to-iso-string'); -require('./modules/es6.date.to-string'); -require('./modules/es6.date.to-primitive'); -require('./modules/es6.array.is-array'); -require('./modules/es6.array.from'); -require('./modules/es6.array.of'); -require('./modules/es6.array.join'); -require('./modules/es6.array.slice'); -require('./modules/es6.array.sort'); -require('./modules/es6.array.for-each'); -require('./modules/es6.array.map'); -require('./modules/es6.array.filter'); -require('./modules/es6.array.some'); -require('./modules/es6.array.every'); -require('./modules/es6.array.reduce'); -require('./modules/es6.array.reduce-right'); -require('./modules/es6.array.index-of'); -require('./modules/es6.array.last-index-of'); -require('./modules/es6.array.copy-within'); -require('./modules/es6.array.fill'); -require('./modules/es6.array.find'); -require('./modules/es6.array.find-index'); -require('./modules/es6.array.species'); -require('./modules/es6.array.iterator'); -require('./modules/es6.regexp.constructor'); -require('./modules/es6.regexp.exec'); -require('./modules/es6.regexp.to-string'); -require('./modules/es6.regexp.flags'); -require('./modules/es6.regexp.match'); -require('./modules/es6.regexp.replace'); -require('./modules/es6.regexp.search'); -require('./modules/es6.regexp.split'); -require('./modules/es6.promise'); -require('./modules/es6.map'); -require('./modules/es6.set'); -require('./modules/es6.weak-map'); -require('./modules/es6.weak-set'); -require('./modules/es6.typed.array-buffer'); -require('./modules/es6.typed.data-view'); -require('./modules/es6.typed.int8-array'); -require('./modules/es6.typed.uint8-array'); -require('./modules/es6.typed.uint8-clamped-array'); -require('./modules/es6.typed.int16-array'); -require('./modules/es6.typed.uint16-array'); -require('./modules/es6.typed.int32-array'); -require('./modules/es6.typed.uint32-array'); -require('./modules/es6.typed.float32-array'); -require('./modules/es6.typed.float64-array'); -require('./modules/es6.reflect.apply'); -require('./modules/es6.reflect.construct'); -require('./modules/es6.reflect.define-property'); -require('./modules/es6.reflect.delete-property'); -require('./modules/es6.reflect.enumerate'); -require('./modules/es6.reflect.get'); -require('./modules/es6.reflect.get-own-property-descriptor'); -require('./modules/es6.reflect.get-prototype-of'); -require('./modules/es6.reflect.has'); -require('./modules/es6.reflect.is-extensible'); -require('./modules/es6.reflect.own-keys'); -require('./modules/es6.reflect.prevent-extensions'); -require('./modules/es6.reflect.set'); -require('./modules/es6.reflect.set-prototype-of'); -require('./modules/es7.array.includes'); -require('./modules/es7.array.flat-map'); -require('./modules/es7.array.flatten'); -require('./modules/es7.string.at'); -require('./modules/es7.string.pad-start'); -require('./modules/es7.string.pad-end'); -require('./modules/es7.string.trim-left'); -require('./modules/es7.string.trim-right'); -require('./modules/es7.string.match-all'); -require('./modules/es7.symbol.async-iterator'); -require('./modules/es7.symbol.observable'); -require('./modules/es7.object.get-own-property-descriptors'); -require('./modules/es7.object.values'); -require('./modules/es7.object.entries'); -require('./modules/es7.object.define-getter'); -require('./modules/es7.object.define-setter'); -require('./modules/es7.object.lookup-getter'); -require('./modules/es7.object.lookup-setter'); -require('./modules/es7.map.to-json'); -require('./modules/es7.set.to-json'); -require('./modules/es7.map.of'); -require('./modules/es7.set.of'); -require('./modules/es7.weak-map.of'); -require('./modules/es7.weak-set.of'); -require('./modules/es7.map.from'); -require('./modules/es7.set.from'); -require('./modules/es7.weak-map.from'); -require('./modules/es7.weak-set.from'); -require('./modules/es7.global'); -require('./modules/es7.system.global'); -require('./modules/es7.error.is-error'); -require('./modules/es7.math.clamp'); -require('./modules/es7.math.deg-per-rad'); -require('./modules/es7.math.degrees'); -require('./modules/es7.math.fscale'); -require('./modules/es7.math.iaddh'); -require('./modules/es7.math.isubh'); -require('./modules/es7.math.imulh'); -require('./modules/es7.math.rad-per-deg'); -require('./modules/es7.math.radians'); -require('./modules/es7.math.scale'); -require('./modules/es7.math.umulh'); -require('./modules/es7.math.signbit'); -require('./modules/es7.promise.finally'); -require('./modules/es7.promise.try'); -require('./modules/es7.reflect.define-metadata'); -require('./modules/es7.reflect.delete-metadata'); -require('./modules/es7.reflect.get-metadata'); -require('./modules/es7.reflect.get-metadata-keys'); -require('./modules/es7.reflect.get-own-metadata'); -require('./modules/es7.reflect.get-own-metadata-keys'); -require('./modules/es7.reflect.has-metadata'); -require('./modules/es7.reflect.has-own-metadata'); -require('./modules/es7.reflect.metadata'); -require('./modules/es7.asap'); -require('./modules/es7.observable'); -require('./modules/web.timers'); -require('./modules/web.immediate'); -require('./modules/web.dom.iterable'); -module.exports = require('./modules/_core'); diff --git a/forward_engineering/node_modules/core-js/library/stage/0.js b/forward_engineering/node_modules/core-js/library/stage/0.js deleted file mode 100644 index 4aa5070..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/0.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../modules/es7.string.at'); -require('../modules/es7.map.to-json'); -require('../modules/es7.set.to-json'); -require('../modules/es7.error.is-error'); -require('../modules/es7.math.iaddh'); -require('../modules/es7.math.isubh'); -require('../modules/es7.math.imulh'); -require('../modules/es7.math.umulh'); -require('../modules/es7.asap'); -module.exports = require('./1'); diff --git a/forward_engineering/node_modules/core-js/library/stage/1.js b/forward_engineering/node_modules/core-js/library/stage/1.js deleted file mode 100644 index 5f634d8..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/1.js +++ /dev/null @@ -1,23 +0,0 @@ -require('../modules/es7.map.of'); -require('../modules/es7.set.of'); -require('../modules/es7.weak-map.of'); -require('../modules/es7.weak-set.of'); -require('../modules/es7.map.from'); -require('../modules/es7.set.from'); -require('../modules/es7.weak-map.from'); -require('../modules/es7.weak-set.from'); -require('../modules/es7.math.clamp'); -require('../modules/es7.math.deg-per-rad'); -require('../modules/es7.math.degrees'); -require('../modules/es7.math.fscale'); -require('../modules/es7.math.rad-per-deg'); -require('../modules/es7.math.radians'); -require('../modules/es7.math.scale'); -require('../modules/es7.math.signbit'); -require('../modules/es7.promise.try'); -require('../modules/es7.string.match-all'); -require('../modules/es7.symbol.observable'); -require('../modules/es7.observable'); -require('../modules/es7.array.flat-map'); -require('../modules/es7.array.flatten'); -module.exports = require('./2'); diff --git a/forward_engineering/node_modules/core-js/library/stage/2.js b/forward_engineering/node_modules/core-js/library/stage/2.js deleted file mode 100644 index d7aaa0e..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/2.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es7.string.trim-left'); -require('../modules/es7.string.trim-right'); -require('../modules/es7.symbol.async-iterator'); -module.exports = require('./3'); diff --git a/forward_engineering/node_modules/core-js/library/stage/3.js b/forward_engineering/node_modules/core-js/library/stage/3.js deleted file mode 100644 index 9afd07f..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/3.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es7.global'); -require('../modules/es7.system.global'); -require('../modules/es7.promise.finally'); -module.exports = require('./4'); diff --git a/forward_engineering/node_modules/core-js/library/stage/4.js b/forward_engineering/node_modules/core-js/library/stage/4.js deleted file mode 100644 index 875762a..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/4.js +++ /dev/null @@ -1,11 +0,0 @@ -require('../modules/es7.object.define-getter'); -require('../modules/es7.object.define-setter'); -require('../modules/es7.object.lookup-getter'); -require('../modules/es7.object.lookup-setter'); -require('../modules/es7.object.values'); -require('../modules/es7.object.entries'); -require('../modules/es7.object.get-own-property-descriptors'); -require('../modules/es7.array.includes'); -require('../modules/es7.string.pad-start'); -require('../modules/es7.string.pad-end'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/library/stage/index.js b/forward_engineering/node_modules/core-js/library/stage/index.js deleted file mode 100644 index 24dcf2e..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./pre'); diff --git a/forward_engineering/node_modules/core-js/library/stage/pre.js b/forward_engineering/node_modules/core-js/library/stage/pre.js deleted file mode 100644 index ed197a8..0000000 --- a/forward_engineering/node_modules/core-js/library/stage/pre.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../modules/es7.reflect.define-metadata'); -require('../modules/es7.reflect.delete-metadata'); -require('../modules/es7.reflect.get-metadata'); -require('../modules/es7.reflect.get-metadata-keys'); -require('../modules/es7.reflect.get-own-metadata'); -require('../modules/es7.reflect.get-own-metadata-keys'); -require('../modules/es7.reflect.has-metadata'); -require('../modules/es7.reflect.has-own-metadata'); -require('../modules/es7.reflect.metadata'); -module.exports = require('./0'); diff --git a/forward_engineering/node_modules/core-js/library/web/dom-collections.js b/forward_engineering/node_modules/core-js/library/web/dom-collections.js deleted file mode 100644 index a138bb9..0000000 --- a/forward_engineering/node_modules/core-js/library/web/dom-collections.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.dom.iterable'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/library/web/immediate.js b/forward_engineering/node_modules/core-js/library/web/immediate.js deleted file mode 100644 index 6866abd..0000000 --- a/forward_engineering/node_modules/core-js/library/web/immediate.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.immediate'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/library/web/index.js b/forward_engineering/node_modules/core-js/library/web/index.js deleted file mode 100644 index 66db256..0000000 --- a/forward_engineering/node_modules/core-js/library/web/index.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.timers'); -require('../modules/web.immediate'); -require('../modules/web.dom.iterable'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/library/web/timers.js b/forward_engineering/node_modules/core-js/library/web/timers.js deleted file mode 100644 index a3f528e..0000000 --- a/forward_engineering/node_modules/core-js/library/web/timers.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.timers'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/modules/_a-function.js b/forward_engineering/node_modules/core-js/modules/_a-function.js deleted file mode 100644 index a9a5d84..0000000 --- a/forward_engineering/node_modules/core-js/modules/_a-function.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_a-number-value.js b/forward_engineering/node_modules/core-js/modules/_a-number-value.js deleted file mode 100644 index 2723de4..0000000 --- a/forward_engineering/node_modules/core-js/modules/_a-number-value.js +++ /dev/null @@ -1,5 +0,0 @@ -var cof = require('./_cof'); -module.exports = function (it, msg) { - if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg); - return +it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_add-to-unscopables.js b/forward_engineering/node_modules/core-js/modules/_add-to-unscopables.js deleted file mode 100644 index a2dd97d..0000000 --- a/forward_engineering/node_modules/core-js/modules/_add-to-unscopables.js +++ /dev/null @@ -1,7 +0,0 @@ -// 22.1.3.31 Array.prototype[@@unscopables] -var UNSCOPABLES = require('./_wks')('unscopables'); -var ArrayProto = Array.prototype; -if (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {}); -module.exports = function (key) { - ArrayProto[UNSCOPABLES][key] = true; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_advance-string-index.js b/forward_engineering/node_modules/core-js/modules/_advance-string-index.js deleted file mode 100644 index a4688c1..0000000 --- a/forward_engineering/node_modules/core-js/modules/_advance-string-index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -var at = require('./_string-at')(true); - - // `AdvanceStringIndex` abstract operation -// https://tc39.github.io/ecma262/#sec-advancestringindex -module.exports = function (S, index, unicode) { - return index + (unicode ? at(S, index).length : 1); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_an-instance.js b/forward_engineering/node_modules/core-js/modules/_an-instance.js deleted file mode 100644 index c0a5f92..0000000 --- a/forward_engineering/node_modules/core-js/modules/_an-instance.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = function (it, Constructor, name, forbiddenField) { - if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) { - throw TypeError(name + ': incorrect invocation!'); - } return it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_an-object.js b/forward_engineering/node_modules/core-js/modules/_an-object.js deleted file mode 100644 index b1c316c..0000000 --- a/forward_engineering/node_modules/core-js/modules/_an-object.js +++ /dev/null @@ -1,5 +0,0 @@ -var isObject = require('./_is-object'); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-copy-within.js b/forward_engineering/node_modules/core-js/modules/_array-copy-within.js deleted file mode 100644 index d331576..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-copy-within.js +++ /dev/null @@ -1,26 +0,0 @@ -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -'use strict'; -var toObject = require('./_to-object'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); - -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-fill.js b/forward_engineering/node_modules/core-js/modules/_array-fill.js deleted file mode 100644 index 0753c36..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-fill.js +++ /dev/null @@ -1,15 +0,0 @@ -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -'use strict'; -var toObject = require('./_to-object'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var aLen = arguments.length; - var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length); - var end = aLen > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-from-iterable.js b/forward_engineering/node_modules/core-js/modules/_array-from-iterable.js deleted file mode 100644 index 08be255..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-from-iterable.js +++ /dev/null @@ -1,7 +0,0 @@ -var forOf = require('./_for-of'); - -module.exports = function (iter, ITERATOR) { - var result = []; - forOf(iter, false, result.push, result, ITERATOR); - return result; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-includes.js b/forward_engineering/node_modules/core-js/modules/_array-includes.js deleted file mode 100644 index 0ef3efe..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-includes.js +++ /dev/null @@ -1,23 +0,0 @@ -// false -> Array#indexOf -// true -> Array#includes -var toIObject = require('./_to-iobject'); -var toLength = require('./_to-length'); -var toAbsoluteIndex = require('./_to-absolute-index'); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-methods.js b/forward_engineering/node_modules/core-js/modules/_array-methods.js deleted file mode 100644 index ae7f447..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-methods.js +++ /dev/null @@ -1,44 +0,0 @@ -// 0 -> Array#forEach -// 1 -> Array#map -// 2 -> Array#filter -// 3 -> Array#some -// 4 -> Array#every -// 5 -> Array#find -// 6 -> Array#findIndex -var ctx = require('./_ctx'); -var IObject = require('./_iobject'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var asc = require('./_array-species-create'); -module.exports = function (TYPE, $create) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - var create = $create || asc; - return function ($this, callbackfn, that) { - var O = toObject($this); - var self = IObject(O); - var f = ctx(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var val, res; - for (;length > index; index++) if (NO_HOLES || index in self) { - val = self[index]; - res = f(val, index, O); - if (TYPE) { - if (IS_MAP) result[index] = res; // map - else if (res) switch (TYPE) { - case 3: return true; // some - case 5: return val; // find - case 6: return index; // findIndex - case 2: result.push(val); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-reduce.js b/forward_engineering/node_modules/core-js/modules/_array-reduce.js deleted file mode 100644 index 8596ac7..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-reduce.js +++ /dev/null @@ -1,28 +0,0 @@ -var aFunction = require('./_a-function'); -var toObject = require('./_to-object'); -var IObject = require('./_iobject'); -var toLength = require('./_to-length'); - -module.exports = function (that, callbackfn, aLen, memo, isRight) { - aFunction(callbackfn); - var O = toObject(that); - var self = IObject(O); - var length = toLength(O.length); - var index = isRight ? length - 1 : 0; - var i = isRight ? -1 : 1; - if (aLen < 2) for (;;) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (isRight ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-species-constructor.js b/forward_engineering/node_modules/core-js/modules/_array-species-constructor.js deleted file mode 100644 index 0771c23..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-species-constructor.js +++ /dev/null @@ -1,16 +0,0 @@ -var isObject = require('./_is-object'); -var isArray = require('./_is-array'); -var SPECIES = require('./_wks')('species'); - -module.exports = function (original) { - var C; - if (isArray(original)) { - C = original.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return C === undefined ? Array : C; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_array-species-create.js b/forward_engineering/node_modules/core-js/modules/_array-species-create.js deleted file mode 100644 index 36ed58b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_array-species-create.js +++ /dev/null @@ -1,6 +0,0 @@ -// 9.4.2.3 ArraySpeciesCreate(originalArray, length) -var speciesConstructor = require('./_array-species-constructor'); - -module.exports = function (original, length) { - return new (speciesConstructor(original))(length); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_bind.js b/forward_engineering/node_modules/core-js/modules/_bind.js deleted file mode 100644 index 3cf1e5a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_bind.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -var aFunction = require('./_a-function'); -var isObject = require('./_is-object'); -var invoke = require('./_invoke'); -var arraySlice = [].slice; -var factories = {}; - -var construct = function (F, len, args) { - if (!(len in factories)) { - for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')'); - } return factories[len](F, args); -}; - -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = arraySlice.call(arguments, 1); - var bound = function (/* args... */) { - var args = partArgs.concat(arraySlice.call(arguments)); - return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that); - }; - if (isObject(fn.prototype)) bound.prototype = fn.prototype; - return bound; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_classof.js b/forward_engineering/node_modules/core-js/modules/_classof.js deleted file mode 100644 index d106d5b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_classof.js +++ /dev/null @@ -1,23 +0,0 @@ -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = require('./_cof'); -var TAG = require('./_wks')('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_cof.js b/forward_engineering/node_modules/core-js/modules/_cof.js deleted file mode 100644 index 332c0bc..0000000 --- a/forward_engineering/node_modules/core-js/modules/_cof.js +++ /dev/null @@ -1,5 +0,0 @@ -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_collection-strong.js b/forward_engineering/node_modules/core-js/modules/_collection-strong.js deleted file mode 100644 index 68ce63f..0000000 --- a/forward_engineering/node_modules/core-js/modules/_collection-strong.js +++ /dev/null @@ -1,144 +0,0 @@ -'use strict'; -var dP = require('./_object-dp').f; -var create = require('./_object-create'); -var redefineAll = require('./_redefine-all'); -var ctx = require('./_ctx'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var $iterDefine = require('./_iter-define'); -var step = require('./_iter-step'); -var setSpecies = require('./_set-species'); -var DESCRIPTORS = require('./_descriptors'); -var fastKey = require('./_meta').fastKey; -var validate = require('./_validate-collection'); -var SIZE = DESCRIPTORS ? '_s' : 'size'; - -var getEntry = function (that, key) { - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return that._i[index]; - // frozen object case - for (entry = that._f; entry; entry = entry.n) { - if (entry.k == key) return entry; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = create(null); // index - that._f = undefined; // first entry - that._l = undefined; // last entry - that[SIZE] = 0; // size - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) { - entry.r = true; - if (entry.p) entry.p = entry.p.n = undefined; - delete data[entry.i]; - } - that._f = that._l = undefined; - that[SIZE] = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = validate(this, NAME); - var entry = getEntry(that, key); - if (entry) { - var next = entry.n; - var prev = entry.p; - delete that._i[entry.i]; - entry.r = true; - if (prev) prev.n = next; - if (next) next.p = prev; - if (that._f == entry) that._f = next; - if (that._l == entry) that._l = prev; - that[SIZE]--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - validate(this, NAME); - var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.n : this._f) { - f(entry.v, entry.k, this); - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(validate(this, NAME), key); - } - }); - if (DESCRIPTORS) dP(C.prototype, 'size', { - get: function () { - return validate(this, NAME)[SIZE]; - } - }); - return C; - }, - def: function (that, key, value) { - var entry = getEntry(that, key); - var prev, index; - // change existing entry - if (entry) { - entry.v = value; - // create new entry - } else { - that._l = entry = { - i: index = fastKey(key, true), // <- index - k: key, // <- key - v: value, // <- value - p: prev = that._l, // <- previous entry - n: undefined, // <- next entry - r: false // <- removed - }; - if (!that._f) that._f = entry; - if (prev) prev.n = entry; - that[SIZE]++; - // add to index - if (index !== 'F') that._i[index] = entry; - } return that; - }, - getEntry: getEntry, - setStrong: function (C, NAME, IS_MAP) { - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - $iterDefine(C, NAME, function (iterated, kind) { - this._t = validate(iterated, NAME); // target - this._k = kind; // kind - this._l = undefined; // previous - }, function () { - var that = this; - var kind = that._k; - var entry = that._l; - // revert to the last existing entry - while (entry && entry.r) entry = entry.p; - // get next entry - if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { - // or finish the iteration - that._t = undefined; - return step(1); - } - // return step by kind - if (kind == 'keys') return step(0, entry.k); - if (kind == 'values') return step(0, entry.v); - return step(0, [entry.k, entry.v]); - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(NAME); - } -}; diff --git a/forward_engineering/node_modules/core-js/modules/_collection-to-json.js b/forward_engineering/node_modules/core-js/modules/_collection-to-json.js deleted file mode 100644 index a6ee002..0000000 --- a/forward_engineering/node_modules/core-js/modules/_collection-to-json.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var classof = require('./_classof'); -var from = require('./_array-from-iterable'); -module.exports = function (NAME) { - return function toJSON() { - if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); - return from(this); - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_collection-weak.js b/forward_engineering/node_modules/core-js/modules/_collection-weak.js deleted file mode 100644 index 04d3af5..0000000 --- a/forward_engineering/node_modules/core-js/modules/_collection-weak.js +++ /dev/null @@ -1,85 +0,0 @@ -'use strict'; -var redefineAll = require('./_redefine-all'); -var getWeak = require('./_meta').getWeak; -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var createArrayMethod = require('./_array-methods'); -var $has = require('./_has'); -var validate = require('./_validate-collection'); -var arrayFind = createArrayMethod(5); -var arrayFindIndex = createArrayMethod(6); -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (that) { - return that._l || (that._l = new UncaughtFrozenStore()); -}; -var UncaughtFrozenStore = function () { - this.a = []; -}; -var findUncaughtFrozen = function (store, key) { - return arrayFind(store.a, function (it) { - return it[0] === key; - }); -}; -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function (key) { - var index = arrayFindIndex(this.a, function (it) { - return it[0] === key; - }); - if (~index) this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, NAME, '_i'); - that._t = NAME; // collection type - that._i = id++; // collection id - that._l = undefined; // leak store for uncaught frozen objects - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key); - return data && $has(data, this._i) && delete data[this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - if (!isObject(key)) return false; - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key); - return data && $has(data, this._i); - } - }); - return C; - }, - def: function (that, key, value) { - var data = getWeak(anObject(key), true); - if (data === true) uncaughtFrozenStore(that).set(key, value); - else data[that._i] = value; - return that; - }, - ufstore: uncaughtFrozenStore -}; diff --git a/forward_engineering/node_modules/core-js/modules/_collection.js b/forward_engineering/node_modules/core-js/modules/_collection.js deleted file mode 100644 index 767dde5..0000000 --- a/forward_engineering/node_modules/core-js/modules/_collection.js +++ /dev/null @@ -1,85 +0,0 @@ -'use strict'; -var global = require('./_global'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var redefineAll = require('./_redefine-all'); -var meta = require('./_meta'); -var forOf = require('./_for-of'); -var anInstance = require('./_an-instance'); -var isObject = require('./_is-object'); -var fails = require('./_fails'); -var $iterDetect = require('./_iter-detect'); -var setToStringTag = require('./_set-to-string-tag'); -var inheritIfRequired = require('./_inherit-if-required'); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - var fixMethod = function (KEY) { - var fn = proto[KEY]; - redefine(proto, KEY, - KEY == 'delete' ? function (a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'has' ? function has(a) { - return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'get' ? function get(a) { - return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a); - } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; } - : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; } - ); - }; - if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - var instance = new C(); - // early implementations not supports chaining - var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance; - // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false - var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); }); - // most early implementations doesn't supports iterables, most modern - not close it correctly - var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new - // for early implementations -0 and +0 not the same - var BUGGY_ZERO = !IS_WEAK && fails(function () { - // V8 ~ Chromium 42- fails only with 5+ elements - var $instance = new C(); - var index = 5; - while (index--) $instance[ADDER](index, index); - return !$instance.has(-0); - }); - if (!ACCEPT_ITERABLES) { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME); - var that = inheritIfRequired(new Base(), target, C); - if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that); - return that; - }); - C.prototype = proto; - proto.constructor = C; - } - if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) { - fixMethod('delete'); - fixMethod('has'); - IS_MAP && fixMethod('get'); - } - if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER); - // weak collections should not contains .clear method - if (IS_WEAK && proto.clear) delete proto.clear; - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F * (C != Base), O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_core.js b/forward_engineering/node_modules/core-js/modules/_core.js deleted file mode 100644 index 6ab2de5..0000000 --- a/forward_engineering/node_modules/core-js/modules/_core.js +++ /dev/null @@ -1,2 +0,0 @@ -var core = module.exports = { version: '2.6.9' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef diff --git a/forward_engineering/node_modules/core-js/modules/_create-property.js b/forward_engineering/node_modules/core-js/modules/_create-property.js deleted file mode 100644 index fd0ea8c..0000000 --- a/forward_engineering/node_modules/core-js/modules/_create-property.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -var $defineProperty = require('./_object-dp'); -var createDesc = require('./_property-desc'); - -module.exports = function (object, index, value) { - if (index in object) $defineProperty.f(object, index, createDesc(0, value)); - else object[index] = value; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_ctx.js b/forward_engineering/node_modules/core-js/modules/_ctx.js deleted file mode 100644 index 0a100ff..0000000 --- a/forward_engineering/node_modules/core-js/modules/_ctx.js +++ /dev/null @@ -1,20 +0,0 @@ -// optional / simple context binding -var aFunction = require('./_a-function'); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_date-to-iso-string.js b/forward_engineering/node_modules/core-js/modules/_date-to-iso-string.js deleted file mode 100644 index 95a02e2..0000000 --- a/forward_engineering/node_modules/core-js/modules/_date-to-iso-string.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var fails = require('./_fails'); -var getTime = Date.prototype.getTime; -var $toISOString = Date.prototype.toISOString; - -var lz = function (num) { - return num > 9 ? num : '0' + num; -}; - -// PhantomJS / old WebKit has a broken implementations -module.exports = (fails(function () { - return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - $toISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var d = this; - var y = d.getUTCFullYear(); - var m = d.getUTCMilliseconds(); - var s = y < 0 ? '-' : y > 9999 ? '+' : ''; - return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) + - '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) + - 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) + - ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z'; -} : $toISOString; diff --git a/forward_engineering/node_modules/core-js/modules/_date-to-primitive.js b/forward_engineering/node_modules/core-js/modules/_date-to-primitive.js deleted file mode 100644 index 57c3203..0000000 --- a/forward_engineering/node_modules/core-js/modules/_date-to-primitive.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var anObject = require('./_an-object'); -var toPrimitive = require('./_to-primitive'); -var NUMBER = 'number'; - -module.exports = function (hint) { - if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint'); - return toPrimitive(anObject(this), hint != NUMBER); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_defined.js b/forward_engineering/node_modules/core-js/modules/_defined.js deleted file mode 100644 index 66c7ed3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_defined.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_descriptors.js b/forward_engineering/node_modules/core-js/modules/_descriptors.js deleted file mode 100644 index 0469740..0000000 --- a/forward_engineering/node_modules/core-js/modules/_descriptors.js +++ /dev/null @@ -1,4 +0,0 @@ -// Thank's IE8 for his funny defineProperty -module.exports = !require('./_fails')(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); diff --git a/forward_engineering/node_modules/core-js/modules/_dom-create.js b/forward_engineering/node_modules/core-js/modules/_dom-create.js deleted file mode 100644 index 39ca256..0000000 --- a/forward_engineering/node_modules/core-js/modules/_dom-create.js +++ /dev/null @@ -1,7 +0,0 @@ -var isObject = require('./_is-object'); -var document = require('./_global').document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_entry-virtual.js b/forward_engineering/node_modules/core-js/modules/_entry-virtual.js deleted file mode 100644 index 7a73439..0000000 --- a/forward_engineering/node_modules/core-js/modules/_entry-virtual.js +++ /dev/null @@ -1,5 +0,0 @@ -var core = require('./_core'); -module.exports = function (CONSTRUCTOR) { - var C = core[CONSTRUCTOR]; - return (C.virtual || C.prototype); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_enum-bug-keys.js b/forward_engineering/node_modules/core-js/modules/_enum-bug-keys.js deleted file mode 100644 index d9ad855..0000000 --- a/forward_engineering/node_modules/core-js/modules/_enum-bug-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); diff --git a/forward_engineering/node_modules/core-js/modules/_enum-keys.js b/forward_engineering/node_modules/core-js/modules/_enum-keys.js deleted file mode 100644 index 3e7053d..0000000 --- a/forward_engineering/node_modules/core-js/modules/_enum-keys.js +++ /dev/null @@ -1,15 +0,0 @@ -// all enumerable object keys, includes symbols -var getKeys = require('./_object-keys'); -var gOPS = require('./_object-gops'); -var pIE = require('./_object-pie'); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_export.js b/forward_engineering/node_modules/core-js/modules/_export.js deleted file mode 100644 index 3c907c6..0000000 --- a/forward_engineering/node_modules/core-js/modules/_export.js +++ /dev/null @@ -1,43 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var hide = require('./_hide'); -var redefine = require('./_redefine'); -var ctx = require('./_ctx'); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); - var key, own, out, exp; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed - out = (own ? target : source)[key]; - // bind timers to global for call from export context - exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // extend global - if (target) redefine(target, key, out, type & $export.U); - // export - if (exports[key] != out) hide(exports, key, exp); - if (IS_PROTO && expProto[key] != out) expProto[key] = out; - } -}; -global.core = core; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; diff --git a/forward_engineering/node_modules/core-js/modules/_fails-is-regexp.js b/forward_engineering/node_modules/core-js/modules/_fails-is-regexp.js deleted file mode 100644 index 8eec2e4..0000000 --- a/forward_engineering/node_modules/core-js/modules/_fails-is-regexp.js +++ /dev/null @@ -1,12 +0,0 @@ -var MATCH = require('./_wks')('match'); -module.exports = function (KEY) { - var re = /./; - try { - '/./'[KEY](re); - } catch (e) { - try { - re[MATCH] = false; - return !'/./'[KEY](re); - } catch (f) { /* empty */ } - } return true; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_fails.js b/forward_engineering/node_modules/core-js/modules/_fails.js deleted file mode 100644 index 3b4cdf6..0000000 --- a/forward_engineering/node_modules/core-js/modules/_fails.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; diff --git a/forward_engineering/node_modules/core-js/modules/_fix-re-wks.js b/forward_engineering/node_modules/core-js/modules/_fix-re-wks.js deleted file mode 100644 index 64d00fe..0000000 --- a/forward_engineering/node_modules/core-js/modules/_fix-re-wks.js +++ /dev/null @@ -1,96 +0,0 @@ -'use strict'; -require('./es6.regexp.exec'); -var redefine = require('./_redefine'); -var hide = require('./_hide'); -var fails = require('./_fails'); -var defined = require('./_defined'); -var wks = require('./_wks'); -var regexpExec = require('./_regexp-exec'); - -var SPECIES = wks('species'); - -var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { - // #replace needs built-in support for named groups. - // #match works fine because it just return the exec results, even if it has - // a "grops" property. - var re = /./; - re.exec = function () { - var result = []; - result.groups = { a: '7' }; - return result; - }; - return ''.replace(re, '$') !== '7'; -}); - -var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { - // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec - var re = /(?:)/; - var originalExec = re.exec; - re.exec = function () { return originalExec.apply(this, arguments); }; - var result = 'ab'.split(re); - return result.length === 2 && result[0] === 'a' && result[1] === 'b'; -})(); - -module.exports = function (KEY, length, exec) { - var SYMBOL = wks(KEY); - - var DELEGATES_TO_SYMBOL = !fails(function () { - // String methods call symbol-named RegEp methods - var O = {}; - O[SYMBOL] = function () { return 7; }; - return ''[KEY](O) != 7; - }); - - var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { - // Symbol-named RegExp methods call .exec - var execCalled = false; - var re = /a/; - re.exec = function () { execCalled = true; return null; }; - if (KEY === 'split') { - // RegExp[@@split] doesn't call the regex's exec method, but first creates - // a new one. We need to return the patched regex when creating the new one. - re.constructor = {}; - re.constructor[SPECIES] = function () { return re; }; - } - re[SYMBOL](''); - return !execCalled; - }) : undefined; - - if ( - !DELEGATES_TO_SYMBOL || - !DELEGATES_TO_EXEC || - (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || - (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) - ) { - var nativeRegExpMethod = /./[SYMBOL]; - var fns = exec( - defined, - SYMBOL, - ''[KEY], - function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { - if (regexp.exec === regexpExec) { - if (DELEGATES_TO_SYMBOL && !forceStringMethod) { - // The native String method already delegates to @@method (this - // polyfilled function), leasing to infinite recursion. - // We avoid it by directly calling the native @@method method. - return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; - } - return { done: true, value: nativeMethod.call(str, regexp, arg2) }; - } - return { done: false }; - } - ); - var strfn = fns[0]; - var rxfn = fns[1]; - - redefine(String.prototype, KEY, strfn); - hide(RegExp.prototype, SYMBOL, length == 2 - // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) - // 21.2.5.11 RegExp.prototype[@@split](string, limit) - ? function (string, arg) { return rxfn.call(string, this, arg); } - // 21.2.5.6 RegExp.prototype[@@match](string) - // 21.2.5.9 RegExp.prototype[@@search](string) - : function (string) { return rxfn.call(string, this); } - ); - } -}; diff --git a/forward_engineering/node_modules/core-js/modules/_flags.js b/forward_engineering/node_modules/core-js/modules/_flags.js deleted file mode 100644 index b6fc324..0000000 --- a/forward_engineering/node_modules/core-js/modules/_flags.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -// 21.2.5.3 get RegExp.prototype.flags -var anObject = require('./_an-object'); -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_flatten-into-array.js b/forward_engineering/node_modules/core-js/modules/_flatten-into-array.js deleted file mode 100644 index 1838517..0000000 --- a/forward_engineering/node_modules/core-js/modules/_flatten-into-array.js +++ /dev/null @@ -1,39 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var isArray = require('./_is-array'); -var isObject = require('./_is-object'); -var toLength = require('./_to-length'); -var ctx = require('./_ctx'); -var IS_CONCAT_SPREADABLE = require('./_wks')('isConcatSpreadable'); - -function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? ctx(mapper, thisArg, 3) : false; - var element, spreadable; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - spreadable = false; - if (isObject(element)) { - spreadable = element[IS_CONCAT_SPREADABLE]; - spreadable = spreadable !== undefined ? !!spreadable : isArray(element); - } - - if (spreadable && depth > 0) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1fffffffffffff) throw TypeError(); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -} - -module.exports = flattenIntoArray; diff --git a/forward_engineering/node_modules/core-js/modules/_for-of.js b/forward_engineering/node_modules/core-js/modules/_for-of.js deleted file mode 100644 index 9ed2281..0000000 --- a/forward_engineering/node_modules/core-js/modules/_for-of.js +++ /dev/null @@ -1,25 +0,0 @@ -var ctx = require('./_ctx'); -var call = require('./_iter-call'); -var isArrayIter = require('./_is-array-iter'); -var anObject = require('./_an-object'); -var toLength = require('./_to-length'); -var getIterFn = require('./core.get-iterator-method'); -var BREAK = {}; -var RETURN = {}; -var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) { - var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable); - var f = ctx(fn, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); - // fast case for arrays with default iterator - if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) return result; - } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) return result; - } -}; -exports.BREAK = BREAK; -exports.RETURN = RETURN; diff --git a/forward_engineering/node_modules/core-js/modules/_function-to-string.js b/forward_engineering/node_modules/core-js/modules/_function-to-string.js deleted file mode 100644 index d7f5419..0000000 --- a/forward_engineering/node_modules/core-js/modules/_function-to-string.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_shared')('native-function-to-string', Function.toString); diff --git a/forward_engineering/node_modules/core-js/modules/_global.js b/forward_engineering/node_modules/core-js/modules/_global.js deleted file mode 100644 index bf85b44..0000000 --- a/forward_engineering/node_modules/core-js/modules/_global.js +++ /dev/null @@ -1,6 +0,0 @@ -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef diff --git a/forward_engineering/node_modules/core-js/modules/_has.js b/forward_engineering/node_modules/core-js/modules/_has.js deleted file mode 100644 index 2a37d8b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_has.js +++ /dev/null @@ -1,4 +0,0 @@ -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_hide.js b/forward_engineering/node_modules/core-js/modules/_hide.js deleted file mode 100644 index cec258a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_hide.js +++ /dev/null @@ -1,8 +0,0 @@ -var dP = require('./_object-dp'); -var createDesc = require('./_property-desc'); -module.exports = require('./_descriptors') ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_html.js b/forward_engineering/node_modules/core-js/modules/_html.js deleted file mode 100644 index 7daff14..0000000 --- a/forward_engineering/node_modules/core-js/modules/_html.js +++ /dev/null @@ -1,2 +0,0 @@ -var document = require('./_global').document; -module.exports = document && document.documentElement; diff --git a/forward_engineering/node_modules/core-js/modules/_ie8-dom-define.js b/forward_engineering/node_modules/core-js/modules/_ie8-dom-define.js deleted file mode 100644 index a3805cb..0000000 --- a/forward_engineering/node_modules/core-js/modules/_ie8-dom-define.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = !require('./_descriptors') && !require('./_fails')(function () { - return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7; -}); diff --git a/forward_engineering/node_modules/core-js/modules/_inherit-if-required.js b/forward_engineering/node_modules/core-js/modules/_inherit-if-required.js deleted file mode 100644 index b95fcd9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_inherit-if-required.js +++ /dev/null @@ -1,9 +0,0 @@ -var isObject = require('./_is-object'); -var setPrototypeOf = require('./_set-proto').set; -module.exports = function (that, target, C) { - var S = target.constructor; - var P; - if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { - setPrototypeOf(that, P); - } return that; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_invoke.js b/forward_engineering/node_modules/core-js/modules/_invoke.js deleted file mode 100644 index 6cccebd..0000000 --- a/forward_engineering/node_modules/core-js/modules/_invoke.js +++ /dev/null @@ -1,16 +0,0 @@ -// fast apply, http://jsperf.lnkit.com/fast-apply/5 -module.exports = function (fn, args, that) { - var un = that === undefined; - switch (args.length) { - case 0: return un ? fn() - : fn.call(that); - case 1: return un ? fn(args[0]) - : fn.call(that, args[0]); - case 2: return un ? fn(args[0], args[1]) - : fn.call(that, args[0], args[1]); - case 3: return un ? fn(args[0], args[1], args[2]) - : fn.call(that, args[0], args[1], args[2]); - case 4: return un ? fn(args[0], args[1], args[2], args[3]) - : fn.call(that, args[0], args[1], args[2], args[3]); - } return fn.apply(that, args); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iobject.js b/forward_engineering/node_modules/core-js/modules/_iobject.js deleted file mode 100644 index 2b57c8a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iobject.js +++ /dev/null @@ -1,6 +0,0 @@ -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = require('./_cof'); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_is-array-iter.js b/forward_engineering/node_modules/core-js/modules/_is-array-iter.js deleted file mode 100644 index 6f67d90..0000000 --- a/forward_engineering/node_modules/core-js/modules/_is-array-iter.js +++ /dev/null @@ -1,8 +0,0 @@ -// check on default Array iterator -var Iterators = require('./_iterators'); -var ITERATOR = require('./_wks')('iterator'); -var ArrayProto = Array.prototype; - -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_is-array.js b/forward_engineering/node_modules/core-js/modules/_is-array.js deleted file mode 100644 index 0581dc2..0000000 --- a/forward_engineering/node_modules/core-js/modules/_is-array.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.2 IsArray(argument) -var cof = require('./_cof'); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_is-integer.js b/forward_engineering/node_modules/core-js/modules/_is-integer.js deleted file mode 100644 index 0074ae9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_is-integer.js +++ /dev/null @@ -1,6 +0,0 @@ -// 20.1.2.3 Number.isInteger(number) -var isObject = require('./_is-object'); -var floor = Math.floor; -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_is-object.js b/forward_engineering/node_modules/core-js/modules/_is-object.js deleted file mode 100644 index dda6e04..0000000 --- a/forward_engineering/node_modules/core-js/modules/_is-object.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_is-regexp.js b/forward_engineering/node_modules/core-js/modules/_is-regexp.js deleted file mode 100644 index 598d159..0000000 --- a/forward_engineering/node_modules/core-js/modules/_is-regexp.js +++ /dev/null @@ -1,8 +0,0 @@ -// 7.2.8 IsRegExp(argument) -var isObject = require('./_is-object'); -var cof = require('./_cof'); -var MATCH = require('./_wks')('match'); -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iter-call.js b/forward_engineering/node_modules/core-js/modules/_iter-call.js deleted file mode 100644 index a7026e3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iter-call.js +++ /dev/null @@ -1,12 +0,0 @@ -// call something on iterator step with safe closing on error -var anObject = require('./_an-object'); -module.exports = function (iterator, fn, value, entries) { - try { - return entries ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (e) { - var ret = iterator['return']; - if (ret !== undefined) anObject(ret.call(iterator)); - throw e; - } -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iter-create.js b/forward_engineering/node_modules/core-js/modules/_iter-create.js deleted file mode 100644 index 04708c8..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iter-create.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var create = require('./_object-create'); -var descriptor = require('./_property-desc'); -var setToStringTag = require('./_set-to-string-tag'); -var IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; }); - -module.exports = function (Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + ' Iterator'); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iter-define.js b/forward_engineering/node_modules/core-js/modules/_iter-define.js deleted file mode 100644 index 578dfb7..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iter-define.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; -var LIBRARY = require('./_library'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var hide = require('./_hide'); -var Iterators = require('./_iterators'); -var $iterCreate = require('./_iter-create'); -var setToStringTag = require('./_set-to-string-tag'); -var getPrototypeOf = require('./_object-gpo'); -var ITERATOR = require('./_wks')('iterator'); -var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` -var FF_ITERATOR = '@@iterator'; -var KEYS = 'keys'; -var VALUES = 'values'; - -var returnThis = function () { return this; }; - -module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function (kind) { - if (!BUGGY && kind in proto) return proto[kind]; - switch (kind) { - case KEYS: return function keys() { return new Constructor(this, kind); }; - case VALUES: return function values() { return new Constructor(this, kind); }; - } return function entries() { return new Constructor(this, kind); }; - }; - var TAG = NAME + ' Iterator'; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; - var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - // Fix native - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - // Set @@toStringTag to native iterators - setToStringTag(IteratorPrototype, TAG, true); - // fix for some old engines - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis); - } - } - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { return $native.call(this); }; - } - // Define iterator - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - // Plug for library - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) for (key in methods) { - if (!(key in proto)) redefine(proto, key, methods[key]); - } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iter-detect.js b/forward_engineering/node_modules/core-js/modules/_iter-detect.js deleted file mode 100644 index 5cb3497..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iter-detect.js +++ /dev/null @@ -1,22 +0,0 @@ -var ITERATOR = require('./_wks')('iterator'); -var SAFE_CLOSING = false; - -try { - var riter = [7][ITERATOR](); - riter['return'] = function () { SAFE_CLOSING = true; }; - // eslint-disable-next-line no-throw-literal - Array.from(riter, function () { throw 2; }); -} catch (e) { /* empty */ } - -module.exports = function (exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function () { return { done: safe = true }; }; - arr[ITERATOR] = function () { return iter; }; - exec(arr); - } catch (e) { /* empty */ } - return safe; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iter-step.js b/forward_engineering/node_modules/core-js/modules/_iter-step.js deleted file mode 100644 index b0691c8..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iter-step.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = function (done, value) { - return { value: value, done: !!done }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_iterators.js b/forward_engineering/node_modules/core-js/modules/_iterators.js deleted file mode 100644 index f053ebf..0000000 --- a/forward_engineering/node_modules/core-js/modules/_iterators.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/forward_engineering/node_modules/core-js/modules/_keyof.js b/forward_engineering/node_modules/core-js/modules/_keyof.js deleted file mode 100644 index 0786096..0000000 --- a/forward_engineering/node_modules/core-js/modules/_keyof.js +++ /dev/null @@ -1,10 +0,0 @@ -var getKeys = require('./_object-keys'); -var toIObject = require('./_to-iobject'); -module.exports = function (object, el) { - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var index = 0; - var key; - while (length > index) if (O[key = keys[index++]] === el) return key; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_library.js b/forward_engineering/node_modules/core-js/modules/_library.js deleted file mode 100644 index a5d3020..0000000 --- a/forward_engineering/node_modules/core-js/modules/_library.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = false; diff --git a/forward_engineering/node_modules/core-js/modules/_math-expm1.js b/forward_engineering/node_modules/core-js/modules/_math-expm1.js deleted file mode 100644 index 75c6850..0000000 --- a/forward_engineering/node_modules/core-js/modules/_math-expm1.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.14 Math.expm1(x) -var $expm1 = Math.expm1; -module.exports = (!$expm1 - // Old FF bug - || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168 - // Tor Browser bug - || $expm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1; -} : $expm1; diff --git a/forward_engineering/node_modules/core-js/modules/_math-fround.js b/forward_engineering/node_modules/core-js/modules/_math-fround.js deleted file mode 100644 index c85eb4b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_math-fround.js +++ /dev/null @@ -1,23 +0,0 @@ -// 20.2.2.16 Math.fround(x) -var sign = require('./_math-sign'); -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -module.exports = Math.fround || function fround(x) { - var $abs = Math.abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_math-log1p.js b/forward_engineering/node_modules/core-js/modules/_math-log1p.js deleted file mode 100644 index 16d5f49..0000000 --- a/forward_engineering/node_modules/core-js/modules/_math-log1p.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.20 Math.log1p(x) -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_math-scale.js b/forward_engineering/node_modules/core-js/modules/_math-scale.js deleted file mode 100644 index ba3cdb2..0000000 --- a/forward_engineering/node_modules/core-js/modules/_math-scale.js +++ /dev/null @@ -1,18 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - // eslint-disable-next-line no-self-compare - || x != x - // eslint-disable-next-line no-self-compare - || inLow != inLow - // eslint-disable-next-line no-self-compare - || inHigh != inHigh - // eslint-disable-next-line no-self-compare - || outLow != outLow - // eslint-disable-next-line no-self-compare - || outHigh != outHigh - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_math-sign.js b/forward_engineering/node_modules/core-js/modules/_math-sign.js deleted file mode 100644 index 7a46b9d..0000000 --- a/forward_engineering/node_modules/core-js/modules/_math-sign.js +++ /dev/null @@ -1,5 +0,0 @@ -// 20.2.2.28 Math.sign(x) -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_meta.js b/forward_engineering/node_modules/core-js/modules/_meta.js deleted file mode 100644 index 2d4b325..0000000 --- a/forward_engineering/node_modules/core-js/modules/_meta.js +++ /dev/null @@ -1,53 +0,0 @@ -var META = require('./_uid')('meta'); -var isObject = require('./_is-object'); -var has = require('./_has'); -var setDesc = require('./_object-dp').f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !require('./_fails')(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; diff --git a/forward_engineering/node_modules/core-js/modules/_metadata.js b/forward_engineering/node_modules/core-js/modules/_metadata.js deleted file mode 100644 index 759cfc4..0000000 --- a/forward_engineering/node_modules/core-js/modules/_metadata.js +++ /dev/null @@ -1,51 +0,0 @@ -var Map = require('./es6.map'); -var $export = require('./_export'); -var shared = require('./_shared')('metadata'); -var store = shared.store || (shared.store = new (require('./es6.weak-map'))()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return undefined; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return undefined; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; -var toMetaKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; -var exp = function (O) { - $export($export.S, 'Reflect', O); -}; - -module.exports = { - store: store, - map: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - key: toMetaKey, - exp: exp -}; diff --git a/forward_engineering/node_modules/core-js/modules/_microtask.js b/forward_engineering/node_modules/core-js/modules/_microtask.js deleted file mode 100644 index b321c64..0000000 --- a/forward_engineering/node_modules/core-js/modules/_microtask.js +++ /dev/null @@ -1,69 +0,0 @@ -var global = require('./_global'); -var macrotask = require('./_task').set; -var Observer = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var isNode = require('./_cof')(process) == 'process'; - -module.exports = function () { - var head, last, notify; - - var flush = function () { - var parent, fn; - if (isNode && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (e) { - if (head) notify(); - else last = undefined; - throw e; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (isNode) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339 - } else if (Observer && !(global.navigator && global.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(''); - new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - var promise = Promise.resolve(undefined); - notify = function () { - promise.then(flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } - - return function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_native-weak-map.js b/forward_engineering/node_modules/core-js/modules/_native-weak-map.js deleted file mode 100644 index ebaf445..0000000 --- a/forward_engineering/node_modules/core-js/modules/_native-weak-map.js +++ /dev/null @@ -1,4 +0,0 @@ -var nativeFunctionToString = require('./_function-to-string'); -var WeakMap = require('./_global').WeakMap; - -module.exports = typeof WeakMap === 'function' && /native code/.test(nativeFunctionToString.call(WeakMap)); diff --git a/forward_engineering/node_modules/core-js/modules/_new-promise-capability.js b/forward_engineering/node_modules/core-js/modules/_new-promise-capability.js deleted file mode 100644 index 82b74a3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_new-promise-capability.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -// 25.4.1.5 NewPromiseCapability(C) -var aFunction = require('./_a-function'); - -function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -} - -module.exports.f = function (C) { - return new PromiseCapability(C); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-assign.js b/forward_engineering/node_modules/core-js/modules/_object-assign.js deleted file mode 100644 index d739c43..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-assign.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; -// 19.1.2.1 Object.assign(target, source, ...) -var DESCRIPTORS = require('./_descriptors'); -var getKeys = require('./_object-keys'); -var gOPS = require('./_object-gops'); -var pIE = require('./_object-pie'); -var toObject = require('./_to-object'); -var IObject = require('./_iobject'); -var $assign = Object.assign; - -// should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || require('./_fails')(function () { - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var S = Symbol(); - var K = 'abcdefghijklmnopqrst'; - A[S] = 7; - K.split('').forEach(function (k) { B[k] = k; }); - return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var aLen = arguments.length; - var index = 1; - var getSymbols = gOPS.f; - var isEnum = pIE.f; - while (aLen > index) { - var S = IObject(arguments[index++]); - var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key]; - } - } return T; -} : $assign; diff --git a/forward_engineering/node_modules/core-js/modules/_object-create.js b/forward_engineering/node_modules/core-js/modules/_object-create.js deleted file mode 100644 index a76808e..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-create.js +++ /dev/null @@ -1,41 +0,0 @@ -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = require('./_an-object'); -var dPs = require('./_object-dps'); -var enumBugKeys = require('./_enum-bug-keys'); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = require('./_dom-create')('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - require('./_html').appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-define.js b/forward_engineering/node_modules/core-js/modules/_object-define.js deleted file mode 100644 index 4d131f3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-define.js +++ /dev/null @@ -1,13 +0,0 @@ -var dP = require('./_object-dp'); -var gOPD = require('./_object-gopd'); -var ownKeys = require('./_own-keys'); -var toIObject = require('./_to-iobject'); - -module.exports = function define(target, mixin) { - var keys = ownKeys(toIObject(mixin)); - var length = keys.length; - var i = 0; - var key; - while (length > i) dP.f(target, key = keys[i++], gOPD.f(mixin, key)); - return target; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-dp.js b/forward_engineering/node_modules/core-js/modules/_object-dp.js deleted file mode 100644 index 0340a83..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-dp.js +++ /dev/null @@ -1,16 +0,0 @@ -var anObject = require('./_an-object'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var toPrimitive = require('./_to-primitive'); -var dP = Object.defineProperty; - -exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-dps.js b/forward_engineering/node_modules/core-js/modules/_object-dps.js deleted file mode 100644 index 173c338..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-dps.js +++ /dev/null @@ -1,13 +0,0 @@ -var dP = require('./_object-dp'); -var anObject = require('./_an-object'); -var getKeys = require('./_object-keys'); - -module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-forced-pam.js b/forward_engineering/node_modules/core-js/modules/_object-forced-pam.js deleted file mode 100644 index 71ede92..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-forced-pam.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -// Forced replacement prototype accessors methods -module.exports = require('./_library') || !require('./_fails')(function () { - var K = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, K, function () { /* empty */ }); - delete require('./_global')[K]; -}); diff --git a/forward_engineering/node_modules/core-js/modules/_object-gopd.js b/forward_engineering/node_modules/core-js/modules/_object-gopd.js deleted file mode 100644 index 555dd31..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-gopd.js +++ /dev/null @@ -1,16 +0,0 @@ -var pIE = require('./_object-pie'); -var createDesc = require('./_property-desc'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var has = require('./_has'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-gopn-ext.js b/forward_engineering/node_modules/core-js/modules/_object-gopn-ext.js deleted file mode 100644 index 4abb6ae..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-gopn-ext.js +++ /dev/null @@ -1,19 +0,0 @@ -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = require('./_to-iobject'); -var gOPN = require('./_object-gopn').f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-gopn.js b/forward_engineering/node_modules/core-js/modules/_object-gopn.js deleted file mode 100644 index da82333..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-gopn.js +++ /dev/null @@ -1,7 +0,0 @@ -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = require('./_object-keys-internal'); -var hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-gops.js b/forward_engineering/node_modules/core-js/modules/_object-gops.js deleted file mode 100644 index bc06729..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-gops.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = Object.getOwnPropertySymbols; diff --git a/forward_engineering/node_modules/core-js/modules/_object-gpo.js b/forward_engineering/node_modules/core-js/modules/_object-gpo.js deleted file mode 100644 index 27f2a94..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-gpo.js +++ /dev/null @@ -1,13 +0,0 @@ -// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) -var has = require('./_has'); -var toObject = require('./_to-object'); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); -var ObjectProto = Object.prototype; - -module.exports = Object.getPrototypeOf || function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectProto : null; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-keys-internal.js b/forward_engineering/node_modules/core-js/modules/_object-keys-internal.js deleted file mode 100644 index 71abdd1..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-keys-internal.js +++ /dev/null @@ -1,17 +0,0 @@ -var has = require('./_has'); -var toIObject = require('./_to-iobject'); -var arrayIndexOf = require('./_array-includes')(false); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-keys.js b/forward_engineering/node_modules/core-js/modules/_object-keys.js deleted file mode 100644 index 62f73f9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-keys.js +++ /dev/null @@ -1,7 +0,0 @@ -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = require('./_object-keys-internal'); -var enumBugKeys = require('./_enum-bug-keys'); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-pie.js b/forward_engineering/node_modules/core-js/modules/_object-pie.js deleted file mode 100644 index 4cc7107..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-pie.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = {}.propertyIsEnumerable; diff --git a/forward_engineering/node_modules/core-js/modules/_object-sap.js b/forward_engineering/node_modules/core-js/modules/_object-sap.js deleted file mode 100644 index 643535e..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-sap.js +++ /dev/null @@ -1,10 +0,0 @@ -// most Object methods by ES6 should accept primitives -var $export = require('./_export'); -var core = require('./_core'); -var fails = require('./_fails'); -module.exports = function (KEY, exec) { - var fn = (core.Object || {})[KEY] || Object[KEY]; - var exp = {}; - exp[KEY] = exec(fn); - $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_object-to-array.js b/forward_engineering/node_modules/core-js/modules/_object-to-array.js deleted file mode 100644 index 288b5fc..0000000 --- a/forward_engineering/node_modules/core-js/modules/_object-to-array.js +++ /dev/null @@ -1,21 +0,0 @@ -var DESCRIPTORS = require('./_descriptors'); -var getKeys = require('./_object-keys'); -var toIObject = require('./_to-iobject'); -var isEnum = require('./_object-pie').f; -module.exports = function (isEntries) { - return function (it) { - var O = toIObject(it); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || isEnum.call(O, key)) { - result.push(isEntries ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_own-keys.js b/forward_engineering/node_modules/core-js/modules/_own-keys.js deleted file mode 100644 index 84faece..0000000 --- a/forward_engineering/node_modules/core-js/modules/_own-keys.js +++ /dev/null @@ -1,10 +0,0 @@ -// all object keys, includes non-enumerable and symbols -var gOPN = require('./_object-gopn'); -var gOPS = require('./_object-gops'); -var anObject = require('./_an-object'); -var Reflect = require('./_global').Reflect; -module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) { - var keys = gOPN.f(anObject(it)); - var getSymbols = gOPS.f; - return getSymbols ? keys.concat(getSymbols(it)) : keys; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_parse-float.js b/forward_engineering/node_modules/core-js/modules/_parse-float.js deleted file mode 100644 index acfb350..0000000 --- a/forward_engineering/node_modules/core-js/modules/_parse-float.js +++ /dev/null @@ -1,8 +0,0 @@ -var $parseFloat = require('./_global').parseFloat; -var $trim = require('./_string-trim').trim; - -module.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) { - var string = $trim(String(str), 3); - var result = $parseFloat(string); - return result === 0 && string.charAt(0) == '-' ? -0 : result; -} : $parseFloat; diff --git a/forward_engineering/node_modules/core-js/modules/_parse-int.js b/forward_engineering/node_modules/core-js/modules/_parse-int.js deleted file mode 100644 index ddd7172..0000000 --- a/forward_engineering/node_modules/core-js/modules/_parse-int.js +++ /dev/null @@ -1,9 +0,0 @@ -var $parseInt = require('./_global').parseInt; -var $trim = require('./_string-trim').trim; -var ws = require('./_string-ws'); -var hex = /^[-+]?0[xX]/; - -module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) { - var string = $trim(String(str), 3); - return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10)); -} : $parseInt; diff --git a/forward_engineering/node_modules/core-js/modules/_partial.js b/forward_engineering/node_modules/core-js/modules/_partial.js deleted file mode 100644 index ca3f35b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_partial.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -var path = require('./_path'); -var invoke = require('./_invoke'); -var aFunction = require('./_a-function'); -module.exports = function (/* ...pargs */) { - var fn = aFunction(this); - var length = arguments.length; - var pargs = new Array(length); - var i = 0; - var _ = path._; - var holder = false; - while (length > i) if ((pargs[i] = arguments[i++]) === _) holder = true; - return function (/* ...args */) { - var that = this; - var aLen = arguments.length; - var j = 0; - var k = 0; - var args; - if (!holder && !aLen) return invoke(fn, pargs, that); - args = pargs.slice(); - if (holder) for (;length > j; j++) if (args[j] === _) args[j] = arguments[k++]; - while (aLen > k) args.push(arguments[k++]); - return invoke(fn, args, that); - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_path.js b/forward_engineering/node_modules/core-js/modules/_path.js deleted file mode 100644 index 754592a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_path.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_global'); diff --git a/forward_engineering/node_modules/core-js/modules/_perform.js b/forward_engineering/node_modules/core-js/modules/_perform.js deleted file mode 100644 index bfc7b29..0000000 --- a/forward_engineering/node_modules/core-js/modules/_perform.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } -}; diff --git a/forward_engineering/node_modules/core-js/modules/_promise-resolve.js b/forward_engineering/node_modules/core-js/modules/_promise-resolve.js deleted file mode 100644 index c3cac76..0000000 --- a/forward_engineering/node_modules/core-js/modules/_promise-resolve.js +++ /dev/null @@ -1,12 +0,0 @@ -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var newPromiseCapability = require('./_new-promise-capability'); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_property-desc.js b/forward_engineering/node_modules/core-js/modules/_property-desc.js deleted file mode 100644 index 0905934..0000000 --- a/forward_engineering/node_modules/core-js/modules/_property-desc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_redefine-all.js b/forward_engineering/node_modules/core-js/modules/_redefine-all.js deleted file mode 100644 index dcf7944..0000000 --- a/forward_engineering/node_modules/core-js/modules/_redefine-all.js +++ /dev/null @@ -1,5 +0,0 @@ -var redefine = require('./_redefine'); -module.exports = function (target, src, safe) { - for (var key in src) redefine(target, key, src[key], safe); - return target; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_redefine.js b/forward_engineering/node_modules/core-js/modules/_redefine.js deleted file mode 100644 index 442ea61..0000000 --- a/forward_engineering/node_modules/core-js/modules/_redefine.js +++ /dev/null @@ -1,31 +0,0 @@ -var global = require('./_global'); -var hide = require('./_hide'); -var has = require('./_has'); -var SRC = require('./_uid')('src'); -var $toString = require('./_function-to-string'); -var TO_STRING = 'toString'; -var TPL = ('' + $toString).split(TO_STRING); - -require('./_core').inspectSource = function (it) { - return $toString.call(it); -}; - -(module.exports = function (O, key, val, safe) { - var isFunction = typeof val == 'function'; - if (isFunction) has(val, 'name') || hide(val, 'name', key); - if (O[key] === val) return; - if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); - if (O === global) { - O[key] = val; - } else if (!safe) { - delete O[key]; - hide(O, key, val); - } else if (O[key]) { - O[key] = val; - } else { - hide(O, key, val); - } -// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative -})(Function.prototype, TO_STRING, function toString() { - return typeof this == 'function' && this[SRC] || $toString.call(this); -}); diff --git a/forward_engineering/node_modules/core-js/modules/_regexp-exec-abstract.js b/forward_engineering/node_modules/core-js/modules/_regexp-exec-abstract.js deleted file mode 100644 index b722aad..0000000 --- a/forward_engineering/node_modules/core-js/modules/_regexp-exec-abstract.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; - -var classof = require('./_classof'); -var builtinExec = RegExp.prototype.exec; - - // `RegExpExec` abstract operation -// https://tc39.github.io/ecma262/#sec-regexpexec -module.exports = function (R, S) { - var exec = R.exec; - if (typeof exec === 'function') { - var result = exec.call(R, S); - if (typeof result !== 'object') { - throw new TypeError('RegExp exec method returned something other than an Object or null'); - } - return result; - } - if (classof(R) !== 'RegExp') { - throw new TypeError('RegExp#exec called on incompatible receiver'); - } - return builtinExec.call(R, S); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_regexp-exec.js b/forward_engineering/node_modules/core-js/modules/_regexp-exec.js deleted file mode 100644 index f88bfe9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_regexp-exec.js +++ /dev/null @@ -1,58 +0,0 @@ -'use strict'; - -var regexpFlags = require('./_flags'); - -var nativeExec = RegExp.prototype.exec; -// This always refers to the native implementation, because the -// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, -// which loads this file before patching the method. -var nativeReplace = String.prototype.replace; - -var patchedExec = nativeExec; - -var LAST_INDEX = 'lastIndex'; - -var UPDATES_LAST_INDEX_WRONG = (function () { - var re1 = /a/, - re2 = /b*/g; - nativeExec.call(re1, 'a'); - nativeExec.call(re2, 'a'); - return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0; -})(); - -// nonparticipating capturing group, copied from es5-shim's String#split patch. -var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; - -var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; - -if (PATCH) { - patchedExec = function exec(str) { - var re = this; - var lastIndex, reCopy, match, i; - - if (NPCG_INCLUDED) { - reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); - } - if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX]; - - match = nativeExec.call(re, str); - - if (UPDATES_LAST_INDEX_WRONG && match) { - re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex; - } - if (NPCG_INCLUDED && match && match.length > 1) { - // Fix browsers whose `exec` methods don't consistently return `undefined` - // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ - // eslint-disable-next-line no-loop-func - nativeReplace.call(match[0], reCopy, function () { - for (i = 1; i < arguments.length - 2; i++) { - if (arguments[i] === undefined) match[i] = undefined; - } - }); - } - - return match; - }; -} - -module.exports = patchedExec; diff --git a/forward_engineering/node_modules/core-js/modules/_replacer.js b/forward_engineering/node_modules/core-js/modules/_replacer.js deleted file mode 100644 index c37703d..0000000 --- a/forward_engineering/node_modules/core-js/modules/_replacer.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function (regExp, replace) { - var replacer = replace === Object(replace) ? function (part) { - return replace[part]; - } : replace; - return function (it) { - return String(it).replace(regExp, replacer); - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_same-value.js b/forward_engineering/node_modules/core-js/modules/_same-value.js deleted file mode 100644 index c6d045e..0000000 --- a/forward_engineering/node_modules/core-js/modules/_same-value.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.2.9 SameValue(x, y) -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_set-collection-from.js b/forward_engineering/node_modules/core-js/modules/_set-collection-from.js deleted file mode 100644 index d5001f9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_set-collection-from.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var ctx = require('./_ctx'); -var forOf = require('./_for-of'); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) { - var mapFn = arguments[1]; - var mapping, A, n, cb; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - cb = ctx(mapFn, arguments[2], 2); - forOf(source, false, function (nextItem) { - A.push(cb(nextItem, n++)); - }); - } else { - forOf(source, false, A.push, A); - } - return new this(A); - } }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_set-collection-of.js b/forward_engineering/node_modules/core-js/modules/_set-collection-of.js deleted file mode 100644 index f559af3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_set-collection-of.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -var $export = require('./_export'); - -module.exports = function (COLLECTION) { - $export($export.S, COLLECTION, { of: function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); - } }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_set-proto.js b/forward_engineering/node_modules/core-js/modules/_set-proto.js deleted file mode 100644 index c199062..0000000 --- a/forward_engineering/node_modules/core-js/modules/_set-proto.js +++ /dev/null @@ -1,25 +0,0 @@ -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -var isObject = require('./_is-object'); -var anObject = require('./_an-object'); -var check = function (O, proto) { - anObject(O); - if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); -}; -module.exports = { - set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line - function (test, buggy, set) { - try { - set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2); - set(test, []); - buggy = !(test instanceof Array); - } catch (e) { buggy = true; } - return function setPrototypeOf(O, proto) { - check(O, proto); - if (buggy) O.__proto__ = proto; - else set(O, proto); - return O; - }; - }({}, false) : undefined), - check: check -}; diff --git a/forward_engineering/node_modules/core-js/modules/_set-species.js b/forward_engineering/node_modules/core-js/modules/_set-species.js deleted file mode 100644 index 2d505d2..0000000 --- a/forward_engineering/node_modules/core-js/modules/_set-species.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var global = require('./_global'); -var dP = require('./_object-dp'); -var DESCRIPTORS = require('./_descriptors'); -var SPECIES = require('./_wks')('species'); - -module.exports = function (KEY) { - var C = global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_set-to-string-tag.js b/forward_engineering/node_modules/core-js/modules/_set-to-string-tag.js deleted file mode 100644 index 5bd6414..0000000 --- a/forward_engineering/node_modules/core-js/modules/_set-to-string-tag.js +++ /dev/null @@ -1,7 +0,0 @@ -var def = require('./_object-dp').f; -var has = require('./_has'); -var TAG = require('./_wks')('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_shared-key.js b/forward_engineering/node_modules/core-js/modules/_shared-key.js deleted file mode 100644 index d47fe7a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_shared-key.js +++ /dev/null @@ -1,5 +0,0 @@ -var shared = require('./_shared')('keys'); -var uid = require('./_uid'); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_shared.js b/forward_engineering/node_modules/core-js/modules/_shared.js deleted file mode 100644 index 3adec72..0000000 --- a/forward_engineering/node_modules/core-js/modules/_shared.js +++ /dev/null @@ -1,12 +0,0 @@ -var core = require('./_core'); -var global = require('./_global'); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: require('./_library') ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); diff --git a/forward_engineering/node_modules/core-js/modules/_species-constructor.js b/forward_engineering/node_modules/core-js/modules/_species-constructor.js deleted file mode 100644 index 0cb4ffb..0000000 --- a/forward_engineering/node_modules/core-js/modules/_species-constructor.js +++ /dev/null @@ -1,9 +0,0 @@ -// 7.3.20 SpeciesConstructor(O, defaultConstructor) -var anObject = require('./_an-object'); -var aFunction = require('./_a-function'); -var SPECIES = require('./_wks')('species'); -module.exports = function (O, D) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_strict-method.js b/forward_engineering/node_modules/core-js/modules/_strict-method.js deleted file mode 100644 index e68f41b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_strict-method.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var fails = require('./_fails'); - -module.exports = function (method, arg) { - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call - arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); - }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-at.js b/forward_engineering/node_modules/core-js/modules/_string-at.js deleted file mode 100644 index 88d66bd..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-at.js +++ /dev/null @@ -1,17 +0,0 @@ -var toInteger = require('./_to-integer'); -var defined = require('./_defined'); -// true -> String#at -// false -> String#codePointAt -module.exports = function (TO_STRING) { - return function (that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) return TO_STRING ? '' : undefined; - a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff - ? TO_STRING ? s.charAt(i) : a - : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; - }; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-context.js b/forward_engineering/node_modules/core-js/modules/_string-context.js deleted file mode 100644 index becf3fb..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-context.js +++ /dev/null @@ -1,8 +0,0 @@ -// helper for String#{startsWith, endsWith, includes} -var isRegExp = require('./_is-regexp'); -var defined = require('./_defined'); - -module.exports = function (that, searchString, NAME) { - if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!"); - return String(defined(that)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-html.js b/forward_engineering/node_modules/core-js/modules/_string-html.js deleted file mode 100644 index 1dcc95b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-html.js +++ /dev/null @@ -1,19 +0,0 @@ -var $export = require('./_export'); -var fails = require('./_fails'); -var defined = require('./_defined'); -var quot = /"/g; -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -var createHTML = function (string, tag, attribute, value) { - var S = String(defined(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; -module.exports = function (NAME, exec) { - var O = {}; - O[NAME] = exec(createHTML); - $export($export.P + $export.F * fails(function () { - var test = ''[NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }), 'String', O); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-pad.js b/forward_engineering/node_modules/core-js/modules/_string-pad.js deleted file mode 100644 index ceb6077..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-pad.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = require('./_to-length'); -var repeat = require('./_string-repeat'); -var defined = require('./_defined'); - -module.exports = function (that, maxLength, fillString, left) { - var S = String(defined(that)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - if (intMaxLength <= stringLength || fillStr == '') return S; - var fillLen = intMaxLength - stringLength; - var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return left ? stringFiller + S : S + stringFiller; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-repeat.js b/forward_engineering/node_modules/core-js/modules/_string-repeat.js deleted file mode 100644 index a69b962..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-repeat.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var toInteger = require('./_to-integer'); -var defined = require('./_defined'); - -module.exports = function repeat(count) { - var str = String(defined(this)); - var res = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError("Count can't be negative"); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str; - return res; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_string-trim.js b/forward_engineering/node_modules/core-js/modules/_string-trim.js deleted file mode 100644 index 6b54a81..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-trim.js +++ /dev/null @@ -1,30 +0,0 @@ -var $export = require('./_export'); -var defined = require('./_defined'); -var fails = require('./_fails'); -var spaces = require('./_string-ws'); -var space = '[' + spaces + ']'; -var non = '\u200b\u0085'; -var ltrim = RegExp('^' + space + space + '*'); -var rtrim = RegExp(space + space + '*$'); - -var exporter = function (KEY, exec, ALIAS) { - var exp = {}; - var FORCE = fails(function () { - return !!spaces[KEY]() || non[KEY]() != non; - }); - var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY]; - if (ALIAS) exp[ALIAS] = fn; - $export($export.P + $export.F * FORCE, 'String', exp); -}; - -// 1 -> String#trimLeft -// 2 -> String#trimRight -// 3 -> String#trim -var trim = exporter.trim = function (string, TYPE) { - string = String(defined(string)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; -}; - -module.exports = exporter; diff --git a/forward_engineering/node_modules/core-js/modules/_string-ws.js b/forward_engineering/node_modules/core-js/modules/_string-ws.js deleted file mode 100644 index 2c68cf9..0000000 --- a/forward_engineering/node_modules/core-js/modules/_string-ws.js +++ /dev/null @@ -1,2 +0,0 @@ -module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' + - '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; diff --git a/forward_engineering/node_modules/core-js/modules/_task.js b/forward_engineering/node_modules/core-js/modules/_task.js deleted file mode 100644 index 8777a6e..0000000 --- a/forward_engineering/node_modules/core-js/modules/_task.js +++ /dev/null @@ -1,84 +0,0 @@ -var ctx = require('./_ctx'); -var invoke = require('./_invoke'); -var html = require('./_html'); -var cel = require('./_dom-create'); -var global = require('./_global'); -var process = global.process; -var setTask = global.setImmediate; -var clearTask = global.clearImmediate; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; -var run = function () { - var id = +this; - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; -var listener = function (event) { - run.call(event.data); -}; -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!setTask || !clearTask) { - setTask = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - invoke(typeof fn == 'function' ? fn : Function(fn), args); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (require('./_cof')(process) == 'process') { - defer = function (id) { - process.nextTick(ctx(run, id, 1)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(ctx(run, id, 1)); - }; - // Browsers with MessageChannel, includes WebWorkers - } else if (MessageChannel) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) { - defer = function (id) { - global.postMessage(id + '', '*'); - }; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in cel('script')) { - defer = function (id) { - html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run.call(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(ctx(run, id, 1), 0); - }; - } -} -module.exports = { - set: setTask, - clear: clearTask -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-absolute-index.js b/forward_engineering/node_modules/core-js/modules/_to-absolute-index.js deleted file mode 100644 index dfee02e..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-absolute-index.js +++ /dev/null @@ -1,7 +0,0 @@ -var toInteger = require('./_to-integer'); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-index.js b/forward_engineering/node_modules/core-js/modules/_to-index.js deleted file mode 100644 index 8f51c32..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-index.js +++ /dev/null @@ -1,10 +0,0 @@ -// https://tc39.github.io/ecma262/#sec-toindex -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length!'); - return length; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-integer.js b/forward_engineering/node_modules/core-js/modules/_to-integer.js deleted file mode 100644 index 3d50f97..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-integer.js +++ /dev/null @@ -1,6 +0,0 @@ -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-iobject.js b/forward_engineering/node_modules/core-js/modules/_to-iobject.js deleted file mode 100644 index 7614503..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-iobject.js +++ /dev/null @@ -1,6 +0,0 @@ -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = require('./_iobject'); -var defined = require('./_defined'); -module.exports = function (it) { - return IObject(defined(it)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-length.js b/forward_engineering/node_modules/core-js/modules/_to-length.js deleted file mode 100644 index a9db501..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-length.js +++ /dev/null @@ -1,6 +0,0 @@ -// 7.1.15 ToLength -var toInteger = require('./_to-integer'); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-object.js b/forward_engineering/node_modules/core-js/modules/_to-object.js deleted file mode 100644 index 0efea4c..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-object.js +++ /dev/null @@ -1,5 +0,0 @@ -// 7.1.13 ToObject(argument) -var defined = require('./_defined'); -module.exports = function (it) { - return Object(defined(it)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_to-primitive.js b/forward_engineering/node_modules/core-js/modules/_to-primitive.js deleted file mode 100644 index de3dd6b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_to-primitive.js +++ /dev/null @@ -1,12 +0,0 @@ -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = require('./_is-object'); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_typed-array.js b/forward_engineering/node_modules/core-js/modules/_typed-array.js deleted file mode 100644 index 30d9c0b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_typed-array.js +++ /dev/null @@ -1,480 +0,0 @@ -'use strict'; -if (require('./_descriptors')) { - var LIBRARY = require('./_library'); - var global = require('./_global'); - var fails = require('./_fails'); - var $export = require('./_export'); - var $typed = require('./_typed'); - var $buffer = require('./_typed-buffer'); - var ctx = require('./_ctx'); - var anInstance = require('./_an-instance'); - var propertyDesc = require('./_property-desc'); - var hide = require('./_hide'); - var redefineAll = require('./_redefine-all'); - var toInteger = require('./_to-integer'); - var toLength = require('./_to-length'); - var toIndex = require('./_to-index'); - var toAbsoluteIndex = require('./_to-absolute-index'); - var toPrimitive = require('./_to-primitive'); - var has = require('./_has'); - var classof = require('./_classof'); - var isObject = require('./_is-object'); - var toObject = require('./_to-object'); - var isArrayIter = require('./_is-array-iter'); - var create = require('./_object-create'); - var getPrototypeOf = require('./_object-gpo'); - var gOPN = require('./_object-gopn').f; - var getIterFn = require('./core.get-iterator-method'); - var uid = require('./_uid'); - var wks = require('./_wks'); - var createArrayMethod = require('./_array-methods'); - var createArrayIncludes = require('./_array-includes'); - var speciesConstructor = require('./_species-constructor'); - var ArrayIterators = require('./es6.array.iterator'); - var Iterators = require('./_iterators'); - var $iterDetect = require('./_iter-detect'); - var setSpecies = require('./_set-species'); - var arrayFill = require('./_array-fill'); - var arrayCopyWithin = require('./_array-copy-within'); - var $DP = require('./_object-dp'); - var $GOPD = require('./_object-gopd'); - var dP = $DP.f; - var gOPD = $GOPD.f; - var RangeError = global.RangeError; - var TypeError = global.TypeError; - var Uint8Array = global.Uint8Array; - var ARRAY_BUFFER = 'ArrayBuffer'; - var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER; - var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; - var PROTOTYPE = 'prototype'; - var ArrayProto = Array[PROTOTYPE]; - var $ArrayBuffer = $buffer.ArrayBuffer; - var $DataView = $buffer.DataView; - var arrayForEach = createArrayMethod(0); - var arrayFilter = createArrayMethod(2); - var arraySome = createArrayMethod(3); - var arrayEvery = createArrayMethod(4); - var arrayFind = createArrayMethod(5); - var arrayFindIndex = createArrayMethod(6); - var arrayIncludes = createArrayIncludes(true); - var arrayIndexOf = createArrayIncludes(false); - var arrayValues = ArrayIterators.values; - var arrayKeys = ArrayIterators.keys; - var arrayEntries = ArrayIterators.entries; - var arrayLastIndexOf = ArrayProto.lastIndexOf; - var arrayReduce = ArrayProto.reduce; - var arrayReduceRight = ArrayProto.reduceRight; - var arrayJoin = ArrayProto.join; - var arraySort = ArrayProto.sort; - var arraySlice = ArrayProto.slice; - var arrayToString = ArrayProto.toString; - var arrayToLocaleString = ArrayProto.toLocaleString; - var ITERATOR = wks('iterator'); - var TAG = wks('toStringTag'); - var TYPED_CONSTRUCTOR = uid('typed_constructor'); - var DEF_CONSTRUCTOR = uid('def_constructor'); - var ALL_CONSTRUCTORS = $typed.CONSTR; - var TYPED_ARRAY = $typed.TYPED; - var VIEW = $typed.VIEW; - var WRONG_LENGTH = 'Wrong length!'; - - var $map = createArrayMethod(1, function (O, length) { - return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length); - }); - - var LITTLE_ENDIAN = fails(function () { - // eslint-disable-next-line no-undef - return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1; - }); - - var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () { - new Uint8Array(1).set({}); - }); - - var toOffset = function (it, BYTES) { - var offset = toInteger(it); - if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!'); - return offset; - }; - - var validate = function (it) { - if (isObject(it) && TYPED_ARRAY in it) return it; - throw TypeError(it + ' is not a typed array!'); - }; - - var allocate = function (C, length) { - if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) { - throw TypeError('It is not a typed array constructor!'); - } return new C(length); - }; - - var speciesFromList = function (O, list) { - return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list); - }; - - var fromList = function (C, list) { - var index = 0; - var length = list.length; - var result = allocate(C, length); - while (length > index) result[index] = list[index++]; - return result; - }; - - var addGetter = function (it, key, internal) { - dP(it, key, { get: function () { return this._d[internal]; } }); - }; - - var $from = function from(source /* , mapfn, thisArg */) { - var O = toObject(source); - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iterFn = getIterFn(O); - var i, length, values, result, step, iterator; - if (iterFn != undefined && !isArrayIter(iterFn)) { - for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) { - values.push(step.value); - } O = values; - } - if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2); - for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) { - result[i] = mapping ? mapfn(O[i], i) : O[i]; - } - return result; - }; - - var $of = function of(/* ...items */) { - var index = 0; - var length = arguments.length; - var result = allocate(this, length); - while (length > index) result[index] = arguments[index++]; - return result; - }; - - // iOS Safari 6.x fails here - var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); }); - - var $toLocaleString = function toLocaleString() { - return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments); - }; - - var proto = { - copyWithin: function copyWithin(target, start /* , end */) { - return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined); - }, - every: function every(callbackfn /* , thisArg */) { - return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars - return arrayFill.apply(validate(this), arguments); - }, - filter: function filter(callbackfn /* , thisArg */) { - return speciesFromList(this, arrayFilter(validate(this), callbackfn, - arguments.length > 1 ? arguments[1] : undefined)); - }, - find: function find(predicate /* , thisArg */) { - return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - findIndex: function findIndex(predicate /* , thisArg */) { - return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined); - }, - forEach: function forEach(callbackfn /* , thisArg */) { - arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - indexOf: function indexOf(searchElement /* , fromIndex */) { - return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - includes: function includes(searchElement /* , fromIndex */) { - return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); - }, - join: function join(separator) { // eslint-disable-line no-unused-vars - return arrayJoin.apply(validate(this), arguments); - }, - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars - return arrayLastIndexOf.apply(validate(this), arguments); - }, - map: function map(mapfn /* , thisArg */) { - return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined); - }, - reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduce.apply(validate(this), arguments); - }, - reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars - return arrayReduceRight.apply(validate(this), arguments); - }, - reverse: function reverse() { - var that = this; - var length = validate(that).length; - var middle = Math.floor(length / 2); - var index = 0; - var value; - while (index < middle) { - value = that[index]; - that[index++] = that[--length]; - that[length] = value; - } return that; - }, - some: function some(callbackfn /* , thisArg */) { - return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); - }, - sort: function sort(comparefn) { - return arraySort.call(validate(this), comparefn); - }, - subarray: function subarray(begin, end) { - var O = validate(this); - var length = O.length; - var $begin = toAbsoluteIndex(begin, length); - return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))( - O.buffer, - O.byteOffset + $begin * O.BYTES_PER_ELEMENT, - toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin) - ); - } - }; - - var $slice = function slice(start, end) { - return speciesFromList(this, arraySlice.call(validate(this), start, end)); - }; - - var $set = function set(arrayLike /* , offset */) { - validate(this); - var offset = toOffset(arguments[1], 1); - var length = this.length; - var src = toObject(arrayLike); - var len = toLength(src.length); - var index = 0; - if (len + offset > length) throw RangeError(WRONG_LENGTH); - while (index < len) this[offset + index] = src[index++]; - }; - - var $iterators = { - entries: function entries() { - return arrayEntries.call(validate(this)); - }, - keys: function keys() { - return arrayKeys.call(validate(this)); - }, - values: function values() { - return arrayValues.call(validate(this)); - } - }; - - var isTAIndex = function (target, key) { - return isObject(target) - && target[TYPED_ARRAY] - && typeof key != 'symbol' - && key in target - && String(+key) == String(key); - }; - var $getDesc = function getOwnPropertyDescriptor(target, key) { - return isTAIndex(target, key = toPrimitive(key, true)) - ? propertyDesc(2, target[key]) - : gOPD(target, key); - }; - var $setDesc = function defineProperty(target, key, desc) { - if (isTAIndex(target, key = toPrimitive(key, true)) - && isObject(desc) - && has(desc, 'value') - && !has(desc, 'get') - && !has(desc, 'set') - // TODO: add validation descriptor w/o calling accessors - && !desc.configurable - && (!has(desc, 'writable') || desc.writable) - && (!has(desc, 'enumerable') || desc.enumerable) - ) { - target[key] = desc.value; - return target; - } return dP(target, key, desc); - }; - - if (!ALL_CONSTRUCTORS) { - $GOPD.f = $getDesc; - $DP.f = $setDesc; - } - - $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', { - getOwnPropertyDescriptor: $getDesc, - defineProperty: $setDesc - }); - - if (fails(function () { arrayToString.call({}); })) { - arrayToString = arrayToLocaleString = function toString() { - return arrayJoin.call(this); - }; - } - - var $TypedArrayPrototype$ = redefineAll({}, proto); - redefineAll($TypedArrayPrototype$, $iterators); - hide($TypedArrayPrototype$, ITERATOR, $iterators.values); - redefineAll($TypedArrayPrototype$, { - slice: $slice, - set: $set, - constructor: function () { /* noop */ }, - toString: arrayToString, - toLocaleString: $toLocaleString - }); - addGetter($TypedArrayPrototype$, 'buffer', 'b'); - addGetter($TypedArrayPrototype$, 'byteOffset', 'o'); - addGetter($TypedArrayPrototype$, 'byteLength', 'l'); - addGetter($TypedArrayPrototype$, 'length', 'e'); - dP($TypedArrayPrototype$, TAG, { - get: function () { return this[TYPED_ARRAY]; } - }); - - // eslint-disable-next-line max-statements - module.exports = function (KEY, BYTES, wrapper, CLAMPED) { - CLAMPED = !!CLAMPED; - var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'; - var GETTER = 'get' + KEY; - var SETTER = 'set' + KEY; - var TypedArray = global[NAME]; - var Base = TypedArray || {}; - var TAC = TypedArray && getPrototypeOf(TypedArray); - var FORCED = !TypedArray || !$typed.ABV; - var O = {}; - var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE]; - var getter = function (that, index) { - var data = that._d; - return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN); - }; - var setter = function (that, index, value) { - var data = that._d; - if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff; - data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN); - }; - var addElement = function (that, index) { - dP(that, index, { - get: function () { - return getter(this, index); - }, - set: function (value) { - return setter(this, index, value); - }, - enumerable: true - }); - }; - if (FORCED) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME, '_d'); - var index = 0; - var offset = 0; - var buffer, byteLength, length, klass; - if (!isObject(data)) { - length = toIndex(data); - byteLength = length * BYTES; - buffer = new $ArrayBuffer(byteLength); - } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - buffer = data; - offset = toOffset($offset, BYTES); - var $len = data.byteLength; - if ($length === undefined) { - if ($len % BYTES) throw RangeError(WRONG_LENGTH); - byteLength = $len - offset; - if (byteLength < 0) throw RangeError(WRONG_LENGTH); - } else { - byteLength = toLength($length) * BYTES; - if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH); - } - length = byteLength / BYTES; - } else if (TYPED_ARRAY in data) { - return fromList(TypedArray, data); - } else { - return $from.call(TypedArray, data); - } - hide(that, '_d', { - b: buffer, - o: offset, - l: byteLength, - e: length, - v: new $DataView(buffer) - }); - while (index < length) addElement(that, index++); - }); - TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$); - hide(TypedArrayPrototype, 'constructor', TypedArray); - } else if (!fails(function () { - TypedArray(1); - }) || !fails(function () { - new TypedArray(-1); // eslint-disable-line no-new - }) || !$iterDetect(function (iter) { - new TypedArray(); // eslint-disable-line no-new - new TypedArray(null); // eslint-disable-line no-new - new TypedArray(1.5); // eslint-disable-line no-new - new TypedArray(iter); // eslint-disable-line no-new - }, true)) { - TypedArray = wrapper(function (that, data, $offset, $length) { - anInstance(that, TypedArray, NAME); - var klass; - // `ws` module bug, temporarily remove validation length for Uint8Array - // https://github.com/websockets/ws/pull/645 - if (!isObject(data)) return new Base(toIndex(data)); - if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) { - return $length !== undefined - ? new Base(data, toOffset($offset, BYTES), $length) - : $offset !== undefined - ? new Base(data, toOffset($offset, BYTES)) - : new Base(data); - } - if (TYPED_ARRAY in data) return fromList(TypedArray, data); - return $from.call(TypedArray, data); - }); - arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) { - if (!(key in TypedArray)) hide(TypedArray, key, Base[key]); - }); - TypedArray[PROTOTYPE] = TypedArrayPrototype; - if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray; - } - var $nativeIterator = TypedArrayPrototype[ITERATOR]; - var CORRECT_ITER_NAME = !!$nativeIterator - && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined); - var $iterator = $iterators.values; - hide(TypedArray, TYPED_CONSTRUCTOR, true); - hide(TypedArrayPrototype, TYPED_ARRAY, NAME); - hide(TypedArrayPrototype, VIEW, true); - hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray); - - if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) { - dP(TypedArrayPrototype, TAG, { - get: function () { return NAME; } - }); - } - - O[NAME] = TypedArray; - - $export($export.G + $export.W + $export.F * (TypedArray != Base), O); - - $export($export.S, NAME, { - BYTES_PER_ELEMENT: BYTES - }); - - $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, { - from: $from, - of: $of - }); - - if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES); - - $export($export.P, NAME, proto); - - setSpecies(NAME); - - $export($export.P + $export.F * FORCED_SET, NAME, { set: $set }); - - $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators); - - if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString; - - $export($export.P + $export.F * fails(function () { - new TypedArray(1).slice(); - }), NAME, { slice: $slice }); - - $export($export.P + $export.F * (fails(function () { - return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString(); - }) || !fails(function () { - TypedArrayPrototype.toLocaleString.call([1, 2]); - })), NAME, { toLocaleString: $toLocaleString }); - - Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator; - if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator); - }; -} else module.exports = function () { /* empty */ }; diff --git a/forward_engineering/node_modules/core-js/modules/_typed-buffer.js b/forward_engineering/node_modules/core-js/modules/_typed-buffer.js deleted file mode 100644 index c24cef3..0000000 --- a/forward_engineering/node_modules/core-js/modules/_typed-buffer.js +++ /dev/null @@ -1,276 +0,0 @@ -'use strict'; -var global = require('./_global'); -var DESCRIPTORS = require('./_descriptors'); -var LIBRARY = require('./_library'); -var $typed = require('./_typed'); -var hide = require('./_hide'); -var redefineAll = require('./_redefine-all'); -var fails = require('./_fails'); -var anInstance = require('./_an-instance'); -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -var toIndex = require('./_to-index'); -var gOPN = require('./_object-gopn').f; -var dP = require('./_object-dp').f; -var arrayFill = require('./_array-fill'); -var setToStringTag = require('./_set-to-string-tag'); -var ARRAY_BUFFER = 'ArrayBuffer'; -var DATA_VIEW = 'DataView'; -var PROTOTYPE = 'prototype'; -var WRONG_LENGTH = 'Wrong length!'; -var WRONG_INDEX = 'Wrong index!'; -var $ArrayBuffer = global[ARRAY_BUFFER]; -var $DataView = global[DATA_VIEW]; -var Math = global.Math; -var RangeError = global.RangeError; -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = global.Infinity; -var BaseBuffer = $ArrayBuffer; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; -var BUFFER = 'buffer'; -var BYTE_LENGTH = 'byteLength'; -var BYTE_OFFSET = 'byteOffset'; -var $BUFFER = DESCRIPTORS ? '_b' : BUFFER; -var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH; -var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET; - -// IEEE754 conversions based on https://github.com/feross/ieee754 -function packIEEE754(value, mLen, nBytes) { - var buffer = new Array(nBytes); - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0; - var i = 0; - var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; - var e, m, c; - value = abs(value); - // eslint-disable-next-line no-self-compare - if (value != value || value === Infinity) { - // eslint-disable-next-line no-self-compare - m = value != value ? 1 : 0; - e = eMax; - } else { - e = floor(log(value) / LN2); - if (value * (c = pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * pow(2, mLen); - e = e + eBias; - } else { - m = value * pow(2, eBias - 1) * pow(2, mLen); - e = 0; - } - } - for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8); - e = e << mLen | m; - eLen += mLen; - for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8); - buffer[--i] |= s * 128; - return buffer; -} -function unpackIEEE754(buffer, mLen, nBytes) { - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = eLen - 7; - var i = nBytes - 1; - var s = buffer[i--]; - var e = s & 127; - var m; - s >>= 7; - for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8); - m = e & (1 << -nBits) - 1; - e >>= -nBits; - nBits += mLen; - for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8); - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : s ? -Infinity : Infinity; - } else { - m = m + pow(2, mLen); - e = e - eBias; - } return (s ? -1 : 1) * m * pow(2, e - mLen); -} - -function unpackI32(bytes) { - return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0]; -} -function packI8(it) { - return [it & 0xff]; -} -function packI16(it) { - return [it & 0xff, it >> 8 & 0xff]; -} -function packI32(it) { - return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff]; -} -function packF64(it) { - return packIEEE754(it, 52, 8); -} -function packF32(it) { - return packIEEE754(it, 23, 4); -} - -function addGetter(C, key, internal) { - dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } }); -} - -function get(view, bytes, index, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = store.slice(start, start + bytes); - return isLittleEndian ? pack : pack.reverse(); -} -function set(view, bytes, index, conversion, value, isLittleEndian) { - var numIndex = +index; - var intIndex = toIndex(numIndex); - if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX); - var store = view[$BUFFER]._b; - var start = intIndex + view[$OFFSET]; - var pack = conversion(+value); - for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1]; -} - -if (!$typed.ABV) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer, ARRAY_BUFFER); - var byteLength = toIndex(length); - this._b = arrayFill.call(new Array(byteLength), 0); - this[$LENGTH] = byteLength; - }; - - $DataView = function DataView(buffer, byteOffset, byteLength) { - anInstance(this, $DataView, DATA_VIEW); - anInstance(buffer, $ArrayBuffer, DATA_VIEW); - var bufferLength = buffer[$LENGTH]; - var offset = toInteger(byteOffset); - if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!'); - byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); - if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); - this[$BUFFER] = buffer; - this[$OFFSET] = offset; - this[$LENGTH] = byteLength; - }; - - if (DESCRIPTORS) { - addGetter($ArrayBuffer, BYTE_LENGTH, '_l'); - addGetter($DataView, BUFFER, '_b'); - addGetter($DataView, BYTE_LENGTH, '_l'); - addGetter($DataView, BYTE_OFFSET, '_o'); - } - - redefineAll($DataView[PROTOTYPE], { - getInt8: function getInt8(byteOffset) { - return get(this, 1, byteOffset)[0] << 24 >> 24; - }, - getUint8: function getUint8(byteOffset) { - return get(this, 1, byteOffset)[0]; - }, - getInt16: function getInt16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return (bytes[1] << 8 | bytes[0]) << 16 >> 16; - }, - getUint16: function getUint16(byteOffset /* , littleEndian */) { - var bytes = get(this, 2, byteOffset, arguments[1]); - return bytes[1] << 8 | bytes[0]; - }, - getInt32: function getInt32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])); - }, - getUint32: function getUint32(byteOffset /* , littleEndian */) { - return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0; - }, - getFloat32: function getFloat32(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4); - }, - getFloat64: function getFloat64(byteOffset /* , littleEndian */) { - return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8); - }, - setInt8: function setInt8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setUint8: function setUint8(byteOffset, value) { - set(this, 1, byteOffset, packI8, value); - }, - setInt16: function setInt16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setUint16: function setUint16(byteOffset, value /* , littleEndian */) { - set(this, 2, byteOffset, packI16, value, arguments[2]); - }, - setInt32: function setInt32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setUint32: function setUint32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packI32, value, arguments[2]); - }, - setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { - set(this, 4, byteOffset, packF32, value, arguments[2]); - }, - setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { - set(this, 8, byteOffset, packF64, value, arguments[2]); - } - }); -} else { - if (!fails(function () { - $ArrayBuffer(1); - }) || !fails(function () { - new $ArrayBuffer(-1); // eslint-disable-line no-new - }) || fails(function () { - new $ArrayBuffer(); // eslint-disable-line no-new - new $ArrayBuffer(1.5); // eslint-disable-line no-new - new $ArrayBuffer(NaN); // eslint-disable-line no-new - return $ArrayBuffer.name != ARRAY_BUFFER; - })) { - $ArrayBuffer = function ArrayBuffer(length) { - anInstance(this, $ArrayBuffer); - return new BaseBuffer(toIndex(length)); - }; - var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE]; - for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) { - if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]); - } - if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer; - } - // iOS Safari 7.x bug - var view = new $DataView(new $ArrayBuffer(2)); - var $setInt8 = $DataView[PROTOTYPE].setInt8; - view.setInt8(0, 2147483648); - view.setInt8(1, 2147483649); - if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], { - setInt8: function setInt8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - }, - setUint8: function setUint8(byteOffset, value) { - $setInt8.call(this, byteOffset, value << 24 >> 24); - } - }, true); -} -setToStringTag($ArrayBuffer, ARRAY_BUFFER); -setToStringTag($DataView, DATA_VIEW); -hide($DataView[PROTOTYPE], $typed.VIEW, true); -exports[ARRAY_BUFFER] = $ArrayBuffer; -exports[DATA_VIEW] = $DataView; diff --git a/forward_engineering/node_modules/core-js/modules/_typed.js b/forward_engineering/node_modules/core-js/modules/_typed.js deleted file mode 100644 index 8747ffd..0000000 --- a/forward_engineering/node_modules/core-js/modules/_typed.js +++ /dev/null @@ -1,28 +0,0 @@ -var global = require('./_global'); -var hide = require('./_hide'); -var uid = require('./_uid'); -var TYPED = uid('typed_array'); -var VIEW = uid('view'); -var ABV = !!(global.ArrayBuffer && global.DataView); -var CONSTR = ABV; -var i = 0; -var l = 9; -var Typed; - -var TypedArrayConstructors = ( - 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array' -).split(','); - -while (i < l) { - if (Typed = global[TypedArrayConstructors[i++]]) { - hide(Typed.prototype, TYPED, true); - hide(Typed.prototype, VIEW, true); - } else CONSTR = false; -} - -module.exports = { - ABV: ABV, - CONSTR: CONSTR, - TYPED: TYPED, - VIEW: VIEW -}; diff --git a/forward_engineering/node_modules/core-js/modules/_uid.js b/forward_engineering/node_modules/core-js/modules/_uid.js deleted file mode 100644 index ffbe718..0000000 --- a/forward_engineering/node_modules/core-js/modules/_uid.js +++ /dev/null @@ -1,5 +0,0 @@ -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_user-agent.js b/forward_engineering/node_modules/core-js/modules/_user-agent.js deleted file mode 100644 index 363fedc..0000000 --- a/forward_engineering/node_modules/core-js/modules/_user-agent.js +++ /dev/null @@ -1,4 +0,0 @@ -var global = require('./_global'); -var navigator = global.navigator; - -module.exports = navigator && navigator.userAgent || ''; diff --git a/forward_engineering/node_modules/core-js/modules/_validate-collection.js b/forward_engineering/node_modules/core-js/modules/_validate-collection.js deleted file mode 100644 index cec1cef..0000000 --- a/forward_engineering/node_modules/core-js/modules/_validate-collection.js +++ /dev/null @@ -1,5 +0,0 @@ -var isObject = require('./_is-object'); -module.exports = function (it, TYPE) { - if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); - return it; -}; diff --git a/forward_engineering/node_modules/core-js/modules/_wks-define.js b/forward_engineering/node_modules/core-js/modules/_wks-define.js deleted file mode 100644 index 7284d6a..0000000 --- a/forward_engineering/node_modules/core-js/modules/_wks-define.js +++ /dev/null @@ -1,9 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var LIBRARY = require('./_library'); -var wksExt = require('./_wks-ext'); -var defineProperty = require('./_object-dp').f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/_wks-ext.js b/forward_engineering/node_modules/core-js/modules/_wks-ext.js deleted file mode 100644 index 13bd83b..0000000 --- a/forward_engineering/node_modules/core-js/modules/_wks-ext.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = require('./_wks'); diff --git a/forward_engineering/node_modules/core-js/modules/_wks.js b/forward_engineering/node_modules/core-js/modules/_wks.js deleted file mode 100644 index e33f857..0000000 --- a/forward_engineering/node_modules/core-js/modules/_wks.js +++ /dev/null @@ -1,11 +0,0 @@ -var store = require('./_shared')('wks'); -var uid = require('./_uid'); -var Symbol = require('./_global').Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; diff --git a/forward_engineering/node_modules/core-js/modules/core.delay.js b/forward_engineering/node_modules/core-js/modules/core.delay.js deleted file mode 100644 index 73712c0..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.delay.js +++ /dev/null @@ -1,12 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var $export = require('./_export'); -var partial = require('./_partial'); -// https://esdiscuss.org/topic/promise-returning-delay-function -$export($export.G + $export.F, { - delay: function delay(time) { - return new (core.Promise || global.Promise)(function (resolve) { - setTimeout(partial.call(resolve, true), time); - }); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/core.dict.js b/forward_engineering/node_modules/core-js/modules/core.dict.js deleted file mode 100644 index 5422ad3..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.dict.js +++ /dev/null @@ -1,157 +0,0 @@ -'use strict'; -var ctx = require('./_ctx'); -var $export = require('./_export'); -var createDesc = require('./_property-desc'); -var assign = require('./_object-assign'); -var create = require('./_object-create'); -var getPrototypeOf = require('./_object-gpo'); -var getKeys = require('./_object-keys'); -var dP = require('./_object-dp'); -var keyOf = require('./_keyof'); -var aFunction = require('./_a-function'); -var forOf = require('./_for-of'); -var isIterable = require('./core.is-iterable'); -var $iterCreate = require('./_iter-create'); -var step = require('./_iter-step'); -var isObject = require('./_is-object'); -var toIObject = require('./_to-iobject'); -var DESCRIPTORS = require('./_descriptors'); -var has = require('./_has'); - -// 0 -> Dict.forEach -// 1 -> Dict.map -// 2 -> Dict.filter -// 3 -> Dict.some -// 4 -> Dict.every -// 5 -> Dict.find -// 6 -> Dict.findKey -// 7 -> Dict.mapPairs -var createDictMethod = function (TYPE) { - var IS_MAP = TYPE == 1; - var IS_EVERY = TYPE == 4; - return function (object, callbackfn, that /* = undefined */) { - var f = ctx(callbackfn, that, 3); - var O = toIObject(object); - var result = IS_MAP || TYPE == 7 || TYPE == 2 - ? new (typeof this == 'function' ? this : Dict)() : undefined; - var key, val, res; - for (key in O) if (has(O, key)) { - val = O[key]; - res = f(val, key, object); - if (TYPE) { - if (IS_MAP) result[key] = res; // map - else if (res) switch (TYPE) { - case 2: result[key] = val; break; // filter - case 3: return true; // some - case 5: return val; // find - case 6: return key; // findKey - case 7: result[res[0]] = res[1]; // mapPairs - } else if (IS_EVERY) return false; // every - } - } - return TYPE == 3 || IS_EVERY ? IS_EVERY : result; - }; -}; -var findKey = createDictMethod(6); - -var createDictIter = function (kind) { - return function (it) { - return new DictIterator(it, kind); - }; -}; -var DictIterator = function (iterated, kind) { - this._t = toIObject(iterated); // target - this._a = getKeys(iterated); // keys - this._i = 0; // next index - this._k = kind; // kind -}; -$iterCreate(DictIterator, 'Dict', function () { - var that = this; - var O = that._t; - var keys = that._a; - var kind = that._k; - var key; - do { - if (that._i >= keys.length) { - that._t = undefined; - return step(1); - } - } while (!has(O, key = keys[that._i++])); - if (kind == 'keys') return step(0, key); - if (kind == 'values') return step(0, O[key]); - return step(0, [key, O[key]]); -}); - -function Dict(iterable) { - var dict = create(null); - if (iterable != undefined) { - if (isIterable(iterable)) { - forOf(iterable, true, function (key, value) { - dict[key] = value; - }); - } else assign(dict, iterable); - } - return dict; -} -Dict.prototype = null; - -function reduce(object, mapfn, init) { - aFunction(mapfn); - var O = toIObject(object); - var keys = getKeys(O); - var length = keys.length; - var i = 0; - var memo, key; - if (arguments.length < 3) { - if (!length) throw TypeError('Reduce of empty object with no initial value'); - memo = O[keys[i++]]; - } else memo = Object(init); - while (length > i) if (has(O, key = keys[i++])) { - memo = mapfn(memo, O[key], key, object); - } - return memo; -} - -function includes(object, el) { - // eslint-disable-next-line no-self-compare - return (el == el ? keyOf(object, el) : findKey(object, function (it) { - // eslint-disable-next-line no-self-compare - return it != it; - })) !== undefined; -} - -function get(object, key) { - if (has(object, key)) return object[key]; -} -function set(object, key, value) { - if (DESCRIPTORS && key in Object) dP.f(object, key, createDesc(0, value)); - else object[key] = value; - return object; -} - -function isDict(it) { - return isObject(it) && getPrototypeOf(it) === Dict.prototype; -} - -$export($export.G + $export.F, { Dict: Dict }); - -$export($export.S, 'Dict', { - keys: createDictIter('keys'), - values: createDictIter('values'), - entries: createDictIter('entries'), - forEach: createDictMethod(0), - map: createDictMethod(1), - filter: createDictMethod(2), - some: createDictMethod(3), - every: createDictMethod(4), - find: createDictMethod(5), - findKey: findKey, - mapPairs: createDictMethod(7), - reduce: reduce, - keyOf: keyOf, - includes: includes, - has: has, - get: get, - set: set, - isDict: isDict -}); diff --git a/forward_engineering/node_modules/core-js/modules/core.function.part.js b/forward_engineering/node_modules/core-js/modules/core.function.part.js deleted file mode 100644 index 050154f..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.function.part.js +++ /dev/null @@ -1,7 +0,0 @@ -var path = require('./_path'); -var $export = require('./_export'); - -// Placeholder -require('./_core')._ = path._ = path._ || {}; - -$export($export.P + $export.F, 'Function', { part: require('./_partial') }); diff --git a/forward_engineering/node_modules/core-js/modules/core.get-iterator-method.js b/forward_engineering/node_modules/core-js/modules/core.get-iterator-method.js deleted file mode 100644 index 9b6fa62..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.get-iterator-method.js +++ /dev/null @@ -1,8 +0,0 @@ -var classof = require('./_classof'); -var ITERATOR = require('./_wks')('iterator'); -var Iterators = require('./_iterators'); -module.exports = require('./_core').getIteratorMethod = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; diff --git a/forward_engineering/node_modules/core-js/modules/core.get-iterator.js b/forward_engineering/node_modules/core-js/modules/core.get-iterator.js deleted file mode 100644 index 04568c8..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.get-iterator.js +++ /dev/null @@ -1,7 +0,0 @@ -var anObject = require('./_an-object'); -var get = require('./core.get-iterator-method'); -module.exports = require('./_core').getIterator = function (it) { - var iterFn = get(it); - if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!'); - return anObject(iterFn.call(it)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/core.is-iterable.js b/forward_engineering/node_modules/core-js/modules/core.is-iterable.js deleted file mode 100644 index 388e5e3..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.is-iterable.js +++ /dev/null @@ -1,10 +0,0 @@ -var classof = require('./_classof'); -var ITERATOR = require('./_wks')('iterator'); -var Iterators = require('./_iterators'); -module.exports = require('./_core').isIterable = function (it) { - var O = Object(it); - return O[ITERATOR] !== undefined - || '@@iterator' in O - // eslint-disable-next-line no-prototype-builtins - || Iterators.hasOwnProperty(classof(O)); -}; diff --git a/forward_engineering/node_modules/core-js/modules/core.number.iterator.js b/forward_engineering/node_modules/core-js/modules/core.number.iterator.js deleted file mode 100644 index fa37791..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.number.iterator.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -require('./_iter-define')(Number, 'Number', function (iterated) { - this._l = +iterated; - this._i = 0; -}, function () { - var i = this._i++; - var done = !(i < this._l); - return { done: done, value: done ? undefined : i }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/core.object.classof.js b/forward_engineering/node_modules/core-js/modules/core.object.classof.js deleted file mode 100644 index fe16595..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.object.classof.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { classof: require('./_classof') }); diff --git a/forward_engineering/node_modules/core-js/modules/core.object.define.js b/forward_engineering/node_modules/core-js/modules/core.object.define.js deleted file mode 100644 index e4e717b..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.object.define.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var define = require('./_object-define'); - -$export($export.S + $export.F, 'Object', { define: define }); diff --git a/forward_engineering/node_modules/core-js/modules/core.object.is-object.js b/forward_engineering/node_modules/core-js/modules/core.object.is-object.js deleted file mode 100644 index fea80b6..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.object.is-object.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { isObject: require('./_is-object') }); diff --git a/forward_engineering/node_modules/core-js/modules/core.object.make.js b/forward_engineering/node_modules/core-js/modules/core.object.make.js deleted file mode 100644 index 51d4774..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.object.make.js +++ /dev/null @@ -1,9 +0,0 @@ -var $export = require('./_export'); -var define = require('./_object-define'); -var create = require('./_object-create'); - -$export($export.S + $export.F, 'Object', { - make: function (proto, mixin) { - return define(create(proto), mixin); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/core.regexp.escape.js b/forward_engineering/node_modules/core-js/modules/core.regexp.escape.js deleted file mode 100644 index 3ddd748..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.regexp.escape.js +++ /dev/null @@ -1,5 +0,0 @@ -// https://github.com/benjamingr/RexExp.escape -var $export = require('./_export'); -var $re = require('./_replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&'); - -$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } }); diff --git a/forward_engineering/node_modules/core-js/modules/core.string.escape-html.js b/forward_engineering/node_modules/core-js/modules/core.string.escape-html.js deleted file mode 100644 index f967886..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.string.escape-html.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $re = require('./_replacer')(/[&<>"']/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' -}); - -$export($export.P + $export.F, 'String', { escapeHTML: function escapeHTML() { return $re(this); } }); diff --git a/forward_engineering/node_modules/core-js/modules/core.string.unescape-html.js b/forward_engineering/node_modules/core-js/modules/core.string.unescape-html.js deleted file mode 100644 index eb8a6cf..0000000 --- a/forward_engineering/node_modules/core-js/modules/core.string.unescape-html.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $re = require('./_replacer')(/&(?:amp|lt|gt|quot|apos);/g, { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}); - -$export($export.P + $export.F, 'String', { unescapeHTML: function unescapeHTML() { return $re(this); } }); diff --git a/forward_engineering/node_modules/core-js/modules/es5.js b/forward_engineering/node_modules/core-js/modules/es5.js deleted file mode 100644 index ca10612..0000000 --- a/forward_engineering/node_modules/core-js/modules/es5.js +++ /dev/null @@ -1,35 +0,0 @@ -// This file still here for a legacy code and will be removed in a near time -require('./es6.object.create'); -require('./es6.object.define-property'); -require('./es6.object.define-properties'); -require('./es6.object.get-own-property-descriptor'); -require('./es6.object.get-prototype-of'); -require('./es6.object.keys'); -require('./es6.object.get-own-property-names'); -require('./es6.object.freeze'); -require('./es6.object.seal'); -require('./es6.object.prevent-extensions'); -require('./es6.object.is-frozen'); -require('./es6.object.is-sealed'); -require('./es6.object.is-extensible'); -require('./es6.function.bind'); -require('./es6.array.is-array'); -require('./es6.array.join'); -require('./es6.array.slice'); -require('./es6.array.sort'); -require('./es6.array.for-each'); -require('./es6.array.map'); -require('./es6.array.filter'); -require('./es6.array.some'); -require('./es6.array.every'); -require('./es6.array.reduce'); -require('./es6.array.reduce-right'); -require('./es6.array.index-of'); -require('./es6.array.last-index-of'); -require('./es6.date.now'); -require('./es6.date.to-iso-string'); -require('./es6.date.to-json'); -require('./es6.parse-int'); -require('./es6.parse-float'); -require('./es6.string.trim'); -require('./es6.regexp.to-string'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.copy-within.js b/forward_engineering/node_modules/core-js/modules/es6.array.copy-within.js deleted file mode 100644 index f866a95..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.copy-within.js +++ /dev/null @@ -1,6 +0,0 @@ -// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) -var $export = require('./_export'); - -$export($export.P, 'Array', { copyWithin: require('./_array-copy-within') }); - -require('./_add-to-unscopables')('copyWithin'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.every.js b/forward_engineering/node_modules/core-js/modules/es6.array.every.js deleted file mode 100644 index cfd448f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.every.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $every = require('./_array-methods')(4); - -$export($export.P + $export.F * !require('./_strict-method')([].every, true), 'Array', { - // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg]) - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.fill.js b/forward_engineering/node_modules/core-js/modules/es6.array.fill.js deleted file mode 100644 index ac17144..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.fill.js +++ /dev/null @@ -1,6 +0,0 @@ -// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length) -var $export = require('./_export'); - -$export($export.P, 'Array', { fill: require('./_array-fill') }); - -require('./_add-to-unscopables')('fill'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.filter.js b/forward_engineering/node_modules/core-js/modules/es6.array.filter.js deleted file mode 100644 index 447ecf4..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.filter.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $filter = require('./_array-methods')(2); - -$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', { - // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg]) - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.find-index.js b/forward_engineering/node_modules/core-js/modules/es6.array.find-index.js deleted file mode 100644 index 374cadd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.find-index.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined) -var $export = require('./_export'); -var $find = require('./_array-methods')(6); -var KEY = 'findIndex'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -require('./_add-to-unscopables')(KEY); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.find.js b/forward_engineering/node_modules/core-js/modules/es6.array.find.js deleted file mode 100644 index 4fbe76c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.find.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) -var $export = require('./_export'); -var $find = require('./_array-methods')(5); -var KEY = 'find'; -var forced = true; -// Shouldn't skip holes -if (KEY in []) Array(1)[KEY](function () { forced = false; }); -$export($export.P + $export.F * forced, 'Array', { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); -require('./_add-to-unscopables')(KEY); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.for-each.js b/forward_engineering/node_modules/core-js/modules/es6.array.for-each.js deleted file mode 100644 index 525ba07..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.for-each.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $forEach = require('./_array-methods')(0); -var STRICT = require('./_strict-method')([].forEach, true); - -$export($export.P + $export.F * !STRICT, 'Array', { - // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) - forEach: function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.from.js b/forward_engineering/node_modules/core-js/modules/es6.array.from.js deleted file mode 100644 index 4db3801..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.from.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; -var ctx = require('./_ctx'); -var $export = require('./_export'); -var toObject = require('./_to-object'); -var call = require('./_iter-call'); -var isArrayIter = require('./_is-array-iter'); -var toLength = require('./_to-length'); -var createProperty = require('./_create-property'); -var getIterFn = require('./core.get-iterator-method'); - -$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', { - // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined) - from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var aLen = arguments.length; - var mapfn = aLen > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var index = 0; - var iterFn = getIterFn(O); - var length, result, step, iterator; - if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2); - // if object isn't iterable or it's array with default iterator - use simple case - if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) { - for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) { - createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value); - } - } else { - length = toLength(O.length); - for (result = new C(length); length > index; index++) { - createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]); - } - } - result.length = index; - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.index-of.js b/forward_engineering/node_modules/core-js/modules/es6.array.index-of.js deleted file mode 100644 index 231c92e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.index-of.js +++ /dev/null @@ -1,15 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $indexOf = require('./_array-includes')(false); -var $native = [].indexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', { - // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? $native.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.is-array.js b/forward_engineering/node_modules/core-js/modules/es6.array.is-array.js deleted file mode 100644 index 27ca6fc..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.is-array.js +++ /dev/null @@ -1,4 +0,0 @@ -// 22.1.2.2 / 15.4.3.2 Array.isArray(arg) -var $export = require('./_export'); - -$export($export.S, 'Array', { isArray: require('./_is-array') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.iterator.js b/forward_engineering/node_modules/core-js/modules/es6.array.iterator.js deleted file mode 100644 index c64e88b..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.iterator.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; -var addToUnscopables = require('./_add-to-unscopables'); -var step = require('./_iter-step'); -var Iterators = require('./_iterators'); -var toIObject = require('./_to-iobject'); - -// 22.1.3.4 Array.prototype.entries() -// 22.1.3.13 Array.prototype.keys() -// 22.1.3.29 Array.prototype.values() -// 22.1.3.30 Array.prototype[@@iterator]() -module.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) { - this._t = toIObject(iterated); // target - this._i = 0; // next index - this._k = kind; // kind -// 22.1.5.2.1 %ArrayIteratorPrototype%.next() -}, function () { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = undefined; - return step(1); - } - if (kind == 'keys') return step(0, index); - if (kind == 'values') return step(0, O[index]); - return step(0, [index, O[index]]); -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7) -Iterators.Arguments = Iterators.Array; - -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.join.js b/forward_engineering/node_modules/core-js/modules/es6.array.join.js deleted file mode 100644 index 48e55d2..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.join.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// 22.1.3.13 Array.prototype.join(separator) -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var arrayJoin = [].join; - -// fallback for not array-like strings -$export($export.P + $export.F * (require('./_iobject') != Object || !require('./_strict-method')(arrayJoin)), 'Array', { - join: function join(separator) { - return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.last-index-of.js b/forward_engineering/node_modules/core-js/modules/es6.array.last-index-of.js deleted file mode 100644 index 1f70e34..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.last-index-of.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var toInteger = require('./_to-integer'); -var toLength = require('./_to-length'); -var $native = [].lastIndexOf; -var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0; - -$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', { - // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex]) - lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0; - var O = toIObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0; - return -1; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.map.js b/forward_engineering/node_modules/core-js/modules/es6.array.map.js deleted file mode 100644 index 1326033..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.map.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $map = require('./_array-methods')(1); - -$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', { - // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg]) - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.of.js b/forward_engineering/node_modules/core-js/modules/es6.array.of.js deleted file mode 100644 index b83e058..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.of.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var createProperty = require('./_create-property'); - -// WebKit Array.of isn't generic -$export($export.S + $export.F * require('./_fails')(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}), 'Array', { - // 22.1.2.3 Array.of( ...items) - of: function of(/* ...args */) { - var index = 0; - var aLen = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(aLen); - while (aLen > index) createProperty(result, index, arguments[index++]); - result.length = aLen; - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.reduce-right.js b/forward_engineering/node_modules/core-js/modules/es6.array.reduce-right.js deleted file mode 100644 index 168e421..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.reduce-right.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $reduce = require('./_array-reduce'); - -$export($export.P + $export.F * !require('./_strict-method')([].reduceRight, true), 'Array', { - // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue]) - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], true); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.reduce.js b/forward_engineering/node_modules/core-js/modules/es6.array.reduce.js deleted file mode 100644 index f4e4761..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.reduce.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $reduce = require('./_array-reduce'); - -$export($export.P + $export.F * !require('./_strict-method')([].reduce, true), 'Array', { - // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments[1], false); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.slice.js b/forward_engineering/node_modules/core-js/modules/es6.array.slice.js deleted file mode 100644 index bdd496e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.slice.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var html = require('./_html'); -var cof = require('./_cof'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -var arraySlice = [].slice; - -// fallback for not array-like ES3 strings and DOM objects -$export($export.P + $export.F * require('./_fails')(function () { - if (html) arraySlice.call(html); -}), 'Array', { - slice: function slice(begin, end) { - var len = toLength(this.length); - var klass = cof(this); - end = end === undefined ? len : end; - if (klass == 'Array') return arraySlice.call(this, begin, end); - var start = toAbsoluteIndex(begin, len); - var upTo = toAbsoluteIndex(end, len); - var size = toLength(upTo - start); - var cloned = new Array(size); - var i = 0; - for (; i < size; i++) cloned[i] = klass == 'String' - ? this.charAt(start + i) - : this[start + i]; - return cloned; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.some.js b/forward_engineering/node_modules/core-js/modules/es6.array.some.js deleted file mode 100644 index 14c5eec..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.some.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $some = require('./_array-methods')(3); - -$export($export.P + $export.F * !require('./_strict-method')([].some, true), 'Array', { - // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg]) - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments[1]); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.sort.js b/forward_engineering/node_modules/core-js/modules/es6.array.sort.js deleted file mode 100644 index 39817ff..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.sort.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var toObject = require('./_to-object'); -var fails = require('./_fails'); -var $sort = [].sort; -var test = [1, 2, 3]; - -$export($export.P + $export.F * (fails(function () { - // IE8- - test.sort(undefined); -}) || !fails(function () { - // V8 bug - test.sort(null); - // Old WebKit -}) || !require('./_strict-method')($sort)), 'Array', { - // 22.1.3.25 Array.prototype.sort(comparefn) - sort: function sort(comparefn) { - return comparefn === undefined - ? $sort.call(toObject(this)) - : $sort.call(toObject(this), aFunction(comparefn)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.array.species.js b/forward_engineering/node_modules/core-js/modules/es6.array.species.js deleted file mode 100644 index ce0b891..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.array.species.js +++ /dev/null @@ -1 +0,0 @@ -require('./_set-species')('Array'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.date.now.js b/forward_engineering/node_modules/core-js/modules/es6.date.now.js deleted file mode 100644 index 65f134e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.date.now.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.3.3.1 / 15.9.4.4 Date.now() -var $export = require('./_export'); - -$export($export.S, 'Date', { now: function () { return new Date().getTime(); } }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.date.to-iso-string.js b/forward_engineering/node_modules/core-js/modules/es6.date.to-iso-string.js deleted file mode 100644 index 13b2781..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.date.to-iso-string.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString() -var $export = require('./_export'); -var toISOString = require('./_date-to-iso-string'); - -// PhantomJS / old WebKit has a broken implementations -$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', { - toISOString: toISOString -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.date.to-json.js b/forward_engineering/node_modules/core-js/modules/es6.date.to-json.js deleted file mode 100644 index 1508e04..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.date.to-json.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); - -$export($export.P + $export.F * require('./_fails')(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString(); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.date.to-primitive.js b/forward_engineering/node_modules/core-js/modules/es6.date.to-primitive.js deleted file mode 100644 index 41754b9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.date.to-primitive.js +++ /dev/null @@ -1,4 +0,0 @@ -var TO_PRIMITIVE = require('./_wks')('toPrimitive'); -var proto = Date.prototype; - -if (!(TO_PRIMITIVE in proto)) require('./_hide')(proto, TO_PRIMITIVE, require('./_date-to-primitive')); diff --git a/forward_engineering/node_modules/core-js/modules/es6.date.to-string.js b/forward_engineering/node_modules/core-js/modules/es6.date.to-string.js deleted file mode 100644 index 15ee75a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.date.to-string.js +++ /dev/null @@ -1,12 +0,0 @@ -var DateProto = Date.prototype; -var INVALID_DATE = 'Invalid Date'; -var TO_STRING = 'toString'; -var $toString = DateProto[TO_STRING]; -var getTime = DateProto.getTime; -if (new Date(NaN) + '' != INVALID_DATE) { - require('./_redefine')(DateProto, TO_STRING, function toString() { - var value = getTime.call(this); - // eslint-disable-next-line no-self-compare - return value === value ? $toString.call(this) : INVALID_DATE; - }); -} diff --git a/forward_engineering/node_modules/core-js/modules/es6.function.bind.js b/forward_engineering/node_modules/core-js/modules/es6.function.bind.js deleted file mode 100644 index 38e84e1..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.function.bind.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...) -var $export = require('./_export'); - -$export($export.P, 'Function', { bind: require('./_bind') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.function.has-instance.js b/forward_engineering/node_modules/core-js/modules/es6.function.has-instance.js deleted file mode 100644 index 7556ed9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.function.has-instance.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var isObject = require('./_is-object'); -var getPrototypeOf = require('./_object-gpo'); -var HAS_INSTANCE = require('./_wks')('hasInstance'); -var FunctionProto = Function.prototype; -// 19.2.3.6 Function.prototype[@@hasInstance](V) -if (!(HAS_INSTANCE in FunctionProto)) require('./_object-dp').f(FunctionProto, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.function.name.js b/forward_engineering/node_modules/core-js/modules/es6.function.name.js deleted file mode 100644 index 05dd333..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.function.name.js +++ /dev/null @@ -1,16 +0,0 @@ -var dP = require('./_object-dp').f; -var FProto = Function.prototype; -var nameRE = /^\s*function ([^ (]*)/; -var NAME = 'name'; - -// 19.2.4.2 name -NAME in FProto || require('./_descriptors') && dP(FProto, NAME, { - configurable: true, - get: function () { - try { - return ('' + this).match(nameRE)[1]; - } catch (e) { - return ''; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.map.js b/forward_engineering/node_modules/core-js/modules/es6.map.js deleted file mode 100644 index a282f02..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.map.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var strong = require('./_collection-strong'); -var validate = require('./_validate-collection'); -var MAP = 'Map'; - -// 23.1 Map Objects -module.exports = require('./_collection')(MAP, function (get) { - return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = strong.getEntry(validate(this, MAP), key); - return entry && entry.v; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return strong.def(validate(this, MAP), key === 0 ? 0 : key, value); - } -}, strong, true); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.acosh.js b/forward_engineering/node_modules/core-js/modules/es6.math.acosh.js deleted file mode 100644 index 8a8989e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.acosh.js +++ /dev/null @@ -1,18 +0,0 @@ -// 20.2.2.3 Math.acosh(x) -var $export = require('./_export'); -var log1p = require('./_math-log1p'); -var sqrt = Math.sqrt; -var $acosh = Math.acosh; - -$export($export.S + $export.F * !($acosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - && Math.floor($acosh(Number.MAX_VALUE)) == 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - && $acosh(Infinity) == Infinity -), 'Math', { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? Math.log(x) + Math.LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.asinh.js b/forward_engineering/node_modules/core-js/modules/es6.math.asinh.js deleted file mode 100644 index ddf4666..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.asinh.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.5 Math.asinh(x) -var $export = require('./_export'); -var $asinh = Math.asinh; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1)); -} - -// Tor Browser bug: Math.asinh(0) -> -0 -$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.atanh.js b/forward_engineering/node_modules/core-js/modules/es6.math.atanh.js deleted file mode 100644 index af3c3e8..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.atanh.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.2.2.7 Math.atanh(x) -var $export = require('./_export'); -var $atanh = Math.atanh; - -// Tor Browser bug: Math.atanh(-0) -> 0 -$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.cbrt.js b/forward_engineering/node_modules/core-js/modules/es6.math.cbrt.js deleted file mode 100644 index e45ac44..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.cbrt.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.2.2.9 Math.cbrt(x) -var $export = require('./_export'); -var sign = require('./_math-sign'); - -$export($export.S, 'Math', { - cbrt: function cbrt(x) { - return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.clz32.js b/forward_engineering/node_modules/core-js/modules/es6.math.clz32.js deleted file mode 100644 index 1e4d7e1..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.clz32.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.11 Math.clz32(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.cosh.js b/forward_engineering/node_modules/core-js/modules/es6.math.cosh.js deleted file mode 100644 index 1e0cffc..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.cosh.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.2.2.12 Math.cosh(x) -var $export = require('./_export'); -var exp = Math.exp; - -$export($export.S, 'Math', { - cosh: function cosh(x) { - return (exp(x = +x) + exp(-x)) / 2; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.expm1.js b/forward_engineering/node_modules/core-js/modules/es6.math.expm1.js deleted file mode 100644 index da4c90d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.expm1.js +++ /dev/null @@ -1,5 +0,0 @@ -// 20.2.2.14 Math.expm1(x) -var $export = require('./_export'); -var $expm1 = require('./_math-expm1'); - -$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.fround.js b/forward_engineering/node_modules/core-js/modules/es6.math.fround.js deleted file mode 100644 index 9c262f2..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.fround.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.16 Math.fround(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { fround: require('./_math-fround') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.hypot.js b/forward_engineering/node_modules/core-js/modules/es6.math.hypot.js deleted file mode 100644 index 41ffdb2..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.hypot.js +++ /dev/null @@ -1,25 +0,0 @@ -// 20.2.2.17 Math.hypot([value1[, value2[, … ]]]) -var $export = require('./_export'); -var abs = Math.abs; - -$export($export.S, 'Math', { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * Math.sqrt(sum); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.imul.js b/forward_engineering/node_modules/core-js/modules/es6.math.imul.js deleted file mode 100644 index 96e683d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.imul.js +++ /dev/null @@ -1,17 +0,0 @@ -// 20.2.2.18 Math.imul(x, y) -var $export = require('./_export'); -var $imul = Math.imul; - -// some WebKit versions fails with big numbers, some has wrong arity -$export($export.S + $export.F * require('./_fails')(function () { - return $imul(0xffffffff, 5) != -5 || $imul.length != 2; -}), 'Math', { - imul: function imul(x, y) { - var UINT16 = 0xffff; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.log10.js b/forward_engineering/node_modules/core-js/modules/es6.math.log10.js deleted file mode 100644 index 9ee8ae6..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.log10.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.21 Math.log10(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - log10: function log10(x) { - return Math.log(x) * Math.LOG10E; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.log1p.js b/forward_engineering/node_modules/core-js/modules/es6.math.log1p.js deleted file mode 100644 index 6295980..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.log1p.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.20 Math.log1p(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { log1p: require('./_math-log1p') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.log2.js b/forward_engineering/node_modules/core-js/modules/es6.math.log2.js deleted file mode 100644 index 03d127c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.log2.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.22 Math.log2(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - log2: function log2(x) { - return Math.log(x) / Math.LN2; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.sign.js b/forward_engineering/node_modules/core-js/modules/es6.math.sign.js deleted file mode 100644 index 981f69e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.sign.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.2.2.28 Math.sign(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { sign: require('./_math-sign') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.sinh.js b/forward_engineering/node_modules/core-js/modules/es6.math.sinh.js deleted file mode 100644 index 5760633..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.sinh.js +++ /dev/null @@ -1,15 +0,0 @@ -// 20.2.2.30 Math.sinh(x) -var $export = require('./_export'); -var expm1 = require('./_math-expm1'); -var exp = Math.exp; - -// V8 near Chromium 38 has a problem with very small numbers -$export($export.S + $export.F * require('./_fails')(function () { - return !Math.sinh(-2e-17) != -2e-17; -}), 'Math', { - sinh: function sinh(x) { - return Math.abs(x = +x) < 1 - ? (expm1(x) - expm1(-x)) / 2 - : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.tanh.js b/forward_engineering/node_modules/core-js/modules/es6.math.tanh.js deleted file mode 100644 index 0d3135b..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.tanh.js +++ /dev/null @@ -1,12 +0,0 @@ -// 20.2.2.33 Math.tanh(x) -var $export = require('./_export'); -var expm1 = require('./_math-expm1'); -var exp = Math.exp; - -$export($export.S, 'Math', { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.math.trunc.js b/forward_engineering/node_modules/core-js/modules/es6.math.trunc.js deleted file mode 100644 index 35ddb80..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.math.trunc.js +++ /dev/null @@ -1,8 +0,0 @@ -// 20.2.2.34 Math.trunc(x) -var $export = require('./_export'); - -$export($export.S, 'Math', { - trunc: function trunc(it) { - return (it > 0 ? Math.floor : Math.ceil)(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.constructor.js b/forward_engineering/node_modules/core-js/modules/es6.number.constructor.js deleted file mode 100644 index aee40e9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.constructor.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; -var global = require('./_global'); -var has = require('./_has'); -var cof = require('./_cof'); -var inheritIfRequired = require('./_inherit-if-required'); -var toPrimitive = require('./_to-primitive'); -var fails = require('./_fails'); -var gOPN = require('./_object-gopn').f; -var gOPD = require('./_object-gopd').f; -var dP = require('./_object-dp').f; -var $trim = require('./_string-trim').trim; -var NUMBER = 'Number'; -var $Number = global[NUMBER]; -var Base = $Number; -var proto = $Number.prototype; -// Opera ~12 has broken Object#toString -var BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER; -var TRIM = 'trim' in String.prototype; - -// 7.1.3 ToNumber(argument) -var toNumber = function (argument) { - var it = toPrimitive(argument, false); - if (typeof it == 'string' && it.length > 2) { - it = TRIM ? it.trim() : $trim(it, 3); - var first = it.charCodeAt(0); - var third, radix, maxCode; - if (first === 43 || first === 45) { - third = it.charCodeAt(2); - if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix - } else if (first === 48) { - switch (it.charCodeAt(1)) { - case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i - case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i - default: return +it; - } - for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) { - code = digits.charCodeAt(i); - // parseInt parses a string to a first unavailable symbol - // but ToNumber should return NaN if a string contains unavailable symbols - if (code < 48 || code > maxCode) return NaN; - } return parseInt(digits, radix); - } - } return +it; -}; - -if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) { - $Number = function Number(value) { - var it = arguments.length < 1 ? 0 : value; - var that = this; - return that instanceof $Number - // check on 1..constructor(foo) case - && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER) - ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it); - }; - for (var keys = require('./_descriptors') ? gOPN(Base) : ( - // ES3: - 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' + - // ES6 (in case, if modules with ES6 Number statics required before): - 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' + - 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger' - ).split(','), j = 0, key; keys.length > j; j++) { - if (has(Base, key = keys[j]) && !has($Number, key)) { - dP($Number, key, gOPD(Base, key)); - } - } - $Number.prototype = proto; - proto.constructor = $Number; - require('./_redefine')(global, NUMBER, $Number); -} diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.epsilon.js b/forward_engineering/node_modules/core-js/modules/es6.number.epsilon.js deleted file mode 100644 index 34a2ec5..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.epsilon.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.1 Number.EPSILON -var $export = require('./_export'); - -$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.is-finite.js b/forward_engineering/node_modules/core-js/modules/es6.number.is-finite.js deleted file mode 100644 index 8719da9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.is-finite.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.1.2.2 Number.isFinite(number) -var $export = require('./_export'); -var _isFinite = require('./_global').isFinite; - -$export($export.S, 'Number', { - isFinite: function isFinite(it) { - return typeof it == 'number' && _isFinite(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.is-integer.js b/forward_engineering/node_modules/core-js/modules/es6.number.is-integer.js deleted file mode 100644 index f1ab5dc..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.is-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.3 Number.isInteger(number) -var $export = require('./_export'); - -$export($export.S, 'Number', { isInteger: require('./_is-integer') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.is-nan.js b/forward_engineering/node_modules/core-js/modules/es6.number.is-nan.js deleted file mode 100644 index 01d76ba..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.is-nan.js +++ /dev/null @@ -1,9 +0,0 @@ -// 20.1.2.4 Number.isNaN(number) -var $export = require('./_export'); - -$export($export.S, 'Number', { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.is-safe-integer.js b/forward_engineering/node_modules/core-js/modules/es6.number.is-safe-integer.js deleted file mode 100644 index 004e7d1..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.is-safe-integer.js +++ /dev/null @@ -1,10 +0,0 @@ -// 20.1.2.5 Number.isSafeInteger(number) -var $export = require('./_export'); -var isInteger = require('./_is-integer'); -var abs = Math.abs; - -$export($export.S, 'Number', { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1fffffffffffff; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.max-safe-integer.js b/forward_engineering/node_modules/core-js/modules/es6.number.max-safe-integer.js deleted file mode 100644 index a4f248f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.max-safe-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.6 Number.MAX_SAFE_INTEGER -var $export = require('./_export'); - -$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.min-safe-integer.js b/forward_engineering/node_modules/core-js/modules/es6.number.min-safe-integer.js deleted file mode 100644 index 34df374..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.min-safe-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -// 20.1.2.10 Number.MIN_SAFE_INTEGER -var $export = require('./_export'); - -$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.parse-float.js b/forward_engineering/node_modules/core-js/modules/es6.number.parse-float.js deleted file mode 100644 index 317c431..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseFloat = require('./_parse-float'); -// 20.1.2.12 Number.parseFloat(string) -$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.parse-int.js b/forward_engineering/node_modules/core-js/modules/es6.number.parse-int.js deleted file mode 100644 index cb48da2..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseInt = require('./_parse-int'); -// 20.1.2.13 Number.parseInt(string, radix) -$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.to-fixed.js b/forward_engineering/node_modules/core-js/modules/es6.number.to-fixed.js deleted file mode 100644 index 2bf78af..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.to-fixed.js +++ /dev/null @@ -1,114 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toInteger = require('./_to-integer'); -var aNumberValue = require('./_a-number-value'); -var repeat = require('./_string-repeat'); -var $toFixed = 1.0.toFixed; -var floor = Math.floor; -var data = [0, 0, 0, 0, 0, 0]; -var ERROR = 'Number.toFixed: incorrect invocation!'; -var ZERO = '0'; - -var multiply = function (n, c) { - var i = -1; - var c2 = c; - while (++i < 6) { - c2 += n * data[i]; - data[i] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } -}; -var divide = function (n) { - var i = 6; - var c = 0; - while (--i >= 0) { - c += data[i]; - data[i] = floor(c / n); - c = (c % n) * 1e7; - } -}; -var numToString = function () { - var i = 6; - var s = ''; - while (--i >= 0) { - if (s !== '' || i === 0 || data[i] !== 0) { - var t = String(data[i]); - s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t; - } - } return s; -}; -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -$export($export.P + $export.F * (!!$toFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !require('./_fails')(function () { - // V8 ~ Android 4.3- - $toFixed.call({}); -})), 'Number', { - toFixed: function toFixed(fractionDigits) { - var x = aNumberValue(this, ERROR); - var f = toInteger(fractionDigits); - var s = ''; - var m = ZERO; - var e, z, j, k; - if (f < 0 || f > 20) throw RangeError(ERROR); - // eslint-disable-next-line no-self-compare - if (x != x) return 'NaN'; - if (x <= -1e21 || x >= 1e21) return String(x); - if (x < 0) { - s = '-'; - x = -x; - } - if (x > 1e-21) { - e = log(x * pow(2, 69, 1)) - 69; - z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = f; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - m = numToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - m = numToString() + repeat.call(ZERO, f); - } - } - if (f > 0) { - k = m.length; - m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f)); - } else { - m = s + m; - } return m; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.number.to-precision.js b/forward_engineering/node_modules/core-js/modules/es6.number.to-precision.js deleted file mode 100644 index 0d92527..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.number.to-precision.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $fails = require('./_fails'); -var aNumberValue = require('./_a-number-value'); -var $toPrecision = 1.0.toPrecision; - -$export($export.P + $export.F * ($fails(function () { - // IE7- - return $toPrecision.call(1, undefined) !== '1'; -}) || !$fails(function () { - // V8 ~ Android 4.3- - $toPrecision.call({}); -})), 'Number', { - toPrecision: function toPrecision(precision) { - var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); - return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.assign.js b/forward_engineering/node_modules/core-js/modules/es6.object.assign.js deleted file mode 100644 index d28085a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.assign.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.1.3.1 Object.assign(target, source) -var $export = require('./_export'); - -$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.create.js b/forward_engineering/node_modules/core-js/modules/es6.object.create.js deleted file mode 100644 index 70627d6..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.create.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -$export($export.S, 'Object', { create: require('./_object-create') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.define-properties.js b/forward_engineering/node_modules/core-js/modules/es6.object.define-properties.js deleted file mode 100644 index 5ec3421..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.define-properties.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties) -$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperties: require('./_object-dps') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.define-property.js b/forward_engineering/node_modules/core-js/modules/es6.object.define-property.js deleted file mode 100644 index 1206858..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var $export = require('./_export'); -// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes) -$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.freeze.js b/forward_engineering/node_modules/core-js/modules/es6.object.freeze.js deleted file mode 100644 index 0856ce9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.freeze.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.5 Object.freeze(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('freeze', function ($freeze) { - return function freeze(it) { - return $freeze && isObject(it) ? $freeze(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js b/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js deleted file mode 100644 index 9df2141..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) -var toIObject = require('./_to-iobject'); -var $getOwnPropertyDescriptor = require('./_object-gopd').f; - -require('./_object-sap')('getOwnPropertyDescriptor', function () { - return function getOwnPropertyDescriptor(it, key) { - return $getOwnPropertyDescriptor(toIObject(it), key); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-names.js b/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-names.js deleted file mode 100644 index 172f51c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.get-own-property-names.js +++ /dev/null @@ -1,4 +0,0 @@ -// 19.1.2.7 Object.getOwnPropertyNames(O) -require('./_object-sap')('getOwnPropertyNames', function () { - return require('./_object-gopn-ext').f; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.get-prototype-of.js b/forward_engineering/node_modules/core-js/modules/es6.object.get-prototype-of.js deleted file mode 100644 index 8fe2728..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.get-prototype-of.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.9 Object.getPrototypeOf(O) -var toObject = require('./_to-object'); -var $getPrototypeOf = require('./_object-gpo'); - -require('./_object-sap')('getPrototypeOf', function () { - return function getPrototypeOf(it) { - return $getPrototypeOf(toObject(it)); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.is-extensible.js b/forward_engineering/node_modules/core-js/modules/es6.object.is-extensible.js deleted file mode 100644 index 5cd4575..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.is-extensible.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.11 Object.isExtensible(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isExtensible', function ($isExtensible) { - return function isExtensible(it) { - return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.is-frozen.js b/forward_engineering/node_modules/core-js/modules/es6.object.is-frozen.js deleted file mode 100644 index 0ceeabb..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.is-frozen.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.12 Object.isFrozen(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isFrozen', function ($isFrozen) { - return function isFrozen(it) { - return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.is-sealed.js b/forward_engineering/node_modules/core-js/modules/es6.object.is-sealed.js deleted file mode 100644 index 7fa8dde..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.is-sealed.js +++ /dev/null @@ -1,8 +0,0 @@ -// 19.1.2.13 Object.isSealed(O) -var isObject = require('./_is-object'); - -require('./_object-sap')('isSealed', function ($isSealed) { - return function isSealed(it) { - return isObject(it) ? $isSealed ? $isSealed(it) : false : true; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.is.js b/forward_engineering/node_modules/core-js/modules/es6.object.is.js deleted file mode 100644 index 204d703..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.is.js +++ /dev/null @@ -1,3 +0,0 @@ -// 19.1.3.10 Object.is(value1, value2) -var $export = require('./_export'); -$export($export.S, 'Object', { is: require('./_same-value') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.keys.js b/forward_engineering/node_modules/core-js/modules/es6.object.keys.js deleted file mode 100644 index e9dade7..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.keys.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.14 Object.keys(O) -var toObject = require('./_to-object'); -var $keys = require('./_object-keys'); - -require('./_object-sap')('keys', function () { - return function keys(it) { - return $keys(toObject(it)); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.prevent-extensions.js b/forward_engineering/node_modules/core-js/modules/es6.object.prevent-extensions.js deleted file mode 100644 index 2f72918..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.prevent-extensions.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.15 Object.preventExtensions(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('preventExtensions', function ($preventExtensions) { - return function preventExtensions(it) { - return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.seal.js b/forward_engineering/node_modules/core-js/modules/es6.object.seal.js deleted file mode 100644 index 12c3f6a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.seal.js +++ /dev/null @@ -1,9 +0,0 @@ -// 19.1.2.17 Object.seal(O) -var isObject = require('./_is-object'); -var meta = require('./_meta').onFreeze; - -require('./_object-sap')('seal', function ($seal) { - return function seal(it) { - return $seal && isObject(it) ? $seal(meta(it)) : it; - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.set-prototype-of.js b/forward_engineering/node_modules/core-js/modules/es6.object.set-prototype-of.js deleted file mode 100644 index 461dbd2..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -// 19.1.3.19 Object.setPrototypeOf(O, proto) -var $export = require('./_export'); -$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.object.to-string.js b/forward_engineering/node_modules/core-js/modules/es6.object.to-string.js deleted file mode 100644 index 1c7b85f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.object.to-string.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// 19.1.3.6 Object.prototype.toString() -var classof = require('./_classof'); -var test = {}; -test[require('./_wks')('toStringTag')] = 'z'; -if (test + '' != '[object z]') { - require('./_redefine')(Object.prototype, 'toString', function toString() { - return '[object ' + classof(this) + ']'; - }, true); -} diff --git a/forward_engineering/node_modules/core-js/modules/es6.parse-float.js b/forward_engineering/node_modules/core-js/modules/es6.parse-float.js deleted file mode 100644 index cbf50ea..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseFloat = require('./_parse-float'); -// 18.2.4 parseFloat(string) -$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.parse-int.js b/forward_engineering/node_modules/core-js/modules/es6.parse-int.js deleted file mode 100644 index 7ea358e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -var $parseInt = require('./_parse-int'); -// 18.2.5 parseInt(string, radix) -$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.promise.js b/forward_engineering/node_modules/core-js/modules/es6.promise.js deleted file mode 100644 index b0ff3bf..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.promise.js +++ /dev/null @@ -1,286 +0,0 @@ -'use strict'; -var LIBRARY = require('./_library'); -var global = require('./_global'); -var ctx = require('./_ctx'); -var classof = require('./_classof'); -var $export = require('./_export'); -var isObject = require('./_is-object'); -var aFunction = require('./_a-function'); -var anInstance = require('./_an-instance'); -var forOf = require('./_for-of'); -var speciesConstructor = require('./_species-constructor'); -var task = require('./_task').set; -var microtask = require('./_microtask')(); -var newPromiseCapabilityModule = require('./_new-promise-capability'); -var perform = require('./_perform'); -var userAgent = require('./_user-agent'); -var promiseResolve = require('./_promise-resolve'); -var PROMISE = 'Promise'; -var TypeError = global.TypeError; -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8 || ''; -var $Promise = global[PROMISE]; -var isNode = classof(process) == 'process'; -var empty = function () { /* empty */ }; -var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; -var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - -var USE_NATIVE = !!function () { - try { - // correct subclassing with @@species support - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) { - exec(empty, empty); - }; - // unhandled rejections tracking support, NodeJS Promise without it fails @@species test - return (isNode || typeof PromiseRejectionEvent == 'function') - && promise.then(empty) instanceof FakePromise - // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // we can't detect it synchronously, so just check versions - && v8.indexOf('6.6') !== 0 - && userAgent.indexOf('Chrome/66') === -1; - } catch (e) { /* empty */ } -}(); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; -var notify = function (promise, isReject) { - if (promise._n) return; - promise._n = true; - var chain = promise._c; - microtask(function () { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function (reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) onHandleUnhandled(promise); - promise._h = 1; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // may throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (e) { - if (domain && !exited) domain.exit(); - reject(e); - } - }; - while (chain.length > i) run(chain[i++]); // variable length - can't use forEach - promise._c = []; - promise._n = false; - if (isReject && !promise._h) onUnhandled(promise); - }); -}; -var onUnhandled = function (promise) { - task.call(global, function () { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console; - if (unhandled) { - result = perform(function () { - if (isNode) { - process.emit('unhandledRejection', value, promise); - } else if (handler = global.onunhandledrejection) { - handler({ promise: promise, reason: value }); - } else if ((console = global.console) && console.error) { - console.error('Unhandled promise rejection', value); - } - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } promise._a = undefined; - if (unhandled && result.e) throw result.v; - }); -}; -var isUnhandled = function (promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; -}; -var onHandleUnhandled = function (promise) { - task.call(global, function () { - var handler; - if (isNode) { - process.emit('rejectionHandled', promise); - } else if (handler = global.onrejectionhandled) { - handler({ promise: promise, reason: promise._v }); - } - }); -}; -var $reject = function (value) { - var promise = this; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - promise._v = value; - promise._s = 2; - if (!promise._a) promise._a = promise._c.slice(); - notify(promise, true); -}; -var $resolve = function (value) { - var promise = this; - var then; - if (promise._d) return; - promise._d = true; - promise = promise._w || promise; // unwrap - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function () { - var wrapper = { _w: promise, _d: false }; // wrap - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); - } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); - } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); // wrap - } -}; - -// constructor polyfill -if (!USE_NATIVE) { - // 25.4.3.1 Promise(executor) - $Promise = function Promise(executor) { - anInstance(this, $Promise, PROMISE, '_h'); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - this._c = []; // <- awaiting reactions - this._a = undefined; // <- checked in isUnhandled reactions - this._s = 0; // <- state - this._d = false; // <- done - this._v = undefined; // <- value - this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled - this._n = false; // <- notify - }; - Internal.prototype = require('./_redefine-all')($Promise.prototype, { - // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = isNode ? process.domain : undefined; - this._c.push(reaction); - if (this._a) this._a.push(reaction); - if (this._s) notify(this, false); - return reaction.promise; - }, - // 25.4.5.1 Promise.prototype.catch(onRejected) - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === $Promise || C === Wrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); -require('./_set-to-string-tag')($Promise, PROMISE); -require('./_set-species')(PROMISE); -Wrapper = require('./_core')[PROMISE]; - -// statics -$export($export.S + $export.F * !USE_NATIVE, PROMISE, { - // 25.4.4.5 Promise.reject(r) - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } -}); -$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - // 25.4.4.6 Promise.resolve(x) - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } -}); -$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) { - $Promise.all(iter)['catch'](empty); -})), PROMISE, { - // 25.4.4.1 Promise.all(iterable) - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function (promise) { - var $index = index++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - C.resolve(promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) reject(result.v); - return capability.promise; - }, - // 25.4.4.4 Promise.race(iterable) - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - forOf(iterable, false, function (promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) reject(result.v); - return capability.promise; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.apply.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.apply.js deleted file mode 100644 index 3b9c03a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.apply.js +++ /dev/null @@ -1,16 +0,0 @@ -// 26.1.1 Reflect.apply(target, thisArgument, argumentsList) -var $export = require('./_export'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var rApply = (require('./_global').Reflect || {}).apply; -var fApply = Function.apply; -// MS Edge argumentsList argument is optional -$export($export.S + $export.F * !require('./_fails')(function () { - rApply(function () { /* empty */ }); -}), 'Reflect', { - apply: function apply(target, thisArgument, argumentsList) { - var T = aFunction(target); - var L = anObject(argumentsList); - return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.construct.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.construct.js deleted file mode 100644 index 380addb..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.construct.js +++ /dev/null @@ -1,47 +0,0 @@ -// 26.1.2 Reflect.construct(target, argumentsList [, newTarget]) -var $export = require('./_export'); -var create = require('./_object-create'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var fails = require('./_fails'); -var bind = require('./_bind'); -var rConstruct = (require('./_global').Reflect || {}).construct; - -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(rConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - rConstruct(function () { /* empty */ }); -}); - -$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.define-property.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.define-property.js deleted file mode 100644 index be7fbde..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.define-property.js +++ /dev/null @@ -1,23 +0,0 @@ -// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes) -var dP = require('./_object-dp'); -var $export = require('./_export'); -var anObject = require('./_an-object'); -var toPrimitive = require('./_to-primitive'); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -$export($export.S + $export.F * require('./_fails')(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 }); -}), 'Reflect', { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - propertyKey = toPrimitive(propertyKey, true); - anObject(attributes); - try { - dP.f(target, propertyKey, attributes); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.delete-property.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.delete-property.js deleted file mode 100644 index 0902b38..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.delete-property.js +++ /dev/null @@ -1,11 +0,0 @@ -// 26.1.4 Reflect.deleteProperty(target, propertyKey) -var $export = require('./_export'); -var gOPD = require('./_object-gopd').f; -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - deleteProperty: function deleteProperty(target, propertyKey) { - var desc = gOPD(anObject(target), propertyKey); - return desc && !desc.configurable ? false : delete target[propertyKey]; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.enumerate.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.enumerate.js deleted file mode 100644 index 9e7c76a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.enumerate.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -// 26.1.5 Reflect.enumerate(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var Enumerate = function (iterated) { - this._t = anObject(iterated); // target - this._i = 0; // next index - var keys = this._k = []; // keys - var key; - for (key in iterated) keys.push(key); -}; -require('./_iter-create')(Enumerate, 'Object', function () { - var that = this; - var keys = that._k; - var key; - do { - if (that._i >= keys.length) return { value: undefined, done: true }; - } while (!((key = keys[that._i++]) in that._t)); - return { value: key, done: false }; -}); - -$export($export.S, 'Reflect', { - enumerate: function enumerate(target) { - return new Enumerate(target); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js deleted file mode 100644 index e1299f9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js +++ /dev/null @@ -1,10 +0,0 @@ -// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey) -var gOPD = require('./_object-gopd'); -var $export = require('./_export'); -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return gOPD.f(anObject(target), propertyKey); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.get-prototype-of.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.get-prototype-of.js deleted file mode 100644 index 28351d4..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.get-prototype-of.js +++ /dev/null @@ -1,10 +0,0 @@ -// 26.1.8 Reflect.getPrototypeOf(target) -var $export = require('./_export'); -var getProto = require('./_object-gpo'); -var anObject = require('./_an-object'); - -$export($export.S, 'Reflect', { - getPrototypeOf: function getPrototypeOf(target) { - return getProto(anObject(target)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.get.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.get.js deleted file mode 100644 index a7ee766..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.get.js +++ /dev/null @@ -1,21 +0,0 @@ -// 26.1.6 Reflect.get(target, propertyKey [, receiver]) -var gOPD = require('./_object-gopd'); -var getPrototypeOf = require('./_object-gpo'); -var has = require('./_has'); -var $export = require('./_export'); -var isObject = require('./_is-object'); -var anObject = require('./_an-object'); - -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var desc, proto; - if (anObject(target) === receiver) return target[propertyKey]; - if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value') - ? desc.value - : desc.get !== undefined - ? desc.get.call(receiver) - : undefined; - if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver); -} - -$export($export.S, 'Reflect', { get: get }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.has.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.has.js deleted file mode 100644 index 4f5efa9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.has.js +++ /dev/null @@ -1,8 +0,0 @@ -// 26.1.9 Reflect.has(target, propertyKey) -var $export = require('./_export'); - -$export($export.S, 'Reflect', { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.is-extensible.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.is-extensible.js deleted file mode 100644 index 700f938..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.is-extensible.js +++ /dev/null @@ -1,11 +0,0 @@ -// 26.1.10 Reflect.isExtensible(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var $isExtensible = Object.isExtensible; - -$export($export.S, 'Reflect', { - isExtensible: function isExtensible(target) { - anObject(target); - return $isExtensible ? $isExtensible(target) : true; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.own-keys.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.own-keys.js deleted file mode 100644 index 9f2424a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.own-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -// 26.1.11 Reflect.ownKeys(target) -var $export = require('./_export'); - -$export($export.S, 'Reflect', { ownKeys: require('./_own-keys') }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.prevent-extensions.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.prevent-extensions.js deleted file mode 100644 index e1037fa..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.prevent-extensions.js +++ /dev/null @@ -1,16 +0,0 @@ -// 26.1.12 Reflect.preventExtensions(target) -var $export = require('./_export'); -var anObject = require('./_an-object'); -var $preventExtensions = Object.preventExtensions; - -$export($export.S, 'Reflect', { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - if ($preventExtensions) $preventExtensions(target); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.set-prototype-of.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.set-prototype-of.js deleted file mode 100644 index 5dae901..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.set-prototype-of.js +++ /dev/null @@ -1,15 +0,0 @@ -// 26.1.14 Reflect.setPrototypeOf(target, proto) -var $export = require('./_export'); -var setProto = require('./_set-proto'); - -if (setProto) $export($export.S, 'Reflect', { - setPrototypeOf: function setPrototypeOf(target, proto) { - setProto.check(target, proto); - try { - setProto.set(target, proto); - return true; - } catch (e) { - return false; - } - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.reflect.set.js b/forward_engineering/node_modules/core-js/modules/es6.reflect.set.js deleted file mode 100644 index d809d7a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.reflect.set.js +++ /dev/null @@ -1,33 +0,0 @@ -// 26.1.13 Reflect.set(target, propertyKey, V [, receiver]) -var dP = require('./_object-dp'); -var gOPD = require('./_object-gopd'); -var getPrototypeOf = require('./_object-gpo'); -var has = require('./_has'); -var $export = require('./_export'); -var createDesc = require('./_property-desc'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); - -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDesc = gOPD.f(anObject(target), propertyKey); - var existingDescriptor, proto; - if (!ownDesc) { - if (isObject(proto = getPrototypeOf(target))) { - return set(proto, propertyKey, V, receiver); - } - ownDesc = createDesc(0); - } - if (has(ownDesc, 'value')) { - if (ownDesc.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = gOPD.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - dP.f(receiver, propertyKey, existingDescriptor); - } else dP.f(receiver, propertyKey, createDesc(0, V)); - return true; - } - return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true); -} - -$export($export.S, 'Reflect', { set: set }); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.constructor.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.constructor.js deleted file mode 100644 index 76247c3..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.constructor.js +++ /dev/null @@ -1,43 +0,0 @@ -var global = require('./_global'); -var inheritIfRequired = require('./_inherit-if-required'); -var dP = require('./_object-dp').f; -var gOPN = require('./_object-gopn').f; -var isRegExp = require('./_is-regexp'); -var $flags = require('./_flags'); -var $RegExp = global.RegExp; -var Base = $RegExp; -var proto = $RegExp.prototype; -var re1 = /a/g; -var re2 = /a/g; -// "new" creates a new object, old webkit buggy here -var CORRECT_NEW = new $RegExp(re1) !== re1; - -if (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () { - re2[require('./_wks')('match')] = false; - // RegExp constructor can alter flags and IsRegExp works correct with @@match - return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i'; -}))) { - $RegExp = function RegExp(p, f) { - var tiRE = this instanceof $RegExp; - var piRE = isRegExp(p); - var fiU = f === undefined; - return !tiRE && piRE && p.constructor === $RegExp && fiU ? p - : inheritIfRequired(CORRECT_NEW - ? new Base(piRE && !fiU ? p.source : p, f) - : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f) - , tiRE ? this : proto, $RegExp); - }; - var proxy = function (key) { - key in $RegExp || dP($RegExp, key, { - configurable: true, - get: function () { return Base[key]; }, - set: function (it) { Base[key] = it; } - }); - }; - for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]); - proto.constructor = $RegExp; - $RegExp.prototype = proto; - require('./_redefine')(global, 'RegExp', $RegExp); -} - -require('./_set-species')('RegExp'); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.exec.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.exec.js deleted file mode 100644 index a19f1ee..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.exec.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var regexpExec = require('./_regexp-exec'); -require('./_export')({ - target: 'RegExp', - proto: true, - forced: regexpExec !== /./.exec -}, { - exec: regexpExec -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.flags.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.flags.js deleted file mode 100644 index 4700868..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.flags.js +++ /dev/null @@ -1,5 +0,0 @@ -// 21.2.5.3 get RegExp.prototype.flags() -if (require('./_descriptors') && /./g.flags != 'g') require('./_object-dp').f(RegExp.prototype, 'flags', { - configurable: true, - get: require('./_flags') -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.match.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.match.js deleted file mode 100644 index 6ac294e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.match.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -var anObject = require('./_an-object'); -var toLength = require('./_to-length'); -var advanceStringIndex = require('./_advance-string-index'); -var regExpExec = require('./_regexp-exec-abstract'); - -// @@match logic -require('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) { - return [ - // `String.prototype.match` method - // https://tc39.github.io/ecma262/#sec-string.prototype.match - function match(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[MATCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); - }, - // `RegExp.prototype[@@match]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match - function (regexp) { - var res = maybeCallNative($match, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - if (!rx.global) return regExpExec(rx, S); - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - var A = []; - var n = 0; - var result; - while ((result = regExpExec(rx, S)) !== null) { - var matchStr = String(result[0]); - A[n] = matchStr; - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - n++; - } - return n === 0 ? null : A; - } - ]; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.replace.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.replace.js deleted file mode 100644 index abd0f9c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.replace.js +++ /dev/null @@ -1,118 +0,0 @@ -'use strict'; - -var anObject = require('./_an-object'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var toInteger = require('./_to-integer'); -var advanceStringIndex = require('./_advance-string-index'); -var regExpExec = require('./_regexp-exec-abstract'); -var max = Math.max; -var min = Math.min; -var floor = Math.floor; -var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; -var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; - -var maybeToString = function (it) { - return it === undefined ? it : String(it); -}; - -// @@replace logic -require('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) { - return [ - // `String.prototype.replace` method - // https://tc39.github.io/ecma262/#sec-string.prototype.replace - function replace(searchValue, replaceValue) { - var O = defined(this); - var fn = searchValue == undefined ? undefined : searchValue[REPLACE]; - return fn !== undefined - ? fn.call(searchValue, O, replaceValue) - : $replace.call(String(O), searchValue, replaceValue); - }, - // `RegExp.prototype[@@replace]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace - function (regexp, replaceValue) { - var res = maybeCallNative($replace, regexp, this, replaceValue); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var functionalReplace = typeof replaceValue === 'function'; - if (!functionalReplace) replaceValue = String(replaceValue); - var global = rx.global; - if (global) { - var fullUnicode = rx.unicode; - rx.lastIndex = 0; - } - var results = []; - while (true) { - var result = regExpExec(rx, S); - if (result === null) break; - results.push(result); - if (!global) break; - var matchStr = String(result[0]); - if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); - } - var accumulatedResult = ''; - var nextSourcePosition = 0; - for (var i = 0; i < results.length; i++) { - result = results[i]; - var matched = String(result[0]); - var position = max(min(toInteger(result.index), S.length), 0); - var captures = []; - // NOTE: This is equivalent to - // captures = result.slice(1).map(maybeToString) - // but for some reason `nativeSlice.call(result, 1, result.length)` (called in - // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and - // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. - for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); - var namedCaptures = result.groups; - if (functionalReplace) { - var replacerArgs = [matched].concat(captures, position, S); - if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); - var replacement = String(replaceValue.apply(undefined, replacerArgs)); - } else { - replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); - } - if (position >= nextSourcePosition) { - accumulatedResult += S.slice(nextSourcePosition, position) + replacement; - nextSourcePosition = position + matched.length; - } - } - return accumulatedResult + S.slice(nextSourcePosition); - } - ]; - - // https://tc39.github.io/ecma262/#sec-getsubstitution - function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { - var tailPos = position + matched.length; - var m = captures.length; - var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; - if (namedCaptures !== undefined) { - namedCaptures = toObject(namedCaptures); - symbols = SUBSTITUTION_SYMBOLS; - } - return $replace.call(replacement, symbols, function (match, ch) { - var capture; - switch (ch.charAt(0)) { - case '$': return '$'; - case '&': return matched; - case '`': return str.slice(0, position); - case "'": return str.slice(tailPos); - case '<': - capture = namedCaptures[ch.slice(1, -1)]; - break; - default: // \d\d? - var n = +ch; - if (n === 0) return match; - if (n > m) { - var f = floor(n / 10); - if (f === 0) return match; - if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); - return match; - } - capture = captures[n - 1]; - } - return capture === undefined ? '' : capture; - }); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.search.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.search.js deleted file mode 100644 index ecb53bb..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.search.js +++ /dev/null @@ -1,31 +0,0 @@ -'use strict'; - -var anObject = require('./_an-object'); -var sameValue = require('./_same-value'); -var regExpExec = require('./_regexp-exec-abstract'); - -// @@search logic -require('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search, maybeCallNative) { - return [ - // `String.prototype.search` method - // https://tc39.github.io/ecma262/#sec-string.prototype.search - function search(regexp) { - var O = defined(this); - var fn = regexp == undefined ? undefined : regexp[SEARCH]; - return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); - }, - // `RegExp.prototype[@@search]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search - function (regexp) { - var res = maybeCallNative($search, regexp, this); - if (res.done) return res.value; - var rx = anObject(regexp); - var S = String(this); - var previousLastIndex = rx.lastIndex; - if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; - var result = regExpExec(rx, S); - if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; - return result === null ? -1 : result.index; - } - ]; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.split.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.split.js deleted file mode 100644 index 45f81ce..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.split.js +++ /dev/null @@ -1,134 +0,0 @@ -'use strict'; - -var isRegExp = require('./_is-regexp'); -var anObject = require('./_an-object'); -var speciesConstructor = require('./_species-constructor'); -var advanceStringIndex = require('./_advance-string-index'); -var toLength = require('./_to-length'); -var callRegExpExec = require('./_regexp-exec-abstract'); -var regexpExec = require('./_regexp-exec'); -var fails = require('./_fails'); -var $min = Math.min; -var $push = [].push; -var $SPLIT = 'split'; -var LENGTH = 'length'; -var LAST_INDEX = 'lastIndex'; -var MAX_UINT32 = 0xffffffff; - -// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError -var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); }); - -// @@split logic -require('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) { - var internalSplit; - if ( - 'abbc'[$SPLIT](/(b)*/)[1] == 'c' || - 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 || - 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 || - '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 || - '.'[$SPLIT](/()()/)[LENGTH] > 1 || - ''[$SPLIT](/.?/)[LENGTH] - ) { - // based on es5-shim implementation, need to rework it - internalSplit = function (separator, limit) { - var string = String(this); - if (separator === undefined && limit === 0) return []; - // If `separator` is not a regex, use native split - if (!isRegExp(separator)) return $split.call(string, separator, limit); - var output = []; - var flags = (separator.ignoreCase ? 'i' : '') + - (separator.multiline ? 'm' : '') + - (separator.unicode ? 'u' : '') + - (separator.sticky ? 'y' : ''); - var lastLastIndex = 0; - var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0; - // Make `global` and avoid `lastIndex` issues by working with a copy - var separatorCopy = new RegExp(separator.source, flags + 'g'); - var match, lastIndex, lastLength; - while (match = regexpExec.call(separatorCopy, string)) { - lastIndex = separatorCopy[LAST_INDEX]; - if (lastIndex > lastLastIndex) { - output.push(string.slice(lastLastIndex, match.index)); - if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1)); - lastLength = match[0][LENGTH]; - lastLastIndex = lastIndex; - if (output[LENGTH] >= splitLimit) break; - } - if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop - } - if (lastLastIndex === string[LENGTH]) { - if (lastLength || !separatorCopy.test('')) output.push(''); - } else output.push(string.slice(lastLastIndex)); - return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output; - }; - // Chakra, V8 - } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) { - internalSplit = function (separator, limit) { - return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit); - }; - } else { - internalSplit = $split; - } - - return [ - // `String.prototype.split` method - // https://tc39.github.io/ecma262/#sec-string.prototype.split - function split(separator, limit) { - var O = defined(this); - var splitter = separator == undefined ? undefined : separator[SPLIT]; - return splitter !== undefined - ? splitter.call(separator, O, limit) - : internalSplit.call(String(O), separator, limit); - }, - // `RegExp.prototype[@@split]` method - // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split - // - // NOTE: This cannot be properly polyfilled in engines that don't support - // the 'y' flag. - function (regexp, limit) { - var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split); - if (res.done) return res.value; - - var rx = anObject(regexp); - var S = String(this); - var C = speciesConstructor(rx, RegExp); - - var unicodeMatching = rx.unicode; - var flags = (rx.ignoreCase ? 'i' : '') + - (rx.multiline ? 'm' : '') + - (rx.unicode ? 'u' : '') + - (SUPPORTS_Y ? 'y' : 'g'); - - // ^(? + rx + ) is needed, in combination with some S slicing, to - // simulate the 'y' flag. - var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); - var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; - if (lim === 0) return []; - if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; - var p = 0; - var q = 0; - var A = []; - while (q < S.length) { - splitter.lastIndex = SUPPORTS_Y ? q : 0; - var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); - var e; - if ( - z === null || - (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p - ) { - q = advanceStringIndex(S, q, unicodeMatching); - } else { - A.push(S.slice(p, q)); - if (A.length === lim) return A; - for (var i = 1; i <= z.length - 1; i++) { - A.push(z[i]); - if (A.length === lim) return A; - } - q = p = e; - } - } - A.push(S.slice(p)); - return A; - } - ]; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.regexp.to-string.js b/forward_engineering/node_modules/core-js/modules/es6.regexp.to-string.js deleted file mode 100644 index 33d6e6f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.regexp.to-string.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -require('./es6.regexp.flags'); -var anObject = require('./_an-object'); -var $flags = require('./_flags'); -var DESCRIPTORS = require('./_descriptors'); -var TO_STRING = 'toString'; -var $toString = /./[TO_STRING]; - -var define = function (fn) { - require('./_redefine')(RegExp.prototype, TO_STRING, fn, true); -}; - -// 21.2.5.14 RegExp.prototype.toString() -if (require('./_fails')(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) { - define(function toString() { - var R = anObject(this); - return '/'.concat(R.source, '/', - 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined); - }); -// FF44- RegExp#toString has a wrong name -} else if ($toString.name != TO_STRING) { - define(function toString() { - return $toString.call(this); - }); -} diff --git a/forward_engineering/node_modules/core-js/modules/es6.set.js b/forward_engineering/node_modules/core-js/modules/es6.set.js deleted file mode 100644 index 55b8bdd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.set.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var strong = require('./_collection-strong'); -var validate = require('./_validate-collection'); -var SET = 'Set'; - -// 23.2 Set Objects -module.exports = require('./_collection')(SET, function (get) { - return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value); - } -}, strong); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.anchor.js b/forward_engineering/node_modules/core-js/modules/es6.string.anchor.js deleted file mode 100644 index 3493e54..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.anchor.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.2 String.prototype.anchor(name) -require('./_string-html')('anchor', function (createHTML) { - return function anchor(name) { - return createHTML(this, 'a', 'name', name); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.big.js b/forward_engineering/node_modules/core-js/modules/es6.string.big.js deleted file mode 100644 index 38aab34..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.big.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.3 String.prototype.big() -require('./_string-html')('big', function (createHTML) { - return function big() { - return createHTML(this, 'big', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.blink.js b/forward_engineering/node_modules/core-js/modules/es6.string.blink.js deleted file mode 100644 index 6188d96..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.blink.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.4 String.prototype.blink() -require('./_string-html')('blink', function (createHTML) { - return function blink() { - return createHTML(this, 'blink', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.bold.js b/forward_engineering/node_modules/core-js/modules/es6.string.bold.js deleted file mode 100644 index ff3ecb9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.bold.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.5 String.prototype.bold() -require('./_string-html')('bold', function (createHTML) { - return function bold() { - return createHTML(this, 'b', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.code-point-at.js b/forward_engineering/node_modules/core-js/modules/es6.string.code-point-at.js deleted file mode 100644 index e39b8c5..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.code-point-at.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $at = require('./_string-at')(false); -$export($export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) - codePointAt: function codePointAt(pos) { - return $at(this, pos); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.ends-with.js b/forward_engineering/node_modules/core-js/modules/es6.string.ends-with.js deleted file mode 100644 index 0656888..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.ends-with.js +++ /dev/null @@ -1,20 +0,0 @@ -// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition]) -'use strict'; -var $export = require('./_export'); -var toLength = require('./_to-length'); -var context = require('./_string-context'); -var ENDS_WITH = 'endsWith'; -var $endsWith = ''[ENDS_WITH]; - -$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = context(this, searchString, ENDS_WITH); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len); - var search = String(searchString); - return $endsWith - ? $endsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.fixed.js b/forward_engineering/node_modules/core-js/modules/es6.string.fixed.js deleted file mode 100644 index d4a60f3..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.fixed.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.6 String.prototype.fixed() -require('./_string-html')('fixed', function (createHTML) { - return function fixed() { - return createHTML(this, 'tt', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.fontcolor.js b/forward_engineering/node_modules/core-js/modules/es6.string.fontcolor.js deleted file mode 100644 index f7b9595..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.fontcolor.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.7 String.prototype.fontcolor(color) -require('./_string-html')('fontcolor', function (createHTML) { - return function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.fontsize.js b/forward_engineering/node_modules/core-js/modules/es6.string.fontsize.js deleted file mode 100644 index f4cc20a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.fontsize.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.8 String.prototype.fontsize(size) -require('./_string-html')('fontsize', function (createHTML) { - return function fontsize(size) { - return createHTML(this, 'font', 'size', size); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.from-code-point.js b/forward_engineering/node_modules/core-js/modules/es6.string.from-code-point.js deleted file mode 100644 index bece66e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.from-code-point.js +++ /dev/null @@ -1,23 +0,0 @@ -var $export = require('./_export'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var fromCharCode = String.fromCharCode; -var $fromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var res = []; - var aLen = arguments.length; - var i = 0; - var code; - while (aLen > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point'); - res.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) - ); - } return res.join(''); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.includes.js b/forward_engineering/node_modules/core-js/modules/es6.string.includes.js deleted file mode 100644 index 28d1741..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.includes.js +++ /dev/null @@ -1,12 +0,0 @@ -// 21.1.3.7 String.prototype.includes(searchString, position = 0) -'use strict'; -var $export = require('./_export'); -var context = require('./_string-context'); -var INCLUDES = 'includes'; - -$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', { - includes: function includes(searchString /* , position = 0 */) { - return !!~context(this, searchString, INCLUDES) - .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.italics.js b/forward_engineering/node_modules/core-js/modules/es6.string.italics.js deleted file mode 100644 index ed4cc3b..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.italics.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.9 String.prototype.italics() -require('./_string-html')('italics', function (createHTML) { - return function italics() { - return createHTML(this, 'i', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.iterator.js b/forward_engineering/node_modules/core-js/modules/es6.string.iterator.js deleted file mode 100644 index 5d84c7f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.iterator.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $at = require('./_string-at')(true); - -// 21.1.3.27 String.prototype[@@iterator]() -require('./_iter-define')(String, 'String', function (iterated) { - this._t = String(iterated); // target - this._i = 0; // next index -// 21.1.5.2.1 %StringIteratorPrototype%.next() -}, function () { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) return { value: undefined, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.link.js b/forward_engineering/node_modules/core-js/modules/es6.string.link.js deleted file mode 100644 index d0255ed..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.link.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.10 String.prototype.link(url) -require('./_string-html')('link', function (createHTML) { - return function link(url) { - return createHTML(this, 'a', 'href', url); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.raw.js b/forward_engineering/node_modules/core-js/modules/es6.string.raw.js deleted file mode 100644 index aa40ff6..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.raw.js +++ /dev/null @@ -1,18 +0,0 @@ -var $export = require('./_export'); -var toIObject = require('./_to-iobject'); -var toLength = require('./_to-length'); - -$export($export.S, 'String', { - // 21.1.2.4 String.raw(callSite, ...substitutions) - raw: function raw(callSite) { - var tpl = toIObject(callSite.raw); - var len = toLength(tpl.length); - var aLen = arguments.length; - var res = []; - var i = 0; - while (len > i) { - res.push(String(tpl[i++])); - if (i < aLen) res.push(String(arguments[i])); - } return res.join(''); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.repeat.js b/forward_engineering/node_modules/core-js/modules/es6.string.repeat.js deleted file mode 100644 index 08412d9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.repeat.js +++ /dev/null @@ -1,6 +0,0 @@ -var $export = require('./_export'); - -$export($export.P, 'String', { - // 21.1.3.13 String.prototype.repeat(count) - repeat: require('./_string-repeat') -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.small.js b/forward_engineering/node_modules/core-js/modules/es6.string.small.js deleted file mode 100644 index 941e4a7..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.small.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.11 String.prototype.small() -require('./_string-html')('small', function (createHTML) { - return function small() { - return createHTML(this, 'small', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.starts-with.js b/forward_engineering/node_modules/core-js/modules/es6.string.starts-with.js deleted file mode 100644 index c172376..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.starts-with.js +++ /dev/null @@ -1,18 +0,0 @@ -// 21.1.3.18 String.prototype.startsWith(searchString [, position ]) -'use strict'; -var $export = require('./_export'); -var toLength = require('./_to-length'); -var context = require('./_string-context'); -var STARTS_WITH = 'startsWith'; -var $startsWith = ''[STARTS_WITH]; - -$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = context(this, searchString, STARTS_WITH); - var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return $startsWith - ? $startsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.strike.js b/forward_engineering/node_modules/core-js/modules/es6.string.strike.js deleted file mode 100644 index 66055bc..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.strike.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.12 String.prototype.strike() -require('./_string-html')('strike', function (createHTML) { - return function strike() { - return createHTML(this, 'strike', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.sub.js b/forward_engineering/node_modules/core-js/modules/es6.string.sub.js deleted file mode 100644 index e295a27..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.sub.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.13 String.prototype.sub() -require('./_string-html')('sub', function (createHTML) { - return function sub() { - return createHTML(this, 'sub', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.sup.js b/forward_engineering/node_modules/core-js/modules/es6.string.sup.js deleted file mode 100644 index 125a989..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.sup.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// B.2.3.14 String.prototype.sup() -require('./_string-html')('sup', function (createHTML) { - return function sup() { - return createHTML(this, 'sup', '', ''); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.string.trim.js b/forward_engineering/node_modules/core-js/modules/es6.string.trim.js deleted file mode 100644 index 02b8a6c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.string.trim.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// 21.1.3.25 String.prototype.trim() -require('./_string-trim')('trim', function ($trim) { - return function trim() { - return $trim(this, 3); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.symbol.js b/forward_engineering/node_modules/core-js/modules/es6.symbol.js deleted file mode 100644 index 52dbbc8..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.symbol.js +++ /dev/null @@ -1,246 +0,0 @@ -'use strict'; -// ECMAScript 6 symbols shim -var global = require('./_global'); -var has = require('./_has'); -var DESCRIPTORS = require('./_descriptors'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var META = require('./_meta').KEY; -var $fails = require('./_fails'); -var shared = require('./_shared'); -var setToStringTag = require('./_set-to-string-tag'); -var uid = require('./_uid'); -var wks = require('./_wks'); -var wksExt = require('./_wks-ext'); -var wksDefine = require('./_wks-define'); -var enumKeys = require('./_enum-keys'); -var isArray = require('./_is-array'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var toObject = require('./_to-object'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var createDesc = require('./_property-desc'); -var _create = require('./_object-create'); -var gOPNExt = require('./_object-gopn-ext'); -var $GOPD = require('./_object-gopd'); -var $GOPS = require('./_object-gops'); -var $DP = require('./_object-dp'); -var $keys = require('./_object-keys'); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames; - require('./_object-pie').f = $propertyIsEnumerable; - $GOPS.f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !require('./_library')) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); }); - -$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return $GOPS.f(toObject(it)); - } -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.array-buffer.js b/forward_engineering/node_modules/core-js/modules/es6.typed.array-buffer.js deleted file mode 100644 index b247370..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.array-buffer.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var $typed = require('./_typed'); -var buffer = require('./_typed-buffer'); -var anObject = require('./_an-object'); -var toAbsoluteIndex = require('./_to-absolute-index'); -var toLength = require('./_to-length'); -var isObject = require('./_is-object'); -var ArrayBuffer = require('./_global').ArrayBuffer; -var speciesConstructor = require('./_species-constructor'); -var $ArrayBuffer = buffer.ArrayBuffer; -var $DataView = buffer.DataView; -var $isView = $typed.ABV && ArrayBuffer.isView; -var $slice = $ArrayBuffer.prototype.slice; -var VIEW = $typed.VIEW; -var ARRAY_BUFFER = 'ArrayBuffer'; - -$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer }); - -$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, { - // 24.1.3.1 ArrayBuffer.isView(arg) - isView: function isView(it) { - return $isView && $isView(it) || isObject(it) && VIEW in it; - } -}); - -$export($export.P + $export.U + $export.F * require('./_fails')(function () { - return !new $ArrayBuffer(2).slice(1, undefined).byteLength; -}), ARRAY_BUFFER, { - // 24.1.4.3 ArrayBuffer.prototype.slice(start, end) - slice: function slice(start, end) { - if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix - var len = anObject(this).byteLength; - var first = toAbsoluteIndex(start, len); - var fin = toAbsoluteIndex(end === undefined ? len : end, len); - var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first)); - var viewS = new $DataView(this); - var viewT = new $DataView(result); - var index = 0; - while (first < fin) { - viewT.setUint8(index++, viewS.getUint8(first++)); - } return result; - } -}); - -require('./_set-species')(ARRAY_BUFFER); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.data-view.js b/forward_engineering/node_modules/core-js/modules/es6.typed.data-view.js deleted file mode 100644 index d0e2353..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.data-view.js +++ /dev/null @@ -1,4 +0,0 @@ -var $export = require('./_export'); -$export($export.G + $export.W + $export.F * !require('./_typed').ABV, { - DataView: require('./_typed-buffer').DataView -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.float32-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.float32-array.js deleted file mode 100644 index f497006..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.float32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Float32', 4, function (init) { - return function Float32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.float64-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.float64-array.js deleted file mode 100644 index 85dedcd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.float64-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Float64', 8, function (init) { - return function Float64Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.int16-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.int16-array.js deleted file mode 100644 index b20ed04..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.int16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int16', 2, function (init) { - return function Int16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.int32-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.int32-array.js deleted file mode 100644 index c7e6ae0..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.int32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int32', 4, function (init) { - return function Int32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.int8-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.int8-array.js deleted file mode 100644 index 58ab9f3..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.int8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Int8', 1, function (init) { - return function Int8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.uint16-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.uint16-array.js deleted file mode 100644 index 992805d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.uint16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint16', 2, function (init) { - return function Uint16Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.uint32-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.uint32-array.js deleted file mode 100644 index 5c44424..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.uint32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint32', 4, function (init) { - return function Uint32Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-array.js deleted file mode 100644 index 465cdc8..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint8', 1, function (init) { - return function Uint8Array(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}); diff --git a/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js b/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js deleted file mode 100644 index a84a1c1..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('./_typed-array')('Uint8', 1, function (init) { - return function Uint8ClampedArray(data, byteOffset, length) { - return init(this, data, byteOffset, length); - }; -}, true); diff --git a/forward_engineering/node_modules/core-js/modules/es6.weak-map.js b/forward_engineering/node_modules/core-js/modules/es6.weak-map.js deleted file mode 100644 index 3560521..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.weak-map.js +++ /dev/null @@ -1,60 +0,0 @@ -'use strict'; -var global = require('./_global'); -var each = require('./_array-methods')(0); -var redefine = require('./_redefine'); -var meta = require('./_meta'); -var assign = require('./_object-assign'); -var weak = require('./_collection-weak'); -var isObject = require('./_is-object'); -var validate = require('./_validate-collection'); -var NATIVE_WEAK_MAP = require('./_validate-collection'); -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var WEAK_MAP = 'WeakMap'; -var getWeak = meta.getWeak; -var isExtensible = Object.isExtensible; -var uncaughtFrozenStore = weak.ufstore; -var InternalMap; - -var wrapper = function (get) { - return function WeakMap() { - return get(this, arguments.length > 0 ? arguments[0] : undefined); - }; -}; - -var methods = { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - if (isObject(key)) { - var data = getWeak(key); - if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key); - return data ? data[this._i] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return weak.def(validate(this, WEAK_MAP), key, value); - } -}; - -// 23.3 WeakMap Objects -var $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true); - -// IE11 WeakMap frozen keys fix -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalMap = weak.getConstructor(wrapper, WEAK_MAP); - assign(InternalMap.prototype, methods); - meta.NEED = true; - each(['delete', 'has', 'get', 'set'], function (key) { - var proto = $WeakMap.prototype; - var method = proto[key]; - redefine(proto, key, function (a, b) { - // store frozen objects on internal weakmap shim - if (isObject(a) && !isExtensible(a)) { - if (!this._f) this._f = new InternalMap(); - var result = this._f[key](a, b); - return key == 'set' ? this : result; - // store all the rest on native weakmap - } return method.call(this, a, b); - }); - }); -} diff --git a/forward_engineering/node_modules/core-js/modules/es6.weak-set.js b/forward_engineering/node_modules/core-js/modules/es6.weak-set.js deleted file mode 100644 index 18a81e5..0000000 --- a/forward_engineering/node_modules/core-js/modules/es6.weak-set.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var weak = require('./_collection-weak'); -var validate = require('./_validate-collection'); -var WEAK_SET = 'WeakSet'; - -// 23.4 WeakSet Objects -require('./_collection')(WEAK_SET, function (get) { - return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); }; -}, { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return weak.def(validate(this, WEAK_SET), value, true); - } -}, weak, false, true); diff --git a/forward_engineering/node_modules/core-js/modules/es7.array.flat-map.js b/forward_engineering/node_modules/core-js/modules/es7.array.flat-map.js deleted file mode 100644 index 2a210cd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.array.flat-map.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap -var $export = require('./_export'); -var flattenIntoArray = require('./_flatten-into-array'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var aFunction = require('./_a-function'); -var arraySpeciesCreate = require('./_array-species-create'); - -$export($export.P, 'Array', { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen, A; - aFunction(callbackfn); - sourceLen = toLength(O.length); - A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]); - return A; - } -}); - -require('./_add-to-unscopables')('flatMap'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.array.flatten.js b/forward_engineering/node_modules/core-js/modules/es7.array.flatten.js deleted file mode 100644 index 9019b2d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.array.flatten.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten -var $export = require('./_export'); -var flattenIntoArray = require('./_flatten-into-array'); -var toObject = require('./_to-object'); -var toLength = require('./_to-length'); -var toInteger = require('./_to-integer'); -var arraySpeciesCreate = require('./_array-species-create'); - -$export($export.P, 'Array', { - flatten: function flatten(/* depthArg = 1 */) { - var depthArg = arguments[0]; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); - -require('./_add-to-unscopables')('flatten'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.array.includes.js b/forward_engineering/node_modules/core-js/modules/es7.array.includes.js deleted file mode 100644 index 1b77f0e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.array.includes.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://github.com/tc39/Array.prototype.includes -var $export = require('./_export'); -var $includes = require('./_array-includes')(true); - -$export($export.P, 'Array', { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -require('./_add-to-unscopables')('includes'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.asap.js b/forward_engineering/node_modules/core-js/modules/es7.asap.js deleted file mode 100644 index d36f7c7..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.asap.js +++ /dev/null @@ -1,12 +0,0 @@ -// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask -var $export = require('./_export'); -var microtask = require('./_microtask')(); -var process = require('./_global').process; -var isNode = require('./_cof')(process) == 'process'; - -$export($export.G, { - asap: function asap(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.error.is-error.js b/forward_engineering/node_modules/core-js/modules/es7.error.is-error.js deleted file mode 100644 index ba94f5d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.error.is-error.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/ljharb/proposal-is-error -var $export = require('./_export'); -var cof = require('./_cof'); - -$export($export.S, 'Error', { - isError: function isError(it) { - return cof(it) === 'Error'; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.global.js b/forward_engineering/node_modules/core-js/modules/es7.global.js deleted file mode 100644 index a315fd4..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.global.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/tc39/proposal-global -var $export = require('./_export'); - -$export($export.G, { global: require('./_global') }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.map.from.js b/forward_engineering/node_modules/core-js/modules/es7.map.from.js deleted file mode 100644 index a605737..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.map.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -require('./_set-collection-from')('Map'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.map.of.js b/forward_engineering/node_modules/core-js/modules/es7.map.of.js deleted file mode 100644 index a2bf1fe..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.map.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -require('./_set-collection-of')('Map'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.map.to-json.js b/forward_engineering/node_modules/core-js/modules/es7.map.to-json.js deleted file mode 100644 index 95a3569..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.map.to-json.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = require('./_export'); - -$export($export.P + $export.R, 'Map', { toJSON: require('./_collection-to-json')('Map') }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.clamp.js b/forward_engineering/node_modules/core-js/modules/es7.math.clamp.js deleted file mode 100644 index 319cda6..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.clamp.js +++ /dev/null @@ -1,8 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { - clamp: function clamp(x, lower, upper) { - return Math.min(upper, Math.max(lower, x)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.deg-per-rad.js b/forward_engineering/node_modules/core-js/modules/es7.math.deg-per-rad.js deleted file mode 100644 index 99b95bb..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.deg-per-rad.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.degrees.js b/forward_engineering/node_modules/core-js/modules/es7.math.degrees.js deleted file mode 100644 index 6637d91..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.degrees.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var RAD_PER_DEG = 180 / Math.PI; - -$export($export.S, 'Math', { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.fscale.js b/forward_engineering/node_modules/core-js/modules/es7.math.fscale.js deleted file mode 100644 index ad660a0..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.fscale.js +++ /dev/null @@ -1,10 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var scale = require('./_math-scale'); -var fround = require('./_math-fround'); - -$export($export.S, 'Math', { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.iaddh.js b/forward_engineering/node_modules/core-js/modules/es7.math.iaddh.js deleted file mode 100644 index a331ba9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.iaddh.js +++ /dev/null @@ -1,11 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.imulh.js b/forward_engineering/node_modules/core-js/modules/es7.math.imulh.js deleted file mode 100644 index 58d19f3..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.imulh.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - imulh: function imulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.isubh.js b/forward_engineering/node_modules/core-js/modules/es7.math.isubh.js deleted file mode 100644 index de22793..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.isubh.js +++ /dev/null @@ -1,11 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.rad-per-deg.js b/forward_engineering/node_modules/core-js/modules/es7.math.rad-per-deg.js deleted file mode 100644 index 6f70259..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.rad-per-deg.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.radians.js b/forward_engineering/node_modules/core-js/modules/es7.math.radians.js deleted file mode 100644 index abd9575..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.radians.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); -var DEG_PER_RAD = Math.PI / 180; - -$export($export.S, 'Math', { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.scale.js b/forward_engineering/node_modules/core-js/modules/es7.math.scale.js deleted file mode 100644 index 2866dcd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.scale.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://rwaldron.github.io/proposal-math-extensions/ -var $export = require('./_export'); - -$export($export.S, 'Math', { scale: require('./_math-scale') }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.signbit.js b/forward_engineering/node_modules/core-js/modules/es7.math.signbit.js deleted file mode 100644 index c256804..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.signbit.js +++ /dev/null @@ -1,7 +0,0 @@ -// http://jfbastien.github.io/papers/Math.signbit.html -var $export = require('./_export'); - -$export($export.S, 'Math', { signbit: function signbit(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0; -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.math.umulh.js b/forward_engineering/node_modules/core-js/modules/es7.math.umulh.js deleted file mode 100644 index 3ddfa46..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.math.umulh.js +++ /dev/null @@ -1,16 +0,0 @@ -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -var $export = require('./_export'); - -$export($export.S, 'Math', { - umulh: function umulh(u, v) { - var UINT16 = 0xffff; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.define-getter.js b/forward_engineering/node_modules/core-js/modules/es7.object.define-getter.js deleted file mode 100644 index ffc6203..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.define-getter.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var aFunction = require('./_a-function'); -var $defineProperty = require('./_object-dp'); - -// B.2.2.2 Object.prototype.__defineGetter__(P, getter) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __defineGetter__: function __defineGetter__(P, getter) { - $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.define-setter.js b/forward_engineering/node_modules/core-js/modules/es7.object.define-setter.js deleted file mode 100644 index 8ceefdd..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.define-setter.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var aFunction = require('./_a-function'); -var $defineProperty = require('./_object-dp'); - -// B.2.2.3 Object.prototype.__defineSetter__(P, setter) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __defineSetter__: function __defineSetter__(P, setter) { - $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.entries.js b/forward_engineering/node_modules/core-js/modules/es7.object.entries.js deleted file mode 100644 index 2f83437..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.entries.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/tc39/proposal-object-values-entries -var $export = require('./_export'); -var $entries = require('./_object-to-array')(true); - -$export($export.S, 'Object', { - entries: function entries(it) { - return $entries(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js b/forward_engineering/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js deleted file mode 100644 index b1ab72f..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js +++ /dev/null @@ -1,22 +0,0 @@ -// https://github.com/tc39/proposal-object-getownpropertydescriptors -var $export = require('./_export'); -var ownKeys = require('./_own-keys'); -var toIObject = require('./_to-iobject'); -var gOPD = require('./_object-gopd'); -var createProperty = require('./_create-property'); - -$export($export.S, 'Object', { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIObject(object); - var getDesc = gOPD.f; - var keys = ownKeys(O); - var result = {}; - var i = 0; - var key, desc; - while (keys.length > i) { - desc = getDesc(O, key = keys[i++]); - if (desc !== undefined) createProperty(result, key, desc); - } - return result; - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.lookup-getter.js b/forward_engineering/node_modules/core-js/modules/es7.object.lookup-getter.js deleted file mode 100644 index f802229..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.lookup-getter.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var getPrototypeOf = require('./_object-gpo'); -var getOwnPropertyDescriptor = require('./_object-gopd').f; - -// B.2.2.4 Object.prototype.__lookupGetter__(P) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.get; - } while (O = getPrototypeOf(O)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.lookup-setter.js b/forward_engineering/node_modules/core-js/modules/es7.object.lookup-setter.js deleted file mode 100644 index 8bf8b64..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.lookup-setter.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var getPrototypeOf = require('./_object-gpo'); -var getOwnPropertyDescriptor = require('./_object-gopd').f; - -// B.2.2.5 Object.prototype.__lookupSetter__(P) -require('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var K = toPrimitive(P, true); - var D; - do { - if (D = getOwnPropertyDescriptor(O, K)) return D.set; - } while (O = getPrototypeOf(O)); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.object.values.js b/forward_engineering/node_modules/core-js/modules/es7.object.values.js deleted file mode 100644 index d6f0952..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.object.values.js +++ /dev/null @@ -1,9 +0,0 @@ -// https://github.com/tc39/proposal-object-values-entries -var $export = require('./_export'); -var $values = require('./_object-to-array')(false); - -$export($export.S, 'Object', { - values: function values(it) { - return $values(it); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.observable.js b/forward_engineering/node_modules/core-js/modules/es7.observable.js deleted file mode 100644 index 6dcb2c8..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.observable.js +++ /dev/null @@ -1,199 +0,0 @@ -'use strict'; -// https://github.com/zenparsing/es-observable -var $export = require('./_export'); -var global = require('./_global'); -var core = require('./_core'); -var microtask = require('./_microtask')(); -var OBSERVABLE = require('./_wks')('observable'); -var aFunction = require('./_a-function'); -var anObject = require('./_an-object'); -var anInstance = require('./_an-instance'); -var redefineAll = require('./_redefine-all'); -var hide = require('./_hide'); -var forOf = require('./_for-of'); -var RETURN = forOf.RETURN; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscription) { - var cleanup = subscription._c; - if (cleanup) { - subscription._c = undefined; - cleanup(); - } -}; - -var subscriptionClosed = function (subscription) { - return subscription._o === undefined; -}; - -var closeSubscription = function (subscription) { - if (!subscriptionClosed(subscription)) { - subscription._o = undefined; - cleanupSubscription(subscription); - } -}; - -var Subscription = function (observer, subscriber) { - anObject(observer); - this._c = undefined; - this._o = observer; - observer = new SubscriptionObserver(this); - try { - var cleanup = subscriber(observer); - var subscription = cleanup; - if (cleanup != null) { - if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); }; - else aFunction(cleanup); - this._c = cleanup; - } - } catch (e) { - observer.error(e); - return; - } if (subscriptionClosed(this)) cleanupSubscription(this); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { closeSubscription(this); } -}); - -var SubscriptionObserver = function (subscription) { - this._s = subscription; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - try { - var m = getMethod(observer.next); - if (m) return m.call(observer, value); - } catch (e) { - try { - closeSubscription(subscription); - } finally { - throw e; - } - } - } - }, - error: function error(value) { - var subscription = this._s; - if (subscriptionClosed(subscription)) throw value; - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.error); - if (!m) throw value; - value = m.call(observer, value); - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - }, - complete: function complete(value) { - var subscription = this._s; - if (!subscriptionClosed(subscription)) { - var observer = subscription._o; - subscription._o = undefined; - try { - var m = getMethod(observer.complete); - value = m ? m.call(observer, value) : undefined; - } catch (e) { - try { - cleanupSubscription(subscription); - } finally { - throw e; - } - } cleanupSubscription(subscription); - return value; - } - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - return new Subscription(observer, this._f); - }, - forEach: function forEach(fn) { - var that = this; - return new (core.Promise || global.Promise)(function (resolve, reject) { - aFunction(fn); - var subscription = that.subscribe({ - next: function (value) { - try { - return fn(value); - } catch (e) { - reject(e); - subscription.unsubscribe(); - } - }, - error: reject, - complete: resolve - }); - }); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var method = getMethod(anObject(x)[OBSERVABLE]); - if (method) { - var observable = anObject(method.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - return new C(function (observer) { - var done = false; - microtask(function () { - if (!done) { - try { - if (forOf(x, false, function (it) { - observer.next(it); - if (done) return RETURN; - }) === RETURN) return; - } catch (e) { - if (done) throw e; - observer.error(e); - return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - }, - of: function of() { - for (var i = 0, l = arguments.length, items = new Array(l); i < l;) items[i] = arguments[i++]; - return new (typeof this === 'function' ? this : $Observable)(function (observer) { - var done = false; - microtask(function () { - if (!done) { - for (var j = 0; j < items.length; ++j) { - observer.next(items[j]); - if (done) return; - } observer.complete(); - } - }); - return function () { done = true; }; - }); - } -}); - -hide($Observable.prototype, OBSERVABLE, function () { return this; }); - -$export($export.G, { Observable: $Observable }); - -require('./_set-species')('Observable'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.promise.finally.js b/forward_engineering/node_modules/core-js/modules/es7.promise.finally.js deleted file mode 100644 index fa04b63..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.promise.finally.js +++ /dev/null @@ -1,20 +0,0 @@ -// https://github.com/tc39/proposal-promise-finally -'use strict'; -var $export = require('./_export'); -var core = require('./_core'); -var global = require('./_global'); -var speciesConstructor = require('./_species-constructor'); -var promiseResolve = require('./_promise-resolve'); - -$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) { - var C = speciesConstructor(this, core.Promise || global.Promise); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.promise.try.js b/forward_engineering/node_modules/core-js/modules/es7.promise.try.js deleted file mode 100644 index e816372..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.promise.try.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-promise-try -var $export = require('./_export'); -var newPromiseCapability = require('./_new-promise-capability'); -var perform = require('./_perform'); - -$export($export.S, 'Promise', { 'try': function (callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.define-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.define-metadata.js deleted file mode 100644 index ebef52c..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.define-metadata.js +++ /dev/null @@ -1,8 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var toMetaKey = metadata.key; -var ordinaryDefineOwnMetadata = metadata.set; - -metadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey)); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.delete-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.delete-metadata.js deleted file mode 100644 index 590ed53..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.delete-metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var toMetaKey = metadata.key; -var getOrCreateMetadataMap = metadata.map; -var store = metadata.store; - -metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js deleted file mode 100644 index f344172..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata-keys.js +++ /dev/null @@ -1,19 +0,0 @@ -var Set = require('./es6.set'); -var from = require('./_array-from-iterable'); -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata.js deleted file mode 100644 index 58c278e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-metadata.js +++ /dev/null @@ -1,17 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryHasOwnMetadata = metadata.has; -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -metadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js deleted file mode 100644 index 03e3201..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js +++ /dev/null @@ -1,8 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryOwnMetadataKeys = metadata.keys; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata.js deleted file mode 100644 index 4a18b07..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.get-own-metadata.js +++ /dev/null @@ -1,9 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryGetOwnMetadata = metadata.get; -var toMetaKey = metadata.key; - -metadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryGetOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.has-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.has-metadata.js deleted file mode 100644 index b934bb4..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.has-metadata.js +++ /dev/null @@ -1,16 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var getPrototypeOf = require('./_object-gpo'); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -metadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.has-own-metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.has-own-metadata.js deleted file mode 100644 index 512850d..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.has-own-metadata.js +++ /dev/null @@ -1,9 +0,0 @@ -var metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var ordinaryHasOwnMetadata = metadata.has; -var toMetaKey = metadata.key; - -metadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - return ordinaryHasOwnMetadata(metadataKey, anObject(target) - , arguments.length < 3 ? undefined : toMetaKey(arguments[2])); -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.reflect.metadata.js b/forward_engineering/node_modules/core-js/modules/es7.reflect.metadata.js deleted file mode 100644 index efb9a9e..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.reflect.metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var $metadata = require('./_metadata'); -var anObject = require('./_an-object'); -var aFunction = require('./_a-function'); -var toMetaKey = $metadata.key; -var ordinaryDefineOwnMetadata = $metadata.set; - -$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, targetKey) { - ordinaryDefineOwnMetadata( - metadataKey, metadataValue, - (targetKey !== undefined ? anObject : aFunction)(target), - toMetaKey(targetKey) - ); - }; -} }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.set.from.js b/forward_engineering/node_modules/core-js/modules/es7.set.from.js deleted file mode 100644 index 26542b6..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.set.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -require('./_set-collection-from')('Set'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.set.of.js b/forward_engineering/node_modules/core-js/modules/es7.set.of.js deleted file mode 100644 index 2a50ad9..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.set.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -require('./_set-collection-of')('Set'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.set.to-json.js b/forward_engineering/node_modules/core-js/modules/es7.set.to-json.js deleted file mode 100644 index 95cbcfa..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.set.to-json.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/DavidBruant/Map-Set.prototype.toJSON -var $export = require('./_export'); - -$export($export.P + $export.R, 'Set', { toJSON: require('./_collection-to-json')('Set') }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.at.js b/forward_engineering/node_modules/core-js/modules/es7.string.at.js deleted file mode 100644 index 8b3ab98..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.at.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/mathiasbynens/String.prototype.at -var $export = require('./_export'); -var $at = require('./_string-at')(true); - -$export($export.P, 'String', { - at: function at(pos) { - return $at(this, pos); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.match-all.js b/forward_engineering/node_modules/core-js/modules/es7.string.match-all.js deleted file mode 100644 index 7823703..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.match-all.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -// https://tc39.github.io/String.prototype.matchAll/ -var $export = require('./_export'); -var defined = require('./_defined'); -var toLength = require('./_to-length'); -var isRegExp = require('./_is-regexp'); -var getFlags = require('./_flags'); -var RegExpProto = RegExp.prototype; - -var $RegExpStringIterator = function (regexp, string) { - this._r = regexp; - this._s = string; -}; - -require('./_iter-create')($RegExpStringIterator, 'RegExp String', function next() { - var match = this._r.exec(this._s); - return { value: match, done: match === null }; -}); - -$export($export.P, 'String', { - matchAll: function matchAll(regexp) { - defined(this); - if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!'); - var S = String(this); - var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp); - var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags); - rx.lastIndex = toLength(regexp.lastIndex); - return new $RegExpStringIterator(rx, S); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.pad-end.js b/forward_engineering/node_modules/core-js/modules/es7.string.pad-end.js deleted file mode 100644 index 5a531a1..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.pad-end.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-string-pad-start-end -var $export = require('./_export'); -var $pad = require('./_string-pad'); -var userAgent = require('./_user-agent'); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.pad-start.js b/forward_engineering/node_modules/core-js/modules/es7.string.pad-start.js deleted file mode 100644 index 729ed93..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.pad-start.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-string-pad-start-end -var $export = require('./_export'); -var $pad = require('./_string-pad'); -var userAgent = require('./_user-agent'); - -// https://github.com/zloirock/core-js/issues/280 -var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); - -$export($export.P + $export.F * WEBKIT_BUG, 'String', { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.trim-left.js b/forward_engineering/node_modules/core-js/modules/es7.string.trim-left.js deleted file mode 100644 index 39a4b47..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.trim-left.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -require('./_string-trim')('trimLeft', function ($trim) { - return function trimLeft() { - return $trim(this, 1); - }; -}, 'trimStart'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.string.trim-right.js b/forward_engineering/node_modules/core-js/modules/es7.string.trim-right.js deleted file mode 100644 index 7b7c452..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.string.trim-right.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -// https://github.com/sebmarkbage/ecmascript-string-left-right-trim -require('./_string-trim')('trimRight', function ($trim) { - return function trimRight() { - return $trim(this, 2); - }; -}, 'trimEnd'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.symbol.async-iterator.js b/forward_engineering/node_modules/core-js/modules/es7.symbol.async-iterator.js deleted file mode 100644 index f56dc2a..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.symbol.async-iterator.js +++ /dev/null @@ -1 +0,0 @@ -require('./_wks-define')('asyncIterator'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.symbol.observable.js b/forward_engineering/node_modules/core-js/modules/es7.symbol.observable.js deleted file mode 100644 index fc9a237..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.symbol.observable.js +++ /dev/null @@ -1 +0,0 @@ -require('./_wks-define')('observable'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.system.global.js b/forward_engineering/node_modules/core-js/modules/es7.system.global.js deleted file mode 100644 index 310a802..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.system.global.js +++ /dev/null @@ -1,4 +0,0 @@ -// https://github.com/tc39/proposal-global -var $export = require('./_export'); - -$export($export.S, 'System', { global: require('./_global') }); diff --git a/forward_engineering/node_modules/core-js/modules/es7.weak-map.from.js b/forward_engineering/node_modules/core-js/modules/es7.weak-map.from.js deleted file mode 100644 index 1a01365..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.weak-map.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -require('./_set-collection-from')('WeakMap'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.weak-map.of.js b/forward_engineering/node_modules/core-js/modules/es7.weak-map.of.js deleted file mode 100644 index 52c3f66..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.weak-map.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -require('./_set-collection-of')('WeakMap'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.weak-set.from.js b/forward_engineering/node_modules/core-js/modules/es7.weak-set.from.js deleted file mode 100644 index 493e5be..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.weak-set.from.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -require('./_set-collection-from')('WeakSet'); diff --git a/forward_engineering/node_modules/core-js/modules/es7.weak-set.of.js b/forward_engineering/node_modules/core-js/modules/es7.weak-set.of.js deleted file mode 100644 index 5941e72..0000000 --- a/forward_engineering/node_modules/core-js/modules/es7.weak-set.of.js +++ /dev/null @@ -1,2 +0,0 @@ -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -require('./_set-collection-of')('WeakSet'); diff --git a/forward_engineering/node_modules/core-js/modules/library/_add-to-unscopables.js b/forward_engineering/node_modules/core-js/modules/library/_add-to-unscopables.js deleted file mode 100644 index 02ef44b..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_add-to-unscopables.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = function () { /* empty */ }; diff --git a/forward_engineering/node_modules/core-js/modules/library/_collection.js b/forward_engineering/node_modules/core-js/modules/library/_collection.js deleted file mode 100644 index 31a36b8..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_collection.js +++ /dev/null @@ -1,59 +0,0 @@ -'use strict'; -var global = require('./_global'); -var $export = require('./_export'); -var meta = require('./_meta'); -var fails = require('./_fails'); -var hide = require('./_hide'); -var redefineAll = require('./_redefine-all'); -var forOf = require('./_for-of'); -var anInstance = require('./_an-instance'); -var isObject = require('./_is-object'); -var setToStringTag = require('./_set-to-string-tag'); -var dP = require('./_object-dp').f; -var each = require('./_array-methods')(0); -var DESCRIPTORS = require('./_descriptors'); - -module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) { - var Base = global[NAME]; - var C = Base; - var ADDER = IS_MAP ? 'set' : 'add'; - var proto = C && C.prototype; - var O = {}; - if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () { - new C().entries().next(); - }))) { - // create collection constructor - C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER); - redefineAll(C.prototype, methods); - meta.NEED = true; - } else { - C = wrapper(function (target, iterable) { - anInstance(target, C, NAME, '_c'); - target._c = new Base(); - if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target); - }); - each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) { - var IS_ADDER = KEY == 'add' || KEY == 'set'; - if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) { - anInstance(this, C, KEY); - if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false; - var result = this._c[KEY](a === 0 ? 0 : a, b); - return IS_ADDER ? this : result; - }); - }); - IS_WEAK || dP(C.prototype, 'size', { - get: function () { - return this._c.size; - } - }); - } - - setToStringTag(C, NAME); - - O[NAME] = C; - $export($export.G + $export.W + $export.F, O); - - if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP); - - return C; -}; diff --git a/forward_engineering/node_modules/core-js/modules/library/_export.js b/forward_engineering/node_modules/core-js/modules/library/_export.js deleted file mode 100644 index 02bddc0..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_export.js +++ /dev/null @@ -1,62 +0,0 @@ -var global = require('./_global'); -var core = require('./_core'); -var ctx = require('./_ctx'); -var hide = require('./_hide'); -var has = require('./_has'); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var IS_WRAP = type & $export.W; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE]; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; - var key, own, out; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - if (own && has(exports, key)) continue; - // export native or passed - out = own ? target[key] : source[key]; - // prevent global pollution for namespaces - exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] - // bind timers to global for call from export context - : IS_BIND && own ? ctx(out, global) - // wrap global constructors for prevent change them in library - : IS_WRAP && target[key] == out ? (function (C) { - var F = function (a, b, c) { - if (this instanceof C) { - switch (arguments.length) { - case 0: return new C(); - case 1: return new C(a); - case 2: return new C(a, b); - } return new C(a, b, c); - } return C.apply(this, arguments); - }; - F[PROTOTYPE] = C[PROTOTYPE]; - return F; - // make static versions for prototype methods - })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% - if (IS_PROTO) { - (exports.virtual || (exports.virtual = {}))[key] = out; - // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% - if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); - } - } -}; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; diff --git a/forward_engineering/node_modules/core-js/modules/library/_library.js b/forward_engineering/node_modules/core-js/modules/library/_library.js deleted file mode 100644 index ec01c2c..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_library.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = true; diff --git a/forward_engineering/node_modules/core-js/modules/library/_path.js b/forward_engineering/node_modules/core-js/modules/library/_path.js deleted file mode 100644 index 2796ebc..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_path.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_core'); diff --git a/forward_engineering/node_modules/core-js/modules/library/_redefine-all.js b/forward_engineering/node_modules/core-js/modules/library/_redefine-all.js deleted file mode 100644 index bf8c0ea..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_redefine-all.js +++ /dev/null @@ -1,7 +0,0 @@ -var hide = require('./_hide'); -module.exports = function (target, src, safe) { - for (var key in src) { - if (safe && target[key]) target[key] = src[key]; - else hide(target, key, src[key]); - } return target; -}; diff --git a/forward_engineering/node_modules/core-js/modules/library/_redefine.js b/forward_engineering/node_modules/core-js/modules/library/_redefine.js deleted file mode 100644 index fde6108..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_redefine.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./_hide'); diff --git a/forward_engineering/node_modules/core-js/modules/library/_regexp-exec-abstract.js b/forward_engineering/node_modules/core-js/modules/library/_regexp-exec-abstract.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_regexp-exec-abstract.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/modules/library/_regexp-exec.js b/forward_engineering/node_modules/core-js/modules/library/_regexp-exec.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_regexp-exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/modules/library/_set-species.js b/forward_engineering/node_modules/core-js/modules/library/_set-species.js deleted file mode 100644 index 1f25fde..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/_set-species.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var global = require('./_global'); -var core = require('./_core'); -var dP = require('./_object-dp'); -var DESCRIPTORS = require('./_descriptors'); -var SPECIES = require('./_wks')('species'); - -module.exports = function (KEY) { - var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { - configurable: true, - get: function () { return this; } - }); -}; diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.date.to-json.js b/forward_engineering/node_modules/core-js/modules/library/es6.date.to-json.js deleted file mode 100644 index 69b1f30..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/es6.date.to-json.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $export = require('./_export'); -var toObject = require('./_to-object'); -var toPrimitive = require('./_to-primitive'); -var toISOString = require('./_date-to-iso-string'); -var classof = require('./_classof'); - -$export($export.P + $export.F * require('./_fails')(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}), 'Date', { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : - (!('toISOString' in O) && classof(O) == 'Date') ? toISOString.call(O) : O.toISOString(); - } -}); diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.date.to-primitive.js b/forward_engineering/node_modules/core-js/modules/library/es6.date.to-primitive.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.date.to-string.js b/forward_engineering/node_modules/core-js/modules/library/es6.date.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.function.name.js b/forward_engineering/node_modules/core-js/modules/library/es6.function.name.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.number.constructor.js b/forward_engineering/node_modules/core-js/modules/library/es6.number.constructor.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.object.to-string.js b/forward_engineering/node_modules/core-js/modules/library/es6.object.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.constructor.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.constructor.js deleted file mode 100644 index e85e314..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.constructor.js +++ /dev/null @@ -1 +0,0 @@ -require('./_set-species')('RegExp'); diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.exec.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.exec.js deleted file mode 100644 index 8b1a393..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.flags.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.flags.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.match.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.match.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.replace.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.replace.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.search.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.search.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.split.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.split.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/es6.regexp.to-string.js b/forward_engineering/node_modules/core-js/modules/library/es6.regexp.to-string.js deleted file mode 100644 index e69de29..0000000 diff --git a/forward_engineering/node_modules/core-js/modules/library/web.dom.iterable.js b/forward_engineering/node_modules/core-js/modules/library/web.dom.iterable.js deleted file mode 100644 index fc00afa..0000000 --- a/forward_engineering/node_modules/core-js/modules/library/web.dom.iterable.js +++ /dev/null @@ -1,19 +0,0 @@ -require('./es6.array.iterator'); -var global = require('./_global'); -var hide = require('./_hide'); -var Iterators = require('./_iterators'); -var TO_STRING_TAG = require('./_wks')('toStringTag'); - -var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' + - 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' + - 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' + - 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' + - 'TextTrackList,TouchList').split(','); - -for (var i = 0; i < DOMIterables.length; i++) { - var NAME = DOMIterables[i]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = Iterators.Array; -} diff --git a/forward_engineering/node_modules/core-js/modules/web.dom.iterable.js b/forward_engineering/node_modules/core-js/modules/web.dom.iterable.js deleted file mode 100644 index 40834b0..0000000 --- a/forward_engineering/node_modules/core-js/modules/web.dom.iterable.js +++ /dev/null @@ -1,58 +0,0 @@ -var $iterators = require('./es6.array.iterator'); -var getKeys = require('./_object-keys'); -var redefine = require('./_redefine'); -var global = require('./_global'); -var hide = require('./_hide'); -var Iterators = require('./_iterators'); -var wks = require('./_wks'); -var ITERATOR = wks('iterator'); -var TO_STRING_TAG = wks('toStringTag'); -var ArrayValues = Iterators.Array; - -var DOMIterables = { - CSSRuleList: true, // TODO: Not spec compliant, should be false. - CSSStyleDeclaration: false, - CSSValueList: false, - ClientRectList: false, - DOMRectList: false, - DOMStringList: false, - DOMTokenList: true, - DataTransferItemList: false, - FileList: false, - HTMLAllCollection: false, - HTMLCollection: false, - HTMLFormElement: false, - HTMLSelectElement: false, - MediaList: true, // TODO: Not spec compliant, should be false. - MimeTypeArray: false, - NamedNodeMap: false, - NodeList: true, - PaintRequestList: false, - Plugin: false, - PluginArray: false, - SVGLengthList: false, - SVGNumberList: false, - SVGPathSegList: false, - SVGPointList: false, - SVGStringList: false, - SVGTransformList: false, - SourceBufferList: false, - StyleSheetList: true, // TODO: Not spec compliant, should be false. - TextTrackCueList: false, - TextTrackList: false, - TouchList: false -}; - -for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) { - var NAME = collections[i]; - var explicit = DOMIterables[NAME]; - var Collection = global[NAME]; - var proto = Collection && Collection.prototype; - var key; - if (proto) { - if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues); - if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = ArrayValues; - if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true); - } -} diff --git a/forward_engineering/node_modules/core-js/modules/web.immediate.js b/forward_engineering/node_modules/core-js/modules/web.immediate.js deleted file mode 100644 index 70f3e70..0000000 --- a/forward_engineering/node_modules/core-js/modules/web.immediate.js +++ /dev/null @@ -1,6 +0,0 @@ -var $export = require('./_export'); -var $task = require('./_task'); -$export($export.G + $export.B, { - setImmediate: $task.set, - clearImmediate: $task.clear -}); diff --git a/forward_engineering/node_modules/core-js/modules/web.timers.js b/forward_engineering/node_modules/core-js/modules/web.timers.js deleted file mode 100644 index c879083..0000000 --- a/forward_engineering/node_modules/core-js/modules/web.timers.js +++ /dev/null @@ -1,20 +0,0 @@ -// ie9- setTimeout & setInterval additional parameters fix -var global = require('./_global'); -var $export = require('./_export'); -var userAgent = require('./_user-agent'); -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check -var wrap = function (set) { - return function (fn, time /* , ...args */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : false; - return set(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(this, args); - } : fn, time); - }; -}; -$export($export.G + $export.B + $export.F * MSIE, { - setTimeout: wrap(global.setTimeout), - setInterval: wrap(global.setInterval) -}); diff --git a/forward_engineering/node_modules/core-js/package.json b/forward_engineering/node_modules/core-js/package.json deleted file mode 100644 index eee0094..0000000 --- a/forward_engineering/node_modules/core-js/package.json +++ /dev/null @@ -1,143 +0,0 @@ -{ - "_args": [ - [ - { - "raw": "core-js@^2.5.7", - "scope": null, - "escapedName": "core-js", - "name": "core-js", - "rawSpec": "^2.5.7", - "spec": ">=2.5.7 <3.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/z-schema" - ] - ], - "_from": "core-js@>=2.5.7 <3.0.0", - "_hasShrinkwrap": false, - "_id": "core-js@2.6.9", - "_inCache": true, - "_location": "/core-js", - "_nodeVersion": "12.0.0", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/core-js_2.6.9_1558961667994_0.7058907097218095" - }, - "_npmUser": { - "name": "zloirock", - "email": "zloirock@zloirock.ru" - }, - "_npmVersion": "6.9.0", - "_phantomChildren": {}, - "_requested": { - "raw": "core-js@^2.5.7", - "scope": null, - "escapedName": "core-js", - "name": "core-js", - "rawSpec": "^2.5.7", - "spec": ">=2.5.7 <3.0.0", - "type": "range" - }, - "_requiredBy": [ - "/z-schema" - ], - "_resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "_shasum": "6b4b214620c834152e179323727fc19741b084f2", - "_shrinkwrap": null, - "_spec": "core-js@^2.5.7", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/z-schema", - "bugs": { - "url": "https://github.com/zloirock/core-js/issues" - }, - "dependencies": {}, - "description": "Standard library", - "devDependencies": { - "LiveScript": "1.3.x", - "es-observable-tests": "0.2.x", - "eslint": "4.19.x", - "eslint-plugin-import": "2.12.x", - "grunt": "^1.0.2", - "grunt-cli": "^1.2.0", - "grunt-contrib-clean": "^1.1.0", - "grunt-contrib-copy": "^1.0.0", - "grunt-contrib-uglify": "3.3.x", - "grunt-contrib-watch": "^1.0.0", - "grunt-karma": "^2.0.0", - "grunt-livescript": "0.6.x", - "karma": "^2.0.0", - "karma-chrome-launcher": "^2.2.0", - "karma-firefox-launcher": "^1.0.1", - "karma-ie-launcher": "^1.0.0", - "karma-phantomjs-launcher": "1.0.x", - "karma-qunit": "^2.1.0", - "phantomjs-prebuilt": "2.1.x", - "promises-aplus-tests": "^2.1.2", - "qunit": "2.6.x", - "temp": "^0.8.3", - "webpack": "^3.11.0" - }, - "directories": {}, - "dist": { - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", - "shasum": "6b4b214620c834152e179323727fc19741b084f2", - "tarball": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "fileCount": 1489, - "unpackedSize": 2259924, - "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc694FCRA9TVsSAnZWagAASNUQAJm05aYOXuRaPztHACgA\nXShT9cULAtCEWOzx2epzL/2RqDSN3SapXxEho1+emnKJ1wfNDUDDSbz0WNF3\nOCRuTAJByifBLFTCyv7IBdis4TVlKiiWBsTmMribMIBAFRqanDo5QfdaRDJn\nLbe8iIa80SCcAl2A4mTjIePybAzGeMr1ro6/ZAs8pBJUkzDWqcUNKLDH1IDx\n8LWGew87mv1SE2qYd6OBKcLwLJhDQMFeLTuyKV3LNnpig8Ptw20JU8xvmBeh\nL99SqjUcaqsytKnOgxfDVsEUd0MUSbBllRqGZnFRXan0hP0DzaJ4Z9ihTJhY\nr6MWnvA2CFhJIMmtqORPM9aS/nqdHaU4LFDRBDbZNwFk5ve+8FjHDPL13ZNG\ndnHGPZABxoTNxKoqXw5DhhgqBZlmSYxMg5txNDJVrLGCXBXLYTlGoqTegWfS\nDy4j5zGc7iJodgmbXh0zz6A4rkltNc3vH90AeSeDeLwGVDuPNGKMoB+kJKLW\nWN27lkMybv51xNJbtQ8hV6q1g4i0/pzKGpObSFYtGX60M6AxOIGwFEGqQJVb\nilVcIROOmWcL3BH7pIQDvw95dDdWf68vD8ilfklZV0834ZUIiH1mFpEe0V2c\nZknqQCq3GES+7SNFc/Bber6BAf4iNXSWkCkdJ19kJo8BGvM6YQLBucU8V3y7\nEUYT\r\n=dsSH\r\n-----END PGP SIGNATURE-----\r\n" - }, - "gitHead": "6a3fe85136aaae0e3b099c96a05a5ceb1f515a50", - "homepage": "https://github.com/zloirock/core-js#readme", - "keywords": [ - "ES3", - "ES5", - "ES6", - "ES7", - "ES2015", - "ES2016", - "ES2017", - "ECMAScript 3", - "ECMAScript 5", - "ECMAScript 6", - "ECMAScript 7", - "ECMAScript 2015", - "ECMAScript 2016", - "ECMAScript 2017", - "Harmony", - "Strawman", - "Map", - "Set", - "WeakMap", - "WeakSet", - "Promise", - "Symbol", - "TypedArray", - "setImmediate", - "Dict", - "polyfill", - "shim" - ], - "license": "MIT", - "main": "index.js", - "maintainers": [ - { - "name": "zloirock", - "email": "zloirock@zloirock.ru" - } - ], - "name": "core-js", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", - "repository": { - "type": "git", - "url": "git+https://github.com/zloirock/core-js.git" - }, - "scripts": { - "grunt": "grunt", - "lint": "eslint ./", - "observables-tests": "node tests/observables/adapter && node tests/observables/adapter-library", - "postinstall": "node scripts/postinstall || echo \"ignore\"", - "promises-tests": "promises-aplus-tests tests/promises-aplus/adapter", - "test": "npm run grunt clean copy && npm run lint && npm run grunt livescript client karma:default && npm run grunt library karma:library && npm run promises-tests && npm run observables-tests && lsc tests/commonjs" - }, - "version": "2.6.9" -} diff --git a/forward_engineering/node_modules/core-js/scripts/postinstall.js b/forward_engineering/node_modules/core-js/scripts/postinstall.js deleted file mode 100644 index e3b1c0d..0000000 --- a/forward_engineering/node_modules/core-js/scripts/postinstall.js +++ /dev/null @@ -1,23 +0,0 @@ -/* eslint-disable max-len */ -var env = process.env; -var ADBLOCK = is(env.ADBLOCK); -var CI = is(env.CI); -var COLOR = is(env.npm_config_color); -var SILENT = !!~['silent', 'error', 'warn'].indexOf(env.npm_config_loglevel); - -function is(it) { - return !!it && it !== '0' && it !== 'false'; -} - -function log(it) { - // eslint-disable-next-line no-console,no-control-regex - console.log(COLOR ? it : it.replace(/\u001B\[\d+m/g, '')); -} - -if (!ADBLOCK && !CI && !SILENT) { - log('\u001B[96mThank you for using core-js (\u001B[94m https://github.com/zloirock/core-js \u001B[96m) for polyfilling JavaScript standard library!\u001B[0m\n'); - log('\u001B[96mThe project needs your help! Please consider supporting of core-js on Open Collective or Patreon: \u001B[0m'); - log('\u001B[96m>\u001B[94m https://opencollective.com/core-js \u001B[0m'); - log('\u001B[96m>\u001B[94m https://www.patreon.com/zloirock \u001B[0m\n'); - log('\u001B[96mAlso, the author of core-js (\u001B[94m https://github.com/zloirock \u001B[96m) is looking for a good job -)\u001B[0m\n'); -} diff --git a/forward_engineering/node_modules/core-js/shim.js b/forward_engineering/node_modules/core-js/shim.js deleted file mode 100644 index e2d53f4..0000000 --- a/forward_engineering/node_modules/core-js/shim.js +++ /dev/null @@ -1,198 +0,0 @@ -require('./modules/es6.symbol'); -require('./modules/es6.object.create'); -require('./modules/es6.object.define-property'); -require('./modules/es6.object.define-properties'); -require('./modules/es6.object.get-own-property-descriptor'); -require('./modules/es6.object.get-prototype-of'); -require('./modules/es6.object.keys'); -require('./modules/es6.object.get-own-property-names'); -require('./modules/es6.object.freeze'); -require('./modules/es6.object.seal'); -require('./modules/es6.object.prevent-extensions'); -require('./modules/es6.object.is-frozen'); -require('./modules/es6.object.is-sealed'); -require('./modules/es6.object.is-extensible'); -require('./modules/es6.object.assign'); -require('./modules/es6.object.is'); -require('./modules/es6.object.set-prototype-of'); -require('./modules/es6.object.to-string'); -require('./modules/es6.function.bind'); -require('./modules/es6.function.name'); -require('./modules/es6.function.has-instance'); -require('./modules/es6.parse-int'); -require('./modules/es6.parse-float'); -require('./modules/es6.number.constructor'); -require('./modules/es6.number.to-fixed'); -require('./modules/es6.number.to-precision'); -require('./modules/es6.number.epsilon'); -require('./modules/es6.number.is-finite'); -require('./modules/es6.number.is-integer'); -require('./modules/es6.number.is-nan'); -require('./modules/es6.number.is-safe-integer'); -require('./modules/es6.number.max-safe-integer'); -require('./modules/es6.number.min-safe-integer'); -require('./modules/es6.number.parse-float'); -require('./modules/es6.number.parse-int'); -require('./modules/es6.math.acosh'); -require('./modules/es6.math.asinh'); -require('./modules/es6.math.atanh'); -require('./modules/es6.math.cbrt'); -require('./modules/es6.math.clz32'); -require('./modules/es6.math.cosh'); -require('./modules/es6.math.expm1'); -require('./modules/es6.math.fround'); -require('./modules/es6.math.hypot'); -require('./modules/es6.math.imul'); -require('./modules/es6.math.log10'); -require('./modules/es6.math.log1p'); -require('./modules/es6.math.log2'); -require('./modules/es6.math.sign'); -require('./modules/es6.math.sinh'); -require('./modules/es6.math.tanh'); -require('./modules/es6.math.trunc'); -require('./modules/es6.string.from-code-point'); -require('./modules/es6.string.raw'); -require('./modules/es6.string.trim'); -require('./modules/es6.string.iterator'); -require('./modules/es6.string.code-point-at'); -require('./modules/es6.string.ends-with'); -require('./modules/es6.string.includes'); -require('./modules/es6.string.repeat'); -require('./modules/es6.string.starts-with'); -require('./modules/es6.string.anchor'); -require('./modules/es6.string.big'); -require('./modules/es6.string.blink'); -require('./modules/es6.string.bold'); -require('./modules/es6.string.fixed'); -require('./modules/es6.string.fontcolor'); -require('./modules/es6.string.fontsize'); -require('./modules/es6.string.italics'); -require('./modules/es6.string.link'); -require('./modules/es6.string.small'); -require('./modules/es6.string.strike'); -require('./modules/es6.string.sub'); -require('./modules/es6.string.sup'); -require('./modules/es6.date.now'); -require('./modules/es6.date.to-json'); -require('./modules/es6.date.to-iso-string'); -require('./modules/es6.date.to-string'); -require('./modules/es6.date.to-primitive'); -require('./modules/es6.array.is-array'); -require('./modules/es6.array.from'); -require('./modules/es6.array.of'); -require('./modules/es6.array.join'); -require('./modules/es6.array.slice'); -require('./modules/es6.array.sort'); -require('./modules/es6.array.for-each'); -require('./modules/es6.array.map'); -require('./modules/es6.array.filter'); -require('./modules/es6.array.some'); -require('./modules/es6.array.every'); -require('./modules/es6.array.reduce'); -require('./modules/es6.array.reduce-right'); -require('./modules/es6.array.index-of'); -require('./modules/es6.array.last-index-of'); -require('./modules/es6.array.copy-within'); -require('./modules/es6.array.fill'); -require('./modules/es6.array.find'); -require('./modules/es6.array.find-index'); -require('./modules/es6.array.species'); -require('./modules/es6.array.iterator'); -require('./modules/es6.regexp.constructor'); -require('./modules/es6.regexp.exec'); -require('./modules/es6.regexp.to-string'); -require('./modules/es6.regexp.flags'); -require('./modules/es6.regexp.match'); -require('./modules/es6.regexp.replace'); -require('./modules/es6.regexp.search'); -require('./modules/es6.regexp.split'); -require('./modules/es6.promise'); -require('./modules/es6.map'); -require('./modules/es6.set'); -require('./modules/es6.weak-map'); -require('./modules/es6.weak-set'); -require('./modules/es6.typed.array-buffer'); -require('./modules/es6.typed.data-view'); -require('./modules/es6.typed.int8-array'); -require('./modules/es6.typed.uint8-array'); -require('./modules/es6.typed.uint8-clamped-array'); -require('./modules/es6.typed.int16-array'); -require('./modules/es6.typed.uint16-array'); -require('./modules/es6.typed.int32-array'); -require('./modules/es6.typed.uint32-array'); -require('./modules/es6.typed.float32-array'); -require('./modules/es6.typed.float64-array'); -require('./modules/es6.reflect.apply'); -require('./modules/es6.reflect.construct'); -require('./modules/es6.reflect.define-property'); -require('./modules/es6.reflect.delete-property'); -require('./modules/es6.reflect.enumerate'); -require('./modules/es6.reflect.get'); -require('./modules/es6.reflect.get-own-property-descriptor'); -require('./modules/es6.reflect.get-prototype-of'); -require('./modules/es6.reflect.has'); -require('./modules/es6.reflect.is-extensible'); -require('./modules/es6.reflect.own-keys'); -require('./modules/es6.reflect.prevent-extensions'); -require('./modules/es6.reflect.set'); -require('./modules/es6.reflect.set-prototype-of'); -require('./modules/es7.array.includes'); -require('./modules/es7.array.flat-map'); -require('./modules/es7.array.flatten'); -require('./modules/es7.string.at'); -require('./modules/es7.string.pad-start'); -require('./modules/es7.string.pad-end'); -require('./modules/es7.string.trim-left'); -require('./modules/es7.string.trim-right'); -require('./modules/es7.string.match-all'); -require('./modules/es7.symbol.async-iterator'); -require('./modules/es7.symbol.observable'); -require('./modules/es7.object.get-own-property-descriptors'); -require('./modules/es7.object.values'); -require('./modules/es7.object.entries'); -require('./modules/es7.object.define-getter'); -require('./modules/es7.object.define-setter'); -require('./modules/es7.object.lookup-getter'); -require('./modules/es7.object.lookup-setter'); -require('./modules/es7.map.to-json'); -require('./modules/es7.set.to-json'); -require('./modules/es7.map.of'); -require('./modules/es7.set.of'); -require('./modules/es7.weak-map.of'); -require('./modules/es7.weak-set.of'); -require('./modules/es7.map.from'); -require('./modules/es7.set.from'); -require('./modules/es7.weak-map.from'); -require('./modules/es7.weak-set.from'); -require('./modules/es7.global'); -require('./modules/es7.system.global'); -require('./modules/es7.error.is-error'); -require('./modules/es7.math.clamp'); -require('./modules/es7.math.deg-per-rad'); -require('./modules/es7.math.degrees'); -require('./modules/es7.math.fscale'); -require('./modules/es7.math.iaddh'); -require('./modules/es7.math.isubh'); -require('./modules/es7.math.imulh'); -require('./modules/es7.math.rad-per-deg'); -require('./modules/es7.math.radians'); -require('./modules/es7.math.scale'); -require('./modules/es7.math.umulh'); -require('./modules/es7.math.signbit'); -require('./modules/es7.promise.finally'); -require('./modules/es7.promise.try'); -require('./modules/es7.reflect.define-metadata'); -require('./modules/es7.reflect.delete-metadata'); -require('./modules/es7.reflect.get-metadata'); -require('./modules/es7.reflect.get-metadata-keys'); -require('./modules/es7.reflect.get-own-metadata'); -require('./modules/es7.reflect.get-own-metadata-keys'); -require('./modules/es7.reflect.has-metadata'); -require('./modules/es7.reflect.has-own-metadata'); -require('./modules/es7.reflect.metadata'); -require('./modules/es7.asap'); -require('./modules/es7.observable'); -require('./modules/web.timers'); -require('./modules/web.immediate'); -require('./modules/web.dom.iterable'); -module.exports = require('./modules/_core'); diff --git a/forward_engineering/node_modules/core-js/stage/0.js b/forward_engineering/node_modules/core-js/stage/0.js deleted file mode 100644 index 4aa5070..0000000 --- a/forward_engineering/node_modules/core-js/stage/0.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../modules/es7.string.at'); -require('../modules/es7.map.to-json'); -require('../modules/es7.set.to-json'); -require('../modules/es7.error.is-error'); -require('../modules/es7.math.iaddh'); -require('../modules/es7.math.isubh'); -require('../modules/es7.math.imulh'); -require('../modules/es7.math.umulh'); -require('../modules/es7.asap'); -module.exports = require('./1'); diff --git a/forward_engineering/node_modules/core-js/stage/1.js b/forward_engineering/node_modules/core-js/stage/1.js deleted file mode 100644 index 5f634d8..0000000 --- a/forward_engineering/node_modules/core-js/stage/1.js +++ /dev/null @@ -1,23 +0,0 @@ -require('../modules/es7.map.of'); -require('../modules/es7.set.of'); -require('../modules/es7.weak-map.of'); -require('../modules/es7.weak-set.of'); -require('../modules/es7.map.from'); -require('../modules/es7.set.from'); -require('../modules/es7.weak-map.from'); -require('../modules/es7.weak-set.from'); -require('../modules/es7.math.clamp'); -require('../modules/es7.math.deg-per-rad'); -require('../modules/es7.math.degrees'); -require('../modules/es7.math.fscale'); -require('../modules/es7.math.rad-per-deg'); -require('../modules/es7.math.radians'); -require('../modules/es7.math.scale'); -require('../modules/es7.math.signbit'); -require('../modules/es7.promise.try'); -require('../modules/es7.string.match-all'); -require('../modules/es7.symbol.observable'); -require('../modules/es7.observable'); -require('../modules/es7.array.flat-map'); -require('../modules/es7.array.flatten'); -module.exports = require('./2'); diff --git a/forward_engineering/node_modules/core-js/stage/2.js b/forward_engineering/node_modules/core-js/stage/2.js deleted file mode 100644 index d7aaa0e..0000000 --- a/forward_engineering/node_modules/core-js/stage/2.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es7.string.trim-left'); -require('../modules/es7.string.trim-right'); -require('../modules/es7.symbol.async-iterator'); -module.exports = require('./3'); diff --git a/forward_engineering/node_modules/core-js/stage/3.js b/forward_engineering/node_modules/core-js/stage/3.js deleted file mode 100644 index 9afd07f..0000000 --- a/forward_engineering/node_modules/core-js/stage/3.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es7.global'); -require('../modules/es7.system.global'); -require('../modules/es7.promise.finally'); -module.exports = require('./4'); diff --git a/forward_engineering/node_modules/core-js/stage/4.js b/forward_engineering/node_modules/core-js/stage/4.js deleted file mode 100644 index 875762a..0000000 --- a/forward_engineering/node_modules/core-js/stage/4.js +++ /dev/null @@ -1,11 +0,0 @@ -require('../modules/es7.object.define-getter'); -require('../modules/es7.object.define-setter'); -require('../modules/es7.object.lookup-getter'); -require('../modules/es7.object.lookup-setter'); -require('../modules/es7.object.values'); -require('../modules/es7.object.entries'); -require('../modules/es7.object.get-own-property-descriptors'); -require('../modules/es7.array.includes'); -require('../modules/es7.string.pad-start'); -require('../modules/es7.string.pad-end'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/stage/index.js b/forward_engineering/node_modules/core-js/stage/index.js deleted file mode 100644 index 24dcf2e..0000000 --- a/forward_engineering/node_modules/core-js/stage/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./pre'); diff --git a/forward_engineering/node_modules/core-js/stage/pre.js b/forward_engineering/node_modules/core-js/stage/pre.js deleted file mode 100644 index ed197a8..0000000 --- a/forward_engineering/node_modules/core-js/stage/pre.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../modules/es7.reflect.define-metadata'); -require('../modules/es7.reflect.delete-metadata'); -require('../modules/es7.reflect.get-metadata'); -require('../modules/es7.reflect.get-metadata-keys'); -require('../modules/es7.reflect.get-own-metadata'); -require('../modules/es7.reflect.get-own-metadata-keys'); -require('../modules/es7.reflect.has-metadata'); -require('../modules/es7.reflect.has-own-metadata'); -require('../modules/es7.reflect.metadata'); -module.exports = require('./0'); diff --git a/forward_engineering/node_modules/core-js/web/dom-collections.js b/forward_engineering/node_modules/core-js/web/dom-collections.js deleted file mode 100644 index a138bb9..0000000 --- a/forward_engineering/node_modules/core-js/web/dom-collections.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.dom.iterable'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/web/immediate.js b/forward_engineering/node_modules/core-js/web/immediate.js deleted file mode 100644 index 6866abd..0000000 --- a/forward_engineering/node_modules/core-js/web/immediate.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.immediate'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/web/index.js b/forward_engineering/node_modules/core-js/web/index.js deleted file mode 100644 index 66db256..0000000 --- a/forward_engineering/node_modules/core-js/web/index.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.timers'); -require('../modules/web.immediate'); -require('../modules/web.dom.iterable'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/core-js/web/timers.js b/forward_engineering/node_modules/core-js/web/timers.js deleted file mode 100644 index a3f528e..0000000 --- a/forward_engineering/node_modules/core-js/web/timers.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/web.timers'); -module.exports = require('../modules/_core'); diff --git a/forward_engineering/node_modules/format-util/.jscsrc b/forward_engineering/node_modules/format-util/.jscsrc deleted file mode 100644 index 68752ec..0000000 --- a/forward_engineering/node_modules/format-util/.jscsrc +++ /dev/null @@ -1,20 +0,0 @@ -{ - "fileExtensions": [".js", "jscs"], - "requireSemicolons": false, - "requireParenthesesAroundIIFE": true, - "maximumLineLength": 80, - "validateLineBreaks": "LF", - "validateIndentation": 2, - "requireMultipleVarDecl": false, - "disallowTrailingComma": true, - "disallowSpacesInConditionalExpression": false, - "disallowSpaceAfterKeywords": false, - "disallowSpaceBeforeBlockStatements": false, - "disallowSpacesInsideObjectBrackets": null, - "excludeFiles": [ - "node_modules", - "coverage", - "format-util.js", - "test/spec.js" - ] -} diff --git a/forward_engineering/node_modules/format-util/.jshintignore b/forward_engineering/node_modules/format-util/.jshintignore deleted file mode 100644 index e82de96..0000000 --- a/forward_engineering/node_modules/format-util/.jshintignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -format-util.js -test/spec.js -coverage diff --git a/forward_engineering/node_modules/format-util/.jshintrc b/forward_engineering/node_modules/format-util/.jshintrc deleted file mode 100644 index 89e7279..0000000 --- a/forward_engineering/node_modules/format-util/.jshintrc +++ /dev/null @@ -1,13 +0,0 @@ -{ - "laxcomma" : true, - "laxbreak" : true, - "node" : true, - "curly" : true, - "bitwise" : false, - "undef" : true, - "eqeqeq" : true, - "noarg" : true, - "mocha" : true, - "unused" : true, - "asi" : true -} diff --git a/forward_engineering/node_modules/format-util/.npmignore b/forward_engineering/node_modules/format-util/.npmignore deleted file mode 100644 index a6abc60..0000000 --- a/forward_engineering/node_modules/format-util/.npmignore +++ /dev/null @@ -1,7 +0,0 @@ -.DS_Store -/format-util.js -/test/spec.js -*.bak -node_modules -coverage -target diff --git a/forward_engineering/node_modules/format-util/.travis.yml b/forward_engineering/node_modules/format-util/.travis.yml deleted file mode 100644 index d275fe3..0000000 --- a/forward_engineering/node_modules/format-util/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: node_js -script: npm run cover -node_js: - - "4.1" - - "4.0" - - "0.12" - - "0.11" - - "0.10" - - "stable" -after_success: - - npm run coveralls diff --git a/forward_engineering/node_modules/format-util/LICENSE b/forward_engineering/node_modules/format-util/LICENSE deleted file mode 100644 index 04119f5..0000000 --- a/forward_engineering/node_modules/format-util/LICENSE +++ /dev/null @@ -1,46 +0,0 @@ -Copyright 2015 Freeform Systems and other contributors - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -NO WARRANTY OR LIABILITY - -YOU EXPRESSLY AGREE THAT DOWNLOADING THE SOFTWARE AND ANY USE OF THE -SOFTWARE IS AT YOUR OWN RISK. NO WARRANTY, REPRESENTATION, CONDITION, -UNDERTAKING OR TERM - EXPRESS OR IMPLIED, STATUTORY OR OTHERWISE - -INCLUDING BUT NOT LIMITED TO THE CONDITION, QUALITY, DURABILITY, -PERFORMANCE, ACCURACY, STABILITY, RELIABILITY, NON-INFRINGEMENT, -MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE OR USE OF THE -SOFTWARE IS GIVEN OR ASSUMED BY FREEFORM SYSTEMS LTD. ALL SUCH -WARRANTIES, REPRESENTATIONS, CONDITIONS, UNDERTAKINGS AND TERMS ARE -HEREBY EXCLUDED. FREEFORM SYSTEMS LTD MAKES NO WARRANTY THAT THE -SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT IT WILL BE UNINTERRUPTED, -TIMELY, SECURE, OR ERROR FREE; IN NO EVENT SHALL FREEFORM SYSTEMS LTD -BE LIABLE TO ANY PARTY FOR ANY DAMAGES INCLUDING WITHOUT LIMITATION, -ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR LOSS OF BUSINESS -PROFITS, BUSINESS INTERRUPTION, LOSS OF PROGRAMS OR INFORMATION, LOSS -OF PROFITS AND SAVINGS AND THE LIKE), OR ANY OTHER DAMAGES ARISING - -IN ANY WAY, SHAPE OR FORM - OUT OF THE AVAILABILITY, USE, RELIANCE ON, -INABILITY TO UTILIZE OR IMPROPER USE OF THE SOFTWARE EVEN IF FREEFORM -SYSTEMS LTD SHALL HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, -AND REGARDLESS OF THE FORM OF ACTION, WHETHER IN CONTRACT, TORT, OR -OTHERWISE. BECAUSE SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR -LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, THE ABOVE EXCLUSIONS -OF INCIDENTAL AND CONSEQUENTIAL DAMAGES MAY NOT APPLY TO YOU. diff --git a/forward_engineering/node_modules/format-util/README.md b/forward_engineering/node_modules/format-util/README.md deleted file mode 100644 index 5958ac3..0000000 --- a/forward_engineering/node_modules/format-util/README.md +++ /dev/null @@ -1,117 +0,0 @@ -Table of Contents -================= - -* [Format Util](#format-util) - * [Install](#install) - * [Usage](#usage) - * [Developer](#developer) - * [Test](#test) - * [Spec](#spec) - * [Cover](#cover) - * [Browserify](#browserify) - * [Lint](#lint) - * [Clean](#clean) - * [Docs](#docs) - * [Readme](#readme) - * [License](#license) - -Format Util -=========== - -[Build Status](https://travis-ci.org/tmpfs/format-util) -[npm version](https://npmjs.org/package/format-util) -[Coverage Status](https://coveralls.io/github/tmpfs/format-util?branch=master). - -Lightweight `util.format()` for the browser. - -## Install - -``` -npm i format-util -``` - -## Usage - -```javascript -var format = require('format-util') - , msg = format('%s', 'foo'); -``` - -## Developer - -### Test - -Run the test specifications: - -``` -npm test -``` - -### Spec - -Compile test specifications for the browser (open `test/index.html`): - -``` -npm run spec -``` - -### Cover - -Generate code coverage: - -``` -npm run cover -``` - -### Browserify - -Create a standalone browserify build: - -``` -npm run browserify -``` - -### Lint - -Lint the source tree with [jshint](http://jshint.com) and [jscs](http://jscs.info): - -``` -npm run lint -``` - -### Clean - -Remove generated files: - -``` -npm run clean -``` - -### Docs - -To generate all documentation: - -``` -npm run docs -``` - -### Readme - -Generate the project readme file [mdp](https://github.com/tmpfs/mdp): - -``` -npm run readme -``` - -## License - -Everything is [MIT](http://en.wikipedia.org/wiki/MIT_License). Read the [license](https://github.com/tmpfs/format-util/blob/master/LICENSE) if you feel inclined. - -Generated by [mdp(1)](https://github.com/freeformsystems/mdp). - -[node]: http://nodejs.org -[npm]: http://www.npmjs.org -[mdp]: https://github.com/tmpfs/mdp -[zephyr]: https://github.com/tmpfs/zephyr -[jshint]: http://jshint.com -[jscs]: http://jscs.info diff --git a/forward_engineering/node_modules/format-util/doc/readme/developer.md b/forward_engineering/node_modules/format-util/doc/readme/developer.md deleted file mode 100644 index 7e2fe6f..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/developer.md +++ /dev/null @@ -1,66 +0,0 @@ -## Developer - -### Test - -Run the test specifications: - -``` -npm test -``` - -### Spec - -Compile test specifications for the browser (open `test/index.html`): - -``` -npm run spec -``` - -### Cover - -Generate code coverage: - -``` -npm run cover -``` - -### Browserify - -Create a standalone browserify build: - -``` -npm run browserify -``` - -### Lint - -Lint the source tree with [jshint][] and [jscs][]: - -``` -npm run lint -``` - - -### Clean - -Remove generated files: - -``` -npm run clean -``` - -### Docs - -To generate all documentation: - -``` -npm run docs -``` - -### Readme - -Generate the project readme file [mdp][]: - -``` -npm run readme -``` diff --git a/forward_engineering/node_modules/format-util/doc/readme/install.md b/forward_engineering/node_modules/format-util/doc/readme/install.md deleted file mode 100644 index f332a33..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/install.md +++ /dev/null @@ -1,5 +0,0 @@ -## Install - -``` -npm i format-util -``` diff --git a/forward_engineering/node_modules/format-util/doc/readme/introduction.md b/forward_engineering/node_modules/format-util/doc/readme/introduction.md deleted file mode 100644 index 86a6611..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/introduction.md +++ /dev/null @@ -1,5 +0,0 @@ -[![Build Status](https://travis-ci.org/tmpfs/format-util.svg)](https://travis-ci.org/tmpfs/format-util) -[![npm version](http://img.shields.io/npm/v/format-util.svg)](https://npmjs.org/package/format-util) -[![Coverage Status](https://coveralls.io/repos/tmpfs/format-util/badge.svg?branch=master&service=github&v=1)](https://coveralls.io/github/tmpfs/format-util?branch=master) - -Lightweight `util.format()` for the browser. diff --git a/forward_engineering/node_modules/format-util/doc/readme/license.md b/forward_engineering/node_modules/format-util/doc/readme/license.md deleted file mode 100644 index cc1884b..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/license.md +++ /dev/null @@ -1,3 +0,0 @@ -## License - -Everything is [MIT](http://en.wikipedia.org/wiki/MIT_License). Read the [license](/LICENSE) if you feel inclined. diff --git a/forward_engineering/node_modules/format-util/doc/readme/links.md b/forward_engineering/node_modules/format-util/doc/readme/links.md deleted file mode 100644 index a6b522c..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/links.md +++ /dev/null @@ -1,6 +0,0 @@ -[node]: http://nodejs.org -[npm]: http://www.npmjs.org -[mdp]: https://github.com/tmpfs/mdp -[zephyr]: https://github.com/tmpfs/zephyr -[jshint]: http://jshint.com -[jscs]: http://jscs.info diff --git a/forward_engineering/node_modules/format-util/doc/readme/usage.md b/forward_engineering/node_modules/format-util/doc/readme/usage.md deleted file mode 100644 index a5e21f0..0000000 --- a/forward_engineering/node_modules/format-util/doc/readme/usage.md +++ /dev/null @@ -1,6 +0,0 @@ -## Usage - -```javascript -var format = require('format-util') - , msg = format('%s', 'foo'); -``` diff --git a/forward_engineering/node_modules/format-util/format.js b/forward_engineering/node_modules/format-util/format.js deleted file mode 100644 index ef02c49..0000000 --- a/forward_engineering/node_modules/format-util/format.js +++ /dev/null @@ -1,37 +0,0 @@ -function format(fmt) { - var re = /(%?)(%([jds]))/g - , args = Array.prototype.slice.call(arguments, 1); - if(args.length) { - fmt = fmt.replace(re, function(match, escaped, ptn, flag) { - var arg = args.shift(); - switch(flag) { - case 's': - arg = '' + arg; - break; - case 'd': - arg = Number(arg); - break; - case 'j': - arg = JSON.stringify(arg); - break; - } - if(!escaped) { - return arg; - } - args.unshift(arg); - return match; - }) - } - - // arguments remain after formatting - if(args.length) { - fmt += ' ' + args.join(' '); - } - - // update escaped %% values - fmt = fmt.replace(/%{2,2}/g, '%'); - - return '' + fmt; -} - -module.exports = format; diff --git a/forward_engineering/node_modules/format-util/index.js b/forward_engineering/node_modules/format-util/index.js deleted file mode 100644 index 8343c2b..0000000 --- a/forward_engineering/node_modules/format-util/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('util').format; diff --git a/forward_engineering/node_modules/format-util/package.json b/forward_engineering/node_modules/format-util/package.json deleted file mode 100644 index ef92886..0000000 --- a/forward_engineering/node_modules/format-util/package.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "_args": [ - [ - { - "raw": "format-util@^1.0.3", - "scope": null, - "escapedName": "format-util", - "name": "format-util", - "rawSpec": "^1.0.3", - "spec": ">=1.0.3 <2.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/ono" - ] - ], - "_from": "format-util@>=1.0.3 <2.0.0", - "_id": "format-util@1.0.3", - "_inCache": true, - "_location": "/format-util", - "_nodeVersion": "0.12.7", - "_npmUser": { - "name": "muji", - "email": "freeformsystems@gmail.com" - }, - "_npmVersion": "2.11.3", - "_phantomChildren": {}, - "_requested": { - "raw": "format-util@^1.0.3", - "scope": null, - "escapedName": "format-util", - "name": "format-util", - "rawSpec": "^1.0.3", - "spec": ">=1.0.3 <2.0.0", - "type": "range" - }, - "_requiredBy": [ - "/ono" - ], - "_resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.3.tgz", - "_shasum": "032dca4a116262a12c43f4c3ec8566416c5b2d95", - "_shrinkwrap": null, - "_spec": "format-util@^1.0.3", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/ono", - "author": { - "name": "muji", - "email": "noop@xpm.io" - }, - "browser": "./format.js", - "bugs": { - "url": "https://github.com/tmpfs/format-util/issues" - }, - "dependencies": {}, - "description": "Lightweight util.format() for the browser.", - "devDependencies": { - "browserify": "~11.1.0", - "chai": "~3.2.0", - "coveralls": "~2.11.6", - "istanbul": "~0.3.17", - "mocha": "~2.3.2" - }, - "directories": {}, - "dist": { - "shasum": "032dca4a116262a12c43f4c3ec8566416c5b2d95", - "tarball": "https://registry.npmjs.org/format-util/-/format-util-1.0.3.tgz" - }, - "gitHead": "75e88bcdba8fc300d7e3b47630c30765140b88f3", - "homepage": "https://github.com/tmpfs/format-util#readme", - "keywords": [ - "util", - "format", - "string" - ], - "license": "MIT", - "maintainers": [ - { - "name": "muji", - "email": "freeformsystems@gmail.com" - } - ], - "mdp": { - "title": "Format Util", - "pedantic": true, - "include": "doc/readme", - "require": "lib", - "links": "links.md", - "toc": "Table of Contents", - "base": "https://github.com/tmpfs/format-util", - "partial": [ - { - "inc": [ - "introduction.md", - "install.md", - "usage.md", - "developer.md", - "license.md" - ] - } - ] - }, - "name": "format-util", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", - "repository": { - "type": "git", - "url": "git+https://github.com/tmpfs/format-util.git" - }, - "scripts": { - "browserify": "browserify -o format-util.js -e ./format.js && du -bh format-util.js", - "clean": "rm -rf coverage ./format-util.js ./test/spec.js", - "cover": "NODE_ENV=test istanbul cover _mocha -- ${SPEC:-test/spec}", - "coveralls": "cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js", - "docs": "npm run readme", - "lint": "jshint . && jscs .", - "readme": "mdp --force -v", - "spec": "browserify -o test/spec.js -e test/index.js", - "test": "NODE_ENV=test mocha ${SPEC:-test/spec}" - }, - "version": "1.0.3" -} diff --git a/forward_engineering/node_modules/format-util/test/index.html b/forward_engineering/node_modules/format-util/test/index.html deleted file mode 100644 index 72c96a0..0000000 --- a/forward_engineering/node_modules/format-util/test/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - Format Util: Test Specifications - - - - - -
- - - - - - diff --git a/forward_engineering/node_modules/format-util/test/index.js b/forward_engineering/node_modules/format-util/test/index.js deleted file mode 100644 index a70f8bc..0000000 --- a/forward_engineering/node_modules/format-util/test/index.js +++ /dev/null @@ -1 +0,0 @@ -require('./spec/format'); diff --git a/forward_engineering/node_modules/format-util/test/mocha.opts b/forward_engineering/node_modules/format-util/test/mocha.opts deleted file mode 100644 index 9406380..0000000 --- a/forward_engineering/node_modules/format-util/test/mocha.opts +++ /dev/null @@ -1,6 +0,0 @@ --u bdd ---recursive ---bail ---check-leaks ---reporter list --A diff --git a/forward_engineering/node_modules/format-util/test/spec/format.js b/forward_engineering/node_modules/format-util/test/spec/format.js deleted file mode 100644 index 00ebf8d..0000000 --- a/forward_engineering/node_modules/format-util/test/spec/format.js +++ /dev/null @@ -1,55 +0,0 @@ -var expect = require('chai').expect - , format = require('../../format'); - -describe("format-util:", function() { - - it("should use format string", function(done) { - var res = format('foo'); - expect(res).to.eql('foo'); - done(); - }); - - - it("should format string (%s)", function(done) { - var res = format('%s', 'foo'); - expect(res).to.eql('foo'); - done(); - }); - - it("should format multiple strings (%s:%s)", function(done) { - var res = format('%s:%s', 'foo', 'bar'); - expect(res).to.eql('foo:bar'); - done(); - }); - - it("should format digit as NaN (%d)", function(done) { - var res = format('%d', 'foo'); - expect(res).to.eql('NaN'); - done(); - }); - - it("should format digit (%d)", function(done) { - var res = format('%d', '16'); - expect(res).to.eql('16'); - done(); - }); - - it("should format json string (%j)", function(done) { - var res = format('%j', 'foo'); - expect(res).to.eql('"foo"'); - done(); - }); - - it("should format json array (%j)", function(done) { - var res = format('%j', [1,2,3]); - expect(res).to.eql('[1,2,3]'); - done(); - }); - - it("should format escaped string (%s)", function(done) { - var res = format('%%s', 'foo'); - expect(res).to.eql('%s foo'); - done(); - }); - -}); diff --git a/forward_engineering/node_modules/json-schema-ref-parser/CHANGELOG.md b/forward_engineering/node_modules/json-schema-ref-parser/CHANGELOG.md index 18099ea..cfde7c9 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/CHANGELOG.md +++ b/forward_engineering/node_modules/json-schema-ref-parser/CHANGELOG.md @@ -3,6 +3,24 @@ All notable changes will be documented in this file. JSON Schema $Ref Parser adheres to [Semantic Versioning](http://semver.org/). +## [v7.1.0](https://github.com/APIDevTools/json-schema-ref-parser/tree/v7.1.0) (2019-06-21) + +- Merged [PR #124](https://github.com/APIDevTools/json-schema-ref-parser/pull/124/), which provides more context to [custom resolvers](https://apitools.dev/json-schema-ref-parser/docs/plugins/resolvers.html). + +[Full Changelog](https://github.com/APIDevTools/json-schema-ref-parser/compare/v7.0.1...v7.1.0) + + +## [v7.0.0](https://github.com/APIDevTools/json-schema-ref-parser/tree/v7.0.0) (2019-06-11) + +- Dropped support for Node 6 + +- Updated all code to ES6+ syntax (async/await, template literals, arrow functions, etc.) + +- No longer including a pre-built bundle in the package. such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/) to include JSON Schema $Ref Parser in your app + +[Full Changelog](https://github.com/APIDevTools/json-schema-ref-parser/compare/v6.1.0...v7.0.0) + + ## [v6.0.0](https://github.com/APIDevTools/json-schema-ref-parser/tree/v6.0.0) (2018-10-04) - Dropped support for [Bower](https://www.npmjs.com/package/bower), since it has been deprecated @@ -86,7 +104,7 @@ Lots of little bug fixes. The only major bug fix is to [support root-level `$re This version includes a **complete rewrite** of the [`bundle` method](https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#bundleschema-options-callback) method, mostly to fix [this bug](https://github.com/APIDevTools/swagger-parser/issues/16), but also to address a few [edge-cases](https://github.com/APIDevTools/json-schema-ref-parser/commit/ca9b322879519e4bcb2dcf6e63f08ac254b90868) that weren't handled before. As a side-effect of this rewrite, there was also some pretty significant refactoring and code-cleanup done throughout the codebase. -Despite the significant code changes, there were no changes to any public-facing APIs, and [all tests are passing](https://apidevtools.org/json-schema-ref-parser/test/) as expected. +Despite the significant code changes, there were no changes to any public-facing APIs, and [all tests are passing](https://apitools.dev/json-schema-ref-parser/test/) as expected. [Full Changelog](https://github.com/APIDevTools/json-schema-ref-parser/compare/v2.1.0...v2.2.0) diff --git a/forward_engineering/node_modules/json-schema-ref-parser/README.md b/forward_engineering/node_modules/json-schema-ref-parser/README.md index f1990b7..8ea390e 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/README.md +++ b/forward_engineering/node_modules/json-schema-ref-parser/README.md @@ -10,7 +10,7 @@ JSON Schema $Ref Parser [![License](https://img.shields.io/npm/l/json-schema-ref-parser.svg)](LICENSE) -[![OS and Browser Compatibility](https://apidevtools.org/img/badges/ci-badges-with-ie.svg)](https://travis-ci.com/APIDevTools/json-schema-ref-parser) +[![OS and Browser Compatibility](https://apitools.dev/img/badges/ci-badges-with-ie.svg)](https://travis-ci.com/APIDevTools/json-schema-ref-parser) The Problem: @@ -46,19 +46,19 @@ The Solution: JSON Schema $Ref Parser is a full [JSON Reference](https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03) and [JSON Pointer](https://tools.ietf.org/html/rfc6901) implementation that crawls even the most complex [JSON Schemas](http://json-schema.org/latest/json-schema-core.html) and gives you simple, straightforward JavaScript objects. - Use **JSON** or **YAML** schemas — or even a mix of both! -- Supports `$ref` pointers to external files and URLs, as well as [custom sources](https://apidevtools.org/json-schema-ref-parser/docs/plugins/resolvers.html) such as databases -- Can [bundle](https://apidevtools.org/json-schema-ref-parser/docs/ref-parser.html#bundlepath-options-callback) multiple files into a single schema that only has _internal_ `$ref` pointers -- Can [dereference](https://apidevtools.org/json-schema-ref-parser/docs/ref-parser.html#dereferencepath-options-callback) your schema, producing a plain-old JavaScript object that's easy to work with -- Supports [circular references](https://apidevtools.org/json-schema-ref-parser/docs/#circular-refs), nested references, back-references, and cross-references between files +- Supports `$ref` pointers to external files and URLs, as well as [custom sources](https://apitools.dev/json-schema-ref-parser/docs/plugins/resolvers.html) such as databases +- Can [bundle](https://apitools.dev/json-schema-ref-parser/docs/ref-parser.html#bundlepath-options-callback) multiple files into a single schema that only has _internal_ `$ref` pointers +- Can [dereference](https://apitools.dev/json-schema-ref-parser/docs/ref-parser.html#dereferencepath-options-callback) your schema, producing a plain-old JavaScript object that's easy to work with +- Supports [circular references](https://apitools.dev/json-schema-ref-parser/docs/#circular-refs), nested references, back-references, and cross-references between files - Maintains object reference equality — `$ref` pointers to the same value always resolve to the same object instance -- [Tested](https://apidevtools.org/json-schema-ref-parser/test/) in Node, io.js, and all major web browsers on Windows, Mac, and Linux +- [Tested](https://travis-ci.com/APIDevTools/json-schema-ref-parser) in Node and all major web browsers on Windows, Mac, and Linux Example -------------------------- ```javascript -$RefParser.dereference(mySchema, function(err, schema) { +$RefParser.dereference(mySchema, (err, schema) => { if (err) { console.error(err); } @@ -67,59 +67,62 @@ $RefParser.dereference(mySchema, function(err, schema) { // including referenced files, combined into a single object console.log(schema.definitions.person.properties.firstName); } -}); +} ``` -Or use [Promises syntax](http://javascriptplayground.com/blog/2015/02/promises/) instead. The following example is the same as above: +Or use `async`/`await` syntax instead. The following example is the same as above: ```javascript -$RefParser.dereference(mySchema) - .then(function(schema) { - console.log(schema.definitions.person.properties.firstName); - }) - .catch(function(err) { - console.error(err); - }); +try { + let schema = await $RefParser.dereference(mySchema); + console.log(schema.definitions.person.properties.firstName); +} +catch(err) { + console.error(err); +} ``` -For more detailed examples, please see the [API Documentation](https://apidevtools.org/json-schema-ref-parser/docs/) +For more detailed examples, please see the [API Documentation](https://apitools.dev/json-schema-ref-parser/docs/) + Installation -------------------------- -#### Node Install using [npm](https://docs.npmjs.com/about-npm/): ```bash npm install json-schema-ref-parser ``` -Then require it in your code: + + +Usage +-------------------------- +When using Json-Schema-Ref-Parser in Node.js apps, you'll probably want to use **CommonJS** syntax: ```javascript -var $RefParser = require('json-schema-ref-parser'); +const $RefParser = require("json-schema-ref-parser"); ``` -#### Web Browsers -Reference [`ref-parser.js`](dist/ref-parser.js) or [`ref-parser.min.js`](dist/ref-parser.min.js) in your HTML: - -```html - - +When using a transpiler such as [Babel](https://babeljs.io/) or [TypeScript](https://www.typescriptlang.org/), or a bundler such as [Webpack](https://webpack.js.org/) or [Rollup](https://rollupjs.org/), you can use **ECMAScript modules** syntax instead: + +```javascript +import $RefParser from "json-schema-ref-parser"; ``` + +Browser support +-------------------------- +Json-Schema-Ref-Parser supports recent versions of every major web browser. Older browsers may require [Babel](https://babeljs.io/) and/or [polyfills](https://babeljs.io/docs/en/next/babel-polyfill). + +To use Json-Schema-Ref-Parser in a browser, you'll need to use a bundling tool such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/). Some bundlers may require a bit of configuration, such as setting `browser: true` in [rollup-plugin-resolve](https://github.com/rollup/rollup-plugin-node-resolve). + + + API Documentation -------------------------- -Full API documentation is available [right here](https://apidevtools.org/json-schema-ref-parser/docs/) +Full API documentation is available [right here](https://apitools.dev/json-schema-ref-parser/docs/) Contributing @@ -141,9 +144,6 @@ To build/test the project locally on your computer: 4. __Run the tests__
`npm test` -5. __Start the local web server__
-`npm start` (then browse to [http://localhost:8080/test/](http://localhost:8080/test/)) - License -------------------------- @@ -153,6 +153,6 @@ Big Thanks To -------------------------- Thanks to these awesome companies for their support of Open Source developers ❤ -[![Travis CI](https://jsdevtools.org/img/badges/travis-ci.svg)](https://travis-ci.com) -[![SauceLabs](https://jsdevtools.org/img/badges/sauce-labs.svg)](https://saucelabs.com) -[![Coveralls](https://jsdevtools.org/img/badges/coveralls.svg)](https://coveralls.io) +[![Travis CI](https://jstools.dev/img/badges/travis-ci.svg)](https://travis-ci.com) +[![SauceLabs](https://jstools.dev/img/badges/sauce-labs.svg)](https://saucelabs.com) +[![Coveralls](https://jstools.dev/img/badges/coveralls.svg)](https://coveralls.io) diff --git a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js b/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js deleted file mode 100644 index cec5f3d..0000000 --- a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js +++ /dev/null @@ -1,15126 +0,0 @@ -/*! - * JSON Schema $Ref Parser v6.1.0 (February 21st 2019) - * - * https://apidevtools.org/json-schema-ref-parser/ - * - * @author James Messinger (https://jamesmessinger.com) - * @license MIT - */ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.$RefParser = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 0 ? filteredParsers : allParsers; - - // Run the parsers, in order, until one of them succeeds - plugins.sort(parsers); - plugins.run(parsers, "parse", file) - .then(onParsed, onError); - - function onParsed (parser) { - if (!parser.plugin.allowEmpty && isEmpty(parser.result)) { - reject(ono.syntax('Error parsing "%s" as %s. \nParsed value is empty', file.url, parser.plugin.name)); - } - else { - resolve(parser); - } - } - - function onError (err) { - if (err) { - err = err instanceof Error ? err : new Error(err); - reject(ono.syntax(err, "Error parsing %s", file.url)); - } - else { - reject(ono.syntax("Unable to parse %s", file.url)); - } - } - }); -} - -/** - * Determines whether the parsed value is "empty". - * - * @param {*} value - * @returns {boolean} - */ -function isEmpty (value) { - return value === undefined || - (typeof value === "object" && Object.keys(value).length === 0) || - (typeof value === "string" && value.trim().length === 0) || - (Buffer.isBuffer(value) && value.length === 0); -} - -}).call(this,{"isBuffer":require("../node_modules/is-buffer/index.js")}) - -},{"../node_modules/is-buffer/index.js":32,"./util/plugins":17,"./util/url":18,"ono":64}],7:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var BINARY_REGEXP = /\.(jpeg|jpg|gif|png|bmp|ico)$/i; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 400, - - /** - * Whether to allow "empty" files (zero bytes). - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that return true will be tried, in order, until one successfully parses the file. - * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case - * every parser will be tried. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {boolean} - */ - canParse: function isBinary (file) { - // Use this parser if the file is a Buffer, and has a known binary extension - return Buffer.isBuffer(file.data) && BINARY_REGEXP.test(file.url); - }, - - /** - * Parses the given data as a Buffer (byte array). - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseBinary (file) { - if (Buffer.isBuffer(file.data)) { - return file.data; - } - else { - // This will reject if data is anything other than a string or typed array - return new Buffer(file.data); - } - } -}; - -}).call(this,require("buffer").Buffer) - -},{"buffer":23}],8:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 100, - - /** - * Whether to allow "empty" files. This includes zero-byte files, as well as empty JSON objects. - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that match will be tried, in order, until one successfully parses the file. - * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case - * every parser will be tried. - * - * @type {RegExp|string[]|function} - */ - canParse: ".json", - - /** - * Parses the given file as JSON - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseJSON (file) { - return new Promise(function (resolve, reject) { - var data = file.data; - if (Buffer.isBuffer(data)) { - data = data.toString(); - } - - if (typeof data === "string") { - if (data.trim().length === 0) { - resolve(undefined); // This mirrors the YAML behavior - } - else { - resolve(JSON.parse(data)); - } - } - else { - // data is already a JavaScript value (object, array, number, null, NaN, etc.) - resolve(data); - } - }); - } -}; - -}).call(this,{"isBuffer":require("../../node_modules/is-buffer/index.js")}) - -},{"../../node_modules/is-buffer/index.js":32}],9:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var TEXT_REGEXP = /\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 300, - - /** - * Whether to allow "empty" files (zero bytes). - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * The encoding that the text is expected to be in. - * - * @type {string} - */ - encoding: "utf8", - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that return true will be tried, in order, until one successfully parses the file. - * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case - * every parser will be tried. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {boolean} - */ - canParse: function isText (file) { - // Use this parser if the file is a string or Buffer, and has a known text-based extension - return (typeof file.data === "string" || Buffer.isBuffer(file.data)) && TEXT_REGEXP.test(file.url); - }, - - /** - * Parses the given file as text - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseText (file) { - if (typeof file.data === "string") { - return file.data; - } - else if (Buffer.isBuffer(file.data)) { - return file.data.toString(this.encoding); - } - else { - throw new Error("data is not text"); - } - } -}; - -}).call(this,{"isBuffer":require("../../node_modules/is-buffer/index.js")}) - -},{"../../node_modules/is-buffer/index.js":32}],10:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var YAML = require("../util/yaml"); - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 200, - - /** - * Whether to allow "empty" files. This includes zero-byte files, as well as empty JSON objects. - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that match will be tried, in order, until one successfully parses the file. - * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case - * every parser will be tried. - * - * @type {RegExp|string[]|function} - */ - canParse: [".yaml", ".yml", ".json"], // JSON is valid YAML - - /** - * Parses the given file as YAML - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseYAML (file) { - return new Promise(function (resolve, reject) { - var data = file.data; - if (Buffer.isBuffer(data)) { - data = data.toString(); - } - - if (typeof data === "string") { - resolve(YAML.parse(data)); - } - else { - // data is already a JavaScript value (object, array, number, null, NaN, etc.) - resolve(data); - } - }); - } -}; - -}).call(this,{"isBuffer":require("../../node_modules/is-buffer/index.js")}) - -},{"../../node_modules/is-buffer/index.js":32,"../util/yaml":19}],11:[function(require,module,exports){ -"use strict"; - -module.exports = Pointer; - -var $Ref = require("./ref"), - url = require("./util/url"), - ono = require("ono"), - slashes = /\//g, - tildes = /~/g, - escapedSlash = /~1/g, - escapedTilde = /~0/g; - -/** - * This class represents a single JSON pointer and its resolved value. - * - * @param {$Ref} $ref - * @param {string} path - * @param {string} [friendlyPath] - The original user-specified path (used for error messages) - * @constructor - */ -function Pointer ($ref, path, friendlyPath) { - /** - * The {@link $Ref} object that contains this {@link Pointer} object. - * @type {$Ref} - */ - this.$ref = $ref; - - /** - * The file path or URL, containing the JSON pointer in the hash. - * This path is relative to the path of the main JSON schema file. - * @type {string} - */ - this.path = path; - - /** - * The original path or URL, used for error messages. - * @type {string} - */ - this.originalPath = friendlyPath || path; - - /** - * The value of the JSON pointer. - * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays). - * @type {?*} - */ - this.value = undefined; - - /** - * Indicates whether the pointer references itself. - * @type {boolean} - */ - this.circular = false; - - /** - * The number of indirect references that were traversed to resolve the value. - * Resolving a single pointer may require resolving multiple $Refs. - * @type {number} - */ - this.indirections = 0; -} - -/** - * Resolves the value of a nested property within the given object. - * - * @param {*} obj - The object that will be crawled - * @param {$RefParserOptions} options - * - * @returns {Pointer} - * Returns a JSON pointer whose {@link Pointer#value} is the resolved value. - * If resolving this value required resolving other JSON references, then - * the {@link Pointer#$ref} and {@link Pointer#path} will reflect the resolution path - * of the resolved value. - */ -Pointer.prototype.resolve = function (obj, options) { - var tokens = Pointer.parse(this.path); - - // Crawl the object, one token at a time - this.value = obj; - for (var i = 0; i < tokens.length; i++) { - if (resolveIf$Ref(this, options)) { - // The $ref path has changed, so append the remaining tokens to the path - this.path = Pointer.join(this.path, tokens.slice(i)); - } - - var token = tokens[i]; - if (this.value[token] === undefined) { - throw ono.syntax('Error resolving $ref pointer "%s". \nToken "%s" does not exist.', this.originalPath, token); - } - else { - this.value = this.value[token]; - } - } - - // Resolve the final value - resolveIf$Ref(this, options); - return this; -}; - -/** - * Sets the value of a nested property within the given object. - * - * @param {*} obj - The object that will be crawled - * @param {*} value - the value to assign - * @param {$RefParserOptions} options - * - * @returns {*} - * Returns the modified object, or an entirely new object if the entire object is overwritten. - */ -Pointer.prototype.set = function (obj, value, options) { - var tokens = Pointer.parse(this.path); - var token; - - if (tokens.length === 0) { - // There are no tokens, replace the entire object with the new value - this.value = value; - return value; - } - - // Crawl the object, one token at a time - this.value = obj; - for (var i = 0; i < tokens.length - 1; i++) { - resolveIf$Ref(this, options); - - token = tokens[i]; - if (this.value && this.value[token] !== undefined) { - // The token exists - this.value = this.value[token]; - } - else { - // The token doesn't exist, so create it - this.value = setValue(this, token, {}); - } - } - - // Set the value of the final token - resolveIf$Ref(this, options); - token = tokens[tokens.length - 1]; - setValue(this, token, value); - - // Return the updated object - return obj; -}; - -/** - * Parses a JSON pointer (or a path containing a JSON pointer in the hash) - * and returns an array of the pointer's tokens. - * (e.g. "schema.json#/definitions/person/name" => ["definitions", "person", "name"]) - * - * The pointer is parsed according to RFC 6901 - * {@link https://tools.ietf.org/html/rfc6901#section-3} - * - * @param {string} path - * @returns {string[]} - */ -Pointer.parse = function (path) { - // Get the JSON pointer from the path's hash - var pointer = url.getHash(path).substr(1); - - // If there's no pointer, then there are no tokens, - // so return an empty array - if (!pointer) { - return []; - } - - // Split into an array - pointer = pointer.split("/"); - - // Decode each part, according to RFC 6901 - for (var i = 0; i < pointer.length; i++) { - pointer[i] = decodeURIComponent(pointer[i].replace(escapedSlash, "/").replace(escapedTilde, "~")); - } - - if (pointer[0] !== "") { - throw ono.syntax('Invalid $ref pointer "%s". Pointers must begin with "#/"', pointer); - } - - return pointer.slice(1); -}; - -/** - * Creates a JSON pointer path, by joining one or more tokens to a base path. - * - * @param {string} base - The base path (e.g. "schema.json#/definitions/person") - * @param {string|string[]} tokens - The token(s) to append (e.g. ["name", "first"]) - * @returns {string} - */ -Pointer.join = function (base, tokens) { - // Ensure that the base path contains a hash - if (base.indexOf("#") === -1) { - base += "#"; - } - - // Append each token to the base path - tokens = Array.isArray(tokens) ? tokens : [tokens]; - for (var i = 0; i < tokens.length; i++) { - var token = tokens[i]; - // Encode the token, according to RFC 6901 - base += "/" + encodeURIComponent(token.replace(tildes, "~0").replace(slashes, "~1")); - } - - return base; -}; - -/** - * If the given pointer's {@link Pointer#value} is a JSON reference, - * then the reference is resolved and {@link Pointer#value} is replaced with the resolved value. - * In addition, {@link Pointer#path} and {@link Pointer#$ref} are updated to reflect the - * resolution path of the new value. - * - * @param {Pointer} pointer - * @param {$RefParserOptions} options - * @returns {boolean} - Returns `true` if the resolution path changed - */ -function resolveIf$Ref (pointer, options) { - // Is the value a JSON reference? (and allowed?) - - if ($Ref.isAllowed$Ref(pointer.value, options)) { - var $refPath = url.resolve(pointer.path, pointer.value.$ref); - - if ($refPath === pointer.path) { - // The value is a reference to itself, so there's nothing to do. - pointer.circular = true; - } - else { - var resolved = pointer.$ref.$refs._resolve($refPath, options); - pointer.indirections += resolved.indirections + 1; - - if ($Ref.isExtended$Ref(pointer.value)) { - // This JSON reference "extends" the resolved value, rather than simply pointing to it. - // So the resolved path does NOT change. Just the value does. - pointer.value = $Ref.dereference(pointer.value, resolved.value); - return false; - } - else { - // Resolve the reference - pointer.$ref = resolved.$ref; - pointer.path = resolved.path; - pointer.value = resolved.value; - } - - return true; - } - } -} - -/** - * Sets the specified token value of the {@link Pointer#value}. - * - * The token is evaluated according to RFC 6901. - * {@link https://tools.ietf.org/html/rfc6901#section-4} - * - * @param {Pointer} pointer - The JSON Pointer whose value will be modified - * @param {string} token - A JSON Pointer token that indicates how to modify `obj` - * @param {*} value - The value to assign - * @returns {*} - Returns the assigned value - */ -function setValue (pointer, token, value) { - if (pointer.value && typeof pointer.value === "object") { - if (token === "-" && Array.isArray(pointer.value)) { - pointer.value.push(value); - } - else { - pointer.value[token] = value; - } - } - else { - throw ono.syntax('Error assigning $ref pointer "%s". \nCannot set "%s" of a non-object.', pointer.path, token); - } - return value; -} - -},{"./ref":12,"./util/url":18,"ono":64}],12:[function(require,module,exports){ -"use strict"; - -module.exports = $Ref; - -var Pointer = require("./pointer"); - -/** - * This class represents a single JSON reference and its resolved value. - * - * @constructor - */ -function $Ref () { - /** - * The file path or URL of the referenced file. - * This path is relative to the path of the main JSON schema file. - * - * This path does NOT contain document fragments (JSON pointers). It always references an ENTIRE file. - * Use methods such as {@link $Ref#get}, {@link $Ref#resolve}, and {@link $Ref#exists} to get - * specific JSON pointers within the file. - * - * @type {string} - */ - this.path = undefined; - - /** - * The resolved value of the JSON reference. - * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays). - * @type {?*} - */ - this.value = undefined; - - /** - * The {@link $Refs} object that contains this {@link $Ref} object. - * @type {$Refs} - */ - this.$refs = undefined; - - /** - * Indicates the type of {@link $Ref#path} (e.g. "file", "http", etc.) - * @type {?string} - */ - this.pathType = undefined; -} - -/** - * Determines whether the given JSON reference exists within this {@link $Ref#value}. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @returns {boolean} - */ -$Ref.prototype.exists = function (path, options) { - try { - this.resolve(path, options); - return true; - } - catch (e) { - return false; - } -}; - -/** - * Resolves the given JSON reference within this {@link $Ref#value} and returns the resolved value. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @returns {*} - Returns the resolved value - */ -$Ref.prototype.get = function (path, options) { - return this.resolve(path, options).value; -}; - -/** - * Resolves the given JSON reference within this {@link $Ref#value}. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @param {string} [friendlyPath] - The original user-specified path (used for error messages) - * @returns {Pointer} - */ -$Ref.prototype.resolve = function (path, options, friendlyPath) { - var pointer = new Pointer(this, path, friendlyPath); - return pointer.resolve(this.value, options); -}; - -/** - * Sets the value of a nested property within this {@link $Ref#value}. - * If the property, or any of its parents don't exist, they will be created. - * - * @param {string} path - The full path of the property to set, optionally with a JSON pointer in the hash - * @param {*} value - The value to assign - */ -$Ref.prototype.set = function (path, value) { - var pointer = new Pointer(this, path); - this.value = pointer.set(this.value, value); -}; - -/** - * Determines whether the given value is a JSON reference. - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.is$Ref = function (value) { - return value && typeof value === "object" && typeof value.$ref === "string" && value.$ref.length > 0; -}; - -/** - * Determines whether the given value is an external JSON reference. - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.isExternal$Ref = function (value) { - return $Ref.is$Ref(value) && value.$ref[0] !== "#"; -}; - -/** - * Determines whether the given value is a JSON reference, and whether it is allowed by the options. - * For example, if it references an external file, then options.resolve.external must be true. - * - * @param {*} value - The value to inspect - * @param {$RefParserOptions} options - * @returns {boolean} - */ -$Ref.isAllowed$Ref = function (value, options) { - if ($Ref.is$Ref(value)) { - if (value.$ref.substr(0, 2) === "#/" || value.$ref === "#") { - // It's a JSON Pointer reference, which is always allowed - return true; - } - else if (value.$ref[0] !== "#" && (!options || options.resolve.external)) { - // It's an external reference, which is allowed by the options - return true; - } - } -}; - -/** - * Determines whether the given value is a JSON reference that "extends" its resolved value. - * That is, it has extra properties (in addition to "$ref"), so rather than simply pointing to - * an existing value, this $ref actually creates a NEW value that is a shallow copy of the resolved - * value, plus the extra properties. - * - * @example: - * { - * person: { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * } - * } - * employee: { - * properties: { - * $ref: #/person/properties - * salary: { type: number } - * } - * } - * } - * - * In this example, "employee" is an extended $ref, since it extends "person" with an additional - * property (salary). The result is a NEW value that looks like this: - * - * { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * salary: { type: number } - * } - * } - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.isExtended$Ref = function (value) { - return $Ref.is$Ref(value) && Object.keys(value).length > 1; -}; - -/** - * Returns the resolved value of a JSON Reference. - * If necessary, the resolved value is merged with the JSON Reference to create a new object - * - * @example: - * { - * person: { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * } - * } - * employee: { - * properties: { - * $ref: #/person/properties - * salary: { type: number } - * } - * } - * } - * - * When "person" and "employee" are merged, you end up with the following object: - * - * { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * salary: { type: number } - * } - * } - * - * @param {object} $ref - The JSON reference object (the one with the "$ref" property) - * @param {*} resolvedValue - The resolved value, which can be any type - * @returns {*} - Returns the dereferenced value - */ -$Ref.dereference = function ($ref, resolvedValue) { - if (resolvedValue && typeof resolvedValue === "object" && $Ref.isExtended$Ref($ref)) { - var merged = {}; - Object.keys($ref).forEach(function (key) { - if (key !== "$ref") { - merged[key] = $ref[key]; - } - }); - Object.keys(resolvedValue).forEach(function (key) { - if (!(key in merged)) { - merged[key] = resolvedValue[key]; - } - }); - return merged; - } - else { - // Completely replace the original reference with the resolved value - return resolvedValue; - } -}; - -},{"./pointer":11}],13:[function(require,module,exports){ -"use strict"; - -var ono = require("ono"), - $Ref = require("./ref"), - url = require("./util/url"); - -module.exports = $Refs; - -/** - * This class is a map of JSON references and their resolved values. - */ -function $Refs () { - /** - * Indicates whether the schema contains any circular references. - * - * @type {boolean} - */ - this.circular = false; - - /** - * A map of paths/urls to {@link $Ref} objects - * - * @type {object} - * @protected - */ - this._$refs = {}; - - /** - * The {@link $Ref} object that is the root of the JSON schema. - * - * @type {$Ref} - * @protected - */ - this._root$Ref = null; -} - -/** - * Returns the paths of all the files/URLs that are referenced by the JSON schema, - * including the schema itself. - * - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {string[]} - */ -$Refs.prototype.paths = function (types) { - var paths = getPaths(this._$refs, arguments); - return paths.map(function (path) { - return path.decoded; - }); -}; - -/** - * Returns the map of JSON references and their resolved values. - * - * @param {...string|string[]} [types] - Only return references of the given types ("file", "http", etc.) - * @returns {object} - */ -$Refs.prototype.values = function (types) { - var $refs = this._$refs; - var paths = getPaths($refs, arguments); - return paths.reduce(function (obj, path) { - obj[path.decoded] = $refs[path.encoded].value; - return obj; - }, {}); -}; - -/** - * Returns a POJO (plain old JavaScript object) for serialization as JSON. - * - * @returns {object} - */ -$Refs.prototype.toJSON = $Refs.prototype.values; - -/** - * Determines whether the given JSON reference exists. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {boolean} - */ -$Refs.prototype.exists = function (path, options) { - try { - this._resolve(path, options); - return true; - } - catch (e) { - return false; - } -}; - -/** - * Resolves the given JSON reference and returns the resolved value. - * - * @param {string} path - The path being resolved, with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {*} - Returns the resolved value - */ -$Refs.prototype.get = function (path, options) { - return this._resolve(path, options).value; -}; - -/** - * Sets the value of a nested property within this {@link $Ref#value}. - * If the property, or any of its parents don't exist, they will be created. - * - * @param {string} path - The path of the property to set, optionally with a JSON pointer in the hash - * @param {*} value - The value to assign - */ -$Refs.prototype.set = function (path, value) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - $ref.set(absPath, value); -}; - -/** - * Creates a new {@link $Ref} object and adds it to this {@link $Refs} object. - * - * @param {string} path - The file path or URL of the referenced file - */ -$Refs.prototype._add = function (path) { - var withoutHash = url.stripHash(path); - - var $ref = new $Ref(); - $ref.path = withoutHash; - $ref.$refs = this; - - this._$refs[withoutHash] = $ref; - this._root$Ref = this._root$Ref || $ref; - - return $ref; -}; - -/** - * Resolves the given JSON reference. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {Pointer} - * @protected - */ -$Refs.prototype._resolve = function (path, options) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - return $ref.resolve(absPath, options, path); -}; - -/** - * Returns the specified {@link $Ref} object, or undefined. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @returns {$Ref|undefined} - * @protected - */ -$Refs.prototype._get$Ref = function (path) { - path = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(path); - return this._$refs[withoutHash]; -}; - -/** - * Returns the encoded and decoded paths keys of the given object. - * - * @param {object} $refs - The object whose keys are URL-encoded paths - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {object[]} - */ -function getPaths ($refs, types) { - var paths = Object.keys($refs); - - // Filter the paths by type - types = Array.isArray(types[0]) ? types[0] : Array.prototype.slice.call(types); - if (types.length > 0 && types[0]) { - paths = paths.filter(function (key) { - return types.indexOf($refs[key].pathType) !== -1; - }); - } - - // Decode local filesystem paths - return paths.map(function (path) { - return { - encoded: path, - decoded: $refs[path].pathType === "file" ? url.toFileSystemPath(path, true) : path - }; - }); -} - -},{"./ref":12,"./util/url":18,"ono":64}],14:[function(require,module,exports){ -"use strict"; - -var $Ref = require("./ref"), - Pointer = require("./pointer"), - parse = require("./parse"), - url = require("./util/url"); - -module.exports = resolveExternal; - -/** - * Crawls the JSON schema, finds all external JSON references, and resolves their values. - * This method does not mutate the JSON schema. The resolved values are added to {@link $RefParser#$refs}. - * - * NOTE: We only care about EXTERNAL references here. INTERNAL references are only relevant when dereferencing. - * - * @param {$RefParser} parser - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves once all JSON references in the schema have been resolved, - * including nested references that are contained in externally-referenced files. - */ -function resolveExternal (parser, options) { - if (!options.resolve.external) { - // Nothing to resolve, so exit early - return Promise.resolve(); - } - - try { - // console.log('Resolving $ref pointers in %s', parser.$refs._root$Ref.path); - var promises = crawl(parser.schema, parser.$refs._root$Ref.path + "#", parser.$refs, options); - return Promise.all(promises); - } - catch (e) { - return Promise.reject(e); - } -} - -/** - * Recursively crawls the given value, and resolves any external JSON references. - * - * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored. - * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * - * @returns {Promise[]} - * Returns an array of promises. There will be one promise for each JSON reference in `obj`. - * If `obj` does not contain any JSON references, then the array will be empty. - * If any of the JSON references point to files that contain additional JSON references, - * then the corresponding promise will internally reference an array of promises. - */ -function crawl (obj, path, $refs, options) { - var promises = []; - - if (obj && typeof obj === "object") { - if ($Ref.isExternal$Ref(obj)) { - promises.push(resolve$Ref(obj, path, $refs, options)); - } - else { - Object.keys(obj).forEach(function (key) { - var keyPath = Pointer.join(path, key); - var value = obj[key]; - - if ($Ref.isExternal$Ref(value)) { - promises.push(resolve$Ref(value, keyPath, $refs, options)); - } - else { - promises = promises.concat(crawl(value, keyPath, $refs, options)); - } - }); - } - } - - return promises; -} - -/** - * Resolves the given JSON Reference, and then crawls the resulting value. - * - * @param {{$ref: string}} $ref - The JSON Reference to resolve - * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves once all JSON references in the object have been resolved, - * including nested references that are contained in externally-referenced files. - */ -function resolve$Ref ($ref, path, $refs, options) { - // console.log('Resolving $ref pointer "%s" at %s', $ref.$ref, path); - - var resolvedPath = url.resolve(path, $ref.$ref); - var withoutHash = url.stripHash(resolvedPath); - - // Do we already have this $ref? - $ref = $refs._$refs[withoutHash]; - if ($ref) { - // We've already parsed this $ref, so use the existing value - return Promise.resolve($ref.value); - } - - // Parse the $referenced file/url - return parse(resolvedPath, $refs, options) - .then(function (result) { - // Crawl the parsed value - // console.log('Resolving $ref pointers in %s', withoutHash); - var promises = crawl(result, withoutHash + "#", $refs, options); - return Promise.all(promises); - }); -} - -},{"./parse":6,"./pointer":11,"./ref":12,"./util/url":18}],15:[function(require,module,exports){ -"use strict"; -var fs = require("fs"), - ono = require("ono"), - url = require("../util/url"); - -module.exports = { - /** - * The order that this resolver will run, in relation to other resolvers. - * - * @type {number} - */ - order: 100, - - /** - * Determines whether this resolver can read a given file reference. - * Resolvers that return true will be tried, in order, until one successfully resolves the file. - * Resolvers that return false will not be given a chance to resolve the file. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {boolean} - */ - canRead: function isFile (file) { - return url.isFileSystemPath(file.url); - }, - - /** - * Reads the given file and returns its raw contents as a Buffer. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {Promise} - */ - read: function readFile (file) { - return new Promise(function (resolve, reject) { - var path; - try { - path = url.toFileSystemPath(file.url); - } - catch (err) { - reject(ono.uri(err, "Malformed URI: %s", file.url)); - } - - // console.log('Opening file: %s', path); - - try { - fs.readFile(path, function (err, data) { - if (err) { - reject(ono(err, 'Error opening file "%s"', path)); - } - else { - resolve(data); - } - }); - } - catch (err) { - reject(ono(err, 'Error opening file "%s"', path)); - } - }); - } -}; - -},{"../util/url":18,"fs":21,"ono":64}],16:[function(require,module,exports){ -(function (process,Buffer){ -"use strict"; - -var http = require("http"), - https = require("https"), - ono = require("ono"), - url = require("../util/url"); - -module.exports = { - /** - * The order that this resolver will run, in relation to other resolvers. - * - * @type {number} - */ - order: 200, - - /** - * HTTP headers to send when downloading files. - * - * @example: - * { - * "User-Agent": "JSON Schema $Ref Parser", - * Accept: "application/json" - * } - * - * @type {object} - */ - headers: null, - - /** - * HTTP request timeout (in milliseconds). - * - * @type {number} - */ - timeout: 5000, // 5 seconds - - /** - * The maximum number of HTTP redirects to follow. - * To disable automatic following of redirects, set this to zero. - * - * @type {number} - */ - redirects: 5, - - /** - * The `withCredentials` option of XMLHttpRequest. - * Set this to `true` if you're downloading files from a CORS-enabled server that requires authentication - * - * @type {boolean} - */ - withCredentials: false, - - /** - * Determines whether this resolver can read a given file reference. - * Resolvers that return true will be tried in order, until one successfully resolves the file. - * Resolvers that return false will not be given a chance to resolve the file. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {boolean} - */ - canRead: function isHttp (file) { - return url.isHttp(file.url); - }, - - /** - * Reads the given URL and returns its raw contents as a Buffer. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {Promise} - */ - read: function readHttp (file) { - var u = url.parse(file.url); - - if (process.browser && !u.protocol) { - // Use the protocol of the current page - u.protocol = url.parse(location.href).protocol; - } - - return download(u, this); - } -}; - -/** - * Downloads the given file. - * - * @param {Url|string} u - The url to download (can be a parsed {@link Url} object) - * @param {object} httpOptions - The `options.resolve.http` object - * @param {number} [redirects] - The redirect URLs that have already been followed - * - * @returns {Promise} - * The promise resolves with the raw downloaded data, or rejects if there is an HTTP error. - */ -function download (u, httpOptions, redirects) { - return new Promise(function (resolve, reject) { - u = url.parse(u); - redirects = redirects || []; - redirects.push(u.href); - - get(u, httpOptions) - .then(function (res) { - if (res.statusCode >= 400) { - throw ono({ status: res.statusCode }, "HTTP ERROR %d", res.statusCode); - } - else if (res.statusCode >= 300) { - if (redirects.length > httpOptions.redirects) { - reject(ono({ status: res.statusCode }, "Error downloading %s. \nToo many redirects: \n %s", - redirects[0], redirects.join(" \n "))); - } - else if (!res.headers.location) { - throw ono({ status: res.statusCode }, "HTTP %d redirect with no location header", res.statusCode); - } - else { - // console.log('HTTP %d redirect %s -> %s', res.statusCode, u.href, res.headers.location); - var redirectTo = url.resolve(u, res.headers.location); - download(redirectTo, httpOptions, redirects).then(resolve, reject); - } - } - else { - resolve(res.body || new Buffer(0)); - } - }) - .catch(function (err) { - reject(ono(err, "Error downloading", u.href)); - }); - }); -} - -/** - * Sends an HTTP GET request. - * - * @param {Url} u - A parsed {@link Url} object - * @param {object} httpOptions - The `options.resolve.http` object - * - * @returns {Promise} - * The promise resolves with the HTTP Response object. - */ -function get (u, httpOptions) { - return new Promise(function (resolve, reject) { - // console.log('GET', u.href); - - var protocol = u.protocol === "https:" ? https : http; - var req = protocol.get({ - hostname: u.hostname, - port: u.port, - path: u.path, - auth: u.auth, - protocol: u.protocol, - headers: httpOptions.headers || {}, - withCredentials: httpOptions.withCredentials - }); - - if (typeof req.setTimeout === "function") { - req.setTimeout(httpOptions.timeout); - } - - req.on("timeout", function () { - req.abort(); - }); - - req.on("error", reject); - - req.once("response", function (res) { - res.body = new Buffer(0); - - res.on("data", function (data) { - res.body = Buffer.concat([res.body, new Buffer(data)]); - }); - - res.on("error", reject); - - res.on("end", function () { - resolve(res); - }); - }); - }); -} - -}).call(this,require('_process'),require("buffer").Buffer) - -},{"../util/url":18,"_process":66,"buffer":23,"http":80,"https":29,"ono":64}],17:[function(require,module,exports){ -"use strict"; - -/** - * Returns the given plugins as an array, rather than an object map. - * All other methods in this module expect an array of plugins rather than an object map. - * - * @param {object} plugins - A map of plugin objects - * @return {object[]} - */ -exports.all = function (plugins) { - return Object.keys(plugins) - .filter(function (key) { - return typeof plugins[key] === "object"; - }) - .map(function (key) { - plugins[key].name = key; - return plugins[key]; - }); -}; - -/** - * Filters the given plugins, returning only the ones return `true` for the given method. - * - * @param {object[]} plugins - An array of plugin objects - * @param {string} method - The name of the filter method to invoke for each plugin - * @param {object} file - A file info object, which will be passed to each method - * @return {object[]} - */ -exports.filter = function (plugins, method, file) { - return plugins - .filter(function (plugin) { - return !!getResult(plugin, method, file); - }); -}; - -/** - * Sorts the given plugins, in place, by their `order` property. - * - * @param {object[]} plugins - An array of plugin objects - * @returns {object[]} - */ -exports.sort = function (plugins) { - plugins.forEach(function (plugin) { - plugin.order = plugin.order || Number.MAX_SAFE_INTEGER; - }); - - return plugins.sort(function (a, b) { return a.order - b.order; }); -}; - -/** - * Runs the specified method of the given plugins, in order, until one of them returns a successful result. - * Each method can return a synchronous value, a Promise, or call an error-first callback. - * If the promise resolves successfully, or the callback is called without an error, then the result - * is immediately returned and no further plugins are called. - * If the promise rejects, or the callback is called with an error, then the next plugin is called. - * If ALL plugins fail, then the last error is thrown. - * - * @param {object[]} plugins - An array of plugin objects - * @param {string} method - The name of the method to invoke for each plugin - * @param {object} file - A file info object, which will be passed to each method - * @returns {Promise} - */ -exports.run = function (plugins, method, file) { - var plugin, lastError, index = 0; - - return new Promise(function (resolve, reject) { - runNextPlugin(); - - function runNextPlugin () { - plugin = plugins[index++]; - if (!plugin) { - // There are no more functions, so re-throw the last error - return reject(lastError); - } - - try { - // console.log(' %s', plugin.name); - var result = getResult(plugin, method, file, callback); - if (result && typeof result.then === "function") { - // A promise was returned - result.then(onSuccess, onError); - } - else if (result !== undefined) { - // A synchronous result was returned - onSuccess(result); - } - // else { the callback will be called } - } - catch (e) { - onError(e); - } - } - - function callback (err, result) { - if (err) { - onError(err); - } - else { - onSuccess(result); - } - } - - function onSuccess (result) { - // console.log(' success'); - resolve({ - plugin: plugin, - result: result - }); - } - - function onError (err) { - // console.log(' %s', err.message || err); - lastError = err; - runNextPlugin(); - } - }); -}; - -/** - * Returns the value of the given property. - * If the property is a function, then the result of the function is returned. - * If the value is a RegExp, then it will be tested against the file URL. - * If the value is an aray, then it will be compared against the file extension. - * - * @param {object} obj - The object whose property/method is called - * @param {string} prop - The name of the property/method to invoke - * @param {object} file - A file info object, which will be passed to the method - * @param {function} [callback] - A callback function, which will be passed to the method - * @returns {*} - */ -function getResult (obj, prop, file, callback) { - var value = obj[prop]; - - if (typeof value === "function") { - return value.apply(obj, [file, callback]); - } - - if (!callback) { - // The synchronous plugin functions (canParse and canRead) - // allow a "shorthand" syntax, where the user can match - // files by RegExp or by file extension. - if (value instanceof RegExp) { - return value.test(file.url); - } - else if (typeof value === "string") { - return value === file.extension; - } - else if (Array.isArray(value)) { - return value.indexOf(file.extension) !== -1; - } - } - - return value; -} - -},{}],18:[function(require,module,exports){ -(function (process){ -"use strict"; - -var isWindows = /^win/.test(process.platform), - forwardSlashPattern = /\//g, - protocolPattern = /^(\w{2,}):\/\//i, - url = module.exports; - -// RegExp patterns to URL-encode special characters in local filesystem paths -var urlEncodePatterns = [ - /\?/g, "%3F", - /\#/g, "%23", -]; - -// RegExp patterns to URL-decode special characters for local filesystem paths -var urlDecodePatterns = [ - /\%23/g, "#", - /\%24/g, "$", - /\%26/g, "&", - /\%2C/g, ",", - /\%40/g, "@" -]; - -exports.parse = require("url").parse; -exports.resolve = require("url").resolve; - -/** - * Returns the current working directory (in Node) or the current page URL (in browsers). - * - * @returns {string} - */ -exports.cwd = function cwd () { - return process.browser ? location.href : process.cwd() + "/"; -}; - -/** - * Returns the protocol of the given URL, or `undefined` if it has no protocol. - * - * @param {string} path - * @returns {?string} - */ -exports.getProtocol = function getProtocol (path) { - var match = protocolPattern.exec(path); - if (match) { - return match[1].toLowerCase(); - } -}; - -/** - * Returns the lowercased file extension of the given URL, - * or an empty string if it has no extension. - * - * @param {string} path - * @returns {string} - */ -exports.getExtension = function getExtension (path) { - var lastDot = path.lastIndexOf("."); - if (lastDot >= 0) { - return path.substr(lastDot).toLowerCase(); - } - return ""; -}; - -/** - * Returns the hash (URL fragment), of the given path. - * If there is no hash, then the root hash ("#") is returned. - * - * @param {string} path - * @returns {string} - */ -exports.getHash = function getHash (path) { - var hashIndex = path.indexOf("#"); - if (hashIndex >= 0) { - return path.substr(hashIndex); - } - return "#"; -}; - -/** - * Removes the hash (URL fragment), if any, from the given path. - * - * @param {string} path - * @returns {string} - */ -exports.stripHash = function stripHash (path) { - var hashIndex = path.indexOf("#"); - if (hashIndex >= 0) { - path = path.substr(0, hashIndex); - } - return path; -}; - -/** - * Determines whether the given path is an HTTP(S) URL. - * - * @param {string} path - * @returns {boolean} - */ -exports.isHttp = function isHttp (path) { - var protocol = url.getProtocol(path); - if (protocol === "http" || protocol === "https") { - return true; - } - else if (protocol === undefined) { - // There is no protocol. If we're running in a browser, then assume it's HTTP. - return process.browser; - } - else { - // It's some other protocol, such as "ftp://", "mongodb://", etc. - return false; - } -}; - -/** - * Determines whether the given path is a filesystem path. - * This includes "file://" URLs. - * - * @param {string} path - * @returns {boolean} - */ -exports.isFileSystemPath = function isFileSystemPath (path) { - if (process.browser) { - // We're running in a browser, so assume that all paths are URLs. - // This way, even relative paths will be treated as URLs rather than as filesystem paths - return false; - } - - var protocol = url.getProtocol(path); - return protocol === undefined || protocol === "file"; -}; - -/** - * Converts a filesystem path to a properly-encoded URL. - * - * This is intended to handle situations where JSON Schema $Ref Parser is called - * with a filesystem path that contains characters which are not allowed in URLs. - * - * @example - * The following filesystem paths would be converted to the following URLs: - * - * <"!@#$%^&*+=?'>.json ==> %3C%22!@%23$%25%5E&*+=%3F\'%3E.json - * C:\\My Documents\\File (1).json ==> C:/My%20Documents/File%20(1).json - * file://Project #42/file.json ==> file://Project%20%2342/file.json - * - * @param {string} path - * @returns {string} - */ -exports.fromFileSystemPath = function fromFileSystemPath (path) { - // Step 1: On Windows, replace backslashes with forward slashes, - // rather than encoding them as "%5C" - if (isWindows) { - path = path.replace(/\\/g, "/"); - } - - // Step 2: `encodeURI` will take care of MOST characters - path = encodeURI(path); - - // Step 3: Manually encode characters that are not encoded by `encodeURI`. - // This includes characters such as "#" and "?", which have special meaning in URLs, - // but are just normal characters in a filesystem path. - for (var i = 0; i < urlEncodePatterns.length; i += 2) { - path = path.replace(urlEncodePatterns[i], urlEncodePatterns[i + 1]); - } - - return path; -}; - -/** - * Converts a URL to a local filesystem path. - * - * @param {string} path - * @param {boolean} [keepFileProtocol] - If true, then "file://" will NOT be stripped - * @returns {string} - */ -exports.toFileSystemPath = function toFileSystemPath (path, keepFileProtocol) { - // Step 1: `decodeURI` will decode characters such as Cyrillic characters, spaces, etc. - path = decodeURI(path); - - // Step 2: Manually decode characters that are not decoded by `decodeURI`. - // This includes characters such as "#" and "?", which have special meaning in URLs, - // but are just normal characters in a filesystem path. - for (var i = 0; i < urlDecodePatterns.length; i += 2) { - path = path.replace(urlDecodePatterns[i], urlDecodePatterns[i + 1]); - } - - // Step 3: If it's a "file://" URL, then format it consistently - // or convert it to a local filesystem path - var isFileUrl = path.substr(0, 7).toLowerCase() === "file://"; - if (isFileUrl) { - // Strip-off the protocol, and the initial "/", if there is one - path = path[7] === "/" ? path.substr(8) : path.substr(7); - - // insert a colon (":") after the drive letter on Windows - if (isWindows && path[1] === "/") { - path = path[0] + ":" + path.substr(1); - } - - if (keepFileProtocol) { - // Return the consistently-formatted "file://" URL - path = "file:///" + path; - } - else { - // Convert the "file://" URL to a local filesystem path. - // On Windows, it will start with something like "C:/". - // On Posix, it will start with "/" - isFileUrl = false; - path = isWindows ? path : "/" + path; - } - } - - // Step 4: Normalize Windows paths (unless it's a "file://" URL) - if (isWindows && !isFileUrl) { - // Replace forward slashes with backslashes - path = path.replace(forwardSlashPattern, "\\"); - - // Capitalize the drive letter - if (path.substr(1, 2) === ":\\") { - path = path[0].toUpperCase() + path.substr(1); - } - } - - return path; -}; - -}).call(this,require('_process')) - -},{"_process":66,"url":87}],19:[function(require,module,exports){ -/* eslint lines-around-comment: [2, {beforeBlockComment: false}] */ -"use strict"; - -var yaml = require("js-yaml"), - ono = require("ono"); - -/** - * Simple YAML parsing functions, similar to {@link JSON.parse} and {@link JSON.stringify} - */ -module.exports = { - /** - * Parses a YAML string and returns the value. - * - * @param {string} text - The YAML string to be parsed - * @param {function} [reviver] - Not currently supported. Provided for consistency with {@link JSON.parse} - * @returns {*} - */ - parse: function yamlParse (text, reviver) { - try { - return yaml.safeLoad(text); - } - catch (e) { - if (e instanceof Error) { - throw e; - } - else { - // https://github.com/nodeca/js-yaml/issues/153 - throw ono(e, e.message); - } - } - }, - - /** - * Converts a JavaScript value to a YAML string. - * - * @param {*} value - The value to convert to YAML - * @param {function|array} replacer - Not currently supported. Provided for consistency with {@link JSON.stringify} - * @param {string|number} space - The number of spaces to use for indentation, or a string containing the number of spaces. - * @returns {string} - */ - stringify: function yamlStringify (value, replacer, space) { - try { - var indent = (typeof space === "string" ? space.length : space) || 2; - return yaml.safeDump(value, { indent: indent }); - } - catch (e) { - if (e instanceof Error) { - throw e; - } - else { - // https://github.com/nodeca/js-yaml/issues/153 - throw ono(e, e.message); - } - } - } -}; - -},{"js-yaml":34,"ono":64}],20:[function(require,module,exports){ -'use strict' - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -// Support decoding URL-safe base64 strings, as Node.js does. -// See: https://en.wikipedia.org/wiki/Base64#URL_applications -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function getLens (b64) { - var len = b64.length - - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf('=') - if (validLen === -1) validLen = len - - var placeHoldersLen = validLen === len - ? 0 - : 4 - (validLen % 4) - - return [validLen, placeHoldersLen] -} - -// base64 is 4/3 + up to two characters of the original data -function byteLength (b64) { - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function _byteLength (b64, validLen, placeHoldersLen) { - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function toByteArray (b64) { - var tmp - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - - var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) - - var curByte = 0 - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 - ? validLen - 4 - : validLen - - for (var i = 0; i < len; i += 4) { - tmp = - (revLookup[b64.charCodeAt(i)] << 18) | - (revLookup[b64.charCodeAt(i + 1)] << 12) | - (revLookup[b64.charCodeAt(i + 2)] << 6) | - revLookup[b64.charCodeAt(i + 3)] - arr[curByte++] = (tmp >> 16) & 0xFF - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 2) { - tmp = - (revLookup[b64.charCodeAt(i)] << 2) | - (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 1) { - tmp = - (revLookup[b64.charCodeAt(i)] << 10) | - (revLookup[b64.charCodeAt(i + 1)] << 4) | - (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + - lookup[num >> 12 & 0x3F] + - lookup[num >> 6 & 0x3F] + - lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = - ((uint8[i] << 16) & 0xFF0000) + - ((uint8[i + 1] << 8) & 0xFF00) + - (uint8[i + 2] & 0xFF) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk( - uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) - )) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - parts.push( - lookup[tmp >> 2] + - lookup[(tmp << 4) & 0x3F] + - '==' - ) - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + uint8[len - 1] - parts.push( - lookup[tmp >> 10] + - lookup[(tmp >> 4) & 0x3F] + - lookup[(tmp << 2) & 0x3F] + - '=' - ) - } - - return parts.join('') -} - -},{}],21:[function(require,module,exports){ - -},{}],22:[function(require,module,exports){ -(function (global){ -/*! https://mths.be/punycode v1.4.1 by @mathias */ -;(function(root) { - - /** Detect free variables */ - var freeExports = typeof exports == 'object' && exports && - !exports.nodeType && exports; - var freeModule = typeof module == 'object' && module && - !module.nodeType && module; - var freeGlobal = typeof global == 'object' && global; - if ( - freeGlobal.global === freeGlobal || - freeGlobal.window === freeGlobal || - freeGlobal.self === freeGlobal - ) { - root = freeGlobal; - } - - /** - * The `punycode` object. - * @name punycode - * @type Object - */ - var punycode, - - /** Highest positive signed 32-bit float value */ - maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 - - /** Bootstring parameters */ - base = 36, - tMin = 1, - tMax = 26, - skew = 38, - damp = 700, - initialBias = 72, - initialN = 128, // 0x80 - delimiter = '-', // '\x2D' - - /** Regular expressions */ - regexPunycode = /^xn--/, - regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars - regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators - - /** Error messages */ - errors = { - 'overflow': 'Overflow: input needs wider integers to process', - 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', - 'invalid-input': 'Invalid input' - }, - - /** Convenience shortcuts */ - baseMinusTMin = base - tMin, - floor = Math.floor, - stringFromCharCode = String.fromCharCode, - - /** Temporary variable */ - key; - - /*--------------------------------------------------------------------------*/ - - /** - * A generic error utility function. - * @private - * @param {String} type The error type. - * @returns {Error} Throws a `RangeError` with the applicable error message. - */ - function error(type) { - throw new RangeError(errors[type]); - } - - /** - * A generic `Array#map` utility function. - * @private - * @param {Array} array The array to iterate over. - * @param {Function} callback The function that gets called for every array - * item. - * @returns {Array} A new array of values returned by the callback function. - */ - function map(array, fn) { - var length = array.length; - var result = []; - while (length--) { - result[length] = fn(array[length]); - } - return result; - } - - /** - * A simple `Array#map`-like wrapper to work with domain name strings or email - * addresses. - * @private - * @param {String} domain The domain name or email address. - * @param {Function} callback The function that gets called for every - * character. - * @returns {Array} A new string of characters returned by the callback - * function. - */ - function mapDomain(string, fn) { - var parts = string.split('@'); - var result = ''; - if (parts.length > 1) { - // In email addresses, only the domain name should be punycoded. Leave - // the local part (i.e. everything up to `@`) intact. - result = parts[0] + '@'; - string = parts[1]; - } - // Avoid `split(regex)` for IE8 compatibility. See #17. - string = string.replace(regexSeparators, '\x2E'); - var labels = string.split('.'); - var encoded = map(labels, fn).join('.'); - return result + encoded; - } - - /** - * Creates an array containing the numeric code points of each Unicode - * character in the string. While JavaScript uses UCS-2 internally, - * this function will convert a pair of surrogate halves (each of which - * UCS-2 exposes as separate characters) into a single code point, - * matching UTF-16. - * @see `punycode.ucs2.encode` - * @see - * @memberOf punycode.ucs2 - * @name decode - * @param {String} string The Unicode input string (UCS-2). - * @returns {Array} The new array of code points. - */ - function ucs2decode(string) { - var output = [], - counter = 0, - length = string.length, - value, - extra; - while (counter < length) { - value = string.charCodeAt(counter++); - if (value >= 0xD800 && value <= 0xDBFF && counter < length) { - // high surrogate, and there is a next character - extra = string.charCodeAt(counter++); - if ((extra & 0xFC00) == 0xDC00) { // low surrogate - output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); - } else { - // unmatched surrogate; only append this code unit, in case the next - // code unit is the high surrogate of a surrogate pair - output.push(value); - counter--; - } - } else { - output.push(value); - } - } - return output; - } - - /** - * Creates a string based on an array of numeric code points. - * @see `punycode.ucs2.decode` - * @memberOf punycode.ucs2 - * @name encode - * @param {Array} codePoints The array of numeric code points. - * @returns {String} The new Unicode string (UCS-2). - */ - function ucs2encode(array) { - return map(array, function(value) { - var output = ''; - if (value > 0xFFFF) { - value -= 0x10000; - output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); - value = 0xDC00 | value & 0x3FF; - } - output += stringFromCharCode(value); - return output; - }).join(''); - } - - /** - * Converts a basic code point into a digit/integer. - * @see `digitToBasic()` - * @private - * @param {Number} codePoint The basic numeric code point value. - * @returns {Number} The numeric value of a basic code point (for use in - * representing integers) in the range `0` to `base - 1`, or `base` if - * the code point does not represent a value. - */ - function basicToDigit(codePoint) { - if (codePoint - 48 < 10) { - return codePoint - 22; - } - if (codePoint - 65 < 26) { - return codePoint - 65; - } - if (codePoint - 97 < 26) { - return codePoint - 97; - } - return base; - } - - /** - * Converts a digit/integer into a basic code point. - * @see `basicToDigit()` - * @private - * @param {Number} digit The numeric value of a basic code point. - * @returns {Number} The basic code point whose value (when used for - * representing integers) is `digit`, which needs to be in the range - * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is - * used; else, the lowercase form is used. The behavior is undefined - * if `flag` is non-zero and `digit` has no uppercase form. - */ - function digitToBasic(digit, flag) { - // 0..25 map to ASCII a..z or A..Z - // 26..35 map to ASCII 0..9 - return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); - } - - /** - * Bias adaptation function as per section 3.4 of RFC 3492. - * https://tools.ietf.org/html/rfc3492#section-3.4 - * @private - */ - function adapt(delta, numPoints, firstTime) { - var k = 0; - delta = firstTime ? floor(delta / damp) : delta >> 1; - delta += floor(delta / numPoints); - for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { - delta = floor(delta / baseMinusTMin); - } - return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); - } - - /** - * Converts a Punycode string of ASCII-only symbols to a string of Unicode - * symbols. - * @memberOf punycode - * @param {String} input The Punycode string of ASCII-only symbols. - * @returns {String} The resulting string of Unicode symbols. - */ - function decode(input) { - // Don't use UCS-2 - var output = [], - inputLength = input.length, - out, - i = 0, - n = initialN, - bias = initialBias, - basic, - j, - index, - oldi, - w, - k, - digit, - t, - /** Cached calculation results */ - baseMinusT; - - // Handle the basic code points: let `basic` be the number of input code - // points before the last delimiter, or `0` if there is none, then copy - // the first basic code points to the output. - - basic = input.lastIndexOf(delimiter); - if (basic < 0) { - basic = 0; - } - - for (j = 0; j < basic; ++j) { - // if it's not a basic code point - if (input.charCodeAt(j) >= 0x80) { - error('not-basic'); - } - output.push(input.charCodeAt(j)); - } - - // Main decoding loop: start just after the last delimiter if any basic code - // points were copied; start at the beginning otherwise. - - for (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { - - // `index` is the index of the next character to be consumed. - // Decode a generalized variable-length integer into `delta`, - // which gets added to `i`. The overflow checking is easier - // if we increase `i` as we go, then subtract off its starting - // value at the end to obtain `delta`. - for (oldi = i, w = 1, k = base; /* no condition */; k += base) { - - if (index >= inputLength) { - error('invalid-input'); - } - - digit = basicToDigit(input.charCodeAt(index++)); - - if (digit >= base || digit > floor((maxInt - i) / w)) { - error('overflow'); - } - - i += digit * w; - t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); - - if (digit < t) { - break; - } - - baseMinusT = base - t; - if (w > floor(maxInt / baseMinusT)) { - error('overflow'); - } - - w *= baseMinusT; - - } - - out = output.length + 1; - bias = adapt(i - oldi, out, oldi == 0); - - // `i` was supposed to wrap around from `out` to `0`, - // incrementing `n` each time, so we'll fix that now: - if (floor(i / out) > maxInt - n) { - error('overflow'); - } - - n += floor(i / out); - i %= out; - - // Insert `n` at position `i` of the output - output.splice(i++, 0, n); - - } - - return ucs2encode(output); - } - - /** - * Converts a string of Unicode symbols (e.g. a domain name label) to a - * Punycode string of ASCII-only symbols. - * @memberOf punycode - * @param {String} input The string of Unicode symbols. - * @returns {String} The resulting Punycode string of ASCII-only symbols. - */ - function encode(input) { - var n, - delta, - handledCPCount, - basicLength, - bias, - j, - m, - q, - k, - t, - currentValue, - output = [], - /** `inputLength` will hold the number of code points in `input`. */ - inputLength, - /** Cached calculation results */ - handledCPCountPlusOne, - baseMinusT, - qMinusT; - - // Convert the input in UCS-2 to Unicode - input = ucs2decode(input); - - // Cache the length - inputLength = input.length; - - // Initialize the state - n = initialN; - delta = 0; - bias = initialBias; - - // Handle the basic code points - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue < 0x80) { - output.push(stringFromCharCode(currentValue)); - } - } - - handledCPCount = basicLength = output.length; - - // `handledCPCount` is the number of code points that have been handled; - // `basicLength` is the number of basic code points. - - // Finish the basic string - if it is not empty - with a delimiter - if (basicLength) { - output.push(delimiter); - } - - // Main encoding loop: - while (handledCPCount < inputLength) { - - // All non-basic code points < n have been handled already. Find the next - // larger one: - for (m = maxInt, j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue >= n && currentValue < m) { - m = currentValue; - } - } - - // Increase `delta` enough to advance the decoder's state to , - // but guard against overflow - handledCPCountPlusOne = handledCPCount + 1; - if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { - error('overflow'); - } - - delta += (m - n) * handledCPCountPlusOne; - n = m; - - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - - if (currentValue < n && ++delta > maxInt) { - error('overflow'); - } - - if (currentValue == n) { - // Represent delta as a generalized variable-length integer - for (q = delta, k = base; /* no condition */; k += base) { - t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); - if (q < t) { - break; - } - qMinusT = q - t; - baseMinusT = base - t; - output.push( - stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) - ); - q = floor(qMinusT / baseMinusT); - } - - output.push(stringFromCharCode(digitToBasic(q, 0))); - bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); - delta = 0; - ++handledCPCount; - } - } - - ++delta; - ++n; - - } - return output.join(''); - } - - /** - * Converts a Punycode string representing a domain name or an email address - * to Unicode. Only the Punycoded parts of the input will be converted, i.e. - * it doesn't matter if you call it on a string that has already been - * converted to Unicode. - * @memberOf punycode - * @param {String} input The Punycoded domain name or email address to - * convert to Unicode. - * @returns {String} The Unicode representation of the given Punycode - * string. - */ - function toUnicode(input) { - return mapDomain(input, function(string) { - return regexPunycode.test(string) - ? decode(string.slice(4).toLowerCase()) - : string; - }); - } - - /** - * Converts a Unicode string representing a domain name or an email address to - * Punycode. Only the non-ASCII parts of the domain name will be converted, - * i.e. it doesn't matter if you call it with a domain that's already in - * ASCII. - * @memberOf punycode - * @param {String} input The domain name or email address to convert, as a - * Unicode string. - * @returns {String} The Punycode representation of the given domain name or - * email address. - */ - function toASCII(input) { - return mapDomain(input, function(string) { - return regexNonASCII.test(string) - ? 'xn--' + encode(string) - : string; - }); - } - - /*--------------------------------------------------------------------------*/ - - /** Define the public API */ - punycode = { - /** - * A string representing the current Punycode.js version number. - * @memberOf punycode - * @type String - */ - 'version': '1.4.1', - /** - * An object of methods to convert from JavaScript's internal character - * representation (UCS-2) to Unicode code points, and back. - * @see - * @memberOf punycode - * @type Object - */ - 'ucs2': { - 'decode': ucs2decode, - 'encode': ucs2encode - }, - 'decode': decode, - 'encode': encode, - 'toASCII': toASCII, - 'toUnicode': toUnicode - }; - - /** Expose `punycode` */ - // Some AMD build optimizers, like r.js, check for specific condition patterns - // like the following: - if ( - typeof define == 'function' && - typeof define.amd == 'object' && - define.amd - ) { - define('punycode', function() { - return punycode; - }); - } else if (freeExports && freeModule) { - if (module.exports == freeExports) { - // in Node.js, io.js, or RingoJS v0.8.0+ - freeModule.exports = punycode; - } else { - // in Narwhal or RingoJS v0.7.0- - for (key in punycode) { - punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]); - } - } - } else { - // in Rhino or a web browser - root.punycode = punycode; - } - -}(this)); - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],23:[function(require,module,exports){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ - -'use strict' - -var base64 = require('base64-js') -var ieee754 = require('ieee754') - -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 - -var K_MAX_LENGTH = 0x7fffffff -exports.kMaxLength = K_MAX_LENGTH - -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Print warning and recommend using `buffer` v4.x which has an Object - * implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * We report that the browser does not support typed arrays if the are not subclassable - * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array` - * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support - * for __proto__ and has a buggy typed array implementation. - */ -Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport() - -if (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' && - typeof console.error === 'function') { - console.error( - 'This browser lacks typed array (Uint8Array) support which is required by ' + - '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.' - ) -} - -function typedArraySupport () { - // Can typed array instances can be augmented? - try { - var arr = new Uint8Array(1) - arr.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } } - return arr.foo() === 42 - } catch (e) { - return false - } -} - -Object.defineProperty(Buffer.prototype, 'parent', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.buffer - } -}) - -Object.defineProperty(Buffer.prototype, 'offset', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.byteOffset - } -}) - -function createBuffer (length) { - if (length > K_MAX_LENGTH) { - throw new RangeError('The value "' + length + '" is invalid for option "size"') - } - // Return an augmented `Uint8Array` instance - var buf = new Uint8Array(length) - buf.__proto__ = Buffer.prototype - return buf -} - -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - -function Buffer (arg, encodingOrOffset, length) { - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new TypeError( - 'The "string" argument must be of type string. Received type number' - ) - } - return allocUnsafe(arg) - } - return from(arg, encodingOrOffset, length) -} - -// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 -if (typeof Symbol !== 'undefined' && Symbol.species != null && - Buffer[Symbol.species] === Buffer) { - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true, - enumerable: false, - writable: false - }) -} - -Buffer.poolSize = 8192 // not used by this implementation - -function from (value, encodingOrOffset, length) { - if (typeof value === 'string') { - return fromString(value, encodingOrOffset) - } - - if (ArrayBuffer.isView(value)) { - return fromArrayLike(value) - } - - if (value == null) { - throw TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) - } - - if (isInstance(value, ArrayBuffer) || - (value && isInstance(value.buffer, ArrayBuffer))) { - return fromArrayBuffer(value, encodingOrOffset, length) - } - - if (typeof value === 'number') { - throw new TypeError( - 'The "value" argument must not be of type number. Received type number' - ) - } - - var valueOf = value.valueOf && value.valueOf() - if (valueOf != null && valueOf !== value) { - return Buffer.from(valueOf, encodingOrOffset, length) - } - - var b = fromObject(value) - if (b) return b - - if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null && - typeof value[Symbol.toPrimitive] === 'function') { - return Buffer.from( - value[Symbol.toPrimitive]('string'), encodingOrOffset, length - ) - } - - throw new TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) -} - -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(value, encodingOrOffset, length) -} - -// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug: -// https://github.com/feross/buffer/pull/148 -Buffer.prototype.__proto__ = Uint8Array.prototype -Buffer.__proto__ = Uint8Array - -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be of type number') - } else if (size < 0) { - throw new RangeError('The value "' + size + '" is invalid for option "size"') - } -} - -function alloc (size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(size) - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(size).fill(fill, encoding) - : createBuffer(size).fill(fill) - } - return createBuffer(size) -} - -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(size, fill, encoding) -} - -function allocUnsafe (size) { - assertSize(size) - return createBuffer(size < 0 ? 0 : checked(size) | 0) -} - -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(size) -} -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(size) -} - -function fromString (string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - - var length = byteLength(string, encoding) | 0 - var buf = createBuffer(length) - - var actual = buf.write(string, encoding) - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - buf = buf.slice(0, actual) - } - - return buf -} - -function fromArrayLike (array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - var buf = createBuffer(length) - for (var i = 0; i < length; i += 1) { - buf[i] = array[i] & 255 - } - return buf -} - -function fromArrayBuffer (array, byteOffset, length) { - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('"offset" is outside of buffer bounds') - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('"length" is outside of buffer bounds') - } - - var buf - if (byteOffset === undefined && length === undefined) { - buf = new Uint8Array(array) - } else if (length === undefined) { - buf = new Uint8Array(array, byteOffset) - } else { - buf = new Uint8Array(array, byteOffset, length) - } - - // Return an augmented `Uint8Array` instance - buf.__proto__ = Buffer.prototype - return buf -} - -function fromObject (obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - var buf = createBuffer(len) - - if (buf.length === 0) { - return buf - } - - obj.copy(buf, 0, 0, len) - return buf - } - - if (obj.length !== undefined) { - if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) { - return createBuffer(0) - } - return fromArrayLike(obj) - } - - if (obj.type === 'Buffer' && Array.isArray(obj.data)) { - return fromArrayLike(obj.data) - } -} - -function checked (length) { - // Note: cannot use `length < K_MAX_LENGTH` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= K_MAX_LENGTH) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes') - } - return length | 0 -} - -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 - } - return Buffer.alloc(+length) -} - -Buffer.isBuffer = function isBuffer (b) { - return b != null && b._isBuffer === true && - b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false -} - -Buffer.compare = function compare (a, b) { - if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength) - if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength) - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' - ) - } - - if (a === b) return 0 - - var x = a.length - var y = b.length - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } -} - -Buffer.concat = function concat (list, length) { - if (!Array.isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - - if (list.length === 0) { - return Buffer.alloc(0) - } - - var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (isInstance(buf, Uint8Array)) { - buf = Buffer.from(buf) - } - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - buf.copy(buffer, pos) - pos += buf.length - } - return buffer -} - -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length - } - if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) { - return string.byteLength - } - if (typeof string !== 'string') { - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' + - 'Received type ' + typeof string - ) - } - - var len = string.length - var mustMatch = (arguments.length > 2 && arguments[2] === true) - if (!mustMatch && len === 0) return 0 - - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) { - return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8 - } - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} -Buffer.byteLength = byteLength - -function slowToString (encoding, start, end) { - var loweredCase = false - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } - - if (end === undefined || end > this.length) { - end = this.length - } - - if (end <= 0) { - return '' - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 - - if (end <= start) { - return '' - } - - if (!encoding) encoding = 'utf8' - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) - - case 'ascii': - return asciiSlice(this, start, end) - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) - - case 'base64': - return base64Slice(this, start, end) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true - } - } -} - -// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package) -// to detect a Buffer instance. It's not possible to use `instanceof Buffer` -// reliably in a browserify context because there could be multiple different -// copies of the 'buffer' package in use. This method works even for Buffer -// instances that were created from another copy of the `buffer` package. -// See: https://github.com/feross/buffer/issues/154 -Buffer.prototype._isBuffer = true - -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i -} - -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) - } - return this -} - -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} - -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) - } - return this -} - -Buffer.prototype.toString = function toString () { - var length = this.length - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) -} - -Buffer.prototype.toLocaleString = Buffer.prototype.toString - -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 -} - -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim() - if (this.length > max) str += ' ... ' - return '' -} - -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (isInstance(target, Uint8Array)) { - target = Buffer.from(target, target.offset, target.byteLength) - } - if (!Buffer.isBuffer(target)) { - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. ' + - 'Received type ' + (typeof target) - ) - } - - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } - - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } - - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } - - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 - - if (this === target) return 0 - - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (numberIsNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } - - throw new TypeError('val must be string, number or Buffer') -} - -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } - - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } - - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } - - return -1 -} - -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} - -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} - -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} - -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } - - var strLen = string.length - - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (numberIsNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} - -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} - -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} - -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} - -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} - -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} - -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset >>> 0 - if (isFinite(length)) { - length = length >>> 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } - - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining - - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } - - if (!encoding) encoding = 'utf8' - - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - - case 'ascii': - return asciiWrite(this, string, offset, length) - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} - -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} - -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} - -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } - - res.push(codePoint) - i += bytesPerSequence - } - - return decodeCodePointsArray(res) -} - -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 - -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} - -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} - -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} - -function hexSlice (buf, start, end) { - var len = buf.length - - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len - - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} - -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256)) - } - return res -} - -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end - - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } - - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - - if (end < start) end = start - - var newBuf = this.subarray(start, end) - // Return an augmented `Uint8Array` instance - newBuf.__proto__ = Buffer.prototype - return newBuf -} - -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} - -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - - return val -} - -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - - return val -} - -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} - -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} - -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} - -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} - -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} - -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} - -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} - -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} - -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} - -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} - -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} - -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} - -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} - -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - return offset + 4 -} - -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} - -function writeFloat (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} - -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} - -function writeDouble (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} - -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) -} - -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer') - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start - - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('Index out of range') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - - var len = end - start - - if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') { - // Use built-in when available, missing from IE11 - this.copyWithin(targetStart, start, end) - } else if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (var i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, end), - targetStart - ) - } - - return len -} - -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if ((encoding === 'utf8' && code < 128) || - encoding === 'latin1') { - // Fast path: If `val` fits into a single byte, use that numeric value. - val = code - } - } - } else if (typeof val === 'number') { - val = val & 255 - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - - if (end <= start) { - return this - } - - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - - if (!val) val = 0 - - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : Buffer.from(val, encoding) - var len = bytes.length - if (len === 0) { - throw new TypeError('The value "' + val + - '" is invalid for argument "value"') - } - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } - - return this -} - -// HELPER FUNCTIONS -// ================ - -var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g - -function base64clean (str) { - // Node takes equal signs as end of the Base64 encoding - str = str.split('=')[0] - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = str.trim().replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' - } - return str -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} - -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) - - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - - // valid lead - leadSurrogate = codePoint - - continue - } - - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } - - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } - - leadSurrogate = null - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } - - return bytes -} - -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} - -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - - return byteArray -} - -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} - -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} - -// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass -// the `instanceof` check but they should be treated as of that type. -// See: https://github.com/feross/buffer/issues/166 -function isInstance (obj, type) { - return obj instanceof type || - (obj != null && obj.constructor != null && obj.constructor.name != null && - obj.constructor.name === type.name) -} -function numberIsNaN (obj) { - // For IE11 support - return obj !== obj // eslint-disable-line no-self-compare -} - -},{"base64-js":20,"ieee754":30}],24:[function(require,module,exports){ -module.exports = { - "100": "Continue", - "101": "Switching Protocols", - "102": "Processing", - "200": "OK", - "201": "Created", - "202": "Accepted", - "203": "Non-Authoritative Information", - "204": "No Content", - "205": "Reset Content", - "206": "Partial Content", - "207": "Multi-Status", - "208": "Already Reported", - "226": "IM Used", - "300": "Multiple Choices", - "301": "Moved Permanently", - "302": "Found", - "303": "See Other", - "304": "Not Modified", - "305": "Use Proxy", - "307": "Temporary Redirect", - "308": "Permanent Redirect", - "400": "Bad Request", - "401": "Unauthorized", - "402": "Payment Required", - "403": "Forbidden", - "404": "Not Found", - "405": "Method Not Allowed", - "406": "Not Acceptable", - "407": "Proxy Authentication Required", - "408": "Request Timeout", - "409": "Conflict", - "410": "Gone", - "411": "Length Required", - "412": "Precondition Failed", - "413": "Payload Too Large", - "414": "URI Too Long", - "415": "Unsupported Media Type", - "416": "Range Not Satisfiable", - "417": "Expectation Failed", - "418": "I'm a teapot", - "421": "Misdirected Request", - "422": "Unprocessable Entity", - "423": "Locked", - "424": "Failed Dependency", - "425": "Unordered Collection", - "426": "Upgrade Required", - "428": "Precondition Required", - "429": "Too Many Requests", - "431": "Request Header Fields Too Large", - "451": "Unavailable For Legal Reasons", - "500": "Internal Server Error", - "501": "Not Implemented", - "502": "Bad Gateway", - "503": "Service Unavailable", - "504": "Gateway Timeout", - "505": "HTTP Version Not Supported", - "506": "Variant Also Negotiates", - "507": "Insufficient Storage", - "508": "Loop Detected", - "509": "Bandwidth Limit Exceeded", - "510": "Not Extended", - "511": "Network Authentication Required" -} - -},{}],25:[function(require,module,exports){ -(function (process,global){ -"use strict" - -var next = (global.process && process.nextTick) || global.setImmediate || function (f) { - setTimeout(f, 0) -} - -module.exports = function maybe (cb, promise) { - if (cb) { - promise - .then(function (result) { - next(function () { cb(null, result) }) - }, function (err) { - next(function () { cb(err) }) - }) - return undefined - } - else { - return promise - } -} - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"_process":66}],26:[function(require,module,exports){ -(function (Buffer){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// NOTE: These type checking functions intentionally don't use `instanceof` -// because it is fragile and can be easily faked with `Object.create()`. - -function isArray(arg) { - if (Array.isArray) { - return Array.isArray(arg); - } - return objectToString(arg) === '[object Array]'; -} -exports.isArray = isArray; - -function isBoolean(arg) { - return typeof arg === 'boolean'; -} -exports.isBoolean = isBoolean; - -function isNull(arg) { - return arg === null; -} -exports.isNull = isNull; - -function isNullOrUndefined(arg) { - return arg == null; -} -exports.isNullOrUndefined = isNullOrUndefined; - -function isNumber(arg) { - return typeof arg === 'number'; -} -exports.isNumber = isNumber; - -function isString(arg) { - return typeof arg === 'string'; -} -exports.isString = isString; - -function isSymbol(arg) { - return typeof arg === 'symbol'; -} -exports.isSymbol = isSymbol; - -function isUndefined(arg) { - return arg === void 0; -} -exports.isUndefined = isUndefined; - -function isRegExp(re) { - return objectToString(re) === '[object RegExp]'; -} -exports.isRegExp = isRegExp; - -function isObject(arg) { - return typeof arg === 'object' && arg !== null; -} -exports.isObject = isObject; - -function isDate(d) { - return objectToString(d) === '[object Date]'; -} -exports.isDate = isDate; - -function isError(e) { - return (objectToString(e) === '[object Error]' || e instanceof Error); -} -exports.isError = isError; - -function isFunction(arg) { - return typeof arg === 'function'; -} -exports.isFunction = isFunction; - -function isPrimitive(arg) { - return arg === null || - typeof arg === 'boolean' || - typeof arg === 'number' || - typeof arg === 'string' || - typeof arg === 'symbol' || // ES6 symbol - typeof arg === 'undefined'; -} -exports.isPrimitive = isPrimitive; - -exports.isBuffer = Buffer.isBuffer; - -function objectToString(o) { - return Object.prototype.toString.call(o); -} - -}).call(this,{"isBuffer":require("../../is-buffer/index.js")}) - -},{"../../is-buffer/index.js":32}],27:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -var objectCreate = Object.create || objectCreatePolyfill -var objectKeys = Object.keys || objectKeysPolyfill -var bind = Function.prototype.bind || functionBindPolyfill - -function EventEmitter() { - if (!this._events || !Object.prototype.hasOwnProperty.call(this, '_events')) { - this._events = objectCreate(null); - this._eventsCount = 0; - } - - this._maxListeners = this._maxListeners || undefined; -} -module.exports = EventEmitter; - -// Backwards-compat with node 0.10.x -EventEmitter.EventEmitter = EventEmitter; - -EventEmitter.prototype._events = undefined; -EventEmitter.prototype._maxListeners = undefined; - -// By default EventEmitters will print a warning if more than 10 listeners are -// added to it. This is a useful default which helps finding memory leaks. -var defaultMaxListeners = 10; - -var hasDefineProperty; -try { - var o = {}; - if (Object.defineProperty) Object.defineProperty(o, 'x', { value: 0 }); - hasDefineProperty = o.x === 0; -} catch (err) { hasDefineProperty = false } -if (hasDefineProperty) { - Object.defineProperty(EventEmitter, 'defaultMaxListeners', { - enumerable: true, - get: function() { - return defaultMaxListeners; - }, - set: function(arg) { - // check whether the input is a positive number (whose value is zero or - // greater and not a NaN). - if (typeof arg !== 'number' || arg < 0 || arg !== arg) - throw new TypeError('"defaultMaxListeners" must be a positive number'); - defaultMaxListeners = arg; - } - }); -} else { - EventEmitter.defaultMaxListeners = defaultMaxListeners; -} - -// Obviously not all Emitters should be limited to 10. This function allows -// that to be increased. Set to zero for unlimited. -EventEmitter.prototype.setMaxListeners = function setMaxListeners(n) { - if (typeof n !== 'number' || n < 0 || isNaN(n)) - throw new TypeError('"n" argument must be a positive number'); - this._maxListeners = n; - return this; -}; - -function $getMaxListeners(that) { - if (that._maxListeners === undefined) - return EventEmitter.defaultMaxListeners; - return that._maxListeners; -} - -EventEmitter.prototype.getMaxListeners = function getMaxListeners() { - return $getMaxListeners(this); -}; - -// These standalone emit* functions are used to optimize calling of event -// handlers for fast cases because emit() itself often has a variable number of -// arguments and can be deoptimized because of that. These functions always have -// the same number of arguments and thus do not get deoptimized, so the code -// inside them can execute faster. -function emitNone(handler, isFn, self) { - if (isFn) - handler.call(self); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self); - } -} -function emitOne(handler, isFn, self, arg1) { - if (isFn) - handler.call(self, arg1); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1); - } -} -function emitTwo(handler, isFn, self, arg1, arg2) { - if (isFn) - handler.call(self, arg1, arg2); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1, arg2); - } -} -function emitThree(handler, isFn, self, arg1, arg2, arg3) { - if (isFn) - handler.call(self, arg1, arg2, arg3); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1, arg2, arg3); - } -} - -function emitMany(handler, isFn, self, args) { - if (isFn) - handler.apply(self, args); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].apply(self, args); - } -} - -EventEmitter.prototype.emit = function emit(type) { - var er, handler, len, args, i, events; - var doError = (type === 'error'); - - events = this._events; - if (events) - doError = (doError && events.error == null); - else if (!doError) - return false; - - // If there is no 'error' event listener then throw. - if (doError) { - if (arguments.length > 1) - er = arguments[1]; - if (er instanceof Error) { - throw er; // Unhandled 'error' event - } else { - // At least give some kind of context to the user - var err = new Error('Unhandled "error" event. (' + er + ')'); - err.context = er; - throw err; - } - return false; - } - - handler = events[type]; - - if (!handler) - return false; - - var isFn = typeof handler === 'function'; - len = arguments.length; - switch (len) { - // fast cases - case 1: - emitNone(handler, isFn, this); - break; - case 2: - emitOne(handler, isFn, this, arguments[1]); - break; - case 3: - emitTwo(handler, isFn, this, arguments[1], arguments[2]); - break; - case 4: - emitThree(handler, isFn, this, arguments[1], arguments[2], arguments[3]); - break; - // slower - default: - args = new Array(len - 1); - for (i = 1; i < len; i++) - args[i - 1] = arguments[i]; - emitMany(handler, isFn, this, args); - } - - return true; -}; - -function _addListener(target, type, listener, prepend) { - var m; - var events; - var existing; - - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - - events = target._events; - if (!events) { - events = target._events = objectCreate(null); - target._eventsCount = 0; - } else { - // To avoid recursion in the case that type === "newListener"! Before - // adding it to the listeners, first emit "newListener". - if (events.newListener) { - target.emit('newListener', type, - listener.listener ? listener.listener : listener); - - // Re-assign `events` because a newListener handler could have caused the - // this._events to be assigned to a new object - events = target._events; - } - existing = events[type]; - } - - if (!existing) { - // Optimize the case of one listener. Don't need the extra array object. - existing = events[type] = listener; - ++target._eventsCount; - } else { - if (typeof existing === 'function') { - // Adding the second element, need to change to array. - existing = events[type] = - prepend ? [listener, existing] : [existing, listener]; - } else { - // If we've already got an array, just append. - if (prepend) { - existing.unshift(listener); - } else { - existing.push(listener); - } - } - - // Check for listener leak - if (!existing.warned) { - m = $getMaxListeners(target); - if (m && m > 0 && existing.length > m) { - existing.warned = true; - var w = new Error('Possible EventEmitter memory leak detected. ' + - existing.length + ' "' + String(type) + '" listeners ' + - 'added. Use emitter.setMaxListeners() to ' + - 'increase limit.'); - w.name = 'MaxListenersExceededWarning'; - w.emitter = target; - w.type = type; - w.count = existing.length; - if (typeof console === 'object' && console.warn) { - console.warn('%s: %s', w.name, w.message); - } - } - } - } - - return target; -} - -EventEmitter.prototype.addListener = function addListener(type, listener) { - return _addListener(this, type, listener, false); -}; - -EventEmitter.prototype.on = EventEmitter.prototype.addListener; - -EventEmitter.prototype.prependListener = - function prependListener(type, listener) { - return _addListener(this, type, listener, true); - }; - -function onceWrapper() { - if (!this.fired) { - this.target.removeListener(this.type, this.wrapFn); - this.fired = true; - switch (arguments.length) { - case 0: - return this.listener.call(this.target); - case 1: - return this.listener.call(this.target, arguments[0]); - case 2: - return this.listener.call(this.target, arguments[0], arguments[1]); - case 3: - return this.listener.call(this.target, arguments[0], arguments[1], - arguments[2]); - default: - var args = new Array(arguments.length); - for (var i = 0; i < args.length; ++i) - args[i] = arguments[i]; - this.listener.apply(this.target, args); - } - } -} - -function _onceWrap(target, type, listener) { - var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener }; - var wrapped = bind.call(onceWrapper, state); - wrapped.listener = listener; - state.wrapFn = wrapped; - return wrapped; -} - -EventEmitter.prototype.once = function once(type, listener) { - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - this.on(type, _onceWrap(this, type, listener)); - return this; -}; - -EventEmitter.prototype.prependOnceListener = - function prependOnceListener(type, listener) { - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - this.prependListener(type, _onceWrap(this, type, listener)); - return this; - }; - -// Emits a 'removeListener' event if and only if the listener was removed. -EventEmitter.prototype.removeListener = - function removeListener(type, listener) { - var list, events, position, i, originalListener; - - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - - events = this._events; - if (!events) - return this; - - list = events[type]; - if (!list) - return this; - - if (list === listener || list.listener === listener) { - if (--this._eventsCount === 0) - this._events = objectCreate(null); - else { - delete events[type]; - if (events.removeListener) - this.emit('removeListener', type, list.listener || listener); - } - } else if (typeof list !== 'function') { - position = -1; - - for (i = list.length - 1; i >= 0; i--) { - if (list[i] === listener || list[i].listener === listener) { - originalListener = list[i].listener; - position = i; - break; - } - } - - if (position < 0) - return this; - - if (position === 0) - list.shift(); - else - spliceOne(list, position); - - if (list.length === 1) - events[type] = list[0]; - - if (events.removeListener) - this.emit('removeListener', type, originalListener || listener); - } - - return this; - }; - -EventEmitter.prototype.removeAllListeners = - function removeAllListeners(type) { - var listeners, events, i; - - events = this._events; - if (!events) - return this; - - // not listening for removeListener, no need to emit - if (!events.removeListener) { - if (arguments.length === 0) { - this._events = objectCreate(null); - this._eventsCount = 0; - } else if (events[type]) { - if (--this._eventsCount === 0) - this._events = objectCreate(null); - else - delete events[type]; - } - return this; - } - - // emit removeListener for all listeners on all events - if (arguments.length === 0) { - var keys = objectKeys(events); - var key; - for (i = 0; i < keys.length; ++i) { - key = keys[i]; - if (key === 'removeListener') continue; - this.removeAllListeners(key); - } - this.removeAllListeners('removeListener'); - this._events = objectCreate(null); - this._eventsCount = 0; - return this; - } - - listeners = events[type]; - - if (typeof listeners === 'function') { - this.removeListener(type, listeners); - } else if (listeners) { - // LIFO order - for (i = listeners.length - 1; i >= 0; i--) { - this.removeListener(type, listeners[i]); - } - } - - return this; - }; - -function _listeners(target, type, unwrap) { - var events = target._events; - - if (!events) - return []; - - var evlistener = events[type]; - if (!evlistener) - return []; - - if (typeof evlistener === 'function') - return unwrap ? [evlistener.listener || evlistener] : [evlistener]; - - return unwrap ? unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length); -} - -EventEmitter.prototype.listeners = function listeners(type) { - return _listeners(this, type, true); -}; - -EventEmitter.prototype.rawListeners = function rawListeners(type) { - return _listeners(this, type, false); -}; - -EventEmitter.listenerCount = function(emitter, type) { - if (typeof emitter.listenerCount === 'function') { - return emitter.listenerCount(type); - } else { - return listenerCount.call(emitter, type); - } -}; - -EventEmitter.prototype.listenerCount = listenerCount; -function listenerCount(type) { - var events = this._events; - - if (events) { - var evlistener = events[type]; - - if (typeof evlistener === 'function') { - return 1; - } else if (evlistener) { - return evlistener.length; - } - } - - return 0; -} - -EventEmitter.prototype.eventNames = function eventNames() { - return this._eventsCount > 0 ? Reflect.ownKeys(this._events) : []; -}; - -// About 1.5x faster than the two-arg version of Array#splice(). -function spliceOne(list, index) { - for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) - list[i] = list[k]; - list.pop(); -} - -function arrayClone(arr, n) { - var copy = new Array(n); - for (var i = 0; i < n; ++i) - copy[i] = arr[i]; - return copy; -} - -function unwrapListeners(arr) { - var ret = new Array(arr.length); - for (var i = 0; i < ret.length; ++i) { - ret[i] = arr[i].listener || arr[i]; - } - return ret; -} - -function objectCreatePolyfill(proto) { - var F = function() {}; - F.prototype = proto; - return new F; -} -function objectKeysPolyfill(obj) { - var keys = []; - for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k)) { - keys.push(k); - } - return k; -} -function functionBindPolyfill(context) { - var fn = this; - return function () { - return fn.apply(context, arguments); - }; -} - -},{}],28:[function(require,module,exports){ -function format(fmt) { - var re = /(%?)(%([jds]))/g - , args = Array.prototype.slice.call(arguments, 1); - if(args.length) { - fmt = fmt.replace(re, function(match, escaped, ptn, flag) { - var arg = args.shift(); - switch(flag) { - case 's': - arg = '' + arg; - break; - case 'd': - arg = Number(arg); - break; - case 'j': - arg = JSON.stringify(arg); - break; - } - if(!escaped) { - return arg; - } - args.unshift(arg); - return match; - }) - } - - // arguments remain after formatting - if(args.length) { - fmt += ' ' + args.join(' '); - } - - // update escaped %% values - fmt = fmt.replace(/%{2,2}/g, '%'); - - return '' + fmt; -} - -module.exports = format; - -},{}],29:[function(require,module,exports){ -var http = require('http') -var url = require('url') - -var https = module.exports - -for (var key in http) { - if (http.hasOwnProperty(key)) https[key] = http[key] -} - -https.request = function (params, cb) { - params = validateParams(params) - return http.request.call(this, params, cb) -} - -https.get = function (params, cb) { - params = validateParams(params) - return http.get.call(this, params, cb) -} - -function validateParams (params) { - if (typeof params === 'string') { - params = url.parse(params) - } - if (!params.protocol) { - params.protocol = 'https:' - } - if (params.protocol !== 'https:') { - throw new Error('Protocol "' + params.protocol + '" not supported. Expected "https:"') - } - return params -} - -},{"http":80,"url":87}],30:[function(require,module,exports){ -exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var nBits = -7 - var i = isLE ? (nBytes - 1) : 0 - var d = isLE ? -1 : 1 - var s = buffer[offset + i] - - i += d - - e = s & ((1 << (-nBits)) - 1) - s >>= (-nBits) - nBits += eLen - for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - m = e & ((1 << (-nBits)) - 1) - e >>= (-nBits) - nBits += mLen - for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - if (e === 0) { - e = 1 - eBias - } else if (e === eMax) { - return m ? NaN : ((s ? -1 : 1) * Infinity) - } else { - m = m + Math.pow(2, mLen) - e = e - eBias - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen) -} - -exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) - var i = isLE ? 0 : (nBytes - 1) - var d = isLE ? 1 : -1 - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 - - value = Math.abs(value) - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0 - e = eMax - } else { - e = Math.floor(Math.log(value) / Math.LN2) - if (value * (c = Math.pow(2, -e)) < 1) { - e-- - c *= 2 - } - if (e + eBias >= 1) { - value += rt / c - } else { - value += rt * Math.pow(2, 1 - eBias) - } - if (value * c >= 2) { - e++ - c /= 2 - } - - if (e + eBias >= eMax) { - m = 0 - e = eMax - } else if (e + eBias >= 1) { - m = ((value * c) - 1) * Math.pow(2, mLen) - e = e + eBias - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) - e = 0 - } - } - - for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} - - e = (e << mLen) | m - eLen += mLen - for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} - - buffer[offset + i - d] |= s * 128 -} - -},{}],31:[function(require,module,exports){ -if (typeof Object.create === 'function') { - // implementation from standard node.js 'util' module - module.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor - ctor.prototype = Object.create(superCtor.prototype, { - constructor: { - value: ctor, - enumerable: false, - writable: true, - configurable: true - } - }); - }; -} else { - // old school shim for old browsers - module.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor - var TempCtor = function () {} - TempCtor.prototype = superCtor.prototype - ctor.prototype = new TempCtor() - ctor.prototype.constructor = ctor - } -} - -},{}],32:[function(require,module,exports){ -/*! - * Determine if an object is a Buffer - * - * @author Feross Aboukhadijeh - * @license MIT - */ - -// The _isBuffer check is for Safari 5-7 support, because it's missing -// Object.prototype.constructor. Remove this eventually -module.exports = function (obj) { - return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer) -} - -function isBuffer (obj) { - return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj) -} - -// For Node v0.10 support. Remove this eventually. -function isSlowBuffer (obj) { - return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0)) -} - -},{}],33:[function(require,module,exports){ -var toString = {}.toString; - -module.exports = Array.isArray || function (arr) { - return toString.call(arr) == '[object Array]'; -}; - -},{}],34:[function(require,module,exports){ -'use strict'; - - -var yaml = require('./lib/js-yaml.js'); - - -module.exports = yaml; - -},{"./lib/js-yaml.js":35}],35:[function(require,module,exports){ -'use strict'; - - -var loader = require('./js-yaml/loader'); -var dumper = require('./js-yaml/dumper'); - - -function deprecated(name) { - return function () { - throw new Error('Function ' + name + ' is deprecated and cannot be used.'); - }; -} - - -module.exports.Type = require('./js-yaml/type'); -module.exports.Schema = require('./js-yaml/schema'); -module.exports.FAILSAFE_SCHEMA = require('./js-yaml/schema/failsafe'); -module.exports.JSON_SCHEMA = require('./js-yaml/schema/json'); -module.exports.CORE_SCHEMA = require('./js-yaml/schema/core'); -module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe'); -module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full'); -module.exports.load = loader.load; -module.exports.loadAll = loader.loadAll; -module.exports.safeLoad = loader.safeLoad; -module.exports.safeLoadAll = loader.safeLoadAll; -module.exports.dump = dumper.dump; -module.exports.safeDump = dumper.safeDump; -module.exports.YAMLException = require('./js-yaml/exception'); - -// Deprecated schema names from JS-YAML 2.0.x -module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe'); -module.exports.SAFE_SCHEMA = require('./js-yaml/schema/default_safe'); -module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full'); - -// Deprecated functions from JS-YAML 1.x.x -module.exports.scan = deprecated('scan'); -module.exports.parse = deprecated('parse'); -module.exports.compose = deprecated('compose'); -module.exports.addConstructor = deprecated('addConstructor'); - -},{"./js-yaml/dumper":37,"./js-yaml/exception":38,"./js-yaml/loader":39,"./js-yaml/schema":41,"./js-yaml/schema/core":42,"./js-yaml/schema/default_full":43,"./js-yaml/schema/default_safe":44,"./js-yaml/schema/failsafe":45,"./js-yaml/schema/json":46,"./js-yaml/type":47}],36:[function(require,module,exports){ -'use strict'; - - -function isNothing(subject) { - return (typeof subject === 'undefined') || (subject === null); -} - - -function isObject(subject) { - return (typeof subject === 'object') && (subject !== null); -} - - -function toArray(sequence) { - if (Array.isArray(sequence)) return sequence; - else if (isNothing(sequence)) return []; - - return [ sequence ]; -} - - -function extend(target, source) { - var index, length, key, sourceKeys; - - if (source) { - sourceKeys = Object.keys(source); - - for (index = 0, length = sourceKeys.length; index < length; index += 1) { - key = sourceKeys[index]; - target[key] = source[key]; - } - } - - return target; -} - - -function repeat(string, count) { - var result = '', cycle; - - for (cycle = 0; cycle < count; cycle += 1) { - result += string; - } - - return result; -} - - -function isNegativeZero(number) { - return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number); -} - - -module.exports.isNothing = isNothing; -module.exports.isObject = isObject; -module.exports.toArray = toArray; -module.exports.repeat = repeat; -module.exports.isNegativeZero = isNegativeZero; -module.exports.extend = extend; - -},{}],37:[function(require,module,exports){ -'use strict'; - -/*eslint-disable no-use-before-define*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var DEFAULT_FULL_SCHEMA = require('./schema/default_full'); -var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe'); - -var _toString = Object.prototype.toString; -var _hasOwnProperty = Object.prototype.hasOwnProperty; - -var CHAR_TAB = 0x09; /* Tab */ -var CHAR_LINE_FEED = 0x0A; /* LF */ -var CHAR_SPACE = 0x20; /* Space */ -var CHAR_EXCLAMATION = 0x21; /* ! */ -var CHAR_DOUBLE_QUOTE = 0x22; /* " */ -var CHAR_SHARP = 0x23; /* # */ -var CHAR_PERCENT = 0x25; /* % */ -var CHAR_AMPERSAND = 0x26; /* & */ -var CHAR_SINGLE_QUOTE = 0x27; /* ' */ -var CHAR_ASTERISK = 0x2A; /* * */ -var CHAR_COMMA = 0x2C; /* , */ -var CHAR_MINUS = 0x2D; /* - */ -var CHAR_COLON = 0x3A; /* : */ -var CHAR_GREATER_THAN = 0x3E; /* > */ -var CHAR_QUESTION = 0x3F; /* ? */ -var CHAR_COMMERCIAL_AT = 0x40; /* @ */ -var CHAR_LEFT_SQUARE_BRACKET = 0x5B; /* [ */ -var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */ -var CHAR_GRAVE_ACCENT = 0x60; /* ` */ -var CHAR_LEFT_CURLY_BRACKET = 0x7B; /* { */ -var CHAR_VERTICAL_LINE = 0x7C; /* | */ -var CHAR_RIGHT_CURLY_BRACKET = 0x7D; /* } */ - -var ESCAPE_SEQUENCES = {}; - -ESCAPE_SEQUENCES[0x00] = '\\0'; -ESCAPE_SEQUENCES[0x07] = '\\a'; -ESCAPE_SEQUENCES[0x08] = '\\b'; -ESCAPE_SEQUENCES[0x09] = '\\t'; -ESCAPE_SEQUENCES[0x0A] = '\\n'; -ESCAPE_SEQUENCES[0x0B] = '\\v'; -ESCAPE_SEQUENCES[0x0C] = '\\f'; -ESCAPE_SEQUENCES[0x0D] = '\\r'; -ESCAPE_SEQUENCES[0x1B] = '\\e'; -ESCAPE_SEQUENCES[0x22] = '\\"'; -ESCAPE_SEQUENCES[0x5C] = '\\\\'; -ESCAPE_SEQUENCES[0x85] = '\\N'; -ESCAPE_SEQUENCES[0xA0] = '\\_'; -ESCAPE_SEQUENCES[0x2028] = '\\L'; -ESCAPE_SEQUENCES[0x2029] = '\\P'; - -var DEPRECATED_BOOLEANS_SYNTAX = [ - 'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON', - 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' -]; - -function compileStyleMap(schema, map) { - var result, keys, index, length, tag, style, type; - - if (map === null) return {}; - - result = {}; - keys = Object.keys(map); - - for (index = 0, length = keys.length; index < length; index += 1) { - tag = keys[index]; - style = String(map[tag]); - - if (tag.slice(0, 2) === '!!') { - tag = 'tag:yaml.org,2002:' + tag.slice(2); - } - type = schema.compiledTypeMap['fallback'][tag]; - - if (type && _hasOwnProperty.call(type.styleAliases, style)) { - style = type.styleAliases[style]; - } - - result[tag] = style; - } - - return result; -} - -function encodeHex(character) { - var string, handle, length; - - string = character.toString(16).toUpperCase(); - - if (character <= 0xFF) { - handle = 'x'; - length = 2; - } else if (character <= 0xFFFF) { - handle = 'u'; - length = 4; - } else if (character <= 0xFFFFFFFF) { - handle = 'U'; - length = 8; - } else { - throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF'); - } - - return '\\' + handle + common.repeat('0', length - string.length) + string; -} - -function State(options) { - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.indent = Math.max(1, (options['indent'] || 2)); - this.noArrayIndent = options['noArrayIndent'] || false; - this.skipInvalid = options['skipInvalid'] || false; - this.flowLevel = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']); - this.styleMap = compileStyleMap(this.schema, options['styles'] || null); - this.sortKeys = options['sortKeys'] || false; - this.lineWidth = options['lineWidth'] || 80; - this.noRefs = options['noRefs'] || false; - this.noCompatMode = options['noCompatMode'] || false; - this.condenseFlow = options['condenseFlow'] || false; - - this.implicitTypes = this.schema.compiledImplicit; - this.explicitTypes = this.schema.compiledExplicit; - - this.tag = null; - this.result = ''; - - this.duplicates = []; - this.usedDuplicates = null; -} - -// Indents every line in a string. Empty lines (\n only) are not indented. -function indentString(string, spaces) { - var ind = common.repeat(' ', spaces), - position = 0, - next = -1, - result = '', - line, - length = string.length; - - while (position < length) { - next = string.indexOf('\n', position); - if (next === -1) { - line = string.slice(position); - position = length; - } else { - line = string.slice(position, next + 1); - position = next + 1; - } - - if (line.length && line !== '\n') result += ind; - - result += line; - } - - return result; -} - -function generateNextLine(state, level) { - return '\n' + common.repeat(' ', state.indent * level); -} - -function testImplicitResolving(state, str) { - var index, length, type; - - for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { - type = state.implicitTypes[index]; - - if (type.resolve(str)) { - return true; - } - } - - return false; -} - -// [33] s-white ::= s-space | s-tab -function isWhitespace(c) { - return c === CHAR_SPACE || c === CHAR_TAB; -} - -// Returns true if the character can be printed without escaping. -// From YAML 1.2: "any allowed characters known to be non-printable -// should also be escaped. [However,] This isn’t mandatory" -// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029. -function isPrintable(c) { - return (0x00020 <= c && c <= 0x00007E) - || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) - || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */) - || (0x10000 <= c && c <= 0x10FFFF); -} - -// Simplified test for values allowed after the first character in plain style. -function isPlainSafe(c) { - // Uses a subset of nb-char - c-flow-indicator - ":" - "#" - // where nb-char ::= c-printable - b-char - c-byte-order-mark. - return isPrintable(c) && c !== 0xFEFF - // - c-flow-indicator - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // - ":" - "#" - && c !== CHAR_COLON - && c !== CHAR_SHARP; -} - -// Simplified test for values allowed as the first character in plain style. -function isPlainSafeFirst(c) { - // Uses a subset of ns-char - c-indicator - // where ns-char = nb-char - s-white. - return isPrintable(c) && c !== 0xFEFF - && !isWhitespace(c) // - s-white - // - (c-indicator ::= - // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” - && c !== CHAR_MINUS - && c !== CHAR_QUESTION - && c !== CHAR_COLON - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “"” - && c !== CHAR_SHARP - && c !== CHAR_AMPERSAND - && c !== CHAR_ASTERISK - && c !== CHAR_EXCLAMATION - && c !== CHAR_VERTICAL_LINE - && c !== CHAR_GREATER_THAN - && c !== CHAR_SINGLE_QUOTE - && c !== CHAR_DOUBLE_QUOTE - // | “%” | “@” | “`”) - && c !== CHAR_PERCENT - && c !== CHAR_COMMERCIAL_AT - && c !== CHAR_GRAVE_ACCENT; -} - -// Determines whether block indentation indicator is required. -function needIndentIndicator(string) { - var leadingSpaceRe = /^\n* /; - return leadingSpaceRe.test(string); -} - -var STYLE_PLAIN = 1, - STYLE_SINGLE = 2, - STYLE_LITERAL = 3, - STYLE_FOLDED = 4, - STYLE_DOUBLE = 5; - -// Determines which scalar styles are possible and returns the preferred style. -// lineWidth = -1 => no limit. -// Pre-conditions: str.length > 0. -// Post-conditions: -// STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. -// STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). -// STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). -function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { - var i; - var char; - var hasLineBreak = false; - var hasFoldableLine = false; // only checked if shouldTrackWidth - var shouldTrackWidth = lineWidth !== -1; - var previousLineBreak = -1; // count the first line correctly - var plain = isPlainSafeFirst(string.charCodeAt(0)) - && !isWhitespace(string.charCodeAt(string.length - 1)); - - if (singleLineOnly) { - // Case: no block styles. - // Check for disallowed characters to rule out plain and single. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - plain = plain && isPlainSafe(char); - } - } else { - // Case: block styles permitted. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (char === CHAR_LINE_FEED) { - hasLineBreak = true; - // Check if any line can be folded. - if (shouldTrackWidth) { - hasFoldableLine = hasFoldableLine || - // Foldable line = too long, and not more-indented. - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' '); - previousLineBreak = i; - } - } else if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - plain = plain && isPlainSafe(char); - } - // in case the end is missing a \n - hasFoldableLine = hasFoldableLine || (shouldTrackWidth && - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' ')); - } - // Although every style can represent \n without escaping, prefer block styles - // for multiline, since they're more readable and they don't add empty lines. - // Also prefer folding a super-long line. - if (!hasLineBreak && !hasFoldableLine) { - // Strings interpretable as another type have to be quoted; - // e.g. the string 'true' vs. the boolean true. - return plain && !testAmbiguousType(string) - ? STYLE_PLAIN : STYLE_SINGLE; - } - // Edge case: block indentation indicator can only have one digit. - if (indentPerLevel > 9 && needIndentIndicator(string)) { - return STYLE_DOUBLE; - } - // At this point we know block styles are valid. - // Prefer literal style unless we want to fold. - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; -} - -// Note: line breaking/folding is implemented for only the folded style. -// NB. We drop the last trailing newline (if any) of a returned block scalar -// since the dumper adds its own newline. This always works: -// • No ending newline => unaffected; already using strip "-" chomping. -// • Ending newline => removed then restored. -// Importantly, this keeps the "+" chomp indicator from gaining an extra line. -function writeScalar(state, string, level, iskey) { - state.dump = (function () { - if (string.length === 0) { - return "''"; - } - if (!state.noCompatMode && - DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { - return "'" + string + "'"; - } - - var indent = state.indent * Math.max(1, level); // no 0-indent scalars - // As indentation gets deeper, let the width decrease monotonically - // to the lower bound min(state.lineWidth, 40). - // Note that this implies - // state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound. - // state.lineWidth > 40 + state.indent: width decreases until the lower bound. - // This behaves better than a constant minimum width which disallows narrower options, - // or an indent threshold which causes the width to suddenly increase. - var lineWidth = state.lineWidth === -1 - ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); - - // Without knowing if keys are implicit/explicit, assume implicit for safety. - var singleLineOnly = iskey - // No block styles in flow mode. - || (state.flowLevel > -1 && level >= state.flowLevel); - function testAmbiguity(string) { - return testImplicitResolving(state, string); - } - - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { - case STYLE_PLAIN: - return string; - case STYLE_SINGLE: - return "'" + string.replace(/'/g, "''") + "'"; - case STYLE_LITERAL: - return '|' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(string, indent)); - case STYLE_FOLDED: - return '>' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); - case STYLE_DOUBLE: - return '"' + escapeString(string, lineWidth) + '"'; - default: - throw new YAMLException('impossible error: invalid scalar style'); - } - }()); -} - -// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9. -function blockHeader(string, indentPerLevel) { - var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ''; - - // note the special case: the string '\n' counts as a "trailing" empty line. - var clip = string[string.length - 1] === '\n'; - var keep = clip && (string[string.length - 2] === '\n' || string === '\n'); - var chomp = keep ? '+' : (clip ? '' : '-'); - - return indentIndicator + chomp + '\n'; -} - -// (See the note for writeScalar.) -function dropEndingNewline(string) { - return string[string.length - 1] === '\n' ? string.slice(0, -1) : string; -} - -// Note: a long line without a suitable break point will exceed the width limit. -// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0. -function foldString(string, width) { - // In folded style, $k$ consecutive newlines output as $k+1$ newlines— - // unless they're before or after a more-indented line, or at the very - // beginning or end, in which case $k$ maps to $k$. - // Therefore, parse each chunk as newline(s) followed by a content line. - var lineRe = /(\n+)([^\n]*)/g; - - // first line (possibly an empty line) - var result = (function () { - var nextLF = string.indexOf('\n'); - nextLF = nextLF !== -1 ? nextLF : string.length; - lineRe.lastIndex = nextLF; - return foldLine(string.slice(0, nextLF), width); - }()); - // If we haven't reached the first content line yet, don't add an extra \n. - var prevMoreIndented = string[0] === '\n' || string[0] === ' '; - var moreIndented; - - // rest of the lines - var match; - while ((match = lineRe.exec(string))) { - var prefix = match[1], line = match[2]; - moreIndented = (line[0] === ' '); - result += prefix - + (!prevMoreIndented && !moreIndented && line !== '' - ? '\n' : '') - + foldLine(line, width); - prevMoreIndented = moreIndented; - } - - return result; -} - -// Greedy line breaking. -// Picks the longest line under the limit each time, -// otherwise settles for the shortest line over the limit. -// NB. More-indented lines *cannot* be folded, as that would add an extra \n. -function foldLine(line, width) { - if (line === '' || line[0] === ' ') return line; - - // Since a more-indented line adds a \n, breaks can't be followed by a space. - var breakRe = / [^ ]/g; // note: the match index will always be <= length-2. - var match; - // start is an inclusive index. end, curr, and next are exclusive. - var start = 0, end, curr = 0, next = 0; - var result = ''; - - // Invariants: 0 <= start <= length-1. - // 0 <= curr <= next <= max(0, length-2). curr - start <= width. - // Inside the loop: - // A match implies length >= 2, so curr and next are <= length-2. - while ((match = breakRe.exec(line))) { - next = match.index; - // maintain invariant: curr - start <= width - if (next - start > width) { - end = (curr > start) ? curr : next; // derive end <= length-2 - result += '\n' + line.slice(start, end); - // skip the space that was output as \n - start = end + 1; // derive start <= length-1 - } - curr = next; - } - - // By the invariants, start <= length-1, so there is something left over. - // It is either the whole string or a part starting from non-whitespace. - result += '\n'; - // Insert a break if the remainder is too long and there is a break available. - if (line.length - start > width && curr > start) { - result += line.slice(start, curr) + '\n' + line.slice(curr + 1); - } else { - result += line.slice(start); - } - - return result.slice(1); // drop extra \n joiner -} - -// Escapes a double-quoted string. -function escapeString(string) { - var result = ''; - var char, nextChar; - var escapeSeq; - - for (var i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates"). - if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) { - nextChar = string.charCodeAt(i + 1); - if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) { - // Combine the surrogate pair and store it escaped. - result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000); - // Advance index one extra since we already used that char here. - i++; continue; - } - } - escapeSeq = ESCAPE_SEQUENCES[char]; - result += !escapeSeq && isPrintable(char) - ? string[i] - : escapeSeq || encodeHex(char); - } - - return result; -} - -function writeFlowSequence(state, level, object) { - var _result = '', - _tag = state.tag, - index, - length; - - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level, object[index], false, false)) { - if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : ''); - _result += state.dump; - } - } - - state.tag = _tag; - state.dump = '[' + _result + ']'; -} - -function writeBlockSequence(state, level, object, compact) { - var _result = '', - _tag = state.tag, - index, - length; - - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level + 1, object[index], true, true)) { - if (!compact || index !== 0) { - _result += generateNextLine(state, level); - } - - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - _result += '-'; - } else { - _result += '- '; - } - - _result += state.dump; - } - } - - state.tag = _tag; - state.dump = _result || '[]'; // Empty sequence if no valid values. -} - -function writeFlowMapping(state, level, object) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - pairBuffer; - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = state.condenseFlow ? '"' : ''; - - if (index !== 0) pairBuffer += ', '; - - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - - if (!writeNode(state, level, objectKey, false, false)) { - continue; // Skip this pair because of invalid key; - } - - if (state.dump.length > 1024) pairBuffer += '? '; - - pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' '); - - if (!writeNode(state, level, objectValue, false, false)) { - continue; // Skip this pair because of invalid value. - } - - pairBuffer += state.dump; - - // Both key and value are valid. - _result += pairBuffer; - } - - state.tag = _tag; - state.dump = '{' + _result + '}'; -} - -function writeBlockMapping(state, level, object, compact) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - explicitPair, - pairBuffer; - - // Allow sorting keys so that the output file is deterministic - if (state.sortKeys === true) { - // Default sorting - objectKeyList.sort(); - } else if (typeof state.sortKeys === 'function') { - // Custom sort function - objectKeyList.sort(state.sortKeys); - } else if (state.sortKeys) { - // Something is wrong - throw new YAMLException('sortKeys must be a boolean or a function'); - } - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ''; - - if (!compact || index !== 0) { - pairBuffer += generateNextLine(state, level); - } - - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - - if (!writeNode(state, level + 1, objectKey, true, true, true)) { - continue; // Skip this pair because of invalid key. - } - - explicitPair = (state.tag !== null && state.tag !== '?') || - (state.dump && state.dump.length > 1024); - - if (explicitPair) { - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += '?'; - } else { - pairBuffer += '? '; - } - } - - pairBuffer += state.dump; - - if (explicitPair) { - pairBuffer += generateNextLine(state, level); - } - - if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { - continue; // Skip this pair because of invalid value. - } - - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += ':'; - } else { - pairBuffer += ': '; - } - - pairBuffer += state.dump; - - // Both key and value are valid. - _result += pairBuffer; - } - - state.tag = _tag; - state.dump = _result || '{}'; // Empty mapping if no valid pairs. -} - -function detectType(state, object, explicit) { - var _result, typeList, index, length, type, style; - - typeList = explicit ? state.explicitTypes : state.implicitTypes; - - for (index = 0, length = typeList.length; index < length; index += 1) { - type = typeList[index]; - - if ((type.instanceOf || type.predicate) && - (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && - (!type.predicate || type.predicate(object))) { - - state.tag = explicit ? type.tag : '?'; - - if (type.represent) { - style = state.styleMap[type.tag] || type.defaultStyle; - - if (_toString.call(type.represent) === '[object Function]') { - _result = type.represent(object, style); - } else if (_hasOwnProperty.call(type.represent, style)) { - _result = type.represent[style](object, style); - } else { - throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style'); - } - - state.dump = _result; - } - - return true; - } - } - - return false; -} - -// Serializes `object` and writes it to global `result`. -// Returns true on success, or false on invalid object. -// -function writeNode(state, level, object, block, compact, iskey) { - state.tag = null; - state.dump = object; - - if (!detectType(state, object, false)) { - detectType(state, object, true); - } - - var type = _toString.call(state.dump); - - if (block) { - block = (state.flowLevel < 0 || state.flowLevel > level); - } - - var objectOrArray = type === '[object Object]' || type === '[object Array]', - duplicateIndex, - duplicate; - - if (objectOrArray) { - duplicateIndex = state.duplicates.indexOf(object); - duplicate = duplicateIndex !== -1; - } - - if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) { - compact = false; - } - - if (duplicate && state.usedDuplicates[duplicateIndex]) { - state.dump = '*ref_' + duplicateIndex; - } else { - if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { - state.usedDuplicates[duplicateIndex] = true; - } - if (type === '[object Object]') { - if (block && (Object.keys(state.dump).length !== 0)) { - writeBlockMapping(state, level, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowMapping(state, level, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object Array]') { - var arrayLevel = (state.noArrayIndent) ? level - 1 : level; - if (block && (state.dump.length !== 0)) { - writeBlockSequence(state, arrayLevel, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowSequence(state, arrayLevel, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object String]') { - if (state.tag !== '?') { - writeScalar(state, state.dump, level, iskey); - } - } else { - if (state.skipInvalid) return false; - throw new YAMLException('unacceptable kind of an object to dump ' + type); - } - - if (state.tag !== null && state.tag !== '?') { - state.dump = '!<' + state.tag + '> ' + state.dump; - } - } - - return true; -} - -function getDuplicateReferences(object, state) { - var objects = [], - duplicatesIndexes = [], - index, - length; - - inspectNode(object, objects, duplicatesIndexes); - - for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { - state.duplicates.push(objects[duplicatesIndexes[index]]); - } - state.usedDuplicates = new Array(length); -} - -function inspectNode(object, objects, duplicatesIndexes) { - var objectKeyList, - index, - length; - - if (object !== null && typeof object === 'object') { - index = objects.indexOf(object); - if (index !== -1) { - if (duplicatesIndexes.indexOf(index) === -1) { - duplicatesIndexes.push(index); - } - } else { - objects.push(object); - - if (Array.isArray(object)) { - for (index = 0, length = object.length; index < length; index += 1) { - inspectNode(object[index], objects, duplicatesIndexes); - } - } else { - objectKeyList = Object.keys(object); - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); - } - } - } - } -} - -function dump(input, options) { - options = options || {}; - - var state = new State(options); - - if (!state.noRefs) getDuplicateReferences(input, state); - - if (writeNode(state, 0, input, true, true)) return state.dump + '\n'; - - return ''; -} - -function safeDump(input, options) { - return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} - -module.exports.dump = dump; -module.exports.safeDump = safeDump; - -},{"./common":36,"./exception":38,"./schema/default_full":43,"./schema/default_safe":44}],38:[function(require,module,exports){ -// YAML error class. http://stackoverflow.com/questions/8458984 -// -'use strict'; - -function YAMLException(reason, mark) { - // Super constructor - Error.call(this); - - this.name = 'YAMLException'; - this.reason = reason; - this.mark = mark; - this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : ''); - - // Include stack trace in error object - if (Error.captureStackTrace) { - // Chrome and NodeJS - Error.captureStackTrace(this, this.constructor); - } else { - // FF, IE 10+ and Safari 6+. Fallback for others - this.stack = (new Error()).stack || ''; - } -} - - -// Inherit from Error -YAMLException.prototype = Object.create(Error.prototype); -YAMLException.prototype.constructor = YAMLException; - - -YAMLException.prototype.toString = function toString(compact) { - var result = this.name + ': '; - - result += this.reason || '(unknown reason)'; - - if (!compact && this.mark) { - result += ' ' + this.mark.toString(); - } - - return result; -}; - - -module.exports = YAMLException; - -},{}],39:[function(require,module,exports){ -'use strict'; - -/*eslint-disable max-len,no-use-before-define*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var Mark = require('./mark'); -var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe'); -var DEFAULT_FULL_SCHEMA = require('./schema/default_full'); - - -var _hasOwnProperty = Object.prototype.hasOwnProperty; - - -var CONTEXT_FLOW_IN = 1; -var CONTEXT_FLOW_OUT = 2; -var CONTEXT_BLOCK_IN = 3; -var CONTEXT_BLOCK_OUT = 4; - - -var CHOMPING_CLIP = 1; -var CHOMPING_STRIP = 2; -var CHOMPING_KEEP = 3; - - -var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; -var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; -var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; -var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; -var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; - - -function is_EOL(c) { - return (c === 0x0A/* LF */) || (c === 0x0D/* CR */); -} - -function is_WHITE_SPACE(c) { - return (c === 0x09/* Tab */) || (c === 0x20/* Space */); -} - -function is_WS_OR_EOL(c) { - return (c === 0x09/* Tab */) || - (c === 0x20/* Space */) || - (c === 0x0A/* LF */) || - (c === 0x0D/* CR */); -} - -function is_FLOW_INDICATOR(c) { - return c === 0x2C/* , */ || - c === 0x5B/* [ */ || - c === 0x5D/* ] */ || - c === 0x7B/* { */ || - c === 0x7D/* } */; -} - -function fromHexCode(c) { - var lc; - - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } - - /*eslint-disable no-bitwise*/ - lc = c | 0x20; - - if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) { - return lc - 0x61 + 10; - } - - return -1; -} - -function escapedHexLen(c) { - if (c === 0x78/* x */) { return 2; } - if (c === 0x75/* u */) { return 4; } - if (c === 0x55/* U */) { return 8; } - return 0; -} - -function fromDecimalCode(c) { - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } - - return -1; -} - -function simpleEscapeSequence(c) { - /* eslint-disable indent */ - return (c === 0x30/* 0 */) ? '\x00' : - (c === 0x61/* a */) ? '\x07' : - (c === 0x62/* b */) ? '\x08' : - (c === 0x74/* t */) ? '\x09' : - (c === 0x09/* Tab */) ? '\x09' : - (c === 0x6E/* n */) ? '\x0A' : - (c === 0x76/* v */) ? '\x0B' : - (c === 0x66/* f */) ? '\x0C' : - (c === 0x72/* r */) ? '\x0D' : - (c === 0x65/* e */) ? '\x1B' : - (c === 0x20/* Space */) ? ' ' : - (c === 0x22/* " */) ? '\x22' : - (c === 0x2F/* / */) ? '/' : - (c === 0x5C/* \ */) ? '\x5C' : - (c === 0x4E/* N */) ? '\x85' : - (c === 0x5F/* _ */) ? '\xA0' : - (c === 0x4C/* L */) ? '\u2028' : - (c === 0x50/* P */) ? '\u2029' : ''; -} - -function charFromCodepoint(c) { - if (c <= 0xFFFF) { - return String.fromCharCode(c); - } - // Encode UTF-16 surrogate pair - // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF - return String.fromCharCode( - ((c - 0x010000) >> 10) + 0xD800, - ((c - 0x010000) & 0x03FF) + 0xDC00 - ); -} - -var simpleEscapeCheck = new Array(256); // integer, for fast access -var simpleEscapeMap = new Array(256); -for (var i = 0; i < 256; i++) { - simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; - simpleEscapeMap[i] = simpleEscapeSequence(i); -} - - -function State(input, options) { - this.input = input; - - this.filename = options['filename'] || null; - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.onWarning = options['onWarning'] || null; - this.legacy = options['legacy'] || false; - this.json = options['json'] || false; - this.listener = options['listener'] || null; - - this.implicitTypes = this.schema.compiledImplicit; - this.typeMap = this.schema.compiledTypeMap; - - this.length = input.length; - this.position = 0; - this.line = 0; - this.lineStart = 0; - this.lineIndent = 0; - - this.documents = []; - - /* - this.version; - this.checkLineBreaks; - this.tagMap; - this.anchorMap; - this.tag; - this.anchor; - this.kind; - this.result;*/ - -} - - -function generateError(state, message) { - return new YAMLException( - message, - new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart))); -} - -function throwError(state, message) { - throw generateError(state, message); -} - -function throwWarning(state, message) { - if (state.onWarning) { - state.onWarning.call(null, generateError(state, message)); - } -} - - -var directiveHandlers = { - - YAML: function handleYamlDirective(state, name, args) { - - var match, major, minor; - - if (state.version !== null) { - throwError(state, 'duplication of %YAML directive'); - } - - if (args.length !== 1) { - throwError(state, 'YAML directive accepts exactly one argument'); - } - - match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]); - - if (match === null) { - throwError(state, 'ill-formed argument of the YAML directive'); - } - - major = parseInt(match[1], 10); - minor = parseInt(match[2], 10); - - if (major !== 1) { - throwError(state, 'unacceptable YAML version of the document'); - } - - state.version = args[0]; - state.checkLineBreaks = (minor < 2); - - if (minor !== 1 && minor !== 2) { - throwWarning(state, 'unsupported YAML version of the document'); - } - }, - - TAG: function handleTagDirective(state, name, args) { - - var handle, prefix; - - if (args.length !== 2) { - throwError(state, 'TAG directive accepts exactly two arguments'); - } - - handle = args[0]; - prefix = args[1]; - - if (!PATTERN_TAG_HANDLE.test(handle)) { - throwError(state, 'ill-formed tag handle (first argument) of the TAG directive'); - } - - if (_hasOwnProperty.call(state.tagMap, handle)) { - throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); - } - - if (!PATTERN_TAG_URI.test(prefix)) { - throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive'); - } - - state.tagMap[handle] = prefix; - } -}; - - -function captureSegment(state, start, end, checkJson) { - var _position, _length, _character, _result; - - if (start < end) { - _result = state.input.slice(start, end); - - if (checkJson) { - for (_position = 0, _length = _result.length; _position < _length; _position += 1) { - _character = _result.charCodeAt(_position); - if (!(_character === 0x09 || - (0x20 <= _character && _character <= 0x10FFFF))) { - throwError(state, 'expected valid JSON character'); - } - } - } else if (PATTERN_NON_PRINTABLE.test(_result)) { - throwError(state, 'the stream contains non-printable characters'); - } - - state.result += _result; - } -} - -function mergeMappings(state, destination, source, overridableKeys) { - var sourceKeys, key, index, quantity; - - if (!common.isObject(source)) { - throwError(state, 'cannot merge mappings; the provided source object is unacceptable'); - } - - sourceKeys = Object.keys(source); - - for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { - key = sourceKeys[index]; - - if (!_hasOwnProperty.call(destination, key)) { - destination[key] = source[key]; - overridableKeys[key] = true; - } - } -} - -function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { - var index, quantity; - - keyNode = String(keyNode); - - if (_result === null) { - _result = {}; - } - - if (keyTag === 'tag:yaml.org,2002:merge') { - if (Array.isArray(valueNode)) { - for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { - mergeMappings(state, _result, valueNode[index], overridableKeys); - } - } else { - mergeMappings(state, _result, valueNode, overridableKeys); - } - } else { - if (!state.json && - !_hasOwnProperty.call(overridableKeys, keyNode) && - _hasOwnProperty.call(_result, keyNode)) { - state.line = startLine || state.line; - state.position = startPos || state.position; - throwError(state, 'duplicated mapping key'); - } - _result[keyNode] = valueNode; - delete overridableKeys[keyNode]; - } - - return _result; -} - -function readLineBreak(state) { - var ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x0A/* LF */) { - state.position++; - } else if (ch === 0x0D/* CR */) { - state.position++; - if (state.input.charCodeAt(state.position) === 0x0A/* LF */) { - state.position++; - } - } else { - throwError(state, 'a line break is expected'); - } - - state.line += 1; - state.lineStart = state.position; -} - -function skipSeparationSpace(state, allowComments, checkIndent) { - var lineBreaks = 0, - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (allowComments && ch === 0x23/* # */) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0); - } - - if (is_EOL(ch)) { - readLineBreak(state); - - ch = state.input.charCodeAt(state.position); - lineBreaks++; - state.lineIndent = 0; - - while (ch === 0x20/* Space */) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - } else { - break; - } - } - - if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { - throwWarning(state, 'deficient indentation'); - } - - return lineBreaks; -} - -function testDocumentSeparator(state) { - var _position = state.position, - ch; - - ch = state.input.charCodeAt(_position); - - // Condition state.position === state.lineStart is tested - // in parent on each call, for efficiency. No needs to test here again. - if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) && - ch === state.input.charCodeAt(_position + 1) && - ch === state.input.charCodeAt(_position + 2)) { - - _position += 3; - - ch = state.input.charCodeAt(_position); - - if (ch === 0 || is_WS_OR_EOL(ch)) { - return true; - } - } - - return false; -} - -function writeFoldedLines(state, count) { - if (count === 1) { - state.result += ' '; - } else if (count > 1) { - state.result += common.repeat('\n', count - 1); - } -} - - -function readPlainScalar(state, nodeIndent, withinFlowCollection) { - var preceding, - following, - captureStart, - captureEnd, - hasPendingContent, - _line, - _lineStart, - _lineIndent, - _kind = state.kind, - _result = state.result, - ch; - - ch = state.input.charCodeAt(state.position); - - if (is_WS_OR_EOL(ch) || - is_FLOW_INDICATOR(ch) || - ch === 0x23/* # */ || - ch === 0x26/* & */ || - ch === 0x2A/* * */ || - ch === 0x21/* ! */ || - ch === 0x7C/* | */ || - ch === 0x3E/* > */ || - ch === 0x27/* ' */ || - ch === 0x22/* " */ || - ch === 0x25/* % */ || - ch === 0x40/* @ */ || - ch === 0x60/* ` */) { - return false; - } - - if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - return false; - } - } - - state.kind = 'scalar'; - state.result = ''; - captureStart = captureEnd = state.position; - hasPendingContent = false; - - while (ch !== 0) { - if (ch === 0x3A/* : */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - break; - } - - } else if (ch === 0x23/* # */) { - preceding = state.input.charCodeAt(state.position - 1); - - if (is_WS_OR_EOL(preceding)) { - break; - } - - } else if ((state.position === state.lineStart && testDocumentSeparator(state)) || - withinFlowCollection && is_FLOW_INDICATOR(ch)) { - break; - - } else if (is_EOL(ch)) { - _line = state.line; - _lineStart = state.lineStart; - _lineIndent = state.lineIndent; - skipSeparationSpace(state, false, -1); - - if (state.lineIndent >= nodeIndent) { - hasPendingContent = true; - ch = state.input.charCodeAt(state.position); - continue; - } else { - state.position = captureEnd; - state.line = _line; - state.lineStart = _lineStart; - state.lineIndent = _lineIndent; - break; - } - } - - if (hasPendingContent) { - captureSegment(state, captureStart, captureEnd, false); - writeFoldedLines(state, state.line - _line); - captureStart = captureEnd = state.position; - hasPendingContent = false; - } - - if (!is_WHITE_SPACE(ch)) { - captureEnd = state.position + 1; - } - - ch = state.input.charCodeAt(++state.position); - } - - captureSegment(state, captureStart, captureEnd, false); - - if (state.result) { - return true; - } - - state.kind = _kind; - state.result = _result; - return false; -} - -function readSingleQuotedScalar(state, nodeIndent) { - var ch, - captureStart, captureEnd; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x27/* ' */) { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x27/* ' */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x27/* ' */) { - captureStart = state.position; - state.position++; - captureEnd = state.position; - } else { - return true; - } - - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a single quoted scalar'); - - } else { - state.position++; - captureEnd = state.position; - } - } - - throwError(state, 'unexpected end of the stream within a single quoted scalar'); -} - -function readDoubleQuotedScalar(state, nodeIndent) { - var captureStart, - captureEnd, - hexLength, - hexResult, - tmp, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x22/* " */) { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x22/* " */) { - captureSegment(state, captureStart, state.position, true); - state.position++; - return true; - - } else if (ch === 0x5C/* \ */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - - if (is_EOL(ch)) { - skipSeparationSpace(state, false, nodeIndent); - - // TODO: rework to inline fn with no type cast? - } else if (ch < 256 && simpleEscapeCheck[ch]) { - state.result += simpleEscapeMap[ch]; - state.position++; - - } else if ((tmp = escapedHexLen(ch)) > 0) { - hexLength = tmp; - hexResult = 0; - - for (; hexLength > 0; hexLength--) { - ch = state.input.charCodeAt(++state.position); - - if ((tmp = fromHexCode(ch)) >= 0) { - hexResult = (hexResult << 4) + tmp; - - } else { - throwError(state, 'expected hexadecimal character'); - } - } - - state.result += charFromCodepoint(hexResult); - - state.position++; - - } else { - throwError(state, 'unknown escape sequence'); - } - - captureStart = captureEnd = state.position; - - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a double quoted scalar'); - - } else { - state.position++; - captureEnd = state.position; - } - } - - throwError(state, 'unexpected end of the stream within a double quoted scalar'); -} - -function readFlowCollection(state, nodeIndent) { - var readNext = true, - _line, - _tag = state.tag, - _result, - _anchor = state.anchor, - following, - terminator, - isPair, - isExplicitPair, - isMapping, - overridableKeys = {}, - keyNode, - keyTag, - valueNode, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x5B/* [ */) { - terminator = 0x5D;/* ] */ - isMapping = false; - _result = []; - } else if (ch === 0x7B/* { */) { - terminator = 0x7D;/* } */ - isMapping = true; - _result = {}; - } else { - return false; - } - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(++state.position); - - while (ch !== 0) { - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if (ch === terminator) { - state.position++; - state.tag = _tag; - state.anchor = _anchor; - state.kind = isMapping ? 'mapping' : 'sequence'; - state.result = _result; - return true; - } else if (!readNext) { - throwError(state, 'missed comma between flow collection entries'); - } - - keyTag = keyNode = valueNode = null; - isPair = isExplicitPair = false; - - if (ch === 0x3F/* ? */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following)) { - isPair = isExplicitPair = true; - state.position++; - skipSeparationSpace(state, true, nodeIndent); - } - } - - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - keyTag = state.tag; - keyNode = state.result; - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) { - isPair = true; - ch = state.input.charCodeAt(++state.position); - skipSeparationSpace(state, true, nodeIndent); - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - valueNode = state.result; - } - - if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); - } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); - } else { - _result.push(keyNode); - } - - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x2C/* , */) { - readNext = true; - ch = state.input.charCodeAt(++state.position); - } else { - readNext = false; - } - } - - throwError(state, 'unexpected end of the stream within a flow collection'); -} - -function readBlockScalar(state, nodeIndent) { - var captureStart, - folding, - chomping = CHOMPING_CLIP, - didReadContent = false, - detectedIndent = false, - textIndent = nodeIndent, - emptyLines = 0, - atMoreIndented = false, - tmp, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x7C/* | */) { - folding = false; - } else if (ch === 0x3E/* > */) { - folding = true; - } else { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - - while (ch !== 0) { - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x2B/* + */ || ch === 0x2D/* - */) { - if (CHOMPING_CLIP === chomping) { - chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP; - } else { - throwError(state, 'repeat of a chomping mode identifier'); - } - - } else if ((tmp = fromDecimalCode(ch)) >= 0) { - if (tmp === 0) { - throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one'); - } else if (!detectedIndent) { - textIndent = nodeIndent + tmp - 1; - detectedIndent = true; - } else { - throwError(state, 'repeat of an indentation width identifier'); - } - - } else { - break; - } - } - - if (is_WHITE_SPACE(ch)) { - do { ch = state.input.charCodeAt(++state.position); } - while (is_WHITE_SPACE(ch)); - - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (!is_EOL(ch) && (ch !== 0)); - } - } - - while (ch !== 0) { - readLineBreak(state); - state.lineIndent = 0; - - ch = state.input.charCodeAt(state.position); - - while ((!detectedIndent || state.lineIndent < textIndent) && - (ch === 0x20/* Space */)) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - - if (!detectedIndent && state.lineIndent > textIndent) { - textIndent = state.lineIndent; - } - - if (is_EOL(ch)) { - emptyLines++; - continue; - } - - // End of the scalar. - if (state.lineIndent < textIndent) { - - // Perform the chomping. - if (chomping === CHOMPING_KEEP) { - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } else if (chomping === CHOMPING_CLIP) { - if (didReadContent) { // i.e. only if the scalar is not empty. - state.result += '\n'; - } - } - - // Break this `while` cycle and go to the funciton's epilogue. - break; - } - - // Folded style: use fancy rules to handle line breaks. - if (folding) { - - // Lines starting with white space characters (more-indented lines) are not folded. - if (is_WHITE_SPACE(ch)) { - atMoreIndented = true; - // except for the first content line (cf. Example 8.1) - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - - // End of more-indented block. - } else if (atMoreIndented) { - atMoreIndented = false; - state.result += common.repeat('\n', emptyLines + 1); - - // Just one line break - perceive as the same line. - } else if (emptyLines === 0) { - if (didReadContent) { // i.e. only if we have already read some scalar content. - state.result += ' '; - } - - // Several line breaks - perceive as different lines. - } else { - state.result += common.repeat('\n', emptyLines); - } - - // Literal style: just add exact number of line breaks between content lines. - } else { - // Keep all line breaks except the header line break. - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } - - didReadContent = true; - detectedIndent = true; - emptyLines = 0; - captureStart = state.position; - - while (!is_EOL(ch) && (ch !== 0)) { - ch = state.input.charCodeAt(++state.position); - } - - captureSegment(state, captureStart, state.position, false); - } - - return true; -} - -function readBlockSequence(state, nodeIndent) { - var _line, - _tag = state.tag, - _anchor = state.anchor, - _result = [], - following, - detected = false, - ch; - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - - if (ch !== 0x2D/* - */) { - break; - } - - following = state.input.charCodeAt(state.position + 1); - - if (!is_WS_OR_EOL(following)) { - break; - } - - detected = true; - state.position++; - - if (skipSeparationSpace(state, true, -1)) { - if (state.lineIndent <= nodeIndent) { - _result.push(null); - ch = state.input.charCodeAt(state.position); - continue; - } - } - - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); - _result.push(state.result); - skipSeparationSpace(state, true, -1); - - ch = state.input.charCodeAt(state.position); - - if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { - throwError(state, 'bad indentation of a sequence entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'sequence'; - state.result = _result; - return true; - } - return false; -} - -function readBlockMapping(state, nodeIndent, flowIndent) { - var following, - allowCompact, - _line, - _pos, - _tag = state.tag, - _anchor = state.anchor, - _result = {}, - overridableKeys = {}, - keyTag = null, - keyNode = null, - valueNode = null, - atExplicitKey = false, - detected = false, - ch; - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - following = state.input.charCodeAt(state.position + 1); - _line = state.line; // Save the current line. - _pos = state.position; - - // - // Explicit notation case. There are two separate blocks: - // first for the key (denoted by "?") and second for the value (denoted by ":") - // - if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) { - - if (ch === 0x3F/* ? */) { - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } - - detected = true; - atExplicitKey = true; - allowCompact = true; - - } else if (atExplicitKey) { - // i.e. 0x3A/* : */ === character after the explicit key. - atExplicitKey = false; - allowCompact = true; - - } else { - throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line'); - } - - state.position += 1; - ch = following; - - // - // Implicit notation case. Flow-style node as the key first, then ":", and the value. - // - } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - - if (state.line === _line) { - ch = state.input.charCodeAt(state.position); - - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (ch === 0x3A/* : */) { - ch = state.input.charCodeAt(++state.position); - - if (!is_WS_OR_EOL(ch)) { - throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping'); - } - - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } - - detected = true; - atExplicitKey = false; - allowCompact = false; - keyTag = state.tag; - keyNode = state.result; - - } else if (detected) { - throwError(state, 'can not read an implicit mapping pair; a colon is missed'); - - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } - - } else if (detected) { - throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key'); - - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } - - } else { - break; // Reading is done. Go to the epilogue. - } - - // - // Common reading code for both explicit and implicit notations. - // - if (state.line === _line || state.lineIndent > nodeIndent) { - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { - if (atExplicitKey) { - keyNode = state.result; - } else { - valueNode = state.result; - } - } - - if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); - keyTag = keyNode = valueNode = null; - } - - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - } - - if (state.lineIndent > nodeIndent && (ch !== 0)) { - throwError(state, 'bad indentation of a mapping entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - - // - // Epilogue. - // - - // Special case: last mapping's node contains only the key in explicit notation. - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - } - - // Expose the resulting mapping. - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'mapping'; - state.result = _result; - } - - return detected; -} - -function readTagProperty(state) { - var _position, - isVerbatim = false, - isNamed = false, - tagHandle, - tagName, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x21/* ! */) return false; - - if (state.tag !== null) { - throwError(state, 'duplication of a tag property'); - } - - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x3C/* < */) { - isVerbatim = true; - ch = state.input.charCodeAt(++state.position); - - } else if (ch === 0x21/* ! */) { - isNamed = true; - tagHandle = '!!'; - ch = state.input.charCodeAt(++state.position); - - } else { - tagHandle = '!'; - } - - _position = state.position; - - if (isVerbatim) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && ch !== 0x3E/* > */); - - if (state.position < state.length) { - tagName = state.input.slice(_position, state.position); - ch = state.input.charCodeAt(++state.position); - } else { - throwError(state, 'unexpected end of the stream within a verbatim tag'); - } - } else { - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - - if (ch === 0x21/* ! */) { - if (!isNamed) { - tagHandle = state.input.slice(_position - 1, state.position + 1); - - if (!PATTERN_TAG_HANDLE.test(tagHandle)) { - throwError(state, 'named tag handle cannot contain such characters'); - } - - isNamed = true; - _position = state.position + 1; - } else { - throwError(state, 'tag suffix cannot contain exclamation marks'); - } - } - - ch = state.input.charCodeAt(++state.position); - } - - tagName = state.input.slice(_position, state.position); - - if (PATTERN_FLOW_INDICATORS.test(tagName)) { - throwError(state, 'tag suffix cannot contain flow indicator characters'); - } - } - - if (tagName && !PATTERN_TAG_URI.test(tagName)) { - throwError(state, 'tag name cannot contain such characters: ' + tagName); - } - - if (isVerbatim) { - state.tag = tagName; - - } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { - state.tag = state.tagMap[tagHandle] + tagName; - - } else if (tagHandle === '!') { - state.tag = '!' + tagName; - - } else if (tagHandle === '!!') { - state.tag = 'tag:yaml.org,2002:' + tagName; - - } else { - throwError(state, 'undeclared tag handle "' + tagHandle + '"'); - } - - return true; -} - -function readAnchorProperty(state) { - var _position, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x26/* & */) return false; - - if (state.anchor !== null) { - throwError(state, 'duplication of an anchor property'); - } - - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (state.position === _position) { - throwError(state, 'name of an anchor node must contain at least one character'); - } - - state.anchor = state.input.slice(_position, state.position); - return true; -} - -function readAlias(state) { - var _position, alias, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x2A/* * */) return false; - - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (state.position === _position) { - throwError(state, 'name of an alias node must contain at least one character'); - } - - alias = state.input.slice(_position, state.position); - - if (!state.anchorMap.hasOwnProperty(alias)) { - throwError(state, 'unidentified alias "' + alias + '"'); - } - - state.result = state.anchorMap[alias]; - skipSeparationSpace(state, true, -1); - return true; -} - -function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { - var allowBlockStyles, - allowBlockScalars, - allowBlockCollections, - indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } - } - - if (indentStatus === 1) { - while (readTagProperty(state) || readAnchorProperty(state)) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - allowBlockCollections = allowBlockStyles; - - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } else { - allowBlockCollections = false; - } - } - } - - if (allowBlockCollections) { - allowBlockCollections = atNewLine || allowCompact; - } - - if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { - if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { - flowIndent = parentIndent; - } else { - flowIndent = parentIndent + 1; - } - - blockIndent = state.position - state.lineStart; - - if (indentStatus === 1) { - if (allowBlockCollections && - (readBlockSequence(state, blockIndent) || - readBlockMapping(state, blockIndent, flowIndent)) || - readFlowCollection(state, flowIndent)) { - hasContent = true; - } else { - if ((allowBlockScalars && readBlockScalar(state, flowIndent)) || - readSingleQuotedScalar(state, flowIndent) || - readDoubleQuotedScalar(state, flowIndent)) { - hasContent = true; - - } else if (readAlias(state)) { - hasContent = true; - - if (state.tag !== null || state.anchor !== null) { - throwError(state, 'alias node should not have any properties'); - } - - } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { - hasContent = true; - - if (state.tag === null) { - state.tag = '?'; - } - } - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else if (indentStatus === 0) { - // Special case: block sequences are allowed to have same indentation level as the parent. - // http://www.yaml.org/spec/1.2/spec.html#id2799784 - hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); - } - } - - if (state.tag !== null && state.tag !== '!') { - if (state.tag === '?') { - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; - - // Implicit resolving is not allowed for non-scalar types, and '?' - // non-specific tag is only assigned to plain scalars. So, it isn't - // needed to check for 'kind' conformity. - - if (type.resolve(state.result)) { // `state.result` updated in resolver if matched - state.result = type.construct(state.result); - state.tag = type.tag; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - break; - } - } - } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { - type = state.typeMap[state.kind || 'fallback'][state.tag]; - - if (state.result !== null && type.kind !== state.kind) { - throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); - } - - if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched - throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); - } else { - state.result = type.construct(state.result); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else { - throwError(state, 'unknown tag !<' + state.tag + '>'); - } - } - - if (state.listener !== null) { - state.listener('close', state); - } - return state.tag !== null || state.anchor !== null || hasContent; -} - -function readDocument(state) { - var documentStart = state.position, - _position, - directiveName, - directiveArgs, - hasDirectives = false, - ch; - - state.version = null; - state.checkLineBreaks = state.legacy; - state.tagMap = {}; - state.anchorMap = {}; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - skipSeparationSpace(state, true, -1); - - ch = state.input.charCodeAt(state.position); - - if (state.lineIndent > 0 || ch !== 0x25/* % */) { - break; - } - - hasDirectives = true; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - directiveName = state.input.slice(_position, state.position); - directiveArgs = []; - - if (directiveName.length < 1) { - throwError(state, 'directive name must not be less than one character in length'); - } - - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && !is_EOL(ch)); - break; - } - - if (is_EOL(ch)) break; - - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - directiveArgs.push(state.input.slice(_position, state.position)); - } - - if (ch !== 0) readLineBreak(state); - - if (_hasOwnProperty.call(directiveHandlers, directiveName)) { - directiveHandlers[directiveName](state, directiveName, directiveArgs); - } else { - throwWarning(state, 'unknown document directive "' + directiveName + '"'); - } - } - - skipSeparationSpace(state, true, -1); - - if (state.lineIndent === 0 && - state.input.charCodeAt(state.position) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 1) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 2) === 0x2D/* - */) { - state.position += 3; - skipSeparationSpace(state, true, -1); - - } else if (hasDirectives) { - throwError(state, 'directives end mark is expected'); - } - - composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); - skipSeparationSpace(state, true, -1); - - if (state.checkLineBreaks && - PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { - throwWarning(state, 'non-ASCII line breaks are interpreted as content'); - } - - state.documents.push(state.result); - - if (state.position === state.lineStart && testDocumentSeparator(state)) { - - if (state.input.charCodeAt(state.position) === 0x2E/* . */) { - state.position += 3; - skipSeparationSpace(state, true, -1); - } - return; - } - - if (state.position < (state.length - 1)) { - throwError(state, 'end of the stream or a document separator is expected'); - } else { - return; - } -} - - -function loadDocuments(input, options) { - input = String(input); - options = options || {}; - - if (input.length !== 0) { - - // Add tailing `\n` if not exists - if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ && - input.charCodeAt(input.length - 1) !== 0x0D/* CR */) { - input += '\n'; - } - - // Strip BOM - if (input.charCodeAt(0) === 0xFEFF) { - input = input.slice(1); - } - } - - var state = new State(input, options); - - // Use 0 as string terminator. That significantly simplifies bounds check. - state.input += '\0'; - - while (state.input.charCodeAt(state.position) === 0x20/* Space */) { - state.lineIndent += 1; - state.position += 1; - } - - while (state.position < (state.length - 1)) { - readDocument(state); - } - - return state.documents; -} - - -function loadAll(input, iterator, options) { - var documents = loadDocuments(input, options), index, length; - - if (typeof iterator !== 'function') { - return documents; - } - - for (index = 0, length = documents.length; index < length; index += 1) { - iterator(documents[index]); - } -} - - -function load(input, options) { - var documents = loadDocuments(input, options); - - if (documents.length === 0) { - /*eslint-disable no-undefined*/ - return undefined; - } else if (documents.length === 1) { - return documents[0]; - } - throw new YAMLException('expected a single document in the stream, but found more'); -} - - -function safeLoadAll(input, output, options) { - if (typeof output === 'function') { - loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); - } else { - return loadAll(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); - } -} - - -function safeLoad(input, options) { - return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} - - -module.exports.loadAll = loadAll; -module.exports.load = load; -module.exports.safeLoadAll = safeLoadAll; -module.exports.safeLoad = safeLoad; - -},{"./common":36,"./exception":38,"./mark":40,"./schema/default_full":43,"./schema/default_safe":44}],40:[function(require,module,exports){ -'use strict'; - - -var common = require('./common'); - - -function Mark(name, buffer, position, line, column) { - this.name = name; - this.buffer = buffer; - this.position = position; - this.line = line; - this.column = column; -} - - -Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { - var head, start, tail, end, snippet; - - if (!this.buffer) return null; - - indent = indent || 4; - maxLength = maxLength || 75; - - head = ''; - start = this.position; - - while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) { - start -= 1; - if (this.position - start > (maxLength / 2 - 1)) { - head = ' ... '; - start += 5; - break; - } - } - - tail = ''; - end = this.position; - - while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) { - end += 1; - if (end - this.position > (maxLength / 2 - 1)) { - tail = ' ... '; - end -= 5; - break; - } - } - - snippet = this.buffer.slice(start, end); - - return common.repeat(' ', indent) + head + snippet + tail + '\n' + - common.repeat(' ', indent + this.position - start + head.length) + '^'; -}; - - -Mark.prototype.toString = function toString(compact) { - var snippet, where = ''; - - if (this.name) { - where += 'in "' + this.name + '" '; - } - - where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1); - - if (!compact) { - snippet = this.getSnippet(); - - if (snippet) { - where += ':\n' + snippet; - } - } - - return where; -}; - - -module.exports = Mark; - -},{"./common":36}],41:[function(require,module,exports){ -'use strict'; - -/*eslint-disable max-len*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var Type = require('./type'); - - -function compileList(schema, name, result) { - var exclude = []; - - schema.include.forEach(function (includedSchema) { - result = compileList(includedSchema, name, result); - }); - - schema[name].forEach(function (currentType) { - result.forEach(function (previousType, previousIndex) { - if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { - exclude.push(previousIndex); - } - }); - - result.push(currentType); - }); - - return result.filter(function (type, index) { - return exclude.indexOf(index) === -1; - }); -} - - -function compileMap(/* lists... */) { - var result = { - scalar: {}, - sequence: {}, - mapping: {}, - fallback: {} - }, index, length; - - function collectType(type) { - result[type.kind][type.tag] = result['fallback'][type.tag] = type; - } - - for (index = 0, length = arguments.length; index < length; index += 1) { - arguments[index].forEach(collectType); - } - return result; -} - - -function Schema(definition) { - this.include = definition.include || []; - this.implicit = definition.implicit || []; - this.explicit = definition.explicit || []; - - this.implicit.forEach(function (type) { - if (type.loadKind && type.loadKind !== 'scalar') { - throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); - } - }); - - this.compiledImplicit = compileList(this, 'implicit', []); - this.compiledExplicit = compileList(this, 'explicit', []); - this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); -} - - -Schema.DEFAULT = null; - - -Schema.create = function createSchema() { - var schemas, types; - - switch (arguments.length) { - case 1: - schemas = Schema.DEFAULT; - types = arguments[0]; - break; - - case 2: - schemas = arguments[0]; - types = arguments[1]; - break; - - default: - throw new YAMLException('Wrong number of arguments for Schema.create function'); - } - - schemas = common.toArray(schemas); - types = common.toArray(types); - - if (!schemas.every(function (schema) { return schema instanceof Schema; })) { - throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.'); - } - - if (!types.every(function (type) { return type instanceof Type; })) { - throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); - } - - return new Schema({ - include: schemas, - explicit: types - }); -}; - - -module.exports = Schema; - -},{"./common":36,"./exception":38,"./type":47}],42:[function(require,module,exports){ -// Standard YAML's Core schema. -// http://www.yaml.org/spec/1.2/spec.html#id2804923 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, Core schema has no distinctions from JSON schema is JS-YAML. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./json') - ] -}); - -},{"../schema":41,"./json":46}],43:[function(require,module,exports){ -// JS-YAML's default schema for `load` function. -// It is not described in the YAML specification. -// -// This schema is based on JS-YAML's default safe schema and includes -// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function. -// -// Also this schema is used as default base schema at `Schema.create` function. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = Schema.DEFAULT = new Schema({ - include: [ - require('./default_safe') - ], - explicit: [ - require('../type/js/undefined'), - require('../type/js/regexp'), - require('../type/js/function') - ] -}); - -},{"../schema":41,"../type/js/function":52,"../type/js/regexp":53,"../type/js/undefined":54,"./default_safe":44}],44:[function(require,module,exports){ -// JS-YAML's default schema for `safeLoad` function. -// It is not described in the YAML specification. -// -// This schema is based on standard YAML's Core schema and includes most of -// extra types described at YAML tag repository. (http://yaml.org/type/) - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./core') - ], - implicit: [ - require('../type/timestamp'), - require('../type/merge') - ], - explicit: [ - require('../type/binary'), - require('../type/omap'), - require('../type/pairs'), - require('../type/set') - ] -}); - -},{"../schema":41,"../type/binary":48,"../type/merge":56,"../type/omap":58,"../type/pairs":59,"../type/set":61,"../type/timestamp":63,"./core":42}],45:[function(require,module,exports){ -// Standard YAML's Failsafe schema. -// http://www.yaml.org/spec/1.2/spec.html#id2802346 - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - explicit: [ - require('../type/str'), - require('../type/seq'), - require('../type/map') - ] -}); - -},{"../schema":41,"../type/map":55,"../type/seq":60,"../type/str":62}],46:[function(require,module,exports){ -// Standard YAML's JSON schema. -// http://www.yaml.org/spec/1.2/spec.html#id2803231 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, this schema is not such strict as defined in the YAML specification. -// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./failsafe') - ], - implicit: [ - require('../type/null'), - require('../type/bool'), - require('../type/int'), - require('../type/float') - ] -}); - -},{"../schema":41,"../type/bool":49,"../type/float":50,"../type/int":51,"../type/null":57,"./failsafe":45}],47:[function(require,module,exports){ -'use strict'; - -var YAMLException = require('./exception'); - -var TYPE_CONSTRUCTOR_OPTIONS = [ - 'kind', - 'resolve', - 'construct', - 'instanceOf', - 'predicate', - 'represent', - 'defaultStyle', - 'styleAliases' -]; - -var YAML_NODE_KINDS = [ - 'scalar', - 'sequence', - 'mapping' -]; - -function compileStyleAliases(map) { - var result = {}; - - if (map !== null) { - Object.keys(map).forEach(function (style) { - map[style].forEach(function (alias) { - result[String(alias)] = style; - }); - }); - } - - return result; -} - -function Type(tag, options) { - options = options || {}; - - Object.keys(options).forEach(function (name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); - } - }); - - // TODO: Add tag format check. - this.tag = tag; - this.kind = options['kind'] || null; - this.resolve = options['resolve'] || function () { return true; }; - this.construct = options['construct'] || function (data) { return data; }; - this.instanceOf = options['instanceOf'] || null; - this.predicate = options['predicate'] || null; - this.represent = options['represent'] || null; - this.defaultStyle = options['defaultStyle'] || null; - this.styleAliases = compileStyleAliases(options['styleAliases'] || null); - - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); - } -} - -module.exports = Type; - -},{"./exception":38}],48:[function(require,module,exports){ -'use strict'; - -/*eslint-disable no-bitwise*/ - -var NodeBuffer; - -try { - // A trick for browserified version, to not include `Buffer` shim - var _require = require; - NodeBuffer = _require('buffer').Buffer; -} catch (__) {} - -var Type = require('../type'); - - -// [ 64, 65, 66 ] -> [ padding, CR, LF ] -var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; - - -function resolveYamlBinary(data) { - if (data === null) return false; - - var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; - - // Convert one by one. - for (idx = 0; idx < max; idx++) { - code = map.indexOf(data.charAt(idx)); - - // Skip CR/LF - if (code > 64) continue; - - // Fail on illegal characters - if (code < 0) return false; - - bitlen += 6; - } - - // If there are any bits left, source was corrupted - return (bitlen % 8) === 0; -} - -function constructYamlBinary(data) { - var idx, tailbits, - input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan - max = input.length, - map = BASE64_MAP, - bits = 0, - result = []; - - // Collect by 6*4 bits (3 bytes) - - for (idx = 0; idx < max; idx++) { - if ((idx % 4 === 0) && idx) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); - } - - bits = (bits << 6) | map.indexOf(input.charAt(idx)); - } - - // Dump tail - - tailbits = (max % 4) * 6; - - if (tailbits === 0) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); - } else if (tailbits === 18) { - result.push((bits >> 10) & 0xFF); - result.push((bits >> 2) & 0xFF); - } else if (tailbits === 12) { - result.push((bits >> 4) & 0xFF); - } - - // Wrap into Buffer for NodeJS and leave Array for browser - if (NodeBuffer) { - // Support node 6.+ Buffer API when available - return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); - } - - return result; -} - -function representYamlBinary(object /*, style*/) { - var result = '', bits = 0, idx, tail, - max = object.length, - map = BASE64_MAP; - - // Convert every three bytes to 4 ASCII characters. - - for (idx = 0; idx < max; idx++) { - if ((idx % 3 === 0) && idx) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; - } - - bits = (bits << 8) + object[idx]; - } - - // Dump tail - - tail = max % 3; - - if (tail === 0) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; - } else if (tail === 2) { - result += map[(bits >> 10) & 0x3F]; - result += map[(bits >> 4) & 0x3F]; - result += map[(bits << 2) & 0x3F]; - result += map[64]; - } else if (tail === 1) { - result += map[(bits >> 2) & 0x3F]; - result += map[(bits << 4) & 0x3F]; - result += map[64]; - result += map[64]; - } - - return result; -} - -function isBinary(object) { - return NodeBuffer && NodeBuffer.isBuffer(object); -} - -module.exports = new Type('tag:yaml.org,2002:binary', { - kind: 'scalar', - resolve: resolveYamlBinary, - construct: constructYamlBinary, - predicate: isBinary, - represent: representYamlBinary -}); - -},{"../type":47}],49:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlBoolean(data) { - if (data === null) return false; - - var max = data.length; - - return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) || - (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE')); -} - -function constructYamlBoolean(data) { - return data === 'true' || - data === 'True' || - data === 'TRUE'; -} - -function isBoolean(object) { - return Object.prototype.toString.call(object) === '[object Boolean]'; -} - -module.exports = new Type('tag:yaml.org,2002:bool', { - kind: 'scalar', - resolve: resolveYamlBoolean, - construct: constructYamlBoolean, - predicate: isBoolean, - represent: { - lowercase: function (object) { return object ? 'true' : 'false'; }, - uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; }, - camelcase: function (object) { return object ? 'True' : 'False'; } - }, - defaultStyle: 'lowercase' -}); - -},{"../type":47}],50:[function(require,module,exports){ -'use strict'; - -var common = require('../common'); -var Type = require('../type'); - -var YAML_FLOAT_PATTERN = new RegExp( - // 2.5e4, 2.5 and integers - '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + - // .2e4, .2 - // special case, seems not from spec - '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + - // 20:59 - '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' + - // .inf - '|[-+]?\\.(?:inf|Inf|INF)' + - // .nan - '|\\.(?:nan|NaN|NAN))$'); - -function resolveYamlFloat(data) { - if (data === null) return false; - - if (!YAML_FLOAT_PATTERN.test(data) || - // Quick hack to not allow integers end with `_` - // Probably should update regexp & check speed - data[data.length - 1] === '_') { - return false; - } - - return true; -} - -function constructYamlFloat(data) { - var value, sign, base, digits; - - value = data.replace(/_/g, '').toLowerCase(); - sign = value[0] === '-' ? -1 : 1; - digits = []; - - if ('+-'.indexOf(value[0]) >= 0) { - value = value.slice(1); - } - - if (value === '.inf') { - return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; - - } else if (value === '.nan') { - return NaN; - - } else if (value.indexOf(':') >= 0) { - value.split(':').forEach(function (v) { - digits.unshift(parseFloat(v, 10)); - }); - - value = 0.0; - base = 1; - - digits.forEach(function (d) { - value += d * base; - base *= 60; - }); - - return sign * value; - - } - return sign * parseFloat(value, 10); -} - - -var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; - -function representYamlFloat(object, style) { - var res; - - if (isNaN(object)) { - switch (style) { - case 'lowercase': return '.nan'; - case 'uppercase': return '.NAN'; - case 'camelcase': return '.NaN'; - } - } else if (Number.POSITIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '.inf'; - case 'uppercase': return '.INF'; - case 'camelcase': return '.Inf'; - } - } else if (Number.NEGATIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '-.inf'; - case 'uppercase': return '-.INF'; - case 'camelcase': return '-.Inf'; - } - } else if (common.isNegativeZero(object)) { - return '-0.0'; - } - - res = object.toString(10); - - // JS stringifier can build scientific format without dots: 5e-100, - // while YAML requres dot: 5.e-100. Fix it with simple hack - - return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res; -} - -function isFloat(object) { - return (Object.prototype.toString.call(object) === '[object Number]') && - (object % 1 !== 0 || common.isNegativeZero(object)); -} - -module.exports = new Type('tag:yaml.org,2002:float', { - kind: 'scalar', - resolve: resolveYamlFloat, - construct: constructYamlFloat, - predicate: isFloat, - represent: representYamlFloat, - defaultStyle: 'lowercase' -}); - -},{"../common":36,"../type":47}],51:[function(require,module,exports){ -'use strict'; - -var common = require('../common'); -var Type = require('../type'); - -function isHexCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || - ((0x41/* A */ <= c) && (c <= 0x46/* F */)) || - ((0x61/* a */ <= c) && (c <= 0x66/* f */)); -} - -function isOctCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */)); -} - -function isDecCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)); -} - -function resolveYamlInteger(data) { - if (data === null) return false; - - var max = data.length, - index = 0, - hasDigits = false, - ch; - - if (!max) return false; - - ch = data[index]; - - // sign - if (ch === '-' || ch === '+') { - ch = data[++index]; - } - - if (ch === '0') { - // 0 - if (index + 1 === max) return true; - ch = data[++index]; - - // base 2, base 8, base 16 - - if (ch === 'b') { - // base 2 - index++; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch !== '0' && ch !== '1') return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - - if (ch === 'x') { - // base 16 - index++; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isHexCode(data.charCodeAt(index))) return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - // base 8 - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isOctCode(data.charCodeAt(index))) return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - // base 10 (except 0) or base 60 - - // value should not start with `_`; - if (ch === '_') return false; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch === ':') break; - if (!isDecCode(data.charCodeAt(index))) { - return false; - } - hasDigits = true; - } - - // Should have digits and should not end with `_` - if (!hasDigits || ch === '_') return false; - - // if !base60 - done; - if (ch !== ':') return true; - - // base60 almost not used, no needs to optimize - return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); -} - -function constructYamlInteger(data) { - var value = data, sign = 1, ch, base, digits = []; - - if (value.indexOf('_') !== -1) { - value = value.replace(/_/g, ''); - } - - ch = value[0]; - - if (ch === '-' || ch === '+') { - if (ch === '-') sign = -1; - value = value.slice(1); - ch = value[0]; - } - - if (value === '0') return 0; - - if (ch === '0') { - if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); - if (value[1] === 'x') return sign * parseInt(value, 16); - return sign * parseInt(value, 8); - } - - if (value.indexOf(':') !== -1) { - value.split(':').forEach(function (v) { - digits.unshift(parseInt(v, 10)); - }); - - value = 0; - base = 1; - - digits.forEach(function (d) { - value += (d * base); - base *= 60; - }); - - return sign * value; - - } - - return sign * parseInt(value, 10); -} - -function isInteger(object) { - return (Object.prototype.toString.call(object)) === '[object Number]' && - (object % 1 === 0 && !common.isNegativeZero(object)); -} - -module.exports = new Type('tag:yaml.org,2002:int', { - kind: 'scalar', - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, - octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); }, - decimal: function (obj) { return obj.toString(10); }, - /* eslint-disable max-len */ - hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } - }, - defaultStyle: 'decimal', - styleAliases: { - binary: [ 2, 'bin' ], - octal: [ 8, 'oct' ], - decimal: [ 10, 'dec' ], - hexadecimal: [ 16, 'hex' ] - } -}); - -},{"../common":36,"../type":47}],52:[function(require,module,exports){ -'use strict'; - -var esprima; - -// Browserified version does not have esprima -// -// 1. For node.js just require module as deps -// 2. For browser try to require mudule via external AMD system. -// If not found - try to fallback to window.esprima. If not -// found too - then fail to parse. -// -try { - // workaround to exclude package from browserify list. - var _require = require; - esprima = _require('esprima'); -} catch (_) { - /*global window */ - if (typeof window !== 'undefined') esprima = window.esprima; -} - -var Type = require('../../type'); - -function resolveJavascriptFunction(data) { - if (data === null) return false; - - try { - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }); - - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { - return false; - } - - return true; - } catch (err) { - return false; - } -} - -function constructJavascriptFunction(data) { - /*jslint evil:true*/ - - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }), - params = [], - body; - - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { - throw new Error('Failed to resolve function'); - } - - ast.body[0].expression.params.forEach(function (param) { - params.push(param.name); - }); - - body = ast.body[0].expression.body.range; - - // Esprima's ranges include the first '{' and the last '}' characters on - // function expressions. So cut them out. - if (ast.body[0].expression.body.type === 'BlockStatement') { - /*eslint-disable no-new-func*/ - return new Function(params, source.slice(body[0] + 1, body[1] - 1)); - } - // ES6 arrow functions can omit the BlockStatement. In that case, just return - // the body. - /*eslint-disable no-new-func*/ - return new Function(params, 'return ' + source.slice(body[0], body[1])); -} - -function representJavascriptFunction(object /*, style*/) { - return object.toString(); -} - -function isFunction(object) { - return Object.prototype.toString.call(object) === '[object Function]'; -} - -module.exports = new Type('tag:yaml.org,2002:js/function', { - kind: 'scalar', - resolve: resolveJavascriptFunction, - construct: constructJavascriptFunction, - predicate: isFunction, - represent: representJavascriptFunction -}); - -},{"../../type":47}],53:[function(require,module,exports){ -'use strict'; - -var Type = require('../../type'); - -function resolveJavascriptRegExp(data) { - if (data === null) return false; - if (data.length === 0) return false; - - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; - - // if regexp starts with '/' it can have modifiers and must be properly closed - // `/foo/gim` - modifiers tail can be maximum 3 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; - - if (modifiers.length > 3) return false; - // if expression starts with /, is should be properly terminated - if (regexp[regexp.length - modifiers.length - 1] !== '/') return false; - } - - return true; -} - -function constructJavascriptRegExp(data) { - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; - - // `/foo/gim` - tail can be maximum 4 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; - regexp = regexp.slice(1, regexp.length - modifiers.length - 1); - } - - return new RegExp(regexp, modifiers); -} - -function representJavascriptRegExp(object /*, style*/) { - var result = '/' + object.source + '/'; - - if (object.global) result += 'g'; - if (object.multiline) result += 'm'; - if (object.ignoreCase) result += 'i'; - - return result; -} - -function isRegExp(object) { - return Object.prototype.toString.call(object) === '[object RegExp]'; -} - -module.exports = new Type('tag:yaml.org,2002:js/regexp', { - kind: 'scalar', - resolve: resolveJavascriptRegExp, - construct: constructJavascriptRegExp, - predicate: isRegExp, - represent: representJavascriptRegExp -}); - -},{"../../type":47}],54:[function(require,module,exports){ -'use strict'; - -var Type = require('../../type'); - -function resolveJavascriptUndefined() { - return true; -} - -function constructJavascriptUndefined() { - /*eslint-disable no-undefined*/ - return undefined; -} - -function representJavascriptUndefined() { - return ''; -} - -function isUndefined(object) { - return typeof object === 'undefined'; -} - -module.exports = new Type('tag:yaml.org,2002:js/undefined', { - kind: 'scalar', - resolve: resolveJavascriptUndefined, - construct: constructJavascriptUndefined, - predicate: isUndefined, - represent: representJavascriptUndefined -}); - -},{"../../type":47}],55:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:map', { - kind: 'mapping', - construct: function (data) { return data !== null ? data : {}; } -}); - -},{"../type":47}],56:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlMerge(data) { - return data === '<<' || data === null; -} - -module.exports = new Type('tag:yaml.org,2002:merge', { - kind: 'scalar', - resolve: resolveYamlMerge -}); - -},{"../type":47}],57:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlNull(data) { - if (data === null) return true; - - var max = data.length; - - return (max === 1 && data === '~') || - (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); -} - -function constructYamlNull() { - return null; -} - -function isNull(object) { - return object === null; -} - -module.exports = new Type('tag:yaml.org,2002:null', { - kind: 'scalar', - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function () { return '~'; }, - lowercase: function () { return 'null'; }, - uppercase: function () { return 'NULL'; }, - camelcase: function () { return 'Null'; } - }, - defaultStyle: 'lowercase' -}); - -},{"../type":47}],58:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _hasOwnProperty = Object.prototype.hasOwnProperty; -var _toString = Object.prototype.toString; - -function resolveYamlOmap(data) { - if (data === null) return true; - - var objectKeys = [], index, length, pair, pairKey, pairHasKey, - object = data; - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; - - if (_toString.call(pair) !== '[object Object]') return false; - - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) pairHasKey = true; - else return false; - } - } - - if (!pairHasKey) return false; - - if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); - else return false; - } - - return true; -} - -function constructYamlOmap(data) { - return data !== null ? data : []; -} - -module.exports = new Type('tag:yaml.org,2002:omap', { - kind: 'sequence', - resolve: resolveYamlOmap, - construct: constructYamlOmap -}); - -},{"../type":47}],59:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _toString = Object.prototype.toString; - -function resolveYamlPairs(data) { - if (data === null) return true; - - var index, length, pair, keys, result, - object = data; - - result = new Array(object.length); - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - - if (_toString.call(pair) !== '[object Object]') return false; - - keys = Object.keys(pair); - - if (keys.length !== 1) return false; - - result[index] = [ keys[0], pair[keys[0]] ]; - } - - return true; -} - -function constructYamlPairs(data) { - if (data === null) return []; - - var index, length, pair, keys, result, - object = data; - - result = new Array(object.length); - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - - keys = Object.keys(pair); - - result[index] = [ keys[0], pair[keys[0]] ]; - } - - return result; -} - -module.exports = new Type('tag:yaml.org,2002:pairs', { - kind: 'sequence', - resolve: resolveYamlPairs, - construct: constructYamlPairs -}); - -},{"../type":47}],60:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:seq', { - kind: 'sequence', - construct: function (data) { return data !== null ? data : []; } -}); - -},{"../type":47}],61:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _hasOwnProperty = Object.prototype.hasOwnProperty; - -function resolveYamlSet(data) { - if (data === null) return true; - - var key, object = data; - - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) return false; - } - } - - return true; -} - -function constructYamlSet(data) { - return data !== null ? data : {}; -} - -module.exports = new Type('tag:yaml.org,2002:set', { - kind: 'mapping', - resolve: resolveYamlSet, - construct: constructYamlSet -}); - -},{"../type":47}],62:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:str', { - kind: 'scalar', - construct: function (data) { return data !== null ? data : ''; } -}); - -},{"../type":47}],63:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var YAML_DATE_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9])' + // [2] month - '-([0-9][0-9])$'); // [3] day - -var YAML_TIMESTAMP_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9]?)' + // [2] month - '-([0-9][0-9]?)' + // [3] day - '(?:[Tt]|[ \\t]+)' + // ... - '([0-9][0-9]?)' + // [4] hour - ':([0-9][0-9])' + // [5] minute - ':([0-9][0-9])' + // [6] second - '(?:\\.([0-9]*))?' + // [7] fraction - '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour - '(?::([0-9][0-9]))?))?$'); // [11] tz_minute - -function resolveYamlTimestamp(data) { - if (data === null) return false; - if (YAML_DATE_REGEXP.exec(data) !== null) return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; - return false; -} - -function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, - delta = null, tz_hour, tz_minute, date; - - match = YAML_DATE_REGEXP.exec(data); - if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); - - if (match === null) throw new Error('Date resolve error'); - - // match: [1] year [2] month [3] day - - year = +(match[1]); - month = +(match[2]) - 1; // JS month starts with 0 - day = +(match[3]); - - if (!match[4]) { // no hour - return new Date(Date.UTC(year, month, day)); - } - - // match: [4] hour [5] minute [6] second [7] fraction - - hour = +(match[4]); - minute = +(match[5]); - second = +(match[6]); - - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { // milli-seconds - fraction += '0'; - } - fraction = +fraction; - } - - // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute - - if (match[9]) { - tz_hour = +(match[10]); - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds - if (match[9] === '-') delta = -delta; - } - - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - - if (delta) date.setTime(date.getTime() - delta); - - return date; -} - -function representYamlTimestamp(object /*, style*/) { - return object.toISOString(); -} - -module.exports = new Type('tag:yaml.org,2002:timestamp', { - kind: 'scalar', - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp -}); - -},{"../type":47}],64:[function(require,module,exports){ -"use strict"; - -var format = require("format-util"); -var slice = Array.prototype.slice; -var protectedProperties = ["name", "message", "stack"]; -var errorPrototypeProperties = [ - "name", "message", "description", "number", "code", "fileName", "lineNumber", "columnNumber", - "sourceURL", "line", "column", "stack" -]; - -module.exports = create(Error); -module.exports.error = create(Error); -module.exports.eval = create(EvalError); -module.exports.range = create(RangeError); -module.exports.reference = create(ReferenceError); -module.exports.syntax = create(SyntaxError); -module.exports.type = create(TypeError); -module.exports.uri = create(URIError); -module.exports.formatter = format; - -/** - * Creates a new {@link ono} function that creates the given Error class. - * - * @param {Class} Klass - The Error subclass to create - * @returns {ono} - */ -function create (Klass) { - /** - * @param {Error} [err] - The original error, if any - * @param {object} [props] - An object whose properties will be added to the error object - * @param {string} [message] - The error message. May contain {@link util#format} placeholders - * @param {...*} [params] - Parameters that map to the `message` placeholders - * @returns {Error} - */ - return function onoFactory (err, props, message, params) { // eslint-disable-line no-unused-vars - var formatArgs = []; - var formattedMessage = ""; - - // Determine which arguments were actually specified - if (typeof err === "string") { - formatArgs = slice.call(arguments); - err = props = undefined; - } - else if (typeof props === "string") { - formatArgs = slice.call(arguments, 1); - props = undefined; - } - else if (typeof message === "string") { - formatArgs = slice.call(arguments, 2); - } - - // If there are any format arguments, then format the error message - if (formatArgs.length > 0) { - formattedMessage = module.exports.formatter.apply(null, formatArgs); - } - - if (err && err.message) { - // The inner-error's message will be added to the new message - formattedMessage += (formattedMessage ? " \n" : "") + err.message; - } - - // Create the new error - // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace - var newError = new Klass(formattedMessage); - - // Extend the new error with the additional properties - extendError(newError, err); // Copy properties of the original error - extendToJSON(newError); // Replace the original toJSON method - extend(newError, props); // Copy custom properties, possibly including a custom toJSON method - - return newError; - }; -} - -/** - * Extends the targetError with the properties of the source error. - * - * @param {Error} targetError - The error object to extend - * @param {?Error} sourceError - The source error object, if any - */ -function extendError (targetError, sourceError) { - extendStack(targetError, sourceError); - extend(targetError, sourceError); -} - -/** - * JavaScript engines differ in how errors are serialized to JSON - especially when it comes - * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS - * outputs every property of the error. - */ -function extendToJSON (error) { - error.toJSON = errorToJSON; - - // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method - error.inspect = errorToString; -} - -/** - * Extends the target object with the properties of the source object. - * - * @param {object} target - The object to extend - * @param {?source} source - The object whose properties are copied - */ -function extend (target, source) { - if (source && typeof source === "object") { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - // Don't copy "protected" properties, since they have special meaning/behavior - // and are set by the onoFactory function - if (protectedProperties.indexOf(key) >= 0) { - continue; - } - - try { - target[key] = source[key]; - } - catch (e) { - // This property is read-only, so it can't be copied - } - } - } -} - -/** - * Custom JSON serializer for Error objects. - * Returns all built-in error properties, as well as extended properties. - * - * @returns {object} - */ -function errorToJSON () { - var json = {}; - - // Get all the properties of this error - var keys = Object.keys(this); - - // Also include properties from the Error prototype - keys = keys.concat(errorPrototypeProperties); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = this[key]; - var type = typeof value; - if (type !== "undefined" && type !== "function") { - json[key] = value; - } - } - - return json; -} - -/** - * Serializes Error objects as human-readable JSON strings for debugging/logging purposes. - * - * @returns {string} - */ -function errorToString () { - return JSON.stringify(this, null, 2).replace(/\\n/g, "\n"); -} - -/** - * Extend the error stack to include its cause - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function extendStack (targetError, sourceError) { - if (hasLazyStack(targetError)) { - if (sourceError) { - lazyJoinStacks(targetError, sourceError); - } - else { - lazyPopStack(targetError); - } - } - else { - if (sourceError) { - targetError.stack = joinStacks(targetError.stack, sourceError.stack); - } - else { - targetError.stack = popStack(targetError.stack); - } - } -} - -/** - * Appends the original {@link Error#stack} property to the new Error's stack. - * - * @param {string} newStack - * @param {string} originalStack - * @returns {string} - */ -function joinStacks (newStack, originalStack) { - newStack = popStack(newStack); - - if (newStack && originalStack) { - return newStack + "\n\n" + originalStack; - } - else { - return newStack || originalStack; - } -} - -/** - * Removes Ono from the stack, so that the stack starts at the original error location - * - * @param {string} stack - * @returns {string} - */ -function popStack (stack) { - if (stack) { - var lines = stack.split("\n"); - - if (lines.length < 2) { - // The stack only has one line, so there's nothing we can remove - return stack; - } - - // Find the `onoFactory` call in the stack, and remove it - for (var i = 0; i < lines.length; i++) { - var line = lines[i]; - if (line.indexOf("onoFactory") >= 0) { - lines.splice(i, 1); - return lines.join("\n"); - } - } - - // If we get here, then the stack doesn't contain a call to `onoFactory`. - // This may be due to minification or some optimization of the JS engine. - // So just return the stack as-is. - return stack; - } -} - -/** - * Does a one-time determination of whether this JavaScript engine - * supports lazy `Error.stack` properties. - */ -var supportsLazyStack = (function () { - return !!( - // ES5 property descriptors must be supported - Object.getOwnPropertyDescriptor && Object.defineProperty && - - // Chrome on Android doesn't support lazy stacks :( - (typeof navigator === "undefined" || !/Android/.test(navigator.userAgent)) - ); -}()); - -/** - * Does this error have a lazy stack property? - * - * @param {Error} err - * @returns {boolean} - */ -function hasLazyStack (err) { - if (!supportsLazyStack) { - return false; - } - - var descriptor = Object.getOwnPropertyDescriptor(err, "stack"); - if (!descriptor) { - return false; - } - return typeof descriptor.get === "function"; -} - -/** - * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function lazyJoinStacks (targetError, sourceError) { - var targetStack = Object.getOwnPropertyDescriptor(targetError, "stack"); - - Object.defineProperty(targetError, "stack", { - get: function () { - return joinStacks(targetStack.get.apply(targetError), sourceError.stack); - }, - enumerable: false, - configurable: true - }); -} - -/** - * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} error - */ -function lazyPopStack (error) { - var targetStack = Object.getOwnPropertyDescriptor(error, "stack"); - - Object.defineProperty(error, "stack", { - get: function () { - return popStack(targetStack.get.apply(error)); - }, - enumerable: false, - configurable: true - }); -} - -},{"format-util":28}],65:[function(require,module,exports){ -(function (process){ -'use strict'; - -if (!process.version || - process.version.indexOf('v0.') === 0 || - process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) { - module.exports = { nextTick: nextTick }; -} else { - module.exports = process -} - -function nextTick(fn, arg1, arg2, arg3) { - if (typeof fn !== 'function') { - throw new TypeError('"callback" argument must be a function'); - } - var len = arguments.length; - var args, i; - switch (len) { - case 0: - case 1: - return process.nextTick(fn); - case 2: - return process.nextTick(function afterTickOne() { - fn.call(null, arg1); - }); - case 3: - return process.nextTick(function afterTickTwo() { - fn.call(null, arg1, arg2); - }); - case 4: - return process.nextTick(function afterTickThree() { - fn.call(null, arg1, arg2, arg3); - }); - default: - args = new Array(len - 1); - i = 0; - while (i < args.length) { - args[i++] = arguments[i]; - } - return process.nextTick(function afterTick() { - fn.apply(null, args); - }); - } -} - - -}).call(this,require('_process')) - -},{"_process":66}],66:[function(require,module,exports){ -// shim for using process in browser -var process = module.exports = {}; - -// cached from whatever global is present so that test runners that stub it -// don't break things. But we need to wrap it in a try catch in case it is -// wrapped in strict mode code which doesn't define any globals. It's inside a -// function because try/catches deoptimize in certain engines. - -var cachedSetTimeout; -var cachedClearTimeout; - -function defaultSetTimout() { - throw new Error('setTimeout has not been defined'); -} -function defaultClearTimeout () { - throw new Error('clearTimeout has not been defined'); -} -(function () { - try { - if (typeof setTimeout === 'function') { - cachedSetTimeout = setTimeout; - } else { - cachedSetTimeout = defaultSetTimout; - } - } catch (e) { - cachedSetTimeout = defaultSetTimout; - } - try { - if (typeof clearTimeout === 'function') { - cachedClearTimeout = clearTimeout; - } else { - cachedClearTimeout = defaultClearTimeout; - } - } catch (e) { - cachedClearTimeout = defaultClearTimeout; - } -} ()) -function runTimeout(fun) { - if (cachedSetTimeout === setTimeout) { - //normal enviroments in sane situations - return setTimeout(fun, 0); - } - // if setTimeout wasn't available but was latter defined - if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { - cachedSetTimeout = setTimeout; - return setTimeout(fun, 0); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedSetTimeout(fun, 0); - } catch(e){ - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedSetTimeout.call(null, fun, 0); - } catch(e){ - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error - return cachedSetTimeout.call(this, fun, 0); - } - } - - -} -function runClearTimeout(marker) { - if (cachedClearTimeout === clearTimeout) { - //normal enviroments in sane situations - return clearTimeout(marker); - } - // if clearTimeout wasn't available but was latter defined - if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { - cachedClearTimeout = clearTimeout; - return clearTimeout(marker); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedClearTimeout(marker); - } catch (e){ - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedClearTimeout.call(null, marker); - } catch (e){ - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. - // Some versions of I.E. have different rules for clearTimeout vs setTimeout - return cachedClearTimeout.call(this, marker); - } - } - - - -} -var queue = []; -var draining = false; -var currentQueue; -var queueIndex = -1; - -function cleanUpNextTick() { - if (!draining || !currentQueue) { - return; - } - draining = false; - if (currentQueue.length) { - queue = currentQueue.concat(queue); - } else { - queueIndex = -1; - } - if (queue.length) { - drainQueue(); - } -} - -function drainQueue() { - if (draining) { - return; - } - var timeout = runTimeout(cleanUpNextTick); - draining = true; - - var len = queue.length; - while(len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); - } - } - queueIndex = -1; - len = queue.length; - } - currentQueue = null; - draining = false; - runClearTimeout(timeout); -} - -process.nextTick = function (fun) { - var args = new Array(arguments.length - 1); - if (arguments.length > 1) { - for (var i = 1; i < arguments.length; i++) { - args[i - 1] = arguments[i]; - } - } - queue.push(new Item(fun, args)); - if (queue.length === 1 && !draining) { - runTimeout(drainQueue); - } -}; - -// v8 likes predictible objects -function Item(fun, array) { - this.fun = fun; - this.array = array; -} -Item.prototype.run = function () { - this.fun.apply(null, this.array); -}; -process.title = 'browser'; -process.browser = true; -process.env = {}; -process.argv = []; -process.version = ''; // empty string to avoid regexp issues -process.versions = {}; - -function noop() {} - -process.on = noop; -process.addListener = noop; -process.once = noop; -process.off = noop; -process.removeListener = noop; -process.removeAllListeners = noop; -process.emit = noop; -process.prependListener = noop; -process.prependOnceListener = noop; - -process.listeners = function (name) { return [] } - -process.binding = function (name) { - throw new Error('process.binding is not supported'); -}; - -process.cwd = function () { return '/' }; -process.chdir = function (dir) { - throw new Error('process.chdir is not supported'); -}; -process.umask = function() { return 0; }; - -},{}],67:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -// If obj.hasOwnProperty has been overridden, then calling -// obj.hasOwnProperty(prop) will break. -// See: https://github.com/joyent/node/issues/1707 -function hasOwnProperty(obj, prop) { - return Object.prototype.hasOwnProperty.call(obj, prop); -} - -module.exports = function(qs, sep, eq, options) { - sep = sep || '&'; - eq = eq || '='; - var obj = {}; - - if (typeof qs !== 'string' || qs.length === 0) { - return obj; - } - - var regexp = /\+/g; - qs = qs.split(sep); - - var maxKeys = 1000; - if (options && typeof options.maxKeys === 'number') { - maxKeys = options.maxKeys; - } - - var len = qs.length; - // maxKeys <= 0 means that we should not limit keys count - if (maxKeys > 0 && len > maxKeys) { - len = maxKeys; - } - - for (var i = 0; i < len; ++i) { - var x = qs[i].replace(regexp, '%20'), - idx = x.indexOf(eq), - kstr, vstr, k, v; - - if (idx >= 0) { - kstr = x.substr(0, idx); - vstr = x.substr(idx + 1); - } else { - kstr = x; - vstr = ''; - } - - k = decodeURIComponent(kstr); - v = decodeURIComponent(vstr); - - if (!hasOwnProperty(obj, k)) { - obj[k] = v; - } else if (isArray(obj[k])) { - obj[k].push(v); - } else { - obj[k] = [obj[k], v]; - } - } - - return obj; -}; - -var isArray = Array.isArray || function (xs) { - return Object.prototype.toString.call(xs) === '[object Array]'; -}; - -},{}],68:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -var stringifyPrimitive = function(v) { - switch (typeof v) { - case 'string': - return v; - - case 'boolean': - return v ? 'true' : 'false'; - - case 'number': - return isFinite(v) ? v : ''; - - default: - return ''; - } -}; - -module.exports = function(obj, sep, eq, name) { - sep = sep || '&'; - eq = eq || '='; - if (obj === null) { - obj = undefined; - } - - if (typeof obj === 'object') { - return map(objectKeys(obj), function(k) { - var ks = encodeURIComponent(stringifyPrimitive(k)) + eq; - if (isArray(obj[k])) { - return map(obj[k], function(v) { - return ks + encodeURIComponent(stringifyPrimitive(v)); - }).join(sep); - } else { - return ks + encodeURIComponent(stringifyPrimitive(obj[k])); - } - }).join(sep); - - } - - if (!name) return ''; - return encodeURIComponent(stringifyPrimitive(name)) + eq + - encodeURIComponent(stringifyPrimitive(obj)); -}; - -var isArray = Array.isArray || function (xs) { - return Object.prototype.toString.call(xs) === '[object Array]'; -}; - -function map (xs, f) { - if (xs.map) return xs.map(f); - var res = []; - for (var i = 0; i < xs.length; i++) { - res.push(f(xs[i], i)); - } - return res; -} - -var objectKeys = Object.keys || function (obj) { - var res = []; - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) res.push(key); - } - return res; -}; - -},{}],69:[function(require,module,exports){ -'use strict'; - -exports.decode = exports.parse = require('./decode'); -exports.encode = exports.stringify = require('./encode'); - -},{"./decode":67,"./encode":68}],70:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a duplex stream is just a stream that is both readable and writable. -// Since JS doesn't have multiple prototypal inheritance, this class -// prototypally inherits from Readable, and then parasitically from -// Writable. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -/**/ -var objectKeys = Object.keys || function (obj) { - var keys = []; - for (var key in obj) { - keys.push(key); - }return keys; -}; -/**/ - -module.exports = Duplex; - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -var Readable = require('./_stream_readable'); -var Writable = require('./_stream_writable'); - -util.inherits(Duplex, Readable); - -{ - // avoid scope creep, the keys array can then be collected - var keys = objectKeys(Writable.prototype); - for (var v = 0; v < keys.length; v++) { - var method = keys[v]; - if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; - } -} - -function Duplex(options) { - if (!(this instanceof Duplex)) return new Duplex(options); - - Readable.call(this, options); - Writable.call(this, options); - - if (options && options.readable === false) this.readable = false; - - if (options && options.writable === false) this.writable = false; - - this.allowHalfOpen = true; - if (options && options.allowHalfOpen === false) this.allowHalfOpen = false; - - this.once('end', onend); -} - -Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._writableState.highWaterMark; - } -}); - -// the no-half-open enforcer -function onend() { - // if we allow half-open state, or if the writable side ended, - // then we're ok. - if (this.allowHalfOpen || this._writableState.ended) return; - - // no more data can be written. - // But allow more writes to happen in this tick. - pna.nextTick(onEndNT, this); -} - -function onEndNT(self) { - self.end(); -} - -Object.defineProperty(Duplex.prototype, 'destroyed', { - get: function () { - if (this._readableState === undefined || this._writableState === undefined) { - return false; - } - return this._readableState.destroyed && this._writableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (this._readableState === undefined || this._writableState === undefined) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._readableState.destroyed = value; - this._writableState.destroyed = value; - } -}); - -Duplex.prototype._destroy = function (err, cb) { - this.push(null); - this.end(); - - pna.nextTick(cb, err); -}; -},{"./_stream_readable":72,"./_stream_writable":74,"core-util-is":26,"inherits":31,"process-nextick-args":65}],71:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a passthrough stream. -// basically just the most minimal sort of Transform stream. -// Every written chunk gets output as-is. - -'use strict'; - -module.exports = PassThrough; - -var Transform = require('./_stream_transform'); - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -util.inherits(PassThrough, Transform); - -function PassThrough(options) { - if (!(this instanceof PassThrough)) return new PassThrough(options); - - Transform.call(this, options); -} - -PassThrough.prototype._transform = function (chunk, encoding, cb) { - cb(null, chunk); -}; -},{"./_stream_transform":73,"core-util-is":26,"inherits":31}],72:[function(require,module,exports){ -(function (process,global){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -module.exports = Readable; - -/**/ -var isArray = require('isarray'); -/**/ - -/**/ -var Duplex; -/**/ - -Readable.ReadableState = ReadableState; - -/**/ -var EE = require('events').EventEmitter; - -var EElistenerCount = function (emitter, type) { - return emitter.listeners(type).length; -}; -/**/ - -/**/ -var Stream = require('./internal/streams/stream'); -/**/ - -/**/ - -var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = global.Uint8Array || function () {}; -function _uint8ArrayToBuffer(chunk) { - return Buffer.from(chunk); -} -function _isUint8Array(obj) { - return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; -} - -/**/ - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -/**/ -var debugUtil = require('util'); -var debug = void 0; -if (debugUtil && debugUtil.debuglog) { - debug = debugUtil.debuglog('stream'); -} else { - debug = function () {}; -} -/**/ - -var BufferList = require('./internal/streams/BufferList'); -var destroyImpl = require('./internal/streams/destroy'); -var StringDecoder; - -util.inherits(Readable, Stream); - -var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume']; - -function prependListener(emitter, event, fn) { - // Sadly this is not cacheable as some libraries bundle their own - // event emitter implementation with them. - if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); - - // This is a hack to make sure that our error handler is attached before any - // userland ones. NEVER DO THIS. This is here only because this code needs - // to continue to work with older versions of Node.js that do not include - // the prependListener() method. The goal is to eventually remove this hack. - if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]]; -} - -function ReadableState(options, stream) { - Duplex = Duplex || require('./_stream_duplex'); - - options = options || {}; - - // Duplex streams are both readable and writable, but share - // the same options object. - // However, some cases require setting options to different - // values for the readable and the writable sides of the duplex stream. - // These options can be provided separately as readableXXX and writableXXX. - var isDuplex = stream instanceof Duplex; - - // object stream flag. Used to make read(n) ignore n and to - // make all the buffer merging and length checks go away - this.objectMode = !!options.objectMode; - - if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; - - // the point at which it stops calling _read() to fill the buffer - // Note: 0 is a valid value, means "don't call _read preemptively ever" - var hwm = options.highWaterMark; - var readableHwm = options.readableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - - if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm; - - // cast to ints. - this.highWaterMark = Math.floor(this.highWaterMark); - - // A linked list is used to store data chunks instead of an array because the - // linked list can remove elements from the beginning faster than - // array.shift() - this.buffer = new BufferList(); - this.length = 0; - this.pipes = null; - this.pipesCount = 0; - this.flowing = null; - this.ended = false; - this.endEmitted = false; - this.reading = false; - - // a flag to be able to tell if the event 'readable'/'data' is emitted - // immediately, or on a later tick. We set this to true at first, because - // any actions that shouldn't happen until "later" should generally also - // not happen before the first read call. - this.sync = true; - - // whenever we return null, then we set a flag to say - // that we're awaiting a 'readable' event emission. - this.needReadable = false; - this.emittedReadable = false; - this.readableListening = false; - this.resumeScheduled = false; - - // has it been destroyed - this.destroyed = false; - - // Crypto is kind of old and crusty. Historically, its default string - // encoding is 'binary' so we have to make this configurable. - // Everything else in the universe uses 'utf8', though. - this.defaultEncoding = options.defaultEncoding || 'utf8'; - - // the number of writers that are awaiting a drain event in .pipe()s - this.awaitDrain = 0; - - // if true, a maybeReadMore has been scheduled - this.readingMore = false; - - this.decoder = null; - this.encoding = null; - if (options.encoding) { - if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; - this.decoder = new StringDecoder(options.encoding); - this.encoding = options.encoding; - } -} - -function Readable(options) { - Duplex = Duplex || require('./_stream_duplex'); - - if (!(this instanceof Readable)) return new Readable(options); - - this._readableState = new ReadableState(options, this); - - // legacy - this.readable = true; - - if (options) { - if (typeof options.read === 'function') this._read = options.read; - - if (typeof options.destroy === 'function') this._destroy = options.destroy; - } - - Stream.call(this); -} - -Object.defineProperty(Readable.prototype, 'destroyed', { - get: function () { - if (this._readableState === undefined) { - return false; - } - return this._readableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (!this._readableState) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._readableState.destroyed = value; - } -}); - -Readable.prototype.destroy = destroyImpl.destroy; -Readable.prototype._undestroy = destroyImpl.undestroy; -Readable.prototype._destroy = function (err, cb) { - this.push(null); - cb(err); -}; - -// Manually shove something into the read() buffer. -// This returns true if the highWaterMark has not been hit yet, -// similar to how Writable.write() returns true if you should -// write() some more. -Readable.prototype.push = function (chunk, encoding) { - var state = this._readableState; - var skipChunkCheck; - - if (!state.objectMode) { - if (typeof chunk === 'string') { - encoding = encoding || state.defaultEncoding; - if (encoding !== state.encoding) { - chunk = Buffer.from(chunk, encoding); - encoding = ''; - } - skipChunkCheck = true; - } - } else { - skipChunkCheck = true; - } - - return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); -}; - -// Unshift should *always* be something directly out of read() -Readable.prototype.unshift = function (chunk) { - return readableAddChunk(this, chunk, null, true, false); -}; - -function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { - var state = stream._readableState; - if (chunk === null) { - state.reading = false; - onEofChunk(stream, state); - } else { - var er; - if (!skipChunkCheck) er = chunkInvalid(state, chunk); - if (er) { - stream.emit('error', er); - } else if (state.objectMode || chunk && chunk.length > 0) { - if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) { - chunk = _uint8ArrayToBuffer(chunk); - } - - if (addToFront) { - if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true); - } else if (state.ended) { - stream.emit('error', new Error('stream.push() after EOF')); - } else { - state.reading = false; - if (state.decoder && !encoding) { - chunk = state.decoder.write(chunk); - if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state); - } else { - addChunk(stream, state, chunk, false); - } - } - } else if (!addToFront) { - state.reading = false; - } - } - - return needMoreData(state); -} - -function addChunk(stream, state, chunk, addToFront) { - if (state.flowing && state.length === 0 && !state.sync) { - stream.emit('data', chunk); - stream.read(0); - } else { - // update the buffer info. - state.length += state.objectMode ? 1 : chunk.length; - if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk); - - if (state.needReadable) emitReadable(stream); - } - maybeReadMore(stream, state); -} - -function chunkInvalid(state, chunk) { - var er; - if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { - er = new TypeError('Invalid non-string/buffer chunk'); - } - return er; -} - -// if it's past the high water mark, we can push in some more. -// Also, if we have no data yet, we can stand some -// more bytes. This is to work around cases where hwm=0, -// such as the repl. Also, if the push() triggered a -// readable event, and the user called read(largeNumber) such that -// needReadable was set, then we ought to push more, so that another -// 'readable' event will be triggered. -function needMoreData(state) { - return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); -} - -Readable.prototype.isPaused = function () { - return this._readableState.flowing === false; -}; - -// backwards compatibility. -Readable.prototype.setEncoding = function (enc) { - if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; - this._readableState.decoder = new StringDecoder(enc); - this._readableState.encoding = enc; - return this; -}; - -// Don't raise the hwm > 8MB -var MAX_HWM = 0x800000; -function computeNewHighWaterMark(n) { - if (n >= MAX_HWM) { - n = MAX_HWM; - } else { - // Get the next highest power of 2 to prevent increasing hwm excessively in - // tiny amounts - n--; - n |= n >>> 1; - n |= n >>> 2; - n |= n >>> 4; - n |= n >>> 8; - n |= n >>> 16; - n++; - } - return n; -} - -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function howMuchToRead(n, state) { - if (n <= 0 || state.length === 0 && state.ended) return 0; - if (state.objectMode) return 1; - if (n !== n) { - // Only flow one buffer at a time - if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length; - } - // If we're asking for more than the current hwm, then raise the hwm. - if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); - if (n <= state.length) return n; - // Don't have enough - if (!state.ended) { - state.needReadable = true; - return 0; - } - return state.length; -} - -// you can override either this method, or the async _read(n) below. -Readable.prototype.read = function (n) { - debug('read', n); - n = parseInt(n, 10); - var state = this._readableState; - var nOrig = n; - - if (n !== 0) state.emittedReadable = false; - - // if we're doing read(0) to trigger a readable event, but we - // already have a bunch of data in the buffer, then just trigger - // the 'readable' event and move on. - if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { - debug('read: emitReadable', state.length, state.ended); - if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this); - return null; - } - - n = howMuchToRead(n, state); - - // if we've ended, and we're now clear, then finish it up. - if (n === 0 && state.ended) { - if (state.length === 0) endReadable(this); - return null; - } - - // All the actual chunk generation logic needs to be - // *below* the call to _read. The reason is that in certain - // synthetic stream cases, such as passthrough streams, _read - // may be a completely synchronous operation which may change - // the state of the read buffer, providing enough data when - // before there was *not* enough. - // - // So, the steps are: - // 1. Figure out what the state of things will be after we do - // a read from the buffer. - // - // 2. If that resulting state will trigger a _read, then call _read. - // Note that this may be asynchronous, or synchronous. Yes, it is - // deeply ugly to write APIs this way, but that still doesn't mean - // that the Readable class should behave improperly, as streams are - // designed to be sync/async agnostic. - // Take note if the _read call is sync or async (ie, if the read call - // has returned yet), so that we know whether or not it's safe to emit - // 'readable' etc. - // - // 3. Actually pull the requested chunks out of the buffer and return. - - // if we need a readable event, then we need to do some reading. - var doRead = state.needReadable; - debug('need readable', doRead); - - // if we currently have less than the highWaterMark, then also read some - if (state.length === 0 || state.length - n < state.highWaterMark) { - doRead = true; - debug('length less than watermark', doRead); - } - - // however, if we've ended, then there's no point, and if we're already - // reading, then it's unnecessary. - if (state.ended || state.reading) { - doRead = false; - debug('reading or ended', doRead); - } else if (doRead) { - debug('do read'); - state.reading = true; - state.sync = true; - // if the length is currently zero, then we *need* a readable event. - if (state.length === 0) state.needReadable = true; - // call internal read method - this._read(state.highWaterMark); - state.sync = false; - // If _read pushed data synchronously, then `reading` will be false, - // and we need to re-evaluate how much data we can return to the user. - if (!state.reading) n = howMuchToRead(nOrig, state); - } - - var ret; - if (n > 0) ret = fromList(n, state);else ret = null; - - if (ret === null) { - state.needReadable = true; - n = 0; - } else { - state.length -= n; - } - - if (state.length === 0) { - // If we have nothing in the buffer, then we want to know - // as soon as we *do* get something into the buffer. - if (!state.ended) state.needReadable = true; - - // If we tried to read() past the EOF, then emit end on the next tick. - if (nOrig !== n && state.ended) endReadable(this); - } - - if (ret !== null) this.emit('data', ret); - - return ret; -}; - -function onEofChunk(stream, state) { - if (state.ended) return; - if (state.decoder) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) { - state.buffer.push(chunk); - state.length += state.objectMode ? 1 : chunk.length; - } - } - state.ended = true; - - // emit 'readable' now to make sure it gets picked up. - emitReadable(stream); -} - -// Don't emit readable right away in sync mode, because this can trigger -// another read() call => stack overflow. This way, it might trigger -// a nextTick recursion warning, but that's not so bad. -function emitReadable(stream) { - var state = stream._readableState; - state.needReadable = false; - if (!state.emittedReadable) { - debug('emitReadable', state.flowing); - state.emittedReadable = true; - if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream); - } -} - -function emitReadable_(stream) { - debug('emit readable'); - stream.emit('readable'); - flow(stream); -} - -// at this point, the user has presumably seen the 'readable' event, -// and called read() to consume some data. that may have triggered -// in turn another _read(n) call, in which case reading = true if -// it's in progress. -// However, if we're not ended, or reading, and the length < hwm, -// then go ahead and try to read some more preemptively. -function maybeReadMore(stream, state) { - if (!state.readingMore) { - state.readingMore = true; - pna.nextTick(maybeReadMore_, stream, state); - } -} - -function maybeReadMore_(stream, state) { - var len = state.length; - while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { - debug('maybeReadMore read 0'); - stream.read(0); - if (len === state.length) - // didn't get any data, stop spinning. - break;else len = state.length; - } - state.readingMore = false; -} - -// abstract method. to be overridden in specific implementation classes. -// call cb(er, data) where data is <= n in length. -// for virtual (non-string, non-buffer) streams, "length" is somewhat -// arbitrary, and perhaps not very meaningful. -Readable.prototype._read = function (n) { - this.emit('error', new Error('_read() is not implemented')); -}; - -Readable.prototype.pipe = function (dest, pipeOpts) { - var src = this; - var state = this._readableState; - - switch (state.pipesCount) { - case 0: - state.pipes = dest; - break; - case 1: - state.pipes = [state.pipes, dest]; - break; - default: - state.pipes.push(dest); - break; - } - state.pipesCount += 1; - debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts); - - var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; - - var endFn = doEnd ? onend : unpipe; - if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn); - - dest.on('unpipe', onunpipe); - function onunpipe(readable, unpipeInfo) { - debug('onunpipe'); - if (readable === src) { - if (unpipeInfo && unpipeInfo.hasUnpiped === false) { - unpipeInfo.hasUnpiped = true; - cleanup(); - } - } - } - - function onend() { - debug('onend'); - dest.end(); - } - - // when the dest drains, it reduces the awaitDrain counter - // on the source. This would be more elegant with a .once() - // handler in flow(), but adding and removing repeatedly is - // too slow. - var ondrain = pipeOnDrain(src); - dest.on('drain', ondrain); - - var cleanedUp = false; - function cleanup() { - debug('cleanup'); - // cleanup event handlers once the pipe is broken - dest.removeListener('close', onclose); - dest.removeListener('finish', onfinish); - dest.removeListener('drain', ondrain); - dest.removeListener('error', onerror); - dest.removeListener('unpipe', onunpipe); - src.removeListener('end', onend); - src.removeListener('end', unpipe); - src.removeListener('data', ondata); - - cleanedUp = true; - - // if the reader is waiting for a drain event from this - // specific writer, then it would cause it to never start - // flowing again. - // So, if this is awaiting a drain, then we just call it now. - // If we don't know, then assume that we are waiting for one. - if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); - } - - // If the user pushes more data while we're writing to dest then we'll end up - // in ondata again. However, we only want to increase awaitDrain once because - // dest will only emit one 'drain' event for the multiple writes. - // => Introduce a guard on increasing awaitDrain. - var increasedAwaitDrain = false; - src.on('data', ondata); - function ondata(chunk) { - debug('ondata'); - increasedAwaitDrain = false; - var ret = dest.write(chunk); - if (false === ret && !increasedAwaitDrain) { - // If the user unpiped during `dest.write()`, it is possible - // to get stuck in a permanently paused state if that write - // also returned false. - // => Check whether `dest` is still a piping destination. - if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { - debug('false write response, pause', src._readableState.awaitDrain); - src._readableState.awaitDrain++; - increasedAwaitDrain = true; - } - src.pause(); - } - } - - // if the dest has an error, then stop piping into it. - // however, don't suppress the throwing behavior for this. - function onerror(er) { - debug('onerror', er); - unpipe(); - dest.removeListener('error', onerror); - if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er); - } - - // Make sure our error handler is attached before userland ones. - prependListener(dest, 'error', onerror); - - // Both close and finish should trigger unpipe, but only once. - function onclose() { - dest.removeListener('finish', onfinish); - unpipe(); - } - dest.once('close', onclose); - function onfinish() { - debug('onfinish'); - dest.removeListener('close', onclose); - unpipe(); - } - dest.once('finish', onfinish); - - function unpipe() { - debug('unpipe'); - src.unpipe(dest); - } - - // tell the dest that it's being piped to - dest.emit('pipe', src); - - // start the flow if it hasn't been started already. - if (!state.flowing) { - debug('pipe resume'); - src.resume(); - } - - return dest; -}; - -function pipeOnDrain(src) { - return function () { - var state = src._readableState; - debug('pipeOnDrain', state.awaitDrain); - if (state.awaitDrain) state.awaitDrain--; - if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) { - state.flowing = true; - flow(src); - } - }; -} - -Readable.prototype.unpipe = function (dest) { - var state = this._readableState; - var unpipeInfo = { hasUnpiped: false }; - - // if we're not piping anywhere, then do nothing. - if (state.pipesCount === 0) return this; - - // just one destination. most common case. - if (state.pipesCount === 1) { - // passed in one, but it's not the right one. - if (dest && dest !== state.pipes) return this; - - if (!dest) dest = state.pipes; - - // got a match. - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - if (dest) dest.emit('unpipe', this, unpipeInfo); - return this; - } - - // slow case. multiple pipe destinations. - - if (!dest) { - // remove all. - var dests = state.pipes; - var len = state.pipesCount; - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - - for (var i = 0; i < len; i++) { - dests[i].emit('unpipe', this, unpipeInfo); - }return this; - } - - // try to find the right one. - var index = indexOf(state.pipes, dest); - if (index === -1) return this; - - state.pipes.splice(index, 1); - state.pipesCount -= 1; - if (state.pipesCount === 1) state.pipes = state.pipes[0]; - - dest.emit('unpipe', this, unpipeInfo); - - return this; -}; - -// set up data events if they are asked for -// Ensure readable listeners eventually get something -Readable.prototype.on = function (ev, fn) { - var res = Stream.prototype.on.call(this, ev, fn); - - if (ev === 'data') { - // Start flowing on next tick if stream isn't explicitly paused - if (this._readableState.flowing !== false) this.resume(); - } else if (ev === 'readable') { - var state = this._readableState; - if (!state.endEmitted && !state.readableListening) { - state.readableListening = state.needReadable = true; - state.emittedReadable = false; - if (!state.reading) { - pna.nextTick(nReadingNextTick, this); - } else if (state.length) { - emitReadable(this); - } - } - } - - return res; -}; -Readable.prototype.addListener = Readable.prototype.on; - -function nReadingNextTick(self) { - debug('readable nexttick read 0'); - self.read(0); -} - -// pause() and resume() are remnants of the legacy readable stream API -// If the user uses them, then switch into old mode. -Readable.prototype.resume = function () { - var state = this._readableState; - if (!state.flowing) { - debug('resume'); - state.flowing = true; - resume(this, state); - } - return this; -}; - -function resume(stream, state) { - if (!state.resumeScheduled) { - state.resumeScheduled = true; - pna.nextTick(resume_, stream, state); - } -} - -function resume_(stream, state) { - if (!state.reading) { - debug('resume read 0'); - stream.read(0); - } - - state.resumeScheduled = false; - state.awaitDrain = 0; - stream.emit('resume'); - flow(stream); - if (state.flowing && !state.reading) stream.read(0); -} - -Readable.prototype.pause = function () { - debug('call pause flowing=%j', this._readableState.flowing); - if (false !== this._readableState.flowing) { - debug('pause'); - this._readableState.flowing = false; - this.emit('pause'); - } - return this; -}; - -function flow(stream) { - var state = stream._readableState; - debug('flow', state.flowing); - while (state.flowing && stream.read() !== null) {} -} - -// wrap an old-style stream as the async data source. -// This is *not* part of the readable stream interface. -// It is an ugly unfortunate mess of history. -Readable.prototype.wrap = function (stream) { - var _this = this; - - var state = this._readableState; - var paused = false; - - stream.on('end', function () { - debug('wrapped end'); - if (state.decoder && !state.ended) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) _this.push(chunk); - } - - _this.push(null); - }); - - stream.on('data', function (chunk) { - debug('wrapped data'); - if (state.decoder) chunk = state.decoder.write(chunk); - - // don't skip over falsy values in objectMode - if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return; - - var ret = _this.push(chunk); - if (!ret) { - paused = true; - stream.pause(); - } - }); - - // proxy all the other methods. - // important when wrapping filters and duplexes. - for (var i in stream) { - if (this[i] === undefined && typeof stream[i] === 'function') { - this[i] = function (method) { - return function () { - return stream[method].apply(stream, arguments); - }; - }(i); - } - } - - // proxy certain important events. - for (var n = 0; n < kProxyEvents.length; n++) { - stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); - } - - // when we try to consume some more bytes, simply unpause the - // underlying stream. - this._read = function (n) { - debug('wrapped _read', n); - if (paused) { - paused = false; - stream.resume(); - } - }; - - return this; -}; - -Object.defineProperty(Readable.prototype, 'readableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._readableState.highWaterMark; - } -}); - -// exposed for testing purposes only. -Readable._fromList = fromList; - -// Pluck off n bytes from an array of buffers. -// Length is the combined lengths of all the buffers in the list. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function fromList(n, state) { - // nothing buffered - if (state.length === 0) return null; - - var ret; - if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) { - // read it all, truncate the list - if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length); - state.buffer.clear(); - } else { - // read part of list - ret = fromListPartial(n, state.buffer, state.decoder); - } - - return ret; -} - -// Extracts only enough buffered data to satisfy the amount requested. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function fromListPartial(n, list, hasStrings) { - var ret; - if (n < list.head.data.length) { - // slice is the same for buffers and strings - ret = list.head.data.slice(0, n); - list.head.data = list.head.data.slice(n); - } else if (n === list.head.data.length) { - // first chunk is a perfect match - ret = list.shift(); - } else { - // result spans more than one buffer - ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); - } - return ret; -} - -// Copies a specified amount of characters from the list of buffered data -// chunks. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function copyFromBufferString(n, list) { - var p = list.head; - var c = 1; - var ret = p.data; - n -= ret.length; - while (p = p.next) { - var str = p.data; - var nb = n > str.length ? str.length : n; - if (nb === str.length) ret += str;else ret += str.slice(0, n); - n -= nb; - if (n === 0) { - if (nb === str.length) { - ++c; - if (p.next) list.head = p.next;else list.head = list.tail = null; - } else { - list.head = p; - p.data = str.slice(nb); - } - break; - } - ++c; - } - list.length -= c; - return ret; -} - -// Copies a specified amount of bytes from the list of buffered data chunks. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function copyFromBuffer(n, list) { - var ret = Buffer.allocUnsafe(n); - var p = list.head; - var c = 1; - p.data.copy(ret); - n -= p.data.length; - while (p = p.next) { - var buf = p.data; - var nb = n > buf.length ? buf.length : n; - buf.copy(ret, ret.length - n, 0, nb); - n -= nb; - if (n === 0) { - if (nb === buf.length) { - ++c; - if (p.next) list.head = p.next;else list.head = list.tail = null; - } else { - list.head = p; - p.data = buf.slice(nb); - } - break; - } - ++c; - } - list.length -= c; - return ret; -} - -function endReadable(stream) { - var state = stream._readableState; - - // If we get here before consuming all the bytes, then that is a - // bug in node. Should never happen. - if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream'); - - if (!state.endEmitted) { - state.ended = true; - pna.nextTick(endReadableNT, state, stream); - } -} - -function endReadableNT(state, stream) { - // Check that we didn't get one last unshift. - if (!state.endEmitted && state.length === 0) { - state.endEmitted = true; - stream.readable = false; - stream.emit('end'); - } -} - -function indexOf(xs, x) { - for (var i = 0, l = xs.length; i < l; i++) { - if (xs[i] === x) return i; - } - return -1; -} -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./_stream_duplex":70,"./internal/streams/BufferList":75,"./internal/streams/destroy":76,"./internal/streams/stream":77,"_process":66,"core-util-is":26,"events":27,"inherits":31,"isarray":33,"process-nextick-args":65,"safe-buffer":79,"string_decoder/":84,"util":21}],73:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a transform stream is a readable/writable stream where you do -// something with the data. Sometimes it's called a "filter", -// but that's not a great name for it, since that implies a thing where -// some bits pass through, and others are simply ignored. (That would -// be a valid example of a transform, of course.) -// -// While the output is causally related to the input, it's not a -// necessarily symmetric or synchronous transformation. For example, -// a zlib stream might take multiple plain-text writes(), and then -// emit a single compressed chunk some time in the future. -// -// Here's how this works: -// -// The Transform stream has all the aspects of the readable and writable -// stream classes. When you write(chunk), that calls _write(chunk,cb) -// internally, and returns false if there's a lot of pending writes -// buffered up. When you call read(), that calls _read(n) until -// there's enough pending readable data buffered up. -// -// In a transform stream, the written data is placed in a buffer. When -// _read(n) is called, it transforms the queued up data, calling the -// buffered _write cb's as it consumes chunks. If consuming a single -// written chunk would result in multiple output chunks, then the first -// outputted bit calls the readcb, and subsequent chunks just go into -// the read buffer, and will cause it to emit 'readable' if necessary. -// -// This way, back-pressure is actually determined by the reading side, -// since _read has to be called to start processing a new chunk. However, -// a pathological inflate type of transform can cause excessive buffering -// here. For example, imagine a stream where every byte of input is -// interpreted as an integer from 0-255, and then results in that many -// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in -// 1kb of data being output. In this case, you could write a very small -// amount of input, and end up with a very large amount of output. In -// such a pathological inflating mechanism, there'd be no way to tell -// the system to stop doing the transform. A single 4MB write could -// cause the system to run out of memory. -// -// However, even in such a pathological case, only a single written chunk -// would be consumed, and then the rest would wait (un-transformed) until -// the results of the previous transformed chunk were consumed. - -'use strict'; - -module.exports = Transform; - -var Duplex = require('./_stream_duplex'); - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -util.inherits(Transform, Duplex); - -function afterTransform(er, data) { - var ts = this._transformState; - ts.transforming = false; - - var cb = ts.writecb; - - if (!cb) { - return this.emit('error', new Error('write callback called multiple times')); - } - - ts.writechunk = null; - ts.writecb = null; - - if (data != null) // single equals check for both `null` and `undefined` - this.push(data); - - cb(er); - - var rs = this._readableState; - rs.reading = false; - if (rs.needReadable || rs.length < rs.highWaterMark) { - this._read(rs.highWaterMark); - } -} - -function Transform(options) { - if (!(this instanceof Transform)) return new Transform(options); - - Duplex.call(this, options); - - this._transformState = { - afterTransform: afterTransform.bind(this), - needTransform: false, - transforming: false, - writecb: null, - writechunk: null, - writeencoding: null - }; - - // start out asking for a readable event once data is transformed. - this._readableState.needReadable = true; - - // we have implemented the _read method, and done the other things - // that Readable wants before the first _read call, so unset the - // sync guard flag. - this._readableState.sync = false; - - if (options) { - if (typeof options.transform === 'function') this._transform = options.transform; - - if (typeof options.flush === 'function') this._flush = options.flush; - } - - // When the writable side finishes, then flush out anything remaining. - this.on('prefinish', prefinish); -} - -function prefinish() { - var _this = this; - - if (typeof this._flush === 'function') { - this._flush(function (er, data) { - done(_this, er, data); - }); - } else { - done(this, null, null); - } -} - -Transform.prototype.push = function (chunk, encoding) { - this._transformState.needTransform = false; - return Duplex.prototype.push.call(this, chunk, encoding); -}; - -// This is the part where you do stuff! -// override this function in implementation classes. -// 'chunk' is an input chunk. -// -// Call `push(newChunk)` to pass along transformed output -// to the readable side. You may call 'push' zero or more times. -// -// Call `cb(err)` when you are done with this chunk. If you pass -// an error, then that'll put the hurt on the whole operation. If you -// never call cb(), then you'll never get another chunk. -Transform.prototype._transform = function (chunk, encoding, cb) { - throw new Error('_transform() is not implemented'); -}; - -Transform.prototype._write = function (chunk, encoding, cb) { - var ts = this._transformState; - ts.writecb = cb; - ts.writechunk = chunk; - ts.writeencoding = encoding; - if (!ts.transforming) { - var rs = this._readableState; - if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); - } -}; - -// Doesn't matter what the args are here. -// _transform does all the work. -// That we got here means that the readable side wants more data. -Transform.prototype._read = function (n) { - var ts = this._transformState; - - if (ts.writechunk !== null && ts.writecb && !ts.transforming) { - ts.transforming = true; - this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); - } else { - // mark that we need a transform, so that any data that comes in - // will get processed, now that we've asked for it. - ts.needTransform = true; - } -}; - -Transform.prototype._destroy = function (err, cb) { - var _this2 = this; - - Duplex.prototype._destroy.call(this, err, function (err2) { - cb(err2); - _this2.emit('close'); - }); -}; - -function done(stream, er, data) { - if (er) return stream.emit('error', er); - - if (data != null) // single equals check for both `null` and `undefined` - stream.push(data); - - // if there's nothing in the write buffer, then that means - // that nothing more will ever be provided - if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0'); - - if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming'); - - return stream.push(null); -} -},{"./_stream_duplex":70,"core-util-is":26,"inherits":31}],74:[function(require,module,exports){ -(function (process,global,setImmediate){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// A bit simpler than readable streams. -// Implement an async ._write(chunk, encoding, cb), and it'll handle all -// the drain event emission and buffering. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -module.exports = Writable; - -/* */ -function WriteReq(chunk, encoding, cb) { - this.chunk = chunk; - this.encoding = encoding; - this.callback = cb; - this.next = null; -} - -// It seems a linked list but it is not -// there will be only 2 of these for each stream -function CorkedRequest(state) { - var _this = this; - - this.next = null; - this.entry = null; - this.finish = function () { - onCorkedFinish(_this, state); - }; -} -/* */ - -/**/ -var asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; -/**/ - -/**/ -var Duplex; -/**/ - -Writable.WritableState = WritableState; - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -/**/ -var internalUtil = { - deprecate: require('util-deprecate') -}; -/**/ - -/**/ -var Stream = require('./internal/streams/stream'); -/**/ - -/**/ - -var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = global.Uint8Array || function () {}; -function _uint8ArrayToBuffer(chunk) { - return Buffer.from(chunk); -} -function _isUint8Array(obj) { - return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; -} - -/**/ - -var destroyImpl = require('./internal/streams/destroy'); - -util.inherits(Writable, Stream); - -function nop() {} - -function WritableState(options, stream) { - Duplex = Duplex || require('./_stream_duplex'); - - options = options || {}; - - // Duplex streams are both readable and writable, but share - // the same options object. - // However, some cases require setting options to different - // values for the readable and the writable sides of the duplex stream. - // These options can be provided separately as readableXXX and writableXXX. - var isDuplex = stream instanceof Duplex; - - // object stream flag to indicate whether or not this stream - // contains buffers or objects. - this.objectMode = !!options.objectMode; - - if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; - - // the point at which write() starts returning false - // Note: 0 is a valid value, means that we always return false if - // the entire buffer is not flushed immediately on write() - var hwm = options.highWaterMark; - var writableHwm = options.writableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - - if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm; - - // cast to ints. - this.highWaterMark = Math.floor(this.highWaterMark); - - // if _final has been called - this.finalCalled = false; - - // drain event flag. - this.needDrain = false; - // at the start of calling end() - this.ending = false; - // when end() has been called, and returned - this.ended = false; - // when 'finish' is emitted - this.finished = false; - - // has it been destroyed - this.destroyed = false; - - // should we decode strings into buffers before passing to _write? - // this is here so that some node-core streams can optimize string - // handling at a lower level. - var noDecode = options.decodeStrings === false; - this.decodeStrings = !noDecode; - - // Crypto is kind of old and crusty. Historically, its default string - // encoding is 'binary' so we have to make this configurable. - // Everything else in the universe uses 'utf8', though. - this.defaultEncoding = options.defaultEncoding || 'utf8'; - - // not an actual buffer we keep track of, but a measurement - // of how much we're waiting to get pushed to some underlying - // socket or file. - this.length = 0; - - // a flag to see when we're in the middle of a write. - this.writing = false; - - // when true all writes will be buffered until .uncork() call - this.corked = 0; - - // a flag to be able to tell if the onwrite cb is called immediately, - // or on a later tick. We set this to true at first, because any - // actions that shouldn't happen until "later" should generally also - // not happen before the first write call. - this.sync = true; - - // a flag to know if we're processing previously buffered items, which - // may call the _write() callback in the same tick, so that we don't - // end up in an overlapped onwrite situation. - this.bufferProcessing = false; - - // the callback that's passed to _write(chunk,cb) - this.onwrite = function (er) { - onwrite(stream, er); - }; - - // the callback that the user supplies to write(chunk,encoding,cb) - this.writecb = null; - - // the amount that is being written when _write is called. - this.writelen = 0; - - this.bufferedRequest = null; - this.lastBufferedRequest = null; - - // number of pending user-supplied write callbacks - // this must be 0 before 'finish' can be emitted - this.pendingcb = 0; - - // emit prefinish if the only thing we're waiting for is _write cbs - // This is relevant for synchronous Transform streams - this.prefinished = false; - - // True if the error was already emitted and should not be thrown again - this.errorEmitted = false; - - // count buffered requests - this.bufferedRequestCount = 0; - - // allocate the first CorkedRequest, there is always - // one allocated and free to use, and we maintain at most two - this.corkedRequestsFree = new CorkedRequest(this); -} - -WritableState.prototype.getBuffer = function getBuffer() { - var current = this.bufferedRequest; - var out = []; - while (current) { - out.push(current); - current = current.next; - } - return out; -}; - -(function () { - try { - Object.defineProperty(WritableState.prototype, 'buffer', { - get: internalUtil.deprecate(function () { - return this.getBuffer(); - }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003') - }); - } catch (_) {} -})(); - -// Test _writableState for inheritance to account for Duplex streams, -// whose prototype chain only points to Readable. -var realHasInstance; -if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') { - realHasInstance = Function.prototype[Symbol.hasInstance]; - Object.defineProperty(Writable, Symbol.hasInstance, { - value: function (object) { - if (realHasInstance.call(this, object)) return true; - if (this !== Writable) return false; - - return object && object._writableState instanceof WritableState; - } - }); -} else { - realHasInstance = function (object) { - return object instanceof this; - }; -} - -function Writable(options) { - Duplex = Duplex || require('./_stream_duplex'); - - // Writable ctor is applied to Duplexes, too. - // `realHasInstance` is necessary because using plain `instanceof` - // would return false, as no `_writableState` property is attached. - - // Trying to use the custom `instanceof` for Writable here will also break the - // Node.js LazyTransform implementation, which has a non-trivial getter for - // `_writableState` that would lead to infinite recursion. - if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) { - return new Writable(options); - } - - this._writableState = new WritableState(options, this); - - // legacy. - this.writable = true; - - if (options) { - if (typeof options.write === 'function') this._write = options.write; - - if (typeof options.writev === 'function') this._writev = options.writev; - - if (typeof options.destroy === 'function') this._destroy = options.destroy; - - if (typeof options.final === 'function') this._final = options.final; - } - - Stream.call(this); -} - -// Otherwise people can pipe Writable streams, which is just wrong. -Writable.prototype.pipe = function () { - this.emit('error', new Error('Cannot pipe, not readable')); -}; - -function writeAfterEnd(stream, cb) { - var er = new Error('write after end'); - // TODO: defer error events consistently everywhere, not just the cb - stream.emit('error', er); - pna.nextTick(cb, er); -} - -// Checks that a user-supplied chunk is valid, especially for the particular -// mode the stream is in. Currently this means that `null` is never accepted -// and undefined/non-string values are only allowed in object mode. -function validChunk(stream, state, chunk, cb) { - var valid = true; - var er = false; - - if (chunk === null) { - er = new TypeError('May not write null values to stream'); - } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { - er = new TypeError('Invalid non-string/buffer chunk'); - } - if (er) { - stream.emit('error', er); - pna.nextTick(cb, er); - valid = false; - } - return valid; -} - -Writable.prototype.write = function (chunk, encoding, cb) { - var state = this._writableState; - var ret = false; - var isBuf = !state.objectMode && _isUint8Array(chunk); - - if (isBuf && !Buffer.isBuffer(chunk)) { - chunk = _uint8ArrayToBuffer(chunk); - } - - if (typeof encoding === 'function') { - cb = encoding; - encoding = null; - } - - if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding; - - if (typeof cb !== 'function') cb = nop; - - if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) { - state.pendingcb++; - ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); - } - - return ret; -}; - -Writable.prototype.cork = function () { - var state = this._writableState; - - state.corked++; -}; - -Writable.prototype.uncork = function () { - var state = this._writableState; - - if (state.corked) { - state.corked--; - - if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); - } -}; - -Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { - // node::ParseEncoding() requires lower case. - if (typeof encoding === 'string') encoding = encoding.toLowerCase(); - if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding); - this._writableState.defaultEncoding = encoding; - return this; -}; - -function decodeChunk(state, chunk, encoding) { - if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') { - chunk = Buffer.from(chunk, encoding); - } - return chunk; -} - -Object.defineProperty(Writable.prototype, 'writableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._writableState.highWaterMark; - } -}); - -// if we're already writing something, then just put this -// in the queue, and wait our turn. Otherwise, call _write -// If we return false, then we need a drain event, so set that flag. -function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { - if (!isBuf) { - var newChunk = decodeChunk(state, chunk, encoding); - if (chunk !== newChunk) { - isBuf = true; - encoding = 'buffer'; - chunk = newChunk; - } - } - var len = state.objectMode ? 1 : chunk.length; - - state.length += len; - - var ret = state.length < state.highWaterMark; - // we must ensure that previous needDrain will not be reset to false. - if (!ret) state.needDrain = true; - - if (state.writing || state.corked) { - var last = state.lastBufferedRequest; - state.lastBufferedRequest = { - chunk: chunk, - encoding: encoding, - isBuf: isBuf, - callback: cb, - next: null - }; - if (last) { - last.next = state.lastBufferedRequest; - } else { - state.bufferedRequest = state.lastBufferedRequest; - } - state.bufferedRequestCount += 1; - } else { - doWrite(stream, state, false, len, chunk, encoding, cb); - } - - return ret; -} - -function doWrite(stream, state, writev, len, chunk, encoding, cb) { - state.writelen = len; - state.writecb = cb; - state.writing = true; - state.sync = true; - if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite); - state.sync = false; -} - -function onwriteError(stream, state, sync, er, cb) { - --state.pendingcb; - - if (sync) { - // defer the callback if we are being called synchronously - // to avoid piling up things on the stack - pna.nextTick(cb, er); - // this can emit finish, and it will always happen - // after error - pna.nextTick(finishMaybe, stream, state); - stream._writableState.errorEmitted = true; - stream.emit('error', er); - } else { - // the caller expect this to happen before if - // it is async - cb(er); - stream._writableState.errorEmitted = true; - stream.emit('error', er); - // this can emit finish, but finish must - // always follow error - finishMaybe(stream, state); - } -} - -function onwriteStateUpdate(state) { - state.writing = false; - state.writecb = null; - state.length -= state.writelen; - state.writelen = 0; -} - -function onwrite(stream, er) { - var state = stream._writableState; - var sync = state.sync; - var cb = state.writecb; - - onwriteStateUpdate(state); - - if (er) onwriteError(stream, state, sync, er, cb);else { - // Check if we're actually ready to finish, but don't emit yet - var finished = needFinish(state); - - if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { - clearBuffer(stream, state); - } - - if (sync) { - /**/ - asyncWrite(afterWrite, stream, state, finished, cb); - /**/ - } else { - afterWrite(stream, state, finished, cb); - } - } -} - -function afterWrite(stream, state, finished, cb) { - if (!finished) onwriteDrain(stream, state); - state.pendingcb--; - cb(); - finishMaybe(stream, state); -} - -// Must force callback to be called on nextTick, so that we don't -// emit 'drain' before the write() consumer gets the 'false' return -// value, and has a chance to attach a 'drain' listener. -function onwriteDrain(stream, state) { - if (state.length === 0 && state.needDrain) { - state.needDrain = false; - stream.emit('drain'); - } -} - -// if there's something in the buffer waiting, then process it -function clearBuffer(stream, state) { - state.bufferProcessing = true; - var entry = state.bufferedRequest; - - if (stream._writev && entry && entry.next) { - // Fast case, write everything using _writev() - var l = state.bufferedRequestCount; - var buffer = new Array(l); - var holder = state.corkedRequestsFree; - holder.entry = entry; - - var count = 0; - var allBuffers = true; - while (entry) { - buffer[count] = entry; - if (!entry.isBuf) allBuffers = false; - entry = entry.next; - count += 1; - } - buffer.allBuffers = allBuffers; - - doWrite(stream, state, true, state.length, buffer, '', holder.finish); - - // doWrite is almost always async, defer these to save a bit of time - // as the hot path ends with doWrite - state.pendingcb++; - state.lastBufferedRequest = null; - if (holder.next) { - state.corkedRequestsFree = holder.next; - holder.next = null; - } else { - state.corkedRequestsFree = new CorkedRequest(state); - } - state.bufferedRequestCount = 0; - } else { - // Slow case, write chunks one-by-one - while (entry) { - var chunk = entry.chunk; - var encoding = entry.encoding; - var cb = entry.callback; - var len = state.objectMode ? 1 : chunk.length; - - doWrite(stream, state, false, len, chunk, encoding, cb); - entry = entry.next; - state.bufferedRequestCount--; - // if we didn't call the onwrite immediately, then - // it means that we need to wait until it does. - // also, that means that the chunk and cb are currently - // being processed, so move the buffer counter past them. - if (state.writing) { - break; - } - } - - if (entry === null) state.lastBufferedRequest = null; - } - - state.bufferedRequest = entry; - state.bufferProcessing = false; -} - -Writable.prototype._write = function (chunk, encoding, cb) { - cb(new Error('_write() is not implemented')); -}; - -Writable.prototype._writev = null; - -Writable.prototype.end = function (chunk, encoding, cb) { - var state = this._writableState; - - if (typeof chunk === 'function') { - cb = chunk; - chunk = null; - encoding = null; - } else if (typeof encoding === 'function') { - cb = encoding; - encoding = null; - } - - if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); - - // .end() fully uncorks - if (state.corked) { - state.corked = 1; - this.uncork(); - } - - // ignore unnecessary end() calls. - if (!state.ending && !state.finished) endWritable(this, state, cb); -}; - -function needFinish(state) { - return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; -} -function callFinal(stream, state) { - stream._final(function (err) { - state.pendingcb--; - if (err) { - stream.emit('error', err); - } - state.prefinished = true; - stream.emit('prefinish'); - finishMaybe(stream, state); - }); -} -function prefinish(stream, state) { - if (!state.prefinished && !state.finalCalled) { - if (typeof stream._final === 'function') { - state.pendingcb++; - state.finalCalled = true; - pna.nextTick(callFinal, stream, state); - } else { - state.prefinished = true; - stream.emit('prefinish'); - } - } -} - -function finishMaybe(stream, state) { - var need = needFinish(state); - if (need) { - prefinish(stream, state); - if (state.pendingcb === 0) { - state.finished = true; - stream.emit('finish'); - } - } - return need; -} - -function endWritable(stream, state, cb) { - state.ending = true; - finishMaybe(stream, state); - if (cb) { - if (state.finished) pna.nextTick(cb);else stream.once('finish', cb); - } - state.ended = true; - stream.writable = false; -} - -function onCorkedFinish(corkReq, state, err) { - var entry = corkReq.entry; - corkReq.entry = null; - while (entry) { - var cb = entry.callback; - state.pendingcb--; - cb(err); - entry = entry.next; - } - if (state.corkedRequestsFree) { - state.corkedRequestsFree.next = corkReq; - } else { - state.corkedRequestsFree = corkReq; - } -} - -Object.defineProperty(Writable.prototype, 'destroyed', { - get: function () { - if (this._writableState === undefined) { - return false; - } - return this._writableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (!this._writableState) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._writableState.destroyed = value; - } -}); - -Writable.prototype.destroy = destroyImpl.destroy; -Writable.prototype._undestroy = destroyImpl.undestroy; -Writable.prototype._destroy = function (err, cb) { - this.end(); - cb(err); -}; -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("timers").setImmediate) - -},{"./_stream_duplex":70,"./internal/streams/destroy":76,"./internal/streams/stream":77,"_process":66,"core-util-is":26,"inherits":31,"process-nextick-args":65,"safe-buffer":79,"timers":85,"util-deprecate":89}],75:[function(require,module,exports){ -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var Buffer = require('safe-buffer').Buffer; -var util = require('util'); - -function copyBuffer(src, target, offset) { - src.copy(target, offset); -} - -module.exports = function () { - function BufferList() { - _classCallCheck(this, BufferList); - - this.head = null; - this.tail = null; - this.length = 0; - } - - BufferList.prototype.push = function push(v) { - var entry = { data: v, next: null }; - if (this.length > 0) this.tail.next = entry;else this.head = entry; - this.tail = entry; - ++this.length; - }; - - BufferList.prototype.unshift = function unshift(v) { - var entry = { data: v, next: this.head }; - if (this.length === 0) this.tail = entry; - this.head = entry; - ++this.length; - }; - - BufferList.prototype.shift = function shift() { - if (this.length === 0) return; - var ret = this.head.data; - if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next; - --this.length; - return ret; - }; - - BufferList.prototype.clear = function clear() { - this.head = this.tail = null; - this.length = 0; - }; - - BufferList.prototype.join = function join(s) { - if (this.length === 0) return ''; - var p = this.head; - var ret = '' + p.data; - while (p = p.next) { - ret += s + p.data; - }return ret; - }; - - BufferList.prototype.concat = function concat(n) { - if (this.length === 0) return Buffer.alloc(0); - if (this.length === 1) return this.head.data; - var ret = Buffer.allocUnsafe(n >>> 0); - var p = this.head; - var i = 0; - while (p) { - copyBuffer(p.data, ret, i); - i += p.data.length; - p = p.next; - } - return ret; - }; - - return BufferList; -}(); - -if (util && util.inspect && util.inspect.custom) { - module.exports.prototype[util.inspect.custom] = function () { - var obj = util.inspect({ length: this.length }); - return this.constructor.name + ' ' + obj; - }; -} -},{"safe-buffer":79,"util":21}],76:[function(require,module,exports){ -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -// undocumented cb() API, needed for core, not for public API -function destroy(err, cb) { - var _this = this; - - var readableDestroyed = this._readableState && this._readableState.destroyed; - var writableDestroyed = this._writableState && this._writableState.destroyed; - - if (readableDestroyed || writableDestroyed) { - if (cb) { - cb(err); - } else if (err && (!this._writableState || !this._writableState.errorEmitted)) { - pna.nextTick(emitErrorNT, this, err); - } - return this; - } - - // we set destroyed to true before firing error callbacks in order - // to make it re-entrance safe in case destroy() is called within callbacks - - if (this._readableState) { - this._readableState.destroyed = true; - } - - // if this is a duplex stream mark the writable part as destroyed as well - if (this._writableState) { - this._writableState.destroyed = true; - } - - this._destroy(err || null, function (err) { - if (!cb && err) { - pna.nextTick(emitErrorNT, _this, err); - if (_this._writableState) { - _this._writableState.errorEmitted = true; - } - } else if (cb) { - cb(err); - } - }); - - return this; -} - -function undestroy() { - if (this._readableState) { - this._readableState.destroyed = false; - this._readableState.reading = false; - this._readableState.ended = false; - this._readableState.endEmitted = false; - } - - if (this._writableState) { - this._writableState.destroyed = false; - this._writableState.ended = false; - this._writableState.ending = false; - this._writableState.finished = false; - this._writableState.errorEmitted = false; - } -} - -function emitErrorNT(self, err) { - self.emit('error', err); -} - -module.exports = { - destroy: destroy, - undestroy: undestroy -}; -},{"process-nextick-args":65}],77:[function(require,module,exports){ -module.exports = require('events').EventEmitter; - -},{"events":27}],78:[function(require,module,exports){ -exports = module.exports = require('./lib/_stream_readable.js'); -exports.Stream = exports; -exports.Readable = exports; -exports.Writable = require('./lib/_stream_writable.js'); -exports.Duplex = require('./lib/_stream_duplex.js'); -exports.Transform = require('./lib/_stream_transform.js'); -exports.PassThrough = require('./lib/_stream_passthrough.js'); - -},{"./lib/_stream_duplex.js":70,"./lib/_stream_passthrough.js":71,"./lib/_stream_readable.js":72,"./lib/_stream_transform.js":73,"./lib/_stream_writable.js":74}],79:[function(require,module,exports){ -/* eslint-disable node/no-deprecated-api */ -var buffer = require('buffer') -var Buffer = buffer.Buffer - -// alternative to using Object.keys for old browsers -function copyProps (src, dst) { - for (var key in src) { - dst[key] = src[key] - } -} -if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) { - module.exports = buffer -} else { - // Copy properties from require('buffer') - copyProps(buffer, exports) - exports.Buffer = SafeBuffer -} - -function SafeBuffer (arg, encodingOrOffset, length) { - return Buffer(arg, encodingOrOffset, length) -} - -// Copy static methods from Buffer -copyProps(Buffer, SafeBuffer) - -SafeBuffer.from = function (arg, encodingOrOffset, length) { - if (typeof arg === 'number') { - throw new TypeError('Argument must not be a number') - } - return Buffer(arg, encodingOrOffset, length) -} - -SafeBuffer.alloc = function (size, fill, encoding) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - var buf = Buffer(size) - if (fill !== undefined) { - if (typeof encoding === 'string') { - buf.fill(fill, encoding) - } else { - buf.fill(fill) - } - } else { - buf.fill(0) - } - return buf -} - -SafeBuffer.allocUnsafe = function (size) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - return Buffer(size) -} - -SafeBuffer.allocUnsafeSlow = function (size) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - return buffer.SlowBuffer(size) -} - -},{"buffer":23}],80:[function(require,module,exports){ -(function (global){ -var ClientRequest = require('./lib/request') -var response = require('./lib/response') -var extend = require('xtend') -var statusCodes = require('builtin-status-codes') -var url = require('url') - -var http = exports - -http.request = function (opts, cb) { - if (typeof opts === 'string') - opts = url.parse(opts) - else - opts = extend(opts) - - // Normally, the page is loaded from http or https, so not specifying a protocol - // will result in a (valid) protocol-relative url. However, this won't work if - // the protocol is something else, like 'file:' - var defaultProtocol = global.location.protocol.search(/^https?:$/) === -1 ? 'http:' : '' - - var protocol = opts.protocol || defaultProtocol - var host = opts.hostname || opts.host - var port = opts.port - var path = opts.path || '/' - - // Necessary for IPv6 addresses - if (host && host.indexOf(':') !== -1) - host = '[' + host + ']' - - // This may be a relative url. The browser should always be able to interpret it correctly. - opts.url = (host ? (protocol + '//' + host) : '') + (port ? ':' + port : '') + path - opts.method = (opts.method || 'GET').toUpperCase() - opts.headers = opts.headers || {} - - // Also valid opts.auth, opts.mode - - var req = new ClientRequest(opts) - if (cb) - req.on('response', cb) - return req -} - -http.get = function get (opts, cb) { - var req = http.request(opts, cb) - req.end() - return req -} - -http.ClientRequest = ClientRequest -http.IncomingMessage = response.IncomingMessage - -http.Agent = function () {} -http.Agent.defaultMaxSockets = 4 - -http.globalAgent = new http.Agent() - -http.STATUS_CODES = statusCodes - -http.METHODS = [ - 'CHECKOUT', - 'CONNECT', - 'COPY', - 'DELETE', - 'GET', - 'HEAD', - 'LOCK', - 'M-SEARCH', - 'MERGE', - 'MKACTIVITY', - 'MKCOL', - 'MOVE', - 'NOTIFY', - 'OPTIONS', - 'PATCH', - 'POST', - 'PROPFIND', - 'PROPPATCH', - 'PURGE', - 'PUT', - 'REPORT', - 'SEARCH', - 'SUBSCRIBE', - 'TRACE', - 'UNLOCK', - 'UNSUBSCRIBE' -] -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./lib/request":82,"./lib/response":83,"builtin-status-codes":24,"url":87,"xtend":90}],81:[function(require,module,exports){ -(function (global){ -exports.fetch = isFunction(global.fetch) && isFunction(global.ReadableStream) - -exports.writableStream = isFunction(global.WritableStream) - -exports.abortController = isFunction(global.AbortController) - -exports.blobConstructor = false -try { - new Blob([new ArrayBuffer(1)]) - exports.blobConstructor = true -} catch (e) {} - -// The xhr request to example.com may violate some restrictive CSP configurations, -// so if we're running in a browser that supports `fetch`, avoid calling getXHR() -// and assume support for certain features below. -var xhr -function getXHR () { - // Cache the xhr value - if (xhr !== undefined) return xhr - - if (global.XMLHttpRequest) { - xhr = new global.XMLHttpRequest() - // If XDomainRequest is available (ie only, where xhr might not work - // cross domain), use the page location. Otherwise use example.com - // Note: this doesn't actually make an http request. - try { - xhr.open('GET', global.XDomainRequest ? '/' : 'https://example.com') - } catch(e) { - xhr = null - } - } else { - // Service workers don't have XHR - xhr = null - } - return xhr -} - -function checkTypeSupport (type) { - var xhr = getXHR() - if (!xhr) return false - try { - xhr.responseType = type - return xhr.responseType === type - } catch (e) {} - return false -} - -// For some strange reason, Safari 7.0 reports typeof global.ArrayBuffer === 'object'. -// Safari 7.1 appears to have fixed this bug. -var haveArrayBuffer = typeof global.ArrayBuffer !== 'undefined' -var haveSlice = haveArrayBuffer && isFunction(global.ArrayBuffer.prototype.slice) - -// If fetch is supported, then arraybuffer will be supported too. Skip calling -// checkTypeSupport(), since that calls getXHR(). -exports.arraybuffer = exports.fetch || (haveArrayBuffer && checkTypeSupport('arraybuffer')) - -// These next two tests unavoidably show warnings in Chrome. Since fetch will always -// be used if it's available, just return false for these to avoid the warnings. -exports.msstream = !exports.fetch && haveSlice && checkTypeSupport('ms-stream') -exports.mozchunkedarraybuffer = !exports.fetch && haveArrayBuffer && - checkTypeSupport('moz-chunked-arraybuffer') - -// If fetch is supported, then overrideMimeType will be supported too. Skip calling -// getXHR(). -exports.overrideMimeType = exports.fetch || (getXHR() ? isFunction(getXHR().overrideMimeType) : false) - -exports.vbArray = isFunction(global.VBArray) - -function isFunction (value) { - return typeof value === 'function' -} - -xhr = null // Help gc - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],82:[function(require,module,exports){ -(function (process,global,Buffer){ -var capability = require('./capability') -var inherits = require('inherits') -var response = require('./response') -var stream = require('readable-stream') -var toArrayBuffer = require('to-arraybuffer') - -var IncomingMessage = response.IncomingMessage -var rStates = response.readyStates - -function decideMode (preferBinary, useFetch) { - if (capability.fetch && useFetch) { - return 'fetch' - } else if (capability.mozchunkedarraybuffer) { - return 'moz-chunked-arraybuffer' - } else if (capability.msstream) { - return 'ms-stream' - } else if (capability.arraybuffer && preferBinary) { - return 'arraybuffer' - } else if (capability.vbArray && preferBinary) { - return 'text:vbarray' - } else { - return 'text' - } -} - -var ClientRequest = module.exports = function (opts) { - var self = this - stream.Writable.call(self) - - self._opts = opts - self._body = [] - self._headers = {} - if (opts.auth) - self.setHeader('Authorization', 'Basic ' + new Buffer(opts.auth).toString('base64')) - Object.keys(opts.headers).forEach(function (name) { - self.setHeader(name, opts.headers[name]) - }) - - var preferBinary - var useFetch = true - if (opts.mode === 'disable-fetch' || ('requestTimeout' in opts && !capability.abortController)) { - // If the use of XHR should be preferred. Not typically needed. - useFetch = false - preferBinary = true - } else if (opts.mode === 'prefer-streaming') { - // If streaming is a high priority but binary compatibility and - // the accuracy of the 'content-type' header aren't - preferBinary = false - } else if (opts.mode === 'allow-wrong-content-type') { - // If streaming is more important than preserving the 'content-type' header - preferBinary = !capability.overrideMimeType - } else if (!opts.mode || opts.mode === 'default' || opts.mode === 'prefer-fast') { - // Use binary if text streaming may corrupt data or the content-type header, or for speed - preferBinary = true - } else { - throw new Error('Invalid value for opts.mode') - } - self._mode = decideMode(preferBinary, useFetch) - self._fetchTimer = null - - self.on('finish', function () { - self._onFinish() - }) -} - -inherits(ClientRequest, stream.Writable) - -ClientRequest.prototype.setHeader = function (name, value) { - var self = this - var lowerName = name.toLowerCase() - // This check is not necessary, but it prevents warnings from browsers about setting unsafe - // headers. To be honest I'm not entirely sure hiding these warnings is a good thing, but - // http-browserify did it, so I will too. - if (unsafeHeaders.indexOf(lowerName) !== -1) - return - - self._headers[lowerName] = { - name: name, - value: value - } -} - -ClientRequest.prototype.getHeader = function (name) { - var header = this._headers[name.toLowerCase()] - if (header) - return header.value - return null -} - -ClientRequest.prototype.removeHeader = function (name) { - var self = this - delete self._headers[name.toLowerCase()] -} - -ClientRequest.prototype._onFinish = function () { - var self = this - - if (self._destroyed) - return - var opts = self._opts - - var headersObj = self._headers - var body = null - if (opts.method !== 'GET' && opts.method !== 'HEAD') { - if (capability.arraybuffer) { - body = toArrayBuffer(Buffer.concat(self._body)) - } else if (capability.blobConstructor) { - body = new global.Blob(self._body.map(function (buffer) { - return toArrayBuffer(buffer) - }), { - type: (headersObj['content-type'] || {}).value || '' - }) - } else { - // get utf8 string - body = Buffer.concat(self._body).toString() - } - } - - // create flattened list of headers - var headersList = [] - Object.keys(headersObj).forEach(function (keyName) { - var name = headersObj[keyName].name - var value = headersObj[keyName].value - if (Array.isArray(value)) { - value.forEach(function (v) { - headersList.push([name, v]) - }) - } else { - headersList.push([name, value]) - } - }) - - if (self._mode === 'fetch') { - var signal = null - var fetchTimer = null - if (capability.abortController) { - var controller = new AbortController() - signal = controller.signal - self._fetchAbortController = controller - - if ('requestTimeout' in opts && opts.requestTimeout !== 0) { - self._fetchTimer = global.setTimeout(function () { - self.emit('requestTimeout') - if (self._fetchAbortController) - self._fetchAbortController.abort() - }, opts.requestTimeout) - } - } - - global.fetch(self._opts.url, { - method: self._opts.method, - headers: headersList, - body: body || undefined, - mode: 'cors', - credentials: opts.withCredentials ? 'include' : 'same-origin', - signal: signal - }).then(function (response) { - self._fetchResponse = response - self._connect() - }, function (reason) { - global.clearTimeout(self._fetchTimer) - if (!self._destroyed) - self.emit('error', reason) - }) - } else { - var xhr = self._xhr = new global.XMLHttpRequest() - try { - xhr.open(self._opts.method, self._opts.url, true) - } catch (err) { - process.nextTick(function () { - self.emit('error', err) - }) - return - } - - // Can't set responseType on really old browsers - if ('responseType' in xhr) - xhr.responseType = self._mode.split(':')[0] - - if ('withCredentials' in xhr) - xhr.withCredentials = !!opts.withCredentials - - if (self._mode === 'text' && 'overrideMimeType' in xhr) - xhr.overrideMimeType('text/plain; charset=x-user-defined') - - if ('requestTimeout' in opts) { - xhr.timeout = opts.requestTimeout - xhr.ontimeout = function () { - self.emit('requestTimeout') - } - } - - headersList.forEach(function (header) { - xhr.setRequestHeader(header[0], header[1]) - }) - - self._response = null - xhr.onreadystatechange = function () { - switch (xhr.readyState) { - case rStates.LOADING: - case rStates.DONE: - self._onXHRProgress() - break - } - } - // Necessary for streaming in Firefox, since xhr.response is ONLY defined - // in onprogress, not in onreadystatechange with xhr.readyState = 3 - if (self._mode === 'moz-chunked-arraybuffer') { - xhr.onprogress = function () { - self._onXHRProgress() - } - } - - xhr.onerror = function () { - if (self._destroyed) - return - self.emit('error', new Error('XHR error')) - } - - try { - xhr.send(body) - } catch (err) { - process.nextTick(function () { - self.emit('error', err) - }) - return - } - } -} - -/** - * Checks if xhr.status is readable and non-zero, indicating no error. - * Even though the spec says it should be available in readyState 3, - * accessing it throws an exception in IE8 - */ -function statusValid (xhr) { - try { - var status = xhr.status - return (status !== null && status !== 0) - } catch (e) { - return false - } -} - -ClientRequest.prototype._onXHRProgress = function () { - var self = this - - if (!statusValid(self._xhr) || self._destroyed) - return - - if (!self._response) - self._connect() - - self._response._onXHRProgress() -} - -ClientRequest.prototype._connect = function () { - var self = this - - if (self._destroyed) - return - - self._response = new IncomingMessage(self._xhr, self._fetchResponse, self._mode, self._fetchTimer) - self._response.on('error', function(err) { - self.emit('error', err) - }) - - self.emit('response', self._response) -} - -ClientRequest.prototype._write = function (chunk, encoding, cb) { - var self = this - - self._body.push(chunk) - cb() -} - -ClientRequest.prototype.abort = ClientRequest.prototype.destroy = function () { - var self = this - self._destroyed = true - global.clearTimeout(self._fetchTimer) - if (self._response) - self._response._destroyed = true - if (self._xhr) - self._xhr.abort() - else if (self._fetchAbortController) - self._fetchAbortController.abort() -} - -ClientRequest.prototype.end = function (data, encoding, cb) { - var self = this - if (typeof data === 'function') { - cb = data - data = undefined - } - - stream.Writable.prototype.end.call(self, data, encoding, cb) -} - -ClientRequest.prototype.flushHeaders = function () {} -ClientRequest.prototype.setTimeout = function () {} -ClientRequest.prototype.setNoDelay = function () {} -ClientRequest.prototype.setSocketKeepAlive = function () {} - -// Taken from http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader%28%29-method -var unsafeHeaders = [ - 'accept-charset', - 'accept-encoding', - 'access-control-request-headers', - 'access-control-request-method', - 'connection', - 'content-length', - 'cookie', - 'cookie2', - 'date', - 'dnt', - 'expect', - 'host', - 'keep-alive', - 'origin', - 'referer', - 'te', - 'trailer', - 'transfer-encoding', - 'upgrade', - 'via' -] - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer) - -},{"./capability":81,"./response":83,"_process":66,"buffer":23,"inherits":31,"readable-stream":78,"to-arraybuffer":86}],83:[function(require,module,exports){ -(function (process,global,Buffer){ -var capability = require('./capability') -var inherits = require('inherits') -var stream = require('readable-stream') - -var rStates = exports.readyStates = { - UNSENT: 0, - OPENED: 1, - HEADERS_RECEIVED: 2, - LOADING: 3, - DONE: 4 -} - -var IncomingMessage = exports.IncomingMessage = function (xhr, response, mode, fetchTimer) { - var self = this - stream.Readable.call(self) - - self._mode = mode - self.headers = {} - self.rawHeaders = [] - self.trailers = {} - self.rawTrailers = [] - - // Fake the 'close' event, but only once 'end' fires - self.on('end', function () { - // The nextTick is necessary to prevent the 'request' module from causing an infinite loop - process.nextTick(function () { - self.emit('close') - }) - }) - - if (mode === 'fetch') { - self._fetchResponse = response - - self.url = response.url - self.statusCode = response.status - self.statusMessage = response.statusText - - response.headers.forEach(function (header, key){ - self.headers[key.toLowerCase()] = header - self.rawHeaders.push(key, header) - }) - - if (capability.writableStream) { - var writable = new WritableStream({ - write: function (chunk) { - return new Promise(function (resolve, reject) { - if (self._destroyed) { - reject() - } else if(self.push(new Buffer(chunk))) { - resolve() - } else { - self._resumeFetch = resolve - } - }) - }, - close: function () { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.push(null) - }, - abort: function (err) { - if (!self._destroyed) - self.emit('error', err) - } - }) - - try { - response.body.pipeTo(writable).catch(function (err) { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.emit('error', err) - }) - return - } catch (e) {} // pipeTo method isn't defined. Can't find a better way to feature test this - } - // fallback for when writableStream or pipeTo aren't available - var reader = response.body.getReader() - function read () { - reader.read().then(function (result) { - if (self._destroyed) - return - if (result.done) { - global.clearTimeout(fetchTimer) - self.push(null) - return - } - self.push(new Buffer(result.value)) - read() - }).catch(function (err) { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.emit('error', err) - }) - } - read() - } else { - self._xhr = xhr - self._pos = 0 - - self.url = xhr.responseURL - self.statusCode = xhr.status - self.statusMessage = xhr.statusText - var headers = xhr.getAllResponseHeaders().split(/\r?\n/) - headers.forEach(function (header) { - var matches = header.match(/^([^:]+):\s*(.*)/) - if (matches) { - var key = matches[1].toLowerCase() - if (key === 'set-cookie') { - if (self.headers[key] === undefined) { - self.headers[key] = [] - } - self.headers[key].push(matches[2]) - } else if (self.headers[key] !== undefined) { - self.headers[key] += ', ' + matches[2] - } else { - self.headers[key] = matches[2] - } - self.rawHeaders.push(matches[1], matches[2]) - } - }) - - self._charset = 'x-user-defined' - if (!capability.overrideMimeType) { - var mimeType = self.rawHeaders['mime-type'] - if (mimeType) { - var charsetMatch = mimeType.match(/;\s*charset=([^;])(;|$)/) - if (charsetMatch) { - self._charset = charsetMatch[1].toLowerCase() - } - } - if (!self._charset) - self._charset = 'utf-8' // best guess - } - } -} - -inherits(IncomingMessage, stream.Readable) - -IncomingMessage.prototype._read = function () { - var self = this - - var resolve = self._resumeFetch - if (resolve) { - self._resumeFetch = null - resolve() - } -} - -IncomingMessage.prototype._onXHRProgress = function () { - var self = this - - var xhr = self._xhr - - var response = null - switch (self._mode) { - case 'text:vbarray': // For IE9 - if (xhr.readyState !== rStates.DONE) - break - try { - // This fails in IE8 - response = new global.VBArray(xhr.responseBody).toArray() - } catch (e) {} - if (response !== null) { - self.push(new Buffer(response)) - break - } - // Falls through in IE8 - case 'text': - try { // This will fail when readyState = 3 in IE9. Switch mode and wait for readyState = 4 - response = xhr.responseText - } catch (e) { - self._mode = 'text:vbarray' - break - } - if (response.length > self._pos) { - var newData = response.substr(self._pos) - if (self._charset === 'x-user-defined') { - var buffer = new Buffer(newData.length) - for (var i = 0; i < newData.length; i++) - buffer[i] = newData.charCodeAt(i) & 0xff - - self.push(buffer) - } else { - self.push(newData, self._charset) - } - self._pos = response.length - } - break - case 'arraybuffer': - if (xhr.readyState !== rStates.DONE || !xhr.response) - break - response = xhr.response - self.push(new Buffer(new Uint8Array(response))) - break - case 'moz-chunked-arraybuffer': // take whole - response = xhr.response - if (xhr.readyState !== rStates.LOADING || !response) - break - self.push(new Buffer(new Uint8Array(response))) - break - case 'ms-stream': - response = xhr.response - if (xhr.readyState !== rStates.LOADING) - break - var reader = new global.MSStreamReader() - reader.onprogress = function () { - if (reader.result.byteLength > self._pos) { - self.push(new Buffer(new Uint8Array(reader.result.slice(self._pos)))) - self._pos = reader.result.byteLength - } - } - reader.onload = function () { - self.push(null) - } - // reader.onerror = ??? // TODO: this - reader.readAsArrayBuffer(response) - break - } - - // The ms-stream case handles end separately in reader.onload() - if (self._xhr.readyState === rStates.DONE && self._mode !== 'ms-stream') { - self.push(null) - } -} - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer) - -},{"./capability":81,"_process":66,"buffer":23,"inherits":31,"readable-stream":78}],84:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -/**/ - -var Buffer = require('safe-buffer').Buffer; -/**/ - -var isEncoding = Buffer.isEncoding || function (encoding) { - encoding = '' + encoding; - switch (encoding && encoding.toLowerCase()) { - case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw': - return true; - default: - return false; - } -}; - -function _normalizeEncoding(enc) { - if (!enc) return 'utf8'; - var retried; - while (true) { - switch (enc) { - case 'utf8': - case 'utf-8': - return 'utf8'; - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return 'utf16le'; - case 'latin1': - case 'binary': - return 'latin1'; - case 'base64': - case 'ascii': - case 'hex': - return enc; - default: - if (retried) return; // undefined - enc = ('' + enc).toLowerCase(); - retried = true; - } - } -}; - -// Do not cache `Buffer.isEncoding` when checking encoding names as some -// modules monkey-patch it to support additional encodings -function normalizeEncoding(enc) { - var nenc = _normalizeEncoding(enc); - if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc); - return nenc || enc; -} - -// StringDecoder provides an interface for efficiently splitting a series of -// buffers into a series of JS strings without breaking apart multi-byte -// characters. -exports.StringDecoder = StringDecoder; -function StringDecoder(encoding) { - this.encoding = normalizeEncoding(encoding); - var nb; - switch (this.encoding) { - case 'utf16le': - this.text = utf16Text; - this.end = utf16End; - nb = 4; - break; - case 'utf8': - this.fillLast = utf8FillLast; - nb = 4; - break; - case 'base64': - this.text = base64Text; - this.end = base64End; - nb = 3; - break; - default: - this.write = simpleWrite; - this.end = simpleEnd; - return; - } - this.lastNeed = 0; - this.lastTotal = 0; - this.lastChar = Buffer.allocUnsafe(nb); -} - -StringDecoder.prototype.write = function (buf) { - if (buf.length === 0) return ''; - var r; - var i; - if (this.lastNeed) { - r = this.fillLast(buf); - if (r === undefined) return ''; - i = this.lastNeed; - this.lastNeed = 0; - } else { - i = 0; - } - if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i); - return r || ''; -}; - -StringDecoder.prototype.end = utf8End; - -// Returns only complete characters in a Buffer -StringDecoder.prototype.text = utf8Text; - -// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer -StringDecoder.prototype.fillLast = function (buf) { - if (this.lastNeed <= buf.length) { - buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); - return this.lastChar.toString(this.encoding, 0, this.lastTotal); - } - buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); - this.lastNeed -= buf.length; -}; - -// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a -// continuation byte. If an invalid byte is detected, -2 is returned. -function utf8CheckByte(byte) { - if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4; - return byte >> 6 === 0x02 ? -1 : -2; -} - -// Checks at most 3 bytes at the end of a Buffer in order to detect an -// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4) -// needed to complete the UTF-8 character (if applicable) are returned. -function utf8CheckIncomplete(self, buf, i) { - var j = buf.length - 1; - if (j < i) return 0; - var nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) self.lastNeed = nb - 1; - return nb; - } - if (--j < i || nb === -2) return 0; - nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) self.lastNeed = nb - 2; - return nb; - } - if (--j < i || nb === -2) return 0; - nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) { - if (nb === 2) nb = 0;else self.lastNeed = nb - 3; - } - return nb; - } - return 0; -} - -// Validates as many continuation bytes for a multi-byte UTF-8 character as -// needed or are available. If we see a non-continuation byte where we expect -// one, we "replace" the validated continuation bytes we've seen so far with -// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding -// behavior. The continuation byte check is included three times in the case -// where all of the continuation bytes for a character exist in the same buffer. -// It is also done this way as a slight performance increase instead of using a -// loop. -function utf8CheckExtraBytes(self, buf, p) { - if ((buf[0] & 0xC0) !== 0x80) { - self.lastNeed = 0; - return '\ufffd'; - } - if (self.lastNeed > 1 && buf.length > 1) { - if ((buf[1] & 0xC0) !== 0x80) { - self.lastNeed = 1; - return '\ufffd'; - } - if (self.lastNeed > 2 && buf.length > 2) { - if ((buf[2] & 0xC0) !== 0x80) { - self.lastNeed = 2; - return '\ufffd'; - } - } - } -} - -// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer. -function utf8FillLast(buf) { - var p = this.lastTotal - this.lastNeed; - var r = utf8CheckExtraBytes(this, buf, p); - if (r !== undefined) return r; - if (this.lastNeed <= buf.length) { - buf.copy(this.lastChar, p, 0, this.lastNeed); - return this.lastChar.toString(this.encoding, 0, this.lastTotal); - } - buf.copy(this.lastChar, p, 0, buf.length); - this.lastNeed -= buf.length; -} - -// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a -// partial character, the character's bytes are buffered until the required -// number of bytes are available. -function utf8Text(buf, i) { - var total = utf8CheckIncomplete(this, buf, i); - if (!this.lastNeed) return buf.toString('utf8', i); - this.lastTotal = total; - var end = buf.length - (total - this.lastNeed); - buf.copy(this.lastChar, 0, end); - return buf.toString('utf8', i, end); -} - -// For UTF-8, a replacement character is added when ending on a partial -// character. -function utf8End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) return r + '\ufffd'; - return r; -} - -// UTF-16LE typically needs two bytes per character, but even if we have an even -// number of bytes available, we need to check if we end on a leading/high -// surrogate. In that case, we need to wait for the next two bytes in order to -// decode the last character properly. -function utf16Text(buf, i) { - if ((buf.length - i) % 2 === 0) { - var r = buf.toString('utf16le', i); - if (r) { - var c = r.charCodeAt(r.length - 1); - if (c >= 0xD800 && c <= 0xDBFF) { - this.lastNeed = 2; - this.lastTotal = 4; - this.lastChar[0] = buf[buf.length - 2]; - this.lastChar[1] = buf[buf.length - 1]; - return r.slice(0, -1); - } - } - return r; - } - this.lastNeed = 1; - this.lastTotal = 2; - this.lastChar[0] = buf[buf.length - 1]; - return buf.toString('utf16le', i, buf.length - 1); -} - -// For UTF-16LE we do not explicitly append special replacement characters if we -// end on a partial character, we simply let v8 handle that. -function utf16End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) { - var end = this.lastTotal - this.lastNeed; - return r + this.lastChar.toString('utf16le', 0, end); - } - return r; -} - -function base64Text(buf, i) { - var n = (buf.length - i) % 3; - if (n === 0) return buf.toString('base64', i); - this.lastNeed = 3 - n; - this.lastTotal = 3; - if (n === 1) { - this.lastChar[0] = buf[buf.length - 1]; - } else { - this.lastChar[0] = buf[buf.length - 2]; - this.lastChar[1] = buf[buf.length - 1]; - } - return buf.toString('base64', i, buf.length - n); -} - -function base64End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed); - return r; -} - -// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex) -function simpleWrite(buf) { - return buf.toString(this.encoding); -} - -function simpleEnd(buf) { - return buf && buf.length ? this.write(buf) : ''; -} -},{"safe-buffer":79}],85:[function(require,module,exports){ -(function (setImmediate,clearImmediate){ -var nextTick = require('process/browser.js').nextTick; -var apply = Function.prototype.apply; -var slice = Array.prototype.slice; -var immediateIds = {}; -var nextImmediateId = 0; - -// DOM APIs, for completeness - -exports.setTimeout = function() { - return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout); -}; -exports.setInterval = function() { - return new Timeout(apply.call(setInterval, window, arguments), clearInterval); -}; -exports.clearTimeout = -exports.clearInterval = function(timeout) { timeout.close(); }; - -function Timeout(id, clearFn) { - this._id = id; - this._clearFn = clearFn; -} -Timeout.prototype.unref = Timeout.prototype.ref = function() {}; -Timeout.prototype.close = function() { - this._clearFn.call(window, this._id); -}; - -// Does not start the time, just sets up the members needed. -exports.enroll = function(item, msecs) { - clearTimeout(item._idleTimeoutId); - item._idleTimeout = msecs; -}; - -exports.unenroll = function(item) { - clearTimeout(item._idleTimeoutId); - item._idleTimeout = -1; -}; - -exports._unrefActive = exports.active = function(item) { - clearTimeout(item._idleTimeoutId); - - var msecs = item._idleTimeout; - if (msecs >= 0) { - item._idleTimeoutId = setTimeout(function onTimeout() { - if (item._onTimeout) - item._onTimeout(); - }, msecs); - } -}; - -// That's not how node.js implements it but the exposed api is the same. -exports.setImmediate = typeof setImmediate === "function" ? setImmediate : function(fn) { - var id = nextImmediateId++; - var args = arguments.length < 2 ? false : slice.call(arguments, 1); - - immediateIds[id] = true; - - nextTick(function onNextTick() { - if (immediateIds[id]) { - // fn.call() is faster so we optimize for the common use-case - // @see http://jsperf.com/call-apply-segu - if (args) { - fn.apply(null, args); - } else { - fn.call(null); - } - // Prevent ids from leaking - exports.clearImmediate(id); - } - }); - - return id; -}; - -exports.clearImmediate = typeof clearImmediate === "function" ? clearImmediate : function(id) { - delete immediateIds[id]; -}; -}).call(this,require("timers").setImmediate,require("timers").clearImmediate) - -},{"process/browser.js":66,"timers":85}],86:[function(require,module,exports){ -var Buffer = require('buffer').Buffer - -module.exports = function (buf) { - // If the buffer is backed by a Uint8Array, a faster version will work - if (buf instanceof Uint8Array) { - // If the buffer isn't a subarray, return the underlying ArrayBuffer - if (buf.byteOffset === 0 && buf.byteLength === buf.buffer.byteLength) { - return buf.buffer - } else if (typeof buf.buffer.slice === 'function') { - // Otherwise we need to get a proper copy - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength) - } - } - - if (Buffer.isBuffer(buf)) { - // This is the slow version that will work with any Buffer - // implementation (even in old browsers) - var arrayCopy = new Uint8Array(buf.length) - var len = buf.length - for (var i = 0; i < len; i++) { - arrayCopy[i] = buf[i] - } - return arrayCopy.buffer - } else { - throw new Error('Argument must be a Buffer') - } -} - -},{"buffer":23}],87:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -var punycode = require('punycode'); -var util = require('./util'); - -exports.parse = urlParse; -exports.resolve = urlResolve; -exports.resolveObject = urlResolveObject; -exports.format = urlFormat; - -exports.Url = Url; - -function Url() { - this.protocol = null; - this.slashes = null; - this.auth = null; - this.host = null; - this.port = null; - this.hostname = null; - this.hash = null; - this.search = null; - this.query = null; - this.pathname = null; - this.path = null; - this.href = null; -} - -// Reference: RFC 3986, RFC 1808, RFC 2396 - -// define these here so at least they only have to be -// compiled once on the first module load. -var protocolPattern = /^([a-z0-9.+-]+:)/i, - portPattern = /:[0-9]*$/, - - // Special case for a simple path URL - simplePathPattern = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/, - - // RFC 2396: characters reserved for delimiting URLs. - // We actually just auto-escape these. - delims = ['<', '>', '"', '`', ' ', '\r', '\n', '\t'], - - // RFC 2396: characters not allowed for various reasons. - unwise = ['{', '}', '|', '\\', '^', '`'].concat(delims), - - // Allowed by RFCs, but cause of XSS attacks. Always escape these. - autoEscape = ['\''].concat(unwise), - // Characters that are never ever allowed in a hostname. - // Note that any invalid chars are also handled, but these - // are the ones that are *expected* to be seen, so we fast-path - // them. - nonHostChars = ['%', '/', '?', ';', '#'].concat(autoEscape), - hostEndingChars = ['/', '?', '#'], - hostnameMaxLen = 255, - hostnamePartPattern = /^[+a-z0-9A-Z_-]{0,63}$/, - hostnamePartStart = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, - // protocols that can allow "unsafe" and "unwise" chars. - unsafeProtocol = { - 'javascript': true, - 'javascript:': true - }, - // protocols that never have a hostname. - hostlessProtocol = { - 'javascript': true, - 'javascript:': true - }, - // protocols that always contain a // bit. - slashedProtocol = { - 'http': true, - 'https': true, - 'ftp': true, - 'gopher': true, - 'file': true, - 'http:': true, - 'https:': true, - 'ftp:': true, - 'gopher:': true, - 'file:': true - }, - querystring = require('querystring'); - -function urlParse(url, parseQueryString, slashesDenoteHost) { - if (url && util.isObject(url) && url instanceof Url) return url; - - var u = new Url; - u.parse(url, parseQueryString, slashesDenoteHost); - return u; -} - -Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) { - if (!util.isString(url)) { - throw new TypeError("Parameter 'url' must be a string, not " + typeof url); - } - - // Copy chrome, IE, opera backslash-handling behavior. - // Back slashes before the query string get converted to forward slashes - // See: https://code.google.com/p/chromium/issues/detail?id=25916 - var queryIndex = url.indexOf('?'), - splitter = - (queryIndex !== -1 && queryIndex < url.indexOf('#')) ? '?' : '#', - uSplit = url.split(splitter), - slashRegex = /\\/g; - uSplit[0] = uSplit[0].replace(slashRegex, '/'); - url = uSplit.join(splitter); - - var rest = url; - - // trim before proceeding. - // This is to support parse stuff like " http://foo.com \n" - rest = rest.trim(); - - if (!slashesDenoteHost && url.split('#').length === 1) { - // Try fast path regexp - var simplePath = simplePathPattern.exec(rest); - if (simplePath) { - this.path = rest; - this.href = rest; - this.pathname = simplePath[1]; - if (simplePath[2]) { - this.search = simplePath[2]; - if (parseQueryString) { - this.query = querystring.parse(this.search.substr(1)); - } else { - this.query = this.search.substr(1); - } - } else if (parseQueryString) { - this.search = ''; - this.query = {}; - } - return this; - } - } - - var proto = protocolPattern.exec(rest); - if (proto) { - proto = proto[0]; - var lowerProto = proto.toLowerCase(); - this.protocol = lowerProto; - rest = rest.substr(proto.length); - } - - // figure out if it's got a host - // user@server is *always* interpreted as a hostname, and url - // resolution will treat //foo/bar as host=foo,path=bar because that's - // how the browser resolves relative URLs. - if (slashesDenoteHost || proto || rest.match(/^\/\/[^@\/]+@[^@\/]+/)) { - var slashes = rest.substr(0, 2) === '//'; - if (slashes && !(proto && hostlessProtocol[proto])) { - rest = rest.substr(2); - this.slashes = true; - } - } - - if (!hostlessProtocol[proto] && - (slashes || (proto && !slashedProtocol[proto]))) { - - // there's a hostname. - // the first instance of /, ?, ;, or # ends the host. - // - // If there is an @ in the hostname, then non-host chars *are* allowed - // to the left of the last @ sign, unless some host-ending character - // comes *before* the @-sign. - // URLs are obnoxious. - // - // ex: - // http://a@b@c/ => user:a@b host:c - // http://a@b?@c => user:a host:c path:/?@c - - // v0.12 TODO(isaacs): This is not quite how Chrome does things. - // Review our test case against browsers more comprehensively. - - // find the first instance of any hostEndingChars - var hostEnd = -1; - for (var i = 0; i < hostEndingChars.length; i++) { - var hec = rest.indexOf(hostEndingChars[i]); - if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) - hostEnd = hec; - } - - // at this point, either we have an explicit point where the - // auth portion cannot go past, or the last @ char is the decider. - var auth, atSign; - if (hostEnd === -1) { - // atSign can be anywhere. - atSign = rest.lastIndexOf('@'); - } else { - // atSign must be in auth portion. - // http://a@b/c@d => host:b auth:a path:/c@d - atSign = rest.lastIndexOf('@', hostEnd); - } - - // Now we have a portion which is definitely the auth. - // Pull that off. - if (atSign !== -1) { - auth = rest.slice(0, atSign); - rest = rest.slice(atSign + 1); - this.auth = decodeURIComponent(auth); - } - - // the host is the remaining to the left of the first non-host char - hostEnd = -1; - for (var i = 0; i < nonHostChars.length; i++) { - var hec = rest.indexOf(nonHostChars[i]); - if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) - hostEnd = hec; - } - // if we still have not hit it, then the entire thing is a host. - if (hostEnd === -1) - hostEnd = rest.length; - - this.host = rest.slice(0, hostEnd); - rest = rest.slice(hostEnd); - - // pull out port. - this.parseHost(); - - // we've indicated that there is a hostname, - // so even if it's empty, it has to be present. - this.hostname = this.hostname || ''; - - // if hostname begins with [ and ends with ] - // assume that it's an IPv6 address. - var ipv6Hostname = this.hostname[0] === '[' && - this.hostname[this.hostname.length - 1] === ']'; - - // validate a little. - if (!ipv6Hostname) { - var hostparts = this.hostname.split(/\./); - for (var i = 0, l = hostparts.length; i < l; i++) { - var part = hostparts[i]; - if (!part) continue; - if (!part.match(hostnamePartPattern)) { - var newpart = ''; - for (var j = 0, k = part.length; j < k; j++) { - if (part.charCodeAt(j) > 127) { - // we replace non-ASCII char with a temporary placeholder - // we need this to make sure size of hostname is not - // broken by replacing non-ASCII by nothing - newpart += 'x'; - } else { - newpart += part[j]; - } - } - // we test again with ASCII char only - if (!newpart.match(hostnamePartPattern)) { - var validParts = hostparts.slice(0, i); - var notHost = hostparts.slice(i + 1); - var bit = part.match(hostnamePartStart); - if (bit) { - validParts.push(bit[1]); - notHost.unshift(bit[2]); - } - if (notHost.length) { - rest = '/' + notHost.join('.') + rest; - } - this.hostname = validParts.join('.'); - break; - } - } - } - } - - if (this.hostname.length > hostnameMaxLen) { - this.hostname = ''; - } else { - // hostnames are always lower case. - this.hostname = this.hostname.toLowerCase(); - } - - if (!ipv6Hostname) { - // IDNA Support: Returns a punycoded representation of "domain". - // It only converts parts of the domain name that - // have non-ASCII characters, i.e. it doesn't matter if - // you call it with a domain that already is ASCII-only. - this.hostname = punycode.toASCII(this.hostname); - } - - var p = this.port ? ':' + this.port : ''; - var h = this.hostname || ''; - this.host = h + p; - this.href += this.host; - - // strip [ and ] from the hostname - // the host field still retains them, though - if (ipv6Hostname) { - this.hostname = this.hostname.substr(1, this.hostname.length - 2); - if (rest[0] !== '/') { - rest = '/' + rest; - } - } - } - - // now rest is set to the post-host stuff. - // chop off any delim chars. - if (!unsafeProtocol[lowerProto]) { - - // First, make 100% sure that any "autoEscape" chars get - // escaped, even if encodeURIComponent doesn't think they - // need to be. - for (var i = 0, l = autoEscape.length; i < l; i++) { - var ae = autoEscape[i]; - if (rest.indexOf(ae) === -1) - continue; - var esc = encodeURIComponent(ae); - if (esc === ae) { - esc = escape(ae); - } - rest = rest.split(ae).join(esc); - } - } - - - // chop off from the tail first. - var hash = rest.indexOf('#'); - if (hash !== -1) { - // got a fragment string. - this.hash = rest.substr(hash); - rest = rest.slice(0, hash); - } - var qm = rest.indexOf('?'); - if (qm !== -1) { - this.search = rest.substr(qm); - this.query = rest.substr(qm + 1); - if (parseQueryString) { - this.query = querystring.parse(this.query); - } - rest = rest.slice(0, qm); - } else if (parseQueryString) { - // no query string, but parseQueryString still requested - this.search = ''; - this.query = {}; - } - if (rest) this.pathname = rest; - if (slashedProtocol[lowerProto] && - this.hostname && !this.pathname) { - this.pathname = '/'; - } - - //to support http.request - if (this.pathname || this.search) { - var p = this.pathname || ''; - var s = this.search || ''; - this.path = p + s; - } - - // finally, reconstruct the href based on what has been validated. - this.href = this.format(); - return this; -}; - -// format a parsed object into a url string -function urlFormat(obj) { - // ensure it's an object, and not a string url. - // If it's an obj, this is a no-op. - // this way, you can call url_format() on strings - // to clean up potentially wonky urls. - if (util.isString(obj)) obj = urlParse(obj); - if (!(obj instanceof Url)) return Url.prototype.format.call(obj); - return obj.format(); -} - -Url.prototype.format = function() { - var auth = this.auth || ''; - if (auth) { - auth = encodeURIComponent(auth); - auth = auth.replace(/%3A/i, ':'); - auth += '@'; - } - - var protocol = this.protocol || '', - pathname = this.pathname || '', - hash = this.hash || '', - host = false, - query = ''; - - if (this.host) { - host = auth + this.host; - } else if (this.hostname) { - host = auth + (this.hostname.indexOf(':') === -1 ? - this.hostname : - '[' + this.hostname + ']'); - if (this.port) { - host += ':' + this.port; - } - } - - if (this.query && - util.isObject(this.query) && - Object.keys(this.query).length) { - query = querystring.stringify(this.query); - } - - var search = this.search || (query && ('?' + query)) || ''; - - if (protocol && protocol.substr(-1) !== ':') protocol += ':'; - - // only the slashedProtocols get the //. Not mailto:, xmpp:, etc. - // unless they had them to begin with. - if (this.slashes || - (!protocol || slashedProtocol[protocol]) && host !== false) { - host = '//' + (host || ''); - if (pathname && pathname.charAt(0) !== '/') pathname = '/' + pathname; - } else if (!host) { - host = ''; - } - - if (hash && hash.charAt(0) !== '#') hash = '#' + hash; - if (search && search.charAt(0) !== '?') search = '?' + search; - - pathname = pathname.replace(/[?#]/g, function(match) { - return encodeURIComponent(match); - }); - search = search.replace('#', '%23'); - - return protocol + host + pathname + search + hash; -}; - -function urlResolve(source, relative) { - return urlParse(source, false, true).resolve(relative); -} - -Url.prototype.resolve = function(relative) { - return this.resolveObject(urlParse(relative, false, true)).format(); -}; - -function urlResolveObject(source, relative) { - if (!source) return relative; - return urlParse(source, false, true).resolveObject(relative); -} - -Url.prototype.resolveObject = function(relative) { - if (util.isString(relative)) { - var rel = new Url(); - rel.parse(relative, false, true); - relative = rel; - } - - var result = new Url(); - var tkeys = Object.keys(this); - for (var tk = 0; tk < tkeys.length; tk++) { - var tkey = tkeys[tk]; - result[tkey] = this[tkey]; - } - - // hash is always overridden, no matter what. - // even href="" will remove it. - result.hash = relative.hash; - - // if the relative url is empty, then there's nothing left to do here. - if (relative.href === '') { - result.href = result.format(); - return result; - } - - // hrefs like //foo/bar always cut to the protocol. - if (relative.slashes && !relative.protocol) { - // take everything except the protocol from relative - var rkeys = Object.keys(relative); - for (var rk = 0; rk < rkeys.length; rk++) { - var rkey = rkeys[rk]; - if (rkey !== 'protocol') - result[rkey] = relative[rkey]; - } - - //urlParse appends trailing / to urls like http://www.example.com - if (slashedProtocol[result.protocol] && - result.hostname && !result.pathname) { - result.path = result.pathname = '/'; - } - - result.href = result.format(); - return result; - } - - if (relative.protocol && relative.protocol !== result.protocol) { - // if it's a known url protocol, then changing - // the protocol does weird things - // first, if it's not file:, then we MUST have a host, - // and if there was a path - // to begin with, then we MUST have a path. - // if it is file:, then the host is dropped, - // because that's known to be hostless. - // anything else is assumed to be absolute. - if (!slashedProtocol[relative.protocol]) { - var keys = Object.keys(relative); - for (var v = 0; v < keys.length; v++) { - var k = keys[v]; - result[k] = relative[k]; - } - result.href = result.format(); - return result; - } - - result.protocol = relative.protocol; - if (!relative.host && !hostlessProtocol[relative.protocol]) { - var relPath = (relative.pathname || '').split('/'); - while (relPath.length && !(relative.host = relPath.shift())); - if (!relative.host) relative.host = ''; - if (!relative.hostname) relative.hostname = ''; - if (relPath[0] !== '') relPath.unshift(''); - if (relPath.length < 2) relPath.unshift(''); - result.pathname = relPath.join('/'); - } else { - result.pathname = relative.pathname; - } - result.search = relative.search; - result.query = relative.query; - result.host = relative.host || ''; - result.auth = relative.auth; - result.hostname = relative.hostname || relative.host; - result.port = relative.port; - // to support http.request - if (result.pathname || result.search) { - var p = result.pathname || ''; - var s = result.search || ''; - result.path = p + s; - } - result.slashes = result.slashes || relative.slashes; - result.href = result.format(); - return result; - } - - var isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/'), - isRelAbs = ( - relative.host || - relative.pathname && relative.pathname.charAt(0) === '/' - ), - mustEndAbs = (isRelAbs || isSourceAbs || - (result.host && relative.pathname)), - removeAllDots = mustEndAbs, - srcPath = result.pathname && result.pathname.split('/') || [], - relPath = relative.pathname && relative.pathname.split('/') || [], - psychotic = result.protocol && !slashedProtocol[result.protocol]; - - // if the url is a non-slashed url, then relative - // links like ../.. should be able - // to crawl up to the hostname, as well. This is strange. - // result.protocol has already been set by now. - // Later on, put the first path part into the host field. - if (psychotic) { - result.hostname = ''; - result.port = null; - if (result.host) { - if (srcPath[0] === '') srcPath[0] = result.host; - else srcPath.unshift(result.host); - } - result.host = ''; - if (relative.protocol) { - relative.hostname = null; - relative.port = null; - if (relative.host) { - if (relPath[0] === '') relPath[0] = relative.host; - else relPath.unshift(relative.host); - } - relative.host = null; - } - mustEndAbs = mustEndAbs && (relPath[0] === '' || srcPath[0] === ''); - } - - if (isRelAbs) { - // it's absolute. - result.host = (relative.host || relative.host === '') ? - relative.host : result.host; - result.hostname = (relative.hostname || relative.hostname === '') ? - relative.hostname : result.hostname; - result.search = relative.search; - result.query = relative.query; - srcPath = relPath; - // fall through to the dot-handling below. - } else if (relPath.length) { - // it's relative - // throw away the existing file, and take the new path instead. - if (!srcPath) srcPath = []; - srcPath.pop(); - srcPath = srcPath.concat(relPath); - result.search = relative.search; - result.query = relative.query; - } else if (!util.isNullOrUndefined(relative.search)) { - // just pull out the search. - // like href='?foo'. - // Put this after the other two cases because it simplifies the booleans - if (psychotic) { - result.hostname = result.host = srcPath.shift(); - //occationaly the auth can get stuck only in host - //this especially happens in cases like - //url.resolveObject('mailto:local1@domain1', 'local2@domain2') - var authInHost = result.host && result.host.indexOf('@') > 0 ? - result.host.split('@') : false; - if (authInHost) { - result.auth = authInHost.shift(); - result.host = result.hostname = authInHost.shift(); - } - } - result.search = relative.search; - result.query = relative.query; - //to support http.request - if (!util.isNull(result.pathname) || !util.isNull(result.search)) { - result.path = (result.pathname ? result.pathname : '') + - (result.search ? result.search : ''); - } - result.href = result.format(); - return result; - } - - if (!srcPath.length) { - // no path at all. easy. - // we've already handled the other stuff above. - result.pathname = null; - //to support http.request - if (result.search) { - result.path = '/' + result.search; - } else { - result.path = null; - } - result.href = result.format(); - return result; - } - - // if a url ENDs in . or .., then it must get a trailing slash. - // however, if it ends in anything else non-slashy, - // then it must NOT get a trailing slash. - var last = srcPath.slice(-1)[0]; - var hasTrailingSlash = ( - (result.host || relative.host || srcPath.length > 1) && - (last === '.' || last === '..') || last === ''); - - // strip single dots, resolve double dots to parent dir - // if the path tries to go above the root, `up` ends up > 0 - var up = 0; - for (var i = srcPath.length; i >= 0; i--) { - last = srcPath[i]; - if (last === '.') { - srcPath.splice(i, 1); - } else if (last === '..') { - srcPath.splice(i, 1); - up++; - } else if (up) { - srcPath.splice(i, 1); - up--; - } - } - - // if the path is allowed to go above the root, restore leading ..s - if (!mustEndAbs && !removeAllDots) { - for (; up--; up) { - srcPath.unshift('..'); - } - } - - if (mustEndAbs && srcPath[0] !== '' && - (!srcPath[0] || srcPath[0].charAt(0) !== '/')) { - srcPath.unshift(''); - } - - if (hasTrailingSlash && (srcPath.join('/').substr(-1) !== '/')) { - srcPath.push(''); - } - - var isAbsolute = srcPath[0] === '' || - (srcPath[0] && srcPath[0].charAt(0) === '/'); - - // put the host back - if (psychotic) { - result.hostname = result.host = isAbsolute ? '' : - srcPath.length ? srcPath.shift() : ''; - //occationaly the auth can get stuck only in host - //this especially happens in cases like - //url.resolveObject('mailto:local1@domain1', 'local2@domain2') - var authInHost = result.host && result.host.indexOf('@') > 0 ? - result.host.split('@') : false; - if (authInHost) { - result.auth = authInHost.shift(); - result.host = result.hostname = authInHost.shift(); - } - } - - mustEndAbs = mustEndAbs || (result.host && srcPath.length); - - if (mustEndAbs && !isAbsolute) { - srcPath.unshift(''); - } - - if (!srcPath.length) { - result.pathname = null; - result.path = null; - } else { - result.pathname = srcPath.join('/'); - } - - //to support request.http - if (!util.isNull(result.pathname) || !util.isNull(result.search)) { - result.path = (result.pathname ? result.pathname : '') + - (result.search ? result.search : ''); - } - result.auth = relative.auth || result.auth; - result.slashes = result.slashes || relative.slashes; - result.href = result.format(); - return result; -}; - -Url.prototype.parseHost = function() { - var host = this.host; - var port = portPattern.exec(host); - if (port) { - port = port[0]; - if (port !== ':') { - this.port = port.substr(1); - } - host = host.substr(0, host.length - port.length); - } - if (host) this.hostname = host; -}; - -},{"./util":88,"punycode":22,"querystring":69}],88:[function(require,module,exports){ -'use strict'; - -module.exports = { - isString: function(arg) { - return typeof(arg) === 'string'; - }, - isObject: function(arg) { - return typeof(arg) === 'object' && arg !== null; - }, - isNull: function(arg) { - return arg === null; - }, - isNullOrUndefined: function(arg) { - return arg == null; - } -}; - -},{}],89:[function(require,module,exports){ -(function (global){ - -/** - * Module exports. - */ - -module.exports = deprecate; - -/** - * Mark that a method should not be used. - * Returns a modified function which warns once by default. - * - * If `localStorage.noDeprecation = true` is set, then it is a no-op. - * - * If `localStorage.throwDeprecation = true` is set, then deprecated functions - * will throw an Error when invoked. - * - * If `localStorage.traceDeprecation = true` is set, then deprecated functions - * will invoke `console.trace()` instead of `console.error()`. - * - * @param {Function} fn - the function to deprecate - * @param {String} msg - the string to print to the console when `fn` is invoked - * @returns {Function} a new "deprecated" version of `fn` - * @api public - */ - -function deprecate (fn, msg) { - if (config('noDeprecation')) { - return fn; - } - - var warned = false; - function deprecated() { - if (!warned) { - if (config('throwDeprecation')) { - throw new Error(msg); - } else if (config('traceDeprecation')) { - console.trace(msg); - } else { - console.warn(msg); - } - warned = true; - } - return fn.apply(this, arguments); - } - - return deprecated; -} - -/** - * Checks `localStorage` for boolean values for the given `name`. - * - * @param {String} name - * @returns {Boolean} - * @api private - */ - -function config (name) { - // accessing global.localStorage can trigger a DOMException in sandboxed iframes - try { - if (!global.localStorage) return false; - } catch (_) { - return false; - } - var val = global.localStorage[name]; - if (null == val) return false; - return String(val).toLowerCase() === 'true'; -} - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],90:[function(require,module,exports){ -module.exports = extend - -var hasOwnProperty = Object.prototype.hasOwnProperty; - -function extend() { - var target = {} - - for (var i = 0; i < arguments.length; i++) { - var source = arguments[i] - - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - target[key] = source[key] - } - } - } - - return target -} - -},{}]},{},[3])(3) -}); -//# sourceMappingURL=ref-parser.js.map diff --git a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js.map b/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js.map deleted file mode 100644 index baad76f..0000000 --- a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.js.map +++ /dev/null @@ -1,193 +0,0 @@ -{ - "version": 3, - "sources": [ - "../node_modules/browser-pack/_prelude.js", - "../lib/bundle.js", - "../lib/dereference.js", - "../lib/index.js", - "../lib/normalize-args.js", - "../lib/options.js", - "../lib/parse.js", - "../lib/parsers/binary.js", - "../lib/parsers/json.js", - "../lib/parsers/text.js", - "../lib/parsers/yaml.js", - "../lib/pointer.js", - "../lib/ref.js", - "../lib/refs.js", - "../lib/resolve-external.js", - "../lib/resolvers/file.js", - "../lib/resolvers/http.js", - "../lib/util/plugins.js", - "../lib/util/url.js", - "../lib/util/yaml.js", - "../node_modules/base64-js/index.js", - "../node_modules/browser-resolve/empty.js", - "../node_modules/browserify/node_modules/punycode/punycode.js", - "../node_modules/buffer/index.js", - "../node_modules/builtin-status-codes/browser.js", - "../node_modules/call-me-maybe/index.js", - "../node_modules/core-util-is/lib/util.js", - "../node_modules/events/events.js", - "../node_modules/format-util/format.js", - "../node_modules/https-browserify/index.js", - "../node_modules/ieee754/index.js", - "../node_modules/inherits/inherits_browser.js", - "../node_modules/is-buffer/index.js", - "../node_modules/isarray/index.js", - "../node_modules/js-yaml/index.js", - "../node_modules/js-yaml/lib/js-yaml.js", - "../node_modules/js-yaml/lib/js-yaml/common.js", - "../node_modules/js-yaml/lib/js-yaml/dumper.js", - "../node_modules/js-yaml/lib/js-yaml/exception.js", - "../node_modules/js-yaml/lib/js-yaml/loader.js", - "../node_modules/js-yaml/lib/js-yaml/mark.js", - "../node_modules/js-yaml/lib/js-yaml/schema.js", - "../node_modules/js-yaml/lib/js-yaml/schema/core.js", - "../node_modules/js-yaml/lib/js-yaml/schema/default_full.js", - "../node_modules/js-yaml/lib/js-yaml/schema/default_safe.js", - "../node_modules/js-yaml/lib/js-yaml/schema/failsafe.js", - "../node_modules/js-yaml/lib/js-yaml/schema/json.js", - "../node_modules/js-yaml/lib/js-yaml/type.js", - "../node_modules/js-yaml/lib/js-yaml/type/binary.js", - "../node_modules/js-yaml/lib/js-yaml/type/bool.js", - "../node_modules/js-yaml/lib/js-yaml/type/float.js", - "../node_modules/js-yaml/lib/js-yaml/type/int.js", - "../node_modules/js-yaml/lib/js-yaml/type/js/function.js", - "../node_modules/js-yaml/lib/js-yaml/type/js/regexp.js", - "../node_modules/js-yaml/lib/js-yaml/type/js/undefined.js", - "../node_modules/js-yaml/lib/js-yaml/type/map.js", - "../node_modules/js-yaml/lib/js-yaml/type/merge.js", - "../node_modules/js-yaml/lib/js-yaml/type/null.js", - "../node_modules/js-yaml/lib/js-yaml/type/omap.js", - "../node_modules/js-yaml/lib/js-yaml/type/pairs.js", - "../node_modules/js-yaml/lib/js-yaml/type/seq.js", - "../node_modules/js-yaml/lib/js-yaml/type/set.js", - "../node_modules/js-yaml/lib/js-yaml/type/str.js", - "../node_modules/js-yaml/lib/js-yaml/type/timestamp.js", - "../node_modules/ono/lib/ono.js", - "../node_modules/process-nextick-args/index.js", - "../node_modules/process/browser.js", - "../node_modules/querystring-es3/decode.js", - "../node_modules/querystring-es3/encode.js", - "../node_modules/querystring-es3/index.js", - "../node_modules/readable-stream/lib/_stream_duplex.js", - "../node_modules/readable-stream/lib/_stream_passthrough.js", - "../node_modules/readable-stream/lib/_stream_readable.js", - "../node_modules/readable-stream/lib/_stream_transform.js", - "../node_modules/readable-stream/lib/_stream_writable.js", - "../node_modules/readable-stream/lib/internal/streams/BufferList.js", - "../node_modules/readable-stream/lib/internal/streams/destroy.js", - "../node_modules/readable-stream/lib/internal/streams/stream-browser.js", - "../node_modules/readable-stream/readable-browser.js", - "../node_modules/safe-buffer/index.js", - "../node_modules/stream-http/index.js", - "../node_modules/stream-http/lib/capability.js", - "../node_modules/stream-http/lib/request.js", - "../node_modules/stream-http/lib/response.js", - "../node_modules/string_decoder/lib/string_decoder.js", - "../node_modules/timers-browserify/main.js", - "../node_modules/to-arraybuffer/index.js", - "../node_modules/url/url.js", - "../node_modules/url/util.js", - "../node_modules/util-deprecate/browser.js", - "../node_modules/xtend/immutable.js" - ], - "names": [], - "mappings": ";;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACrJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC9PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AClHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACpJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACnLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC1JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC9NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvJA;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACrhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3gBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3zBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9jDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC7SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC1/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACrNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC9qBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEA;AACA;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;ACvUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AChOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACvSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5tBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA", - "file": "generated.js", - "sourceRoot": "", - "sourcesContent": [ - "(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 0 ? filteredParsers : allParsers;\n\n // Run the parsers, in order, until one of them succeeds\n plugins.sort(parsers);\n plugins.run(parsers, \"parse\", file)\n .then(onParsed, onError);\n\n function onParsed (parser) {\n if (!parser.plugin.allowEmpty && isEmpty(parser.result)) {\n reject(ono.syntax('Error parsing \"%s\" as %s. \\nParsed value is empty', file.url, parser.plugin.name));\n }\n else {\n resolve(parser);\n }\n }\n\n function onError (err) {\n if (err) {\n err = err instanceof Error ? err : new Error(err);\n reject(ono.syntax(err, \"Error parsing %s\", file.url));\n }\n else {\n reject(ono.syntax(\"Unable to parse %s\", file.url));\n }\n }\n });\n}\n\n/**\n * Determines whether the parsed value is \"empty\".\n *\n * @param {*} value\n * @returns {boolean}\n */\nfunction isEmpty (value) {\n return value === undefined ||\n (typeof value === \"object\" && Object.keys(value).length === 0) ||\n (typeof value === \"string\" && value.trim().length === 0) ||\n (Buffer.isBuffer(value) && value.length === 0);\n}\n", - "\"use strict\";\n\nvar BINARY_REGEXP = /\\.(jpeg|jpg|gif|png|bmp|ico)$/i;\n\nmodule.exports = {\n /**\n * The order that this parser will run, in relation to other parsers.\n *\n * @type {number}\n */\n order: 400,\n\n /**\n * Whether to allow \"empty\" files (zero bytes).\n *\n * @type {boolean}\n */\n allowEmpty: true,\n\n /**\n * Determines whether this parser can parse a given file reference.\n * Parsers that return true will be tried, in order, until one successfully parses the file.\n * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case\n * every parser will be tried.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {boolean}\n */\n canParse: function isBinary (file) {\n // Use this parser if the file is a Buffer, and has a known binary extension\n return Buffer.isBuffer(file.data) && BINARY_REGEXP.test(file.url);\n },\n\n /**\n * Parses the given data as a Buffer (byte array).\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {Promise}\n */\n parse: function parseBinary (file) {\n if (Buffer.isBuffer(file.data)) {\n return file.data;\n }\n else {\n // This will reject if data is anything other than a string or typed array\n return new Buffer(file.data);\n }\n }\n};\n", - "\"use strict\";\n\nmodule.exports = {\n /**\n * The order that this parser will run, in relation to other parsers.\n *\n * @type {number}\n */\n order: 100,\n\n /**\n * Whether to allow \"empty\" files. This includes zero-byte files, as well as empty JSON objects.\n *\n * @type {boolean}\n */\n allowEmpty: true,\n\n /**\n * Determines whether this parser can parse a given file reference.\n * Parsers that match will be tried, in order, until one successfully parses the file.\n * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case\n * every parser will be tried.\n *\n * @type {RegExp|string[]|function}\n */\n canParse: \".json\",\n\n /**\n * Parses the given file as JSON\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {Promise}\n */\n parse: function parseJSON (file) {\n return new Promise(function (resolve, reject) {\n var data = file.data;\n if (Buffer.isBuffer(data)) {\n data = data.toString();\n }\n\n if (typeof data === \"string\") {\n if (data.trim().length === 0) {\n resolve(undefined); // This mirrors the YAML behavior\n }\n else {\n resolve(JSON.parse(data));\n }\n }\n else {\n // data is already a JavaScript value (object, array, number, null, NaN, etc.)\n resolve(data);\n }\n });\n }\n};\n", - "\"use strict\";\n\nvar TEXT_REGEXP = /\\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i;\n\nmodule.exports = {\n /**\n * The order that this parser will run, in relation to other parsers.\n *\n * @type {number}\n */\n order: 300,\n\n /**\n * Whether to allow \"empty\" files (zero bytes).\n *\n * @type {boolean}\n */\n allowEmpty: true,\n\n /**\n * The encoding that the text is expected to be in.\n *\n * @type {string}\n */\n encoding: \"utf8\",\n\n /**\n * Determines whether this parser can parse a given file reference.\n * Parsers that return true will be tried, in order, until one successfully parses the file.\n * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case\n * every parser will be tried.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {boolean}\n */\n canParse: function isText (file) {\n // Use this parser if the file is a string or Buffer, and has a known text-based extension\n return (typeof file.data === \"string\" || Buffer.isBuffer(file.data)) && TEXT_REGEXP.test(file.url);\n },\n\n /**\n * Parses the given file as text\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {Promise}\n */\n parse: function parseText (file) {\n if (typeof file.data === \"string\") {\n return file.data;\n }\n else if (Buffer.isBuffer(file.data)) {\n return file.data.toString(this.encoding);\n }\n else {\n throw new Error(\"data is not text\");\n }\n }\n};\n", - "\"use strict\";\n\nvar YAML = require(\"../util/yaml\");\n\nmodule.exports = {\n /**\n * The order that this parser will run, in relation to other parsers.\n *\n * @type {number}\n */\n order: 200,\n\n /**\n * Whether to allow \"empty\" files. This includes zero-byte files, as well as empty JSON objects.\n *\n * @type {boolean}\n */\n allowEmpty: true,\n\n /**\n * Determines whether this parser can parse a given file reference.\n * Parsers that match will be tried, in order, until one successfully parses the file.\n * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case\n * every parser will be tried.\n *\n * @type {RegExp|string[]|function}\n */\n canParse: [\".yaml\", \".yml\", \".json\"], // JSON is valid YAML\n\n /**\n * Parses the given file as YAML\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver\n * @returns {Promise}\n */\n parse: function parseYAML (file) {\n return new Promise(function (resolve, reject) {\n var data = file.data;\n if (Buffer.isBuffer(data)) {\n data = data.toString();\n }\n\n if (typeof data === \"string\") {\n resolve(YAML.parse(data));\n }\n else {\n // data is already a JavaScript value (object, array, number, null, NaN, etc.)\n resolve(data);\n }\n });\n }\n};\n", - "\"use strict\";\n\nmodule.exports = Pointer;\n\nvar $Ref = require(\"./ref\"),\n url = require(\"./util/url\"),\n ono = require(\"ono\"),\n slashes = /\\//g,\n tildes = /~/g,\n escapedSlash = /~1/g,\n escapedTilde = /~0/g;\n\n/**\n * This class represents a single JSON pointer and its resolved value.\n *\n * @param {$Ref} $ref\n * @param {string} path\n * @param {string} [friendlyPath] - The original user-specified path (used for error messages)\n * @constructor\n */\nfunction Pointer ($ref, path, friendlyPath) {\n /**\n * The {@link $Ref} object that contains this {@link Pointer} object.\n * @type {$Ref}\n */\n this.$ref = $ref;\n\n /**\n * The file path or URL, containing the JSON pointer in the hash.\n * This path is relative to the path of the main JSON schema file.\n * @type {string}\n */\n this.path = path;\n\n /**\n * The original path or URL, used for error messages.\n * @type {string}\n */\n this.originalPath = friendlyPath || path;\n\n /**\n * The value of the JSON pointer.\n * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays).\n * @type {?*}\n */\n this.value = undefined;\n\n /**\n * Indicates whether the pointer references itself.\n * @type {boolean}\n */\n this.circular = false;\n\n /**\n * The number of indirect references that were traversed to resolve the value.\n * Resolving a single pointer may require resolving multiple $Refs.\n * @type {number}\n */\n this.indirections = 0;\n}\n\n/**\n * Resolves the value of a nested property within the given object.\n *\n * @param {*} obj - The object that will be crawled\n * @param {$RefParserOptions} options\n *\n * @returns {Pointer}\n * Returns a JSON pointer whose {@link Pointer#value} is the resolved value.\n * If resolving this value required resolving other JSON references, then\n * the {@link Pointer#$ref} and {@link Pointer#path} will reflect the resolution path\n * of the resolved value.\n */\nPointer.prototype.resolve = function (obj, options) {\n var tokens = Pointer.parse(this.path);\n\n // Crawl the object, one token at a time\n this.value = obj;\n for (var i = 0; i < tokens.length; i++) {\n if (resolveIf$Ref(this, options)) {\n // The $ref path has changed, so append the remaining tokens to the path\n this.path = Pointer.join(this.path, tokens.slice(i));\n }\n\n var token = tokens[i];\n if (this.value[token] === undefined) {\n throw ono.syntax('Error resolving $ref pointer \"%s\". \\nToken \"%s\" does not exist.', this.originalPath, token);\n }\n else {\n this.value = this.value[token];\n }\n }\n\n // Resolve the final value\n resolveIf$Ref(this, options);\n return this;\n};\n\n/**\n * Sets the value of a nested property within the given object.\n *\n * @param {*} obj - The object that will be crawled\n * @param {*} value - the value to assign\n * @param {$RefParserOptions} options\n *\n * @returns {*}\n * Returns the modified object, or an entirely new object if the entire object is overwritten.\n */\nPointer.prototype.set = function (obj, value, options) {\n var tokens = Pointer.parse(this.path);\n var token;\n\n if (tokens.length === 0) {\n // There are no tokens, replace the entire object with the new value\n this.value = value;\n return value;\n }\n\n // Crawl the object, one token at a time\n this.value = obj;\n for (var i = 0; i < tokens.length - 1; i++) {\n resolveIf$Ref(this, options);\n\n token = tokens[i];\n if (this.value && this.value[token] !== undefined) {\n // The token exists\n this.value = this.value[token];\n }\n else {\n // The token doesn't exist, so create it\n this.value = setValue(this, token, {});\n }\n }\n\n // Set the value of the final token\n resolveIf$Ref(this, options);\n token = tokens[tokens.length - 1];\n setValue(this, token, value);\n\n // Return the updated object\n return obj;\n};\n\n/**\n * Parses a JSON pointer (or a path containing a JSON pointer in the hash)\n * and returns an array of the pointer's tokens.\n * (e.g. \"schema.json#/definitions/person/name\" => [\"definitions\", \"person\", \"name\"])\n *\n * The pointer is parsed according to RFC 6901\n * {@link https://tools.ietf.org/html/rfc6901#section-3}\n *\n * @param {string} path\n * @returns {string[]}\n */\nPointer.parse = function (path) {\n // Get the JSON pointer from the path's hash\n var pointer = url.getHash(path).substr(1);\n\n // If there's no pointer, then there are no tokens,\n // so return an empty array\n if (!pointer) {\n return [];\n }\n\n // Split into an array\n pointer = pointer.split(\"/\");\n\n // Decode each part, according to RFC 6901\n for (var i = 0; i < pointer.length; i++) {\n pointer[i] = decodeURIComponent(pointer[i].replace(escapedSlash, \"/\").replace(escapedTilde, \"~\"));\n }\n\n if (pointer[0] !== \"\") {\n throw ono.syntax('Invalid $ref pointer \"%s\". Pointers must begin with \"#/\"', pointer);\n }\n\n return pointer.slice(1);\n};\n\n/**\n * Creates a JSON pointer path, by joining one or more tokens to a base path.\n *\n * @param {string} base - The base path (e.g. \"schema.json#/definitions/person\")\n * @param {string|string[]} tokens - The token(s) to append (e.g. [\"name\", \"first\"])\n * @returns {string}\n */\nPointer.join = function (base, tokens) {\n // Ensure that the base path contains a hash\n if (base.indexOf(\"#\") === -1) {\n base += \"#\";\n }\n\n // Append each token to the base path\n tokens = Array.isArray(tokens) ? tokens : [tokens];\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n // Encode the token, according to RFC 6901\n base += \"/\" + encodeURIComponent(token.replace(tildes, \"~0\").replace(slashes, \"~1\"));\n }\n\n return base;\n};\n\n/**\n * If the given pointer's {@link Pointer#value} is a JSON reference,\n * then the reference is resolved and {@link Pointer#value} is replaced with the resolved value.\n * In addition, {@link Pointer#path} and {@link Pointer#$ref} are updated to reflect the\n * resolution path of the new value.\n *\n * @param {Pointer} pointer\n * @param {$RefParserOptions} options\n * @returns {boolean} - Returns `true` if the resolution path changed\n */\nfunction resolveIf$Ref (pointer, options) {\n // Is the value a JSON reference? (and allowed?)\n\n if ($Ref.isAllowed$Ref(pointer.value, options)) {\n var $refPath = url.resolve(pointer.path, pointer.value.$ref);\n\n if ($refPath === pointer.path) {\n // The value is a reference to itself, so there's nothing to do.\n pointer.circular = true;\n }\n else {\n var resolved = pointer.$ref.$refs._resolve($refPath, options);\n pointer.indirections += resolved.indirections + 1;\n\n if ($Ref.isExtended$Ref(pointer.value)) {\n // This JSON reference \"extends\" the resolved value, rather than simply pointing to it.\n // So the resolved path does NOT change. Just the value does.\n pointer.value = $Ref.dereference(pointer.value, resolved.value);\n return false;\n }\n else {\n // Resolve the reference\n pointer.$ref = resolved.$ref;\n pointer.path = resolved.path;\n pointer.value = resolved.value;\n }\n\n return true;\n }\n }\n}\n\n/**\n * Sets the specified token value of the {@link Pointer#value}.\n *\n * The token is evaluated according to RFC 6901.\n * {@link https://tools.ietf.org/html/rfc6901#section-4}\n *\n * @param {Pointer} pointer - The JSON Pointer whose value will be modified\n * @param {string} token - A JSON Pointer token that indicates how to modify `obj`\n * @param {*} value - The value to assign\n * @returns {*} - Returns the assigned value\n */\nfunction setValue (pointer, token, value) {\n if (pointer.value && typeof pointer.value === \"object\") {\n if (token === \"-\" && Array.isArray(pointer.value)) {\n pointer.value.push(value);\n }\n else {\n pointer.value[token] = value;\n }\n }\n else {\n throw ono.syntax('Error assigning $ref pointer \"%s\". \\nCannot set \"%s\" of a non-object.', pointer.path, token);\n }\n return value;\n}\n", - "\"use strict\";\n\nmodule.exports = $Ref;\n\nvar Pointer = require(\"./pointer\");\n\n/**\n * This class represents a single JSON reference and its resolved value.\n *\n * @constructor\n */\nfunction $Ref () {\n /**\n * The file path or URL of the referenced file.\n * This path is relative to the path of the main JSON schema file.\n *\n * This path does NOT contain document fragments (JSON pointers). It always references an ENTIRE file.\n * Use methods such as {@link $Ref#get}, {@link $Ref#resolve}, and {@link $Ref#exists} to get\n * specific JSON pointers within the file.\n *\n * @type {string}\n */\n this.path = undefined;\n\n /**\n * The resolved value of the JSON reference.\n * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays).\n * @type {?*}\n */\n this.value = undefined;\n\n /**\n * The {@link $Refs} object that contains this {@link $Ref} object.\n * @type {$Refs}\n */\n this.$refs = undefined;\n\n /**\n * Indicates the type of {@link $Ref#path} (e.g. \"file\", \"http\", etc.)\n * @type {?string}\n */\n this.pathType = undefined;\n}\n\n/**\n * Determines whether the given JSON reference exists within this {@link $Ref#value}.\n *\n * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash\n * @param {$RefParserOptions} options\n * @returns {boolean}\n */\n$Ref.prototype.exists = function (path, options) {\n try {\n this.resolve(path, options);\n return true;\n }\n catch (e) {\n return false;\n }\n};\n\n/**\n * Resolves the given JSON reference within this {@link $Ref#value} and returns the resolved value.\n *\n * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash\n * @param {$RefParserOptions} options\n * @returns {*} - Returns the resolved value\n */\n$Ref.prototype.get = function (path, options) {\n return this.resolve(path, options).value;\n};\n\n/**\n * Resolves the given JSON reference within this {@link $Ref#value}.\n *\n * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash\n * @param {$RefParserOptions} options\n * @param {string} [friendlyPath] - The original user-specified path (used for error messages)\n * @returns {Pointer}\n */\n$Ref.prototype.resolve = function (path, options, friendlyPath) {\n var pointer = new Pointer(this, path, friendlyPath);\n return pointer.resolve(this.value, options);\n};\n\n/**\n * Sets the value of a nested property within this {@link $Ref#value}.\n * If the property, or any of its parents don't exist, they will be created.\n *\n * @param {string} path - The full path of the property to set, optionally with a JSON pointer in the hash\n * @param {*} value - The value to assign\n */\n$Ref.prototype.set = function (path, value) {\n var pointer = new Pointer(this, path);\n this.value = pointer.set(this.value, value);\n};\n\n/**\n * Determines whether the given value is a JSON reference.\n *\n * @param {*} value - The value to inspect\n * @returns {boolean}\n */\n$Ref.is$Ref = function (value) {\n return value && typeof value === \"object\" && typeof value.$ref === \"string\" && value.$ref.length > 0;\n};\n\n/**\n * Determines whether the given value is an external JSON reference.\n *\n * @param {*} value - The value to inspect\n * @returns {boolean}\n */\n$Ref.isExternal$Ref = function (value) {\n return $Ref.is$Ref(value) && value.$ref[0] !== \"#\";\n};\n\n/**\n * Determines whether the given value is a JSON reference, and whether it is allowed by the options.\n * For example, if it references an external file, then options.resolve.external must be true.\n *\n * @param {*} value - The value to inspect\n * @param {$RefParserOptions} options\n * @returns {boolean}\n */\n$Ref.isAllowed$Ref = function (value, options) {\n if ($Ref.is$Ref(value)) {\n if (value.$ref.substr(0, 2) === \"#/\" || value.$ref === \"#\") {\n // It's a JSON Pointer reference, which is always allowed\n return true;\n }\n else if (value.$ref[0] !== \"#\" && (!options || options.resolve.external)) {\n // It's an external reference, which is allowed by the options\n return true;\n }\n }\n};\n\n/**\n * Determines whether the given value is a JSON reference that \"extends\" its resolved value.\n * That is, it has extra properties (in addition to \"$ref\"), so rather than simply pointing to\n * an existing value, this $ref actually creates a NEW value that is a shallow copy of the resolved\n * value, plus the extra properties.\n *\n * @example:\n * {\n * person: {\n * properties: {\n * firstName: { type: string }\n * lastName: { type: string }\n * }\n * }\n * employee: {\n * properties: {\n * $ref: #/person/properties\n * salary: { type: number }\n * }\n * }\n * }\n *\n * In this example, \"employee\" is an extended $ref, since it extends \"person\" with an additional\n * property (salary). The result is a NEW value that looks like this:\n *\n * {\n * properties: {\n * firstName: { type: string }\n * lastName: { type: string }\n * salary: { type: number }\n * }\n * }\n *\n * @param {*} value - The value to inspect\n * @returns {boolean}\n */\n$Ref.isExtended$Ref = function (value) {\n return $Ref.is$Ref(value) && Object.keys(value).length > 1;\n};\n\n/**\n * Returns the resolved value of a JSON Reference.\n * If necessary, the resolved value is merged with the JSON Reference to create a new object\n *\n * @example:\n * {\n * person: {\n * properties: {\n * firstName: { type: string }\n * lastName: { type: string }\n * }\n * }\n * employee: {\n * properties: {\n * $ref: #/person/properties\n * salary: { type: number }\n * }\n * }\n * }\n *\n * When \"person\" and \"employee\" are merged, you end up with the following object:\n *\n * {\n * properties: {\n * firstName: { type: string }\n * lastName: { type: string }\n * salary: { type: number }\n * }\n * }\n *\n * @param {object} $ref - The JSON reference object (the one with the \"$ref\" property)\n * @param {*} resolvedValue - The resolved value, which can be any type\n * @returns {*} - Returns the dereferenced value\n */\n$Ref.dereference = function ($ref, resolvedValue) {\n if (resolvedValue && typeof resolvedValue === \"object\" && $Ref.isExtended$Ref($ref)) {\n var merged = {};\n Object.keys($ref).forEach(function (key) {\n if (key !== \"$ref\") {\n merged[key] = $ref[key];\n }\n });\n Object.keys(resolvedValue).forEach(function (key) {\n if (!(key in merged)) {\n merged[key] = resolvedValue[key];\n }\n });\n return merged;\n }\n else {\n // Completely replace the original reference with the resolved value\n return resolvedValue;\n }\n};\n", - "\"use strict\";\r\n\r\nvar ono = require(\"ono\"),\r\n $Ref = require(\"./ref\"),\r\n url = require(\"./util/url\");\r\n\r\nmodule.exports = $Refs;\r\n\r\n/**\r\n * This class is a map of JSON references and their resolved values.\r\n */\r\nfunction $Refs () {\r\n /**\r\n * Indicates whether the schema contains any circular references.\r\n *\r\n * @type {boolean}\r\n */\r\n this.circular = false;\r\n\r\n /**\r\n * A map of paths/urls to {@link $Ref} objects\r\n *\r\n * @type {object}\r\n * @protected\r\n */\r\n this._$refs = {};\r\n\r\n /**\r\n * The {@link $Ref} object that is the root of the JSON schema.\r\n *\r\n * @type {$Ref}\r\n * @protected\r\n */\r\n this._root$Ref = null;\r\n}\r\n\r\n/**\r\n * Returns the paths of all the files/URLs that are referenced by the JSON schema,\r\n * including the schema itself.\r\n *\r\n * @param {...string|string[]} [types] - Only return paths of the given types (\"file\", \"http\", etc.)\r\n * @returns {string[]}\r\n */\r\n$Refs.prototype.paths = function (types) {\r\n var paths = getPaths(this._$refs, arguments);\r\n return paths.map(function (path) {\r\n return path.decoded;\r\n });\r\n};\r\n\r\n/**\r\n * Returns the map of JSON references and their resolved values.\r\n *\r\n * @param {...string|string[]} [types] - Only return references of the given types (\"file\", \"http\", etc.)\r\n * @returns {object}\r\n */\r\n$Refs.prototype.values = function (types) {\r\n var $refs = this._$refs;\r\n var paths = getPaths($refs, arguments);\r\n return paths.reduce(function (obj, path) {\r\n obj[path.decoded] = $refs[path.encoded].value;\r\n return obj;\r\n }, {});\r\n};\r\n\r\n/**\r\n * Returns a POJO (plain old JavaScript object) for serialization as JSON.\r\n *\r\n * @returns {object}\r\n */\r\n$Refs.prototype.toJSON = $Refs.prototype.values;\r\n\r\n/**\r\n * Determines whether the given JSON reference exists.\r\n *\r\n * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash\r\n * @param {$RefParserOptions} [options]\r\n * @returns {boolean}\r\n */\r\n$Refs.prototype.exists = function (path, options) {\r\n try {\r\n this._resolve(path, options);\r\n return true;\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n};\r\n\r\n/**\r\n * Resolves the given JSON reference and returns the resolved value.\r\n *\r\n * @param {string} path - The path being resolved, with a JSON pointer in the hash\r\n * @param {$RefParserOptions} [options]\r\n * @returns {*} - Returns the resolved value\r\n */\r\n$Refs.prototype.get = function (path, options) {\r\n return this._resolve(path, options).value;\r\n};\r\n\r\n/**\r\n * Sets the value of a nested property within this {@link $Ref#value}.\r\n * If the property, or any of its parents don't exist, they will be created.\r\n *\r\n * @param {string} path - The path of the property to set, optionally with a JSON pointer in the hash\r\n * @param {*} value - The value to assign\r\n */\r\n$Refs.prototype.set = function (path, value) {\r\n var absPath = url.resolve(this._root$Ref.path, path);\r\n var withoutHash = url.stripHash(absPath);\r\n var $ref = this._$refs[withoutHash];\r\n\r\n if (!$ref) {\r\n throw ono('Error resolving $ref pointer \"%s\". \\n\"%s\" not found.', path, withoutHash);\r\n }\r\n\r\n $ref.set(absPath, value);\r\n};\r\n\r\n/**\r\n * Creates a new {@link $Ref} object and adds it to this {@link $Refs} object.\r\n *\r\n * @param {string} path - The file path or URL of the referenced file\r\n */\r\n$Refs.prototype._add = function (path) {\r\n var withoutHash = url.stripHash(path);\r\n\r\n var $ref = new $Ref();\r\n $ref.path = withoutHash;\r\n $ref.$refs = this;\r\n\r\n this._$refs[withoutHash] = $ref;\r\n this._root$Ref = this._root$Ref || $ref;\r\n\r\n return $ref;\r\n};\r\n\r\n/**\r\n * Resolves the given JSON reference.\r\n *\r\n * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash\r\n * @param {$RefParserOptions} [options]\r\n * @returns {Pointer}\r\n * @protected\r\n */\r\n$Refs.prototype._resolve = function (path, options) {\r\n var absPath = url.resolve(this._root$Ref.path, path);\r\n var withoutHash = url.stripHash(absPath);\r\n var $ref = this._$refs[withoutHash];\r\n\r\n if (!$ref) {\r\n throw ono('Error resolving $ref pointer \"%s\". \\n\"%s\" not found.', path, withoutHash);\r\n }\r\n\r\n return $ref.resolve(absPath, options, path);\r\n};\r\n\r\n/**\r\n * Returns the specified {@link $Ref} object, or undefined.\r\n *\r\n * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash\r\n * @returns {$Ref|undefined}\r\n * @protected\r\n */\r\n$Refs.prototype._get$Ref = function (path) {\r\n path = url.resolve(this._root$Ref.path, path);\r\n var withoutHash = url.stripHash(path);\r\n return this._$refs[withoutHash];\r\n};\r\n\r\n/**\r\n * Returns the encoded and decoded paths keys of the given object.\r\n *\r\n * @param {object} $refs - The object whose keys are URL-encoded paths\r\n * @param {...string|string[]} [types] - Only return paths of the given types (\"file\", \"http\", etc.)\r\n * @returns {object[]}\r\n */\r\nfunction getPaths ($refs, types) {\r\n var paths = Object.keys($refs);\r\n\r\n // Filter the paths by type\r\n types = Array.isArray(types[0]) ? types[0] : Array.prototype.slice.call(types);\r\n if (types.length > 0 && types[0]) {\r\n paths = paths.filter(function (key) {\r\n return types.indexOf($refs[key].pathType) !== -1;\r\n });\r\n }\r\n\r\n // Decode local filesystem paths\r\n return paths.map(function (path) {\r\n return {\r\n encoded: path,\r\n decoded: $refs[path].pathType === \"file\" ? url.toFileSystemPath(path, true) : path\r\n };\r\n });\r\n}\r\n", - "\"use strict\";\n\nvar $Ref = require(\"./ref\"),\n Pointer = require(\"./pointer\"),\n parse = require(\"./parse\"),\n url = require(\"./util/url\");\n\nmodule.exports = resolveExternal;\n\n/**\n * Crawls the JSON schema, finds all external JSON references, and resolves their values.\n * This method does not mutate the JSON schema. The resolved values are added to {@link $RefParser#$refs}.\n *\n * NOTE: We only care about EXTERNAL references here. INTERNAL references are only relevant when dereferencing.\n *\n * @param {$RefParser} parser\n * @param {$RefParserOptions} options\n *\n * @returns {Promise}\n * The promise resolves once all JSON references in the schema have been resolved,\n * including nested references that are contained in externally-referenced files.\n */\nfunction resolveExternal (parser, options) {\n if (!options.resolve.external) {\n // Nothing to resolve, so exit early\n return Promise.resolve();\n }\n\n try {\n // console.log('Resolving $ref pointers in %s', parser.$refs._root$Ref.path);\n var promises = crawl(parser.schema, parser.$refs._root$Ref.path + \"#\", parser.$refs, options);\n return Promise.all(promises);\n }\n catch (e) {\n return Promise.reject(e);\n }\n}\n\n/**\n * Recursively crawls the given value, and resolves any external JSON references.\n *\n * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored.\n * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash\n * @param {$Refs} $refs\n * @param {$RefParserOptions} options\n *\n * @returns {Promise[]}\n * Returns an array of promises. There will be one promise for each JSON reference in `obj`.\n * If `obj` does not contain any JSON references, then the array will be empty.\n * If any of the JSON references point to files that contain additional JSON references,\n * then the corresponding promise will internally reference an array of promises.\n */\nfunction crawl (obj, path, $refs, options) {\n var promises = [];\n\n if (obj && typeof obj === \"object\") {\n if ($Ref.isExternal$Ref(obj)) {\n promises.push(resolve$Ref(obj, path, $refs, options));\n }\n else {\n Object.keys(obj).forEach(function (key) {\n var keyPath = Pointer.join(path, key);\n var value = obj[key];\n\n if ($Ref.isExternal$Ref(value)) {\n promises.push(resolve$Ref(value, keyPath, $refs, options));\n }\n else {\n promises = promises.concat(crawl(value, keyPath, $refs, options));\n }\n });\n }\n }\n\n return promises;\n}\n\n/**\n * Resolves the given JSON Reference, and then crawls the resulting value.\n *\n * @param {{$ref: string}} $ref - The JSON Reference to resolve\n * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash\n * @param {$Refs} $refs\n * @param {$RefParserOptions} options\n *\n * @returns {Promise}\n * The promise resolves once all JSON references in the object have been resolved,\n * including nested references that are contained in externally-referenced files.\n */\nfunction resolve$Ref ($ref, path, $refs, options) {\n // console.log('Resolving $ref pointer \"%s\" at %s', $ref.$ref, path);\n\n var resolvedPath = url.resolve(path, $ref.$ref);\n var withoutHash = url.stripHash(resolvedPath);\n\n // Do we already have this $ref?\n $ref = $refs._$refs[withoutHash];\n if ($ref) {\n // We've already parsed this $ref, so use the existing value\n return Promise.resolve($ref.value);\n }\n\n // Parse the $referenced file/url\n return parse(resolvedPath, $refs, options)\n .then(function (result) {\n // Crawl the parsed value\n // console.log('Resolving $ref pointers in %s', withoutHash);\n var promises = crawl(result, withoutHash + \"#\", $refs, options);\n return Promise.all(promises);\n });\n}\n", - "\"use strict\";\nvar fs = require(\"fs\"),\n ono = require(\"ono\"),\n url = require(\"../util/url\");\n\nmodule.exports = {\n /**\n * The order that this resolver will run, in relation to other resolvers.\n *\n * @type {number}\n */\n order: 100,\n\n /**\n * Determines whether this resolver can read a given file reference.\n * Resolvers that return true will be tried, in order, until one successfully resolves the file.\n * Resolvers that return false will not be given a chance to resolve the file.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @returns {boolean}\n */\n canRead: function isFile (file) {\n return url.isFileSystemPath(file.url);\n },\n\n /**\n * Reads the given file and returns its raw contents as a Buffer.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @returns {Promise}\n */\n read: function readFile (file) {\n return new Promise(function (resolve, reject) {\n var path;\n try {\n path = url.toFileSystemPath(file.url);\n }\n catch (err) {\n reject(ono.uri(err, \"Malformed URI: %s\", file.url));\n }\n\n // console.log('Opening file: %s', path);\n\n try {\n fs.readFile(path, function (err, data) {\n if (err) {\n reject(ono(err, 'Error opening file \"%s\"', path));\n }\n else {\n resolve(data);\n }\n });\n }\n catch (err) {\n reject(ono(err, 'Error opening file \"%s\"', path));\n }\n });\n }\n};\n", - "\"use strict\";\n\nvar http = require(\"http\"),\n https = require(\"https\"),\n ono = require(\"ono\"),\n url = require(\"../util/url\");\n\nmodule.exports = {\n /**\n * The order that this resolver will run, in relation to other resolvers.\n *\n * @type {number}\n */\n order: 200,\n\n /**\n * HTTP headers to send when downloading files.\n *\n * @example:\n * {\n * \"User-Agent\": \"JSON Schema $Ref Parser\",\n * Accept: \"application/json\"\n * }\n *\n * @type {object}\n */\n headers: null,\n\n /**\n * HTTP request timeout (in milliseconds).\n *\n * @type {number}\n */\n timeout: 5000, // 5 seconds\n\n /**\n * The maximum number of HTTP redirects to follow.\n * To disable automatic following of redirects, set this to zero.\n *\n * @type {number}\n */\n redirects: 5,\n\n /**\n * The `withCredentials` option of XMLHttpRequest.\n * Set this to `true` if you're downloading files from a CORS-enabled server that requires authentication\n *\n * @type {boolean}\n */\n withCredentials: false,\n\n /**\n * Determines whether this resolver can read a given file reference.\n * Resolvers that return true will be tried in order, until one successfully resolves the file.\n * Resolvers that return false will not be given a chance to resolve the file.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @returns {boolean}\n */\n canRead: function isHttp (file) {\n return url.isHttp(file.url);\n },\n\n /**\n * Reads the given URL and returns its raw contents as a Buffer.\n *\n * @param {object} file - An object containing information about the referenced file\n * @param {string} file.url - The full URL of the referenced file\n * @param {string} file.extension - The lowercased file extension (e.g. \".txt\", \".html\", etc.)\n * @returns {Promise}\n */\n read: function readHttp (file) {\n var u = url.parse(file.url);\n\n if (process.browser && !u.protocol) {\n // Use the protocol of the current page\n u.protocol = url.parse(location.href).protocol;\n }\n\n return download(u, this);\n }\n};\n\n/**\n * Downloads the given file.\n *\n * @param {Url|string} u - The url to download (can be a parsed {@link Url} object)\n * @param {object} httpOptions - The `options.resolve.http` object\n * @param {number} [redirects] - The redirect URLs that have already been followed\n *\n * @returns {Promise}\n * The promise resolves with the raw downloaded data, or rejects if there is an HTTP error.\n */\nfunction download (u, httpOptions, redirects) {\n return new Promise(function (resolve, reject) {\n u = url.parse(u);\n redirects = redirects || [];\n redirects.push(u.href);\n\n get(u, httpOptions)\n .then(function (res) {\n if (res.statusCode >= 400) {\n throw ono({ status: res.statusCode }, \"HTTP ERROR %d\", res.statusCode);\n }\n else if (res.statusCode >= 300) {\n if (redirects.length > httpOptions.redirects) {\n reject(ono({ status: res.statusCode }, \"Error downloading %s. \\nToo many redirects: \\n %s\",\n redirects[0], redirects.join(\" \\n \")));\n }\n else if (!res.headers.location) {\n throw ono({ status: res.statusCode }, \"HTTP %d redirect with no location header\", res.statusCode);\n }\n else {\n // console.log('HTTP %d redirect %s -> %s', res.statusCode, u.href, res.headers.location);\n var redirectTo = url.resolve(u, res.headers.location);\n download(redirectTo, httpOptions, redirects).then(resolve, reject);\n }\n }\n else {\n resolve(res.body || new Buffer(0));\n }\n })\n .catch(function (err) {\n reject(ono(err, \"Error downloading\", u.href));\n });\n });\n}\n\n/**\n * Sends an HTTP GET request.\n *\n * @param {Url} u - A parsed {@link Url} object\n * @param {object} httpOptions - The `options.resolve.http` object\n *\n * @returns {Promise}\n * The promise resolves with the HTTP Response object.\n */\nfunction get (u, httpOptions) {\n return new Promise(function (resolve, reject) {\n // console.log('GET', u.href);\n\n var protocol = u.protocol === \"https:\" ? https : http;\n var req = protocol.get({\n hostname: u.hostname,\n port: u.port,\n path: u.path,\n auth: u.auth,\n protocol: u.protocol,\n headers: httpOptions.headers || {},\n withCredentials: httpOptions.withCredentials\n });\n\n if (typeof req.setTimeout === \"function\") {\n req.setTimeout(httpOptions.timeout);\n }\n\n req.on(\"timeout\", function () {\n req.abort();\n });\n\n req.on(\"error\", reject);\n\n req.once(\"response\", function (res) {\n res.body = new Buffer(0);\n\n res.on(\"data\", function (data) {\n res.body = Buffer.concat([res.body, new Buffer(data)]);\n });\n\n res.on(\"error\", reject);\n\n res.on(\"end\", function () {\n resolve(res);\n });\n });\n });\n}\n", - "\"use strict\";\n\n/**\n * Returns the given plugins as an array, rather than an object map.\n * All other methods in this module expect an array of plugins rather than an object map.\n *\n * @param {object} plugins - A map of plugin objects\n * @return {object[]}\n */\nexports.all = function (plugins) {\n return Object.keys(plugins)\n .filter(function (key) {\n return typeof plugins[key] === \"object\";\n })\n .map(function (key) {\n plugins[key].name = key;\n return plugins[key];\n });\n};\n\n/**\n * Filters the given plugins, returning only the ones return `true` for the given method.\n *\n * @param {object[]} plugins - An array of plugin objects\n * @param {string} method - The name of the filter method to invoke for each plugin\n * @param {object} file - A file info object, which will be passed to each method\n * @return {object[]}\n */\nexports.filter = function (plugins, method, file) {\n return plugins\n .filter(function (plugin) {\n return !!getResult(plugin, method, file);\n });\n};\n\n/**\n * Sorts the given plugins, in place, by their `order` property.\n *\n * @param {object[]} plugins - An array of plugin objects\n * @returns {object[]}\n */\nexports.sort = function (plugins) {\n plugins.forEach(function (plugin) {\n plugin.order = plugin.order || Number.MAX_SAFE_INTEGER;\n });\n\n return plugins.sort(function (a, b) { return a.order - b.order; });\n};\n\n/**\n * Runs the specified method of the given plugins, in order, until one of them returns a successful result.\n * Each method can return a synchronous value, a Promise, or call an error-first callback.\n * If the promise resolves successfully, or the callback is called without an error, then the result\n * is immediately returned and no further plugins are called.\n * If the promise rejects, or the callback is called with an error, then the next plugin is called.\n * If ALL plugins fail, then the last error is thrown.\n *\n * @param {object[]} plugins - An array of plugin objects\n * @param {string} method - The name of the method to invoke for each plugin\n * @param {object} file - A file info object, which will be passed to each method\n * @returns {Promise}\n */\nexports.run = function (plugins, method, file) {\n var plugin, lastError, index = 0;\n\n return new Promise(function (resolve, reject) {\n runNextPlugin();\n\n function runNextPlugin () {\n plugin = plugins[index++];\n if (!plugin) {\n // There are no more functions, so re-throw the last error\n return reject(lastError);\n }\n\n try {\n // console.log(' %s', plugin.name);\n var result = getResult(plugin, method, file, callback);\n if (result && typeof result.then === \"function\") {\n // A promise was returned\n result.then(onSuccess, onError);\n }\n else if (result !== undefined) {\n // A synchronous result was returned\n onSuccess(result);\n }\n // else { the callback will be called }\n }\n catch (e) {\n onError(e);\n }\n }\n\n function callback (err, result) {\n if (err) {\n onError(err);\n }\n else {\n onSuccess(result);\n }\n }\n\n function onSuccess (result) {\n // console.log(' success');\n resolve({\n plugin: plugin,\n result: result\n });\n }\n\n function onError (err) {\n // console.log(' %s', err.message || err);\n lastError = err;\n runNextPlugin();\n }\n });\n};\n\n/**\n * Returns the value of the given property.\n * If the property is a function, then the result of the function is returned.\n * If the value is a RegExp, then it will be tested against the file URL.\n * If the value is an aray, then it will be compared against the file extension.\n *\n * @param {object} obj - The object whose property/method is called\n * @param {string} prop - The name of the property/method to invoke\n * @param {object} file - A file info object, which will be passed to the method\n * @param {function} [callback] - A callback function, which will be passed to the method\n * @returns {*}\n */\nfunction getResult (obj, prop, file, callback) {\n var value = obj[prop];\n\n if (typeof value === \"function\") {\n return value.apply(obj, [file, callback]);\n }\n\n if (!callback) {\n // The synchronous plugin functions (canParse and canRead)\n // allow a \"shorthand\" syntax, where the user can match\n // files by RegExp or by file extension.\n if (value instanceof RegExp) {\n return value.test(file.url);\n }\n else if (typeof value === \"string\") {\n return value === file.extension;\n }\n else if (Array.isArray(value)) {\n return value.indexOf(file.extension) !== -1;\n }\n }\n\n return value;\n}\n", - "\"use strict\";\n\nvar isWindows = /^win/.test(process.platform),\n forwardSlashPattern = /\\//g,\n protocolPattern = /^(\\w{2,}):\\/\\//i,\n url = module.exports;\n\n// RegExp patterns to URL-encode special characters in local filesystem paths\nvar urlEncodePatterns = [\n /\\?/g, \"%3F\",\n /\\#/g, \"%23\",\n];\n\n// RegExp patterns to URL-decode special characters for local filesystem paths\nvar urlDecodePatterns = [\n /\\%23/g, \"#\",\n /\\%24/g, \"$\",\n /\\%26/g, \"&\",\n /\\%2C/g, \",\",\n /\\%40/g, \"@\"\n];\n\nexports.parse = require(\"url\").parse;\nexports.resolve = require(\"url\").resolve;\n\n/**\n * Returns the current working directory (in Node) or the current page URL (in browsers).\n *\n * @returns {string}\n */\nexports.cwd = function cwd () {\n return process.browser ? location.href : process.cwd() + \"/\";\n};\n\n/**\n * Returns the protocol of the given URL, or `undefined` if it has no protocol.\n *\n * @param {string} path\n * @returns {?string}\n */\nexports.getProtocol = function getProtocol (path) {\n var match = protocolPattern.exec(path);\n if (match) {\n return match[1].toLowerCase();\n }\n};\n\n/**\n * Returns the lowercased file extension of the given URL,\n * or an empty string if it has no extension.\n *\n * @param {string} path\n * @returns {string}\n */\nexports.getExtension = function getExtension (path) {\n var lastDot = path.lastIndexOf(\".\");\n if (lastDot >= 0) {\n return path.substr(lastDot).toLowerCase();\n }\n return \"\";\n};\n\n/**\n * Returns the hash (URL fragment), of the given path.\n * If there is no hash, then the root hash (\"#\") is returned.\n *\n * @param {string} path\n * @returns {string}\n */\nexports.getHash = function getHash (path) {\n var hashIndex = path.indexOf(\"#\");\n if (hashIndex >= 0) {\n return path.substr(hashIndex);\n }\n return \"#\";\n};\n\n/**\n * Removes the hash (URL fragment), if any, from the given path.\n *\n * @param {string} path\n * @returns {string}\n */\nexports.stripHash = function stripHash (path) {\n var hashIndex = path.indexOf(\"#\");\n if (hashIndex >= 0) {\n path = path.substr(0, hashIndex);\n }\n return path;\n};\n\n/**\n * Determines whether the given path is an HTTP(S) URL.\n *\n * @param {string} path\n * @returns {boolean}\n */\nexports.isHttp = function isHttp (path) {\n var protocol = url.getProtocol(path);\n if (protocol === \"http\" || protocol === \"https\") {\n return true;\n }\n else if (protocol === undefined) {\n // There is no protocol. If we're running in a browser, then assume it's HTTP.\n return process.browser;\n }\n else {\n // It's some other protocol, such as \"ftp://\", \"mongodb://\", etc.\n return false;\n }\n};\n\n/**\n * Determines whether the given path is a filesystem path.\n * This includes \"file://\" URLs.\n *\n * @param {string} path\n * @returns {boolean}\n */\nexports.isFileSystemPath = function isFileSystemPath (path) {\n if (process.browser) {\n // We're running in a browser, so assume that all paths are URLs.\n // This way, even relative paths will be treated as URLs rather than as filesystem paths\n return false;\n }\n\n var protocol = url.getProtocol(path);\n return protocol === undefined || protocol === \"file\";\n};\n\n/**\n * Converts a filesystem path to a properly-encoded URL.\n *\n * This is intended to handle situations where JSON Schema $Ref Parser is called\n * with a filesystem path that contains characters which are not allowed in URLs.\n *\n * @example\n * The following filesystem paths would be converted to the following URLs:\n *\n * <\"!@#$%^&*+=?'>.json ==> %3C%22!@%23$%25%5E&*+=%3F\\'%3E.json\n * C:\\\\My Documents\\\\File (1).json ==> C:/My%20Documents/File%20(1).json\n * file://Project #42/file.json ==> file://Project%20%2342/file.json\n *\n * @param {string} path\n * @returns {string}\n */\nexports.fromFileSystemPath = function fromFileSystemPath (path) {\n // Step 1: On Windows, replace backslashes with forward slashes,\n // rather than encoding them as \"%5C\"\n if (isWindows) {\n path = path.replace(/\\\\/g, \"/\");\n }\n\n // Step 2: `encodeURI` will take care of MOST characters\n path = encodeURI(path);\n\n // Step 3: Manually encode characters that are not encoded by `encodeURI`.\n // This includes characters such as \"#\" and \"?\", which have special meaning in URLs,\n // but are just normal characters in a filesystem path.\n for (var i = 0; i < urlEncodePatterns.length; i += 2) {\n path = path.replace(urlEncodePatterns[i], urlEncodePatterns[i + 1]);\n }\n\n return path;\n};\n\n/**\n * Converts a URL to a local filesystem path.\n *\n * @param {string} path\n * @param {boolean} [keepFileProtocol] - If true, then \"file://\" will NOT be stripped\n * @returns {string}\n */\nexports.toFileSystemPath = function toFileSystemPath (path, keepFileProtocol) {\n // Step 1: `decodeURI` will decode characters such as Cyrillic characters, spaces, etc.\n path = decodeURI(path);\n\n // Step 2: Manually decode characters that are not decoded by `decodeURI`.\n // This includes characters such as \"#\" and \"?\", which have special meaning in URLs,\n // but are just normal characters in a filesystem path.\n for (var i = 0; i < urlDecodePatterns.length; i += 2) {\n path = path.replace(urlDecodePatterns[i], urlDecodePatterns[i + 1]);\n }\n\n // Step 3: If it's a \"file://\" URL, then format it consistently\n // or convert it to a local filesystem path\n var isFileUrl = path.substr(0, 7).toLowerCase() === \"file://\";\n if (isFileUrl) {\n // Strip-off the protocol, and the initial \"/\", if there is one\n path = path[7] === \"/\" ? path.substr(8) : path.substr(7);\n\n // insert a colon (\":\") after the drive letter on Windows\n if (isWindows && path[1] === \"/\") {\n path = path[0] + \":\" + path.substr(1);\n }\n\n if (keepFileProtocol) {\n // Return the consistently-formatted \"file://\" URL\n path = \"file:///\" + path;\n }\n else {\n // Convert the \"file://\" URL to a local filesystem path.\n // On Windows, it will start with something like \"C:/\".\n // On Posix, it will start with \"/\"\n isFileUrl = false;\n path = isWindows ? path : \"/\" + path;\n }\n }\n\n // Step 4: Normalize Windows paths (unless it's a \"file://\" URL)\n if (isWindows && !isFileUrl) {\n // Replace forward slashes with backslashes\n path = path.replace(forwardSlashPattern, \"\\\\\");\n\n // Capitalize the drive letter\n if (path.substr(1, 2) === \":\\\\\") {\n path = path[0].toUpperCase() + path.substr(1);\n }\n }\n\n return path;\n};\n", - "/* eslint lines-around-comment: [2, {beforeBlockComment: false}] */\n\"use strict\";\n\nvar yaml = require(\"js-yaml\"),\n ono = require(\"ono\");\n\n/**\n * Simple YAML parsing functions, similar to {@link JSON.parse} and {@link JSON.stringify}\n */\nmodule.exports = {\n /**\n * Parses a YAML string and returns the value.\n *\n * @param {string} text - The YAML string to be parsed\n * @param {function} [reviver] - Not currently supported. Provided for consistency with {@link JSON.parse}\n * @returns {*}\n */\n parse: function yamlParse (text, reviver) {\n try {\n return yaml.safeLoad(text);\n }\n catch (e) {\n if (e instanceof Error) {\n throw e;\n }\n else {\n // https://github.com/nodeca/js-yaml/issues/153\n throw ono(e, e.message);\n }\n }\n },\n\n /**\n * Converts a JavaScript value to a YAML string.\n *\n * @param {*} value - The value to convert to YAML\n * @param {function|array} replacer - Not currently supported. Provided for consistency with {@link JSON.stringify}\n * @param {string|number} space - The number of spaces to use for indentation, or a string containing the number of spaces.\n * @returns {string}\n */\n stringify: function yamlStringify (value, replacer, space) {\n try {\n var indent = (typeof space === \"string\" ? space.length : space) || 2;\n return yaml.safeDump(value, { indent: indent });\n }\n catch (e) {\n if (e instanceof Error) {\n throw e;\n }\n else {\n // https://github.com/nodeca/js-yaml/issues/153\n throw ono(e, e.message);\n }\n }\n }\n};\n", - "'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n for (var i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(\n uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)\n ))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n", - "", - "/*! https://mths.be/punycode v1.4.1 by @mathias */\n;(function(root) {\n\n\t/** Detect free variables */\n\tvar freeExports = typeof exports == 'object' && exports &&\n\t\t!exports.nodeType && exports;\n\tvar freeModule = typeof module == 'object' && module &&\n\t\t!module.nodeType && module;\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (\n\t\tfreeGlobal.global === freeGlobal ||\n\t\tfreeGlobal.window === freeGlobal ||\n\t\tfreeGlobal.self === freeGlobal\n\t) {\n\t\troot = freeGlobal;\n\t}\n\n\t/**\n\t * The `punycode` object.\n\t * @name punycode\n\t * @type Object\n\t */\n\tvar punycode,\n\n\t/** Highest positive signed 32-bit float value */\n\tmaxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1\n\n\t/** Bootstring parameters */\n\tbase = 36,\n\ttMin = 1,\n\ttMax = 26,\n\tskew = 38,\n\tdamp = 700,\n\tinitialBias = 72,\n\tinitialN = 128, // 0x80\n\tdelimiter = '-', // '\\x2D'\n\n\t/** Regular expressions */\n\tregexPunycode = /^xn--/,\n\tregexNonASCII = /[^\\x20-\\x7E]/, // unprintable ASCII chars + non-ASCII chars\n\tregexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g, // RFC 3490 separators\n\n\t/** Error messages */\n\terrors = {\n\t\t'overflow': 'Overflow: input needs wider integers to process',\n\t\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t\t'invalid-input': 'Invalid input'\n\t},\n\n\t/** Convenience shortcuts */\n\tbaseMinusTMin = base - tMin,\n\tfloor = Math.floor,\n\tstringFromCharCode = String.fromCharCode,\n\n\t/** Temporary variable */\n\tkey;\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/**\n\t * A generic error utility function.\n\t * @private\n\t * @param {String} type The error type.\n\t * @returns {Error} Throws a `RangeError` with the applicable error message.\n\t */\n\tfunction error(type) {\n\t\tthrow new RangeError(errors[type]);\n\t}\n\n\t/**\n\t * A generic `Array#map` utility function.\n\t * @private\n\t * @param {Array} array The array to iterate over.\n\t * @param {Function} callback The function that gets called for every array\n\t * item.\n\t * @returns {Array} A new array of values returned by the callback function.\n\t */\n\tfunction map(array, fn) {\n\t\tvar length = array.length;\n\t\tvar result = [];\n\t\twhile (length--) {\n\t\t\tresult[length] = fn(array[length]);\n\t\t}\n\t\treturn result;\n\t}\n\n\t/**\n\t * A simple `Array#map`-like wrapper to work with domain name strings or email\n\t * addresses.\n\t * @private\n\t * @param {String} domain The domain name or email address.\n\t * @param {Function} callback The function that gets called for every\n\t * character.\n\t * @returns {Array} A new string of characters returned by the callback\n\t * function.\n\t */\n\tfunction mapDomain(string, fn) {\n\t\tvar parts = string.split('@');\n\t\tvar result = '';\n\t\tif (parts.length > 1) {\n\t\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t\t// the local part (i.e. everything up to `@`) intact.\n\t\t\tresult = parts[0] + '@';\n\t\t\tstring = parts[1];\n\t\t}\n\t\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\t\tstring = string.replace(regexSeparators, '\\x2E');\n\t\tvar labels = string.split('.');\n\t\tvar encoded = map(labels, fn).join('.');\n\t\treturn result + encoded;\n\t}\n\n\t/**\n\t * Creates an array containing the numeric code points of each Unicode\n\t * character in the string. While JavaScript uses UCS-2 internally,\n\t * this function will convert a pair of surrogate halves (each of which\n\t * UCS-2 exposes as separate characters) into a single code point,\n\t * matching UTF-16.\n\t * @see `punycode.ucs2.encode`\n\t * @see \n\t * @memberOf punycode.ucs2\n\t * @name decode\n\t * @param {String} string The Unicode input string (UCS-2).\n\t * @returns {Array} The new array of code points.\n\t */\n\tfunction ucs2decode(string) {\n\t\tvar output = [],\n\t\t counter = 0,\n\t\t length = string.length,\n\t\t value,\n\t\t extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) { // low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t/**\n\t * Creates a string based on an array of numeric code points.\n\t * @see `punycode.ucs2.decode`\n\t * @memberOf punycode.ucs2\n\t * @name encode\n\t * @param {Array} codePoints The array of numeric code points.\n\t * @returns {String} The new Unicode string (UCS-2).\n\t */\n\tfunction ucs2encode(array) {\n\t\treturn map(array, function(value) {\n\t\t\tvar output = '';\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t\treturn output;\n\t\t}).join('');\n\t}\n\n\t/**\n\t * Converts a basic code point into a digit/integer.\n\t * @see `digitToBasic()`\n\t * @private\n\t * @param {Number} codePoint The basic numeric code point value.\n\t * @returns {Number} The numeric value of a basic code point (for use in\n\t * representing integers) in the range `0` to `base - 1`, or `base` if\n\t * the code point does not represent a value.\n\t */\n\tfunction basicToDigit(codePoint) {\n\t\tif (codePoint - 48 < 10) {\n\t\t\treturn codePoint - 22;\n\t\t}\n\t\tif (codePoint - 65 < 26) {\n\t\t\treturn codePoint - 65;\n\t\t}\n\t\tif (codePoint - 97 < 26) {\n\t\t\treturn codePoint - 97;\n\t\t}\n\t\treturn base;\n\t}\n\n\t/**\n\t * Converts a digit/integer into a basic code point.\n\t * @see `basicToDigit()`\n\t * @private\n\t * @param {Number} digit The numeric value of a basic code point.\n\t * @returns {Number} The basic code point whose value (when used for\n\t * representing integers) is `digit`, which needs to be in the range\n\t * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n\t * used; else, the lowercase form is used. The behavior is undefined\n\t * if `flag` is non-zero and `digit` has no uppercase form.\n\t */\n\tfunction digitToBasic(digit, flag) {\n\t\t// 0..25 map to ASCII a..z or A..Z\n\t\t// 26..35 map to ASCII 0..9\n\t\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n\t}\n\n\t/**\n\t * Bias adaptation function as per section 3.4 of RFC 3492.\n\t * https://tools.ietf.org/html/rfc3492#section-3.4\n\t * @private\n\t */\n\tfunction adapt(delta, numPoints, firstTime) {\n\t\tvar k = 0;\n\t\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\t\tdelta += floor(delta / numPoints);\n\t\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\t\tdelta = floor(delta / baseMinusTMin);\n\t\t}\n\t\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n\t}\n\n\t/**\n\t * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n\t * symbols.\n\t * @memberOf punycode\n\t * @param {String} input The Punycode string of ASCII-only symbols.\n\t * @returns {String} The resulting string of Unicode symbols.\n\t */\n\tfunction decode(input) {\n\t\t// Don't use UCS-2\n\t\tvar output = [],\n\t\t inputLength = input.length,\n\t\t out,\n\t\t i = 0,\n\t\t n = initialN,\n\t\t bias = initialBias,\n\t\t basic,\n\t\t j,\n\t\t index,\n\t\t oldi,\n\t\t w,\n\t\t k,\n\t\t digit,\n\t\t t,\n\t\t /** Cached calculation results */\n\t\t baseMinusT;\n\n\t\t// Handle the basic code points: let `basic` be the number of input code\n\t\t// points before the last delimiter, or `0` if there is none, then copy\n\t\t// the first basic code points to the output.\n\n\t\tbasic = input.lastIndexOf(delimiter);\n\t\tif (basic < 0) {\n\t\t\tbasic = 0;\n\t\t}\n\n\t\tfor (j = 0; j < basic; ++j) {\n\t\t\t// if it's not a basic code point\n\t\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\t\terror('not-basic');\n\t\t\t}\n\t\t\toutput.push(input.charCodeAt(j));\n\t\t}\n\n\t\t// Main decoding loop: start just after the last delimiter if any basic code\n\t\t// points were copied; start at the beginning otherwise.\n\n\t\tfor (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t\t// `index` is the index of the next character to be consumed.\n\t\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t\t// which gets added to `i`. The overflow checking is easier\n\t\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t\t// value at the end to obtain `delta`.\n\t\t\tfor (oldi = i, w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\t\tif (index >= inputLength) {\n\t\t\t\t\terror('invalid-input');\n\t\t\t\t}\n\n\t\t\t\tdigit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\ti += digit * w;\n\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\t\tif (digit < t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tbaseMinusT = base - t;\n\t\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tw *= baseMinusT;\n\n\t\t\t}\n\n\t\t\tout = output.length + 1;\n\t\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t\t// incrementing `n` each time, so we'll fix that now:\n\t\t\tif (floor(i / out) > maxInt - n) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tn += floor(i / out);\n\t\t\ti %= out;\n\n\t\t\t// Insert `n` at position `i` of the output\n\t\t\toutput.splice(i++, 0, n);\n\n\t\t}\n\n\t\treturn ucs2encode(output);\n\t}\n\n\t/**\n\t * Converts a string of Unicode symbols (e.g. a domain name label) to a\n\t * Punycode string of ASCII-only symbols.\n\t * @memberOf punycode\n\t * @param {String} input The string of Unicode symbols.\n\t * @returns {String} The resulting Punycode string of ASCII-only symbols.\n\t */\n\tfunction encode(input) {\n\t\tvar n,\n\t\t delta,\n\t\t handledCPCount,\n\t\t basicLength,\n\t\t bias,\n\t\t j,\n\t\t m,\n\t\t q,\n\t\t k,\n\t\t t,\n\t\t currentValue,\n\t\t output = [],\n\t\t /** `inputLength` will hold the number of code points in `input`. */\n\t\t inputLength,\n\t\t /** Cached calculation results */\n\t\t handledCPCountPlusOne,\n\t\t baseMinusT,\n\t\t qMinusT;\n\n\t\t// Convert the input in UCS-2 to Unicode\n\t\tinput = ucs2decode(input);\n\n\t\t// Cache the length\n\t\tinputLength = input.length;\n\n\t\t// Initialize the state\n\t\tn = initialN;\n\t\tdelta = 0;\n\t\tbias = initialBias;\n\n\t\t// Handle the basic code points\n\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\tcurrentValue = input[j];\n\t\t\tif (currentValue < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t\t}\n\t\t}\n\n\t\thandledCPCount = basicLength = output.length;\n\n\t\t// `handledCPCount` is the number of code points that have been handled;\n\t\t// `basicLength` is the number of basic code points.\n\n\t\t// Finish the basic string - if it is not empty - with a delimiter\n\t\tif (basicLength) {\n\t\t\toutput.push(delimiter);\n\t\t}\n\n\t\t// Main encoding loop:\n\t\twhile (handledCPCount < inputLength) {\n\n\t\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t\t// larger one:\n\t\t\tfor (m = maxInt, j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's state to ,\n\t\t\t// but guard against overflow\n\t\t\thandledCPCountPlusOne = handledCPCount + 1;\n\t\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\t\tn = m;\n\n\t\t\tfor (j = 0; j < inputLength; ++j) {\n\t\t\t\tcurrentValue = input[j];\n\n\t\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror('overflow');\n\t\t\t\t}\n\n\t\t\t\tif (currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer\n\t\t\t\t\tfor (q = delta, k = base; /* no condition */; k += base) {\n\t\t\t\t\t\tt = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tqMinusT = q - t;\n\t\t\t\t\t\tbaseMinusT = base - t;\n\t\t\t\t\t\toutput.push(\n\t\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t\t);\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t++delta;\n\t\t\t++n;\n\n\t\t}\n\t\treturn output.join('');\n\t}\n\n\t/**\n\t * Converts a Punycode string representing a domain name or an email address\n\t * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n\t * it doesn't matter if you call it on a string that has already been\n\t * converted to Unicode.\n\t * @memberOf punycode\n\t * @param {String} input The Punycoded domain name or email address to\n\t * convert to Unicode.\n\t * @returns {String} The Unicode representation of the given Punycode\n\t * string.\n\t */\n\tfunction toUnicode(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexPunycode.test(string)\n\t\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/**\n\t * Converts a Unicode string representing a domain name or an email address to\n\t * Punycode. Only the non-ASCII parts of the domain name will be converted,\n\t * i.e. it doesn't matter if you call it with a domain that's already in\n\t * ASCII.\n\t * @memberOf punycode\n\t * @param {String} input The domain name or email address to convert, as a\n\t * Unicode string.\n\t * @returns {String} The Punycode representation of the given domain name or\n\t * email address.\n\t */\n\tfunction toASCII(input) {\n\t\treturn mapDomain(input, function(string) {\n\t\t\treturn regexNonASCII.test(string)\n\t\t\t\t? 'xn--' + encode(string)\n\t\t\t\t: string;\n\t\t});\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t/** Define the public API */\n\tpunycode = {\n\t\t/**\n\t\t * A string representing the current Punycode.js version number.\n\t\t * @memberOf punycode\n\t\t * @type String\n\t\t */\n\t\t'version': '1.4.1',\n\t\t/**\n\t\t * An object of methods to convert from JavaScript's internal character\n\t\t * representation (UCS-2) to Unicode code points, and back.\n\t\t * @see \n\t\t * @memberOf punycode\n\t\t * @type Object\n\t\t */\n\t\t'ucs2': {\n\t\t\t'decode': ucs2decode,\n\t\t\t'encode': ucs2encode\n\t\t},\n\t\t'decode': decode,\n\t\t'encode': encode,\n\t\t'toASCII': toASCII,\n\t\t'toUnicode': toUnicode\n\t};\n\n\t/** Expose `punycode` */\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (\n\t\ttypeof define == 'function' &&\n\t\ttypeof define.amd == 'object' &&\n\t\tdefine.amd\n\t) {\n\t\tdefine('punycode', function() {\n\t\t\treturn punycode;\n\t\t});\n\t} else if (freeExports && freeModule) {\n\t\tif (module.exports == freeExports) {\n\t\t\t// in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = punycode;\n\t\t} else {\n\t\t\t// in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (key in punycode) {\n\t\t\t\tpunycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// in Rhino or a web browser\n\t\troot.punycode = punycode;\n\t}\n\n}(this));\n", - "/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nvar K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } }\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n var buf = new Uint8Array(length)\n buf.__proto__ = Buffer.prototype\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\n// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\nif (typeof Symbol !== 'undefined' && Symbol.species != null &&\n Buffer[Symbol.species] === Buffer) {\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true,\n enumerable: false,\n writable: false\n })\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayLike(value)\n }\n\n if (value == null) {\n throw TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n var valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n var b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(\n value[Symbol.toPrimitive]('string'), encodingOrOffset, length\n )\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nBuffer.prototype.__proto__ = Uint8Array.prototype\nBuffer.__proto__ = Uint8Array\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n var length = byteLength(string, encoding) | 0\n var buf = createBuffer(length)\n\n var actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n var buf = createBuffer(length)\n for (var i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n var buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n buf.__proto__ = Buffer.prototype\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n var buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n buf = Buffer.from(buf)\n }\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n var len = string.length\n var mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n var strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n newBuf.__proto__ = Buffer.prototype\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n var limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n var limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (var i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n var len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n", - "module.exports = {\n \"100\": \"Continue\",\n \"101\": \"Switching Protocols\",\n \"102\": \"Processing\",\n \"200\": \"OK\",\n \"201\": \"Created\",\n \"202\": \"Accepted\",\n \"203\": \"Non-Authoritative Information\",\n \"204\": \"No Content\",\n \"205\": \"Reset Content\",\n \"206\": \"Partial Content\",\n \"207\": \"Multi-Status\",\n \"208\": \"Already Reported\",\n \"226\": \"IM Used\",\n \"300\": \"Multiple Choices\",\n \"301\": \"Moved Permanently\",\n \"302\": \"Found\",\n \"303\": \"See Other\",\n \"304\": \"Not Modified\",\n \"305\": \"Use Proxy\",\n \"307\": \"Temporary Redirect\",\n \"308\": \"Permanent Redirect\",\n \"400\": \"Bad Request\",\n \"401\": \"Unauthorized\",\n \"402\": \"Payment Required\",\n \"403\": \"Forbidden\",\n \"404\": \"Not Found\",\n \"405\": \"Method Not Allowed\",\n \"406\": \"Not Acceptable\",\n \"407\": \"Proxy Authentication Required\",\n \"408\": \"Request Timeout\",\n \"409\": \"Conflict\",\n \"410\": \"Gone\",\n \"411\": \"Length Required\",\n \"412\": \"Precondition Failed\",\n \"413\": \"Payload Too Large\",\n \"414\": \"URI Too Long\",\n \"415\": \"Unsupported Media Type\",\n \"416\": \"Range Not Satisfiable\",\n \"417\": \"Expectation Failed\",\n \"418\": \"I'm a teapot\",\n \"421\": \"Misdirected Request\",\n \"422\": \"Unprocessable Entity\",\n \"423\": \"Locked\",\n \"424\": \"Failed Dependency\",\n \"425\": \"Unordered Collection\",\n \"426\": \"Upgrade Required\",\n \"428\": \"Precondition Required\",\n \"429\": \"Too Many Requests\",\n \"431\": \"Request Header Fields Too Large\",\n \"451\": \"Unavailable For Legal Reasons\",\n \"500\": \"Internal Server Error\",\n \"501\": \"Not Implemented\",\n \"502\": \"Bad Gateway\",\n \"503\": \"Service Unavailable\",\n \"504\": \"Gateway Timeout\",\n \"505\": \"HTTP Version Not Supported\",\n \"506\": \"Variant Also Negotiates\",\n \"507\": \"Insufficient Storage\",\n \"508\": \"Loop Detected\",\n \"509\": \"Bandwidth Limit Exceeded\",\n \"510\": \"Not Extended\",\n \"511\": \"Network Authentication Required\"\n}\n", - "\"use strict\"\n\nvar next = (global.process && process.nextTick) || global.setImmediate || function (f) {\n setTimeout(f, 0)\n}\n\nmodule.exports = function maybe (cb, promise) {\n if (cb) {\n promise\n .then(function (result) {\n next(function () { cb(null, result) })\n }, function (err) {\n next(function () { cb(err) })\n })\n return undefined\n }\n else {\n return promise\n }\n}\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\n\nfunction isArray(arg) {\n if (Array.isArray) {\n return Array.isArray(arg);\n }\n return objectToString(arg) === '[object Array]';\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = Buffer.isBuffer;\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar objectCreate = Object.create || objectCreatePolyfill\nvar objectKeys = Object.keys || objectKeysPolyfill\nvar bind = Function.prototype.bind || functionBindPolyfill\n\nfunction EventEmitter() {\n if (!this._events || !Object.prototype.hasOwnProperty.call(this, '_events')) {\n this._events = objectCreate(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n}\nmodule.exports = EventEmitter;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nvar hasDefineProperty;\ntry {\n var o = {};\n if (Object.defineProperty) Object.defineProperty(o, 'x', { value: 0 });\n hasDefineProperty = o.x === 0;\n} catch (err) { hasDefineProperty = false }\nif (hasDefineProperty) {\n Object.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n // check whether the input is a positive number (whose value is zero or\n // greater and not a NaN).\n if (typeof arg !== 'number' || arg < 0 || arg !== arg)\n throw new TypeError('\"defaultMaxListeners\" must be a positive number');\n defaultMaxListeners = arg;\n }\n });\n} else {\n EventEmitter.defaultMaxListeners = defaultMaxListeners;\n}\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || isNaN(n))\n throw new TypeError('\"n\" argument must be a positive number');\n this._maxListeners = n;\n return this;\n};\n\nfunction $getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return $getMaxListeners(this);\n};\n\n// These standalone emit* functions are used to optimize calling of event\n// handlers for fast cases because emit() itself often has a variable number of\n// arguments and can be deoptimized because of that. These functions always have\n// the same number of arguments and thus do not get deoptimized, so the code\n// inside them can execute faster.\nfunction emitNone(handler, isFn, self) {\n if (isFn)\n handler.call(self);\n else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n listeners[i].call(self);\n }\n}\nfunction emitOne(handler, isFn, self, arg1) {\n if (isFn)\n handler.call(self, arg1);\n else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n listeners[i].call(self, arg1);\n }\n}\nfunction emitTwo(handler, isFn, self, arg1, arg2) {\n if (isFn)\n handler.call(self, arg1, arg2);\n else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n listeners[i].call(self, arg1, arg2);\n }\n}\nfunction emitThree(handler, isFn, self, arg1, arg2, arg3) {\n if (isFn)\n handler.call(self, arg1, arg2, arg3);\n else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n listeners[i].call(self, arg1, arg2, arg3);\n }\n}\n\nfunction emitMany(handler, isFn, self, args) {\n if (isFn)\n handler.apply(self, args);\n else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n listeners[i].apply(self, args);\n }\n}\n\nEventEmitter.prototype.emit = function emit(type) {\n var er, handler, len, args, i, events;\n var doError = (type === 'error');\n\n events = this._events;\n if (events)\n doError = (doError && events.error == null);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n if (arguments.length > 1)\n er = arguments[1];\n if (er instanceof Error) {\n throw er; // Unhandled 'error' event\n } else {\n // At least give some kind of context to the user\n var err = new Error('Unhandled \"error\" event. (' + er + ')');\n err.context = er;\n throw err;\n }\n return false;\n }\n\n handler = events[type];\n\n if (!handler)\n return false;\n\n var isFn = typeof handler === 'function';\n len = arguments.length;\n switch (len) {\n // fast cases\n case 1:\n emitNone(handler, isFn, this);\n break;\n case 2:\n emitOne(handler, isFn, this, arguments[1]);\n break;\n case 3:\n emitTwo(handler, isFn, this, arguments[1], arguments[2]);\n break;\n case 4:\n emitThree(handler, isFn, this, arguments[1], arguments[2], arguments[3]);\n break;\n // slower\n default:\n args = new Array(len - 1);\n for (i = 1; i < len; i++)\n args[i - 1] = arguments[i];\n emitMany(handler, isFn, this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n if (typeof listener !== 'function')\n throw new TypeError('\"listener\" argument must be a function');\n\n events = target._events;\n if (!events) {\n events = target._events = objectCreate(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (!existing) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n } else {\n // If we've already got an array, just append.\n if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n }\n\n // Check for listener leak\n if (!existing.warned) {\n m = $getMaxListeners(target);\n if (m && m > 0 && existing.length > m) {\n existing.warned = true;\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' \"' + String(type) + '\" listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit.');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n if (typeof console === 'object' && console.warn) {\n console.warn('%s: %s', w.name, w.message);\n }\n }\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n switch (arguments.length) {\n case 0:\n return this.listener.call(this.target);\n case 1:\n return this.listener.call(this.target, arguments[0]);\n case 2:\n return this.listener.call(this.target, arguments[0], arguments[1]);\n case 3:\n return this.listener.call(this.target, arguments[0], arguments[1],\n arguments[2]);\n default:\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; ++i)\n args[i] = arguments[i];\n this.listener.apply(this.target, args);\n }\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = bind.call(onceWrapper, state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n if (typeof listener !== 'function')\n throw new TypeError('\"listener\" argument must be a function');\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n if (typeof listener !== 'function')\n throw new TypeError('\"listener\" argument must be a function');\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n if (typeof listener !== 'function')\n throw new TypeError('\"listener\" argument must be a function');\n\n events = this._events;\n if (!events)\n return this;\n\n list = events[type];\n if (!list)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = objectCreate(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else\n spliceOne(list, position);\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (!events)\n return this;\n\n // not listening for removeListener, no need to emit\n if (!events.removeListener) {\n if (arguments.length === 0) {\n this._events = objectCreate(null);\n this._eventsCount = 0;\n } else if (events[type]) {\n if (--this._eventsCount === 0)\n this._events = objectCreate(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = objectKeys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = objectCreate(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (!events)\n return [];\n\n var evlistener = events[type];\n if (!evlistener)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ? unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? Reflect.ownKeys(this._events) : [];\n};\n\n// About 1.5x faster than the two-arg version of Array#splice().\nfunction spliceOne(list, index) {\n for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1)\n list[i] = list[k];\n list.pop();\n}\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction objectCreatePolyfill(proto) {\n var F = function() {};\n F.prototype = proto;\n return new F;\n}\nfunction objectKeysPolyfill(obj) {\n var keys = [];\n for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k)) {\n keys.push(k);\n }\n return k;\n}\nfunction functionBindPolyfill(context) {\n var fn = this;\n return function () {\n return fn.apply(context, arguments);\n };\n}\n", - "function format(fmt) {\n var re = /(%?)(%([jds]))/g\n , args = Array.prototype.slice.call(arguments, 1);\n if(args.length) {\n fmt = fmt.replace(re, function(match, escaped, ptn, flag) {\n var arg = args.shift();\n switch(flag) {\n case 's':\n arg = '' + arg;\n break;\n case 'd':\n arg = Number(arg);\n break;\n case 'j':\n arg = JSON.stringify(arg);\n break;\n }\n if(!escaped) {\n return arg; \n }\n args.unshift(arg);\n return match;\n })\n }\n\n // arguments remain after formatting\n if(args.length) {\n fmt += ' ' + args.join(' ');\n }\n\n // update escaped %% values\n fmt = fmt.replace(/%{2,2}/g, '%');\n\n return '' + fmt;\n}\n\nmodule.exports = format;\n", - "var http = require('http')\nvar url = require('url')\n\nvar https = module.exports\n\nfor (var key in http) {\n if (http.hasOwnProperty(key)) https[key] = http[key]\n}\n\nhttps.request = function (params, cb) {\n params = validateParams(params)\n return http.request.call(this, params, cb)\n}\n\nhttps.get = function (params, cb) {\n params = validateParams(params)\n return http.get.call(this, params, cb)\n}\n\nfunction validateParams (params) {\n if (typeof params === 'string') {\n params = url.parse(params)\n }\n if (!params.protocol) {\n params.protocol = 'https:'\n }\n if (params.protocol !== 'https:') {\n throw new Error('Protocol \"' + params.protocol + '\" not supported. Expected \"https:\"')\n }\n return params\n}\n", - "exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n", - "if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n", - "/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n", - "var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n", - "'use strict';\n\n\nvar yaml = require('./lib/js-yaml.js');\n\n\nmodule.exports = yaml;\n", - "'use strict';\n\n\nvar loader = require('./js-yaml/loader');\nvar dumper = require('./js-yaml/dumper');\n\n\nfunction deprecated(name) {\n return function () {\n throw new Error('Function ' + name + ' is deprecated and cannot be used.');\n };\n}\n\n\nmodule.exports.Type = require('./js-yaml/type');\nmodule.exports.Schema = require('./js-yaml/schema');\nmodule.exports.FAILSAFE_SCHEMA = require('./js-yaml/schema/failsafe');\nmodule.exports.JSON_SCHEMA = require('./js-yaml/schema/json');\nmodule.exports.CORE_SCHEMA = require('./js-yaml/schema/core');\nmodule.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe');\nmodule.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full');\nmodule.exports.load = loader.load;\nmodule.exports.loadAll = loader.loadAll;\nmodule.exports.safeLoad = loader.safeLoad;\nmodule.exports.safeLoadAll = loader.safeLoadAll;\nmodule.exports.dump = dumper.dump;\nmodule.exports.safeDump = dumper.safeDump;\nmodule.exports.YAMLException = require('./js-yaml/exception');\n\n// Deprecated schema names from JS-YAML 2.0.x\nmodule.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe');\nmodule.exports.SAFE_SCHEMA = require('./js-yaml/schema/default_safe');\nmodule.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full');\n\n// Deprecated functions from JS-YAML 1.x.x\nmodule.exports.scan = deprecated('scan');\nmodule.exports.parse = deprecated('parse');\nmodule.exports.compose = deprecated('compose');\nmodule.exports.addConstructor = deprecated('addConstructor');\n", - "'use strict';\n\n\nfunction isNothing(subject) {\n return (typeof subject === 'undefined') || (subject === null);\n}\n\n\nfunction isObject(subject) {\n return (typeof subject === 'object') && (subject !== null);\n}\n\n\nfunction toArray(sequence) {\n if (Array.isArray(sequence)) return sequence;\n else if (isNothing(sequence)) return [];\n\n return [ sequence ];\n}\n\n\nfunction extend(target, source) {\n var index, length, key, sourceKeys;\n\n if (source) {\n sourceKeys = Object.keys(source);\n\n for (index = 0, length = sourceKeys.length; index < length; index += 1) {\n key = sourceKeys[index];\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\n\nfunction repeat(string, count) {\n var result = '', cycle;\n\n for (cycle = 0; cycle < count; cycle += 1) {\n result += string;\n }\n\n return result;\n}\n\n\nfunction isNegativeZero(number) {\n return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number);\n}\n\n\nmodule.exports.isNothing = isNothing;\nmodule.exports.isObject = isObject;\nmodule.exports.toArray = toArray;\nmodule.exports.repeat = repeat;\nmodule.exports.isNegativeZero = isNegativeZero;\nmodule.exports.extend = extend;\n", - "'use strict';\n\n/*eslint-disable no-use-before-define*/\n\nvar common = require('./common');\nvar YAMLException = require('./exception');\nvar DEFAULT_FULL_SCHEMA = require('./schema/default_full');\nvar DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');\n\nvar _toString = Object.prototype.toString;\nvar _hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar CHAR_TAB = 0x09; /* Tab */\nvar CHAR_LINE_FEED = 0x0A; /* LF */\nvar CHAR_SPACE = 0x20; /* Space */\nvar CHAR_EXCLAMATION = 0x21; /* ! */\nvar CHAR_DOUBLE_QUOTE = 0x22; /* \" */\nvar CHAR_SHARP = 0x23; /* # */\nvar CHAR_PERCENT = 0x25; /* % */\nvar CHAR_AMPERSAND = 0x26; /* & */\nvar CHAR_SINGLE_QUOTE = 0x27; /* ' */\nvar CHAR_ASTERISK = 0x2A; /* * */\nvar CHAR_COMMA = 0x2C; /* , */\nvar CHAR_MINUS = 0x2D; /* - */\nvar CHAR_COLON = 0x3A; /* : */\nvar CHAR_GREATER_THAN = 0x3E; /* > */\nvar CHAR_QUESTION = 0x3F; /* ? */\nvar CHAR_COMMERCIAL_AT = 0x40; /* @ */\nvar CHAR_LEFT_SQUARE_BRACKET = 0x5B; /* [ */\nvar CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */\nvar CHAR_GRAVE_ACCENT = 0x60; /* ` */\nvar CHAR_LEFT_CURLY_BRACKET = 0x7B; /* { */\nvar CHAR_VERTICAL_LINE = 0x7C; /* | */\nvar CHAR_RIGHT_CURLY_BRACKET = 0x7D; /* } */\n\nvar ESCAPE_SEQUENCES = {};\n\nESCAPE_SEQUENCES[0x00] = '\\\\0';\nESCAPE_SEQUENCES[0x07] = '\\\\a';\nESCAPE_SEQUENCES[0x08] = '\\\\b';\nESCAPE_SEQUENCES[0x09] = '\\\\t';\nESCAPE_SEQUENCES[0x0A] = '\\\\n';\nESCAPE_SEQUENCES[0x0B] = '\\\\v';\nESCAPE_SEQUENCES[0x0C] = '\\\\f';\nESCAPE_SEQUENCES[0x0D] = '\\\\r';\nESCAPE_SEQUENCES[0x1B] = '\\\\e';\nESCAPE_SEQUENCES[0x22] = '\\\\\"';\nESCAPE_SEQUENCES[0x5C] = '\\\\\\\\';\nESCAPE_SEQUENCES[0x85] = '\\\\N';\nESCAPE_SEQUENCES[0xA0] = '\\\\_';\nESCAPE_SEQUENCES[0x2028] = '\\\\L';\nESCAPE_SEQUENCES[0x2029] = '\\\\P';\n\nvar DEPRECATED_BOOLEANS_SYNTAX = [\n 'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',\n 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'\n];\n\nfunction compileStyleMap(schema, map) {\n var result, keys, index, length, tag, style, type;\n\n if (map === null) return {};\n\n result = {};\n keys = Object.keys(map);\n\n for (index = 0, length = keys.length; index < length; index += 1) {\n tag = keys[index];\n style = String(map[tag]);\n\n if (tag.slice(0, 2) === '!!') {\n tag = 'tag:yaml.org,2002:' + tag.slice(2);\n }\n type = schema.compiledTypeMap['fallback'][tag];\n\n if (type && _hasOwnProperty.call(type.styleAliases, style)) {\n style = type.styleAliases[style];\n }\n\n result[tag] = style;\n }\n\n return result;\n}\n\nfunction encodeHex(character) {\n var string, handle, length;\n\n string = character.toString(16).toUpperCase();\n\n if (character <= 0xFF) {\n handle = 'x';\n length = 2;\n } else if (character <= 0xFFFF) {\n handle = 'u';\n length = 4;\n } else if (character <= 0xFFFFFFFF) {\n handle = 'U';\n length = 8;\n } else {\n throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');\n }\n\n return '\\\\' + handle + common.repeat('0', length - string.length) + string;\n}\n\nfunction State(options) {\n this.schema = options['schema'] || DEFAULT_FULL_SCHEMA;\n this.indent = Math.max(1, (options['indent'] || 2));\n this.noArrayIndent = options['noArrayIndent'] || false;\n this.skipInvalid = options['skipInvalid'] || false;\n this.flowLevel = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);\n this.styleMap = compileStyleMap(this.schema, options['styles'] || null);\n this.sortKeys = options['sortKeys'] || false;\n this.lineWidth = options['lineWidth'] || 80;\n this.noRefs = options['noRefs'] || false;\n this.noCompatMode = options['noCompatMode'] || false;\n this.condenseFlow = options['condenseFlow'] || false;\n\n this.implicitTypes = this.schema.compiledImplicit;\n this.explicitTypes = this.schema.compiledExplicit;\n\n this.tag = null;\n this.result = '';\n\n this.duplicates = [];\n this.usedDuplicates = null;\n}\n\n// Indents every line in a string. Empty lines (\\n only) are not indented.\nfunction indentString(string, spaces) {\n var ind = common.repeat(' ', spaces),\n position = 0,\n next = -1,\n result = '',\n line,\n length = string.length;\n\n while (position < length) {\n next = string.indexOf('\\n', position);\n if (next === -1) {\n line = string.slice(position);\n position = length;\n } else {\n line = string.slice(position, next + 1);\n position = next + 1;\n }\n\n if (line.length && line !== '\\n') result += ind;\n\n result += line;\n }\n\n return result;\n}\n\nfunction generateNextLine(state, level) {\n return '\\n' + common.repeat(' ', state.indent * level);\n}\n\nfunction testImplicitResolving(state, str) {\n var index, length, type;\n\n for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {\n type = state.implicitTypes[index];\n\n if (type.resolve(str)) {\n return true;\n }\n }\n\n return false;\n}\n\n// [33] s-white ::= s-space | s-tab\nfunction isWhitespace(c) {\n return c === CHAR_SPACE || c === CHAR_TAB;\n}\n\n// Returns true if the character can be printed without escaping.\n// From YAML 1.2: \"any allowed characters known to be non-printable\n// should also be escaped. [However,] This isn’t mandatory\"\n// Derived from nb-char - \\t - #x85 - #xA0 - #x2028 - #x2029.\nfunction isPrintable(c) {\n return (0x00020 <= c && c <= 0x00007E)\n || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029)\n || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */)\n || (0x10000 <= c && c <= 0x10FFFF);\n}\n\n// Simplified test for values allowed after the first character in plain style.\nfunction isPlainSafe(c) {\n // Uses a subset of nb-char - c-flow-indicator - \":\" - \"#\"\n // where nb-char ::= c-printable - b-char - c-byte-order-mark.\n return isPrintable(c) && c !== 0xFEFF\n // - c-flow-indicator\n && c !== CHAR_COMMA\n && c !== CHAR_LEFT_SQUARE_BRACKET\n && c !== CHAR_RIGHT_SQUARE_BRACKET\n && c !== CHAR_LEFT_CURLY_BRACKET\n && c !== CHAR_RIGHT_CURLY_BRACKET\n // - \":\" - \"#\"\n && c !== CHAR_COLON\n && c !== CHAR_SHARP;\n}\n\n// Simplified test for values allowed as the first character in plain style.\nfunction isPlainSafeFirst(c) {\n // Uses a subset of ns-char - c-indicator\n // where ns-char = nb-char - s-white.\n return isPrintable(c) && c !== 0xFEFF\n && !isWhitespace(c) // - s-white\n // - (c-indicator ::=\n // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}”\n && c !== CHAR_MINUS\n && c !== CHAR_QUESTION\n && c !== CHAR_COLON\n && c !== CHAR_COMMA\n && c !== CHAR_LEFT_SQUARE_BRACKET\n && c !== CHAR_RIGHT_SQUARE_BRACKET\n && c !== CHAR_LEFT_CURLY_BRACKET\n && c !== CHAR_RIGHT_CURLY_BRACKET\n // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “\"”\n && c !== CHAR_SHARP\n && c !== CHAR_AMPERSAND\n && c !== CHAR_ASTERISK\n && c !== CHAR_EXCLAMATION\n && c !== CHAR_VERTICAL_LINE\n && c !== CHAR_GREATER_THAN\n && c !== CHAR_SINGLE_QUOTE\n && c !== CHAR_DOUBLE_QUOTE\n // | “%” | “@” | “`”)\n && c !== CHAR_PERCENT\n && c !== CHAR_COMMERCIAL_AT\n && c !== CHAR_GRAVE_ACCENT;\n}\n\n// Determines whether block indentation indicator is required.\nfunction needIndentIndicator(string) {\n var leadingSpaceRe = /^\\n* /;\n return leadingSpaceRe.test(string);\n}\n\nvar STYLE_PLAIN = 1,\n STYLE_SINGLE = 2,\n STYLE_LITERAL = 3,\n STYLE_FOLDED = 4,\n STYLE_DOUBLE = 5;\n\n// Determines which scalar styles are possible and returns the preferred style.\n// lineWidth = -1 => no limit.\n// Pre-conditions: str.length > 0.\n// Post-conditions:\n// STYLE_PLAIN or STYLE_SINGLE => no \\n are in the string.\n// STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1).\n// STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1).\nfunction chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) {\n var i;\n var char;\n var hasLineBreak = false;\n var hasFoldableLine = false; // only checked if shouldTrackWidth\n var shouldTrackWidth = lineWidth !== -1;\n var previousLineBreak = -1; // count the first line correctly\n var plain = isPlainSafeFirst(string.charCodeAt(0))\n && !isWhitespace(string.charCodeAt(string.length - 1));\n\n if (singleLineOnly) {\n // Case: no block styles.\n // Check for disallowed characters to rule out plain and single.\n for (i = 0; i < string.length; i++) {\n char = string.charCodeAt(i);\n if (!isPrintable(char)) {\n return STYLE_DOUBLE;\n }\n plain = plain && isPlainSafe(char);\n }\n } else {\n // Case: block styles permitted.\n for (i = 0; i < string.length; i++) {\n char = string.charCodeAt(i);\n if (char === CHAR_LINE_FEED) {\n hasLineBreak = true;\n // Check if any line can be folded.\n if (shouldTrackWidth) {\n hasFoldableLine = hasFoldableLine ||\n // Foldable line = too long, and not more-indented.\n (i - previousLineBreak - 1 > lineWidth &&\n string[previousLineBreak + 1] !== ' ');\n previousLineBreak = i;\n }\n } else if (!isPrintable(char)) {\n return STYLE_DOUBLE;\n }\n plain = plain && isPlainSafe(char);\n }\n // in case the end is missing a \\n\n hasFoldableLine = hasFoldableLine || (shouldTrackWidth &&\n (i - previousLineBreak - 1 > lineWidth &&\n string[previousLineBreak + 1] !== ' '));\n }\n // Although every style can represent \\n without escaping, prefer block styles\n // for multiline, since they're more readable and they don't add empty lines.\n // Also prefer folding a super-long line.\n if (!hasLineBreak && !hasFoldableLine) {\n // Strings interpretable as another type have to be quoted;\n // e.g. the string 'true' vs. the boolean true.\n return plain && !testAmbiguousType(string)\n ? STYLE_PLAIN : STYLE_SINGLE;\n }\n // Edge case: block indentation indicator can only have one digit.\n if (indentPerLevel > 9 && needIndentIndicator(string)) {\n return STYLE_DOUBLE;\n }\n // At this point we know block styles are valid.\n // Prefer literal style unless we want to fold.\n return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL;\n}\n\n// Note: line breaking/folding is implemented for only the folded style.\n// NB. We drop the last trailing newline (if any) of a returned block scalar\n// since the dumper adds its own newline. This always works:\n// • No ending newline => unaffected; already using strip \"-\" chomping.\n// • Ending newline => removed then restored.\n// Importantly, this keeps the \"+\" chomp indicator from gaining an extra line.\nfunction writeScalar(state, string, level, iskey) {\n state.dump = (function () {\n if (string.length === 0) {\n return \"''\";\n }\n if (!state.noCompatMode &&\n DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) {\n return \"'\" + string + \"'\";\n }\n\n var indent = state.indent * Math.max(1, level); // no 0-indent scalars\n // As indentation gets deeper, let the width decrease monotonically\n // to the lower bound min(state.lineWidth, 40).\n // Note that this implies\n // state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound.\n // state.lineWidth > 40 + state.indent: width decreases until the lower bound.\n // This behaves better than a constant minimum width which disallows narrower options,\n // or an indent threshold which causes the width to suddenly increase.\n var lineWidth = state.lineWidth === -1\n ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);\n\n // Without knowing if keys are implicit/explicit, assume implicit for safety.\n var singleLineOnly = iskey\n // No block styles in flow mode.\n || (state.flowLevel > -1 && level >= state.flowLevel);\n function testAmbiguity(string) {\n return testImplicitResolving(state, string);\n }\n\n switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) {\n case STYLE_PLAIN:\n return string;\n case STYLE_SINGLE:\n return \"'\" + string.replace(/'/g, \"''\") + \"'\";\n case STYLE_LITERAL:\n return '|' + blockHeader(string, state.indent)\n + dropEndingNewline(indentString(string, indent));\n case STYLE_FOLDED:\n return '>' + blockHeader(string, state.indent)\n + dropEndingNewline(indentString(foldString(string, lineWidth), indent));\n case STYLE_DOUBLE:\n return '\"' + escapeString(string, lineWidth) + '\"';\n default:\n throw new YAMLException('impossible error: invalid scalar style');\n }\n }());\n}\n\n// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9.\nfunction blockHeader(string, indentPerLevel) {\n var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : '';\n\n // note the special case: the string '\\n' counts as a \"trailing\" empty line.\n var clip = string[string.length - 1] === '\\n';\n var keep = clip && (string[string.length - 2] === '\\n' || string === '\\n');\n var chomp = keep ? '+' : (clip ? '' : '-');\n\n return indentIndicator + chomp + '\\n';\n}\n\n// (See the note for writeScalar.)\nfunction dropEndingNewline(string) {\n return string[string.length - 1] === '\\n' ? string.slice(0, -1) : string;\n}\n\n// Note: a long line without a suitable break point will exceed the width limit.\n// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0.\nfunction foldString(string, width) {\n // In folded style, $k$ consecutive newlines output as $k+1$ newlines—\n // unless they're before or after a more-indented line, or at the very\n // beginning or end, in which case $k$ maps to $k$.\n // Therefore, parse each chunk as newline(s) followed by a content line.\n var lineRe = /(\\n+)([^\\n]*)/g;\n\n // first line (possibly an empty line)\n var result = (function () {\n var nextLF = string.indexOf('\\n');\n nextLF = nextLF !== -1 ? nextLF : string.length;\n lineRe.lastIndex = nextLF;\n return foldLine(string.slice(0, nextLF), width);\n }());\n // If we haven't reached the first content line yet, don't add an extra \\n.\n var prevMoreIndented = string[0] === '\\n' || string[0] === ' ';\n var moreIndented;\n\n // rest of the lines\n var match;\n while ((match = lineRe.exec(string))) {\n var prefix = match[1], line = match[2];\n moreIndented = (line[0] === ' ');\n result += prefix\n + (!prevMoreIndented && !moreIndented && line !== ''\n ? '\\n' : '')\n + foldLine(line, width);\n prevMoreIndented = moreIndented;\n }\n\n return result;\n}\n\n// Greedy line breaking.\n// Picks the longest line under the limit each time,\n// otherwise settles for the shortest line over the limit.\n// NB. More-indented lines *cannot* be folded, as that would add an extra \\n.\nfunction foldLine(line, width) {\n if (line === '' || line[0] === ' ') return line;\n\n // Since a more-indented line adds a \\n, breaks can't be followed by a space.\n var breakRe = / [^ ]/g; // note: the match index will always be <= length-2.\n var match;\n // start is an inclusive index. end, curr, and next are exclusive.\n var start = 0, end, curr = 0, next = 0;\n var result = '';\n\n // Invariants: 0 <= start <= length-1.\n // 0 <= curr <= next <= max(0, length-2). curr - start <= width.\n // Inside the loop:\n // A match implies length >= 2, so curr and next are <= length-2.\n while ((match = breakRe.exec(line))) {\n next = match.index;\n // maintain invariant: curr - start <= width\n if (next - start > width) {\n end = (curr > start) ? curr : next; // derive end <= length-2\n result += '\\n' + line.slice(start, end);\n // skip the space that was output as \\n\n start = end + 1; // derive start <= length-1\n }\n curr = next;\n }\n\n // By the invariants, start <= length-1, so there is something left over.\n // It is either the whole string or a part starting from non-whitespace.\n result += '\\n';\n // Insert a break if the remainder is too long and there is a break available.\n if (line.length - start > width && curr > start) {\n result += line.slice(start, curr) + '\\n' + line.slice(curr + 1);\n } else {\n result += line.slice(start);\n }\n\n return result.slice(1); // drop extra \\n joiner\n}\n\n// Escapes a double-quoted string.\nfunction escapeString(string) {\n var result = '';\n var char, nextChar;\n var escapeSeq;\n\n for (var i = 0; i < string.length; i++) {\n char = string.charCodeAt(i);\n // Check for surrogate pairs (reference Unicode 3.0 section \"3.7 Surrogates\").\n if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) {\n nextChar = string.charCodeAt(i + 1);\n if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) {\n // Combine the surrogate pair and store it escaped.\n result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000);\n // Advance index one extra since we already used that char here.\n i++; continue;\n }\n }\n escapeSeq = ESCAPE_SEQUENCES[char];\n result += !escapeSeq && isPrintable(char)\n ? string[i]\n : escapeSeq || encodeHex(char);\n }\n\n return result;\n}\n\nfunction writeFlowSequence(state, level, object) {\n var _result = '',\n _tag = state.tag,\n index,\n length;\n\n for (index = 0, length = object.length; index < length; index += 1) {\n // Write only valid elements.\n if (writeNode(state, level, object[index], false, false)) {\n if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : '');\n _result += state.dump;\n }\n }\n\n state.tag = _tag;\n state.dump = '[' + _result + ']';\n}\n\nfunction writeBlockSequence(state, level, object, compact) {\n var _result = '',\n _tag = state.tag,\n index,\n length;\n\n for (index = 0, length = object.length; index < length; index += 1) {\n // Write only valid elements.\n if (writeNode(state, level + 1, object[index], true, true)) {\n if (!compact || index !== 0) {\n _result += generateNextLine(state, level);\n }\n\n if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {\n _result += '-';\n } else {\n _result += '- ';\n }\n\n _result += state.dump;\n }\n }\n\n state.tag = _tag;\n state.dump = _result || '[]'; // Empty sequence if no valid values.\n}\n\nfunction writeFlowMapping(state, level, object) {\n var _result = '',\n _tag = state.tag,\n objectKeyList = Object.keys(object),\n index,\n length,\n objectKey,\n objectValue,\n pairBuffer;\n\n for (index = 0, length = objectKeyList.length; index < length; index += 1) {\n pairBuffer = state.condenseFlow ? '\"' : '';\n\n if (index !== 0) pairBuffer += ', ';\n\n objectKey = objectKeyList[index];\n objectValue = object[objectKey];\n\n if (!writeNode(state, level, objectKey, false, false)) {\n continue; // Skip this pair because of invalid key;\n }\n\n if (state.dump.length > 1024) pairBuffer += '? ';\n\n pairBuffer += state.dump + (state.condenseFlow ? '\"' : '') + ':' + (state.condenseFlow ? '' : ' ');\n\n if (!writeNode(state, level, objectValue, false, false)) {\n continue; // Skip this pair because of invalid value.\n }\n\n pairBuffer += state.dump;\n\n // Both key and value are valid.\n _result += pairBuffer;\n }\n\n state.tag = _tag;\n state.dump = '{' + _result + '}';\n}\n\nfunction writeBlockMapping(state, level, object, compact) {\n var _result = '',\n _tag = state.tag,\n objectKeyList = Object.keys(object),\n index,\n length,\n objectKey,\n objectValue,\n explicitPair,\n pairBuffer;\n\n // Allow sorting keys so that the output file is deterministic\n if (state.sortKeys === true) {\n // Default sorting\n objectKeyList.sort();\n } else if (typeof state.sortKeys === 'function') {\n // Custom sort function\n objectKeyList.sort(state.sortKeys);\n } else if (state.sortKeys) {\n // Something is wrong\n throw new YAMLException('sortKeys must be a boolean or a function');\n }\n\n for (index = 0, length = objectKeyList.length; index < length; index += 1) {\n pairBuffer = '';\n\n if (!compact || index !== 0) {\n pairBuffer += generateNextLine(state, level);\n }\n\n objectKey = objectKeyList[index];\n objectValue = object[objectKey];\n\n if (!writeNode(state, level + 1, objectKey, true, true, true)) {\n continue; // Skip this pair because of invalid key.\n }\n\n explicitPair = (state.tag !== null && state.tag !== '?') ||\n (state.dump && state.dump.length > 1024);\n\n if (explicitPair) {\n if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {\n pairBuffer += '?';\n } else {\n pairBuffer += '? ';\n }\n }\n\n pairBuffer += state.dump;\n\n if (explicitPair) {\n pairBuffer += generateNextLine(state, level);\n }\n\n if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {\n continue; // Skip this pair because of invalid value.\n }\n\n if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {\n pairBuffer += ':';\n } else {\n pairBuffer += ': ';\n }\n\n pairBuffer += state.dump;\n\n // Both key and value are valid.\n _result += pairBuffer;\n }\n\n state.tag = _tag;\n state.dump = _result || '{}'; // Empty mapping if no valid pairs.\n}\n\nfunction detectType(state, object, explicit) {\n var _result, typeList, index, length, type, style;\n\n typeList = explicit ? state.explicitTypes : state.implicitTypes;\n\n for (index = 0, length = typeList.length; index < length; index += 1) {\n type = typeList[index];\n\n if ((type.instanceOf || type.predicate) &&\n (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) &&\n (!type.predicate || type.predicate(object))) {\n\n state.tag = explicit ? type.tag : '?';\n\n if (type.represent) {\n style = state.styleMap[type.tag] || type.defaultStyle;\n\n if (_toString.call(type.represent) === '[object Function]') {\n _result = type.represent(object, style);\n } else if (_hasOwnProperty.call(type.represent, style)) {\n _result = type.represent[style](object, style);\n } else {\n throw new YAMLException('!<' + type.tag + '> tag resolver accepts not \"' + style + '\" style');\n }\n\n state.dump = _result;\n }\n\n return true;\n }\n }\n\n return false;\n}\n\n// Serializes `object` and writes it to global `result`.\n// Returns true on success, or false on invalid object.\n//\nfunction writeNode(state, level, object, block, compact, iskey) {\n state.tag = null;\n state.dump = object;\n\n if (!detectType(state, object, false)) {\n detectType(state, object, true);\n }\n\n var type = _toString.call(state.dump);\n\n if (block) {\n block = (state.flowLevel < 0 || state.flowLevel > level);\n }\n\n var objectOrArray = type === '[object Object]' || type === '[object Array]',\n duplicateIndex,\n duplicate;\n\n if (objectOrArray) {\n duplicateIndex = state.duplicates.indexOf(object);\n duplicate = duplicateIndex !== -1;\n }\n\n if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) {\n compact = false;\n }\n\n if (duplicate && state.usedDuplicates[duplicateIndex]) {\n state.dump = '*ref_' + duplicateIndex;\n } else {\n if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {\n state.usedDuplicates[duplicateIndex] = true;\n }\n if (type === '[object Object]') {\n if (block && (Object.keys(state.dump).length !== 0)) {\n writeBlockMapping(state, level, state.dump, compact);\n if (duplicate) {\n state.dump = '&ref_' + duplicateIndex + state.dump;\n }\n } else {\n writeFlowMapping(state, level, state.dump);\n if (duplicate) {\n state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;\n }\n }\n } else if (type === '[object Array]') {\n var arrayLevel = (state.noArrayIndent) ? level - 1 : level;\n if (block && (state.dump.length !== 0)) {\n writeBlockSequence(state, arrayLevel, state.dump, compact);\n if (duplicate) {\n state.dump = '&ref_' + duplicateIndex + state.dump;\n }\n } else {\n writeFlowSequence(state, arrayLevel, state.dump);\n if (duplicate) {\n state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;\n }\n }\n } else if (type === '[object String]') {\n if (state.tag !== '?') {\n writeScalar(state, state.dump, level, iskey);\n }\n } else {\n if (state.skipInvalid) return false;\n throw new YAMLException('unacceptable kind of an object to dump ' + type);\n }\n\n if (state.tag !== null && state.tag !== '?') {\n state.dump = '!<' + state.tag + '> ' + state.dump;\n }\n }\n\n return true;\n}\n\nfunction getDuplicateReferences(object, state) {\n var objects = [],\n duplicatesIndexes = [],\n index,\n length;\n\n inspectNode(object, objects, duplicatesIndexes);\n\n for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {\n state.duplicates.push(objects[duplicatesIndexes[index]]);\n }\n state.usedDuplicates = new Array(length);\n}\n\nfunction inspectNode(object, objects, duplicatesIndexes) {\n var objectKeyList,\n index,\n length;\n\n if (object !== null && typeof object === 'object') {\n index = objects.indexOf(object);\n if (index !== -1) {\n if (duplicatesIndexes.indexOf(index) === -1) {\n duplicatesIndexes.push(index);\n }\n } else {\n objects.push(object);\n\n if (Array.isArray(object)) {\n for (index = 0, length = object.length; index < length; index += 1) {\n inspectNode(object[index], objects, duplicatesIndexes);\n }\n } else {\n objectKeyList = Object.keys(object);\n\n for (index = 0, length = objectKeyList.length; index < length; index += 1) {\n inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);\n }\n }\n }\n }\n}\n\nfunction dump(input, options) {\n options = options || {};\n\n var state = new State(options);\n\n if (!state.noRefs) getDuplicateReferences(input, state);\n\n if (writeNode(state, 0, input, true, true)) return state.dump + '\\n';\n\n return '';\n}\n\nfunction safeDump(input, options) {\n return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));\n}\n\nmodule.exports.dump = dump;\nmodule.exports.safeDump = safeDump;\n", - "// YAML error class. http://stackoverflow.com/questions/8458984\n//\n'use strict';\n\nfunction YAMLException(reason, mark) {\n // Super constructor\n Error.call(this);\n\n this.name = 'YAMLException';\n this.reason = reason;\n this.mark = mark;\n this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '');\n\n // Include stack trace in error object\n if (Error.captureStackTrace) {\n // Chrome and NodeJS\n Error.captureStackTrace(this, this.constructor);\n } else {\n // FF, IE 10+ and Safari 6+. Fallback for others\n this.stack = (new Error()).stack || '';\n }\n}\n\n\n// Inherit from Error\nYAMLException.prototype = Object.create(Error.prototype);\nYAMLException.prototype.constructor = YAMLException;\n\n\nYAMLException.prototype.toString = function toString(compact) {\n var result = this.name + ': ';\n\n result += this.reason || '(unknown reason)';\n\n if (!compact && this.mark) {\n result += ' ' + this.mark.toString();\n }\n\n return result;\n};\n\n\nmodule.exports = YAMLException;\n", - "'use strict';\n\n/*eslint-disable max-len,no-use-before-define*/\n\nvar common = require('./common');\nvar YAMLException = require('./exception');\nvar Mark = require('./mark');\nvar DEFAULT_SAFE_SCHEMA = require('./schema/default_safe');\nvar DEFAULT_FULL_SCHEMA = require('./schema/default_full');\n\n\nvar _hasOwnProperty = Object.prototype.hasOwnProperty;\n\n\nvar CONTEXT_FLOW_IN = 1;\nvar CONTEXT_FLOW_OUT = 2;\nvar CONTEXT_BLOCK_IN = 3;\nvar CONTEXT_BLOCK_OUT = 4;\n\n\nvar CHOMPING_CLIP = 1;\nvar CHOMPING_STRIP = 2;\nvar CHOMPING_KEEP = 3;\n\n\nvar PATTERN_NON_PRINTABLE = /[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F-\\x84\\x86-\\x9F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\nvar PATTERN_NON_ASCII_LINE_BREAKS = /[\\x85\\u2028\\u2029]/;\nvar PATTERN_FLOW_INDICATORS = /[,\\[\\]\\{\\}]/;\nvar PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\\-]+!)$/i;\nvar PATTERN_TAG_URI = /^(?:!|[^,\\[\\]\\{\\}])(?:%[0-9a-f]{2}|[0-9a-z\\-#;\\/\\?:@&=\\+\\$,_\\.!~\\*'\\(\\)\\[\\]])*$/i;\n\n\nfunction is_EOL(c) {\n return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);\n}\n\nfunction is_WHITE_SPACE(c) {\n return (c === 0x09/* Tab */) || (c === 0x20/* Space */);\n}\n\nfunction is_WS_OR_EOL(c) {\n return (c === 0x09/* Tab */) ||\n (c === 0x20/* Space */) ||\n (c === 0x0A/* LF */) ||\n (c === 0x0D/* CR */);\n}\n\nfunction is_FLOW_INDICATOR(c) {\n return c === 0x2C/* , */ ||\n c === 0x5B/* [ */ ||\n c === 0x5D/* ] */ ||\n c === 0x7B/* { */ ||\n c === 0x7D/* } */;\n}\n\nfunction fromHexCode(c) {\n var lc;\n\n if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {\n return c - 0x30;\n }\n\n /*eslint-disable no-bitwise*/\n lc = c | 0x20;\n\n if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {\n return lc - 0x61 + 10;\n }\n\n return -1;\n}\n\nfunction escapedHexLen(c) {\n if (c === 0x78/* x */) { return 2; }\n if (c === 0x75/* u */) { return 4; }\n if (c === 0x55/* U */) { return 8; }\n return 0;\n}\n\nfunction fromDecimalCode(c) {\n if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {\n return c - 0x30;\n }\n\n return -1;\n}\n\nfunction simpleEscapeSequence(c) {\n /* eslint-disable indent */\n return (c === 0x30/* 0 */) ? '\\x00' :\n (c === 0x61/* a */) ? '\\x07' :\n (c === 0x62/* b */) ? '\\x08' :\n (c === 0x74/* t */) ? '\\x09' :\n (c === 0x09/* Tab */) ? '\\x09' :\n (c === 0x6E/* n */) ? '\\x0A' :\n (c === 0x76/* v */) ? '\\x0B' :\n (c === 0x66/* f */) ? '\\x0C' :\n (c === 0x72/* r */) ? '\\x0D' :\n (c === 0x65/* e */) ? '\\x1B' :\n (c === 0x20/* Space */) ? ' ' :\n (c === 0x22/* \" */) ? '\\x22' :\n (c === 0x2F/* / */) ? '/' :\n (c === 0x5C/* \\ */) ? '\\x5C' :\n (c === 0x4E/* N */) ? '\\x85' :\n (c === 0x5F/* _ */) ? '\\xA0' :\n (c === 0x4C/* L */) ? '\\u2028' :\n (c === 0x50/* P */) ? '\\u2029' : '';\n}\n\nfunction charFromCodepoint(c) {\n if (c <= 0xFFFF) {\n return String.fromCharCode(c);\n }\n // Encode UTF-16 surrogate pair\n // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF\n return String.fromCharCode(\n ((c - 0x010000) >> 10) + 0xD800,\n ((c - 0x010000) & 0x03FF) + 0xDC00\n );\n}\n\nvar simpleEscapeCheck = new Array(256); // integer, for fast access\nvar simpleEscapeMap = new Array(256);\nfor (var i = 0; i < 256; i++) {\n simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;\n simpleEscapeMap[i] = simpleEscapeSequence(i);\n}\n\n\nfunction State(input, options) {\n this.input = input;\n\n this.filename = options['filename'] || null;\n this.schema = options['schema'] || DEFAULT_FULL_SCHEMA;\n this.onWarning = options['onWarning'] || null;\n this.legacy = options['legacy'] || false;\n this.json = options['json'] || false;\n this.listener = options['listener'] || null;\n\n this.implicitTypes = this.schema.compiledImplicit;\n this.typeMap = this.schema.compiledTypeMap;\n\n this.length = input.length;\n this.position = 0;\n this.line = 0;\n this.lineStart = 0;\n this.lineIndent = 0;\n\n this.documents = [];\n\n /*\n this.version;\n this.checkLineBreaks;\n this.tagMap;\n this.anchorMap;\n this.tag;\n this.anchor;\n this.kind;\n this.result;*/\n\n}\n\n\nfunction generateError(state, message) {\n return new YAMLException(\n message,\n new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));\n}\n\nfunction throwError(state, message) {\n throw generateError(state, message);\n}\n\nfunction throwWarning(state, message) {\n if (state.onWarning) {\n state.onWarning.call(null, generateError(state, message));\n }\n}\n\n\nvar directiveHandlers = {\n\n YAML: function handleYamlDirective(state, name, args) {\n\n var match, major, minor;\n\n if (state.version !== null) {\n throwError(state, 'duplication of %YAML directive');\n }\n\n if (args.length !== 1) {\n throwError(state, 'YAML directive accepts exactly one argument');\n }\n\n match = /^([0-9]+)\\.([0-9]+)$/.exec(args[0]);\n\n if (match === null) {\n throwError(state, 'ill-formed argument of the YAML directive');\n }\n\n major = parseInt(match[1], 10);\n minor = parseInt(match[2], 10);\n\n if (major !== 1) {\n throwError(state, 'unacceptable YAML version of the document');\n }\n\n state.version = args[0];\n state.checkLineBreaks = (minor < 2);\n\n if (minor !== 1 && minor !== 2) {\n throwWarning(state, 'unsupported YAML version of the document');\n }\n },\n\n TAG: function handleTagDirective(state, name, args) {\n\n var handle, prefix;\n\n if (args.length !== 2) {\n throwError(state, 'TAG directive accepts exactly two arguments');\n }\n\n handle = args[0];\n prefix = args[1];\n\n if (!PATTERN_TAG_HANDLE.test(handle)) {\n throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');\n }\n\n if (_hasOwnProperty.call(state.tagMap, handle)) {\n throwError(state, 'there is a previously declared suffix for \"' + handle + '\" tag handle');\n }\n\n if (!PATTERN_TAG_URI.test(prefix)) {\n throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');\n }\n\n state.tagMap[handle] = prefix;\n }\n};\n\n\nfunction captureSegment(state, start, end, checkJson) {\n var _position, _length, _character, _result;\n\n if (start < end) {\n _result = state.input.slice(start, end);\n\n if (checkJson) {\n for (_position = 0, _length = _result.length; _position < _length; _position += 1) {\n _character = _result.charCodeAt(_position);\n if (!(_character === 0x09 ||\n (0x20 <= _character && _character <= 0x10FFFF))) {\n throwError(state, 'expected valid JSON character');\n }\n }\n } else if (PATTERN_NON_PRINTABLE.test(_result)) {\n throwError(state, 'the stream contains non-printable characters');\n }\n\n state.result += _result;\n }\n}\n\nfunction mergeMappings(state, destination, source, overridableKeys) {\n var sourceKeys, key, index, quantity;\n\n if (!common.isObject(source)) {\n throwError(state, 'cannot merge mappings; the provided source object is unacceptable');\n }\n\n sourceKeys = Object.keys(source);\n\n for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {\n key = sourceKeys[index];\n\n if (!_hasOwnProperty.call(destination, key)) {\n destination[key] = source[key];\n overridableKeys[key] = true;\n }\n }\n}\n\nfunction storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {\n var index, quantity;\n\n keyNode = String(keyNode);\n\n if (_result === null) {\n _result = {};\n }\n\n if (keyTag === 'tag:yaml.org,2002:merge') {\n if (Array.isArray(valueNode)) {\n for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {\n mergeMappings(state, _result, valueNode[index], overridableKeys);\n }\n } else {\n mergeMappings(state, _result, valueNode, overridableKeys);\n }\n } else {\n if (!state.json &&\n !_hasOwnProperty.call(overridableKeys, keyNode) &&\n _hasOwnProperty.call(_result, keyNode)) {\n state.line = startLine || state.line;\n state.position = startPos || state.position;\n throwError(state, 'duplicated mapping key');\n }\n _result[keyNode] = valueNode;\n delete overridableKeys[keyNode];\n }\n\n return _result;\n}\n\nfunction readLineBreak(state) {\n var ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch === 0x0A/* LF */) {\n state.position++;\n } else if (ch === 0x0D/* CR */) {\n state.position++;\n if (state.input.charCodeAt(state.position) === 0x0A/* LF */) {\n state.position++;\n }\n } else {\n throwError(state, 'a line break is expected');\n }\n\n state.line += 1;\n state.lineStart = state.position;\n}\n\nfunction skipSeparationSpace(state, allowComments, checkIndent) {\n var lineBreaks = 0,\n ch = state.input.charCodeAt(state.position);\n\n while (ch !== 0) {\n while (is_WHITE_SPACE(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (allowComments && ch === 0x23/* # */) {\n do {\n ch = state.input.charCodeAt(++state.position);\n } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0);\n }\n\n if (is_EOL(ch)) {\n readLineBreak(state);\n\n ch = state.input.charCodeAt(state.position);\n lineBreaks++;\n state.lineIndent = 0;\n\n while (ch === 0x20/* Space */) {\n state.lineIndent++;\n ch = state.input.charCodeAt(++state.position);\n }\n } else {\n break;\n }\n }\n\n if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {\n throwWarning(state, 'deficient indentation');\n }\n\n return lineBreaks;\n}\n\nfunction testDocumentSeparator(state) {\n var _position = state.position,\n ch;\n\n ch = state.input.charCodeAt(_position);\n\n // Condition state.position === state.lineStart is tested\n // in parent on each call, for efficiency. No needs to test here again.\n if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) &&\n ch === state.input.charCodeAt(_position + 1) &&\n ch === state.input.charCodeAt(_position + 2)) {\n\n _position += 3;\n\n ch = state.input.charCodeAt(_position);\n\n if (ch === 0 || is_WS_OR_EOL(ch)) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction writeFoldedLines(state, count) {\n if (count === 1) {\n state.result += ' ';\n } else if (count > 1) {\n state.result += common.repeat('\\n', count - 1);\n }\n}\n\n\nfunction readPlainScalar(state, nodeIndent, withinFlowCollection) {\n var preceding,\n following,\n captureStart,\n captureEnd,\n hasPendingContent,\n _line,\n _lineStart,\n _lineIndent,\n _kind = state.kind,\n _result = state.result,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (is_WS_OR_EOL(ch) ||\n is_FLOW_INDICATOR(ch) ||\n ch === 0x23/* # */ ||\n ch === 0x26/* & */ ||\n ch === 0x2A/* * */ ||\n ch === 0x21/* ! */ ||\n ch === 0x7C/* | */ ||\n ch === 0x3E/* > */ ||\n ch === 0x27/* ' */ ||\n ch === 0x22/* \" */ ||\n ch === 0x25/* % */ ||\n ch === 0x40/* @ */ ||\n ch === 0x60/* ` */) {\n return false;\n }\n\n if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) {\n following = state.input.charCodeAt(state.position + 1);\n\n if (is_WS_OR_EOL(following) ||\n withinFlowCollection && is_FLOW_INDICATOR(following)) {\n return false;\n }\n }\n\n state.kind = 'scalar';\n state.result = '';\n captureStart = captureEnd = state.position;\n hasPendingContent = false;\n\n while (ch !== 0) {\n if (ch === 0x3A/* : */) {\n following = state.input.charCodeAt(state.position + 1);\n\n if (is_WS_OR_EOL(following) ||\n withinFlowCollection && is_FLOW_INDICATOR(following)) {\n break;\n }\n\n } else if (ch === 0x23/* # */) {\n preceding = state.input.charCodeAt(state.position - 1);\n\n if (is_WS_OR_EOL(preceding)) {\n break;\n }\n\n } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||\n withinFlowCollection && is_FLOW_INDICATOR(ch)) {\n break;\n\n } else if (is_EOL(ch)) {\n _line = state.line;\n _lineStart = state.lineStart;\n _lineIndent = state.lineIndent;\n skipSeparationSpace(state, false, -1);\n\n if (state.lineIndent >= nodeIndent) {\n hasPendingContent = true;\n ch = state.input.charCodeAt(state.position);\n continue;\n } else {\n state.position = captureEnd;\n state.line = _line;\n state.lineStart = _lineStart;\n state.lineIndent = _lineIndent;\n break;\n }\n }\n\n if (hasPendingContent) {\n captureSegment(state, captureStart, captureEnd, false);\n writeFoldedLines(state, state.line - _line);\n captureStart = captureEnd = state.position;\n hasPendingContent = false;\n }\n\n if (!is_WHITE_SPACE(ch)) {\n captureEnd = state.position + 1;\n }\n\n ch = state.input.charCodeAt(++state.position);\n }\n\n captureSegment(state, captureStart, captureEnd, false);\n\n if (state.result) {\n return true;\n }\n\n state.kind = _kind;\n state.result = _result;\n return false;\n}\n\nfunction readSingleQuotedScalar(state, nodeIndent) {\n var ch,\n captureStart, captureEnd;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch !== 0x27/* ' */) {\n return false;\n }\n\n state.kind = 'scalar';\n state.result = '';\n state.position++;\n captureStart = captureEnd = state.position;\n\n while ((ch = state.input.charCodeAt(state.position)) !== 0) {\n if (ch === 0x27/* ' */) {\n captureSegment(state, captureStart, state.position, true);\n ch = state.input.charCodeAt(++state.position);\n\n if (ch === 0x27/* ' */) {\n captureStart = state.position;\n state.position++;\n captureEnd = state.position;\n } else {\n return true;\n }\n\n } else if (is_EOL(ch)) {\n captureSegment(state, captureStart, captureEnd, true);\n writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));\n captureStart = captureEnd = state.position;\n\n } else if (state.position === state.lineStart && testDocumentSeparator(state)) {\n throwError(state, 'unexpected end of the document within a single quoted scalar');\n\n } else {\n state.position++;\n captureEnd = state.position;\n }\n }\n\n throwError(state, 'unexpected end of the stream within a single quoted scalar');\n}\n\nfunction readDoubleQuotedScalar(state, nodeIndent) {\n var captureStart,\n captureEnd,\n hexLength,\n hexResult,\n tmp,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch !== 0x22/* \" */) {\n return false;\n }\n\n state.kind = 'scalar';\n state.result = '';\n state.position++;\n captureStart = captureEnd = state.position;\n\n while ((ch = state.input.charCodeAt(state.position)) !== 0) {\n if (ch === 0x22/* \" */) {\n captureSegment(state, captureStart, state.position, true);\n state.position++;\n return true;\n\n } else if (ch === 0x5C/* \\ */) {\n captureSegment(state, captureStart, state.position, true);\n ch = state.input.charCodeAt(++state.position);\n\n if (is_EOL(ch)) {\n skipSeparationSpace(state, false, nodeIndent);\n\n // TODO: rework to inline fn with no type cast?\n } else if (ch < 256 && simpleEscapeCheck[ch]) {\n state.result += simpleEscapeMap[ch];\n state.position++;\n\n } else if ((tmp = escapedHexLen(ch)) > 0) {\n hexLength = tmp;\n hexResult = 0;\n\n for (; hexLength > 0; hexLength--) {\n ch = state.input.charCodeAt(++state.position);\n\n if ((tmp = fromHexCode(ch)) >= 0) {\n hexResult = (hexResult << 4) + tmp;\n\n } else {\n throwError(state, 'expected hexadecimal character');\n }\n }\n\n state.result += charFromCodepoint(hexResult);\n\n state.position++;\n\n } else {\n throwError(state, 'unknown escape sequence');\n }\n\n captureStart = captureEnd = state.position;\n\n } else if (is_EOL(ch)) {\n captureSegment(state, captureStart, captureEnd, true);\n writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));\n captureStart = captureEnd = state.position;\n\n } else if (state.position === state.lineStart && testDocumentSeparator(state)) {\n throwError(state, 'unexpected end of the document within a double quoted scalar');\n\n } else {\n state.position++;\n captureEnd = state.position;\n }\n }\n\n throwError(state, 'unexpected end of the stream within a double quoted scalar');\n}\n\nfunction readFlowCollection(state, nodeIndent) {\n var readNext = true,\n _line,\n _tag = state.tag,\n _result,\n _anchor = state.anchor,\n following,\n terminator,\n isPair,\n isExplicitPair,\n isMapping,\n overridableKeys = {},\n keyNode,\n keyTag,\n valueNode,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch === 0x5B/* [ */) {\n terminator = 0x5D;/* ] */\n isMapping = false;\n _result = [];\n } else if (ch === 0x7B/* { */) {\n terminator = 0x7D;/* } */\n isMapping = true;\n _result = {};\n } else {\n return false;\n }\n\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = _result;\n }\n\n ch = state.input.charCodeAt(++state.position);\n\n while (ch !== 0) {\n skipSeparationSpace(state, true, nodeIndent);\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch === terminator) {\n state.position++;\n state.tag = _tag;\n state.anchor = _anchor;\n state.kind = isMapping ? 'mapping' : 'sequence';\n state.result = _result;\n return true;\n } else if (!readNext) {\n throwError(state, 'missed comma between flow collection entries');\n }\n\n keyTag = keyNode = valueNode = null;\n isPair = isExplicitPair = false;\n\n if (ch === 0x3F/* ? */) {\n following = state.input.charCodeAt(state.position + 1);\n\n if (is_WS_OR_EOL(following)) {\n isPair = isExplicitPair = true;\n state.position++;\n skipSeparationSpace(state, true, nodeIndent);\n }\n }\n\n _line = state.line;\n composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);\n keyTag = state.tag;\n keyNode = state.result;\n skipSeparationSpace(state, true, nodeIndent);\n\n ch = state.input.charCodeAt(state.position);\n\n if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) {\n isPair = true;\n ch = state.input.charCodeAt(++state.position);\n skipSeparationSpace(state, true, nodeIndent);\n composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);\n valueNode = state.result;\n }\n\n if (isMapping) {\n storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode);\n } else if (isPair) {\n _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode));\n } else {\n _result.push(keyNode);\n }\n\n skipSeparationSpace(state, true, nodeIndent);\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch === 0x2C/* , */) {\n readNext = true;\n ch = state.input.charCodeAt(++state.position);\n } else {\n readNext = false;\n }\n }\n\n throwError(state, 'unexpected end of the stream within a flow collection');\n}\n\nfunction readBlockScalar(state, nodeIndent) {\n var captureStart,\n folding,\n chomping = CHOMPING_CLIP,\n didReadContent = false,\n detectedIndent = false,\n textIndent = nodeIndent,\n emptyLines = 0,\n atMoreIndented = false,\n tmp,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch === 0x7C/* | */) {\n folding = false;\n } else if (ch === 0x3E/* > */) {\n folding = true;\n } else {\n return false;\n }\n\n state.kind = 'scalar';\n state.result = '';\n\n while (ch !== 0) {\n ch = state.input.charCodeAt(++state.position);\n\n if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {\n if (CHOMPING_CLIP === chomping) {\n chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP;\n } else {\n throwError(state, 'repeat of a chomping mode identifier');\n }\n\n } else if ((tmp = fromDecimalCode(ch)) >= 0) {\n if (tmp === 0) {\n throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');\n } else if (!detectedIndent) {\n textIndent = nodeIndent + tmp - 1;\n detectedIndent = true;\n } else {\n throwError(state, 'repeat of an indentation width identifier');\n }\n\n } else {\n break;\n }\n }\n\n if (is_WHITE_SPACE(ch)) {\n do { ch = state.input.charCodeAt(++state.position); }\n while (is_WHITE_SPACE(ch));\n\n if (ch === 0x23/* # */) {\n do { ch = state.input.charCodeAt(++state.position); }\n while (!is_EOL(ch) && (ch !== 0));\n }\n }\n\n while (ch !== 0) {\n readLineBreak(state);\n state.lineIndent = 0;\n\n ch = state.input.charCodeAt(state.position);\n\n while ((!detectedIndent || state.lineIndent < textIndent) &&\n (ch === 0x20/* Space */)) {\n state.lineIndent++;\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (!detectedIndent && state.lineIndent > textIndent) {\n textIndent = state.lineIndent;\n }\n\n if (is_EOL(ch)) {\n emptyLines++;\n continue;\n }\n\n // End of the scalar.\n if (state.lineIndent < textIndent) {\n\n // Perform the chomping.\n if (chomping === CHOMPING_KEEP) {\n state.result += common.repeat('\\n', didReadContent ? 1 + emptyLines : emptyLines);\n } else if (chomping === CHOMPING_CLIP) {\n if (didReadContent) { // i.e. only if the scalar is not empty.\n state.result += '\\n';\n }\n }\n\n // Break this `while` cycle and go to the funciton's epilogue.\n break;\n }\n\n // Folded style: use fancy rules to handle line breaks.\n if (folding) {\n\n // Lines starting with white space characters (more-indented lines) are not folded.\n if (is_WHITE_SPACE(ch)) {\n atMoreIndented = true;\n // except for the first content line (cf. Example 8.1)\n state.result += common.repeat('\\n', didReadContent ? 1 + emptyLines : emptyLines);\n\n // End of more-indented block.\n } else if (atMoreIndented) {\n atMoreIndented = false;\n state.result += common.repeat('\\n', emptyLines + 1);\n\n // Just one line break - perceive as the same line.\n } else if (emptyLines === 0) {\n if (didReadContent) { // i.e. only if we have already read some scalar content.\n state.result += ' ';\n }\n\n // Several line breaks - perceive as different lines.\n } else {\n state.result += common.repeat('\\n', emptyLines);\n }\n\n // Literal style: just add exact number of line breaks between content lines.\n } else {\n // Keep all line breaks except the header line break.\n state.result += common.repeat('\\n', didReadContent ? 1 + emptyLines : emptyLines);\n }\n\n didReadContent = true;\n detectedIndent = true;\n emptyLines = 0;\n captureStart = state.position;\n\n while (!is_EOL(ch) && (ch !== 0)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n captureSegment(state, captureStart, state.position, false);\n }\n\n return true;\n}\n\nfunction readBlockSequence(state, nodeIndent) {\n var _line,\n _tag = state.tag,\n _anchor = state.anchor,\n _result = [],\n following,\n detected = false,\n ch;\n\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = _result;\n }\n\n ch = state.input.charCodeAt(state.position);\n\n while (ch !== 0) {\n\n if (ch !== 0x2D/* - */) {\n break;\n }\n\n following = state.input.charCodeAt(state.position + 1);\n\n if (!is_WS_OR_EOL(following)) {\n break;\n }\n\n detected = true;\n state.position++;\n\n if (skipSeparationSpace(state, true, -1)) {\n if (state.lineIndent <= nodeIndent) {\n _result.push(null);\n ch = state.input.charCodeAt(state.position);\n continue;\n }\n }\n\n _line = state.line;\n composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);\n _result.push(state.result);\n skipSeparationSpace(state, true, -1);\n\n ch = state.input.charCodeAt(state.position);\n\n if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) {\n throwError(state, 'bad indentation of a sequence entry');\n } else if (state.lineIndent < nodeIndent) {\n break;\n }\n }\n\n if (detected) {\n state.tag = _tag;\n state.anchor = _anchor;\n state.kind = 'sequence';\n state.result = _result;\n return true;\n }\n return false;\n}\n\nfunction readBlockMapping(state, nodeIndent, flowIndent) {\n var following,\n allowCompact,\n _line,\n _pos,\n _tag = state.tag,\n _anchor = state.anchor,\n _result = {},\n overridableKeys = {},\n keyTag = null,\n keyNode = null,\n valueNode = null,\n atExplicitKey = false,\n detected = false,\n ch;\n\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = _result;\n }\n\n ch = state.input.charCodeAt(state.position);\n\n while (ch !== 0) {\n following = state.input.charCodeAt(state.position + 1);\n _line = state.line; // Save the current line.\n _pos = state.position;\n\n //\n // Explicit notation case. There are two separate blocks:\n // first for the key (denoted by \"?\") and second for the value (denoted by \":\")\n //\n if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) {\n\n if (ch === 0x3F/* ? */) {\n if (atExplicitKey) {\n storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);\n keyTag = keyNode = valueNode = null;\n }\n\n detected = true;\n atExplicitKey = true;\n allowCompact = true;\n\n } else if (atExplicitKey) {\n // i.e. 0x3A/* : */ === character after the explicit key.\n atExplicitKey = false;\n allowCompact = true;\n\n } else {\n throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line');\n }\n\n state.position += 1;\n ch = following;\n\n //\n // Implicit notation case. Flow-style node as the key first, then \":\", and the value.\n //\n } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {\n\n if (state.line === _line) {\n ch = state.input.charCodeAt(state.position);\n\n while (is_WHITE_SPACE(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (ch === 0x3A/* : */) {\n ch = state.input.charCodeAt(++state.position);\n\n if (!is_WS_OR_EOL(ch)) {\n throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');\n }\n\n if (atExplicitKey) {\n storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);\n keyTag = keyNode = valueNode = null;\n }\n\n detected = true;\n atExplicitKey = false;\n allowCompact = false;\n keyTag = state.tag;\n keyNode = state.result;\n\n } else if (detected) {\n throwError(state, 'can not read an implicit mapping pair; a colon is missed');\n\n } else {\n state.tag = _tag;\n state.anchor = _anchor;\n return true; // Keep the result of `composeNode`.\n }\n\n } else if (detected) {\n throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');\n\n } else {\n state.tag = _tag;\n state.anchor = _anchor;\n return true; // Keep the result of `composeNode`.\n }\n\n } else {\n break; // Reading is done. Go to the epilogue.\n }\n\n //\n // Common reading code for both explicit and implicit notations.\n //\n if (state.line === _line || state.lineIndent > nodeIndent) {\n if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {\n if (atExplicitKey) {\n keyNode = state.result;\n } else {\n valueNode = state.result;\n }\n }\n\n if (!atExplicitKey) {\n storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos);\n keyTag = keyNode = valueNode = null;\n }\n\n skipSeparationSpace(state, true, -1);\n ch = state.input.charCodeAt(state.position);\n }\n\n if (state.lineIndent > nodeIndent && (ch !== 0)) {\n throwError(state, 'bad indentation of a mapping entry');\n } else if (state.lineIndent < nodeIndent) {\n break;\n }\n }\n\n //\n // Epilogue.\n //\n\n // Special case: last mapping's node contains only the key in explicit notation.\n if (atExplicitKey) {\n storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);\n }\n\n // Expose the resulting mapping.\n if (detected) {\n state.tag = _tag;\n state.anchor = _anchor;\n state.kind = 'mapping';\n state.result = _result;\n }\n\n return detected;\n}\n\nfunction readTagProperty(state) {\n var _position,\n isVerbatim = false,\n isNamed = false,\n tagHandle,\n tagName,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch !== 0x21/* ! */) return false;\n\n if (state.tag !== null) {\n throwError(state, 'duplication of a tag property');\n }\n\n ch = state.input.charCodeAt(++state.position);\n\n if (ch === 0x3C/* < */) {\n isVerbatim = true;\n ch = state.input.charCodeAt(++state.position);\n\n } else if (ch === 0x21/* ! */) {\n isNamed = true;\n tagHandle = '!!';\n ch = state.input.charCodeAt(++state.position);\n\n } else {\n tagHandle = '!';\n }\n\n _position = state.position;\n\n if (isVerbatim) {\n do { ch = state.input.charCodeAt(++state.position); }\n while (ch !== 0 && ch !== 0x3E/* > */);\n\n if (state.position < state.length) {\n tagName = state.input.slice(_position, state.position);\n ch = state.input.charCodeAt(++state.position);\n } else {\n throwError(state, 'unexpected end of the stream within a verbatim tag');\n }\n } else {\n while (ch !== 0 && !is_WS_OR_EOL(ch)) {\n\n if (ch === 0x21/* ! */) {\n if (!isNamed) {\n tagHandle = state.input.slice(_position - 1, state.position + 1);\n\n if (!PATTERN_TAG_HANDLE.test(tagHandle)) {\n throwError(state, 'named tag handle cannot contain such characters');\n }\n\n isNamed = true;\n _position = state.position + 1;\n } else {\n throwError(state, 'tag suffix cannot contain exclamation marks');\n }\n }\n\n ch = state.input.charCodeAt(++state.position);\n }\n\n tagName = state.input.slice(_position, state.position);\n\n if (PATTERN_FLOW_INDICATORS.test(tagName)) {\n throwError(state, 'tag suffix cannot contain flow indicator characters');\n }\n }\n\n if (tagName && !PATTERN_TAG_URI.test(tagName)) {\n throwError(state, 'tag name cannot contain such characters: ' + tagName);\n }\n\n if (isVerbatim) {\n state.tag = tagName;\n\n } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {\n state.tag = state.tagMap[tagHandle] + tagName;\n\n } else if (tagHandle === '!') {\n state.tag = '!' + tagName;\n\n } else if (tagHandle === '!!') {\n state.tag = 'tag:yaml.org,2002:' + tagName;\n\n } else {\n throwError(state, 'undeclared tag handle \"' + tagHandle + '\"');\n }\n\n return true;\n}\n\nfunction readAnchorProperty(state) {\n var _position,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch !== 0x26/* & */) return false;\n\n if (state.anchor !== null) {\n throwError(state, 'duplication of an anchor property');\n }\n\n ch = state.input.charCodeAt(++state.position);\n _position = state.position;\n\n while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (state.position === _position) {\n throwError(state, 'name of an anchor node must contain at least one character');\n }\n\n state.anchor = state.input.slice(_position, state.position);\n return true;\n}\n\nfunction readAlias(state) {\n var _position, alias,\n ch;\n\n ch = state.input.charCodeAt(state.position);\n\n if (ch !== 0x2A/* * */) return false;\n\n ch = state.input.charCodeAt(++state.position);\n _position = state.position;\n\n while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (state.position === _position) {\n throwError(state, 'name of an alias node must contain at least one character');\n }\n\n alias = state.input.slice(_position, state.position);\n\n if (!state.anchorMap.hasOwnProperty(alias)) {\n throwError(state, 'unidentified alias \"' + alias + '\"');\n }\n\n state.result = state.anchorMap[alias];\n skipSeparationSpace(state, true, -1);\n return true;\n}\n\nfunction composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {\n var allowBlockStyles,\n allowBlockScalars,\n allowBlockCollections,\n indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this parentIndent) {\n indentStatus = 1;\n } else if (state.lineIndent === parentIndent) {\n indentStatus = 0;\n } else if (state.lineIndent < parentIndent) {\n indentStatus = -1;\n }\n }\n }\n\n if (indentStatus === 1) {\n while (readTagProperty(state) || readAnchorProperty(state)) {\n if (skipSeparationSpace(state, true, -1)) {\n atNewLine = true;\n allowBlockCollections = allowBlockStyles;\n\n if (state.lineIndent > parentIndent) {\n indentStatus = 1;\n } else if (state.lineIndent === parentIndent) {\n indentStatus = 0;\n } else if (state.lineIndent < parentIndent) {\n indentStatus = -1;\n }\n } else {\n allowBlockCollections = false;\n }\n }\n }\n\n if (allowBlockCollections) {\n allowBlockCollections = atNewLine || allowCompact;\n }\n\n if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) {\n if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {\n flowIndent = parentIndent;\n } else {\n flowIndent = parentIndent + 1;\n }\n\n blockIndent = state.position - state.lineStart;\n\n if (indentStatus === 1) {\n if (allowBlockCollections &&\n (readBlockSequence(state, blockIndent) ||\n readBlockMapping(state, blockIndent, flowIndent)) ||\n readFlowCollection(state, flowIndent)) {\n hasContent = true;\n } else {\n if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||\n readSingleQuotedScalar(state, flowIndent) ||\n readDoubleQuotedScalar(state, flowIndent)) {\n hasContent = true;\n\n } else if (readAlias(state)) {\n hasContent = true;\n\n if (state.tag !== null || state.anchor !== null) {\n throwError(state, 'alias node should not have any properties');\n }\n\n } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {\n hasContent = true;\n\n if (state.tag === null) {\n state.tag = '?';\n }\n }\n\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = state.result;\n }\n }\n } else if (indentStatus === 0) {\n // Special case: block sequences are allowed to have same indentation level as the parent.\n // http://www.yaml.org/spec/1.2/spec.html#id2799784\n hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);\n }\n }\n\n if (state.tag !== null && state.tag !== '!') {\n if (state.tag === '?') {\n for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {\n type = state.implicitTypes[typeIndex];\n\n // Implicit resolving is not allowed for non-scalar types, and '?'\n // non-specific tag is only assigned to plain scalars. So, it isn't\n // needed to check for 'kind' conformity.\n\n if (type.resolve(state.result)) { // `state.result` updated in resolver if matched\n state.result = type.construct(state.result);\n state.tag = type.tag;\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = state.result;\n }\n break;\n }\n }\n } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) {\n type = state.typeMap[state.kind || 'fallback'][state.tag];\n\n if (state.result !== null && type.kind !== state.kind) {\n throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be \"' + type.kind + '\", not \"' + state.kind + '\"');\n }\n\n if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched\n throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');\n } else {\n state.result = type.construct(state.result);\n if (state.anchor !== null) {\n state.anchorMap[state.anchor] = state.result;\n }\n }\n } else {\n throwError(state, 'unknown tag !<' + state.tag + '>');\n }\n }\n\n if (state.listener !== null) {\n state.listener('close', state);\n }\n return state.tag !== null || state.anchor !== null || hasContent;\n}\n\nfunction readDocument(state) {\n var documentStart = state.position,\n _position,\n directiveName,\n directiveArgs,\n hasDirectives = false,\n ch;\n\n state.version = null;\n state.checkLineBreaks = state.legacy;\n state.tagMap = {};\n state.anchorMap = {};\n\n while ((ch = state.input.charCodeAt(state.position)) !== 0) {\n skipSeparationSpace(state, true, -1);\n\n ch = state.input.charCodeAt(state.position);\n\n if (state.lineIndent > 0 || ch !== 0x25/* % */) {\n break;\n }\n\n hasDirectives = true;\n ch = state.input.charCodeAt(++state.position);\n _position = state.position;\n\n while (ch !== 0 && !is_WS_OR_EOL(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n directiveName = state.input.slice(_position, state.position);\n directiveArgs = [];\n\n if (directiveName.length < 1) {\n throwError(state, 'directive name must not be less than one character in length');\n }\n\n while (ch !== 0) {\n while (is_WHITE_SPACE(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n if (ch === 0x23/* # */) {\n do { ch = state.input.charCodeAt(++state.position); }\n while (ch !== 0 && !is_EOL(ch));\n break;\n }\n\n if (is_EOL(ch)) break;\n\n _position = state.position;\n\n while (ch !== 0 && !is_WS_OR_EOL(ch)) {\n ch = state.input.charCodeAt(++state.position);\n }\n\n directiveArgs.push(state.input.slice(_position, state.position));\n }\n\n if (ch !== 0) readLineBreak(state);\n\n if (_hasOwnProperty.call(directiveHandlers, directiveName)) {\n directiveHandlers[directiveName](state, directiveName, directiveArgs);\n } else {\n throwWarning(state, 'unknown document directive \"' + directiveName + '\"');\n }\n }\n\n skipSeparationSpace(state, true, -1);\n\n if (state.lineIndent === 0 &&\n state.input.charCodeAt(state.position) === 0x2D/* - */ &&\n state.input.charCodeAt(state.position + 1) === 0x2D/* - */ &&\n state.input.charCodeAt(state.position + 2) === 0x2D/* - */) {\n state.position += 3;\n skipSeparationSpace(state, true, -1);\n\n } else if (hasDirectives) {\n throwError(state, 'directives end mark is expected');\n }\n\n composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);\n skipSeparationSpace(state, true, -1);\n\n if (state.checkLineBreaks &&\n PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {\n throwWarning(state, 'non-ASCII line breaks are interpreted as content');\n }\n\n state.documents.push(state.result);\n\n if (state.position === state.lineStart && testDocumentSeparator(state)) {\n\n if (state.input.charCodeAt(state.position) === 0x2E/* . */) {\n state.position += 3;\n skipSeparationSpace(state, true, -1);\n }\n return;\n }\n\n if (state.position < (state.length - 1)) {\n throwError(state, 'end of the stream or a document separator is expected');\n } else {\n return;\n }\n}\n\n\nfunction loadDocuments(input, options) {\n input = String(input);\n options = options || {};\n\n if (input.length !== 0) {\n\n // Add tailing `\\n` if not exists\n if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ &&\n input.charCodeAt(input.length - 1) !== 0x0D/* CR */) {\n input += '\\n';\n }\n\n // Strip BOM\n if (input.charCodeAt(0) === 0xFEFF) {\n input = input.slice(1);\n }\n }\n\n var state = new State(input, options);\n\n // Use 0 as string terminator. That significantly simplifies bounds check.\n state.input += '\\0';\n\n while (state.input.charCodeAt(state.position) === 0x20/* Space */) {\n state.lineIndent += 1;\n state.position += 1;\n }\n\n while (state.position < (state.length - 1)) {\n readDocument(state);\n }\n\n return state.documents;\n}\n\n\nfunction loadAll(input, iterator, options) {\n var documents = loadDocuments(input, options), index, length;\n\n if (typeof iterator !== 'function') {\n return documents;\n }\n\n for (index = 0, length = documents.length; index < length; index += 1) {\n iterator(documents[index]);\n }\n}\n\n\nfunction load(input, options) {\n var documents = loadDocuments(input, options);\n\n if (documents.length === 0) {\n /*eslint-disable no-undefined*/\n return undefined;\n } else if (documents.length === 1) {\n return documents[0];\n }\n throw new YAMLException('expected a single document in the stream, but found more');\n}\n\n\nfunction safeLoadAll(input, output, options) {\n if (typeof output === 'function') {\n loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));\n } else {\n return loadAll(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));\n }\n}\n\n\nfunction safeLoad(input, options) {\n return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));\n}\n\n\nmodule.exports.loadAll = loadAll;\nmodule.exports.load = load;\nmodule.exports.safeLoadAll = safeLoadAll;\nmodule.exports.safeLoad = safeLoad;\n", - "'use strict';\n\n\nvar common = require('./common');\n\n\nfunction Mark(name, buffer, position, line, column) {\n this.name = name;\n this.buffer = buffer;\n this.position = position;\n this.line = line;\n this.column = column;\n}\n\n\nMark.prototype.getSnippet = function getSnippet(indent, maxLength) {\n var head, start, tail, end, snippet;\n\n if (!this.buffer) return null;\n\n indent = indent || 4;\n maxLength = maxLength || 75;\n\n head = '';\n start = this.position;\n\n while (start > 0 && '\\x00\\r\\n\\x85\\u2028\\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) {\n start -= 1;\n if (this.position - start > (maxLength / 2 - 1)) {\n head = ' ... ';\n start += 5;\n break;\n }\n }\n\n tail = '';\n end = this.position;\n\n while (end < this.buffer.length && '\\x00\\r\\n\\x85\\u2028\\u2029'.indexOf(this.buffer.charAt(end)) === -1) {\n end += 1;\n if (end - this.position > (maxLength / 2 - 1)) {\n tail = ' ... ';\n end -= 5;\n break;\n }\n }\n\n snippet = this.buffer.slice(start, end);\n\n return common.repeat(' ', indent) + head + snippet + tail + '\\n' +\n common.repeat(' ', indent + this.position - start + head.length) + '^';\n};\n\n\nMark.prototype.toString = function toString(compact) {\n var snippet, where = '';\n\n if (this.name) {\n where += 'in \"' + this.name + '\" ';\n }\n\n where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);\n\n if (!compact) {\n snippet = this.getSnippet();\n\n if (snippet) {\n where += ':\\n' + snippet;\n }\n }\n\n return where;\n};\n\n\nmodule.exports = Mark;\n", - "'use strict';\n\n/*eslint-disable max-len*/\n\nvar common = require('./common');\nvar YAMLException = require('./exception');\nvar Type = require('./type');\n\n\nfunction compileList(schema, name, result) {\n var exclude = [];\n\n schema.include.forEach(function (includedSchema) {\n result = compileList(includedSchema, name, result);\n });\n\n schema[name].forEach(function (currentType) {\n result.forEach(function (previousType, previousIndex) {\n if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) {\n exclude.push(previousIndex);\n }\n });\n\n result.push(currentType);\n });\n\n return result.filter(function (type, index) {\n return exclude.indexOf(index) === -1;\n });\n}\n\n\nfunction compileMap(/* lists... */) {\n var result = {\n scalar: {},\n sequence: {},\n mapping: {},\n fallback: {}\n }, index, length;\n\n function collectType(type) {\n result[type.kind][type.tag] = result['fallback'][type.tag] = type;\n }\n\n for (index = 0, length = arguments.length; index < length; index += 1) {\n arguments[index].forEach(collectType);\n }\n return result;\n}\n\n\nfunction Schema(definition) {\n this.include = definition.include || [];\n this.implicit = definition.implicit || [];\n this.explicit = definition.explicit || [];\n\n this.implicit.forEach(function (type) {\n if (type.loadKind && type.loadKind !== 'scalar') {\n throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');\n }\n });\n\n this.compiledImplicit = compileList(this, 'implicit', []);\n this.compiledExplicit = compileList(this, 'explicit', []);\n this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit);\n}\n\n\nSchema.DEFAULT = null;\n\n\nSchema.create = function createSchema() {\n var schemas, types;\n\n switch (arguments.length) {\n case 1:\n schemas = Schema.DEFAULT;\n types = arguments[0];\n break;\n\n case 2:\n schemas = arguments[0];\n types = arguments[1];\n break;\n\n default:\n throw new YAMLException('Wrong number of arguments for Schema.create function');\n }\n\n schemas = common.toArray(schemas);\n types = common.toArray(types);\n\n if (!schemas.every(function (schema) { return schema instanceof Schema; })) {\n throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');\n }\n\n if (!types.every(function (type) { return type instanceof Type; })) {\n throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');\n }\n\n return new Schema({\n include: schemas,\n explicit: types\n });\n};\n\n\nmodule.exports = Schema;\n", - "// Standard YAML's Core schema.\n// http://www.yaml.org/spec/1.2/spec.html#id2804923\n//\n// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.\n// So, Core schema has no distinctions from JSON schema is JS-YAML.\n\n\n'use strict';\n\n\nvar Schema = require('../schema');\n\n\nmodule.exports = new Schema({\n include: [\n require('./json')\n ]\n});\n", - "// JS-YAML's default schema for `load` function.\n// It is not described in the YAML specification.\n//\n// This schema is based on JS-YAML's default safe schema and includes\n// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function.\n//\n// Also this schema is used as default base schema at `Schema.create` function.\n\n\n'use strict';\n\n\nvar Schema = require('../schema');\n\n\nmodule.exports = Schema.DEFAULT = new Schema({\n include: [\n require('./default_safe')\n ],\n explicit: [\n require('../type/js/undefined'),\n require('../type/js/regexp'),\n require('../type/js/function')\n ]\n});\n", - "// JS-YAML's default schema for `safeLoad` function.\n// It is not described in the YAML specification.\n//\n// This schema is based on standard YAML's Core schema and includes most of\n// extra types described at YAML tag repository. (http://yaml.org/type/)\n\n\n'use strict';\n\n\nvar Schema = require('../schema');\n\n\nmodule.exports = new Schema({\n include: [\n require('./core')\n ],\n implicit: [\n require('../type/timestamp'),\n require('../type/merge')\n ],\n explicit: [\n require('../type/binary'),\n require('../type/omap'),\n require('../type/pairs'),\n require('../type/set')\n ]\n});\n", - "// Standard YAML's Failsafe schema.\n// http://www.yaml.org/spec/1.2/spec.html#id2802346\n\n\n'use strict';\n\n\nvar Schema = require('../schema');\n\n\nmodule.exports = new Schema({\n explicit: [\n require('../type/str'),\n require('../type/seq'),\n require('../type/map')\n ]\n});\n", - "// Standard YAML's JSON schema.\n// http://www.yaml.org/spec/1.2/spec.html#id2803231\n//\n// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.\n// So, this schema is not such strict as defined in the YAML specification.\n// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc.\n\n\n'use strict';\n\n\nvar Schema = require('../schema');\n\n\nmodule.exports = new Schema({\n include: [\n require('./failsafe')\n ],\n implicit: [\n require('../type/null'),\n require('../type/bool'),\n require('../type/int'),\n require('../type/float')\n ]\n});\n", - "'use strict';\n\nvar YAMLException = require('./exception');\n\nvar TYPE_CONSTRUCTOR_OPTIONS = [\n 'kind',\n 'resolve',\n 'construct',\n 'instanceOf',\n 'predicate',\n 'represent',\n 'defaultStyle',\n 'styleAliases'\n];\n\nvar YAML_NODE_KINDS = [\n 'scalar',\n 'sequence',\n 'mapping'\n];\n\nfunction compileStyleAliases(map) {\n var result = {};\n\n if (map !== null) {\n Object.keys(map).forEach(function (style) {\n map[style].forEach(function (alias) {\n result[String(alias)] = style;\n });\n });\n }\n\n return result;\n}\n\nfunction Type(tag, options) {\n options = options || {};\n\n Object.keys(options).forEach(function (name) {\n if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) {\n throw new YAMLException('Unknown option \"' + name + '\" is met in definition of \"' + tag + '\" YAML type.');\n }\n });\n\n // TODO: Add tag format check.\n this.tag = tag;\n this.kind = options['kind'] || null;\n this.resolve = options['resolve'] || function () { return true; };\n this.construct = options['construct'] || function (data) { return data; };\n this.instanceOf = options['instanceOf'] || null;\n this.predicate = options['predicate'] || null;\n this.represent = options['represent'] || null;\n this.defaultStyle = options['defaultStyle'] || null;\n this.styleAliases = compileStyleAliases(options['styleAliases'] || null);\n\n if (YAML_NODE_KINDS.indexOf(this.kind) === -1) {\n throw new YAMLException('Unknown kind \"' + this.kind + '\" is specified for \"' + tag + '\" YAML type.');\n }\n}\n\nmodule.exports = Type;\n", - "'use strict';\n\n/*eslint-disable no-bitwise*/\n\nvar NodeBuffer;\n\ntry {\n // A trick for browserified version, to not include `Buffer` shim\n var _require = require;\n NodeBuffer = _require('buffer').Buffer;\n} catch (__) {}\n\nvar Type = require('../type');\n\n\n// [ 64, 65, 66 ] -> [ padding, CR, LF ]\nvar BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\\n\\r';\n\n\nfunction resolveYamlBinary(data) {\n if (data === null) return false;\n\n var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP;\n\n // Convert one by one.\n for (idx = 0; idx < max; idx++) {\n code = map.indexOf(data.charAt(idx));\n\n // Skip CR/LF\n if (code > 64) continue;\n\n // Fail on illegal characters\n if (code < 0) return false;\n\n bitlen += 6;\n }\n\n // If there are any bits left, source was corrupted\n return (bitlen % 8) === 0;\n}\n\nfunction constructYamlBinary(data) {\n var idx, tailbits,\n input = data.replace(/[\\r\\n=]/g, ''), // remove CR/LF & padding to simplify scan\n max = input.length,\n map = BASE64_MAP,\n bits = 0,\n result = [];\n\n // Collect by 6*4 bits (3 bytes)\n\n for (idx = 0; idx < max; idx++) {\n if ((idx % 4 === 0) && idx) {\n result.push((bits >> 16) & 0xFF);\n result.push((bits >> 8) & 0xFF);\n result.push(bits & 0xFF);\n }\n\n bits = (bits << 6) | map.indexOf(input.charAt(idx));\n }\n\n // Dump tail\n\n tailbits = (max % 4) * 6;\n\n if (tailbits === 0) {\n result.push((bits >> 16) & 0xFF);\n result.push((bits >> 8) & 0xFF);\n result.push(bits & 0xFF);\n } else if (tailbits === 18) {\n result.push((bits >> 10) & 0xFF);\n result.push((bits >> 2) & 0xFF);\n } else if (tailbits === 12) {\n result.push((bits >> 4) & 0xFF);\n }\n\n // Wrap into Buffer for NodeJS and leave Array for browser\n if (NodeBuffer) {\n // Support node 6.+ Buffer API when available\n return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result);\n }\n\n return result;\n}\n\nfunction representYamlBinary(object /*, style*/) {\n var result = '', bits = 0, idx, tail,\n max = object.length,\n map = BASE64_MAP;\n\n // Convert every three bytes to 4 ASCII characters.\n\n for (idx = 0; idx < max; idx++) {\n if ((idx % 3 === 0) && idx) {\n result += map[(bits >> 18) & 0x3F];\n result += map[(bits >> 12) & 0x3F];\n result += map[(bits >> 6) & 0x3F];\n result += map[bits & 0x3F];\n }\n\n bits = (bits << 8) + object[idx];\n }\n\n // Dump tail\n\n tail = max % 3;\n\n if (tail === 0) {\n result += map[(bits >> 18) & 0x3F];\n result += map[(bits >> 12) & 0x3F];\n result += map[(bits >> 6) & 0x3F];\n result += map[bits & 0x3F];\n } else if (tail === 2) {\n result += map[(bits >> 10) & 0x3F];\n result += map[(bits >> 4) & 0x3F];\n result += map[(bits << 2) & 0x3F];\n result += map[64];\n } else if (tail === 1) {\n result += map[(bits >> 2) & 0x3F];\n result += map[(bits << 4) & 0x3F];\n result += map[64];\n result += map[64];\n }\n\n return result;\n}\n\nfunction isBinary(object) {\n return NodeBuffer && NodeBuffer.isBuffer(object);\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:binary', {\n kind: 'scalar',\n resolve: resolveYamlBinary,\n construct: constructYamlBinary,\n predicate: isBinary,\n represent: representYamlBinary\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nfunction resolveYamlBoolean(data) {\n if (data === null) return false;\n\n var max = data.length;\n\n return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||\n (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));\n}\n\nfunction constructYamlBoolean(data) {\n return data === 'true' ||\n data === 'True' ||\n data === 'TRUE';\n}\n\nfunction isBoolean(object) {\n return Object.prototype.toString.call(object) === '[object Boolean]';\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:bool', {\n kind: 'scalar',\n resolve: resolveYamlBoolean,\n construct: constructYamlBoolean,\n predicate: isBoolean,\n represent: {\n lowercase: function (object) { return object ? 'true' : 'false'; },\n uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },\n camelcase: function (object) { return object ? 'True' : 'False'; }\n },\n defaultStyle: 'lowercase'\n});\n", - "'use strict';\n\nvar common = require('../common');\nvar Type = require('../type');\n\nvar YAML_FLOAT_PATTERN = new RegExp(\n // 2.5e4, 2.5 and integers\n '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' +\n // .2e4, .2\n // special case, seems not from spec\n '|\\\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' +\n // 20:59\n '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*' +\n // .inf\n '|[-+]?\\\\.(?:inf|Inf|INF)' +\n // .nan\n '|\\\\.(?:nan|NaN|NAN))$');\n\nfunction resolveYamlFloat(data) {\n if (data === null) return false;\n\n if (!YAML_FLOAT_PATTERN.test(data) ||\n // Quick hack to not allow integers end with `_`\n // Probably should update regexp & check speed\n data[data.length - 1] === '_') {\n return false;\n }\n\n return true;\n}\n\nfunction constructYamlFloat(data) {\n var value, sign, base, digits;\n\n value = data.replace(/_/g, '').toLowerCase();\n sign = value[0] === '-' ? -1 : 1;\n digits = [];\n\n if ('+-'.indexOf(value[0]) >= 0) {\n value = value.slice(1);\n }\n\n if (value === '.inf') {\n return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;\n\n } else if (value === '.nan') {\n return NaN;\n\n } else if (value.indexOf(':') >= 0) {\n value.split(':').forEach(function (v) {\n digits.unshift(parseFloat(v, 10));\n });\n\n value = 0.0;\n base = 1;\n\n digits.forEach(function (d) {\n value += d * base;\n base *= 60;\n });\n\n return sign * value;\n\n }\n return sign * parseFloat(value, 10);\n}\n\n\nvar SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/;\n\nfunction representYamlFloat(object, style) {\n var res;\n\n if (isNaN(object)) {\n switch (style) {\n case 'lowercase': return '.nan';\n case 'uppercase': return '.NAN';\n case 'camelcase': return '.NaN';\n }\n } else if (Number.POSITIVE_INFINITY === object) {\n switch (style) {\n case 'lowercase': return '.inf';\n case 'uppercase': return '.INF';\n case 'camelcase': return '.Inf';\n }\n } else if (Number.NEGATIVE_INFINITY === object) {\n switch (style) {\n case 'lowercase': return '-.inf';\n case 'uppercase': return '-.INF';\n case 'camelcase': return '-.Inf';\n }\n } else if (common.isNegativeZero(object)) {\n return '-0.0';\n }\n\n res = object.toString(10);\n\n // JS stringifier can build scientific format without dots: 5e-100,\n // while YAML requres dot: 5.e-100. Fix it with simple hack\n\n return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res;\n}\n\nfunction isFloat(object) {\n return (Object.prototype.toString.call(object) === '[object Number]') &&\n (object % 1 !== 0 || common.isNegativeZero(object));\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:float', {\n kind: 'scalar',\n resolve: resolveYamlFloat,\n construct: constructYamlFloat,\n predicate: isFloat,\n represent: representYamlFloat,\n defaultStyle: 'lowercase'\n});\n", - "'use strict';\n\nvar common = require('../common');\nvar Type = require('../type');\n\nfunction isHexCode(c) {\n return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||\n ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||\n ((0x61/* a */ <= c) && (c <= 0x66/* f */));\n}\n\nfunction isOctCode(c) {\n return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));\n}\n\nfunction isDecCode(c) {\n return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));\n}\n\nfunction resolveYamlInteger(data) {\n if (data === null) return false;\n\n var max = data.length,\n index = 0,\n hasDigits = false,\n ch;\n\n if (!max) return false;\n\n ch = data[index];\n\n // sign\n if (ch === '-' || ch === '+') {\n ch = data[++index];\n }\n\n if (ch === '0') {\n // 0\n if (index + 1 === max) return true;\n ch = data[++index];\n\n // base 2, base 8, base 16\n\n if (ch === 'b') {\n // base 2\n index++;\n\n for (; index < max; index++) {\n ch = data[index];\n if (ch === '_') continue;\n if (ch !== '0' && ch !== '1') return false;\n hasDigits = true;\n }\n return hasDigits && ch !== '_';\n }\n\n\n if (ch === 'x') {\n // base 16\n index++;\n\n for (; index < max; index++) {\n ch = data[index];\n if (ch === '_') continue;\n if (!isHexCode(data.charCodeAt(index))) return false;\n hasDigits = true;\n }\n return hasDigits && ch !== '_';\n }\n\n // base 8\n for (; index < max; index++) {\n ch = data[index];\n if (ch === '_') continue;\n if (!isOctCode(data.charCodeAt(index))) return false;\n hasDigits = true;\n }\n return hasDigits && ch !== '_';\n }\n\n // base 10 (except 0) or base 60\n\n // value should not start with `_`;\n if (ch === '_') return false;\n\n for (; index < max; index++) {\n ch = data[index];\n if (ch === '_') continue;\n if (ch === ':') break;\n if (!isDecCode(data.charCodeAt(index))) {\n return false;\n }\n hasDigits = true;\n }\n\n // Should have digits and should not end with `_`\n if (!hasDigits || ch === '_') return false;\n\n // if !base60 - done;\n if (ch !== ':') return true;\n\n // base60 almost not used, no needs to optimize\n return /^(:[0-5]?[0-9])+$/.test(data.slice(index));\n}\n\nfunction constructYamlInteger(data) {\n var value = data, sign = 1, ch, base, digits = [];\n\n if (value.indexOf('_') !== -1) {\n value = value.replace(/_/g, '');\n }\n\n ch = value[0];\n\n if (ch === '-' || ch === '+') {\n if (ch === '-') sign = -1;\n value = value.slice(1);\n ch = value[0];\n }\n\n if (value === '0') return 0;\n\n if (ch === '0') {\n if (value[1] === 'b') return sign * parseInt(value.slice(2), 2);\n if (value[1] === 'x') return sign * parseInt(value, 16);\n return sign * parseInt(value, 8);\n }\n\n if (value.indexOf(':') !== -1) {\n value.split(':').forEach(function (v) {\n digits.unshift(parseInt(v, 10));\n });\n\n value = 0;\n base = 1;\n\n digits.forEach(function (d) {\n value += (d * base);\n base *= 60;\n });\n\n return sign * value;\n\n }\n\n return sign * parseInt(value, 10);\n}\n\nfunction isInteger(object) {\n return (Object.prototype.toString.call(object)) === '[object Number]' &&\n (object % 1 === 0 && !common.isNegativeZero(object));\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:int', {\n kind: 'scalar',\n resolve: resolveYamlInteger,\n construct: constructYamlInteger,\n predicate: isInteger,\n represent: {\n binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); },\n octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); },\n decimal: function (obj) { return obj.toString(10); },\n /* eslint-disable max-len */\n hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); }\n },\n defaultStyle: 'decimal',\n styleAliases: {\n binary: [ 2, 'bin' ],\n octal: [ 8, 'oct' ],\n decimal: [ 10, 'dec' ],\n hexadecimal: [ 16, 'hex' ]\n }\n});\n", - "'use strict';\n\nvar esprima;\n\n// Browserified version does not have esprima\n//\n// 1. For node.js just require module as deps\n// 2. For browser try to require mudule via external AMD system.\n// If not found - try to fallback to window.esprima. If not\n// found too - then fail to parse.\n//\ntry {\n // workaround to exclude package from browserify list.\n var _require = require;\n esprima = _require('esprima');\n} catch (_) {\n /*global window */\n if (typeof window !== 'undefined') esprima = window.esprima;\n}\n\nvar Type = require('../../type');\n\nfunction resolveJavascriptFunction(data) {\n if (data === null) return false;\n\n try {\n var source = '(' + data + ')',\n ast = esprima.parse(source, { range: true });\n\n if (ast.type !== 'Program' ||\n ast.body.length !== 1 ||\n ast.body[0].type !== 'ExpressionStatement' ||\n (ast.body[0].expression.type !== 'ArrowFunctionExpression' &&\n ast.body[0].expression.type !== 'FunctionExpression')) {\n return false;\n }\n\n return true;\n } catch (err) {\n return false;\n }\n}\n\nfunction constructJavascriptFunction(data) {\n /*jslint evil:true*/\n\n var source = '(' + data + ')',\n ast = esprima.parse(source, { range: true }),\n params = [],\n body;\n\n if (ast.type !== 'Program' ||\n ast.body.length !== 1 ||\n ast.body[0].type !== 'ExpressionStatement' ||\n (ast.body[0].expression.type !== 'ArrowFunctionExpression' &&\n ast.body[0].expression.type !== 'FunctionExpression')) {\n throw new Error('Failed to resolve function');\n }\n\n ast.body[0].expression.params.forEach(function (param) {\n params.push(param.name);\n });\n\n body = ast.body[0].expression.body.range;\n\n // Esprima's ranges include the first '{' and the last '}' characters on\n // function expressions. So cut them out.\n if (ast.body[0].expression.body.type === 'BlockStatement') {\n /*eslint-disable no-new-func*/\n return new Function(params, source.slice(body[0] + 1, body[1] - 1));\n }\n // ES6 arrow functions can omit the BlockStatement. In that case, just return\n // the body.\n /*eslint-disable no-new-func*/\n return new Function(params, 'return ' + source.slice(body[0], body[1]));\n}\n\nfunction representJavascriptFunction(object /*, style*/) {\n return object.toString();\n}\n\nfunction isFunction(object) {\n return Object.prototype.toString.call(object) === '[object Function]';\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:js/function', {\n kind: 'scalar',\n resolve: resolveJavascriptFunction,\n construct: constructJavascriptFunction,\n predicate: isFunction,\n represent: representJavascriptFunction\n});\n", - "'use strict';\n\nvar Type = require('../../type');\n\nfunction resolveJavascriptRegExp(data) {\n if (data === null) return false;\n if (data.length === 0) return false;\n\n var regexp = data,\n tail = /\\/([gim]*)$/.exec(data),\n modifiers = '';\n\n // if regexp starts with '/' it can have modifiers and must be properly closed\n // `/foo/gim` - modifiers tail can be maximum 3 chars\n if (regexp[0] === '/') {\n if (tail) modifiers = tail[1];\n\n if (modifiers.length > 3) return false;\n // if expression starts with /, is should be properly terminated\n if (regexp[regexp.length - modifiers.length - 1] !== '/') return false;\n }\n\n return true;\n}\n\nfunction constructJavascriptRegExp(data) {\n var regexp = data,\n tail = /\\/([gim]*)$/.exec(data),\n modifiers = '';\n\n // `/foo/gim` - tail can be maximum 4 chars\n if (regexp[0] === '/') {\n if (tail) modifiers = tail[1];\n regexp = regexp.slice(1, regexp.length - modifiers.length - 1);\n }\n\n return new RegExp(regexp, modifiers);\n}\n\nfunction representJavascriptRegExp(object /*, style*/) {\n var result = '/' + object.source + '/';\n\n if (object.global) result += 'g';\n if (object.multiline) result += 'm';\n if (object.ignoreCase) result += 'i';\n\n return result;\n}\n\nfunction isRegExp(object) {\n return Object.prototype.toString.call(object) === '[object RegExp]';\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:js/regexp', {\n kind: 'scalar',\n resolve: resolveJavascriptRegExp,\n construct: constructJavascriptRegExp,\n predicate: isRegExp,\n represent: representJavascriptRegExp\n});\n", - "'use strict';\n\nvar Type = require('../../type');\n\nfunction resolveJavascriptUndefined() {\n return true;\n}\n\nfunction constructJavascriptUndefined() {\n /*eslint-disable no-undefined*/\n return undefined;\n}\n\nfunction representJavascriptUndefined() {\n return '';\n}\n\nfunction isUndefined(object) {\n return typeof object === 'undefined';\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:js/undefined', {\n kind: 'scalar',\n resolve: resolveJavascriptUndefined,\n construct: constructJavascriptUndefined,\n predicate: isUndefined,\n represent: representJavascriptUndefined\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nmodule.exports = new Type('tag:yaml.org,2002:map', {\n kind: 'mapping',\n construct: function (data) { return data !== null ? data : {}; }\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nfunction resolveYamlMerge(data) {\n return data === '<<' || data === null;\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:merge', {\n kind: 'scalar',\n resolve: resolveYamlMerge\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nfunction resolveYamlNull(data) {\n if (data === null) return true;\n\n var max = data.length;\n\n return (max === 1 && data === '~') ||\n (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));\n}\n\nfunction constructYamlNull() {\n return null;\n}\n\nfunction isNull(object) {\n return object === null;\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:null', {\n kind: 'scalar',\n resolve: resolveYamlNull,\n construct: constructYamlNull,\n predicate: isNull,\n represent: {\n canonical: function () { return '~'; },\n lowercase: function () { return 'null'; },\n uppercase: function () { return 'NULL'; },\n camelcase: function () { return 'Null'; }\n },\n defaultStyle: 'lowercase'\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nvar _hasOwnProperty = Object.prototype.hasOwnProperty;\nvar _toString = Object.prototype.toString;\n\nfunction resolveYamlOmap(data) {\n if (data === null) return true;\n\n var objectKeys = [], index, length, pair, pairKey, pairHasKey,\n object = data;\n\n for (index = 0, length = object.length; index < length; index += 1) {\n pair = object[index];\n pairHasKey = false;\n\n if (_toString.call(pair) !== '[object Object]') return false;\n\n for (pairKey in pair) {\n if (_hasOwnProperty.call(pair, pairKey)) {\n if (!pairHasKey) pairHasKey = true;\n else return false;\n }\n }\n\n if (!pairHasKey) return false;\n\n if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);\n else return false;\n }\n\n return true;\n}\n\nfunction constructYamlOmap(data) {\n return data !== null ? data : [];\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:omap', {\n kind: 'sequence',\n resolve: resolveYamlOmap,\n construct: constructYamlOmap\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nvar _toString = Object.prototype.toString;\n\nfunction resolveYamlPairs(data) {\n if (data === null) return true;\n\n var index, length, pair, keys, result,\n object = data;\n\n result = new Array(object.length);\n\n for (index = 0, length = object.length; index < length; index += 1) {\n pair = object[index];\n\n if (_toString.call(pair) !== '[object Object]') return false;\n\n keys = Object.keys(pair);\n\n if (keys.length !== 1) return false;\n\n result[index] = [ keys[0], pair[keys[0]] ];\n }\n\n return true;\n}\n\nfunction constructYamlPairs(data) {\n if (data === null) return [];\n\n var index, length, pair, keys, result,\n object = data;\n\n result = new Array(object.length);\n\n for (index = 0, length = object.length; index < length; index += 1) {\n pair = object[index];\n\n keys = Object.keys(pair);\n\n result[index] = [ keys[0], pair[keys[0]] ];\n }\n\n return result;\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:pairs', {\n kind: 'sequence',\n resolve: resolveYamlPairs,\n construct: constructYamlPairs\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nmodule.exports = new Type('tag:yaml.org,2002:seq', {\n kind: 'sequence',\n construct: function (data) { return data !== null ? data : []; }\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nvar _hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction resolveYamlSet(data) {\n if (data === null) return true;\n\n var key, object = data;\n\n for (key in object) {\n if (_hasOwnProperty.call(object, key)) {\n if (object[key] !== null) return false;\n }\n }\n\n return true;\n}\n\nfunction constructYamlSet(data) {\n return data !== null ? data : {};\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:set', {\n kind: 'mapping',\n resolve: resolveYamlSet,\n construct: constructYamlSet\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nmodule.exports = new Type('tag:yaml.org,2002:str', {\n kind: 'scalar',\n construct: function (data) { return data !== null ? data : ''; }\n});\n", - "'use strict';\n\nvar Type = require('../type');\n\nvar YAML_DATE_REGEXP = new RegExp(\n '^([0-9][0-9][0-9][0-9])' + // [1] year\n '-([0-9][0-9])' + // [2] month\n '-([0-9][0-9])$'); // [3] day\n\nvar YAML_TIMESTAMP_REGEXP = new RegExp(\n '^([0-9][0-9][0-9][0-9])' + // [1] year\n '-([0-9][0-9]?)' + // [2] month\n '-([0-9][0-9]?)' + // [3] day\n '(?:[Tt]|[ \\\\t]+)' + // ...\n '([0-9][0-9]?)' + // [4] hour\n ':([0-9][0-9])' + // [5] minute\n ':([0-9][0-9])' + // [6] second\n '(?:\\\\.([0-9]*))?' + // [7] fraction\n '(?:[ \\\\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour\n '(?::([0-9][0-9]))?))?$'); // [11] tz_minute\n\nfunction resolveYamlTimestamp(data) {\n if (data === null) return false;\n if (YAML_DATE_REGEXP.exec(data) !== null) return true;\n if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;\n return false;\n}\n\nfunction constructYamlTimestamp(data) {\n var match, year, month, day, hour, minute, second, fraction = 0,\n delta = null, tz_hour, tz_minute, date;\n\n match = YAML_DATE_REGEXP.exec(data);\n if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);\n\n if (match === null) throw new Error('Date resolve error');\n\n // match: [1] year [2] month [3] day\n\n year = +(match[1]);\n month = +(match[2]) - 1; // JS month starts with 0\n day = +(match[3]);\n\n if (!match[4]) { // no hour\n return new Date(Date.UTC(year, month, day));\n }\n\n // match: [4] hour [5] minute [6] second [7] fraction\n\n hour = +(match[4]);\n minute = +(match[5]);\n second = +(match[6]);\n\n if (match[7]) {\n fraction = match[7].slice(0, 3);\n while (fraction.length < 3) { // milli-seconds\n fraction += '0';\n }\n fraction = +fraction;\n }\n\n // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute\n\n if (match[9]) {\n tz_hour = +(match[10]);\n tz_minute = +(match[11] || 0);\n delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds\n if (match[9] === '-') delta = -delta;\n }\n\n date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));\n\n if (delta) date.setTime(date.getTime() - delta);\n\n return date;\n}\n\nfunction representYamlTimestamp(object /*, style*/) {\n return object.toISOString();\n}\n\nmodule.exports = new Type('tag:yaml.org,2002:timestamp', {\n kind: 'scalar',\n resolve: resolveYamlTimestamp,\n construct: constructYamlTimestamp,\n instanceOf: Date,\n represent: representYamlTimestamp\n});\n", - "\"use strict\";\n\nvar format = require(\"format-util\");\nvar slice = Array.prototype.slice;\nvar protectedProperties = [\"name\", \"message\", \"stack\"];\nvar errorPrototypeProperties = [\n \"name\", \"message\", \"description\", \"number\", \"code\", \"fileName\", \"lineNumber\", \"columnNumber\",\n \"sourceURL\", \"line\", \"column\", \"stack\"\n];\n\nmodule.exports = create(Error);\nmodule.exports.error = create(Error);\nmodule.exports.eval = create(EvalError);\nmodule.exports.range = create(RangeError);\nmodule.exports.reference = create(ReferenceError);\nmodule.exports.syntax = create(SyntaxError);\nmodule.exports.type = create(TypeError);\nmodule.exports.uri = create(URIError);\nmodule.exports.formatter = format;\n\n/**\n * Creates a new {@link ono} function that creates the given Error class.\n *\n * @param {Class} Klass - The Error subclass to create\n * @returns {ono}\n */\nfunction create (Klass) {\n /**\n * @param {Error} [err] - The original error, if any\n * @param {object} [props] - An object whose properties will be added to the error object\n * @param {string} [message] - The error message. May contain {@link util#format} placeholders\n * @param {...*} [params] - Parameters that map to the `message` placeholders\n * @returns {Error}\n */\n return function onoFactory (err, props, message, params) { // eslint-disable-line no-unused-vars\n var formatArgs = [];\n var formattedMessage = \"\";\n\n // Determine which arguments were actually specified\n if (typeof err === \"string\") {\n formatArgs = slice.call(arguments);\n err = props = undefined;\n }\n else if (typeof props === \"string\") {\n formatArgs = slice.call(arguments, 1);\n props = undefined;\n }\n else if (typeof message === \"string\") {\n formatArgs = slice.call(arguments, 2);\n }\n\n // If there are any format arguments, then format the error message\n if (formatArgs.length > 0) {\n formattedMessage = module.exports.formatter.apply(null, formatArgs);\n }\n\n if (err && err.message) {\n // The inner-error's message will be added to the new message\n formattedMessage += (formattedMessage ? \" \\n\" : \"\") + err.message;\n }\n\n // Create the new error\n // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace\n var newError = new Klass(formattedMessage);\n\n // Extend the new error with the additional properties\n extendError(newError, err); // Copy properties of the original error\n extendToJSON(newError); // Replace the original toJSON method\n extend(newError, props); // Copy custom properties, possibly including a custom toJSON method\n\n return newError;\n };\n}\n\n/**\n * Extends the targetError with the properties of the source error.\n *\n * @param {Error} targetError - The error object to extend\n * @param {?Error} sourceError - The source error object, if any\n */\nfunction extendError (targetError, sourceError) {\n extendStack(targetError, sourceError);\n extend(targetError, sourceError);\n}\n\n/**\n * JavaScript engines differ in how errors are serialized to JSON - especially when it comes\n * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS\n * outputs every property of the error.\n */\nfunction extendToJSON (error) {\n error.toJSON = errorToJSON;\n\n // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method\n error.inspect = errorToString;\n}\n\n/**\n * Extends the target object with the properties of the source object.\n *\n * @param {object} target - The object to extend\n * @param {?source} source - The object whose properties are copied\n */\nfunction extend (target, source) {\n if (source && typeof source === \"object\") {\n var keys = Object.keys(source);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n // Don't copy \"protected\" properties, since they have special meaning/behavior\n // and are set by the onoFactory function\n if (protectedProperties.indexOf(key) >= 0) {\n continue;\n }\n\n try {\n target[key] = source[key];\n }\n catch (e) {\n // This property is read-only, so it can't be copied\n }\n }\n }\n}\n\n/**\n * Custom JSON serializer for Error objects.\n * Returns all built-in error properties, as well as extended properties.\n *\n * @returns {object}\n */\nfunction errorToJSON () {\n var json = {};\n\n // Get all the properties of this error\n var keys = Object.keys(this);\n\n // Also include properties from the Error prototype\n keys = keys.concat(errorPrototypeProperties);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = this[key];\n var type = typeof value;\n if (type !== \"undefined\" && type !== \"function\") {\n json[key] = value;\n }\n }\n\n return json;\n}\n\n/**\n * Serializes Error objects as human-readable JSON strings for debugging/logging purposes.\n *\n * @returns {string}\n */\nfunction errorToString () {\n return JSON.stringify(this, null, 2).replace(/\\\\n/g, \"\\n\");\n}\n\n/**\n * Extend the error stack to include its cause\n *\n * @param {Error} targetError\n * @param {Error} sourceError\n */\nfunction extendStack (targetError, sourceError) {\n if (hasLazyStack(targetError)) {\n if (sourceError) {\n lazyJoinStacks(targetError, sourceError);\n }\n else {\n lazyPopStack(targetError);\n }\n }\n else {\n if (sourceError) {\n targetError.stack = joinStacks(targetError.stack, sourceError.stack);\n }\n else {\n targetError.stack = popStack(targetError.stack);\n }\n }\n}\n\n/**\n * Appends the original {@link Error#stack} property to the new Error's stack.\n *\n * @param {string} newStack\n * @param {string} originalStack\n * @returns {string}\n */\nfunction joinStacks (newStack, originalStack) {\n newStack = popStack(newStack);\n\n if (newStack && originalStack) {\n return newStack + \"\\n\\n\" + originalStack;\n }\n else {\n return newStack || originalStack;\n }\n}\n\n/**\n * Removes Ono from the stack, so that the stack starts at the original error location\n *\n * @param {string} stack\n * @returns {string}\n */\nfunction popStack (stack) {\n if (stack) {\n var lines = stack.split(\"\\n\");\n\n if (lines.length < 2) {\n // The stack only has one line, so there's nothing we can remove\n return stack;\n }\n\n // Find the `onoFactory` call in the stack, and remove it\n for (var i = 0; i < lines.length; i++) {\n var line = lines[i];\n if (line.indexOf(\"onoFactory\") >= 0) {\n lines.splice(i, 1);\n return lines.join(\"\\n\");\n }\n }\n\n // If we get here, then the stack doesn't contain a call to `onoFactory`.\n // This may be due to minification or some optimization of the JS engine.\n // So just return the stack as-is.\n return stack;\n }\n}\n\n/**\n * Does a one-time determination of whether this JavaScript engine\n * supports lazy `Error.stack` properties.\n */\nvar supportsLazyStack = (function () {\n return !!(\n // ES5 property descriptors must be supported\n Object.getOwnPropertyDescriptor && Object.defineProperty &&\n\n // Chrome on Android doesn't support lazy stacks :(\n (typeof navigator === \"undefined\" || !/Android/.test(navigator.userAgent))\n );\n}());\n\n/**\n * Does this error have a lazy stack property?\n *\n * @param {Error} err\n * @returns {boolean}\n */\nfunction hasLazyStack (err) {\n if (!supportsLazyStack) {\n return false;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(err, \"stack\");\n if (!descriptor) {\n return false;\n }\n return typeof descriptor.get === \"function\";\n}\n\n/**\n * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed.\n *\n * @param {Error} targetError\n * @param {Error} sourceError\n */\nfunction lazyJoinStacks (targetError, sourceError) {\n var targetStack = Object.getOwnPropertyDescriptor(targetError, \"stack\");\n\n Object.defineProperty(targetError, \"stack\", {\n get: function () {\n return joinStacks(targetStack.get.apply(targetError), sourceError.stack);\n },\n enumerable: false,\n configurable: true\n });\n}\n\n/**\n * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed.\n *\n * @param {Error} error\n */\nfunction lazyPopStack (error) {\n var targetStack = Object.getOwnPropertyDescriptor(error, \"stack\");\n\n Object.defineProperty(error, \"stack\", {\n get: function () {\n return popStack(targetStack.get.apply(error));\n },\n enumerable: false,\n configurable: true\n });\n}\n", - "'use strict';\n\nif (!process.version ||\n process.version.indexOf('v0.') === 0 ||\n process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {\n module.exports = { nextTick: nextTick };\n} else {\n module.exports = process\n}\n\nfunction nextTick(fn, arg1, arg2, arg3) {\n if (typeof fn !== 'function') {\n throw new TypeError('\"callback\" argument must be a function');\n }\n var len = arguments.length;\n var args, i;\n switch (len) {\n case 0:\n case 1:\n return process.nextTick(fn);\n case 2:\n return process.nextTick(function afterTickOne() {\n fn.call(null, arg1);\n });\n case 3:\n return process.nextTick(function afterTickTwo() {\n fn.call(null, arg1, arg2);\n });\n case 4:\n return process.nextTick(function afterTickThree() {\n fn.call(null, arg1, arg2, arg3);\n });\n default:\n args = new Array(len - 1);\n i = 0;\n while (i < args.length) {\n args[i++] = arguments[i];\n }\n return process.nextTick(function afterTick() {\n fn.apply(null, args);\n });\n }\n}\n\n", - "// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n// If obj.hasOwnProperty has been overridden, then calling\n// obj.hasOwnProperty(prop) will break.\n// See: https://github.com/joyent/node/issues/1707\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nmodule.exports = function(qs, sep, eq, options) {\n sep = sep || '&';\n eq = eq || '=';\n var obj = {};\n\n if (typeof qs !== 'string' || qs.length === 0) {\n return obj;\n }\n\n var regexp = /\\+/g;\n qs = qs.split(sep);\n\n var maxKeys = 1000;\n if (options && typeof options.maxKeys === 'number') {\n maxKeys = options.maxKeys;\n }\n\n var len = qs.length;\n // maxKeys <= 0 means that we should not limit keys count\n if (maxKeys > 0 && len > maxKeys) {\n len = maxKeys;\n }\n\n for (var i = 0; i < len; ++i) {\n var x = qs[i].replace(regexp, '%20'),\n idx = x.indexOf(eq),\n kstr, vstr, k, v;\n\n if (idx >= 0) {\n kstr = x.substr(0, idx);\n vstr = x.substr(idx + 1);\n } else {\n kstr = x;\n vstr = '';\n }\n\n k = decodeURIComponent(kstr);\n v = decodeURIComponent(vstr);\n\n if (!hasOwnProperty(obj, k)) {\n obj[k] = v;\n } else if (isArray(obj[k])) {\n obj[k].push(v);\n } else {\n obj[k] = [obj[k], v];\n }\n }\n\n return obj;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar stringifyPrimitive = function(v) {\n switch (typeof v) {\n case 'string':\n return v;\n\n case 'boolean':\n return v ? 'true' : 'false';\n\n case 'number':\n return isFinite(v) ? v : '';\n\n default:\n return '';\n }\n};\n\nmodule.exports = function(obj, sep, eq, name) {\n sep = sep || '&';\n eq = eq || '=';\n if (obj === null) {\n obj = undefined;\n }\n\n if (typeof obj === 'object') {\n return map(objectKeys(obj), function(k) {\n var ks = encodeURIComponent(stringifyPrimitive(k)) + eq;\n if (isArray(obj[k])) {\n return map(obj[k], function(v) {\n return ks + encodeURIComponent(stringifyPrimitive(v));\n }).join(sep);\n } else {\n return ks + encodeURIComponent(stringifyPrimitive(obj[k]));\n }\n }).join(sep);\n\n }\n\n if (!name) return '';\n return encodeURIComponent(stringifyPrimitive(name)) + eq +\n encodeURIComponent(stringifyPrimitive(obj));\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n\nfunction map (xs, f) {\n if (xs.map) return xs.map(f);\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n res.push(f(xs[i], i));\n }\n return res;\n}\n\nvar objectKeys = Object.keys || function (obj) {\n var res = [];\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) res.push(key);\n }\n return res;\n};\n", - "'use strict';\n\nexports.decode = exports.parse = require('./decode');\nexports.encode = exports.stringify = require('./encode');\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\n/**/\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) {\n keys.push(key);\n }return keys;\n};\n/**/\n\nmodule.exports = Duplex;\n\n/**/\nvar util = require('core-util-is');\nutil.inherits = require('inherits');\n/**/\n\nvar Readable = require('./_stream_readable');\nvar Writable = require('./_stream_writable');\n\nutil.inherits(Duplex, Readable);\n\n{\n // avoid scope creep, the keys array can then be collected\n var keys = objectKeys(Writable.prototype);\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n\n Readable.call(this, options);\n Writable.call(this, options);\n\n if (options && options.readable === false) this.readable = false;\n\n if (options && options.writable === false) this.writable = false;\n\n this.allowHalfOpen = true;\n if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;\n\n this.once('end', onend);\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._writableState.highWaterMark;\n }\n});\n\n// the no-half-open enforcer\nfunction onend() {\n // if we allow half-open state, or if the writable side ended,\n // then we're ok.\n if (this.allowHalfOpen || this._writableState.ended) return;\n\n // no more data can be written.\n // But allow more writes to happen in this tick.\n pna.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n get: function () {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});\n\nDuplex.prototype._destroy = function (err, cb) {\n this.push(null);\n this.end();\n\n pna.nextTick(cb, err);\n};", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n\n'use strict';\n\nmodule.exports = PassThrough;\n\nvar Transform = require('./_stream_transform');\n\n/**/\nvar util = require('core-util-is');\nutil.inherits = require('inherits');\n/**/\n\nutil.inherits(PassThrough, Transform);\n\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n\n Transform.call(this, options);\n}\n\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\nmodule.exports = Readable;\n\n/**/\nvar isArray = require('isarray');\n/**/\n\n/**/\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n\n/**/\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function (emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\nvar OurUint8Array = global.Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\n\n/**/\nvar util = require('core-util-is');\nutil.inherits = require('inherits');\n/**/\n\n/**/\nvar debugUtil = require('util');\nvar debug = void 0;\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function () {};\n}\n/**/\n\nvar BufferList = require('./internal/streams/BufferList');\nvar destroyImpl = require('./internal/streams/destroy');\nvar StringDecoder;\n\nutil.inherits(Readable, Stream);\n\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);\n\n // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream) {\n Duplex = Duplex || require('./_stream_duplex');\n\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n var isDuplex = stream instanceof Duplex;\n\n // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n this.objectMode = !!options.objectMode;\n\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;\n\n // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n var hwm = options.highWaterMark;\n var readableHwm = options.readableHighWaterMark;\n var defaultHwm = this.objectMode ? 16 : 16 * 1024;\n\n if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm;\n\n // cast to ints.\n this.highWaterMark = Math.floor(this.highWaterMark);\n\n // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false;\n\n // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n this.sync = true;\n\n // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // the number of writers that are awaiting a drain event in .pipe()s\n this.awaitDrain = 0;\n\n // if true, a maybeReadMore has been scheduled\n this.readingMore = false;\n\n this.decoder = null;\n this.encoding = null;\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n if (!(this instanceof Readable)) return new Readable(options);\n\n this._readableState = new ReadableState(options, this);\n\n // legacy\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n get: function () {\n if (this._readableState === undefined) {\n return false;\n }\n return this._readableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n }\n});\n\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\nReadable.prototype._destroy = function (err, cb) {\n this.push(null);\n cb(err);\n};\n\n// Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n};\n\n// Unshift should *always* be something directly out of read()\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n var state = stream._readableState;\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n if (er) {\n stream.emit('error', er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n stream.emit('error', new Error('stream.push() after EOF'));\n } else {\n state.reading = false;\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n }\n }\n\n return needMoreData(state);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n stream.emit('data', chunk);\n stream.read(0);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n\n if (state.needReadable) emitReadable(stream);\n }\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new TypeError('Invalid non-string/buffer chunk');\n }\n return er;\n}\n\n// if it's past the high water mark, we can push in some more.\n// Also, if we have no data yet, we can stand some\n// more bytes. This is to work around cases where hwm=0,\n// such as the repl. Also, if the push() triggered a\n// readable event, and the user called read(largeNumber) such that\n// needReadable was set, then we ought to push more, so that another\n// 'readable' event will be triggered.\nfunction needMoreData(state) {\n return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n};\n\n// backwards compatibility.\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this._readableState.decoder = new StringDecoder(enc);\n this._readableState.encoding = enc;\n return this;\n};\n\n// Don't raise the hwm > 8MB\nvar MAX_HWM = 0x800000;\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n return n;\n}\n\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n }\n // If we're asking for more than the current hwm, then raise the hwm.\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n;\n // Don't have enough\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n return state.length;\n}\n\n// you can override either this method, or the async _read(n) below.\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n\n if (n !== 0) state.emittedReadable = false;\n\n // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state);\n\n // if we've ended, and we're now clear, then finish it up.\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n }\n\n // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n\n // if we need a readable event, then we need to do some reading.\n var doRead = state.needReadable;\n debug('need readable', doRead);\n\n // if we currently have less than the highWaterMark, then also read some\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n }\n\n // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true;\n // if the length is currently zero, then we *need* a readable event.\n if (state.length === 0) state.needReadable = true;\n // call internal read method\n this._read(state.highWaterMark);\n state.sync = false;\n // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = true;\n n = 0;\n } else {\n state.length -= n;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true;\n\n // If we tried to read() past the EOF, then emit end on the next tick.\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n if (state.ended) return;\n if (state.decoder) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n state.ended = true;\n\n // emit 'readable' now to make sure it gets picked up.\n emitReadable(stream);\n}\n\n// Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\nfunction emitReadable(stream) {\n var state = stream._readableState;\n state.needReadable = false;\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream);\n }\n}\n\nfunction emitReadable_(stream) {\n debug('emit readable');\n stream.emit('readable');\n flow(stream);\n}\n\n// at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n pna.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n var len = state.length;\n while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) {\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length)\n // didn't get any data, stop spinning.\n break;else len = state.length;\n }\n state.readingMore = false;\n}\n\n// abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\nReadable.prototype._read = function (n) {\n this.emit('error', new Error('_read() is not implemented'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n default:\n state.pipes.push(dest);\n break;\n }\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn);\n\n dest.on('unpipe', onunpipe);\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n }\n\n // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n\n var cleanedUp = false;\n function cleanup() {\n debug('cleanup');\n // cleanup event handlers once the pipe is broken\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n\n cleanedUp = true;\n\n // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n // If the user pushes more data while we're writing to dest then we'll end up\n // in ondata again. However, we only want to increase awaitDrain once because\n // dest will only emit one 'drain' event for the multiple writes.\n // => Introduce a guard on increasing awaitDrain.\n var increasedAwaitDrain = false;\n src.on('data', ondata);\n function ondata(chunk) {\n debug('ondata');\n increasedAwaitDrain = false;\n var ret = dest.write(chunk);\n if (false === ret && !increasedAwaitDrain) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', src._readableState.awaitDrain);\n src._readableState.awaitDrain++;\n increasedAwaitDrain = true;\n }\n src.pause();\n }\n }\n\n // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er);\n }\n\n // Make sure our error handler is attached before userland ones.\n prependListener(dest, 'error', onerror);\n\n // Both close and finish should trigger unpipe, but only once.\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n dest.once('close', onclose);\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n }\n\n // tell the dest that it's being piped to\n dest.emit('pipe', src);\n\n // start the flow if it hasn't been started already.\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function () {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = { hasUnpiped: false };\n\n // if we're not piping anywhere, then do nothing.\n if (state.pipesCount === 0) return this;\n\n // just one destination. most common case.\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n\n if (!dest) dest = state.pipes;\n\n // got a match.\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n }\n\n // slow case. multiple pipe destinations.\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, unpipeInfo);\n }return this;\n }\n\n // try to find the right one.\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n\n dest.emit('unpipe', this, unpipeInfo);\n\n return this;\n};\n\n// set up data events if they are asked for\n// Ensure readable listeners eventually get something\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n\n if (ev === 'data') {\n // Start flowing on next tick if stream isn't explicitly paused\n if (this._readableState.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n var state = this._readableState;\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.emittedReadable = false;\n if (!state.reading) {\n pna.nextTick(nReadingNextTick, this);\n } else if (state.length) {\n emitReadable(this);\n }\n }\n }\n\n return res;\n};\nReadable.prototype.addListener = Readable.prototype.on;\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n}\n\n// pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\nReadable.prototype.resume = function () {\n var state = this._readableState;\n if (!state.flowing) {\n debug('resume');\n state.flowing = true;\n resume(this, state);\n }\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n pna.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n if (!state.reading) {\n debug('resume read 0');\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n state.awaitDrain = 0;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n if (false !== this._readableState.flowing) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n while (state.flowing && stream.read() !== null) {}\n}\n\n// wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n\n stream.on('end', function () {\n debug('wrapped end');\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk);\n\n // don't skip over falsy values in objectMode\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n if (!ret) {\n paused = true;\n stream.pause();\n }\n });\n\n // proxy all the other methods.\n // important when wrapping filters and duplexes.\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function (method) {\n return function () {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n }\n\n // proxy certain important events.\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n }\n\n // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n this._read = function (n) {\n debug('wrapped _read', n);\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._readableState.highWaterMark;\n }\n});\n\n// exposed for testing purposes only.\nReadable._fromList = fromList;\n\n// Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = fromListPartial(n, state.buffer, state.decoder);\n }\n\n return ret;\n}\n\n// Extracts only enough buffered data to satisfy the amount requested.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromListPartial(n, list, hasStrings) {\n var ret;\n if (n < list.head.data.length) {\n // slice is the same for buffers and strings\n ret = list.head.data.slice(0, n);\n list.head.data = list.head.data.slice(n);\n } else if (n === list.head.data.length) {\n // first chunk is a perfect match\n ret = list.shift();\n } else {\n // result spans more than one buffer\n ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list);\n }\n return ret;\n}\n\n// Copies a specified amount of characters from the list of buffered data\n// chunks.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction copyFromBufferString(n, list) {\n var p = list.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) list.head = p.next;else list.head = list.tail = null;\n } else {\n list.head = p;\n p.data = str.slice(nb);\n }\n break;\n }\n ++c;\n }\n list.length -= c;\n return ret;\n}\n\n// Copies a specified amount of bytes from the list of buffered data chunks.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction copyFromBuffer(n, list) {\n var ret = Buffer.allocUnsafe(n);\n var p = list.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) list.head = p.next;else list.head = list.tail = null;\n } else {\n list.head = p;\n p.data = buf.slice(nb);\n }\n break;\n }\n ++c;\n }\n list.length -= c;\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n\n // If we get here before consuming all the bytes, then that is a\n // bug in node. Should never happen.\n if (state.length > 0) throw new Error('\"endReadable()\" called on non-empty stream');\n\n if (!state.endEmitted) {\n state.ended = true;\n pna.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n // Check that we didn't get one last unshift.\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n }\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n return -1;\n}", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\n\nvar Duplex = require('./_stream_duplex');\n\n/**/\nvar util = require('core-util-is');\nutil.inherits = require('inherits');\n/**/\n\nutil.inherits(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n\n var cb = ts.writecb;\n\n if (!cb) {\n return this.emit('error', new Error('write callback called multiple times'));\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n\n cb(er);\n\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n\n Duplex.call(this, options);\n\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function') {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n throw new Error('_transform() is not implemented');\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && ts.writecb && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n var _this2 = this;\n\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n _this2.emit('close');\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0');\n\n if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming');\n\n return stream.push(null);\n}", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\nmodule.exports = Writable;\n\n/* */\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n}\n\n// It seems a linked list but it is not\n// there will be only 2 of these for each stream\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\nvar asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick;\n/**/\n\n/**/\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n\n/**/\nvar util = require('core-util-is');\nutil.inherits = require('inherits');\n/**/\n\n/**/\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\nvar OurUint8Array = global.Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nutil.inherits(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream) {\n Duplex = Duplex || require('./_stream_duplex');\n\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n var isDuplex = stream instanceof Duplex;\n\n // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n this.objectMode = !!options.objectMode;\n\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;\n\n // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n var hwm = options.highWaterMark;\n var writableHwm = options.writableHighWaterMark;\n var defaultHwm = this.objectMode ? 16 : 16 * 1024;\n\n if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm;\n\n // cast to ints.\n this.highWaterMark = Math.floor(this.highWaterMark);\n\n // if _final has been called\n this.finalCalled = false;\n\n // drain event flag.\n this.needDrain = false;\n // at the start of calling end()\n this.ending = false;\n // when end() has been called, and returned\n this.ended = false;\n // when 'finish' is emitted\n this.finished = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n this.length = 0;\n\n // a flag to see when we're in the middle of a write.\n this.writing = false;\n\n // when true all writes will be buffered until .uncork() call\n this.corked = 0;\n\n // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n this.sync = true;\n\n // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n this.bufferProcessing = false;\n\n // the callback that's passed to _write(chunk,cb)\n this.onwrite = function (er) {\n onwrite(stream, er);\n };\n\n // the callback that the user supplies to write(chunk,encoding,cb)\n this.writecb = null;\n\n // the amount that is being written when _write is called.\n this.writelen = 0;\n\n this.bufferedRequest = null;\n this.lastBufferedRequest = null;\n\n // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n this.pendingcb = 0;\n\n // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n this.prefinished = false;\n\n // True if the error was already emitted and should not be thrown again\n this.errorEmitted = false;\n\n // count buffered requests\n this.bufferedRequestCount = 0;\n\n // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n while (current) {\n out.push(current);\n current = current.next;\n }\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function () {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})();\n\n// Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\nvar realHasInstance;\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function (object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function (object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) {\n return new Writable(options);\n }\n\n this._writableState = new WritableState(options, this);\n\n // legacy.\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n\n if (typeof options.writev === 'function') this._writev = options.writev;\n\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n}\n\n// Otherwise people can pipe Writable streams, which is just wrong.\nWritable.prototype.pipe = function () {\n this.emit('error', new Error('Cannot pipe, not readable'));\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new Error('write after end');\n // TODO: defer error events consistently everywhere, not just the cb\n stream.emit('error', er);\n pna.nextTick(cb, er);\n}\n\n// Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\nfunction validChunk(stream, state, chunk, cb) {\n var valid = true;\n var er = false;\n\n if (chunk === null) {\n er = new TypeError('May not write null values to stream');\n } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new TypeError('Invalid non-string/buffer chunk');\n }\n if (er) {\n stream.emit('error', er);\n pna.nextTick(cb, er);\n valid = false;\n }\n return valid;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n\n if (typeof cb !== 'function') cb = nop;\n\n if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n\n return ret;\n};\n\nWritable.prototype.cork = function () {\n var state = this._writableState;\n\n state.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n\n if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._writableState.highWaterMark;\n }\n});\n\n// if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n var len = state.objectMode ? 1 : chunk.length;\n\n state.length += len;\n\n var ret = state.length < state.highWaterMark;\n // we must ensure that previous needDrain will not be reset to false.\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n pna.nextTick(cb, er);\n // this can emit finish, and it will always happen\n // after error\n pna.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n stream.emit('error', er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n stream.emit('error', er);\n // this can emit finish, but finish must\n // always follow error\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n\n onwriteStateUpdate(state);\n\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state);\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n /**/\n asyncWrite(afterWrite, stream, state, finished, cb);\n /**/\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n}\n\n// Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n}\n\n// if there's something in the buffer waiting, then process it\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n\n var count = 0;\n var allBuffers = true;\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n buffer.allBuffers = allBuffers;\n\n doWrite(stream, state, true, state.length, buffer, '', holder.finish);\n\n // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n state.pendingcb++;\n state.lastBufferedRequest = null;\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--;\n // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new Error('_write() is not implemented'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);\n\n // .end() fully uncorks\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n }\n\n // ignore unnecessary end() calls.\n if (!state.ending && !state.finished) endWritable(this, state, cb);\n};\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n if (err) {\n stream.emit('error', err);\n }\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function') {\n state.pendingcb++;\n state.finalCalled = true;\n pna.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n if (need) {\n prefinish(stream, state);\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n }\n }\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n if (cb) {\n if (state.finished) pna.nextTick(cb);else stream.once('finish', cb);\n }\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n }\n if (state.corkedRequestsFree) {\n state.corkedRequestsFree.next = corkReq;\n } else {\n state.corkedRequestsFree = corkReq;\n }\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n get: function () {\n if (this._writableState === undefined) {\n return false;\n }\n return this._writableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._writableState.destroyed = value;\n }\n});\n\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\nWritable.prototype._destroy = function (err, cb) {\n this.end();\n cb(err);\n};", - "'use strict';\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Buffer = require('safe-buffer').Buffer;\nvar util = require('util');\n\nfunction copyBuffer(src, target, offset) {\n src.copy(target, offset);\n}\n\nmodule.exports = function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n\n BufferList.prototype.push = function push(v) {\n var entry = { data: v, next: null };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n };\n\n BufferList.prototype.unshift = function unshift(v) {\n var entry = { data: v, next: this.head };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n };\n\n BufferList.prototype.shift = function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n };\n\n BufferList.prototype.clear = function clear() {\n this.head = this.tail = null;\n this.length = 0;\n };\n\n BufferList.prototype.join = function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) {\n ret += s + p.data;\n }return ret;\n };\n\n BufferList.prototype.concat = function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n if (this.length === 1) return this.head.data;\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n };\n\n return BufferList;\n}();\n\nif (util && util.inspect && util.inspect.custom) {\n module.exports.prototype[util.inspect.custom] = function () {\n var obj = util.inspect({ length: this.length });\n return this.constructor.name + ' ' + obj;\n };\n}", - "'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err && (!this._writableState || !this._writableState.errorEmitted)) {\n pna.nextTick(emitErrorNT, this, err);\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n pna.nextTick(emitErrorNT, _this, err);\n if (_this._writableState) {\n _this._writableState.errorEmitted = true;\n }\n } else if (cb) {\n cb(err);\n }\n });\n\n return this;\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy\n};", - "module.exports = require('events').EventEmitter;\n", - "exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\n", - "/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n", - "var ClientRequest = require('./lib/request')\nvar response = require('./lib/response')\nvar extend = require('xtend')\nvar statusCodes = require('builtin-status-codes')\nvar url = require('url')\n\nvar http = exports\n\nhttp.request = function (opts, cb) {\n\tif (typeof opts === 'string')\n\t\topts = url.parse(opts)\n\telse\n\t\topts = extend(opts)\n\n\t// Normally, the page is loaded from http or https, so not specifying a protocol\n\t// will result in a (valid) protocol-relative url. However, this won't work if\n\t// the protocol is something else, like 'file:'\n\tvar defaultProtocol = global.location.protocol.search(/^https?:$/) === -1 ? 'http:' : ''\n\n\tvar protocol = opts.protocol || defaultProtocol\n\tvar host = opts.hostname || opts.host\n\tvar port = opts.port\n\tvar path = opts.path || '/'\n\n\t// Necessary for IPv6 addresses\n\tif (host && host.indexOf(':') !== -1)\n\t\thost = '[' + host + ']'\n\n\t// This may be a relative url. The browser should always be able to interpret it correctly.\n\topts.url = (host ? (protocol + '//' + host) : '') + (port ? ':' + port : '') + path\n\topts.method = (opts.method || 'GET').toUpperCase()\n\topts.headers = opts.headers || {}\n\n\t// Also valid opts.auth, opts.mode\n\n\tvar req = new ClientRequest(opts)\n\tif (cb)\n\t\treq.on('response', cb)\n\treturn req\n}\n\nhttp.get = function get (opts, cb) {\n\tvar req = http.request(opts, cb)\n\treq.end()\n\treturn req\n}\n\nhttp.ClientRequest = ClientRequest\nhttp.IncomingMessage = response.IncomingMessage\n\nhttp.Agent = function () {}\nhttp.Agent.defaultMaxSockets = 4\n\nhttp.globalAgent = new http.Agent()\n\nhttp.STATUS_CODES = statusCodes\n\nhttp.METHODS = [\n\t'CHECKOUT',\n\t'CONNECT',\n\t'COPY',\n\t'DELETE',\n\t'GET',\n\t'HEAD',\n\t'LOCK',\n\t'M-SEARCH',\n\t'MERGE',\n\t'MKACTIVITY',\n\t'MKCOL',\n\t'MOVE',\n\t'NOTIFY',\n\t'OPTIONS',\n\t'PATCH',\n\t'POST',\n\t'PROPFIND',\n\t'PROPPATCH',\n\t'PURGE',\n\t'PUT',\n\t'REPORT',\n\t'SEARCH',\n\t'SUBSCRIBE',\n\t'TRACE',\n\t'UNLOCK',\n\t'UNSUBSCRIBE'\n]", - "exports.fetch = isFunction(global.fetch) && isFunction(global.ReadableStream)\n\nexports.writableStream = isFunction(global.WritableStream)\n\nexports.abortController = isFunction(global.AbortController)\n\nexports.blobConstructor = false\ntry {\n\tnew Blob([new ArrayBuffer(1)])\n\texports.blobConstructor = true\n} catch (e) {}\n\n// The xhr request to example.com may violate some restrictive CSP configurations,\n// so if we're running in a browser that supports `fetch`, avoid calling getXHR()\n// and assume support for certain features below.\nvar xhr\nfunction getXHR () {\n\t// Cache the xhr value\n\tif (xhr !== undefined) return xhr\n\n\tif (global.XMLHttpRequest) {\n\t\txhr = new global.XMLHttpRequest()\n\t\t// If XDomainRequest is available (ie only, where xhr might not work\n\t\t// cross domain), use the page location. Otherwise use example.com\n\t\t// Note: this doesn't actually make an http request.\n\t\ttry {\n\t\t\txhr.open('GET', global.XDomainRequest ? '/' : 'https://example.com')\n\t\t} catch(e) {\n\t\t\txhr = null\n\t\t}\n\t} else {\n\t\t// Service workers don't have XHR\n\t\txhr = null\n\t}\n\treturn xhr\n}\n\nfunction checkTypeSupport (type) {\n\tvar xhr = getXHR()\n\tif (!xhr) return false\n\ttry {\n\t\txhr.responseType = type\n\t\treturn xhr.responseType === type\n\t} catch (e) {}\n\treturn false\n}\n\n// For some strange reason, Safari 7.0 reports typeof global.ArrayBuffer === 'object'.\n// Safari 7.1 appears to have fixed this bug.\nvar haveArrayBuffer = typeof global.ArrayBuffer !== 'undefined'\nvar haveSlice = haveArrayBuffer && isFunction(global.ArrayBuffer.prototype.slice)\n\n// If fetch is supported, then arraybuffer will be supported too. Skip calling\n// checkTypeSupport(), since that calls getXHR().\nexports.arraybuffer = exports.fetch || (haveArrayBuffer && checkTypeSupport('arraybuffer'))\n\n// These next two tests unavoidably show warnings in Chrome. Since fetch will always\n// be used if it's available, just return false for these to avoid the warnings.\nexports.msstream = !exports.fetch && haveSlice && checkTypeSupport('ms-stream')\nexports.mozchunkedarraybuffer = !exports.fetch && haveArrayBuffer &&\n\tcheckTypeSupport('moz-chunked-arraybuffer')\n\n// If fetch is supported, then overrideMimeType will be supported too. Skip calling\n// getXHR().\nexports.overrideMimeType = exports.fetch || (getXHR() ? isFunction(getXHR().overrideMimeType) : false)\n\nexports.vbArray = isFunction(global.VBArray)\n\nfunction isFunction (value) {\n\treturn typeof value === 'function'\n}\n\nxhr = null // Help gc\n", - "var capability = require('./capability')\nvar inherits = require('inherits')\nvar response = require('./response')\nvar stream = require('readable-stream')\nvar toArrayBuffer = require('to-arraybuffer')\n\nvar IncomingMessage = response.IncomingMessage\nvar rStates = response.readyStates\n\nfunction decideMode (preferBinary, useFetch) {\n\tif (capability.fetch && useFetch) {\n\t\treturn 'fetch'\n\t} else if (capability.mozchunkedarraybuffer) {\n\t\treturn 'moz-chunked-arraybuffer'\n\t} else if (capability.msstream) {\n\t\treturn 'ms-stream'\n\t} else if (capability.arraybuffer && preferBinary) {\n\t\treturn 'arraybuffer'\n\t} else if (capability.vbArray && preferBinary) {\n\t\treturn 'text:vbarray'\n\t} else {\n\t\treturn 'text'\n\t}\n}\n\nvar ClientRequest = module.exports = function (opts) {\n\tvar self = this\n\tstream.Writable.call(self)\n\n\tself._opts = opts\n\tself._body = []\n\tself._headers = {}\n\tif (opts.auth)\n\t\tself.setHeader('Authorization', 'Basic ' + new Buffer(opts.auth).toString('base64'))\n\tObject.keys(opts.headers).forEach(function (name) {\n\t\tself.setHeader(name, opts.headers[name])\n\t})\n\n\tvar preferBinary\n\tvar useFetch = true\n\tif (opts.mode === 'disable-fetch' || ('requestTimeout' in opts && !capability.abortController)) {\n\t\t// If the use of XHR should be preferred. Not typically needed.\n\t\tuseFetch = false\n\t\tpreferBinary = true\n\t} else if (opts.mode === 'prefer-streaming') {\n\t\t// If streaming is a high priority but binary compatibility and\n\t\t// the accuracy of the 'content-type' header aren't\n\t\tpreferBinary = false\n\t} else if (opts.mode === 'allow-wrong-content-type') {\n\t\t// If streaming is more important than preserving the 'content-type' header\n\t\tpreferBinary = !capability.overrideMimeType\n\t} else if (!opts.mode || opts.mode === 'default' || opts.mode === 'prefer-fast') {\n\t\t// Use binary if text streaming may corrupt data or the content-type header, or for speed\n\t\tpreferBinary = true\n\t} else {\n\t\tthrow new Error('Invalid value for opts.mode')\n\t}\n\tself._mode = decideMode(preferBinary, useFetch)\n\tself._fetchTimer = null\n\n\tself.on('finish', function () {\n\t\tself._onFinish()\n\t})\n}\n\ninherits(ClientRequest, stream.Writable)\n\nClientRequest.prototype.setHeader = function (name, value) {\n\tvar self = this\n\tvar lowerName = name.toLowerCase()\n\t// This check is not necessary, but it prevents warnings from browsers about setting unsafe\n\t// headers. To be honest I'm not entirely sure hiding these warnings is a good thing, but\n\t// http-browserify did it, so I will too.\n\tif (unsafeHeaders.indexOf(lowerName) !== -1)\n\t\treturn\n\n\tself._headers[lowerName] = {\n\t\tname: name,\n\t\tvalue: value\n\t}\n}\n\nClientRequest.prototype.getHeader = function (name) {\n\tvar header = this._headers[name.toLowerCase()]\n\tif (header)\n\t\treturn header.value\n\treturn null\n}\n\nClientRequest.prototype.removeHeader = function (name) {\n\tvar self = this\n\tdelete self._headers[name.toLowerCase()]\n}\n\nClientRequest.prototype._onFinish = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\tvar opts = self._opts\n\n\tvar headersObj = self._headers\n\tvar body = null\n\tif (opts.method !== 'GET' && opts.method !== 'HEAD') {\n\t\tif (capability.arraybuffer) {\n\t\t\tbody = toArrayBuffer(Buffer.concat(self._body))\n\t\t} else if (capability.blobConstructor) {\n\t\t\tbody = new global.Blob(self._body.map(function (buffer) {\n\t\t\t\treturn toArrayBuffer(buffer)\n\t\t\t}), {\n\t\t\t\ttype: (headersObj['content-type'] || {}).value || ''\n\t\t\t})\n\t\t} else {\n\t\t\t// get utf8 string\n\t\t\tbody = Buffer.concat(self._body).toString()\n\t\t}\n\t}\n\n\t// create flattened list of headers\n\tvar headersList = []\n\tObject.keys(headersObj).forEach(function (keyName) {\n\t\tvar name = headersObj[keyName].name\n\t\tvar value = headersObj[keyName].value\n\t\tif (Array.isArray(value)) {\n\t\t\tvalue.forEach(function (v) {\n\t\t\t\theadersList.push([name, v])\n\t\t\t})\n\t\t} else {\n\t\t\theadersList.push([name, value])\n\t\t}\n\t})\n\n\tif (self._mode === 'fetch') {\n\t\tvar signal = null\n\t\tvar fetchTimer = null\n\t\tif (capability.abortController) {\n\t\t\tvar controller = new AbortController()\n\t\t\tsignal = controller.signal\n\t\t\tself._fetchAbortController = controller\n\n\t\t\tif ('requestTimeout' in opts && opts.requestTimeout !== 0) {\n\t\t\t\tself._fetchTimer = global.setTimeout(function () {\n\t\t\t\t\tself.emit('requestTimeout')\n\t\t\t\t\tif (self._fetchAbortController)\n\t\t\t\t\t\tself._fetchAbortController.abort()\n\t\t\t\t}, opts.requestTimeout)\n\t\t\t}\n\t\t}\n\n\t\tglobal.fetch(self._opts.url, {\n\t\t\tmethod: self._opts.method,\n\t\t\theaders: headersList,\n\t\t\tbody: body || undefined,\n\t\t\tmode: 'cors',\n\t\t\tcredentials: opts.withCredentials ? 'include' : 'same-origin',\n\t\t\tsignal: signal\n\t\t}).then(function (response) {\n\t\t\tself._fetchResponse = response\n\t\t\tself._connect()\n\t\t}, function (reason) {\n\t\t\tglobal.clearTimeout(self._fetchTimer)\n\t\t\tif (!self._destroyed)\n\t\t\t\tself.emit('error', reason)\n\t\t})\n\t} else {\n\t\tvar xhr = self._xhr = new global.XMLHttpRequest()\n\t\ttry {\n\t\t\txhr.open(self._opts.method, self._opts.url, true)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\n\t\t// Can't set responseType on really old browsers\n\t\tif ('responseType' in xhr)\n\t\t\txhr.responseType = self._mode.split(':')[0]\n\n\t\tif ('withCredentials' in xhr)\n\t\t\txhr.withCredentials = !!opts.withCredentials\n\n\t\tif (self._mode === 'text' && 'overrideMimeType' in xhr)\n\t\t\txhr.overrideMimeType('text/plain; charset=x-user-defined')\n\n\t\tif ('requestTimeout' in opts) {\n\t\t\txhr.timeout = opts.requestTimeout\n\t\t\txhr.ontimeout = function () {\n\t\t\t\tself.emit('requestTimeout')\n\t\t\t}\n\t\t}\n\n\t\theadersList.forEach(function (header) {\n\t\t\txhr.setRequestHeader(header[0], header[1])\n\t\t})\n\n\t\tself._response = null\n\t\txhr.onreadystatechange = function () {\n\t\t\tswitch (xhr.readyState) {\n\t\t\t\tcase rStates.LOADING:\n\t\t\t\tcase rStates.DONE:\n\t\t\t\t\tself._onXHRProgress()\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\t// Necessary for streaming in Firefox, since xhr.response is ONLY defined\n\t\t// in onprogress, not in onreadystatechange with xhr.readyState = 3\n\t\tif (self._mode === 'moz-chunked-arraybuffer') {\n\t\t\txhr.onprogress = function () {\n\t\t\t\tself._onXHRProgress()\n\t\t\t}\n\t\t}\n\n\t\txhr.onerror = function () {\n\t\t\tif (self._destroyed)\n\t\t\t\treturn\n\t\t\tself.emit('error', new Error('XHR error'))\n\t\t}\n\n\t\ttry {\n\t\t\txhr.send(body)\n\t\t} catch (err) {\n\t\t\tprocess.nextTick(function () {\n\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\t}\n}\n\n/**\n * Checks if xhr.status is readable and non-zero, indicating no error.\n * Even though the spec says it should be available in readyState 3,\n * accessing it throws an exception in IE8\n */\nfunction statusValid (xhr) {\n\ttry {\n\t\tvar status = xhr.status\n\t\treturn (status !== null && status !== 0)\n\t} catch (e) {\n\t\treturn false\n\t}\n}\n\nClientRequest.prototype._onXHRProgress = function () {\n\tvar self = this\n\n\tif (!statusValid(self._xhr) || self._destroyed)\n\t\treturn\n\n\tif (!self._response)\n\t\tself._connect()\n\n\tself._response._onXHRProgress()\n}\n\nClientRequest.prototype._connect = function () {\n\tvar self = this\n\n\tif (self._destroyed)\n\t\treturn\n\n\tself._response = new IncomingMessage(self._xhr, self._fetchResponse, self._mode, self._fetchTimer)\n\tself._response.on('error', function(err) {\n\t\tself.emit('error', err)\n\t})\n\n\tself.emit('response', self._response)\n}\n\nClientRequest.prototype._write = function (chunk, encoding, cb) {\n\tvar self = this\n\n\tself._body.push(chunk)\n\tcb()\n}\n\nClientRequest.prototype.abort = ClientRequest.prototype.destroy = function () {\n\tvar self = this\n\tself._destroyed = true\n\tglobal.clearTimeout(self._fetchTimer)\n\tif (self._response)\n\t\tself._response._destroyed = true\n\tif (self._xhr)\n\t\tself._xhr.abort()\n\telse if (self._fetchAbortController)\n\t\tself._fetchAbortController.abort()\n}\n\nClientRequest.prototype.end = function (data, encoding, cb) {\n\tvar self = this\n\tif (typeof data === 'function') {\n\t\tcb = data\n\t\tdata = undefined\n\t}\n\n\tstream.Writable.prototype.end.call(self, data, encoding, cb)\n}\n\nClientRequest.prototype.flushHeaders = function () {}\nClientRequest.prototype.setTimeout = function () {}\nClientRequest.prototype.setNoDelay = function () {}\nClientRequest.prototype.setSocketKeepAlive = function () {}\n\n// Taken from http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader%28%29-method\nvar unsafeHeaders = [\n\t'accept-charset',\n\t'accept-encoding',\n\t'access-control-request-headers',\n\t'access-control-request-method',\n\t'connection',\n\t'content-length',\n\t'cookie',\n\t'cookie2',\n\t'date',\n\t'dnt',\n\t'expect',\n\t'host',\n\t'keep-alive',\n\t'origin',\n\t'referer',\n\t'te',\n\t'trailer',\n\t'transfer-encoding',\n\t'upgrade',\n\t'via'\n]\n", - "var capability = require('./capability')\nvar inherits = require('inherits')\nvar stream = require('readable-stream')\n\nvar rStates = exports.readyStates = {\n\tUNSENT: 0,\n\tOPENED: 1,\n\tHEADERS_RECEIVED: 2,\n\tLOADING: 3,\n\tDONE: 4\n}\n\nvar IncomingMessage = exports.IncomingMessage = function (xhr, response, mode, fetchTimer) {\n\tvar self = this\n\tstream.Readable.call(self)\n\n\tself._mode = mode\n\tself.headers = {}\n\tself.rawHeaders = []\n\tself.trailers = {}\n\tself.rawTrailers = []\n\n\t// Fake the 'close' event, but only once 'end' fires\n\tself.on('end', function () {\n\t\t// The nextTick is necessary to prevent the 'request' module from causing an infinite loop\n\t\tprocess.nextTick(function () {\n\t\t\tself.emit('close')\n\t\t})\n\t})\n\n\tif (mode === 'fetch') {\n\t\tself._fetchResponse = response\n\n\t\tself.url = response.url\n\t\tself.statusCode = response.status\n\t\tself.statusMessage = response.statusText\n\t\t\n\t\tresponse.headers.forEach(function (header, key){\n\t\t\tself.headers[key.toLowerCase()] = header\n\t\t\tself.rawHeaders.push(key, header)\n\t\t})\n\n\t\tif (capability.writableStream) {\n\t\t\tvar writable = new WritableStream({\n\t\t\t\twrite: function (chunk) {\n\t\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\t\tif (self._destroyed) {\n\t\t\t\t\t\t\treject()\n\t\t\t\t\t\t} else if(self.push(new Buffer(chunk))) {\n\t\t\t\t\t\t\tresolve()\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself._resumeFetch = resolve\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tclose: function () {\n\t\t\t\t\tglobal.clearTimeout(fetchTimer)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.push(null)\n\t\t\t\t},\n\t\t\t\tabort: function (err) {\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t}\n\t\t\t})\n\n\t\t\ttry {\n\t\t\t\tresponse.body.pipeTo(writable).catch(function (err) {\n\t\t\t\t\tglobal.clearTimeout(fetchTimer)\n\t\t\t\t\tif (!self._destroyed)\n\t\t\t\t\t\tself.emit('error', err)\n\t\t\t\t})\n\t\t\t\treturn\n\t\t\t} catch (e) {} // pipeTo method isn't defined. Can't find a better way to feature test this\n\t\t}\n\t\t// fallback for when writableStream or pipeTo aren't available\n\t\tvar reader = response.body.getReader()\n\t\tfunction read () {\n\t\t\treader.read().then(function (result) {\n\t\t\t\tif (self._destroyed)\n\t\t\t\t\treturn\n\t\t\t\tif (result.done) {\n\t\t\t\t\tglobal.clearTimeout(fetchTimer)\n\t\t\t\t\tself.push(null)\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tself.push(new Buffer(result.value))\n\t\t\t\tread()\n\t\t\t}).catch(function (err) {\n\t\t\t\tglobal.clearTimeout(fetchTimer)\n\t\t\t\tif (!self._destroyed)\n\t\t\t\t\tself.emit('error', err)\n\t\t\t})\n\t\t}\n\t\tread()\n\t} else {\n\t\tself._xhr = xhr\n\t\tself._pos = 0\n\n\t\tself.url = xhr.responseURL\n\t\tself.statusCode = xhr.status\n\t\tself.statusMessage = xhr.statusText\n\t\tvar headers = xhr.getAllResponseHeaders().split(/\\r?\\n/)\n\t\theaders.forEach(function (header) {\n\t\t\tvar matches = header.match(/^([^:]+):\\s*(.*)/)\n\t\t\tif (matches) {\n\t\t\t\tvar key = matches[1].toLowerCase()\n\t\t\t\tif (key === 'set-cookie') {\n\t\t\t\t\tif (self.headers[key] === undefined) {\n\t\t\t\t\t\tself.headers[key] = []\n\t\t\t\t\t}\n\t\t\t\t\tself.headers[key].push(matches[2])\n\t\t\t\t} else if (self.headers[key] !== undefined) {\n\t\t\t\t\tself.headers[key] += ', ' + matches[2]\n\t\t\t\t} else {\n\t\t\t\t\tself.headers[key] = matches[2]\n\t\t\t\t}\n\t\t\t\tself.rawHeaders.push(matches[1], matches[2])\n\t\t\t}\n\t\t})\n\n\t\tself._charset = 'x-user-defined'\n\t\tif (!capability.overrideMimeType) {\n\t\t\tvar mimeType = self.rawHeaders['mime-type']\n\t\t\tif (mimeType) {\n\t\t\t\tvar charsetMatch = mimeType.match(/;\\s*charset=([^;])(;|$)/)\n\t\t\t\tif (charsetMatch) {\n\t\t\t\t\tself._charset = charsetMatch[1].toLowerCase()\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!self._charset)\n\t\t\t\tself._charset = 'utf-8' // best guess\n\t\t}\n\t}\n}\n\ninherits(IncomingMessage, stream.Readable)\n\nIncomingMessage.prototype._read = function () {\n\tvar self = this\n\n\tvar resolve = self._resumeFetch\n\tif (resolve) {\n\t\tself._resumeFetch = null\n\t\tresolve()\n\t}\n}\n\nIncomingMessage.prototype._onXHRProgress = function () {\n\tvar self = this\n\n\tvar xhr = self._xhr\n\n\tvar response = null\n\tswitch (self._mode) {\n\t\tcase 'text:vbarray': // For IE9\n\t\t\tif (xhr.readyState !== rStates.DONE)\n\t\t\t\tbreak\n\t\t\ttry {\n\t\t\t\t// This fails in IE8\n\t\t\t\tresponse = new global.VBArray(xhr.responseBody).toArray()\n\t\t\t} catch (e) {}\n\t\t\tif (response !== null) {\n\t\t\t\tself.push(new Buffer(response))\n\t\t\t\tbreak\n\t\t\t}\n\t\t\t// Falls through in IE8\t\n\t\tcase 'text':\n\t\t\ttry { // This will fail when readyState = 3 in IE9. Switch mode and wait for readyState = 4\n\t\t\t\tresponse = xhr.responseText\n\t\t\t} catch (e) {\n\t\t\t\tself._mode = 'text:vbarray'\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tif (response.length > self._pos) {\n\t\t\t\tvar newData = response.substr(self._pos)\n\t\t\t\tif (self._charset === 'x-user-defined') {\n\t\t\t\t\tvar buffer = new Buffer(newData.length)\n\t\t\t\t\tfor (var i = 0; i < newData.length; i++)\n\t\t\t\t\t\tbuffer[i] = newData.charCodeAt(i) & 0xff\n\n\t\t\t\t\tself.push(buffer)\n\t\t\t\t} else {\n\t\t\t\t\tself.push(newData, self._charset)\n\t\t\t\t}\n\t\t\t\tself._pos = response.length\n\t\t\t}\n\t\t\tbreak\n\t\tcase 'arraybuffer':\n\t\t\tif (xhr.readyState !== rStates.DONE || !xhr.response)\n\t\t\t\tbreak\n\t\t\tresponse = xhr.response\n\t\t\tself.push(new Buffer(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'moz-chunked-arraybuffer': // take whole\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING || !response)\n\t\t\t\tbreak\n\t\t\tself.push(new Buffer(new Uint8Array(response)))\n\t\t\tbreak\n\t\tcase 'ms-stream':\n\t\t\tresponse = xhr.response\n\t\t\tif (xhr.readyState !== rStates.LOADING)\n\t\t\t\tbreak\n\t\t\tvar reader = new global.MSStreamReader()\n\t\t\treader.onprogress = function () {\n\t\t\t\tif (reader.result.byteLength > self._pos) {\n\t\t\t\t\tself.push(new Buffer(new Uint8Array(reader.result.slice(self._pos))))\n\t\t\t\t\tself._pos = reader.result.byteLength\n\t\t\t\t}\n\t\t\t}\n\t\t\treader.onload = function () {\n\t\t\t\tself.push(null)\n\t\t\t}\n\t\t\t// reader.onerror = ??? // TODO: this\n\t\t\treader.readAsArrayBuffer(response)\n\t\t\tbreak\n\t}\n\n\t// The ms-stream case handles end separately in reader.onload()\n\tif (self._xhr.readyState === rStates.DONE && self._mode !== 'ms-stream') {\n\t\tself.push(null)\n\t}\n}\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\n/**/\n\nvar isEncoding = Buffer.isEncoding || function (encoding) {\n encoding = '' + encoding;\n switch (encoding && encoding.toLowerCase()) {\n case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':\n return true;\n default:\n return false;\n }\n};\n\nfunction _normalizeEncoding(enc) {\n if (!enc) return 'utf8';\n var retried;\n while (true) {\n switch (enc) {\n case 'utf8':\n case 'utf-8':\n return 'utf8';\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return 'utf16le';\n case 'latin1':\n case 'binary':\n return 'latin1';\n case 'base64':\n case 'ascii':\n case 'hex':\n return enc;\n default:\n if (retried) return; // undefined\n enc = ('' + enc).toLowerCase();\n retried = true;\n }\n }\n};\n\n// Do not cache `Buffer.isEncoding` when checking encoding names as some\n// modules monkey-patch it to support additional encodings\nfunction normalizeEncoding(enc) {\n var nenc = _normalizeEncoding(enc);\n if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);\n return nenc || enc;\n}\n\n// StringDecoder provides an interface for efficiently splitting a series of\n// buffers into a series of JS strings without breaking apart multi-byte\n// characters.\nexports.StringDecoder = StringDecoder;\nfunction StringDecoder(encoding) {\n this.encoding = normalizeEncoding(encoding);\n var nb;\n switch (this.encoding) {\n case 'utf16le':\n this.text = utf16Text;\n this.end = utf16End;\n nb = 4;\n break;\n case 'utf8':\n this.fillLast = utf8FillLast;\n nb = 4;\n break;\n case 'base64':\n this.text = base64Text;\n this.end = base64End;\n nb = 3;\n break;\n default:\n this.write = simpleWrite;\n this.end = simpleEnd;\n return;\n }\n this.lastNeed = 0;\n this.lastTotal = 0;\n this.lastChar = Buffer.allocUnsafe(nb);\n}\n\nStringDecoder.prototype.write = function (buf) {\n if (buf.length === 0) return '';\n var r;\n var i;\n if (this.lastNeed) {\n r = this.fillLast(buf);\n if (r === undefined) return '';\n i = this.lastNeed;\n this.lastNeed = 0;\n } else {\n i = 0;\n }\n if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);\n return r || '';\n};\n\nStringDecoder.prototype.end = utf8End;\n\n// Returns only complete characters in a Buffer\nStringDecoder.prototype.text = utf8Text;\n\n// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer\nStringDecoder.prototype.fillLast = function (buf) {\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);\n this.lastNeed -= buf.length;\n};\n\n// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a\n// continuation byte. If an invalid byte is detected, -2 is returned.\nfunction utf8CheckByte(byte) {\n if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;\n return byte >> 6 === 0x02 ? -1 : -2;\n}\n\n// Checks at most 3 bytes at the end of a Buffer in order to detect an\n// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)\n// needed to complete the UTF-8 character (if applicable) are returned.\nfunction utf8CheckIncomplete(self, buf, i) {\n var j = buf.length - 1;\n if (j < i) return 0;\n var nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 1;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 2;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) {\n if (nb === 2) nb = 0;else self.lastNeed = nb - 3;\n }\n return nb;\n }\n return 0;\n}\n\n// Validates as many continuation bytes for a multi-byte UTF-8 character as\n// needed or are available. If we see a non-continuation byte where we expect\n// one, we \"replace\" the validated continuation bytes we've seen so far with\n// a single UTF-8 replacement character ('\\ufffd'), to match v8's UTF-8 decoding\n// behavior. The continuation byte check is included three times in the case\n// where all of the continuation bytes for a character exist in the same buffer.\n// It is also done this way as a slight performance increase instead of using a\n// loop.\nfunction utf8CheckExtraBytes(self, buf, p) {\n if ((buf[0] & 0xC0) !== 0x80) {\n self.lastNeed = 0;\n return '\\ufffd';\n }\n if (self.lastNeed > 1 && buf.length > 1) {\n if ((buf[1] & 0xC0) !== 0x80) {\n self.lastNeed = 1;\n return '\\ufffd';\n }\n if (self.lastNeed > 2 && buf.length > 2) {\n if ((buf[2] & 0xC0) !== 0x80) {\n self.lastNeed = 2;\n return '\\ufffd';\n }\n }\n }\n}\n\n// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.\nfunction utf8FillLast(buf) {\n var p = this.lastTotal - this.lastNeed;\n var r = utf8CheckExtraBytes(this, buf, p);\n if (r !== undefined) return r;\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, p, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, p, 0, buf.length);\n this.lastNeed -= buf.length;\n}\n\n// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a\n// partial character, the character's bytes are buffered until the required\n// number of bytes are available.\nfunction utf8Text(buf, i) {\n var total = utf8CheckIncomplete(this, buf, i);\n if (!this.lastNeed) return buf.toString('utf8', i);\n this.lastTotal = total;\n var end = buf.length - (total - this.lastNeed);\n buf.copy(this.lastChar, 0, end);\n return buf.toString('utf8', i, end);\n}\n\n// For UTF-8, a replacement character is added when ending on a partial\n// character.\nfunction utf8End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + '\\ufffd';\n return r;\n}\n\n// UTF-16LE typically needs two bytes per character, but even if we have an even\n// number of bytes available, we need to check if we end on a leading/high\n// surrogate. In that case, we need to wait for the next two bytes in order to\n// decode the last character properly.\nfunction utf16Text(buf, i) {\n if ((buf.length - i) % 2 === 0) {\n var r = buf.toString('utf16le', i);\n if (r) {\n var c = r.charCodeAt(r.length - 1);\n if (c >= 0xD800 && c <= 0xDBFF) {\n this.lastNeed = 2;\n this.lastTotal = 4;\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n return r.slice(0, -1);\n }\n }\n return r;\n }\n this.lastNeed = 1;\n this.lastTotal = 2;\n this.lastChar[0] = buf[buf.length - 1];\n return buf.toString('utf16le', i, buf.length - 1);\n}\n\n// For UTF-16LE we do not explicitly append special replacement characters if we\n// end on a partial character, we simply let v8 handle that.\nfunction utf16End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) {\n var end = this.lastTotal - this.lastNeed;\n return r + this.lastChar.toString('utf16le', 0, end);\n }\n return r;\n}\n\nfunction base64Text(buf, i) {\n var n = (buf.length - i) % 3;\n if (n === 0) return buf.toString('base64', i);\n this.lastNeed = 3 - n;\n this.lastTotal = 3;\n if (n === 1) {\n this.lastChar[0] = buf[buf.length - 1];\n } else {\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n }\n return buf.toString('base64', i, buf.length - n);\n}\n\nfunction base64End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);\n return r;\n}\n\n// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)\nfunction simpleWrite(buf) {\n return buf.toString(this.encoding);\n}\n\nfunction simpleEnd(buf) {\n return buf && buf.length ? this.write(buf) : '';\n}", - "var nextTick = require('process/browser.js').nextTick;\nvar apply = Function.prototype.apply;\nvar slice = Array.prototype.slice;\nvar immediateIds = {};\nvar nextImmediateId = 0;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) { timeout.close(); };\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// That's not how node.js implements it but the exposed api is the same.\nexports.setImmediate = typeof setImmediate === \"function\" ? setImmediate : function(fn) {\n var id = nextImmediateId++;\n var args = arguments.length < 2 ? false : slice.call(arguments, 1);\n\n immediateIds[id] = true;\n\n nextTick(function onNextTick() {\n if (immediateIds[id]) {\n // fn.call() is faster so we optimize for the common use-case\n // @see http://jsperf.com/call-apply-segu\n if (args) {\n fn.apply(null, args);\n } else {\n fn.call(null);\n }\n // Prevent ids from leaking\n exports.clearImmediate(id);\n }\n });\n\n return id;\n};\n\nexports.clearImmediate = typeof clearImmediate === \"function\" ? clearImmediate : function(id) {\n delete immediateIds[id];\n};", - "var Buffer = require('buffer').Buffer\n\nmodule.exports = function (buf) {\n\t// If the buffer is backed by a Uint8Array, a faster version will work\n\tif (buf instanceof Uint8Array) {\n\t\t// If the buffer isn't a subarray, return the underlying ArrayBuffer\n\t\tif (buf.byteOffset === 0 && buf.byteLength === buf.buffer.byteLength) {\n\t\t\treturn buf.buffer\n\t\t} else if (typeof buf.buffer.slice === 'function') {\n\t\t\t// Otherwise we need to get a proper copy\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength)\n\t\t}\n\t}\n\n\tif (Buffer.isBuffer(buf)) {\n\t\t// This is the slow version that will work with any Buffer\n\t\t// implementation (even in old browsers)\n\t\tvar arrayCopy = new Uint8Array(buf.length)\n\t\tvar len = buf.length\n\t\tfor (var i = 0; i < len; i++) {\n\t\t\tarrayCopy[i] = buf[i]\n\t\t}\n\t\treturn arrayCopy.buffer\n\t} else {\n\t\tthrow new Error('Argument must be a Buffer')\n\t}\n}\n", - "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar punycode = require('punycode');\nvar util = require('./util');\n\nexports.parse = urlParse;\nexports.resolve = urlResolve;\nexports.resolveObject = urlResolveObject;\nexports.format = urlFormat;\n\nexports.Url = Url;\n\nfunction Url() {\n this.protocol = null;\n this.slashes = null;\n this.auth = null;\n this.host = null;\n this.port = null;\n this.hostname = null;\n this.hash = null;\n this.search = null;\n this.query = null;\n this.pathname = null;\n this.path = null;\n this.href = null;\n}\n\n// Reference: RFC 3986, RFC 1808, RFC 2396\n\n// define these here so at least they only have to be\n// compiled once on the first module load.\nvar protocolPattern = /^([a-z0-9.+-]+:)/i,\n portPattern = /:[0-9]*$/,\n\n // Special case for a simple path URL\n simplePathPattern = /^(\\/\\/?(?!\\/)[^\\?\\s]*)(\\?[^\\s]*)?$/,\n\n // RFC 2396: characters reserved for delimiting URLs.\n // We actually just auto-escape these.\n delims = ['<', '>', '\"', '`', ' ', '\\r', '\\n', '\\t'],\n\n // RFC 2396: characters not allowed for various reasons.\n unwise = ['{', '}', '|', '\\\\', '^', '`'].concat(delims),\n\n // Allowed by RFCs, but cause of XSS attacks. Always escape these.\n autoEscape = ['\\''].concat(unwise),\n // Characters that are never ever allowed in a hostname.\n // Note that any invalid chars are also handled, but these\n // are the ones that are *expected* to be seen, so we fast-path\n // them.\n nonHostChars = ['%', '/', '?', ';', '#'].concat(autoEscape),\n hostEndingChars = ['/', '?', '#'],\n hostnameMaxLen = 255,\n hostnamePartPattern = /^[+a-z0-9A-Z_-]{0,63}$/,\n hostnamePartStart = /^([+a-z0-9A-Z_-]{0,63})(.*)$/,\n // protocols that can allow \"unsafe\" and \"unwise\" chars.\n unsafeProtocol = {\n 'javascript': true,\n 'javascript:': true\n },\n // protocols that never have a hostname.\n hostlessProtocol = {\n 'javascript': true,\n 'javascript:': true\n },\n // protocols that always contain a // bit.\n slashedProtocol = {\n 'http': true,\n 'https': true,\n 'ftp': true,\n 'gopher': true,\n 'file': true,\n 'http:': true,\n 'https:': true,\n 'ftp:': true,\n 'gopher:': true,\n 'file:': true\n },\n querystring = require('querystring');\n\nfunction urlParse(url, parseQueryString, slashesDenoteHost) {\n if (url && util.isObject(url) && url instanceof Url) return url;\n\n var u = new Url;\n u.parse(url, parseQueryString, slashesDenoteHost);\n return u;\n}\n\nUrl.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {\n if (!util.isString(url)) {\n throw new TypeError(\"Parameter 'url' must be a string, not \" + typeof url);\n }\n\n // Copy chrome, IE, opera backslash-handling behavior.\n // Back slashes before the query string get converted to forward slashes\n // See: https://code.google.com/p/chromium/issues/detail?id=25916\n var queryIndex = url.indexOf('?'),\n splitter =\n (queryIndex !== -1 && queryIndex < url.indexOf('#')) ? '?' : '#',\n uSplit = url.split(splitter),\n slashRegex = /\\\\/g;\n uSplit[0] = uSplit[0].replace(slashRegex, '/');\n url = uSplit.join(splitter);\n\n var rest = url;\n\n // trim before proceeding.\n // This is to support parse stuff like \" http://foo.com \\n\"\n rest = rest.trim();\n\n if (!slashesDenoteHost && url.split('#').length === 1) {\n // Try fast path regexp\n var simplePath = simplePathPattern.exec(rest);\n if (simplePath) {\n this.path = rest;\n this.href = rest;\n this.pathname = simplePath[1];\n if (simplePath[2]) {\n this.search = simplePath[2];\n if (parseQueryString) {\n this.query = querystring.parse(this.search.substr(1));\n } else {\n this.query = this.search.substr(1);\n }\n } else if (parseQueryString) {\n this.search = '';\n this.query = {};\n }\n return this;\n }\n }\n\n var proto = protocolPattern.exec(rest);\n if (proto) {\n proto = proto[0];\n var lowerProto = proto.toLowerCase();\n this.protocol = lowerProto;\n rest = rest.substr(proto.length);\n }\n\n // figure out if it's got a host\n // user@server is *always* interpreted as a hostname, and url\n // resolution will treat //foo/bar as host=foo,path=bar because that's\n // how the browser resolves relative URLs.\n if (slashesDenoteHost || proto || rest.match(/^\\/\\/[^@\\/]+@[^@\\/]+/)) {\n var slashes = rest.substr(0, 2) === '//';\n if (slashes && !(proto && hostlessProtocol[proto])) {\n rest = rest.substr(2);\n this.slashes = true;\n }\n }\n\n if (!hostlessProtocol[proto] &&\n (slashes || (proto && !slashedProtocol[proto]))) {\n\n // there's a hostname.\n // the first instance of /, ?, ;, or # ends the host.\n //\n // If there is an @ in the hostname, then non-host chars *are* allowed\n // to the left of the last @ sign, unless some host-ending character\n // comes *before* the @-sign.\n // URLs are obnoxious.\n //\n // ex:\n // http://a@b@c/ => user:a@b host:c\n // http://a@b?@c => user:a host:c path:/?@c\n\n // v0.12 TODO(isaacs): This is not quite how Chrome does things.\n // Review our test case against browsers more comprehensively.\n\n // find the first instance of any hostEndingChars\n var hostEnd = -1;\n for (var i = 0; i < hostEndingChars.length; i++) {\n var hec = rest.indexOf(hostEndingChars[i]);\n if (hec !== -1 && (hostEnd === -1 || hec < hostEnd))\n hostEnd = hec;\n }\n\n // at this point, either we have an explicit point where the\n // auth portion cannot go past, or the last @ char is the decider.\n var auth, atSign;\n if (hostEnd === -1) {\n // atSign can be anywhere.\n atSign = rest.lastIndexOf('@');\n } else {\n // atSign must be in auth portion.\n // http://a@b/c@d => host:b auth:a path:/c@d\n atSign = rest.lastIndexOf('@', hostEnd);\n }\n\n // Now we have a portion which is definitely the auth.\n // Pull that off.\n if (atSign !== -1) {\n auth = rest.slice(0, atSign);\n rest = rest.slice(atSign + 1);\n this.auth = decodeURIComponent(auth);\n }\n\n // the host is the remaining to the left of the first non-host char\n hostEnd = -1;\n for (var i = 0; i < nonHostChars.length; i++) {\n var hec = rest.indexOf(nonHostChars[i]);\n if (hec !== -1 && (hostEnd === -1 || hec < hostEnd))\n hostEnd = hec;\n }\n // if we still have not hit it, then the entire thing is a host.\n if (hostEnd === -1)\n hostEnd = rest.length;\n\n this.host = rest.slice(0, hostEnd);\n rest = rest.slice(hostEnd);\n\n // pull out port.\n this.parseHost();\n\n // we've indicated that there is a hostname,\n // so even if it's empty, it has to be present.\n this.hostname = this.hostname || '';\n\n // if hostname begins with [ and ends with ]\n // assume that it's an IPv6 address.\n var ipv6Hostname = this.hostname[0] === '[' &&\n this.hostname[this.hostname.length - 1] === ']';\n\n // validate a little.\n if (!ipv6Hostname) {\n var hostparts = this.hostname.split(/\\./);\n for (var i = 0, l = hostparts.length; i < l; i++) {\n var part = hostparts[i];\n if (!part) continue;\n if (!part.match(hostnamePartPattern)) {\n var newpart = '';\n for (var j = 0, k = part.length; j < k; j++) {\n if (part.charCodeAt(j) > 127) {\n // we replace non-ASCII char with a temporary placeholder\n // we need this to make sure size of hostname is not\n // broken by replacing non-ASCII by nothing\n newpart += 'x';\n } else {\n newpart += part[j];\n }\n }\n // we test again with ASCII char only\n if (!newpart.match(hostnamePartPattern)) {\n var validParts = hostparts.slice(0, i);\n var notHost = hostparts.slice(i + 1);\n var bit = part.match(hostnamePartStart);\n if (bit) {\n validParts.push(bit[1]);\n notHost.unshift(bit[2]);\n }\n if (notHost.length) {\n rest = '/' + notHost.join('.') + rest;\n }\n this.hostname = validParts.join('.');\n break;\n }\n }\n }\n }\n\n if (this.hostname.length > hostnameMaxLen) {\n this.hostname = '';\n } else {\n // hostnames are always lower case.\n this.hostname = this.hostname.toLowerCase();\n }\n\n if (!ipv6Hostname) {\n // IDNA Support: Returns a punycoded representation of \"domain\".\n // It only converts parts of the domain name that\n // have non-ASCII characters, i.e. it doesn't matter if\n // you call it with a domain that already is ASCII-only.\n this.hostname = punycode.toASCII(this.hostname);\n }\n\n var p = this.port ? ':' + this.port : '';\n var h = this.hostname || '';\n this.host = h + p;\n this.href += this.host;\n\n // strip [ and ] from the hostname\n // the host field still retains them, though\n if (ipv6Hostname) {\n this.hostname = this.hostname.substr(1, this.hostname.length - 2);\n if (rest[0] !== '/') {\n rest = '/' + rest;\n }\n }\n }\n\n // now rest is set to the post-host stuff.\n // chop off any delim chars.\n if (!unsafeProtocol[lowerProto]) {\n\n // First, make 100% sure that any \"autoEscape\" chars get\n // escaped, even if encodeURIComponent doesn't think they\n // need to be.\n for (var i = 0, l = autoEscape.length; i < l; i++) {\n var ae = autoEscape[i];\n if (rest.indexOf(ae) === -1)\n continue;\n var esc = encodeURIComponent(ae);\n if (esc === ae) {\n esc = escape(ae);\n }\n rest = rest.split(ae).join(esc);\n }\n }\n\n\n // chop off from the tail first.\n var hash = rest.indexOf('#');\n if (hash !== -1) {\n // got a fragment string.\n this.hash = rest.substr(hash);\n rest = rest.slice(0, hash);\n }\n var qm = rest.indexOf('?');\n if (qm !== -1) {\n this.search = rest.substr(qm);\n this.query = rest.substr(qm + 1);\n if (parseQueryString) {\n this.query = querystring.parse(this.query);\n }\n rest = rest.slice(0, qm);\n } else if (parseQueryString) {\n // no query string, but parseQueryString still requested\n this.search = '';\n this.query = {};\n }\n if (rest) this.pathname = rest;\n if (slashedProtocol[lowerProto] &&\n this.hostname && !this.pathname) {\n this.pathname = '/';\n }\n\n //to support http.request\n if (this.pathname || this.search) {\n var p = this.pathname || '';\n var s = this.search || '';\n this.path = p + s;\n }\n\n // finally, reconstruct the href based on what has been validated.\n this.href = this.format();\n return this;\n};\n\n// format a parsed object into a url string\nfunction urlFormat(obj) {\n // ensure it's an object, and not a string url.\n // If it's an obj, this is a no-op.\n // this way, you can call url_format() on strings\n // to clean up potentially wonky urls.\n if (util.isString(obj)) obj = urlParse(obj);\n if (!(obj instanceof Url)) return Url.prototype.format.call(obj);\n return obj.format();\n}\n\nUrl.prototype.format = function() {\n var auth = this.auth || '';\n if (auth) {\n auth = encodeURIComponent(auth);\n auth = auth.replace(/%3A/i, ':');\n auth += '@';\n }\n\n var protocol = this.protocol || '',\n pathname = this.pathname || '',\n hash = this.hash || '',\n host = false,\n query = '';\n\n if (this.host) {\n host = auth + this.host;\n } else if (this.hostname) {\n host = auth + (this.hostname.indexOf(':') === -1 ?\n this.hostname :\n '[' + this.hostname + ']');\n if (this.port) {\n host += ':' + this.port;\n }\n }\n\n if (this.query &&\n util.isObject(this.query) &&\n Object.keys(this.query).length) {\n query = querystring.stringify(this.query);\n }\n\n var search = this.search || (query && ('?' + query)) || '';\n\n if (protocol && protocol.substr(-1) !== ':') protocol += ':';\n\n // only the slashedProtocols get the //. Not mailto:, xmpp:, etc.\n // unless they had them to begin with.\n if (this.slashes ||\n (!protocol || slashedProtocol[protocol]) && host !== false) {\n host = '//' + (host || '');\n if (pathname && pathname.charAt(0) !== '/') pathname = '/' + pathname;\n } else if (!host) {\n host = '';\n }\n\n if (hash && hash.charAt(0) !== '#') hash = '#' + hash;\n if (search && search.charAt(0) !== '?') search = '?' + search;\n\n pathname = pathname.replace(/[?#]/g, function(match) {\n return encodeURIComponent(match);\n });\n search = search.replace('#', '%23');\n\n return protocol + host + pathname + search + hash;\n};\n\nfunction urlResolve(source, relative) {\n return urlParse(source, false, true).resolve(relative);\n}\n\nUrl.prototype.resolve = function(relative) {\n return this.resolveObject(urlParse(relative, false, true)).format();\n};\n\nfunction urlResolveObject(source, relative) {\n if (!source) return relative;\n return urlParse(source, false, true).resolveObject(relative);\n}\n\nUrl.prototype.resolveObject = function(relative) {\n if (util.isString(relative)) {\n var rel = new Url();\n rel.parse(relative, false, true);\n relative = rel;\n }\n\n var result = new Url();\n var tkeys = Object.keys(this);\n for (var tk = 0; tk < tkeys.length; tk++) {\n var tkey = tkeys[tk];\n result[tkey] = this[tkey];\n }\n\n // hash is always overridden, no matter what.\n // even href=\"\" will remove it.\n result.hash = relative.hash;\n\n // if the relative url is empty, then there's nothing left to do here.\n if (relative.href === '') {\n result.href = result.format();\n return result;\n }\n\n // hrefs like //foo/bar always cut to the protocol.\n if (relative.slashes && !relative.protocol) {\n // take everything except the protocol from relative\n var rkeys = Object.keys(relative);\n for (var rk = 0; rk < rkeys.length; rk++) {\n var rkey = rkeys[rk];\n if (rkey !== 'protocol')\n result[rkey] = relative[rkey];\n }\n\n //urlParse appends trailing / to urls like http://www.example.com\n if (slashedProtocol[result.protocol] &&\n result.hostname && !result.pathname) {\n result.path = result.pathname = '/';\n }\n\n result.href = result.format();\n return result;\n }\n\n if (relative.protocol && relative.protocol !== result.protocol) {\n // if it's a known url protocol, then changing\n // the protocol does weird things\n // first, if it's not file:, then we MUST have a host,\n // and if there was a path\n // to begin with, then we MUST have a path.\n // if it is file:, then the host is dropped,\n // because that's known to be hostless.\n // anything else is assumed to be absolute.\n if (!slashedProtocol[relative.protocol]) {\n var keys = Object.keys(relative);\n for (var v = 0; v < keys.length; v++) {\n var k = keys[v];\n result[k] = relative[k];\n }\n result.href = result.format();\n return result;\n }\n\n result.protocol = relative.protocol;\n if (!relative.host && !hostlessProtocol[relative.protocol]) {\n var relPath = (relative.pathname || '').split('/');\n while (relPath.length && !(relative.host = relPath.shift()));\n if (!relative.host) relative.host = '';\n if (!relative.hostname) relative.hostname = '';\n if (relPath[0] !== '') relPath.unshift('');\n if (relPath.length < 2) relPath.unshift('');\n result.pathname = relPath.join('/');\n } else {\n result.pathname = relative.pathname;\n }\n result.search = relative.search;\n result.query = relative.query;\n result.host = relative.host || '';\n result.auth = relative.auth;\n result.hostname = relative.hostname || relative.host;\n result.port = relative.port;\n // to support http.request\n if (result.pathname || result.search) {\n var p = result.pathname || '';\n var s = result.search || '';\n result.path = p + s;\n }\n result.slashes = result.slashes || relative.slashes;\n result.href = result.format();\n return result;\n }\n\n var isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/'),\n isRelAbs = (\n relative.host ||\n relative.pathname && relative.pathname.charAt(0) === '/'\n ),\n mustEndAbs = (isRelAbs || isSourceAbs ||\n (result.host && relative.pathname)),\n removeAllDots = mustEndAbs,\n srcPath = result.pathname && result.pathname.split('/') || [],\n relPath = relative.pathname && relative.pathname.split('/') || [],\n psychotic = result.protocol && !slashedProtocol[result.protocol];\n\n // if the url is a non-slashed url, then relative\n // links like ../.. should be able\n // to crawl up to the hostname, as well. This is strange.\n // result.protocol has already been set by now.\n // Later on, put the first path part into the host field.\n if (psychotic) {\n result.hostname = '';\n result.port = null;\n if (result.host) {\n if (srcPath[0] === '') srcPath[0] = result.host;\n else srcPath.unshift(result.host);\n }\n result.host = '';\n if (relative.protocol) {\n relative.hostname = null;\n relative.port = null;\n if (relative.host) {\n if (relPath[0] === '') relPath[0] = relative.host;\n else relPath.unshift(relative.host);\n }\n relative.host = null;\n }\n mustEndAbs = mustEndAbs && (relPath[0] === '' || srcPath[0] === '');\n }\n\n if (isRelAbs) {\n // it's absolute.\n result.host = (relative.host || relative.host === '') ?\n relative.host : result.host;\n result.hostname = (relative.hostname || relative.hostname === '') ?\n relative.hostname : result.hostname;\n result.search = relative.search;\n result.query = relative.query;\n srcPath = relPath;\n // fall through to the dot-handling below.\n } else if (relPath.length) {\n // it's relative\n // throw away the existing file, and take the new path instead.\n if (!srcPath) srcPath = [];\n srcPath.pop();\n srcPath = srcPath.concat(relPath);\n result.search = relative.search;\n result.query = relative.query;\n } else if (!util.isNullOrUndefined(relative.search)) {\n // just pull out the search.\n // like href='?foo'.\n // Put this after the other two cases because it simplifies the booleans\n if (psychotic) {\n result.hostname = result.host = srcPath.shift();\n //occationaly the auth can get stuck only in host\n //this especially happens in cases like\n //url.resolveObject('mailto:local1@domain1', 'local2@domain2')\n var authInHost = result.host && result.host.indexOf('@') > 0 ?\n result.host.split('@') : false;\n if (authInHost) {\n result.auth = authInHost.shift();\n result.host = result.hostname = authInHost.shift();\n }\n }\n result.search = relative.search;\n result.query = relative.query;\n //to support http.request\n if (!util.isNull(result.pathname) || !util.isNull(result.search)) {\n result.path = (result.pathname ? result.pathname : '') +\n (result.search ? result.search : '');\n }\n result.href = result.format();\n return result;\n }\n\n if (!srcPath.length) {\n // no path at all. easy.\n // we've already handled the other stuff above.\n result.pathname = null;\n //to support http.request\n if (result.search) {\n result.path = '/' + result.search;\n } else {\n result.path = null;\n }\n result.href = result.format();\n return result;\n }\n\n // if a url ENDs in . or .., then it must get a trailing slash.\n // however, if it ends in anything else non-slashy,\n // then it must NOT get a trailing slash.\n var last = srcPath.slice(-1)[0];\n var hasTrailingSlash = (\n (result.host || relative.host || srcPath.length > 1) &&\n (last === '.' || last === '..') || last === '');\n\n // strip single dots, resolve double dots to parent dir\n // if the path tries to go above the root, `up` ends up > 0\n var up = 0;\n for (var i = srcPath.length; i >= 0; i--) {\n last = srcPath[i];\n if (last === '.') {\n srcPath.splice(i, 1);\n } else if (last === '..') {\n srcPath.splice(i, 1);\n up++;\n } else if (up) {\n srcPath.splice(i, 1);\n up--;\n }\n }\n\n // if the path is allowed to go above the root, restore leading ..s\n if (!mustEndAbs && !removeAllDots) {\n for (; up--; up) {\n srcPath.unshift('..');\n }\n }\n\n if (mustEndAbs && srcPath[0] !== '' &&\n (!srcPath[0] || srcPath[0].charAt(0) !== '/')) {\n srcPath.unshift('');\n }\n\n if (hasTrailingSlash && (srcPath.join('/').substr(-1) !== '/')) {\n srcPath.push('');\n }\n\n var isAbsolute = srcPath[0] === '' ||\n (srcPath[0] && srcPath[0].charAt(0) === '/');\n\n // put the host back\n if (psychotic) {\n result.hostname = result.host = isAbsolute ? '' :\n srcPath.length ? srcPath.shift() : '';\n //occationaly the auth can get stuck only in host\n //this especially happens in cases like\n //url.resolveObject('mailto:local1@domain1', 'local2@domain2')\n var authInHost = result.host && result.host.indexOf('@') > 0 ?\n result.host.split('@') : false;\n if (authInHost) {\n result.auth = authInHost.shift();\n result.host = result.hostname = authInHost.shift();\n }\n }\n\n mustEndAbs = mustEndAbs || (result.host && srcPath.length);\n\n if (mustEndAbs && !isAbsolute) {\n srcPath.unshift('');\n }\n\n if (!srcPath.length) {\n result.pathname = null;\n result.path = null;\n } else {\n result.pathname = srcPath.join('/');\n }\n\n //to support request.http\n if (!util.isNull(result.pathname) || !util.isNull(result.search)) {\n result.path = (result.pathname ? result.pathname : '') +\n (result.search ? result.search : '');\n }\n result.auth = relative.auth || result.auth;\n result.slashes = result.slashes || relative.slashes;\n result.href = result.format();\n return result;\n};\n\nUrl.prototype.parseHost = function() {\n var host = this.host;\n var port = portPattern.exec(host);\n if (port) {\n port = port[0];\n if (port !== ':') {\n this.port = port.substr(1);\n }\n host = host.substr(0, host.length - port.length);\n }\n if (host) this.hostname = host;\n};\n", - "'use strict';\n\nmodule.exports = {\n isString: function(arg) {\n return typeof(arg) === 'string';\n },\n isObject: function(arg) {\n return typeof(arg) === 'object' && arg !== null;\n },\n isNull: function(arg) {\n return arg === null;\n },\n isNullOrUndefined: function(arg) {\n return arg == null;\n }\n};\n", - "\n/**\n * Module exports.\n */\n\nmodule.exports = deprecate;\n\n/**\n * Mark that a method should not be used.\n * Returns a modified function which warns once by default.\n *\n * If `localStorage.noDeprecation = true` is set, then it is a no-op.\n *\n * If `localStorage.throwDeprecation = true` is set, then deprecated functions\n * will throw an Error when invoked.\n *\n * If `localStorage.traceDeprecation = true` is set, then deprecated functions\n * will invoke `console.trace()` instead of `console.error()`.\n *\n * @param {Function} fn - the function to deprecate\n * @param {String} msg - the string to print to the console when `fn` is invoked\n * @returns {Function} a new \"deprecated\" version of `fn`\n * @api public\n */\n\nfunction deprecate (fn, msg) {\n if (config('noDeprecation')) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (config('throwDeprecation')) {\n throw new Error(msg);\n } else if (config('traceDeprecation')) {\n console.trace(msg);\n } else {\n console.warn(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n}\n\n/**\n * Checks `localStorage` for boolean values for the given `name`.\n *\n * @param {String} name\n * @returns {Boolean}\n * @api private\n */\n\nfunction config (name) {\n // accessing global.localStorage can trigger a DOMException in sandboxed iframes\n try {\n if (!global.localStorage) return false;\n } catch (_) {\n return false;\n }\n var val = global.localStorage[name];\n if (null == val) return false;\n return String(val).toLowerCase() === 'true';\n}\n", - "module.exports = extend\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction extend() {\n var target = {}\n\n for (var i = 0; i < arguments.length; i++) {\n var source = arguments[i]\n\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n\n return target\n}\n" - ] -} \ No newline at end of file diff --git a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.min.js b/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.min.js deleted file mode 100644 index 8077ce1..0000000 --- a/forward_engineering/node_modules/json-schema-ref-parser/dist/ref-parser.min.js +++ /dev/null @@ -1,27 +0,0 @@ -/*! - * JSON Schema $Ref Parser v6.1.0 (February 21st 2019) - * - * https://apidevtools.org/json-schema-ref-parser/ - * - * @author James Messinger (https://jamesmessinger.com) - * @license MIT - */ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.$RefParser=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0?u:s;plugins.sort(i),plugins.run(i,"parse",r).then(function(n){!n.plugin.allowEmpty&&isEmpty(n.result)?t(ono.syntax('Error parsing "%s" as %s. \nParsed value is empty',r.url,n.plugin.name)):e(n)},function(n){n?(n=n instanceof Error?n:new Error(n),t(ono.syntax(n,"Error parsing %s",r.url))):t(ono.syntax("Unable to parse %s",r.url))})})}function isEmpty(r){return void 0===r||"object"==typeof r&&0===Object.keys(r).length||"string"==typeof r&&0===r.trim().length||Buffer.isBuffer(r)&&0===r.length}module.exports=parse}).call(this,{isBuffer:require("../node_modules/is-buffer/index.js")})},{"../node_modules/is-buffer/index.js":32,"./util/plugins":17,"./util/url":18,ono:64}],7:[function(require,module,exports){(function(Buffer){"use strict";var BINARY_REGEXP=/\.(jpeg|jpg|gif|png|bmp|ico)$/i;module.exports={order:400,allowEmpty:!0,canParse:function(r){return Buffer.isBuffer(r.data)&&BINARY_REGEXP.test(r.url)},parse:function(r){return Buffer.isBuffer(r.data)?r.data:new Buffer(r.data)}}}).call(this,require("buffer").Buffer)},{buffer:23}],8:[function(require,module,exports){(function(Buffer){"use strict";module.exports={order:100,allowEmpty:!0,canParse:".json",parse:function(r){return new Promise(function(e,t){var n=r.data;Buffer.isBuffer(n)&&(n=n.toString()),"string"==typeof n?0===n.trim().length?e(void 0):e(JSON.parse(n)):e(n)})}}}).call(this,{isBuffer:require("../../node_modules/is-buffer/index.js")})},{"../../node_modules/is-buffer/index.js":32}],9:[function(require,module,exports){(function(Buffer){"use strict";var TEXT_REGEXP=/\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i;module.exports={order:300,allowEmpty:!0,encoding:"utf8",canParse:function(t){return("string"==typeof t.data||Buffer.isBuffer(t.data))&&TEXT_REGEXP.test(t.url)},parse:function(t){if("string"==typeof t.data)return t.data;if(Buffer.isBuffer(t.data))return t.data.toString(this.encoding);throw new Error("data is not text")}}}).call(this,{isBuffer:require("../../node_modules/is-buffer/index.js")})},{"../../node_modules/is-buffer/index.js":32}],10:[function(require,module,exports){(function(Buffer){"use strict";var YAML=require("../util/yaml");module.exports={order:200,allowEmpty:!0,canParse:[".yaml",".yml",".json"],parse:function(r){return new Promise(function(e,t){var a=r.data;Buffer.isBuffer(a)&&(a=a.toString()),e("string"==typeof a?YAML.parse(a):a)})}}}).call(this,{isBuffer:require("../../node_modules/is-buffer/index.js")})},{"../../node_modules/is-buffer/index.js":32,"../util/yaml":19}],11:[function(require,module,exports){"use strict";module.exports=Pointer;var $Ref=require("./ref"),url=require("./util/url"),ono=require("ono"),slashes=/\//g,tildes=/~/g,escapedSlash=/~1/g,escapedTilde=/~0/g;function Pointer(e,r,t){this.$ref=e,this.path=r,this.originalPath=t||r,this.value=void 0,this.circular=!1,this.indirections=0}function resolveIf$Ref(e,r){if($Ref.isAllowed$Ref(e.value,r)){var t=url.resolve(e.path,e.value.$ref);if(t!==e.path){var i=e.$ref.$refs._resolve(t,r);return e.indirections+=i.indirections+1,$Ref.isExtended$Ref(e.value)?(e.value=$Ref.dereference(e.value,i.value),!1):(e.$ref=i.$ref,e.path=i.path,e.value=i.value,!0)}e.circular=!0}}function setValue(e,r,t){if(!e.value||"object"!=typeof e.value)throw ono.syntax('Error assigning $ref pointer "%s". \nCannot set "%s" of a non-object.',e.path,r);return"-"===r&&Array.isArray(e.value)?e.value.push(t):e.value[r]=t,t}Pointer.prototype.resolve=function(e,r){var t=Pointer.parse(this.path);this.value=e;for(var i=0;i0},$Ref.isExternal$Ref=function(e){return $Ref.is$Ref(e)&&"#"!==e.$ref[0]},$Ref.isAllowed$Ref=function(e,t){if($Ref.is$Ref(e)){if("#/"===e.$ref.substr(0,2)||"#"===e.$ref)return!0;if("#"!==e.$ref[0]&&(!t||t.resolve.external))return!0}},$Ref.isExtended$Ref=function(e){return $Ref.is$Ref(e)&&Object.keys(e).length>1},$Ref.dereference=function(e,t){if(t&&"object"==typeof t&&$Ref.isExtended$Ref(e)){var r={};return Object.keys(e).forEach(function(t){"$ref"!==t&&(r[t]=e[t])}),Object.keys(t).forEach(function(e){e in r||(r[e]=t[e])}),r}return t}},{"./pointer":11}],13:[function(require,module,exports){"use strict";var ono=require("ono"),$Ref=require("./ref"),url=require("./util/url");function $Refs(){this.circular=!1,this._$refs={},this._root$Ref=null}function getPaths(e,r){var t=Object.keys(e);return(r=Array.isArray(r[0])?r[0]:Array.prototype.slice.call(r)).length>0&&r[0]&&(t=t.filter(function(t){return-1!==r.indexOf(e[t].pathType)})),t.map(function(r){return{encoded:r,decoded:"file"===e[r].pathType?url.toFileSystemPath(r,!0):r}})}module.exports=$Refs,$Refs.prototype.paths=function(e){return getPaths(this._$refs,arguments).map(function(e){return e.decoded})},$Refs.prototype.values=function(e){var r=this._$refs;return getPaths(r,arguments).reduce(function(e,t){return e[t.decoded]=r[t.encoded].value,e},{})},$Refs.prototype.toJSON=$Refs.prototype.values,$Refs.prototype.exists=function(e,r){try{return this._resolve(e,r),!0}catch(e){return!1}},$Refs.prototype.get=function(e,r){return this._resolve(e,r).value},$Refs.prototype.set=function(e,r){var t=url.resolve(this._root$Ref.path,e),o=url.stripHash(t),s=this._$refs[o];if(!s)throw ono('Error resolving $ref pointer "%s". \n"%s" not found.',e,o);s.set(t,r)},$Refs.prototype._add=function(e){var r=url.stripHash(e),t=new $Ref;return t.path=r,t.$refs=this,this._$refs[r]=t,this._root$Ref=this._root$Ref||t,t},$Refs.prototype._resolve=function(e,r){var t=url.resolve(this._root$Ref.path,e),o=url.stripHash(t),s=this._$refs[o];if(!s)throw ono('Error resolving $ref pointer "%s". \n"%s" not found.',e,o);return s.resolve(t,r,e)},$Refs.prototype._get$Ref=function(e){e=url.resolve(this._root$Ref.path,e);var r=url.stripHash(e);return this._$refs[r]}},{"./ref":12,"./util/url":18,ono:64}],14:[function(require,module,exports){"use strict";var $Ref=require("./ref"),Pointer=require("./pointer"),parse=require("./parse"),url=require("./util/url");function resolveExternal(e,r){if(!r.resolve.external)return Promise.resolve();try{var t=crawl(e.schema,e.$refs._root$Ref.path+"#",e.$refs,r);return Promise.all(t)}catch(e){return Promise.reject(e)}}function crawl(e,r,t,o){var s=[];return e&&"object"==typeof e&&($Ref.isExternal$Ref(e)?s.push(resolve$Ref(e,r,t,o)):Object.keys(e).forEach(function(l){var a=Pointer.join(r,l),n=e[l];$Ref.isExternal$Ref(n)?s.push(resolve$Ref(n,a,t,o)):s=s.concat(crawl(n,a,t,o))})),s}function resolve$Ref(e,r,t,o){var s=url.resolve(r,e.$ref),l=url.stripHash(s);return(e=t._$refs[l])?Promise.resolve(e.value):parse(s,t,o).then(function(e){var r=crawl(e,l+"#",t,o);return Promise.all(r)})}module.exports=resolveExternal},{"./parse":6,"./pointer":11,"./ref":12,"./util/url":18}],15:[function(require,module,exports){"use strict";var fs=require("fs"),ono=require("ono"),url=require("../util/url");module.exports={order:100,canRead:function(r){return url.isFileSystemPath(r.url)},read:function(r){return new Promise(function(e,o){var n;try{n=url.toFileSystemPath(r.url)}catch(e){o(ono.uri(e,"Malformed URI: %s",r.url))}try{fs.readFile(n,function(r,u){r?o(ono(r,'Error opening file "%s"',n)):e(u)})}catch(r){o(ono(r,'Error opening file "%s"',n))}})}}},{"../util/url":18,fs:21,ono:64}],16:[function(require,module,exports){(function(process,Buffer){"use strict";var http=require("http"),https=require("https"),ono=require("ono"),url=require("../util/url");function download(t,o,e){return new Promise(function(r,n){t=url.parse(t),(e=e||[]).push(t.href),get(t,o).then(function(s){if(s.statusCode>=400)throw ono({status:s.statusCode},"HTTP ERROR %d",s.statusCode);if(s.statusCode>=300)if(e.length>o.redirects)n(ono({status:s.statusCode},"Error downloading %s. \nToo many redirects: \n %s",e[0],e.join(" \n ")));else{if(!s.headers.location)throw ono({status:s.statusCode},"HTTP %d redirect with no location header",s.statusCode);download(url.resolve(t,s.headers.location),o,e).then(r,n)}else r(s.body||new Buffer(0))}).catch(function(o){n(ono(o,"Error downloading",t.href))})})}function get(t,o){return new Promise(function(e,r){var n=("https:"===t.protocol?https:http).get({hostname:t.hostname,port:t.port,path:t.path,auth:t.auth,protocol:t.protocol,headers:o.headers||{},withCredentials:o.withCredentials});"function"==typeof n.setTimeout&&n.setTimeout(o.timeout),n.on("timeout",function(){n.abort()}),n.on("error",r),n.once("response",function(t){t.body=new Buffer(0),t.on("data",function(o){t.body=Buffer.concat([t.body,new Buffer(o)])}),t.on("error",r),t.on("end",function(){e(t)})})})}module.exports={order:200,headers:null,timeout:5e3,redirects:5,withCredentials:!1,canRead:function(t){return url.isHttp(t.url)},read:function(t){var o=url.parse(t.url);return process.browser&&!o.protocol&&(o.protocol=url.parse(location.href).protocol),download(o,this)}}}).call(this,require("_process"),require("buffer").Buffer)},{"../util/url":18,_process:66,buffer:23,http:80,https:29,ono:64}],17:[function(require,module,exports){"use strict";function getResult(t,n,r,e){var u=t[n];if("function"==typeof u)return u.apply(t,[r,e]);if(!e){if(u instanceof RegExp)return u.test(r.url);if("string"==typeof u)return u===r.extension;if(Array.isArray(u))return-1!==u.indexOf(r.extension)}return u}exports.all=function(t){return Object.keys(t).filter(function(n){return"object"==typeof t[n]}).map(function(n){return t[n].name=n,t[n]})},exports.filter=function(t,n,r){return t.filter(function(t){return!!getResult(t,n,r)})},exports.sort=function(t){return t.forEach(function(t){t.order=t.order||Number.MAX_SAFE_INTEGER}),t.sort(function(t,n){return t.order-n.order})},exports.run=function(t,n,r){var e,u,o=0;return new Promise(function(i,f){function c(){if(!(e=t[o++]))return f(u);try{var i=getResult(e,n,r,s);i&&"function"==typeof i.then?i.then(p,a):void 0!==i&&p(i)}catch(t){a(t)}}function s(t,n){t?a(t):p(n)}function p(t){i({plugin:e,result:t})}function a(t){u=t,c()}c()})}},{}],18:[function(require,module,exports){(function(process){"use strict";var isWindows=/^win/.test(process.platform),forwardSlashPattern=/\//g,protocolPattern=/^(\w{2,}):\/\//i,url=module.exports,urlEncodePatterns=[/\?/g,"%3F",/\#/g,"%23"],urlDecodePatterns=[/\%23/g,"#",/\%24/g,"$",/\%26/g,"&",/\%2C/g,",",/\%40/g,"@"];exports.parse=require("url").parse,exports.resolve=require("url").resolve,exports.cwd=function(){return process.browser?location.href:process.cwd()+"/"},exports.getProtocol=function(r){var e=protocolPattern.exec(r);if(e)return e[1].toLowerCase()},exports.getExtension=function(r){var e=r.lastIndexOf(".");return e>=0?r.substr(e).toLowerCase():""},exports.getHash=function(r){var e=r.indexOf("#");return e>=0?r.substr(e):"#"},exports.stripHash=function(r){var e=r.indexOf("#");return e>=0&&(r=r.substr(0,e)),r},exports.isHttp=function(r){var e=url.getProtocol(r);return"http"===e||"https"===e||void 0===e&&process.browser},exports.isFileSystemPath=function(r){if(process.browser)return!1;var e=url.getProtocol(r);return void 0===e||"file"===e},exports.fromFileSystemPath=function(r){isWindows&&(r=r.replace(/\\/g,"/")),r=encodeURI(r);for(var e=0;e0)throw new Error("Invalid string. Length must be a multiple of 4");var e=o.indexOf("=");return-1===e&&(e=r),[e,e===r?0:4-e%4]}function byteLength(o){var r=getLens(o),e=r[0],t=r[1];return 3*(e+t)/4-t}function _byteLength(o,r,e){return 3*(r+e)/4-e}function toByteArray(o){for(var r,e=getLens(o),t=e[0],n=e[1],u=new Arr(_byteLength(o,t,n)),p=0,a=n>0?t-4:t,h=0;h>16&255,u[p++]=r>>8&255,u[p++]=255&r;return 2===n&&(r=revLookup[o.charCodeAt(h)]<<2|revLookup[o.charCodeAt(h+1)]>>4,u[p++]=255&r),1===n&&(r=revLookup[o.charCodeAt(h)]<<10|revLookup[o.charCodeAt(h+1)]<<4|revLookup[o.charCodeAt(h+2)]>>2,u[p++]=r>>8&255,u[p++]=255&r),u}function tripletToBase64(o){return lookup[o>>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[63&o]}function encodeChunk(o,r,e){for(var t,n=[],u=r;up?p:u+16383));return 1===t?(r=o[e-1],n.push(lookup[r>>2]+lookup[r<<4&63]+"==")):2===t&&(r=(o[e-2]<<8)+o[e-1],n.push(lookup[r>>10]+lookup[r>>4&63]+lookup[r<<2&63]+"=")),n.join("")}revLookup["-".charCodeAt(0)]=62,revLookup["_".charCodeAt(0)]=63},{}],21:[function(require,module,exports){},{}],22:[function(require,module,exports){(function(global){ -/*! https://mths.be/punycode v1.4.1 by @mathias */ -!function(e){var o="object"==typeof exports&&exports&&!exports.nodeType&&exports,n="object"==typeof module&&module&&!module.nodeType&&module,t="object"==typeof global&&global;t.global!==t&&t.window!==t&&t.self!==t||(e=t);var r,u,i=2147483647,f=36,c=1,l=26,s=38,d=700,p=72,a=128,h="-",v=/^xn--/,g=/[^\x20-\x7E]/,w=/[\x2E\u3002\uFF0E\uFF61]/g,x={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},b=f-c,y=Math.floor,C=String.fromCharCode;function m(e){throw new RangeError(x[e])}function j(e,o){for(var n=e.length,t=[];n--;)t[n]=o(e[n]);return t}function A(e,o){var n=e.split("@"),t="";return n.length>1&&(t=n[0]+"@",e=n[1]),t+j((e=e.replace(w,".")).split("."),o).join(".")}function I(e){for(var o,n,t=[],r=0,u=e.length;r=55296&&o<=56319&&r65535&&(o+=C((e-=65536)>>>10&1023|55296),e=56320|1023&e),o+=C(e)}).join("")}function F(e,o){return e+22+75*(e<26)-((0!=o)<<5)}function O(e,o,n){var t=0;for(e=n?y(e/d):e>>1,e+=y(e/o);e>b*l>>1;t+=f)e=y(e/b);return y(t+(b+1)*e/(e+s))}function S(e){var o,n,t,r,u,s,d,v,g,w,x,b=[],C=e.length,j=0,A=a,I=p;for((n=e.lastIndexOf(h))<0&&(n=0),t=0;t=128&&m("not-basic"),b.push(e.charCodeAt(t));for(r=n>0?n+1:0;r=C&&m("invalid-input"),((v=(x=e.charCodeAt(r++))-48<10?x-22:x-65<26?x-65:x-97<26?x-97:f)>=f||v>y((i-j)/s))&&m("overflow"),j+=v*s,!(v<(g=d<=I?c:d>=I+l?l:d-I));d+=f)s>y(i/(w=f-g))&&m("overflow"),s*=w;I=O(j-u,o=b.length+1,0==u),y(j/o)>i-A&&m("overflow"),A+=y(j/o),j%=o,b.splice(j++,0,A)}return E(b)}function T(e){var o,n,t,r,u,s,d,v,g,w,x,b,j,A,E,S=[];for(b=(e=I(e)).length,o=a,n=0,u=p,s=0;s=o&&xy((i-n)/(j=t+1))&&m("overflow"),n+=(d-o)*j,o=d,s=0;si&&m("overflow"),x==o){for(v=n,g=f;!(v<(w=g<=u?c:g>=u+l?l:g-u));g+=f)E=v-w,A=f-w,S.push(C(F(w+E%A,0))),v=y(E/A);S.push(C(F(v,0))),u=O(n,j,t==r),n=0,++t}++n,++o}return S.join("")}if(r={version:"1.4.1",ucs2:{decode:I,encode:E},decode:S,encode:T,toASCII:function(e){return A(e,function(e){return g.test(e)?"xn--"+T(e):e})},toUnicode:function(e){return A(e,function(e){return v.test(e)?S(e.slice(4).toLowerCase()):e})}},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return r});else if(o&&n)if(module.exports==o)n.exports=r;else for(u in r)r.hasOwnProperty(u)&&(o[u]=r[u]);else e.punycode=r}(this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],23:[function(require,module,exports){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -"use strict";var base64=require("base64-js"),ieee754=require("ieee754");exports.Buffer=Buffer,exports.SlowBuffer=SlowBuffer,exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;function typedArraySupport(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()}catch(e){return!1}}function createBuffer(e){if(e>K_MAX_LENGTH)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=Buffer.prototype,t}function Buffer(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return allocUnsafe(e)}return from(e,t,r)}function from(e,t,r){if("string"==typeof e)return fromString(e,t);if(ArrayBuffer.isView(e))return fromArrayLike(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(isInstance(e,ArrayBuffer)||e&&isInstance(e.buffer,ArrayBuffer))return fromArrayBuffer(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return Buffer.from(n,t,r);var f=fromObject(e);if(f)return f;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return Buffer.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function assertSize(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function alloc(e,t,r){return assertSize(e),e<=0?createBuffer(e):void 0!==t?"string"==typeof r?createBuffer(e).fill(t,r):createBuffer(e).fill(t):createBuffer(e)}function allocUnsafe(e){return assertSize(e),createBuffer(e<0?0:0|checked(e))}function fromString(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!Buffer.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|byteLength(e,t),n=createBuffer(r),f=n.write(e,t);return f!==r&&(n=n.slice(0,f)),n}function fromArrayLike(e){for(var t=e.length<0?0:0|checked(e.length),r=createBuffer(t),n=0;n=K_MAX_LENGTH)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+K_MAX_LENGTH.toString(16)+" bytes");return 0|e}function SlowBuffer(e){return+e!=e&&(e=0),Buffer.alloc(+e)}function byteLength(e,t){if(Buffer.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||isInstance(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var f=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return utf8ToBytes(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return base64ToBytes(e).length;default:if(f)return n?-1:utf8ToBytes(e).length;t=(""+t).toLowerCase(),f=!0}}function slowToString(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return hexSlice(this,t,r);case"utf8":case"utf-8":return utf8Slice(this,t,r);case"ascii":return asciiSlice(this,t,r);case"latin1":case"binary":return latin1Slice(this,t,r);case"base64":return base64Slice(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function swap(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function bidirectionalIndexOf(e,t,r,n,f){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),numberIsNaN(r=+r)&&(r=f?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(f)return-1;r=e.length-1}else if(r<0){if(!f)return-1;r=0}if("string"==typeof t&&(t=Buffer.from(t,n)),Buffer.isBuffer(t))return 0===t.length?-1:arrayIndexOf(e,t,r,n,f);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?f?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):arrayIndexOf(e,[t],r,n,f);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(e,t,r,n,f){var i,o=1,u=e.length,s=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,u/=2,s/=2,r/=2}function a(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(f){var h=-1;for(i=r;iu&&(r=u-s),i=r;i>=0;i--){for(var c=!0,l=0;lf&&(n=f):n=f;var i=t.length;n>i/2&&(n=i/2);for(var o=0;o239?4:a>223?3:a>191?2:1;if(f+c<=r)switch(c){case 1:a<128&&(h=a);break;case 2:128==(192&(i=e[f+1]))&&(s=(31&a)<<6|63&i)>127&&(h=s);break;case 3:i=e[f+1],o=e[f+2],128==(192&i)&&128==(192&o)&&(s=(15&a)<<12|(63&i)<<6|63&o)>2047&&(s<55296||s>57343)&&(h=s);break;case 4:i=e[f+1],o=e[f+2],u=e[f+3],128==(192&i)&&128==(192&o)&&128==(192&u)&&(s=(15&a)<<18|(63&i)<<12|(63&o)<<6|63&u)>65535&&s<1114112&&(h=s)}null===h?(h=65533,c=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),f+=c}return decodeCodePointsArray(n)}exports.kMaxLength=K_MAX_LENGTH,Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport(),Buffer.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(Buffer.prototype,"parent",{enumerable:!0,get:function(){if(Buffer.isBuffer(this))return this.buffer}}),Object.defineProperty(Buffer.prototype,"offset",{enumerable:!0,get:function(){if(Buffer.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&Buffer[Symbol.species]===Buffer&&Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),Buffer.poolSize=8192,Buffer.from=function(e,t,r){return from(e,t,r)},Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array,Buffer.alloc=function(e,t,r){return alloc(e,t,r)},Buffer.allocUnsafe=function(e){return allocUnsafe(e)},Buffer.allocUnsafeSlow=function(e){return allocUnsafe(e)},Buffer.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==Buffer.prototype},Buffer.compare=function(e,t){if(isInstance(e,Uint8Array)&&(e=Buffer.from(e,e.offset,e.byteLength)),isInstance(t,Uint8Array)&&(t=Buffer.from(t,t.offset,t.byteLength)),!Buffer.isBuffer(e)||!Buffer.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var r=e.length,n=t.length,f=0,i=Math.min(r,n);ft&&(e+=" ... "),""},Buffer.prototype.compare=function(e,t,r,n,f){if(isInstance(e,Uint8Array)&&(e=Buffer.from(e,e.offset,e.byteLength)),!Buffer.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===f&&(f=this.length),t<0||r>e.length||n<0||f>this.length)throw new RangeError("out of range index");if(n>=f&&t>=r)return 0;if(n>=f)return-1;if(t>=r)return 1;if(this===e)return 0;for(var i=(f>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),u=Math.min(i,o),s=this.slice(n,f),a=e.slice(t,r),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var f=this.length-t;if((void 0===r||r>f)&&(r=f),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return hexWrite(this,e,t,r);case"utf8":case"utf-8":return utf8Write(this,e,t,r);case"ascii":return asciiWrite(this,e,t,r);case"latin1":case"binary":return latin1Write(this,e,t,r);case"base64":return base64Write(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,e,t,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(e){var t=e.length;if(t<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn)&&(r=n);for(var f="",i=t;ir)throw new RangeError("Trying to access beyond buffer length")}function checkInt(e,t,r,n,f,i){if(!Buffer.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>f||te.length)throw new RangeError("Index out of range")}function checkIEEE754(e,t,r,n,f,i){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function writeFloat(e,t,r,n,f){return t=+t,r>>>=0,f||checkIEEE754(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),ieee754.write(e,t,r,n,23,4),r+4}function writeDouble(e,t,r,n,f){return t=+t,r>>>=0,f||checkIEEE754(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),ieee754.write(e,t,r,n,52,8),r+8}Buffer.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e],f=1,i=0;++i>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e+--t],f=1;t>0&&(f*=256);)n+=this[e+--t]*f;return n},Buffer.prototype.readUInt8=function(e,t){return e>>>=0,t||checkOffset(e,1,this.length),this[e]},Buffer.prototype.readUInt16LE=function(e,t){return e>>>=0,t||checkOffset(e,2,this.length),this[e]|this[e+1]<<8},Buffer.prototype.readUInt16BE=function(e,t){return e>>>=0,t||checkOffset(e,2,this.length),this[e]<<8|this[e+1]},Buffer.prototype.readUInt32LE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Buffer.prototype.readUInt32BE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Buffer.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e],f=1,i=0;++i=(f*=128)&&(n-=Math.pow(2,8*t)),n},Buffer.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=t,f=1,i=this[e+--n];n>0&&(f*=256);)i+=this[e+--n]*f;return i>=(f*=128)&&(i-=Math.pow(2,8*t)),i},Buffer.prototype.readInt8=function(e,t){return e>>>=0,t||checkOffset(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Buffer.prototype.readInt16LE=function(e,t){e>>>=0,t||checkOffset(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt16BE=function(e,t){e>>>=0,t||checkOffset(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt32LE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Buffer.prototype.readInt32BE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Buffer.prototype.readFloatLE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),ieee754.read(this,e,!0,23,4)},Buffer.prototype.readFloatBE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),ieee754.read(this,e,!1,23,4)},Buffer.prototype.readDoubleLE=function(e,t){return e>>>=0,t||checkOffset(e,8,this.length),ieee754.read(this,e,!0,52,8)},Buffer.prototype.readDoubleBE=function(e,t){return e>>>=0,t||checkOffset(e,8,this.length),ieee754.read(this,e,!1,52,8)},Buffer.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t>>>=0,r>>>=0,n)||checkInt(this,e,t,r,Math.pow(2,8*r)-1,0);var f=1,i=0;for(this[t]=255&e;++i>>=0,r>>>=0,n)||checkInt(this,e,t,r,Math.pow(2,8*r)-1,0);var f=r-1,i=1;for(this[t+f]=255&e;--f>=0&&(i*=256);)this[t+f]=e/i&255;return t+r},Buffer.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,1,255,0),this[t]=255&e,t+1},Buffer.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},Buffer.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},Buffer.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},Buffer.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},Buffer.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,e,t,r,f-1,-f)}var i=0,o=1,u=0;for(this[t]=255&e;++i>0)-u&255;return t+r},Buffer.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,e,t,r,f-1,-f)}var i=r-1,o=1,u=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===u&&0!==this[t+i+1]&&(u=1),this[t+i]=(e/o>>0)-u&255;return t+r},Buffer.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},Buffer.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},Buffer.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},Buffer.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},Buffer.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},Buffer.prototype.writeFloatLE=function(e,t,r){return writeFloat(this,e,t,!0,r)},Buffer.prototype.writeFloatBE=function(e,t,r){return writeFloat(this,e,t,!1,r)},Buffer.prototype.writeDoubleLE=function(e,t,r){return writeDouble(this,e,t,!0,r)},Buffer.prototype.writeDoubleBE=function(e,t,r){return writeDouble(this,e,t,!1,r)},Buffer.prototype.copy=function(e,t,r,n){if(!Buffer.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t=0;--i)e[i+t]=this[i+r];else Uint8Array.prototype.set.call(e,this.subarray(r,n),t);return f},Buffer.prototype.fill=function(e,t,r,n){if("string"==typeof e){if("string"==typeof t?(n=t,t=0,r=this.length):"string"==typeof r&&(n=r,r=this.length),void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!Buffer.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===e.length){var f=e.charCodeAt(0);("utf8"===n&&f<128||"latin1"===n)&&(e=f)}}else"number"==typeof e&&(e&=255);if(t<0||this.length>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&r<57344){if(!f){if(r>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&i.push(239,191,189);continue}f=r;continue}if(r<56320){(t-=3)>-1&&i.push(239,191,189),f=r;continue}r=65536+(f-55296<<10|r-56320)}else f&&(t-=3)>-1&&i.push(239,191,189);if(f=null,r<128){if((t-=1)<0)break;i.push(r)}else if(r<2048){if((t-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function asciiToBytes(e){for(var t=[],r=0;r>8,f=r%256,i.push(f),i.push(n);return i}function base64ToBytes(e){return base64.toByteArray(base64clean(e))}function blitBuffer(e,t,r,n){for(var f=0;f=t.length||f>=e.length);++f)t[f+r]=e[f];return f}function isInstance(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function numberIsNaN(e){return e!=e}},{"base64-js":20,ieee754:30}],24:[function(require,module,exports){module.exports={100:"Continue",101:"Switching Protocols",102:"Processing",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Unordered Collection",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"}},{}],25:[function(require,module,exports){(function(process,global){"use strict";var next=global.process&&process.nextTick||global.setImmediate||function(n){setTimeout(n,0)};module.exports=function(n,t){return n?void t.then(function(t){next(function(){n(null,t)})},function(t){next(function(){n(t)})}):t}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{_process:66}],26:[function(require,module,exports){(function(Buffer){function isArray(r){return Array.isArray?Array.isArray(r):"[object Array]"===objectToString(r)}function isBoolean(r){return"boolean"==typeof r}function isNull(r){return null===r}function isNullOrUndefined(r){return null==r}function isNumber(r){return"number"==typeof r}function isString(r){return"string"==typeof r}function isSymbol(r){return"symbol"==typeof r}function isUndefined(r){return void 0===r}function isRegExp(r){return"[object RegExp]"===objectToString(r)}function isObject(r){return"object"==typeof r&&null!==r}function isDate(r){return"[object Date]"===objectToString(r)}function isError(r){return"[object Error]"===objectToString(r)||r instanceof Error}function isFunction(r){return"function"==typeof r}function isPrimitive(r){return null===r||"boolean"==typeof r||"number"==typeof r||"string"==typeof r||"symbol"==typeof r||void 0===r}function objectToString(r){return Object.prototype.toString.call(r)}exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=Buffer.isBuffer}).call(this,{isBuffer:require("../../is-buffer/index.js")})},{"../../is-buffer/index.js":32}],27:[function(require,module,exports){var objectCreate=Object.create||objectCreatePolyfill,objectKeys=Object.keys||objectKeysPolyfill,bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){this._events&&Object.prototype.hasOwnProperty.call(this,"_events")||(this._events=objectCreate(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}module.exports=EventEmitter,EventEmitter.EventEmitter=EventEmitter,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0;var hasDefineProperty,defaultMaxListeners=10;try{var o={};Object.defineProperty&&Object.defineProperty(o,"x",{value:0}),hasDefineProperty=0===o.x}catch(e){hasDefineProperty=!1}function $getMaxListeners(e){return void 0===e._maxListeners?EventEmitter.defaultMaxListeners:e._maxListeners}function emitNone(e,t,n){if(t)e.call(n);else for(var r=e.length,i=arrayClone(e,r),s=0;s0&&o.length>i){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+' "'+String(t)+'" listeners added. Use emitter.setMaxListeners() to increase limit.');a.name="MaxListenersExceededWarning",a.emitter=e,a.type=t,a.count=o.length,"object"==typeof console&&console.warn&&console.warn("%s: %s",a.name,a.message)}}else o=s[t]=n,++e._eventsCount;return e}function onceWrapper(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var e=new Array(arguments.length),t=0;t1&&(t=arguments[1]),t instanceof Error)throw t;var l=new Error('Unhandled "error" event. ('+t+")");throw l.context=t,l}if(!(n=o[e]))return!1;var u="function"==typeof n;switch(r=arguments.length){case 1:emitNone(n,u,this);break;case 2:emitOne(n,u,this,arguments[1]);break;case 3:emitTwo(n,u,this,arguments[1],arguments[2]);break;case 4:emitThree(n,u,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=new Array(r-1),s=1;s=0;s--)if(n[s]===t||n[s].listener===t){o=n[s].listener,i=s;break}if(i<0)return this;0===i?n.shift():spliceOne(n,i),1===n.length&&(r[e]=n[0]),r.removeListener&&this.emit("removeListener",e,o||t)}return this},EventEmitter.prototype.removeAllListeners=function(e){var t,n,r;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=objectCreate(null),this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=objectCreate(null):delete n[e]),this;if(0===arguments.length){var i,s=objectKeys(n);for(r=0;r=0;r--)this.removeListener(e,t[r]);return this},EventEmitter.prototype.listeners=function(e){return _listeners(this,e,!0)},EventEmitter.prototype.rawListeners=function(e){return _listeners(this,e,!1)},EventEmitter.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):listenerCount.call(e,t)},EventEmitter.prototype.listenerCount=listenerCount,EventEmitter.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],28:[function(require,module,exports){function format(e){var r=Array.prototype.slice.call(arguments,1);return r.length&&(e=e.replace(/(%?)(%([jds]))/g,function(e,t,a,n){var s=r.shift();switch(n){case"s":s=""+s;break;case"d":s=Number(s);break;case"j":s=JSON.stringify(s)}return t?(r.unshift(s),e):s})),r.length&&(e+=" "+r.join(" ")),""+(e=e.replace(/%{2,2}/g,"%"))}module.exports=format},{}],29:[function(require,module,exports){var http=require("http"),url=require("url"),https=module.exports;for(var key in http)http.hasOwnProperty(key)&&(https[key]=http[key]);function validateParams(t){if("string"==typeof t&&(t=url.parse(t)),t.protocol||(t.protocol="https:"),"https:"!==t.protocol)throw new Error('Protocol "'+t.protocol+'" not supported. Expected "https:"');return t}https.request=function(t,r){return t=validateParams(t),http.request.call(this,t,r)},https.get=function(t,r){return t=validateParams(t),http.get.call(this,t,r)}},{http:80,url:87}],30:[function(require,module,exports){exports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:1/0*(s?-1:1);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),(o+=p+N>=1?n/f:n*Math.pow(2,1-N))*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}},{}],31:[function(require,module,exports){"function"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t}},{}],32:[function(require,module,exports){ -/*! - * Determine if an object is a Buffer - * - * @author Feross Aboukhadijeh - * @license MIT - */ -function isBuffer(f){return!!f.constructor&&"function"==typeof f.constructor.isBuffer&&f.constructor.isBuffer(f)}function isSlowBuffer(f){return"function"==typeof f.readFloatLE&&"function"==typeof f.slice&&isBuffer(f.slice(0,0))}module.exports=function(f){return null!=f&&(isBuffer(f)||isSlowBuffer(f)||!!f._isBuffer)}},{}],33:[function(require,module,exports){var toString={}.toString;module.exports=Array.isArray||function(r){return"[object Array]"==toString.call(r)}},{}],34:[function(require,module,exports){"use strict";var yaml=require("./lib/js-yaml.js");module.exports=yaml},{"./lib/js-yaml.js":35}],35:[function(require,module,exports){"use strict";var loader=require("./js-yaml/loader"),dumper=require("./js-yaml/dumper");function deprecated(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}module.exports.Type=require("./js-yaml/type"),module.exports.Schema=require("./js-yaml/schema"),module.exports.FAILSAFE_SCHEMA=require("./js-yaml/schema/failsafe"),module.exports.JSON_SCHEMA=require("./js-yaml/schema/json"),module.exports.CORE_SCHEMA=require("./js-yaml/schema/core"),module.exports.DEFAULT_SAFE_SCHEMA=require("./js-yaml/schema/default_safe"),module.exports.DEFAULT_FULL_SCHEMA=require("./js-yaml/schema/default_full"),module.exports.load=loader.load,module.exports.loadAll=loader.loadAll,module.exports.safeLoad=loader.safeLoad,module.exports.safeLoadAll=loader.safeLoadAll,module.exports.dump=dumper.dump,module.exports.safeDump=dumper.safeDump,module.exports.YAMLException=require("./js-yaml/exception"),module.exports.MINIMAL_SCHEMA=require("./js-yaml/schema/failsafe"),module.exports.SAFE_SCHEMA=require("./js-yaml/schema/default_safe"),module.exports.DEFAULT_SCHEMA=require("./js-yaml/schema/default_full"),module.exports.scan=deprecated("scan"),module.exports.parse=deprecated("parse"),module.exports.compose=deprecated("compose"),module.exports.addConstructor=deprecated("addConstructor")},{"./js-yaml/dumper":37,"./js-yaml/exception":38,"./js-yaml/loader":39,"./js-yaml/schema":41,"./js-yaml/schema/core":42,"./js-yaml/schema/default_full":43,"./js-yaml/schema/default_safe":44,"./js-yaml/schema/failsafe":45,"./js-yaml/schema/json":46,"./js-yaml/type":47}],36:[function(require,module,exports){"use strict";function isNothing(e){return null==e}function isObject(e){return"object"==typeof e&&null!==e}function toArray(e){return Array.isArray(e)?e:isNothing(e)?[]:[e]}function extend(e,t){var r,o,n,i;if(t)for(r=0,o=(i=Object.keys(t)).length;ri&&" "!==e[u+1],u=o);else if(!isPrintable(a))return STYLE_DOUBLE;d=d&&isPlainSafe(a)}s=s||c&&o-u-1>i&&" "!==e[u+1]}return l||s?n>9&&needIndentIndicator(e)?STYLE_DOUBLE:s?STYLE_FOLDED:STYLE_LITERAL:d&&!r(e)?STYLE_PLAIN:STYLE_SINGLE}function writeScalar(e,t,n,i){e.dump=function(){if(0===t.length)return"''";if(!e.noCompatMode&&-1!==DEPRECATED_BOOLEANS_SYNTAX.indexOf(t))return"'"+t+"'";var r=e.indent*Math.max(1,n),o=-1===e.lineWidth?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-r),a=i||e.flowLevel>-1&&n>=e.flowLevel;switch(chooseScalarStyle(t,a,e.indent,o,function(t){return testImplicitResolving(e,t)})){case STYLE_PLAIN:return t;case STYLE_SINGLE:return"'"+t.replace(/'/g,"''")+"'";case STYLE_LITERAL:return"|"+blockHeader(t,e.indent)+dropEndingNewline(indentString(t,r));case STYLE_FOLDED:return">"+blockHeader(t,e.indent)+dropEndingNewline(indentString(foldString(t,o),r));case STYLE_DOUBLE:return'"'+escapeString(t,o)+'"';default:throw new YAMLException("impossible error: invalid scalar style")}}()}function blockHeader(e,t){var n=needIndentIndicator(e)?String(t):"",i="\n"===e[e.length-1];return n+(i&&("\n"===e[e.length-2]||"\n"===e)?"+":i?"":"-")+"\n"}function dropEndingNewline(e){return"\n"===e[e.length-1]?e.slice(0,-1):e}function foldString(e,t){for(var n,i,r,o=/(\n+)([^\n]*)/g,a=(n=-1!==(n=e.indexOf("\n"))?n:e.length,o.lastIndex=n,foldLine(e.slice(0,n),t)),l="\n"===e[0]||" "===e[0];r=o.exec(e);){var s=r[1],c=r[2];i=" "===c[0],a+=s+(l||i||""===c?"":"\n")+foldLine(c,t),l=i}return a}function foldLine(e,t){if(""===e||" "===e[0])return e;for(var n,i,r=/ [^ ]/g,o=0,a=0,l=0,s="";n=r.exec(e);)(l=n.index)-o>t&&(i=a>o?a:l,s+="\n"+e.slice(o,i),o=i+1),a=l;return s+="\n",e.length-o>t&&a>o?s+=e.slice(o,a)+"\n"+e.slice(a+1):s+=e.slice(o),s.slice(1)}function escapeString(e){for(var t,n,i,r="",o=0;o=55296&&t<=56319&&(n=e.charCodeAt(o+1))>=56320&&n<=57343?(r+=encodeHex(1024*(t-55296)+n-56320+65536),o++):r+=!(i=ESCAPE_SEQUENCES[t])&&isPrintable(t)?e[o]:i||encodeHex(t);return r}function writeFlowSequence(e,t,n){var i,r,o="",a=e.tag;for(i=0,r=n.length;i1024&&(l+="? "),l+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),writeNode(e,t,a,!1,!1)&&(s+=l+=e.dump));e.tag=c,e.dump="{"+s+"}"}function writeBlockMapping(e,t,n,i){var r,o,a,l,s,c,u="",d=e.tag,p=Object.keys(n);if(!0===e.sortKeys)p.sort();else if("function"==typeof e.sortKeys)p.sort(e.sortKeys);else if(e.sortKeys)throw new YAMLException("sortKeys must be a boolean or a function");for(r=0,o=p.length;r1024)&&(e.dump&&CHAR_LINE_FEED===e.dump.charCodeAt(0)?c+="?":c+="? "),c+=e.dump,s&&(c+=generateNextLine(e,t)),writeNode(e,t+1,l,!0,s)&&(e.dump&&CHAR_LINE_FEED===e.dump.charCodeAt(0)?c+=":":c+=": ",u+=c+=e.dump));e.tag=d,e.dump=u||"{}"}function detectType(e,t,n){var i,r,o,a,l,s;for(o=0,a=(r=n?e.explicitTypes:e.implicitTypes).length;o tag resolver accepts not "'+s+'" style');i=l.represent[s](t,s)}e.dump=i}return!0}return!1}function writeNode(e,t,n,i,r,o){e.tag=null,e.dump=n,detectType(e,n,!1)||detectType(e,n,!0);var a=_toString.call(e.dump);i&&(i=e.flowLevel<0||e.flowLevel>t);var l,s,c="[object Object]"===a||"[object Array]"===a;if(c&&(s=-1!==(l=e.duplicates.indexOf(n))),(null!==e.tag&&"?"!==e.tag||s||2!==e.indent&&t>0)&&(r=!1),s&&e.usedDuplicates[l])e.dump="*ref_"+l;else{if(c&&s&&!e.usedDuplicates[l]&&(e.usedDuplicates[l]=!0),"[object Object]"===a)i&&0!==Object.keys(e.dump).length?(writeBlockMapping(e,t,e.dump,r),s&&(e.dump="&ref_"+l+e.dump)):(writeFlowMapping(e,t,e.dump),s&&(e.dump="&ref_"+l+" "+e.dump));else if("[object Array]"===a){var u=e.noArrayIndent?t-1:t;i&&0!==e.dump.length?(writeBlockSequence(e,u,e.dump,r),s&&(e.dump="&ref_"+l+e.dump)):(writeFlowSequence(e,u,e.dump),s&&(e.dump="&ref_"+l+" "+e.dump))}else{if("[object String]"!==a){if(e.skipInvalid)return!1;throw new YAMLException("unacceptable kind of an object to dump "+a)}"?"!==e.tag&&writeScalar(e,e.dump,t,o)}null!==e.tag&&"?"!==e.tag&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function getDuplicateReferences(e,t){var n,i,r=[],o=[];for(inspectNode(e,r,o),n=0,i=o.length;n>10),56320+(e-65536&1023))}for(var simpleEscapeCheck=new Array(256),simpleEscapeMap=new Array(256),i=0;i<256;i++)simpleEscapeCheck[i]=simpleEscapeSequence(i)?1:0,simpleEscapeMap[i]=simpleEscapeSequence(i);function State(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||DEFAULT_FULL_SCHEMA,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function generateError(e,t){return new YAMLException(t,new Mark(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function throwError(e,t){throw generateError(e,t)}function throwWarning(e,t){e.onWarning&&e.onWarning.call(null,generateError(e,t))}var directiveHandlers={YAML:function(e,t,n){var i,o,r;null!==e.version&&throwError(e,"duplication of %YAML directive"),1!==n.length&&throwError(e,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]))&&throwError(e,"ill-formed argument of the YAML directive"),o=parseInt(i[1],10),r=parseInt(i[2],10),1!==o&&throwError(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=r<2,1!==r&&2!==r&&throwWarning(e,"unsupported YAML version of the document")},TAG:function(e,t,n){var i,o;2!==n.length&&throwError(e,"TAG directive accepts exactly two arguments"),i=n[0],o=n[1],PATTERN_TAG_HANDLE.test(i)||throwError(e,"ill-formed tag handle (first argument) of the TAG directive"),_hasOwnProperty.call(e.tagMap,i)&&throwError(e,'there is a previously declared suffix for "'+i+'" tag handle'),PATTERN_TAG_URI.test(o)||throwError(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[i]=o}};function captureSegment(e,t,n,i){var o,r,a,s;if(t1&&(e.result+=common.repeat("\n",t-1))}function readPlainScalar(e,t,n){var i,o,r,a,s,p,c,l,u=e.kind,d=e.result;if(is_WS_OR_EOL(l=e.input.charCodeAt(e.position))||is_FLOW_INDICATOR(l)||35===l||38===l||42===l||33===l||124===l||62===l||39===l||34===l||37===l||64===l||96===l)return!1;if((63===l||45===l)&&(is_WS_OR_EOL(i=e.input.charCodeAt(e.position+1))||n&&is_FLOW_INDICATOR(i)))return!1;for(e.kind="scalar",e.result="",o=r=e.position,a=!1;0!==l;){if(58===l){if(is_WS_OR_EOL(i=e.input.charCodeAt(e.position+1))||n&&is_FLOW_INDICATOR(i))break}else if(35===l){if(is_WS_OR_EOL(e.input.charCodeAt(e.position-1)))break}else{if(e.position===e.lineStart&&testDocumentSeparator(e)||n&&is_FLOW_INDICATOR(l))break;if(is_EOL(l)){if(s=e.line,p=e.lineStart,c=e.lineIndent,skipSeparationSpace(e,!1,-1),e.lineIndent>=t){a=!0,l=e.input.charCodeAt(e.position);continue}e.position=r,e.line=s,e.lineStart=p,e.lineIndent=c;break}}a&&(captureSegment(e,o,r,!1),writeFoldedLines(e,e.line-s),o=r=e.position,a=!1),is_WHITE_SPACE(l)||(r=e.position+1),l=e.input.charCodeAt(++e.position)}return captureSegment(e,o,r,!1),!!e.result||(e.kind=u,e.result=d,!1)}function readSingleQuotedScalar(e,t){var n,i,o;if(39!==(n=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,i=o=e.position;0!==(n=e.input.charCodeAt(e.position));)if(39===n){if(captureSegment(e,i,e.position,!0),39!==(n=e.input.charCodeAt(++e.position)))return!0;i=e.position,e.position++,o=e.position}else is_EOL(n)?(captureSegment(e,i,o,!0),writeFoldedLines(e,skipSeparationSpace(e,!1,t)),i=o=e.position):e.position===e.lineStart&&testDocumentSeparator(e)?throwError(e,"unexpected end of the document within a single quoted scalar"):(e.position++,o=e.position);throwError(e,"unexpected end of the stream within a single quoted scalar")}function readDoubleQuotedScalar(e,t){var n,i,o,r,a,s;if(34!==(s=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,n=i=e.position;0!==(s=e.input.charCodeAt(e.position));){if(34===s)return captureSegment(e,n,e.position,!0),e.position++,!0;if(92===s){if(captureSegment(e,n,e.position,!0),is_EOL(s=e.input.charCodeAt(++e.position)))skipSeparationSpace(e,!1,t);else if(s<256&&simpleEscapeCheck[s])e.result+=simpleEscapeMap[s],e.position++;else if((a=escapedHexLen(s))>0){for(o=a,r=0;o>0;o--)(a=fromHexCode(s=e.input.charCodeAt(++e.position)))>=0?r=(r<<4)+a:throwError(e,"expected hexadecimal character");e.result+=charFromCodepoint(r),e.position++}else throwError(e,"unknown escape sequence");n=i=e.position}else is_EOL(s)?(captureSegment(e,n,i,!0),writeFoldedLines(e,skipSeparationSpace(e,!1,t)),n=i=e.position):e.position===e.lineStart&&testDocumentSeparator(e)?throwError(e,"unexpected end of the document within a double quoted scalar"):(e.position++,i=e.position)}throwError(e,"unexpected end of the stream within a double quoted scalar")}function readFlowCollection(e,t){var n,i,o,r,a,s,p,c,l,u,d=!0,h=e.tag,f=e.anchor,_={};if(91===(u=e.input.charCodeAt(e.position)))o=93,s=!1,i=[];else{if(123!==u)return!1;o=125,s=!0,i={}}for(null!==e.anchor&&(e.anchorMap[e.anchor]=i),u=e.input.charCodeAt(++e.position);0!==u;){if(skipSeparationSpace(e,!0,t),(u=e.input.charCodeAt(e.position))===o)return e.position++,e.tag=h,e.anchor=f,e.kind=s?"mapping":"sequence",e.result=i,!0;d||throwError(e,"missed comma between flow collection entries"),l=null,r=a=!1,63===u&&is_WS_OR_EOL(e.input.charCodeAt(e.position+1))&&(r=a=!0,e.position++,skipSeparationSpace(e,!0,t)),n=e.line,composeNode(e,t,CONTEXT_FLOW_IN,!1,!0),c=e.tag,p=e.result,skipSeparationSpace(e,!0,t),u=e.input.charCodeAt(e.position),!a&&e.line!==n||58!==u||(r=!0,u=e.input.charCodeAt(++e.position),skipSeparationSpace(e,!0,t),composeNode(e,t,CONTEXT_FLOW_IN,!1,!0),l=e.result),s?storeMappingPair(e,i,_,c,p,l):r?i.push(storeMappingPair(e,null,_,c,p,l)):i.push(p),skipSeparationSpace(e,!0,t),44===(u=e.input.charCodeAt(e.position))?(d=!0,u=e.input.charCodeAt(++e.position)):d=!1}throwError(e,"unexpected end of the stream within a flow collection")}function readBlockScalar(e,t){var n,i,o,r,a=CHOMPING_CLIP,s=!1,p=!1,c=t,l=0,u=!1;if(124===(r=e.input.charCodeAt(e.position)))i=!1;else{if(62!==r)return!1;i=!0}for(e.kind="scalar",e.result="";0!==r;)if(43===(r=e.input.charCodeAt(++e.position))||45===r)CHOMPING_CLIP===a?a=43===r?CHOMPING_KEEP:CHOMPING_STRIP:throwError(e,"repeat of a chomping mode identifier");else{if(!((o=fromDecimalCode(r))>=0))break;0===o?throwError(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):p?throwError(e,"repeat of an indentation width identifier"):(c=t+o-1,p=!0)}if(is_WHITE_SPACE(r)){do{r=e.input.charCodeAt(++e.position)}while(is_WHITE_SPACE(r));if(35===r)do{r=e.input.charCodeAt(++e.position)}while(!is_EOL(r)&&0!==r)}for(;0!==r;){for(readLineBreak(e),e.lineIndent=0,r=e.input.charCodeAt(e.position);(!p||e.lineIndentc&&(c=e.lineIndent),is_EOL(r))l++;else{if(e.lineIndentt)&&0!==i)throwError(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(composeNode(e,t,CONTEXT_BLOCK_OUT,!0,o)&&(_?h=e.result:f=e.result),_||(storeMappingPair(e,l,u,d,h,f,r,a),d=h=f=null),skipSeparationSpace(e,!0,-1),s=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==s)throwError(e,"bad indentation of a mapping entry");else if(e.lineIndentt?h=1:e.lineIndent===t?h=0:e.lineIndentt?h=1:e.lineIndent===t?h=0:e.lineIndent tag; it should be "'+l.kind+'", not "'+e.kind+'"'),l.resolve(e.result)?(e.result=l.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):throwError(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):throwError(e,"unknown tag !<"+e.tag+">");return null!==e.listener&&e.listener("close",e),null!==e.tag||null!==e.anchor||_}function readDocument(e){var t,n,i,o,r=e.position,a=!1;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(o=e.input.charCodeAt(e.position))&&(skipSeparationSpace(e,!0,-1),o=e.input.charCodeAt(e.position),!(e.lineIndent>0||37!==o));){for(a=!0,o=e.input.charCodeAt(++e.position),t=e.position;0!==o&&!is_WS_OR_EOL(o);)o=e.input.charCodeAt(++e.position);for(i=[],(n=e.input.slice(t,e.position)).length<1&&throwError(e,"directive name must not be less than one character in length");0!==o;){for(;is_WHITE_SPACE(o);)o=e.input.charCodeAt(++e.position);if(35===o){do{o=e.input.charCodeAt(++e.position)}while(0!==o&&!is_EOL(o));break}if(is_EOL(o))break;for(t=e.position;0!==o&&!is_WS_OR_EOL(o);)o=e.input.charCodeAt(++e.position);i.push(e.input.slice(t,e.position))}0!==o&&readLineBreak(e),_hasOwnProperty.call(directiveHandlers,n)?directiveHandlers[n](e,n,i):throwWarning(e,'unknown document directive "'+n+'"')}skipSeparationSpace(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,skipSeparationSpace(e,!0,-1)):a&&throwError(e,"directives end mark is expected"),composeNode(e,e.lineIndent-1,CONTEXT_BLOCK_OUT,!1,!0),skipSeparationSpace(e,!0,-1),e.checkLineBreaks&&PATTERN_NON_ASCII_LINE_BREAKS.test(e.input.slice(r,e.position))&&throwWarning(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&testDocumentSeparator(e)?46===e.input.charCodeAt(e.position)&&(e.position+=3,skipSeparationSpace(e,!0,-1)):e.position0&&-1==="\0\r\n…\u2028\u2029".indexOf(this.buffer.charAt(e-1));)if(e-=1,this.position-e>i/2-1){n=" ... ",e+=5;break}for(r="",o=this.position;oi/2-1){r=" ... ",o-=5;break}return s=this.buffer.slice(e,o),common.repeat(" ",t)+n+s+r+"\n"+common.repeat(" ",t+this.position-e+n.length)+"^"},Mark.prototype.toString=function(t){var i,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(i=this.getSnippet())&&(n+=":\n"+i),n},module.exports=Mark},{"./common":36}],41:[function(require,module,exports){"use strict";var common=require("./common"),YAMLException=require("./exception"),Type=require("./type");function compileList(i,e,t){var c=[];return i.include.forEach(function(i){t=compileList(i,e,t)}),i[e].forEach(function(i){t.forEach(function(e,t){e.tag===i.tag&&e.kind===i.kind&&c.push(t)}),t.push(i)}),t.filter(function(i,e){return-1===c.indexOf(e)})}function compileMap(){var i,e,t={scalar:{},sequence:{},mapping:{},fallback:{}};function c(i){t[i.kind][i.tag]=t.fallback[i.tag]=i}for(i=0,e=arguments.length;i64)){if(e<0)return!1;u+=6}return u%8==0}function constructYamlBinary(r){var e,n,u=r.replace(/[\r\n=]/g,""),f=u.length,t=BASE64_MAP,a=0,i=[];for(e=0;e>16&255),i.push(a>>8&255),i.push(255&a)),a=a<<6|t.indexOf(u.charAt(e));return 0===(n=f%4*6)?(i.push(a>>16&255),i.push(a>>8&255),i.push(255&a)):18===n?(i.push(a>>10&255),i.push(a>>2&255)):12===n&&i.push(a>>4&255),NodeBuffer?NodeBuffer.from?NodeBuffer.from(i):new NodeBuffer(i):i}function representYamlBinary(r){var e,n,u="",f=0,t=r.length,a=BASE64_MAP;for(e=0;e>18&63],u+=a[f>>12&63],u+=a[f>>6&63],u+=a[63&f]),f=(f<<8)+r[e];return 0===(n=t%3)?(u+=a[f>>18&63],u+=a[f>>12&63],u+=a[f>>6&63],u+=a[63&f]):2===n?(u+=a[f>>10&63],u+=a[f>>4&63],u+=a[f<<2&63],u+=a[64]):1===n&&(u+=a[f>>2&63],u+=a[f<<4&63],u+=a[64],u+=a[64]),u}function isBinary(r){return NodeBuffer&&NodeBuffer.isBuffer(r)}module.exports=new Type("tag:yaml.org,2002:binary",{kind:"scalar",resolve:resolveYamlBinary,construct:constructYamlBinary,predicate:isBinary,represent:representYamlBinary})},{"../type":47}],49:[function(require,module,exports){"use strict";var Type=require("../type");function resolveYamlBoolean(e){if(null===e)return!1;var r=e.length;return 4===r&&("true"===e||"True"===e||"TRUE"===e)||5===r&&("false"===e||"False"===e||"FALSE"===e)}function constructYamlBoolean(e){return"true"===e||"True"===e||"TRUE"===e}function isBoolean(e){return"[object Boolean]"===Object.prototype.toString.call(e)}module.exports=new Type("tag:yaml.org,2002:bool",{kind:"scalar",resolve:resolveYamlBoolean,construct:constructYamlBoolean,predicate:isBoolean,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})},{"../type":47}],50:[function(require,module,exports){"use strict";var common=require("../common"),Type=require("../type"),YAML_FLOAT_PATTERN=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function resolveYamlFloat(e){return null!==e&&!(!YAML_FLOAT_PATTERN.test(e)||"_"===e[e.length-1])}function constructYamlFloat(e){var r,t,a,n;return t="-"===(r=e.replace(/_/g,"").toLowerCase())[0]?-1:1,n=[],"+-".indexOf(r[0])>=0&&(r=r.slice(1)),".inf"===r?1===t?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===r?NaN:r.indexOf(":")>=0?(r.split(":").forEach(function(e){n.unshift(parseFloat(e,10))}),r=0,a=1,n.forEach(function(e){r+=e*a,a*=60}),t*r):t*parseFloat(r,10)}var SCIENTIFIC_WITHOUT_DOT=/^[-+]?[0-9]+e/;function representYamlFloat(e,r){var t;if(isNaN(e))switch(r){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(r){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(r){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(common.isNegativeZero(e))return"-0.0";return t=e.toString(10),SCIENTIFIC_WITHOUT_DOT.test(t)?t.replace("e",".e"):t}function isFloat(e){return"[object Number]"===Object.prototype.toString.call(e)&&(e%1!=0||common.isNegativeZero(e))}module.exports=new Type("tag:yaml.org,2002:float",{kind:"scalar",resolve:resolveYamlFloat,construct:constructYamlFloat,predicate:isFloat,represent:representYamlFloat,defaultStyle:"lowercase"})},{"../common":36,"../type":47}],51:[function(require,module,exports){"use strict";var common=require("../common"),Type=require("../type");function isHexCode(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function isOctCode(e){return 48<=e&&e<=55}function isDecCode(e){return 48<=e&&e<=57}function resolveYamlInteger(e){if(null===e)return!1;var r,t=e.length,n=0,i=!1;if(!t)return!1;if("-"!==(r=e[n])&&"+"!==r||(r=e[++n]),"0"===r){if(n+1===t)return!0;if("b"===(r=e[++n])){for(n++;n=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})},{"../common":36,"../type":47}],52:[function(require,module,exports){"use strict";var esprima;try{var _require=require;esprima=_require("esprima")}catch(e){"undefined"!=typeof window&&(esprima=window.esprima)}var Type=require("../../type");function resolveJavascriptFunction(e){if(null===e)return!1;try{var r="("+e+")",n=esprima.parse(r,{range:!0});return"Program"===n.type&&1===n.body.length&&"ExpressionStatement"===n.body[0].type&&("ArrowFunctionExpression"===n.body[0].expression.type||"FunctionExpression"===n.body[0].expression.type)}catch(e){return!1}}function constructJavascriptFunction(e){var r,n="("+e+")",t=esprima.parse(n,{range:!0}),o=[];if("Program"!==t.type||1!==t.body.length||"ExpressionStatement"!==t.body[0].type||"ArrowFunctionExpression"!==t.body[0].expression.type&&"FunctionExpression"!==t.body[0].expression.type)throw new Error("Failed to resolve function");return t.body[0].expression.params.forEach(function(e){o.push(e.name)}),r=t.body[0].expression.body.range,"BlockStatement"===t.body[0].expression.body.type?new Function(o,n.slice(r[0]+1,r[1]-1)):new Function(o,"return "+n.slice(r[0],r[1]))}function representJavascriptFunction(e){return e.toString()}function isFunction(e){return"[object Function]"===Object.prototype.toString.call(e)}module.exports=new Type("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:resolveJavascriptFunction,construct:constructJavascriptFunction,predicate:isFunction,represent:representJavascriptFunction})},{"../../type":47}],53:[function(require,module,exports){"use strict";var Type=require("../../type");function resolveJavascriptRegExp(e){if(null===e)return!1;if(0===e.length)return!1;var r=e,t=/\/([gim]*)$/.exec(e),n="";if("/"===r[0]){if(t&&(n=t[1]),n.length>3)return!1;if("/"!==r[r.length-n.length-1])return!1}return!0}function constructJavascriptRegExp(e){var r=e,t=/\/([gim]*)$/.exec(e),n="";return"/"===r[0]&&(t&&(n=t[1]),r=r.slice(1,r.length-n.length-1)),new RegExp(r,n)}function representJavascriptRegExp(e){var r="/"+e.source+"/";return e.global&&(r+="g"),e.multiline&&(r+="m"),e.ignoreCase&&(r+="i"),r}function isRegExp(e){return"[object RegExp]"===Object.prototype.toString.call(e)}module.exports=new Type("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:resolveJavascriptRegExp,construct:constructJavascriptRegExp,predicate:isRegExp,represent:representJavascriptRegExp})},{"../../type":47}],54:[function(require,module,exports){"use strict";var Type=require("../../type");function resolveJavascriptUndefined(){return!0}function constructJavascriptUndefined(){}function representJavascriptUndefined(){return""}function isUndefined(e){return void 0===e}module.exports=new Type("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:resolveJavascriptUndefined,construct:constructJavascriptUndefined,predicate:isUndefined,represent:representJavascriptUndefined})},{"../../type":47}],55:[function(require,module,exports){"use strict";var Type=require("../type");module.exports=new Type("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return null!==e?e:{}}})},{"../type":47}],56:[function(require,module,exports){"use strict";var Type=require("../type");function resolveYamlMerge(e){return"<<"===e||null===e}module.exports=new Type("tag:yaml.org,2002:merge",{kind:"scalar",resolve:resolveYamlMerge})},{"../type":47}],57:[function(require,module,exports){"use strict";var Type=require("../type");function resolveYamlNull(l){if(null===l)return!0;var e=l.length;return 1===e&&"~"===l||4===e&&("null"===l||"Null"===l||"NULL"===l)}function constructYamlNull(){return null}function isNull(l){return null===l}module.exports=new Type("tag:yaml.org,2002:null",{kind:"scalar",resolve:resolveYamlNull,construct:constructYamlNull,predicate:isNull,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},{"../type":47}],58:[function(require,module,exports){"use strict";var Type=require("../type"),_hasOwnProperty=Object.prototype.hasOwnProperty,_toString=Object.prototype.toString;function resolveYamlOmap(r){if(null===r)return!0;var t,e,n,o,u,a=[],l=r;for(t=0,e=l.length;t0&&(c=module.exports.formatter.apply(null,a)),r&&r.message&&(c+=(c?" \n":"")+r.message);var i=new e(c);return extendError(i,r),extendToJSON(i),extend(i,t),i}}function extendError(e,r){extendStack(e,r),extend(e,r)}function extendToJSON(e){e.toJSON=errorToJSON,e.inspect=errorToString}function extend(e,r){if(r&&"object"==typeof r)for(var t=Object.keys(r),o=0;o=0))try{e[n]=r[n]}catch(e){}}}function errorToJSON(){var e={},r=Object.keys(this);r=r.concat(errorPrototypeProperties);for(var t=0;t=0)return r.splice(t,1),r.join("\n")}return e}}module.exports=create(Error),module.exports.error=create(Error),module.exports.eval=create(EvalError),module.exports.range=create(RangeError),module.exports.reference=create(ReferenceError),module.exports.syntax=create(SyntaxError),module.exports.type=create(TypeError),module.exports.uri=create(URIError),module.exports.formatter=format;var supportsLazyStack=!(!Object.getOwnPropertyDescriptor||!Object.defineProperty||"undefined"!=typeof navigator&&/Android/.test(navigator.userAgent));function hasLazyStack(e){if(!supportsLazyStack)return!1;var r=Object.getOwnPropertyDescriptor(e,"stack");return!!r&&"function"==typeof r.get}function lazyJoinStacks(e,r){var t=Object.getOwnPropertyDescriptor(e,"stack");Object.defineProperty(e,"stack",{get:function(){return joinStacks(t.get.apply(e),r.stack)},enumerable:!1,configurable:!0})}function lazyPopStack(e){var r=Object.getOwnPropertyDescriptor(e,"stack");Object.defineProperty(e,"stack",{get:function(){return popStack(r.get.apply(e))},enumerable:!1,configurable:!0})}},{"format-util":28}],65:[function(require,module,exports){(function(process){"use strict";function nextTick(e,n,c,r){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var s,t,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick(function(){e.call(null,n)});case 3:return process.nextTick(function(){e.call(null,n,c)});case 4:return process.nextTick(function(){e.call(null,n,c,r)});default:for(s=new Array(o-1),t=0;t1)for(var r=1;r0&&p>s&&(p=s);for(var y=0;y=0?(u=f.substr(0,v),c=f.substr(v+1)):(u=f,c=""),i=decodeURIComponent(u),l=decodeURIComponent(c),hasOwnProperty(o,i)?isArray(o[i])?o[i].push(l):o[i]=[o[i],l]:o[i]=l}return o};var isArray=Array.isArray||function(r){return"[object Array]"===Object.prototype.toString.call(r)}},{}],68:[function(require,module,exports){"use strict";var stringifyPrimitive=function(r){switch(typeof r){case"string":return r;case"boolean":return r?"true":"false";case"number":return isFinite(r)?r:"";default:return""}};module.exports=function(r,e,t,n){return e=e||"&",t=t||"=",null===r&&(r=void 0),"object"==typeof r?map(objectKeys(r),function(n){var i=encodeURIComponent(stringifyPrimitive(n))+t;return isArray(r[n])?map(r[n],function(r){return i+encodeURIComponent(stringifyPrimitive(r))}).join(e):i+encodeURIComponent(stringifyPrimitive(r[n]))}).join(e):n?encodeURIComponent(stringifyPrimitive(n))+t+encodeURIComponent(stringifyPrimitive(r)):""};var isArray=Array.isArray||function(r){return"[object Array]"===Object.prototype.toString.call(r)};function map(r,e){if(r.map)return r.map(e);for(var t=[],n=0;n0?("string"==typeof t||d.objectMode||Object.getPrototypeOf(t)===Buffer.prototype||(t=_uint8ArrayToBuffer(t)),n?d.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):addChunk(e,d,t,!0):d.ended?e.emit("error",new Error("stream.push() after EOF")):(d.reading=!1,d.decoder&&!r?(t=d.decoder.write(t),d.objectMode||0!==t.length?addChunk(e,d,t,!1):maybeReadMore(e,d)):addChunk(e,d,t,!1))):n||(d.reading=!1));return needMoreData(d)}function addChunk(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&emitReadable(e)),maybeReadMore(e,t)}function chunkInvalid(e,t){var r;return _isUint8Array(t)||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk")),r}function needMoreData(e){return!e.ended&&(e.needReadable||e.length=MAX_HWM?e=MAX_HWM:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function howMuchToRead(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=computeNewHighWaterMark(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function onEofChunk(e,t){if(!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,emitReadable(e)}}function emitReadable(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(debug("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?pna.nextTick(emitReadable_,e):emitReadable_(e))}function emitReadable_(e){debug("emit readable"),e.emit("readable"),flow(e)}function maybeReadMore(e,t){t.readingMore||(t.readingMore=!0,pna.nextTick(maybeReadMore_,e,t))}function maybeReadMore_(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=fromListPartial(e,t.buffer,t.decoder),r);var r}function fromListPartial(e,t,r){var n;return ei.length?i.length:e;if(d===i.length?a+=i:a+=i.slice(0,e),0===(e-=d)){d===i.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(d));break}++n}return t.length-=n,a}function copyFromBuffer(e,t){var r=Buffer.allocUnsafe(e),n=t.head,a=1;for(n.data.copy(r),e-=n.data.length;n=n.next;){var i=n.data,d=e>i.length?i.length:e;if(i.copy(r,r.length-e,0,d),0===(e-=d)){d===i.length?(++a,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(d));break}++a}return t.length-=a,r}function endReadable(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,pna.nextTick(endReadableNT,t,e))}function endReadableNT(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function indexOf(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return debug("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?endReadable(this):emitReadable(this),null;if(0===(e=howMuchToRead(e,t))&&t.ended)return 0===t.length&&endReadable(this),null;var n,a=t.needReadable;return debug("need readable",a),(0===t.length||t.length-e0?fromList(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&endReadable(this)),null!==n&&this.emit("data",n),n},Readable.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},Readable.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,debug("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?d:b;function i(t,a){debug("onunpipe"),t===r&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,debug("cleanup"),e.removeListener("close",f),e.removeListener("finish",p),e.removeListener("drain",o),e.removeListener("error",h),e.removeListener("unpipe",i),r.removeListener("end",d),r.removeListener("end",b),r.removeListener("data",s),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||o())}function d(){debug("onend"),e.end()}n.endEmitted?pna.nextTick(a):r.once("end",a),e.on("unpipe",i);var o=pipeOnDrain(r);e.on("drain",o);var u=!1;var l=!1;function s(t){debug("ondata"),l=!1,!1!==e.write(t)||l||((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==indexOf(n.pipes,e))&&!u&&(debug("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,l=!0),r.pause())}function h(t){debug("onerror",t),b(),e.removeListener("error",h),0===EElistenerCount(e,"error")&&e.emit("error",t)}function f(){e.removeListener("finish",p),b()}function p(){debug("onfinish"),e.removeListener("close",f),b()}function b(){debug("unpipe"),r.unpipe(e)}return r.on("data",s),prependListener(e,"error",h),e.once("close",f),e.once("finish",p),e.emit("pipe",r),n.flowing||(debug("pipe resume"),r.resume()),e},Readable.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i-1?setImmediate:pna.nextTick;Writable.WritableState=WritableState;var util=require("core-util-is");util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")},Stream=require("./internal/streams/stream"),Buffer=require("safe-buffer").Buffer,OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(e){return Buffer.from(e)}function _isUint8Array(e){return Buffer.isBuffer(e)||e instanceof OurUint8Array}var realHasInstance,destroyImpl=require("./internal/streams/destroy");function nop(){}function WritableState(e,t){Duplex=Duplex||require("./_stream_duplex"),e=e||{};var r=t instanceof Duplex;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,n=e.writableHighWaterMark,o=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(n||0===n)?n:o,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=!1===e.decodeStrings;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){onwrite(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new CorkedRequest(this)}function Writable(e){if(Duplex=Duplex||require("./_stream_duplex"),!(realHasInstance.call(Writable,this)||this instanceof Duplex))return new Writable(e);this._writableState=new WritableState(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),Stream.call(this)}function writeAfterEnd(e,t){var r=new Error("write after end");e.emit("error",r),pna.nextTick(t,r)}function validChunk(e,t,r,i){var n=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),pna.nextTick(i,o),n=!1),n}function decodeChunk(e,t,r){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=Buffer.from(t,r)),t}function writeOrBuffer(e,t,r,i,n,o){if(!r){var a=decodeChunk(t,i,n);i!==a&&(r=!0,n="buffer",i=a)}var s=t.objectMode?1:i.length;t.length+=s;var f=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Writable.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},Writable.prototype._writev=null,Writable.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||endWritable(this,i,r)},Object.defineProperty(Writable.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),Writable.prototype.destroy=destroyImpl.destroy,Writable.prototype._undestroy=destroyImpl.undestroy,Writable.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("timers").setImmediate)},{"./_stream_duplex":70,"./internal/streams/destroy":76,"./internal/streams/stream":77,_process:66,"core-util-is":26,inherits:31,"process-nextick-args":65,"safe-buffer":79,timers:85,"util-deprecate":89}],75:[function(require,module,exports){"use strict";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var Buffer=require("safe-buffer").Buffer,util=require("util");function copyBuffer(t,e,i){t.copy(e,i)}module.exports=function(){function t(){_classCallCheck(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,i=""+e.data;e=e.next;)i+=t+e.data;return i},t.prototype.concat=function(t){if(0===this.length)return Buffer.alloc(0);if(1===this.length)return this.head.data;for(var e=Buffer.allocUnsafe(t>>>0),i=this.head,n=0;i;)copyBuffer(i.data,e,n),n+=i.data.length,i=i.next;return e},t}(),util&&util.inspect&&util.inspect.custom&&(module.exports.prototype[util.inspect.custom]=function(){var t=util.inspect({length:this.length});return this.constructor.name+" "+t})},{"safe-buffer":79,util:21}],76:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");function destroy(t,e){var r=this,a=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return a||i?(e?e(t):!t||this._writableState&&this._writableState.errorEmitted||pna.nextTick(emitErrorNT,this,t),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(t){!e&&t?(pna.nextTick(emitErrorNT,r,t),r._writableState&&(r._writableState.errorEmitted=!0)):e&&e(t)}),this)}function undestroy(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function emitErrorNT(t,e){t.emit("error",e)}module.exports={destroy:destroy,undestroy:undestroy}},{"process-nextick-args":65}],77:[function(require,module,exports){module.exports=require("events").EventEmitter},{events:27}],78:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js"),exports.Stream=exports,exports.Readable=exports,exports.Writable=require("./lib/_stream_writable.js"),exports.Duplex=require("./lib/_stream_duplex.js"),exports.Transform=require("./lib/_stream_transform.js"),exports.PassThrough=require("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":70,"./lib/_stream_passthrough.js":71,"./lib/_stream_readable.js":72,"./lib/_stream_transform.js":73,"./lib/_stream_writable.js":74}],79:[function(require,module,exports){var buffer=require("buffer"),Buffer=buffer.Buffer;function copyProps(f,r){for(var e in f)r[e]=f[e]}function SafeBuffer(f,r,e){return Buffer(f,r,e)}Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow?module.exports=buffer:(copyProps(buffer,exports),exports.Buffer=SafeBuffer),copyProps(Buffer,SafeBuffer),SafeBuffer.from=function(f,r,e){if("number"==typeof f)throw new TypeError("Argument must not be a number");return Buffer(f,r,e)},SafeBuffer.alloc=function(f,r,e){if("number"!=typeof f)throw new TypeError("Argument must be a number");var u=Buffer(f);return void 0!==r?"string"==typeof e?u.fill(r,e):u.fill(r):u.fill(0),u},SafeBuffer.allocUnsafe=function(f){if("number"!=typeof f)throw new TypeError("Argument must be a number");return Buffer(f)},SafeBuffer.allocUnsafeSlow=function(f){if("number"!=typeof f)throw new TypeError("Argument must be a number");return buffer.SlowBuffer(f)}},{buffer:23}],80:[function(require,module,exports){(function(global){var ClientRequest=require("./lib/request"),response=require("./lib/response"),extend=require("xtend"),statusCodes=require("builtin-status-codes"),url=require("url"),http=exports;http.request=function(e,t){e="string"==typeof e?url.parse(e):extend(e);var r=-1===global.location.protocol.search(/^https?:$/)?"http:":"",s=e.protocol||r,n=e.hostname||e.host,o=e.port,p=e.path||"/";n&&-1!==n.indexOf(":")&&(n="["+n+"]"),e.url=(n?s+"//"+n:"")+(o?":"+o:"")+p,e.method=(e.method||"GET").toUpperCase(),e.headers=e.headers||{};var u=new ClientRequest(e);return t&&u.on("response",t),u},http.get=function(e,t){var r=http.request(e,t);return r.end(),r},http.ClientRequest=ClientRequest,http.IncomingMessage=response.IncomingMessage,http.Agent=function(){},http.Agent.defaultMaxSockets=4,http.globalAgent=new http.Agent,http.STATUS_CODES=statusCodes,http.METHODS=["CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REPORT","SEARCH","SUBSCRIBE","TRACE","UNLOCK","UNSUBSCRIBE"]}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./lib/request":82,"./lib/response":83,"builtin-status-codes":24,url:87,xtend:90}],81:[function(require,module,exports){(function(global){exports.fetch=isFunction(global.fetch)&&isFunction(global.ReadableStream),exports.writableStream=isFunction(global.WritableStream),exports.abortController=isFunction(global.AbortController),exports.blobConstructor=!1;try{new Blob([new ArrayBuffer(1)]),exports.blobConstructor=!0}catch(r){}var xhr;function getXHR(){if(void 0!==xhr)return xhr;if(global.XMLHttpRequest){xhr=new global.XMLHttpRequest;try{xhr.open("GET",global.XDomainRequest?"/":"https://example.com")}catch(r){xhr=null}}else xhr=null;return xhr}function checkTypeSupport(r){var e=getXHR();if(!e)return!1;try{return e.responseType=r,e.responseType===r}catch(r){}return!1}var haveArrayBuffer=void 0!==global.ArrayBuffer,haveSlice=haveArrayBuffer&&isFunction(global.ArrayBuffer.prototype.slice);function isFunction(r){return"function"==typeof r}exports.arraybuffer=exports.fetch||haveArrayBuffer&&checkTypeSupport("arraybuffer"),exports.msstream=!exports.fetch&&haveSlice&&checkTypeSupport("ms-stream"),exports.mozchunkedarraybuffer=!exports.fetch&&haveArrayBuffer&&checkTypeSupport("moz-chunked-arraybuffer"),exports.overrideMimeType=exports.fetch||!!getXHR()&&isFunction(getXHR().overrideMimeType),exports.vbArray=isFunction(global.VBArray),xhr=null}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],82:[function(require,module,exports){(function(process,global,Buffer){var capability=require("./capability"),inherits=require("inherits"),response=require("./response"),stream=require("readable-stream"),toArrayBuffer=require("to-arraybuffer"),IncomingMessage=response.IncomingMessage,rStates=response.readyStates;function decideMode(e,t){return capability.fetch&&t?"fetch":capability.mozchunkedarraybuffer?"moz-chunked-arraybuffer":capability.msstream?"ms-stream":capability.arraybuffer&&e?"arraybuffer":capability.vbArray&&e?"text:vbarray":"text"}var ClientRequest=module.exports=function(e){var t,r=this;stream.Writable.call(r),r._opts=e,r._body=[],r._headers={},e.auth&&r.setHeader("Authorization","Basic "+new Buffer(e.auth).toString("base64")),Object.keys(e.headers).forEach(function(t){r.setHeader(t,e.headers[t])});var o=!0;if("disable-fetch"===e.mode||"requestTimeout"in e&&!capability.abortController)o=!1,t=!0;else if("prefer-streaming"===e.mode)t=!1;else if("allow-wrong-content-type"===e.mode)t=!capability.overrideMimeType;else{if(e.mode&&"default"!==e.mode&&"prefer-fast"!==e.mode)throw new Error("Invalid value for opts.mode");t=!0}r._mode=decideMode(t,o),r._fetchTimer=null,r.on("finish",function(){r._onFinish()})};function statusValid(e){try{var t=e.status;return null!==t&&0!==t}catch(e){return!1}}inherits(ClientRequest,stream.Writable),ClientRequest.prototype.setHeader=function(e,t){var r=e.toLowerCase();-1===unsafeHeaders.indexOf(r)&&(this._headers[r]={name:e,value:t})},ClientRequest.prototype.getHeader=function(e){var t=this._headers[e.toLowerCase()];return t?t.value:null},ClientRequest.prototype.removeHeader=function(e){delete this._headers[e.toLowerCase()]},ClientRequest.prototype._onFinish=function(){var e=this;if(!e._destroyed){var t=e._opts,r=e._headers,o=null;"GET"!==t.method&&"HEAD"!==t.method&&(o=capability.arraybuffer?toArrayBuffer(Buffer.concat(e._body)):capability.blobConstructor?new global.Blob(e._body.map(function(e){return toArrayBuffer(e)}),{type:(r["content-type"]||{}).value||""}):Buffer.concat(e._body).toString());var n=[];if(Object.keys(r).forEach(function(e){var t=r[e].name,o=r[e].value;Array.isArray(o)?o.forEach(function(e){n.push([t,e])}):n.push([t,o])}),"fetch"===e._mode){var i=null;if(capability.abortController){var s=new AbortController;i=s.signal,e._fetchAbortController=s,"requestTimeout"in t&&0!==t.requestTimeout&&(e._fetchTimer=global.setTimeout(function(){e.emit("requestTimeout"),e._fetchAbortController&&e._fetchAbortController.abort()},t.requestTimeout))}global.fetch(e._opts.url,{method:e._opts.method,headers:n,body:o||void 0,mode:"cors",credentials:t.withCredentials?"include":"same-origin",signal:i}).then(function(t){e._fetchResponse=t,e._connect()},function(t){global.clearTimeout(e._fetchTimer),e._destroyed||e.emit("error",t)})}else{var a=e._xhr=new global.XMLHttpRequest;try{a.open(e._opts.method,e._opts.url,!0)}catch(t){return void process.nextTick(function(){e.emit("error",t)})}"responseType"in a&&(a.responseType=e._mode.split(":")[0]),"withCredentials"in a&&(a.withCredentials=!!t.withCredentials),"text"===e._mode&&"overrideMimeType"in a&&a.overrideMimeType("text/plain; charset=x-user-defined"),"requestTimeout"in t&&(a.timeout=t.requestTimeout,a.ontimeout=function(){e.emit("requestTimeout")}),n.forEach(function(e){a.setRequestHeader(e[0],e[1])}),e._response=null,a.onreadystatechange=function(){switch(a.readyState){case rStates.LOADING:case rStates.DONE:e._onXHRProgress()}},"moz-chunked-arraybuffer"===e._mode&&(a.onprogress=function(){e._onXHRProgress()}),a.onerror=function(){e._destroyed||e.emit("error",new Error("XHR error"))};try{a.send(o)}catch(t){return void process.nextTick(function(){e.emit("error",t)})}}}},ClientRequest.prototype._onXHRProgress=function(){statusValid(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress())},ClientRequest.prototype._connect=function(){var e=this;e._destroyed||(e._response=new IncomingMessage(e._xhr,e._fetchResponse,e._mode,e._fetchTimer),e._response.on("error",function(t){e.emit("error",t)}),e.emit("response",e._response))},ClientRequest.prototype._write=function(e,t,r){this._body.push(e),r()},ClientRequest.prototype.abort=ClientRequest.prototype.destroy=function(){this._destroyed=!0,global.clearTimeout(this._fetchTimer),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort()},ClientRequest.prototype.end=function(e,t,r){"function"==typeof e&&(r=e,e=void 0),stream.Writable.prototype.end.call(this,e,t,r)},ClientRequest.prototype.flushHeaders=function(){},ClientRequest.prototype.setTimeout=function(){},ClientRequest.prototype.setNoDelay=function(){},ClientRequest.prototype.setSocketKeepAlive=function(){};var unsafeHeaders=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("buffer").Buffer)},{"./capability":81,"./response":83,_process:66,buffer:23,inherits:31,"readable-stream":78,"to-arraybuffer":86}],83:[function(require,module,exports){(function(process,global,Buffer){var capability=require("./capability"),inherits=require("inherits"),stream=require("readable-stream"),rStates=exports.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},IncomingMessage=exports.IncomingMessage=function(e,r,t,a){var s=this;if(stream.Readable.call(s),s._mode=t,s.headers={},s.rawHeaders=[],s.trailers={},s.rawTrailers=[],s.on("end",function(){process.nextTick(function(){s.emit("close")})}),"fetch"===t){if(s._fetchResponse=r,s.url=r.url,s.statusCode=r.status,s.statusMessage=r.statusText,r.headers.forEach(function(e,r){s.headers[r.toLowerCase()]=e,s.rawHeaders.push(r,e)}),capability.writableStream){var o=new WritableStream({write:function(e){return new Promise(function(r,t){s._destroyed?t():s.push(new Buffer(e))?r():s._resumeFetch=r})},close:function(){global.clearTimeout(a),s._destroyed||s.push(null)},abort:function(e){s._destroyed||s.emit("error",e)}});try{return void r.body.pipeTo(o).catch(function(e){global.clearTimeout(a),s._destroyed||s.emit("error",e)})}catch(e){}}var n=r.body.getReader();!function e(){n.read().then(function(r){if(!s._destroyed){if(r.done)return global.clearTimeout(a),void s.push(null);s.push(new Buffer(r.value)),e()}}).catch(function(e){global.clearTimeout(a),s._destroyed||s.emit("error",e)})}()}else{if(s._xhr=e,s._pos=0,s.url=e.responseURL,s.statusCode=e.status,s.statusMessage=e.statusText,e.getAllResponseHeaders().split(/\r?\n/).forEach(function(e){var r=e.match(/^([^:]+):\s*(.*)/);if(r){var t=r[1].toLowerCase();"set-cookie"===t?(void 0===s.headers[t]&&(s.headers[t]=[]),s.headers[t].push(r[2])):void 0!==s.headers[t]?s.headers[t]+=", "+r[2]:s.headers[t]=r[2],s.rawHeaders.push(r[1],r[2])}}),s._charset="x-user-defined",!capability.overrideMimeType){var i=s.rawHeaders["mime-type"];if(i){var u=i.match(/;\s*charset=([^;])(;|$)/);u&&(s._charset=u[1].toLowerCase())}s._charset||(s._charset="utf-8")}}};inherits(IncomingMessage,stream.Readable),IncomingMessage.prototype._read=function(){var e=this._resumeFetch;e&&(this._resumeFetch=null,e())},IncomingMessage.prototype._onXHRProgress=function(){var e=this,r=e._xhr,t=null;switch(e._mode){case"text:vbarray":if(r.readyState!==rStates.DONE)break;try{t=new global.VBArray(r.responseBody).toArray()}catch(e){}if(null!==t){e.push(new Buffer(t));break}case"text":try{t=r.responseText}catch(r){e._mode="text:vbarray";break}if(t.length>e._pos){var a=t.substr(e._pos);if("x-user-defined"===e._charset){for(var s=new Buffer(a.length),o=0;oe._pos&&(e.push(new Buffer(new Uint8Array(n.result.slice(e._pos)))),e._pos=n.result.byteLength)},n.onload=function(){e.push(null)},n.readAsArrayBuffer(t)}e._xhr.readyState===rStates.DONE&&"ms-stream"!==e._mode&&e.push(null)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("buffer").Buffer)},{"./capability":81,_process:66,buffer:23,inherits:31,"readable-stream":78}],84:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer,isEncoding=Buffer.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function _normalizeEncoding(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}function normalizeEncoding(t){var e=_normalizeEncoding(t);if("string"!=typeof e&&(Buffer.isEncoding===isEncoding||!isEncoding(t)))throw new Error("Unknown encoding: "+t);return e||t}function StringDecoder(t){var e;switch(this.encoding=normalizeEncoding(t),this.encoding){case"utf16le":this.text=utf16Text,this.end=utf16End,e=4;break;case"utf8":this.fillLast=utf8FillLast,e=4;break;case"base64":this.text=base64Text,this.end=base64End,e=3;break;default:return this.write=simpleWrite,void(this.end=simpleEnd)}this.lastNeed=0,this.lastTotal=0,this.lastChar=Buffer.allocUnsafe(e)}function utf8CheckByte(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function utf8CheckIncomplete(t,e,s){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(2===n?n=0:t.lastNeed=n-3),n):0}function utf8CheckExtraBytes(t,e,s){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}function utf8FillLast(t){var e=this.lastTotal-this.lastNeed,s=utf8CheckExtraBytes(this,t,e);return void 0!==s?s:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function utf8Text(t,e){var s=utf8CheckIncomplete(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=s;var i=t.length-(s-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)}function utf8End(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e}function utf16Text(t,e){if((t.length-e)%2==0){var s=t.toString("utf16le",e);if(s){var i=s.charCodeAt(s.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],s.slice(0,-1)}return s}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function utf16End(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var s=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,s)}return e}function base64Text(t,e){var s=(t.length-e)%3;return 0===s?t.toString("base64",e):(this.lastNeed=3-s,this.lastTotal=3,1===s?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-s))}function base64End(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function simpleWrite(t){return t.toString(this.encoding)}function simpleEnd(t){return t&&t.length?this.write(t):""}exports.StringDecoder=StringDecoder,StringDecoder.prototype.write=function(t){if(0===t.length)return"";var e,s;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";s=this.lastNeed,this.lastNeed=0}else s=0;return s=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},exports.setImmediate="function"==typeof setImmediate?setImmediate:function(e){var t=nextImmediateId++,i=!(arguments.length<2)&&slice.call(arguments,1);return immediateIds[t]=!0,nextTick(function(){immediateIds[t]&&(i?e.apply(null,i):e.call(null),exports.clearImmediate(t))}),t},exports.clearImmediate="function"==typeof clearImmediate?clearImmediate:function(e){delete immediateIds[e]}}).call(this,require("timers").setImmediate,require("timers").clearImmediate)},{"process/browser.js":66,timers:85}],86:[function(require,module,exports){var Buffer=require("buffer").Buffer;module.exports=function(e){if(e instanceof Uint8Array){if(0===e.byteOffset&&e.byteLength===e.buffer.byteLength)return e.buffer;if("function"==typeof e.buffer.slice)return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}if(Buffer.isBuffer(e)){for(var f=new Uint8Array(e.length),r=e.length,t=0;t",'"',"`"," ","\r","\n","\t"],unwise=["{","}","|","\\","^","`"].concat(delims),autoEscape=["'"].concat(unwise),nonHostChars=["%","/","?",";","#"].concat(autoEscape),hostEndingChars=["/","?","#"],hostnameMaxLen=255,hostnamePartPattern=/^[+a-z0-9A-Z_-]{0,63}$/,hostnamePartStart=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,unsafeProtocol={javascript:!0,"javascript:":!0},hostlessProtocol={javascript:!0,"javascript:":!0},slashedProtocol={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},querystring=require("querystring");function urlParse(t,s,e){if(t&&util.isObject(t)&&t instanceof Url)return t;var h=new Url;return h.parse(t,s,e),h}function urlFormat(t){return util.isString(t)&&(t=urlParse(t)),t instanceof Url?t.format():Url.prototype.format.call(t)}function urlResolve(t,s){return urlParse(t,!1,!0).resolve(s)}function urlResolveObject(t,s){return t?urlParse(t,!1,!0).resolveObject(s):s}Url.prototype.parse=function(t,s,e){if(!util.isString(t))throw new TypeError("Parameter 'url' must be a string, not "+typeof t);var h=t.indexOf("?"),r=-1!==h&&h127?b+="x":b+=d[q];if(!b.match(hostnamePartPattern)){var j=y.slice(0,m),x=y.slice(m+1),U=d.match(hostnamePartStart);U&&(j.push(U[1]),x.unshift(U[2])),x.length&&(o="/"+x.join(".")+o),this.hostname=j.join(".");break}}}this.hostname.length>hostnameMaxLen?this.hostname="":this.hostname=this.hostname.toLowerCase(),g||(this.hostname=punycode.toASCII(this.hostname));var C=this.port?":"+this.port:"",A=this.hostname||"";this.host=A+C,this.href+=this.host,g&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==o[0]&&(o="/"+o))}if(!unsafeProtocol[l])for(m=0,P=autoEscape.length;m0)&&e.host.split("@"))&&(e.auth=U.shift(),e.host=e.hostname=U.shift());return e.search=t.search,e.query=t.query,util.isNull(e.pathname)&&util.isNull(e.search)||(e.path=(e.pathname?e.pathname:"")+(e.search?e.search:"")),e.href=e.format(),e}if(!d.length)return e.pathname=null,e.search?e.path="/"+e.search:e.path=null,e.href=e.format(),e;for(var q=d.slice(-1)[0],O=(e.host||t.host||d.length>1)&&("."===q||".."===q)||""===q,j=0,x=d.length;x>=0;x--)"."===(q=d[x])?d.splice(x,1):".."===q?(d.splice(x,1),j++):j&&(d.splice(x,1),j--);if(!y&&!P)for(;j--;j)d.unshift("..");!y||""===d[0]||d[0]&&"/"===d[0].charAt(0)||d.unshift(""),O&&"/"!==d.join("/").substr(-1)&&d.push("");var U,C=""===d[0]||d[0]&&"/"===d[0].charAt(0);b&&(e.hostname=e.host=C?"":d.length?d.shift():"",(U=!!(e.host&&e.host.indexOf("@")>0)&&e.host.split("@"))&&(e.auth=U.shift(),e.host=e.hostname=U.shift()));return(y=y||e.host&&d.length)&&!C&&d.unshift(""),d.length?e.pathname=d.join("/"):(e.pathname=null,e.path=null),util.isNull(e.pathname)&&util.isNull(e.search)||(e.path=(e.pathname?e.pathname:"")+(e.search?e.search:"")),e.auth=t.auth||e.auth,e.slashes=e.slashes||t.slashes,e.href=e.format(),e},Url.prototype.parseHost=function(){var t=this.host,s=portPattern.exec(t);s&&(":"!==(s=s[0])&&(this.port=s.substr(1)),t=t.substr(0,t.length-s.length)),t&&(this.hostname=t)}},{"./util":88,punycode:22,querystring:69}],88:[function(require,module,exports){"use strict";module.exports={isString:function(n){return"string"==typeof n},isObject:function(n){return"object"==typeof n&&null!==n},isNull:function(n){return null===n},isNullOrUndefined:function(n){return null==n}}},{}],89:[function(require,module,exports){(function(global){function deprecate(r,e){if(config("noDeprecation"))return r;var o=!1;return function(){if(!o){if(config("throwDeprecation"))throw new Error(e);config("traceDeprecation")?console.trace(e):console.warn(e),o=!0}return r.apply(this,arguments)}}function config(r){try{if(!global.localStorage)return!1}catch(r){return!1}var e=global.localStorage[r];return null!=e&&"true"===String(e).toLowerCase()}module.exports=deprecate}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],90:[function(require,module,exports){module.exports=extend;var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(){for(var r={},e=0;e0?u:s;plugins.sort(i),plugins.run(i,\"parse\",r).then(function(n){!n.plugin.allowEmpty&&isEmpty(n.result)?t(ono.syntax('Error parsing \"%s\" as %s. \\nParsed value is empty',r.url,n.plugin.name)):e(n)},function(n){n?(n=n instanceof Error?n:new Error(n),t(ono.syntax(n,\"Error parsing %s\",r.url))):t(ono.syntax(\"Unable to parse %s\",r.url))})})}function isEmpty(r){return void 0===r||\"object\"==typeof r&&0===Object.keys(r).length||\"string\"==typeof r&&0===r.trim().length||Buffer.isBuffer(r)&&0===r.length}module.exports=parse;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhcnNlLmpzIl0sIm5hbWVzIjpbIm9ubyIsInJlcXVpcmUiLCJ1cmwiLCJwbHVnaW5zIiwicGFyc2UiLCJwYXRoIiwiJHJlZnMiLCJvcHRpb25zIiwic3RyaXBIYXNoIiwiJHJlZiIsIl9hZGQiLCJmaWxlIiwiZXh0ZW5zaW9uIiwiZ2V0RXh0ZW5zaW9uIiwicmVhZEZpbGUiLCJ0aGVuIiwicmVzb2x2ZXIiLCJwYXRoVHlwZSIsInBsdWdpbiIsIm5hbWUiLCJkYXRhIiwicmVzdWx0IiwicGFyc2VGaWxlIiwicGFyc2VyIiwidmFsdWUiLCJlIiwiUHJvbWlzZSIsInJlamVjdCIsInJlc29sdmUiLCJyZXNvbHZlcnMiLCJhbGwiLCJmaWx0ZXIiLCJzb3J0IiwicnVuIiwiZXJyIiwiU3ludGF4RXJyb3IiLCJzeW50YXgiLCJhbGxQYXJzZXJzIiwiZmlsdGVyZWRQYXJzZXJzIiwicGFyc2VycyIsImxlbmd0aCIsImFsbG93RW1wdHkiLCJpc0VtcHR5IiwiRXJyb3IiLCJ1bmRlZmluZWQiLCJPYmplY3QiLCJrZXlzIiwidHJpbSIsIkJ1ZmZlciIsImlzQnVmZmVyIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxJQUFNQyxRQUFRLE9BQ2RDLElBQU1ELFFBQVEsY0FDZEUsUUFBVUYsUUFBUSxrQkFjdEIsU0FBU0csTUFBT0MsRUFBTUMsRUFBT0MsR0FDM0IsSUFFRUYsRUFBT0gsSUFBSU0sVUFBVUgsR0FJckIsSUFBSUksRUFBT0gsRUFBTUksS0FBS0wsR0FHbEJNLEVBQU8sQ0FDVFQsSUFBS0csRUFDTE8sVUFBV1YsSUFBSVcsYUFBYVIsSUFJOUIsT0FBT1MsU0FBU0gsRUFBTUosR0FDbkJRLEtBQUssU0FBVUMsR0FHZCxPQUZBUCxFQUFLUSxTQUFXRCxFQUFTRSxPQUFPQyxLQUNoQ1IsRUFBS1MsS0FBT0osRUFBU0ssT0FDZEMsVUFBVVgsRUFBTUosS0FFeEJRLEtBQUssU0FBVVEsR0FFZCxPQURBZCxFQUFLZSxNQUFRRCxFQUFPRixPQUNiRSxFQUFPRixTQUdwQixNQUFPSSxHQUNMLE9BQU9DLFFBQVFDLE9BQU9GLElBZTFCLFNBQVNYLFNBQVVILEVBQU1KLEdBQ3ZCLE9BQU8sSUFBSW1CLFFBQVEsU0FBVUUsRUFBU0QsR0FJcEMsSUFBSUUsRUFBWTFCLFFBQVEyQixJQUFJdkIsRUFBUXFCLFNBQ3BDQyxFQUFZMUIsUUFBUTRCLE9BQU9GLEVBQVcsVUFBV2xCLEdBR2pEUixRQUFRNkIsS0FBS0gsR0FDYjFCLFFBQVE4QixJQUFJSixFQUFXLE9BQVFsQixHQUM1QkksS0FBS2EsRUFFUixTQUFrQk0sSUFHWkEsR0FBU0EsYUFBZUMsWUFJMUJSLEVBQU8zQixJQUFJb0MsT0FBTyxzQ0FBdUN6QixFQUFLVCxNQUg5RHlCLEVBQU9PLE9BcUJmLFNBQVNaLFVBQVdYLEVBQU1KLEdBQ3hCLE9BQU8sSUFBSW1CLFFBQVEsU0FBVUUsRUFBU0QsR0FNcEMsSUFBSVUsRUFBYWxDLFFBQVEyQixJQUFJdkIsRUFBUUgsT0FDakNrQyxFQUFrQm5DLFFBQVE0QixPQUFPTSxFQUFZLFdBQVkxQixHQUN6RDRCLEVBQVVELEVBQWdCRSxPQUFTLEVBQUlGLEVBQWtCRCxFQUc3RGxDLFFBQVE2QixLQUFLTyxHQUNicEMsUUFBUThCLElBQUlNLEVBQVMsUUFBUzVCLEdBQzNCSSxLQUVILFNBQW1CUSxJQUNaQSxFQUFPTCxPQUFPdUIsWUFBY0MsUUFBUW5CLEVBQU9GLFFBQzlDTSxFQUFPM0IsSUFBSW9DLE9BQU8sb0RBQXFEekIsRUFBS1QsSUFBS3FCLEVBQU9MLE9BQU9DLE9BRy9GUyxFQUFRTCxJQUlaLFNBQWtCVyxHQUNaQSxHQUNGQSxFQUFNQSxhQUFlUyxNQUFRVCxFQUFNLElBQUlTLE1BQU1ULEdBQzdDUCxFQUFPM0IsSUFBSW9DLE9BQU9GLEVBQUssbUJBQW9CdkIsRUFBS1QsT0FHaER5QixFQUFPM0IsSUFBSW9DLE9BQU8scUJBQXNCekIsRUFBS1QsVUFZckQsU0FBU3dDLFFBQVNsQixHQUNoQixZQUFpQm9CLElBQVZwQixHQUNhLGlCQUFWQSxHQUFvRCxJQUE5QnFCLE9BQU9DLEtBQUt0QixHQUFPZ0IsUUFDL0IsaUJBQVZoQixHQUE4QyxJQUF4QkEsRUFBTXVCLE9BQU9QLFFBQzFDUSxPQUFPQyxTQUFTekIsSUFBMkIsSUFBakJBLEVBQU1nQixPQTVJckNVLE9BQU9DLFFBQVUvQyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcGFyc2UuanMifQ==", - "\"use strict\";var BINARY_REGEXP=/\\.(jpeg|jpg|gif|png|bmp|ico)$/i;module.exports={order:400,allowEmpty:!0,canParse:function(r){return Buffer.isBuffer(r.data)&&BINARY_REGEXP.test(r.url)},parse:function(r){return Buffer.isBuffer(r.data)?r.data:new Buffer(r.data)}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJpbmFyeS5qcyJdLCJuYW1lcyI6WyJCSU5BUllfUkVHRVhQIiwibW9kdWxlIiwiZXhwb3J0cyIsIm9yZGVyIiwiYWxsb3dFbXB0eSIsImNhblBhcnNlIiwiZmlsZSIsIkJ1ZmZlciIsImlzQnVmZmVyIiwiZGF0YSIsInRlc3QiLCJ1cmwiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxjQUFnQixpQ0FFcEJDLE9BQU9DLFFBQVUsQ0FNZkMsTUFBTyxJQU9QQyxZQUFZLEVBY1pDLFNBQVUsU0FBbUJDLEdBRTNCLE9BQU9DLE9BQU9DLFNBQVNGLEVBQUtHLE9BQVNULGNBQWNVLEtBQUtKLEVBQUtLLE1BWS9EQyxNQUFPLFNBQXNCTixHQUMzQixPQUFJQyxPQUFPQyxTQUFTRixFQUFLRyxNQUNoQkgsRUFBS0csS0FJTCxJQUFJRixPQUFPRCxFQUFLRyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcGFyc2Vycy9iaW5hcnkuanMifQ==", - "\"use strict\";module.exports={order:100,allowEmpty:!0,canParse:\".json\",parse:function(r){return new Promise(function(e,t){var n=r.data;Buffer.isBuffer(n)&&(n=n.toString()),\"string\"==typeof n?0===n.trim().length?e(void 0):e(JSON.parse(n)):e(n)})}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImpzb24uanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm9yZGVyIiwiYWxsb3dFbXB0eSIsImNhblBhcnNlIiwicGFyc2UiLCJmaWxlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJkYXRhIiwiQnVmZmVyIiwiaXNCdWZmZXIiLCJ0b1N0cmluZyIsInRyaW0iLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJKU09OIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUVBQSxPQUFPQyxRQUFVLENBTWZDLE1BQU8sSUFPUEMsWUFBWSxFQVVaQyxTQUFVLFFBV1ZDLE1BQU8sU0FBb0JDLEdBQ3pCLE9BQU8sSUFBSUMsUUFBUSxTQUFVQyxFQUFTQyxHQUNwQyxJQUFJQyxFQUFPSixFQUFLSSxLQUNaQyxPQUFPQyxTQUFTRixLQUNsQkEsRUFBT0EsRUFBS0csWUFHTSxpQkFBVEgsRUFDa0IsSUFBdkJBLEVBQUtJLE9BQU9DLE9BQ2RQLE9BQVFRLEdBR1JSLEVBQVFTLEtBQUtaLE1BQU1LLElBS3JCRixFQUFRRSIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcGFyc2Vycy9qc29uLmpzIn0=", - "\"use strict\";var TEXT_REGEXP=/\\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i;module.exports={order:300,allowEmpty:!0,encoding:\"utf8\",canParse:function(t){return(\"string\"==typeof t.data||Buffer.isBuffer(t.data))&&TEXT_REGEXP.test(t.url)},parse:function(t){if(\"string\"==typeof t.data)return t.data;if(Buffer.isBuffer(t.data))return t.data.toString(this.encoding);throw new Error(\"data is not text\")}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRleHQuanMiXSwibmFtZXMiOlsiVEVYVF9SRUdFWFAiLCJtb2R1bGUiLCJleHBvcnRzIiwib3JkZXIiLCJhbGxvd0VtcHR5IiwiZW5jb2RpbmciLCJjYW5QYXJzZSIsImZpbGUiLCJkYXRhIiwiQnVmZmVyIiwiaXNCdWZmZXIiLCJ0ZXN0IiwidXJsIiwicGFyc2UiLCJ0b1N0cmluZyIsInRoaXMiLCJFcnJvciJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxZQUFjLHlEQUVsQkMsT0FBT0MsUUFBVSxDQU1mQyxNQUFPLElBT1BDLFlBQVksRUFPWkMsU0FBVSxPQWNWQyxTQUFVLFNBQWlCQyxHQUV6QixPQUE2QixpQkFBZEEsRUFBS0MsTUFBcUJDLE9BQU9DLFNBQVNILEVBQUtDLFFBQVVSLFlBQVlXLEtBQUtKLEVBQUtLLE1BWWhHQyxNQUFPLFNBQW9CTixHQUN6QixHQUF5QixpQkFBZEEsRUFBS0MsS0FDZCxPQUFPRCxFQUFLQyxLQUVULEdBQUlDLE9BQU9DLFNBQVNILEVBQUtDLE1BQzVCLE9BQU9ELEVBQUtDLEtBQUtNLFNBQVNDLEtBQUtWLFVBRy9CLE1BQU0sSUFBSVcsTUFBTSIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcGFyc2Vycy90ZXh0LmpzIn0=", - "\"use strict\";var YAML=require(\"../util/yaml\");module.exports={order:200,allowEmpty:!0,canParse:[\".yaml\",\".yml\",\".json\"],parse:function(r){return new Promise(function(e,t){var a=r.data;Buffer.isBuffer(a)&&(a=a.toString()),e(\"string\"==typeof a?YAML.parse(a):a)})}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInlhbWwuanMiXSwibmFtZXMiOlsiWUFNTCIsInJlcXVpcmUiLCJtb2R1bGUiLCJleHBvcnRzIiwib3JkZXIiLCJhbGxvd0VtcHR5IiwiY2FuUGFyc2UiLCJwYXJzZSIsImZpbGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImRhdGEiLCJCdWZmZXIiLCJpc0J1ZmZlciIsInRvU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUVBLElBQUlBLEtBQU9DLFFBQVEsZ0JBRW5CQyxPQUFPQyxRQUFVLENBTWZDLE1BQU8sSUFPUEMsWUFBWSxFQVVaQyxTQUFVLENBQUMsUUFBUyxPQUFRLFNBVzVCQyxNQUFPLFNBQW9CQyxHQUN6QixPQUFPLElBQUlDLFFBQVEsU0FBVUMsRUFBU0MsR0FDcEMsSUFBSUMsRUFBT0osRUFBS0ksS0FDWkMsT0FBT0MsU0FBU0YsS0FDbEJBLEVBQU9BLEVBQUtHLFlBSVpMLEVBRGtCLGlCQUFURSxFQUNEWixLQUFLTyxNQUFNSyxHQUlYQSIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcGFyc2Vycy95YW1sLmpzIn0=", - "\"use strict\";module.exports=Pointer;var $Ref=require(\"./ref\"),url=require(\"./util/url\"),ono=require(\"ono\"),slashes=/\\//g,tildes=/~/g,escapedSlash=/~1/g,escapedTilde=/~0/g;function Pointer(e,r,t){this.$ref=e,this.path=r,this.originalPath=t||r,this.value=void 0,this.circular=!1,this.indirections=0}function resolveIf$Ref(e,r){if($Ref.isAllowed$Ref(e.value,r)){var t=url.resolve(e.path,e.value.$ref);if(t!==e.path){var i=e.$ref.$refs._resolve(t,r);return e.indirections+=i.indirections+1,$Ref.isExtended$Ref(e.value)?(e.value=$Ref.dereference(e.value,i.value),!1):(e.$ref=i.$ref,e.path=i.path,e.value=i.value,!0)}e.circular=!0}}function setValue(e,r,t){if(!e.value||\"object\"!=typeof e.value)throw ono.syntax('Error assigning $ref pointer \"%s\". \\nCannot set \"%s\" of a non-object.',e.path,r);return\"-\"===r&&Array.isArray(e.value)?e.value.push(t):e.value[r]=t,t}Pointer.prototype.resolve=function(e,r){var t=Pointer.parse(this.path);this.value=e;for(var i=0;i0},$Ref.isExternal$Ref=function(e){return $Ref.is$Ref(e)&&\"#\"!==e.$ref[0]},$Ref.isAllowed$Ref=function(e,t){if($Ref.is$Ref(e)){if(\"#/\"===e.$ref.substr(0,2)||\"#\"===e.$ref)return!0;if(\"#\"!==e.$ref[0]&&(!t||t.resolve.external))return!0}},$Ref.isExtended$Ref=function(e){return $Ref.is$Ref(e)&&Object.keys(e).length>1},$Ref.dereference=function(e,t){if(t&&\"object\"==typeof t&&$Ref.isExtended$Ref(e)){var r={};return Object.keys(e).forEach(function(t){\"$ref\"!==t&&(r[t]=e[t])}),Object.keys(t).forEach(function(e){e in r||(r[e]=t[e])}),r}return t};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlZi5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwiJFJlZiIsIlBvaW50ZXIiLCJyZXF1aXJlIiwidGhpcyIsInBhdGgiLCJ1bmRlZmluZWQiLCJ2YWx1ZSIsIiRyZWZzIiwicGF0aFR5cGUiLCJwcm90b3R5cGUiLCJleGlzdHMiLCJvcHRpb25zIiwicmVzb2x2ZSIsImUiLCJnZXQiLCJmcmllbmRseVBhdGgiLCJzZXQiLCJwb2ludGVyIiwiaXMkUmVmIiwiJHJlZiIsImxlbmd0aCIsImlzRXh0ZXJuYWwkUmVmIiwiaXNBbGxvd2VkJFJlZiIsInN1YnN0ciIsImV4dGVybmFsIiwiaXNFeHRlbmRlZCRSZWYiLCJPYmplY3QiLCJrZXlzIiwiZGVyZWZlcmVuY2UiLCJyZXNvbHZlZFZhbHVlIiwibWVyZ2VkIiwiZm9yRWFjaCIsImtleSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQUEsT0FBT0MsUUFBVUMsS0FFakIsSUFBSUMsUUFBVUMsUUFBUSxhQU90QixTQUFTRixPQVdQRyxLQUFLQyxVQUFPQyxFQU9aRixLQUFLRyxXQUFRRCxFQU1iRixLQUFLSSxXQUFRRixFQU1iRixLQUFLSyxjQUFXSCxFQVVsQkwsS0FBS1MsVUFBVUMsT0FBUyxTQUFVTixFQUFNTyxHQUN0QyxJQUVFLE9BREFSLEtBQUtTLFFBQVFSLEVBQU1PLElBQ1osRUFFVCxNQUFPRSxHQUNMLE9BQU8sSUFXWGIsS0FBS1MsVUFBVUssSUFBTSxTQUFVVixFQUFNTyxHQUNuQyxPQUFPUixLQUFLUyxRQUFRUixFQUFNTyxHQUFTTCxPQVdyQ04sS0FBS1MsVUFBVUcsUUFBVSxTQUFVUixFQUFNTyxFQUFTSSxHQUVoRCxPQURjLElBQUlkLFFBQVFFLEtBQU1DLEVBQU1XLEdBQ3ZCSCxRQUFRVCxLQUFLRyxNQUFPSyxJQVVyQ1gsS0FBS1MsVUFBVU8sSUFBTSxTQUFVWixFQUFNRSxHQUNuQyxJQUFJVyxFQUFVLElBQUloQixRQUFRRSxLQUFNQyxHQUNoQ0QsS0FBS0csTUFBUVcsRUFBUUQsSUFBSWIsS0FBS0csTUFBT0EsSUFTdkNOLEtBQUtrQixPQUFTLFNBQVVaLEdBQ3RCLE9BQU9BLEdBQTBCLGlCQUFWQSxHQUE0QyxpQkFBZkEsRUFBTWEsTUFBcUJiLEVBQU1hLEtBQUtDLE9BQVMsR0FTckdwQixLQUFLcUIsZUFBaUIsU0FBVWYsR0FDOUIsT0FBT04sS0FBS2tCLE9BQU9aLElBQTRCLE1BQWxCQSxFQUFNYSxLQUFLLElBVzFDbkIsS0FBS3NCLGNBQWdCLFNBQVVoQixFQUFPSyxHQUNwQyxHQUFJWCxLQUFLa0IsT0FBT1osR0FBUSxDQUN0QixHQUFnQyxPQUE1QkEsRUFBTWEsS0FBS0ksT0FBTyxFQUFHLElBQThCLE1BQWZqQixFQUFNYSxLQUU1QyxPQUFPLEVBRUosR0FBc0IsTUFBbEJiLEVBQU1hLEtBQUssTUFBZ0JSLEdBQVdBLEVBQVFDLFFBQVFZLFVBRTdELE9BQU8sSUF5Q2J4QixLQUFLeUIsZUFBaUIsU0FBVW5CLEdBQzlCLE9BQU9OLEtBQUtrQixPQUFPWixJQUFVb0IsT0FBT0MsS0FBS3JCLEdBQU9jLE9BQVMsR0FxQzNEcEIsS0FBSzRCLFlBQWMsU0FBVVQsRUFBTVUsR0FDakMsR0FBSUEsR0FBMEMsaUJBQWxCQSxHQUE4QjdCLEtBQUt5QixlQUFlTixHQUFPLENBQ25GLElBQUlXLEVBQVMsR0FXYixPQVZBSixPQUFPQyxLQUFLUixHQUFNWSxRQUFRLFNBQVVDLEdBQ3RCLFNBQVJBLElBQ0ZGLEVBQU9FLEdBQU9iLEVBQUthLE1BR3ZCTixPQUFPQyxLQUFLRSxHQUFlRSxRQUFRLFNBQVVDLEdBQ3JDQSxLQUFPRixJQUNYQSxFQUFPRSxHQUFPSCxFQUFjRyxNQUd6QkYsRUFJUCxPQUFPRCIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcmVmLmpzIn0=", - "\"use strict\";var ono=require(\"ono\"),$Ref=require(\"./ref\"),url=require(\"./util/url\");function $Refs(){this.circular=!1,this._$refs={},this._root$Ref=null}function getPaths(e,r){var t=Object.keys(e);return(r=Array.isArray(r[0])?r[0]:Array.prototype.slice.call(r)).length>0&&r[0]&&(t=t.filter(function(t){return-1!==r.indexOf(e[t].pathType)})),t.map(function(r){return{encoded:r,decoded:\"file\"===e[r].pathType?url.toFileSystemPath(r,!0):r}})}module.exports=$Refs,$Refs.prototype.paths=function(e){return getPaths(this._$refs,arguments).map(function(e){return e.decoded})},$Refs.prototype.values=function(e){var r=this._$refs;return getPaths(r,arguments).reduce(function(e,t){return e[t.decoded]=r[t.encoded].value,e},{})},$Refs.prototype.toJSON=$Refs.prototype.values,$Refs.prototype.exists=function(e,r){try{return this._resolve(e,r),!0}catch(e){return!1}},$Refs.prototype.get=function(e,r){return this._resolve(e,r).value},$Refs.prototype.set=function(e,r){var t=url.resolve(this._root$Ref.path,e),o=url.stripHash(t),s=this._$refs[o];if(!s)throw ono('Error resolving $ref pointer \"%s\". \\n\"%s\" not found.',e,o);s.set(t,r)},$Refs.prototype._add=function(e){var r=url.stripHash(e),t=new $Ref;return t.path=r,t.$refs=this,this._$refs[r]=t,this._root$Ref=this._root$Ref||t,t},$Refs.prototype._resolve=function(e,r){var t=url.resolve(this._root$Ref.path,e),o=url.stripHash(t),s=this._$refs[o];if(!s)throw ono('Error resolving $ref pointer \"%s\". \\n\"%s\" not found.',e,o);return s.resolve(t,r,e)},$Refs.prototype._get$Ref=function(e){e=url.resolve(this._root$Ref.path,e);var r=url.stripHash(e);return this._$refs[r]};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlZnMuanMiXSwibmFtZXMiOlsib25vIiwicmVxdWlyZSIsIiRSZWYiLCJ1cmwiLCIkUmVmcyIsInRoaXMiLCJjaXJjdWxhciIsIl8kcmVmcyIsIl9yb290JFJlZiIsImdldFBhdGhzIiwiJHJlZnMiLCJ0eXBlcyIsInBhdGhzIiwiT2JqZWN0Iiwia2V5cyIsIkFycmF5IiwiaXNBcnJheSIsInByb3RvdHlwZSIsInNsaWNlIiwiY2FsbCIsImxlbmd0aCIsImZpbHRlciIsImtleSIsImluZGV4T2YiLCJwYXRoVHlwZSIsIm1hcCIsInBhdGgiLCJlbmNvZGVkIiwiZGVjb2RlZCIsInRvRmlsZVN5c3RlbVBhdGgiLCJtb2R1bGUiLCJleHBvcnRzIiwiYXJndW1lbnRzIiwidmFsdWVzIiwicmVkdWNlIiwib2JqIiwidmFsdWUiLCJ0b0pTT04iLCJleGlzdHMiLCJvcHRpb25zIiwiX3Jlc29sdmUiLCJlIiwiZ2V0Iiwic2V0IiwiYWJzUGF0aCIsInJlc29sdmUiLCJ3aXRob3V0SGFzaCIsInN0cmlwSGFzaCIsIiRyZWYiLCJfYWRkIiwiX2dldCRSZWYiXSwibWFwcGluZ3MiOiJBQUFBLGFBRUEsSUFBSUEsSUFBTUMsUUFBUSxPQUNkQyxLQUFPRCxRQUFRLFNBQ2ZFLElBQU1GLFFBQVEsY0FPbEIsU0FBU0csUUFNUEMsS0FBS0MsVUFBVyxFQVFoQkQsS0FBS0UsT0FBUyxHQVFkRixLQUFLRyxVQUFZLEtBZ0puQixTQUFTQyxTQUFVQyxFQUFPQyxHQUN4QixJQUFJQyxFQUFRQyxPQUFPQyxLQUFLSixHQVd4QixPQVJBQyxFQUFRSSxNQUFNQyxRQUFRTCxFQUFNLElBQU1BLEVBQU0sR0FBS0ksTUFBTUUsVUFBVUMsTUFBTUMsS0FBS1IsSUFDOURTLE9BQVMsR0FBS1QsRUFBTSxLQUM1QkMsRUFBUUEsRUFBTVMsT0FBTyxTQUFVQyxHQUM3QixPQUErQyxJQUF4Q1gsRUFBTVksUUFBUWIsRUFBTVksR0FBS0UsYUFLN0JaLEVBQU1hLElBQUksU0FBVUMsR0FDekIsTUFBTyxDQUNMQyxRQUFTRCxFQUNURSxRQUFrQyxTQUF6QmxCLEVBQU1nQixHQUFNRixTQUFzQnJCLElBQUkwQixpQkFBaUJILEdBQU0sR0FBUUEsS0ExTHBGSSxPQUFPQyxRQUFVM0IsTUFxQ2pCQSxNQUFNYSxVQUFVTCxNQUFRLFNBQVVELEdBRWhDLE9BRFlGLFNBQVNKLEtBQUtFLE9BQVF5QixXQUNyQlAsSUFBSSxTQUFVQyxHQUN6QixPQUFPQSxFQUFLRSxXQVVoQnhCLE1BQU1hLFVBQVVnQixPQUFTLFNBQVV0QixHQUNqQyxJQUFJRCxFQUFRTCxLQUFLRSxPQUVqQixPQURZRSxTQUFTQyxFQUFPc0IsV0FDZkUsT0FBTyxTQUFVQyxFQUFLVCxHQUVqQyxPQURBUyxFQUFJVCxFQUFLRSxTQUFXbEIsRUFBTWdCLEVBQUtDLFNBQVNTLE1BQ2pDRCxHQUNOLEtBUUwvQixNQUFNYSxVQUFVb0IsT0FBU2pDLE1BQU1hLFVBQVVnQixPQVN6QzdCLE1BQU1hLFVBQVVxQixPQUFTLFNBQVVaLEVBQU1hLEdBQ3ZDLElBRUUsT0FEQWxDLEtBQUttQyxTQUFTZCxFQUFNYSxJQUNiLEVBRVQsTUFBT0UsR0FDTCxPQUFPLElBV1hyQyxNQUFNYSxVQUFVeUIsSUFBTSxTQUFVaEIsRUFBTWEsR0FDcEMsT0FBT2xDLEtBQUttQyxTQUFTZCxFQUFNYSxHQUFTSCxPQVV0Q2hDLE1BQU1hLFVBQVUwQixJQUFNLFNBQVVqQixFQUFNVSxHQUNwQyxJQUFJUSxFQUFVekMsSUFBSTBDLFFBQVF4QyxLQUFLRyxVQUFVa0IsS0FBTUEsR0FDM0NvQixFQUFjM0MsSUFBSTRDLFVBQVVILEdBQzVCSSxFQUFPM0MsS0FBS0UsT0FBT3VDLEdBRXZCLElBQUtFLEVBQ0gsTUFBTWhELElBQUksdURBQXdEMEIsRUFBTW9CLEdBRzFFRSxFQUFLTCxJQUFJQyxFQUFTUixJQVFwQmhDLE1BQU1hLFVBQVVnQyxLQUFPLFNBQVV2QixHQUMvQixJQUFJb0IsRUFBYzNDLElBQUk0QyxVQUFVckIsR0FFNUJzQixFQUFPLElBQUk5QyxLQU9mLE9BTkE4QyxFQUFLdEIsS0FBT29CLEVBQ1pFLEVBQUt0QyxNQUFRTCxLQUViQSxLQUFLRSxPQUFPdUMsR0FBZUUsRUFDM0IzQyxLQUFLRyxVQUFZSCxLQUFLRyxXQUFhd0MsRUFFNUJBLEdBV1Q1QyxNQUFNYSxVQUFVdUIsU0FBVyxTQUFVZCxFQUFNYSxHQUN6QyxJQUFJSyxFQUFVekMsSUFBSTBDLFFBQVF4QyxLQUFLRyxVQUFVa0IsS0FBTUEsR0FDM0NvQixFQUFjM0MsSUFBSTRDLFVBQVVILEdBQzVCSSxFQUFPM0MsS0FBS0UsT0FBT3VDLEdBRXZCLElBQUtFLEVBQ0gsTUFBTWhELElBQUksdURBQXdEMEIsRUFBTW9CLEdBRzFFLE9BQU9FLEVBQUtILFFBQVFELEVBQVNMLEVBQVNiLElBVXhDdEIsTUFBTWEsVUFBVWlDLFNBQVcsU0FBVXhCLEdBQ25DQSxFQUFPdkIsSUFBSTBDLFFBQVF4QyxLQUFLRyxVQUFVa0IsS0FBTUEsR0FDeEMsSUFBSW9CLEVBQWMzQyxJQUFJNEMsVUFBVXJCLEdBQ2hDLE9BQU9yQixLQUFLRSxPQUFPdUMiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbGliL3JlZnMuanMifQ==", - "\"use strict\";var $Ref=require(\"./ref\"),Pointer=require(\"./pointer\"),parse=require(\"./parse\"),url=require(\"./util/url\");function resolveExternal(e,r){if(!r.resolve.external)return Promise.resolve();try{var t=crawl(e.schema,e.$refs._root$Ref.path+\"#\",e.$refs,r);return Promise.all(t)}catch(e){return Promise.reject(e)}}function crawl(e,r,t,o){var s=[];return e&&\"object\"==typeof e&&($Ref.isExternal$Ref(e)?s.push(resolve$Ref(e,r,t,o)):Object.keys(e).forEach(function(l){var a=Pointer.join(r,l),n=e[l];$Ref.isExternal$Ref(n)?s.push(resolve$Ref(n,a,t,o)):s=s.concat(crawl(n,a,t,o))})),s}function resolve$Ref(e,r,t,o){var s=url.resolve(r,e.$ref),l=url.stripHash(s);return(e=t._$refs[l])?Promise.resolve(e.value):parse(s,t,o).then(function(e){var r=crawl(e,l+\"#\",t,o);return Promise.all(r)})}module.exports=resolveExternal;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc29sdmUtZXh0ZXJuYWwuanMiXSwibmFtZXMiOlsiJFJlZiIsInJlcXVpcmUiLCJQb2ludGVyIiwicGFyc2UiLCJ1cmwiLCJyZXNvbHZlRXh0ZXJuYWwiLCJwYXJzZXIiLCJvcHRpb25zIiwicmVzb2x2ZSIsImV4dGVybmFsIiwiUHJvbWlzZSIsInByb21pc2VzIiwiY3Jhd2wiLCJzY2hlbWEiLCIkcmVmcyIsIl9yb290JFJlZiIsInBhdGgiLCJhbGwiLCJlIiwicmVqZWN0Iiwib2JqIiwiaXNFeHRlcm5hbCRSZWYiLCJwdXNoIiwicmVzb2x2ZSRSZWYiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsImtleVBhdGgiLCJqb2luIiwidmFsdWUiLCJjb25jYXQiLCIkcmVmIiwicmVzb2x2ZWRQYXRoIiwid2l0aG91dEhhc2giLCJzdHJpcEhhc2giLCJfJHJlZnMiLCJ0aGVuIiwicmVzdWx0IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxLQUFPQyxRQUFRLFNBQ2ZDLFFBQVVELFFBQVEsYUFDbEJFLE1BQVFGLFFBQVEsV0FDaEJHLElBQU1ILFFBQVEsY0FpQmxCLFNBQVNJLGdCQUFpQkMsRUFBUUMsR0FDaEMsSUFBS0EsRUFBUUMsUUFBUUMsU0FFbkIsT0FBT0MsUUFBUUYsVUFHakIsSUFFRSxJQUFJRyxFQUFXQyxNQUFNTixFQUFPTyxPQUFRUCxFQUFPUSxNQUFNQyxVQUFVQyxLQUFPLElBQUtWLEVBQU9RLE1BQU9QLEdBQ3JGLE9BQU9HLFFBQVFPLElBQUlOLEdBRXJCLE1BQU9PLEdBQ0wsT0FBT1IsUUFBUVMsT0FBT0QsSUFrQjFCLFNBQVNOLE1BQU9RLEVBQUtKLEVBQU1GLEVBQU9QLEdBQ2hDLElBQUlJLEVBQVcsR0FxQmYsT0FuQklTLEdBQXNCLGlCQUFSQSxJQUNacEIsS0FBS3FCLGVBQWVELEdBQ3RCVCxFQUFTVyxLQUFLQyxZQUFZSCxFQUFLSixFQUFNRixFQUFPUCxJQUc1Q2lCLE9BQU9DLEtBQUtMLEdBQUtNLFFBQVEsU0FBVUMsR0FDakMsSUFBSUMsRUFBVTFCLFFBQVEyQixLQUFLYixFQUFNVyxHQUM3QkcsRUFBUVYsRUFBSU8sR0FFWjNCLEtBQUtxQixlQUFlUyxHQUN0Qm5CLEVBQVNXLEtBQUtDLFlBQVlPLEVBQU9GLEVBQVNkLEVBQU9QLElBR2pESSxFQUFXQSxFQUFTb0IsT0FBT25CLE1BQU1rQixFQUFPRixFQUFTZCxFQUFPUCxPQU16REksRUFlVCxTQUFTWSxZQUFhUyxFQUFNaEIsRUFBTUYsRUFBT1AsR0FHdkMsSUFBSTBCLEVBQWU3QixJQUFJSSxRQUFRUSxFQUFNZ0IsRUFBS0EsTUFDdENFLEVBQWM5QixJQUFJK0IsVUFBVUYsR0FJaEMsT0FEQUQsRUFBT2xCLEVBQU1zQixPQUFPRixJQUdYeEIsUUFBUUYsUUFBUXdCLEVBQUtGLE9BSXZCM0IsTUFBTThCLEVBQWNuQixFQUFPUCxHQUMvQjhCLEtBQUssU0FBVUMsR0FHZCxJQUFJM0IsRUFBV0MsTUFBTTBCLEVBQVFKLEVBQWMsSUFBS3BCLEVBQU9QLEdBQ3ZELE9BQU9HLFFBQVFPLElBQUlOLEtBckd6QjRCLE9BQU9DLFFBQVVuQyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcmVzb2x2ZS1leHRlcm5hbC5qcyJ9", - "\"use strict\";var fs=require(\"fs\"),ono=require(\"ono\"),url=require(\"../util/url\");module.exports={order:100,canRead:function(r){return url.isFileSystemPath(r.url)},read:function(r){return new Promise(function(e,o){var n;try{n=url.toFileSystemPath(r.url)}catch(e){o(ono.uri(e,\"Malformed URI: %s\",r.url))}try{fs.readFile(n,function(r,u){r?o(ono(r,'Error opening file \"%s\"',n)):e(u)})}catch(r){o(ono(r,'Error opening file \"%s\"',n))}})}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGUuanMiXSwibmFtZXMiOlsiZnMiLCJyZXF1aXJlIiwib25vIiwidXJsIiwibW9kdWxlIiwiZXhwb3J0cyIsIm9yZGVyIiwiY2FuUmVhZCIsImZpbGUiLCJpc0ZpbGVTeXN0ZW1QYXRoIiwicmVhZCIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwicGF0aCIsInRvRmlsZVN5c3RlbVBhdGgiLCJlcnIiLCJ1cmkiLCJyZWFkRmlsZSIsImRhdGEiXSwibWFwcGluZ3MiOiJBQUFBLGFBQ0EsSUFBSUEsR0FBS0MsUUFBUSxNQUNiQyxJQUFNRCxRQUFRLE9BQ2RFLElBQU1GLFFBQVEsZUFFbEJHLE9BQU9DLFFBQVUsQ0FNZkMsTUFBTyxJQVlQQyxRQUFTLFNBQWlCQyxHQUN4QixPQUFPTCxJQUFJTSxpQkFBaUJELEVBQUtMLE1BV25DTyxLQUFNLFNBQW1CRixHQUN2QixPQUFPLElBQUlHLFFBQVEsU0FBVUMsRUFBU0MsR0FDcEMsSUFBSUMsRUFDSixJQUNFQSxFQUFPWCxJQUFJWSxpQkFBaUJQLEVBQUtMLEtBRW5DLE1BQU9hLEdBQ0xILEVBQU9YLElBQUllLElBQUlELEVBQUssb0JBQXFCUixFQUFLTCxNQUtoRCxJQUNFSCxHQUFHa0IsU0FBU0osRUFBTSxTQUFVRSxFQUFLRyxHQUMzQkgsRUFDRkgsRUFBT1gsSUFBSWMsRUFBSywwQkFBMkJGLElBRzNDRixFQUFRTyxLQUlkLE1BQU9ILEdBQ0xILEVBQU9YLElBQUljLEVBQUssMEJBQTJCRiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9saWIvcmVzb2x2ZXJzL2ZpbGUuanMifQ==", - "\"use strict\";var http=require(\"http\"),https=require(\"https\"),ono=require(\"ono\"),url=require(\"../util/url\");function download(t,o,e){return new Promise(function(r,n){t=url.parse(t),(e=e||[]).push(t.href),get(t,o).then(function(s){if(s.statusCode>=400)throw ono({status:s.statusCode},\"HTTP ERROR %d\",s.statusCode);if(s.statusCode>=300)if(e.length>o.redirects)n(ono({status:s.statusCode},\"Error downloading %s. \\nToo many redirects: \\n %s\",e[0],e.join(\" \\n \")));else{if(!s.headers.location)throw ono({status:s.statusCode},\"HTTP %d redirect with no location header\",s.statusCode);download(url.resolve(t,s.headers.location),o,e).then(r,n)}else r(s.body||new Buffer(0))}).catch(function(o){n(ono(o,\"Error downloading\",t.href))})})}function get(t,o){return new Promise(function(e,r){var n=(\"https:\"===t.protocol?https:http).get({hostname:t.hostname,port:t.port,path:t.path,auth:t.auth,protocol:t.protocol,headers:o.headers||{},withCredentials:o.withCredentials});\"function\"==typeof n.setTimeout&&n.setTimeout(o.timeout),n.on(\"timeout\",function(){n.abort()}),n.on(\"error\",r),n.once(\"response\",function(t){t.body=new Buffer(0),t.on(\"data\",function(o){t.body=Buffer.concat([t.body,new Buffer(o)])}),t.on(\"error\",r),t.on(\"end\",function(){e(t)})})})}module.exports={order:200,headers:null,timeout:5e3,redirects:5,withCredentials:!1,canRead:function(t){return url.isHttp(t.url)},read:function(t){var o=url.parse(t.url);return process.browser&&!o.protocol&&(o.protocol=url.parse(location.href).protocol),download(o,this)}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImh0dHAuanMiXSwibmFtZXMiOlsiaHR0cCIsInJlcXVpcmUiLCJodHRwcyIsIm9ubyIsInVybCIsImRvd25sb2FkIiwidSIsImh0dHBPcHRpb25zIiwicmVkaXJlY3RzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJwYXJzZSIsInB1c2giLCJocmVmIiwiZ2V0IiwidGhlbiIsInJlcyIsInN0YXR1c0NvZGUiLCJzdGF0dXMiLCJsZW5ndGgiLCJqb2luIiwiaGVhZGVycyIsImxvY2F0aW9uIiwiYm9keSIsIkJ1ZmZlciIsImNhdGNoIiwiZXJyIiwicmVxIiwicHJvdG9jb2wiLCJob3N0bmFtZSIsInBvcnQiLCJwYXRoIiwiYXV0aCIsIndpdGhDcmVkZW50aWFscyIsInNldFRpbWVvdXQiLCJ0aW1lb3V0Iiwib24iLCJhYm9ydCIsIm9uY2UiLCJkYXRhIiwiY29uY2F0IiwibW9kdWxlIiwiZXhwb3J0cyIsIm9yZGVyIiwiY2FuUmVhZCIsImZpbGUiLCJpc0h0dHAiLCJyZWFkIiwicHJvY2VzcyIsImJyb3dzZXIiLCJ0aGlzIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUVBLElBQUlBLEtBQU9DLFFBQVEsUUFDZkMsTUFBUUQsUUFBUSxTQUNoQkUsSUFBTUYsUUFBUSxPQUNkRyxJQUFNSCxRQUFRLGVBMEZsQixTQUFTSSxTQUFVQyxFQUFHQyxFQUFhQyxHQUNqQyxPQUFPLElBQUlDLFFBQVEsU0FBVUMsRUFBU0MsR0FDcENMLEVBQUlGLElBQUlRLE1BQU1OLElBQ2RFLEVBQVlBLEdBQWEsSUFDZkssS0FBS1AsRUFBRVEsTUFFakJDLElBQUlULEVBQUdDLEdBQ0pTLEtBQUssU0FBVUMsR0FDZCxHQUFJQSxFQUFJQyxZQUFjLElBQ3BCLE1BQU1mLElBQUksQ0FBRWdCLE9BQVFGLEVBQUlDLFlBQWMsZ0JBQWlCRCxFQUFJQyxZQUV4RCxHQUFJRCxFQUFJQyxZQUFjLElBQ3pCLEdBQUlWLEVBQVVZLE9BQVNiLEVBQVlDLFVBQ2pDRyxFQUFPUixJQUFJLENBQUVnQixPQUFRRixFQUFJQyxZQUFjLHFEQUNyQ1YsRUFBVSxHQUFJQSxFQUFVYSxLQUFLLGVBRTVCLENBQUEsSUFBS0osRUFBSUssUUFBUUMsU0FDcEIsTUFBTXBCLElBQUksQ0FBRWdCLE9BQVFGLEVBQUlDLFlBQWMsMkNBQTRDRCxFQUFJQyxZQUt0RmIsU0FEaUJELElBQUlNLFFBQVFKLEVBQUdXLEVBQUlLLFFBQVFDLFVBQ3ZCaEIsRUFBYUMsR0FBV1EsS0FBS04sRUFBU0MsUUFJN0RELEVBQVFPLEVBQUlPLE1BQVEsSUFBSUMsT0FBTyxNQUdsQ0MsTUFBTSxTQUFVQyxHQUNmaEIsRUFBT1IsSUFBSXdCLEVBQUssb0JBQXFCckIsRUFBRVEsV0FjL0MsU0FBU0MsSUFBS1QsRUFBR0MsR0FDZixPQUFPLElBQUlFLFFBQVEsU0FBVUMsRUFBU0MsR0FHcEMsSUFDSWlCLEdBRDBCLFdBQWZ0QixFQUFFdUIsU0FBd0IzQixNQUFRRixNQUM5QmUsSUFBSSxDQUNyQmUsU0FBVXhCLEVBQUV3QixTQUNaQyxLQUFNekIsRUFBRXlCLEtBQ1JDLEtBQU0xQixFQUFFMEIsS0FDUkMsS0FBTTNCLEVBQUUyQixLQUNSSixTQUFVdkIsRUFBRXVCLFNBQ1pQLFFBQVNmLEVBQVllLFNBQVcsR0FDaENZLGdCQUFpQjNCLEVBQVkyQixrQkFHRCxtQkFBbkJOLEVBQUlPLFlBQ2JQLEVBQUlPLFdBQVc1QixFQUFZNkIsU0FHN0JSLEVBQUlTLEdBQUcsVUFBVyxXQUNoQlQsRUFBSVUsVUFHTlYsRUFBSVMsR0FBRyxRQUFTMUIsR0FFaEJpQixFQUFJVyxLQUFLLFdBQVksU0FBVXRCLEdBQzdCQSxFQUFJTyxLQUFPLElBQUlDLE9BQU8sR0FFdEJSLEVBQUlvQixHQUFHLE9BQVEsU0FBVUcsR0FDdkJ2QixFQUFJTyxLQUFPQyxPQUFPZ0IsT0FBTyxDQUFDeEIsRUFBSU8sS0FBTSxJQUFJQyxPQUFPZSxPQUdqRHZCLEVBQUlvQixHQUFHLFFBQVMxQixHQUVoQk0sRUFBSW9CLEdBQUcsTUFBTyxXQUNaM0IsRUFBUU8sU0F2S2hCeUIsT0FBT0MsUUFBVSxDQU1mQyxNQUFPLElBYVB0QixRQUFTLEtBT1RjLFFBQVMsSUFRVDVCLFVBQVcsRUFRWDBCLGlCQUFpQixFQVlqQlcsUUFBUyxTQUFpQkMsR0FDeEIsT0FBTzFDLElBQUkyQyxPQUFPRCxFQUFLMUMsTUFXekI0QyxLQUFNLFNBQW1CRixHQUN2QixJQUFJeEMsRUFBSUYsSUFBSVEsTUFBTWtDLEVBQUsxQyxLQU92QixPQUxJNkMsUUFBUUMsVUFBWTVDLEVBQUV1QixXQUV4QnZCLEVBQUV1QixTQUFXekIsSUFBSVEsTUFBTVcsU0FBU1QsTUFBTWUsVUFHakN4QixTQUFTQyxFQUFHNkMiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbGliL3Jlc29sdmVycy9odHRwLmpzIn0=", - "\"use strict\";function getResult(t,n,r,e){var u=t[n];if(\"function\"==typeof u)return u.apply(t,[r,e]);if(!e){if(u instanceof RegExp)return u.test(r.url);if(\"string\"==typeof u)return u===r.extension;if(Array.isArray(u))return-1!==u.indexOf(r.extension)}return u}exports.all=function(t){return Object.keys(t).filter(function(n){return\"object\"==typeof t[n]}).map(function(n){return t[n].name=n,t[n]})},exports.filter=function(t,n,r){return t.filter(function(t){return!!getResult(t,n,r)})},exports.sort=function(t){return t.forEach(function(t){t.order=t.order||Number.MAX_SAFE_INTEGER}),t.sort(function(t,n){return t.order-n.order})},exports.run=function(t,n,r){var e,u,o=0;return new Promise(function(i,f){function c(){if(!(e=t[o++]))return f(u);try{var i=getResult(e,n,r,s);i&&\"function\"==typeof i.then?i.then(p,a):void 0!==i&&p(i)}catch(t){a(t)}}function s(t,n){t?a(t):p(n)}function p(t){i({plugin:e,result:t})}function a(t){u=t,c()}c()})};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBsdWdpbnMuanMiXSwibmFtZXMiOlsiZ2V0UmVzdWx0Iiwib2JqIiwicHJvcCIsImZpbGUiLCJjYWxsYmFjayIsInZhbHVlIiwiYXBwbHkiLCJSZWdFeHAiLCJ0ZXN0IiwidXJsIiwiZXh0ZW5zaW9uIiwiQXJyYXkiLCJpc0FycmF5IiwiaW5kZXhPZiIsImV4cG9ydHMiLCJhbGwiLCJwbHVnaW5zIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImtleSIsIm1hcCIsIm5hbWUiLCJtZXRob2QiLCJwbHVnaW4iLCJzb3J0IiwiZm9yRWFjaCIsIm9yZGVyIiwiTnVtYmVyIiwiTUFYX1NBRkVfSU5URUdFUiIsImEiLCJiIiwicnVuIiwibGFzdEVycm9yIiwiaW5kZXgiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInJ1bk5leHRQbHVnaW4iLCJyZXN1bHQiLCJ0aGVuIiwib25TdWNjZXNzIiwib25FcnJvciIsInVuZGVmaW5lZCIsImUiLCJlcnIiXSwibWFwcGluZ3MiOiJBQUFBLGFBa0lBLFNBQVNBLFVBQVdDLEVBQUtDLEVBQU1DLEVBQU1DLEdBQ25DLElBQUlDLEVBQVFKLEVBQUlDLEdBRWhCLEdBQXFCLG1CQUFWRyxFQUNULE9BQU9BLEVBQU1DLE1BQU1MLEVBQUssQ0FBQ0UsRUFBTUMsSUFHakMsSUFBS0EsRUFBVSxDQUliLEdBQUlDLGFBQWlCRSxPQUNuQixPQUFPRixFQUFNRyxLQUFLTCxFQUFLTSxLQUVwQixHQUFxQixpQkFBVkosRUFDZCxPQUFPQSxJQUFVRixFQUFLTyxVQUVuQixHQUFJQyxNQUFNQyxRQUFRUCxHQUNyQixPQUEwQyxJQUFuQ0EsRUFBTVEsUUFBUVYsRUFBS08sV0FJOUIsT0FBT0wsRUEvSVRTLFFBQVFDLElBQU0sU0FBVUMsR0FDdEIsT0FBT0MsT0FBT0MsS0FBS0YsR0FDaEJHLE9BQU8sU0FBVUMsR0FDaEIsTUFBK0IsaUJBQWpCSixFQUFRSSxLQUV2QkMsSUFBSSxTQUFVRCxHQUViLE9BREFKLEVBQVFJLEdBQUtFLEtBQU9GLEVBQ2JKLEVBQVFJLE1BWXJCTixRQUFRSyxPQUFTLFNBQVVILEVBQVNPLEVBQVFwQixHQUMxQyxPQUFPYSxFQUNKRyxPQUFPLFNBQVVLLEdBQ2hCLFFBQVN4QixVQUFVd0IsRUFBUUQsRUFBUXBCLE1BVXpDVyxRQUFRVyxLQUFPLFNBQVVULEdBS3ZCLE9BSkFBLEVBQVFVLFFBQVEsU0FBVUYsR0FDeEJBLEVBQU9HLE1BQVFILEVBQU9HLE9BQVNDLE9BQU9DLG1CQUdqQ2IsRUFBUVMsS0FBSyxTQUFVSyxFQUFHQyxHQUFLLE9BQU9ELEVBQUVILE1BQVFJLEVBQUVKLFNBZ0IzRGIsUUFBUWtCLElBQU0sU0FBVWhCLEVBQVNPLEVBQVFwQixHQUN2QyxJQUFJcUIsRUFBUVMsRUFBV0MsRUFBUSxFQUUvQixPQUFPLElBQUlDLFFBQVEsU0FBVUMsRUFBU0MsR0FHcEMsU0FBU0MsSUFFUCxLQURBZCxFQUFTUixFQUFRa0IsTUFHZixPQUFPRyxFQUFPSixHQUdoQixJQUVFLElBQUlNLEVBQVN2QyxVQUFVd0IsRUFBUUQsRUFBUXBCLEVBQU1DLEdBQ3pDbUMsR0FBaUMsbUJBQWhCQSxFQUFPQyxLQUUxQkQsRUFBT0MsS0FBS0MsRUFBV0MsUUFFTEMsSUFBWEosR0FFUEUsRUFBVUYsR0FJZCxNQUFPSyxHQUNMRixFQUFRRSxJQUlaLFNBQVN4QyxFQUFVeUMsRUFBS04sR0FDbEJNLEVBQ0ZILEVBQVFHLEdBR1JKLEVBQVVGLEdBSWQsU0FBU0UsRUFBV0YsR0FFbEJILEVBQVEsQ0FDTlosT0FBUUEsRUFDUmUsT0FBUUEsSUFJWixTQUFTRyxFQUFTRyxHQUVoQlosRUFBWVksRUFDWlAsSUEvQ0ZBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL2xpYi91dGlsL3BsdWdpbnMuanMifQ==", - "\"use strict\";var isWindows=/^win/.test(process.platform),forwardSlashPattern=/\\//g,protocolPattern=/^(\\w{2,}):\\/\\//i,url=module.exports,urlEncodePatterns=[/\\?/g,\"%3F\",/\\#/g,\"%23\"],urlDecodePatterns=[/\\%23/g,\"#\",/\\%24/g,\"$\",/\\%26/g,\"&\",/\\%2C/g,\",\",/\\%40/g,\"@\"];exports.parse=require(\"url\").parse,exports.resolve=require(\"url\").resolve,exports.cwd=function(){return process.browser?location.href:process.cwd()+\"/\"},exports.getProtocol=function(r){var e=protocolPattern.exec(r);if(e)return e[1].toLowerCase()},exports.getExtension=function(r){var e=r.lastIndexOf(\".\");return e>=0?r.substr(e).toLowerCase():\"\"},exports.getHash=function(r){var e=r.indexOf(\"#\");return e>=0?r.substr(e):\"#\"},exports.stripHash=function(r){var e=r.indexOf(\"#\");return e>=0&&(r=r.substr(0,e)),r},exports.isHttp=function(r){var e=url.getProtocol(r);return\"http\"===e||\"https\"===e||void 0===e&&process.browser},exports.isFileSystemPath=function(r){if(process.browser)return!1;var e=url.getProtocol(r);return void 0===e||\"file\"===e},exports.fromFileSystemPath=function(r){isWindows&&(r=r.replace(/\\\\/g,\"/\")),r=encodeURI(r);for(var e=0;e0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var e=o.indexOf(\"=\");return-1===e&&(e=r),[e,e===r?0:4-e%4]}function byteLength(o){var r=getLens(o),e=r[0],t=r[1];return 3*(e+t)/4-t}function _byteLength(o,r,e){return 3*(r+e)/4-e}function toByteArray(o){for(var r,e=getLens(o),t=e[0],n=e[1],u=new Arr(_byteLength(o,t,n)),p=0,a=n>0?t-4:t,h=0;h>16&255,u[p++]=r>>8&255,u[p++]=255&r;return 2===n&&(r=revLookup[o.charCodeAt(h)]<<2|revLookup[o.charCodeAt(h+1)]>>4,u[p++]=255&r),1===n&&(r=revLookup[o.charCodeAt(h)]<<10|revLookup[o.charCodeAt(h+1)]<<4|revLookup[o.charCodeAt(h+2)]>>2,u[p++]=r>>8&255,u[p++]=255&r),u}function tripletToBase64(o){return lookup[o>>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[63&o]}function encodeChunk(o,r,e){for(var t,n=[],u=r;up?p:u+16383));return 1===t?(r=o[e-1],n.push(lookup[r>>2]+lookup[r<<4&63]+\"==\")):2===t&&(r=(o[e-2]<<8)+o[e-1],n.push(lookup[r>>10]+lookup[r>>4&63]+lookup[r<<2&63]+\"=\")),n.join(\"\")}revLookup[\"-\".charCodeAt(0)]=62,revLookup[\"_\".charCodeAt(0)]=63;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImV4cG9ydHMiLCJieXRlTGVuZ3RoIiwidG9CeXRlQXJyYXkiLCJmcm9tQnl0ZUFycmF5IiwibG9va3VwIiwicmV2TG9va3VwIiwiQXJyIiwiVWludDhBcnJheSIsIkFycmF5IiwiY29kZSIsImkiLCJsZW4iLCJsZW5ndGgiLCJjaGFyQ29kZUF0IiwiZ2V0TGVucyIsImI2NCIsIkVycm9yIiwidmFsaWRMZW4iLCJpbmRleE9mIiwibGVucyIsInBsYWNlSG9sZGVyc0xlbiIsIl9ieXRlTGVuZ3RoIiwidG1wIiwiYXJyIiwiY3VyQnl0ZSIsInRyaXBsZXRUb0Jhc2U2NCIsIm51bSIsImVuY29kZUNodW5rIiwidWludDgiLCJzdGFydCIsImVuZCIsIm91dHB1dCIsInB1c2giLCJqb2luIiwiZXh0cmFCeXRlcyIsInBhcnRzIiwibGVuMiJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQUEsUUFBUUMsV0FBYUEsV0FDckJELFFBQVFFLFlBQWNBLFlBQ3RCRixRQUFRRyxjQUFnQkEsY0FPeEIsSUFMQSxJQUFJQyxPQUFTLEdBQ1RDLFVBQVksR0FDWkMsSUFBNEIsb0JBQWZDLFdBQTZCQSxXQUFhQyxNQUV2REMsS0FBTyxtRUFDRkMsRUFBSSxFQUFHQyxJQUFNRixLQUFLRyxPQUFRRixFQUFJQyxNQUFPRCxFQUM1Q04sT0FBT00sR0FBS0QsS0FBS0MsR0FDakJMLFVBQVVJLEtBQUtJLFdBQVdILElBQU1BLEVBUWxDLFNBQVNJLFFBQVNDLEdBQ2hCLElBQUlKLEVBQU1JLEVBQUlILE9BRWQsR0FBSUQsRUFBTSxFQUFJLEVBQ1osTUFBTSxJQUFJSyxNQUFNLGtEQUtsQixJQUFJQyxFQUFXRixFQUFJRyxRQUFRLEtBTzNCLE9BTmtCLElBQWRELElBQWlCQSxFQUFXTixHQU16QixDQUFDTSxFQUpjQSxJQUFhTixFQUMvQixFQUNBLEVBQUtNLEVBQVcsR0FNdEIsU0FBU2hCLFdBQVljLEdBQ25CLElBQUlJLEVBQU9MLFFBQVFDLEdBQ2ZFLEVB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", - "\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVtcHR5LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2Jyb3dzZXItcmVzb2x2ZS9lbXB0eS5qcyJ9", - "/*! https://mths.be/punycode v1.4.1 by @mathias */\n!function(e){var o=\"object\"==typeof exports&&exports&&!exports.nodeType&&exports,n=\"object\"==typeof module&&module&&!module.nodeType&&module,t=\"object\"==typeof global&&global;t.global!==t&&t.window!==t&&t.self!==t||(e=t);var r,u,i=2147483647,f=36,c=1,l=26,s=38,d=700,p=72,a=128,h=\"-\",v=/^xn--/,g=/[^\\x20-\\x7E]/,w=/[\\x2E\\u3002\\uFF0E\\uFF61]/g,x={overflow:\"Overflow: input needs wider integers to process\",\"not-basic\":\"Illegal input >= 0x80 (not a basic code point)\",\"invalid-input\":\"Invalid input\"},b=f-c,y=Math.floor,C=String.fromCharCode;function m(e){throw new RangeError(x[e])}function j(e,o){for(var n=e.length,t=[];n--;)t[n]=o(e[n]);return t}function A(e,o){var n=e.split(\"@\"),t=\"\";return n.length>1&&(t=n[0]+\"@\",e=n[1]),t+j((e=e.replace(w,\".\")).split(\".\"),o).join(\".\")}function I(e){for(var o,n,t=[],r=0,u=e.length;r=55296&&o<=56319&&r65535&&(o+=C((e-=65536)>>>10&1023|55296),e=56320|1023&e),o+=C(e)}).join(\"\")}function F(e,o){return e+22+75*(e<26)-((0!=o)<<5)}function O(e,o,n){var t=0;for(e=n?y(e/d):e>>1,e+=y(e/o);e>b*l>>1;t+=f)e=y(e/b);return y(t+(b+1)*e/(e+s))}function S(e){var o,n,t,r,u,s,d,v,g,w,x,b=[],C=e.length,j=0,A=a,I=p;for((n=e.lastIndexOf(h))<0&&(n=0),t=0;t=128&&m(\"not-basic\"),b.push(e.charCodeAt(t));for(r=n>0?n+1:0;r=C&&m(\"invalid-input\"),((v=(x=e.charCodeAt(r++))-48<10?x-22:x-65<26?x-65:x-97<26?x-97:f)>=f||v>y((i-j)/s))&&m(\"overflow\"),j+=v*s,!(v<(g=d<=I?c:d>=I+l?l:d-I));d+=f)s>y(i/(w=f-g))&&m(\"overflow\"),s*=w;I=O(j-u,o=b.length+1,0==u),y(j/o)>i-A&&m(\"overflow\"),A+=y(j/o),j%=o,b.splice(j++,0,A)}return E(b)}function T(e){var o,n,t,r,u,s,d,v,g,w,x,b,j,A,E,S=[];for(b=(e=I(e)).length,o=a,n=0,u=p,s=0;s=o&&xy((i-n)/(j=t+1))&&m(\"overflow\"),n+=(d-o)*j,o=d,s=0;si&&m(\"overflow\"),x==o){for(v=n,g=f;!(v<(w=g<=u?c:g>=u+l?l:g-u));g+=f)E=v-w,A=f-w,S.push(C(F(w+E%A,0))),v=y(E/A);S.push(C(F(v,0))),u=O(n,j,t==r),n=0,++t}++n,++o}return S.join(\"\")}if(r={version:\"1.4.1\",ucs2:{decode:I,encode:E},decode:S,encode:T,toASCII:function(e){return A(e,function(e){return g.test(e)?\"xn--\"+T(e):e})},toUnicode:function(e){return A(e,function(e){return v.test(e)?S(e.slice(4).toLowerCase()):e})}},\"function\"==typeof define&&\"object\"==typeof define.amd&&define.amd)define(\"punycode\",function(){return r});else if(o&&n)if(module.exports==o)n.exports=r;else for(u in r)r.hasOwnProperty(u)&&(o[u]=r[u]);else e.punycode=r}(this);\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInB1bnljb2RlLmpzIl0sIm5hbWVzIjpbInJvb3QiLCJmcmVlRXhwb3J0cyIsImV4cG9ydHMiLCJub2RlVHlwZSIsImZyZWVNb2R1bGUiLCJtb2R1bGUiLCJmcmVlR2xvYmFsIiwiZ2xvYmFsIiwid2luZG93Iiwic2VsZiIsInB1bnljb2RlIiwia2V5IiwibWF4SW50IiwiYmFzZSIsInRNaW4iLCJ0TWF4Iiwic2tldyIsImRhbXAiLCJpbml0aWFsQmlhcyIsImluaXRpYWxOIiwiZGVsaW1pdGVyIiwicmVnZXhQdW55Y29kZSIsInJlZ2V4Tm9uQVNDSUkiLCJyZWdleFNlcGFyYXRvcnMiLCJlcnJvcnMiLCJvdmVyZmxvdyIsIm5vdC1iYXNpYyIsImludmFsaWQtaW5wdXQiLCJiYXNlTWludXNUTWluIiwiZmxvb3IiLCJNYXRoIiwic3RyaW5nRnJvbUNoYXJDb2RlIiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwiZXJyb3IiLCJ0eXBlIiwiUmFuZ2VFcnJvciIsIm1hcCIsImFycmF5IiwiZm4iLCJsZW5ndGgiLCJyZXN1bHQiLCJtYXBEb21haW4iLCJzdHJpbmciLCJwYXJ0cyIsInNwbGl0IiwicmVwbGFjZSIsImpvaW4iLCJ1Y3MyZGVjb2RlIiwidmFsdWUiLCJleHRyYSIsIm91dHB1dCIsImNvdW50ZXIiLCJjaGFyQ29kZUF0IiwicHVzaCIsInVjczJlbmNvZGUiLCJkaWdpdFRvQmFzaWMiLCJkaWdpdCIsImZsYWciLCJhZGFwdCIsImRlbHRhIiwibnVtUG9pbnRzIiwiZmlyc3RUaW1lIiwiayIsImRlY29kZSIsImlucHV0Iiwib3V0IiwiYmFzaWMiLCJqIiwiaW5kZXgiLCJvbGRpIiwidyIsInQiLCJiYXNlTWludXNUIiwiY29kZVBvaW50IiwiaW5wdXRMZW5ndGgiLCJpIiwibiIsImJpYXMiLCJsYXN0SW5kZXhPZiIsInNwbGljZSIsImVuY29kZSIsImhhbmRsZWRDUENvdW50IiwiYmFzaWNMZW5ndGgiLCJtIiwicSIsImN1cnJlbnRWYWx1ZSIsImhhbmRsZWRDUENvdW50UGx1c09uZSIsInFNaW51c1QiLCJ2ZXJzaW9uIiwidWNzMiIsInRvQVNDSUkiLCJ0ZXN0IiwidG9Vbmljb2RlIiwic2xpY2UiLCJ0b0xvd2VyQ2FzZSIsImRlZmluZSIsImFtZCIsImhhc093blByb3BlcnR5IiwidGhpcyJdLCJtYXBwaW5ncyI6IjtDQUNFLFNBQVNBLEdBR1YsSUFBSUMsRUFBZ0MsaUJBQVhDLFNBQXVCQSxVQUM5Q0EsUUFBUUMsVUFBWUQsUUFDbEJFLEVBQThCLGlCQUFWQyxRQUFzQkEsU0FDNUNBLE9BQU9GLFVBQVlFLE9BQ2pCQyxFQUE4QixpQkFBVkMsUUFBc0JBLE9BRTdDRCxFQUFXQyxTQUFXRCxHQUN0QkEsRUFBV0UsU0FBV0YsR0FDdEJBLEVBQVdHLE9BQVNILElBRXBCTixFQUFPTSxHQVFSLElBQUlJLEVBaUNKQyxFQTlCQUMsRUFBUyxXQUdUQyxFQUFPLEdBQ1BDLEVBQU8sRUFDUEMsRUFBTyxHQUNQQyxFQUFPLEdBQ1BDLEVBQU8sSUFDUEMsRUFBYyxHQUNkQyxFQUFXLElBQ1hDLEVBQVksSUFHWkMsRUFBZ0IsUUFDaEJDLEVBQWdCLGVBQ2hCQyxFQUFrQiw0QkFHbEJDLEVBQVMsQ0FDUkMsU0FBWSxrREFDWkMsWUFBYSxpREFDYkMsZ0JBQWlCLGlCQUlsQkMsRUFBZ0JmLEVBQU9DLEVBQ3ZCZSxFQUFRQyxLQUFLRCxNQUNiRSxFQUFxQkMsT0FBT0MsYUFhNUIsU0FBU0MsRUFBTUMsR0FDZCxNQUFNLElBQUlDLFdBQVdaLEVBQU9XLElBVzdCLFNBQVNFLEVBQUlDLEVBQU9DLEdBR25CLElBRkEsSUFBSUMsRUFBU0YsRUFBTUUsT0FDZkMsRUFBUyxHQUNORCxLQUNOQyxFQUFPRCxHQUFVRCxFQUFHRCxFQUFNRSxJQUUzQixPQUFPQyxFQWFSLFNBQVNDLEVBQVVDLEVBQVFKLEdBQzFCLElBQUlLLEVBQVFELEVBQU9FLE1BQU0sS0FDckJKLEVBQVMsR0FXYixPQVZJRyxFQUFNSixPQUFTLElBR2xCQyxFQUFTRyxFQUFNLEdBQUssSUFDcEJELEVBQVNDLEVB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LEVBQU9HLEtBQ052QixFQUFtQnlCLEVBQWFnQixFQUFJZ0IsRUFBVWYsRUFBWSxLQUUzRFksRUFBSXhELEVBQU0yRCxFQUFVZixHQUdyQnRCLEVBQU9HLEtBQUt2QixFQUFtQnlCLEVBQWE2QixFQUFHLEtBQy9DUCxFQUFPbkIsRUFBTUMsRUFBTzJCLEVBQXVCTCxHQUFrQkMsR0FDN0R2QixFQUFRLElBQ05zQixJQUlGdEIsSUFDQWlCLEVBR0gsT0FBTzFCLEVBQU9KLEtBQUssSUF1RXBCLEdBM0JBckMsRUFBVyxDQU1WK0UsUUFBVyxRQVFYQyxLQUFRLENBQ1AxQixPQUFVaEIsRUFDVmlDLE9BQVUxQixHQUVYUyxPQUFVQSxFQUNWaUIsT0FBVUEsRUFDVlUsUUEvQkQsU0FBaUIxQixHQUNoQixPQUFPdkIsRUFBVXVCLEVBQU8sU0FBU3RCLEdBQ2hDLE9BQU9yQixFQUFjc0UsS0FBS2pELEdBQ3ZCLE9BQVNzQyxFQUFPdEMsR0FDaEJBLEtBNEJKa0QsVUFuREQsU0FBbUI1QixHQUNsQixPQUFPdkIsRUFBVXVCLEVBQU8sU0FBU3RCLEdBQ2hDLE9BQU90QixFQUFjdUUsS0FBS2pELEdBQ3ZCcUIsRUFBT3JCLEVBQU9tRCxNQUFNLEdBQUdDLGVBQ3ZCcEQsTUFzRGEsbUJBQVZxRCxRQUNjLGlCQUFkQSxPQUFPQyxLQUNkRCxPQUFPQyxJQUVQRCxPQUFPLFdBQVksV0FDbEIsT0FBT3RGLFNBRUYsR0FBSVQsR0FBZUcsRUFDekIsR0FBSUMsT0FBT0gsU0FBV0QsRUFFckJHLEVBQVdGLFFBQVVRLE9BR3JCLElBQUtDLEtBQU9ELEVBQ1hBLEVBQVN3RixlQUFldkYsS0FBU1YsRUFBWVUsR0FBT0QsRUFBU0MsU0FLL0RYLEVBQUtVLFNBQVdBLEVBaGhCakIsQ0FtaEJDeUYiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2Jyb3dzZXJpZnkvbm9kZV9tb2R1bGVzL3B1bnljb2RlL3B1bnljb2RlLmpzIn0=", - "/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\"use strict\";var base64=require(\"base64-js\"),ieee754=require(\"ieee754\");exports.Buffer=Buffer,exports.SlowBuffer=SlowBuffer,exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;function typedArraySupport(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()}catch(e){return!1}}function createBuffer(e){if(e>K_MAX_LENGTH)throw new RangeError('The value \"'+e+'\" is invalid for option \"size\"');var t=new Uint8Array(e);return t.__proto__=Buffer.prototype,t}function Buffer(e,t,r){if(\"number\"==typeof e){if(\"string\"==typeof t)throw new TypeError('The \"string\" argument must be of type string. Received type number');return allocUnsafe(e)}return from(e,t,r)}function from(e,t,r){if(\"string\"==typeof e)return fromString(e,t);if(ArrayBuffer.isView(e))return fromArrayLike(e);if(null==e)throw TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof e);if(isInstance(e,ArrayBuffer)||e&&isInstance(e.buffer,ArrayBuffer))return fromArrayBuffer(e,t,r);if(\"number\"==typeof e)throw new TypeError('The \"value\" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return Buffer.from(n,t,r);var f=fromObject(e);if(f)return f;if(\"undefined\"!=typeof Symbol&&null!=Symbol.toPrimitive&&\"function\"==typeof e[Symbol.toPrimitive])return Buffer.from(e[Symbol.toPrimitive](\"string\"),t,r);throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof e)}function assertSize(e){if(\"number\"!=typeof e)throw new TypeError('\"size\" argument must be of type number');if(e<0)throw new RangeError('The value \"'+e+'\" is invalid for option \"size\"')}function alloc(e,t,r){return assertSize(e),e<=0?createBuffer(e):void 0!==t?\"string\"==typeof r?createBuffer(e).fill(t,r):createBuffer(e).fill(t):createBuffer(e)}function allocUnsafe(e){return assertSize(e),createBuffer(e<0?0:0|checked(e))}function fromString(e,t){if(\"string\"==typeof t&&\"\"!==t||(t=\"utf8\"),!Buffer.isEncoding(t))throw new TypeError(\"Unknown encoding: \"+t);var r=0|byteLength(e,t),n=createBuffer(r),f=n.write(e,t);return f!==r&&(n=n.slice(0,f)),n}function fromArrayLike(e){for(var t=e.length<0?0:0|checked(e.length),r=createBuffer(t),n=0;n=K_MAX_LENGTH)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+K_MAX_LENGTH.toString(16)+\" bytes\");return 0|e}function SlowBuffer(e){return+e!=e&&(e=0),Buffer.alloc(+e)}function byteLength(e,t){if(Buffer.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||isInstance(e,ArrayBuffer))return e.byteLength;if(\"string\"!=typeof e)throw new TypeError('The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var f=!1;;)switch(t){case\"ascii\":case\"latin1\":case\"binary\":return r;case\"utf8\":case\"utf-8\":return utf8ToBytes(e).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*r;case\"hex\":return r>>>1;case\"base64\":return base64ToBytes(e).length;default:if(f)return n?-1:utf8ToBytes(e).length;t=(\"\"+t).toLowerCase(),f=!0}}function slowToString(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return\"\";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return\"\";if((r>>>=0)<=(t>>>=0))return\"\";for(e||(e=\"utf8\");;)switch(e){case\"hex\":return hexSlice(this,t,r);case\"utf8\":case\"utf-8\":return utf8Slice(this,t,r);case\"ascii\":return asciiSlice(this,t,r);case\"latin1\":case\"binary\":return latin1Slice(this,t,r);case\"base64\":return base64Slice(this,t,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return utf16leSlice(this,t,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+e);e=(e+\"\").toLowerCase(),n=!0}}function swap(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function bidirectionalIndexOf(e,t,r,n,f){if(0===e.length)return-1;if(\"string\"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),numberIsNaN(r=+r)&&(r=f?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(f)return-1;r=e.length-1}else if(r<0){if(!f)return-1;r=0}if(\"string\"==typeof t&&(t=Buffer.from(t,n)),Buffer.isBuffer(t))return 0===t.length?-1:arrayIndexOf(e,t,r,n,f);if(\"number\"==typeof t)return t&=255,\"function\"==typeof Uint8Array.prototype.indexOf?f?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):arrayIndexOf(e,[t],r,n,f);throw new TypeError(\"val must be string, number or Buffer\")}function arrayIndexOf(e,t,r,n,f){var i,o=1,u=e.length,s=t.length;if(void 0!==n&&(\"ucs2\"===(n=String(n).toLowerCase())||\"ucs-2\"===n||\"utf16le\"===n||\"utf-16le\"===n)){if(e.length<2||t.length<2)return-1;o=2,u/=2,s/=2,r/=2}function a(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(f){var h=-1;for(i=r;iu&&(r=u-s),i=r;i>=0;i--){for(var c=!0,l=0;lf&&(n=f):n=f;var i=t.length;n>i/2&&(n=i/2);for(var o=0;o239?4:a>223?3:a>191?2:1;if(f+c<=r)switch(c){case 1:a<128&&(h=a);break;case 2:128==(192&(i=e[f+1]))&&(s=(31&a)<<6|63&i)>127&&(h=s);break;case 3:i=e[f+1],o=e[f+2],128==(192&i)&&128==(192&o)&&(s=(15&a)<<12|(63&i)<<6|63&o)>2047&&(s<55296||s>57343)&&(h=s);break;case 4:i=e[f+1],o=e[f+2],u=e[f+3],128==(192&i)&&128==(192&o)&&128==(192&u)&&(s=(15&a)<<18|(63&i)<<12|(63&o)<<6|63&u)>65535&&s<1114112&&(h=s)}null===h?(h=65533,c=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),f+=c}return decodeCodePointsArray(n)}exports.kMaxLength=K_MAX_LENGTH,Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport(),Buffer.TYPED_ARRAY_SUPPORT||\"undefined\"==typeof console||\"function\"!=typeof console.error||console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\"),Object.defineProperty(Buffer.prototype,\"parent\",{enumerable:!0,get:function(){if(Buffer.isBuffer(this))return this.buffer}}),Object.defineProperty(Buffer.prototype,\"offset\",{enumerable:!0,get:function(){if(Buffer.isBuffer(this))return this.byteOffset}}),\"undefined\"!=typeof Symbol&&null!=Symbol.species&&Buffer[Symbol.species]===Buffer&&Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),Buffer.poolSize=8192,Buffer.from=function(e,t,r){return from(e,t,r)},Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array,Buffer.alloc=function(e,t,r){return alloc(e,t,r)},Buffer.allocUnsafe=function(e){return allocUnsafe(e)},Buffer.allocUnsafeSlow=function(e){return allocUnsafe(e)},Buffer.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==Buffer.prototype},Buffer.compare=function(e,t){if(isInstance(e,Uint8Array)&&(e=Buffer.from(e,e.offset,e.byteLength)),isInstance(t,Uint8Array)&&(t=Buffer.from(t,t.offset,t.byteLength)),!Buffer.isBuffer(e)||!Buffer.isBuffer(t))throw new TypeError('The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var r=e.length,n=t.length,f=0,i=Math.min(r,n);ft&&(e+=\" ... \"),\"\"},Buffer.prototype.compare=function(e,t,r,n,f){if(isInstance(e,Uint8Array)&&(e=Buffer.from(e,e.offset,e.byteLength)),!Buffer.isBuffer(e))throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===f&&(f=this.length),t<0||r>e.length||n<0||f>this.length)throw new RangeError(\"out of range index\");if(n>=f&&t>=r)return 0;if(n>=f)return-1;if(t>=r)return 1;if(this===e)return 0;for(var i=(f>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0),u=Math.min(i,o),s=this.slice(n,f),a=e.slice(t,r),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n=\"utf8\")):(n=r,r=void 0)}var f=this.length-t;if((void 0===r||r>f)&&(r=f),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var i=!1;;)switch(n){case\"hex\":return hexWrite(this,e,t,r);case\"utf8\":case\"utf-8\":return utf8Write(this,e,t,r);case\"ascii\":return asciiWrite(this,e,t,r);case\"latin1\":case\"binary\":return latin1Write(this,e,t,r);case\"base64\":return base64Write(this,e,t,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return ucs2Write(this,e,t,r);default:if(i)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),i=!0}},Buffer.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(e){var t=e.length;if(t<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,e);for(var r=\"\",n=0;nn)&&(r=n);for(var f=\"\",i=t;ir)throw new RangeError(\"Trying to access beyond buffer length\")}function checkInt(e,t,r,n,f,i){if(!Buffer.isBuffer(e))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(t>f||te.length)throw new RangeError(\"Index out of range\")}function checkIEEE754(e,t,r,n,f,i){if(r+n>e.length)throw new RangeError(\"Index out of range\");if(r<0)throw new RangeError(\"Index out of range\")}function writeFloat(e,t,r,n,f){return t=+t,r>>>=0,f||checkIEEE754(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),ieee754.write(e,t,r,n,23,4),r+4}function writeDouble(e,t,r,n,f){return t=+t,r>>>=0,f||checkIEEE754(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),ieee754.write(e,t,r,n,52,8),r+8}Buffer.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e],f=1,i=0;++i>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e+--t],f=1;t>0&&(f*=256);)n+=this[e+--t]*f;return n},Buffer.prototype.readUInt8=function(e,t){return e>>>=0,t||checkOffset(e,1,this.length),this[e]},Buffer.prototype.readUInt16LE=function(e,t){return e>>>=0,t||checkOffset(e,2,this.length),this[e]|this[e+1]<<8},Buffer.prototype.readUInt16BE=function(e,t){return e>>>=0,t||checkOffset(e,2,this.length),this[e]<<8|this[e+1]},Buffer.prototype.readUInt32LE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Buffer.prototype.readUInt32BE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Buffer.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=this[e],f=1,i=0;++i=(f*=128)&&(n-=Math.pow(2,8*t)),n},Buffer.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||checkOffset(e,t,this.length);for(var n=t,f=1,i=this[e+--n];n>0&&(f*=256);)i+=this[e+--n]*f;return i>=(f*=128)&&(i-=Math.pow(2,8*t)),i},Buffer.prototype.readInt8=function(e,t){return e>>>=0,t||checkOffset(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Buffer.prototype.readInt16LE=function(e,t){e>>>=0,t||checkOffset(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt16BE=function(e,t){e>>>=0,t||checkOffset(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt32LE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Buffer.prototype.readInt32BE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Buffer.prototype.readFloatLE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),ieee754.read(this,e,!0,23,4)},Buffer.prototype.readFloatBE=function(e,t){return e>>>=0,t||checkOffset(e,4,this.length),ieee754.read(this,e,!1,23,4)},Buffer.prototype.readDoubleLE=function(e,t){return e>>>=0,t||checkOffset(e,8,this.length),ieee754.read(this,e,!0,52,8)},Buffer.prototype.readDoubleBE=function(e,t){return e>>>=0,t||checkOffset(e,8,this.length),ieee754.read(this,e,!1,52,8)},Buffer.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t>>>=0,r>>>=0,n)||checkInt(this,e,t,r,Math.pow(2,8*r)-1,0);var f=1,i=0;for(this[t]=255&e;++i>>=0,r>>>=0,n)||checkInt(this,e,t,r,Math.pow(2,8*r)-1,0);var f=r-1,i=1;for(this[t+f]=255&e;--f>=0&&(i*=256);)this[t+f]=e/i&255;return t+r},Buffer.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,1,255,0),this[t]=255&e,t+1},Buffer.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},Buffer.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},Buffer.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},Buffer.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},Buffer.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,e,t,r,f-1,-f)}var i=0,o=1,u=0;for(this[t]=255&e;++i>0)-u&255;return t+r},Buffer.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,e,t,r,f-1,-f)}var i=r-1,o=1,u=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===u&&0!==this[t+i+1]&&(u=1),this[t+i]=(e/o>>0)-u&255;return t+r},Buffer.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},Buffer.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},Buffer.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},Buffer.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},Buffer.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||checkInt(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},Buffer.prototype.writeFloatLE=function(e,t,r){return writeFloat(this,e,t,!0,r)},Buffer.prototype.writeFloatBE=function(e,t,r){return writeFloat(this,e,t,!1,r)},Buffer.prototype.writeDoubleLE=function(e,t,r){return writeDouble(this,e,t,!0,r)},Buffer.prototype.writeDoubleBE=function(e,t,r){return writeDouble(this,e,t,!1,r)},Buffer.prototype.copy=function(e,t,r,n){if(!Buffer.isBuffer(e))throw new TypeError(\"argument should be a Buffer\");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"sourceEnd out of bounds\");n>this.length&&(n=this.length),e.length-t=0;--i)e[i+t]=this[i+r];else Uint8Array.prototype.set.call(e,this.subarray(r,n),t);return f},Buffer.prototype.fill=function(e,t,r,n){if(\"string\"==typeof e){if(\"string\"==typeof t?(n=t,t=0,r=this.length):\"string\"==typeof r&&(n=r,r=this.length),void 0!==n&&\"string\"!=typeof n)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof n&&!Buffer.isEncoding(n))throw new TypeError(\"Unknown encoding: \"+n);if(1===e.length){var f=e.charCodeAt(0);(\"utf8\"===n&&f<128||\"latin1\"===n)&&(e=f)}}else\"number\"==typeof e&&(e&=255);if(t<0||this.length>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),\"number\"==typeof e)for(i=t;i55295&&r<57344){if(!f){if(r>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&i.push(239,191,189);continue}f=r;continue}if(r<56320){(t-=3)>-1&&i.push(239,191,189),f=r;continue}r=65536+(f-55296<<10|r-56320)}else f&&(t-=3)>-1&&i.push(239,191,189);if(f=null,r<128){if((t-=1)<0)break;i.push(r)}else if(r<2048){if((t-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error(\"Invalid code point\");if((t-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function asciiToBytes(e){for(var t=[],r=0;r>8,f=r%256,i.push(f),i.push(n);return i}function base64ToBytes(e){return base64.toByteArray(base64clean(e))}function blitBuffer(e,t,r,n){for(var f=0;f=t.length||f>=e.length);++f)t[f+r]=e[f];return f}function isInstance(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function numberIsNaN(e){return e!=e}\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImJhc2U2NCIsInJlcXVpcmUiLCJpZWVlNzU0IiwiZXhwb3J0cyIsIkJ1ZmZlciIsIlNsb3dCdWZmZXIiLCJJTlNQRUNUX01BWF9CWVRFUyIsIktfTUFYX0xFTkdUSCIsInR5cGVkQXJyYXlTdXBwb3J0IiwiYXJyIiwiVWludDhBcnJheSIsIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImZvbyIsImUiLCJjcmVhdGVCdWZmZXIiLCJsZW5ndGgiLCJSYW5nZUVycm9yIiwiYnVmIiwiYXJnIiwiZW5jb2RpbmdPck9mZnNldCIsIlR5cGVFcnJvciIsImFsbG9jVW5zYWZlIiwiZnJvbSIsInZhbHVlIiwiZnJvbVN0cmluZyIsIkFycmF5QnVmZmVyIiwiaXNWaWV3IiwiZnJvbUFycmF5TGlrZSIsImlzSW5zdGFuY2UiLCJidWZmZXIiLCJmcm9tQXJyYXlCdWZmZXIiLCJ2YWx1ZU9mIiwiYiIsImZyb21PYmplY3QiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsImFzc2VydFNpemUiLCJzaXplIiwiYWxsb2MiLCJmaWxsIiwiZW5jb2RpbmciLCJ1bmRlZmluZWQiLCJjaGVja2VkIiwic3RyaW5nIiwiaXNFbmNvZGluZyIsImJ5dGVMZW5ndGgiLCJhY3R1YWwiLCJ3cml0ZSIsInNsaWNlIiwiYXJyYXkiLCJpIiwiYnl0ZU9mZnNldCIsIm9iaiIsImlzQnVmZmVyIiwibGVuIiwiY29weSIsIm51bWJlcklzTmFOIiwidHlwZSIsIkFycmF5IiwiaXNBcnJheSIsImRhdGEiLCJ0b1N0cmluZyIsIm11c3RNYXRjaCIsImFyZ3VtZW50cyIsImxvd2VyZWRDYXNlIiwidXRmOFRvQnl0ZXMiLCJiYXNlNjRUb0J5dGVzIiwidG9Mb3dlckNhc2UiLCJzbG93VG9TdHJpbmciLCJzdGFydCIsImVuZCIsInRoaXMiLCJoZXhTbGljZSIsInV0ZjhTbGljZSIsImFzY2lpU2xpY2UiLCJsYXRpbjFTbGljZSIsImJhc2U2NFNsaWNlIiwidXRmMTZsZVNsaWNlIiwic3dhcCIsIm4iLCJtIiwiYmlkaXJlY3Rpb25hbEluZGV4T2YiLCJ2YWwiLCJkaXIiLCJhcnJheUluZGV4T2YiLCJpbmRleE9mIiwiY2FsbCIsImxhc3RJbmRleE9mIiwiaW5kZXhTaXplIiwiYXJyTGVuZ3RoIiwidmFsTGVuZ3RoIiwiU3RyaW5nIiwicmVhZCIsInJlYWRVSW50MTZCRSIsImZvdW5kSW5kZXgiLCJmb3VuZCIsImoiLCJoZXhXcml0ZSIsIm9mZnNldCIsIk51bWJlciIsInJlbWFpbmluZyIsInN0ckxlbiIsInBhcnNlZCIsInBhcnNlSW50Iiwic3Vic3RyIiwidXRmOFdyaXRlIiwiYmxpdEJ1ZmZlciIsImFzY2lpV3JpdGUiLCJhc2NpaVRvQnl0ZXMiLCJsYXRpbjFXcml0ZSIsImJhc2U2NFdyaXRlIiwidWNzMldyaXRlIiwidXRmMTZsZVRvQnl0ZXMiLCJmcm9tQnl0ZUFycmF5IiwiTWF0aCIsIm1pbiIsInJlcyIsInNlY29uZEJ5dGUiLCJ0aGlyZEJ5dGUiLCJmb3VydGhCeXRlIiwidGVtcENvZGVQb2ludCIsImZpcnN0Qnl0ZSIsImNvZGVQb2ludCIsImJ5dGVzUGVyU2VxdWVuY2UiLCJwdXNoIiwiZGVjb2RlQ29kZVBvaW50c0FycmF5Iiwia01heExlbmd0aCIsIlRZUEVEX0FSUkFZX1NVUFBPUlQiLCJjb25zb2xlIiwiZXJyb3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImVudW1lcmFibGUiLCJnZXQiLCJzcGVjaWVzIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJwb29sU2l6ZSIsImFsbG9jVW5zYWZlU2xvdyIsIl9pc0J1ZmZlciIsImNvbXBhcmUiLCJhIiwieCIsInkiLCJjb25jYXQiLCJsaXN0IiwicG9zIiwic3dhcDE2Iiwic3dhcDMyIiwic3dhcDY0IiwiYXBwbHkiLCJ0b0xvY2FsZVN0cmluZyIsImVxdWFscyIsImluc3BlY3QiLCJzdHIiLCJtYXgiLCJyZXBsYWNlIiwidHJpbSIsInRhcmdldCIsInRoaXNTdGFydCIsInRoaXNFbmQiLCJ0aGlzQ29weSIsInRhcmdldENvcHkiLCJpbmNsdWRlcyIsImlzRmluaXRlIiwiRXJyb3IiLCJ0b0pTT04iLCJfYXJyIiwiTUFYX0FSR1VNRU5UU19MRU5HVEgiLCJjb2RlUG9pbnRzIiwiZnJvbUNoYXJDb2RlIiwicmV0Iiwib3V0IiwidG9IZXgiLCJieXRlcyIsImNoZWNrT2Zmc2V0IiwiZXh0IiwiY2hlY2tJbnQiLCJjaGVja0lFRUU3NTQiLCJ3cml0ZUZsb2F0IiwibGl0dGxlRW5kaWFuIiwibm9Bc3NlcnQiLCJ3cml0ZURvdWJsZSIsIm5ld0J1ZiIsInN1YmFycmF5IiwicmVhZFVJbnRMRSIsIm11bCIsInJlYWRVSW50QkUiLCJyZWFkVUludDgiLCJyZWFkVUludDE2TEUiLCJyZWFkVUludDMyTEUiLCJyZWFkVUludDMyQkUiLCJyZWFkSW50TEUiLCJwb3ciLCJyZWFkSW50QkUiLCJyZWFkSW50OCIsInJlYWRJbnQxNkxFIiwicmVhZEludDE2QkUiLCJyZWFkSW50MzJMRSIsInJlYWRJbnQzMkJFIiwicmVhZEZsb2F0TEUiLCJyZWFkRmxvYXRCRSIsInJlYWREb3VibGVMRSIsInJlYWREb3VibGVCRSIsIndyaXRlVUludExFIiwid3JpdGVVSW50QkUiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsIndyaXRlVUludDE2QkUiLCJ3cml0ZVVJbnQzMkxFIiwid3JpdGVVSW50MzJCRSIsIndyaXRlSW50TEUiLCJsaW1pdCIsInN1YiIsIndyaXRlSW50QkUiLCJ3cml0ZUludDgiLCJ3cml0ZUludDE2TEUiLCJ3cml0ZUludDE2QkUiLCJ3cml0ZUludDMyTEUiLCJ3cml0ZUludDMyQkUiLCJ3cml0ZUZsb2F0TEUiLCJ3cml0ZUZsb2F0QkUiLCJ3cml0ZURvdWJsZUxFIiwid3JpdGVEb3VibGVCRSIsInRhcmdldFN0YXJ0IiwiY29weVdpdGhpbiIsInNldCIsImNvZGUiLCJjaGFyQ29kZUF0IiwiSU5WQUxJRF9CQVNFNjRfUkUiLCJiYXNlNjRjbGVhbiIsInNwbGl0IiwidW5pdHMiLCJJbmZpbml0eSIsImxlYWRTdXJyb2dhdGUiLCJieXRlQXJyYXkiLCJjIiwiaGkiLCJsbyIsInRvQnl0ZUFycmF5Iiwic3JjIiwiZHN0IiwiY29uc3RydWN0b3IiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFRQSxhQUVBLElBQUlBLE9BQVNDLFFBQVEsYUFDakJDLFFBQVVELFFBQVEsV0FFdEJFLFFBQVFDLE9BQVNBLE9BQ2pCRCxRQUFRRSxXQUFhQSxXQUNyQkYsUUFBUUcsa0JBQW9CLEdBRTVCLElBQUlDLGFBQWUsV0EyQm5CLFNBQVNDLG9CQUVQLElBQ0UsSUFBSUMsRUFBTSxJQUFJQyxXQUFXLEdBRXpCLE9BREFELEVBQUlFLFVBQVksQ0FBRUEsVUFBV0QsV0FBV0UsVUFBV0MsSUFBSyxXQUFjLE9BQU8sS0FDeEQsS0FBZEosRUFBSUksTUFDWCxNQUFPQyxHQUNQLE9BQU8sR0FvQlgsU0FBU0MsYUFBY0MsR0FDckIsR0FBSUEsRUFBU1QsYUFDWCxNQUFNLElBQUlVLFdBQVcsY0FBZ0JELEVBQVMsa0NBR2hELElBQUlFLEVBQU0sSUFBSVIsV0FBV00sR0FFekIsT0FEQUUsRUFBSVAsVUFBWVAsT0FBT1EsVUFDaEJNLEVBYVQsU0FBU2QsT0FBUWUsRUFBS0MsRUFBa0JKLEdBRXRDLEdBQW1CLGlCQUFSRyxFQUFrQixDQUMzQixHQUFnQyxpQkFBckJDLEVBQ1QsTUFBTSxJQUFJQyxVQUNSLHNFQUdKLE9BQU9DLFlBQVlILEdBRXJCLE9BQU9JLEtBQUtKLEVBQUtDLEVBQWtCSixHQWdCckMsU0FBU08sS0FBTUMsRUFBT0osRUFBa0JKLEdBQ3RDLEdBQXFCLGlCQUFWUSxFQUNULE9BQU9DLFdBQVdELEVBQU9KLEdBRzNCLEdBQUlNLFlBQVlDLE9BQU9ILEdBQ3JCLE9BQU9JLGNBQWNKLEdBR3ZCLEdBQWEsTUFBVEEsRUFDRixNQUFNSCxVQUNKLHlIQUNpREcsR0FJckQsR0FBSUssV0FBV0wsRUFBT0UsY0FDakJGLEdBQVNLLFdBQVdMLEVBQU1NLE9BQVFKLGFBQ3JDLE9BQU9LLGdCQUFnQlAsRUFBT0osRUFBa0JKLEdB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TixHQUFTLEdBQUssS0FEYXRMLEVBSWhDMkwsR0FEQUQsRUFBSWxGLEVBQUkwRSxXQUFXbEwsS0FDVCxFQUNWNEwsRUFBS0YsRUFBSSxJQUNURCxFQUFVL0csS0FBS2tILEdBQ2ZILEVBQVUvRyxLQUFLaUgsR0FHakIsT0FBT0YsRUFHVCxTQUFTekssY0FBZXdGLEdBQ3RCLE9BQU8zSixPQUFPZ1AsWUFBWVQsWUFBWTVFLElBR3hDLFNBQVNoRCxXQUFZc0ksRUFBS0MsRUFBSy9JLEVBQVFuRixHQUNyQyxJQUFLLElBQUltQyxFQUFJLEVBQUdBLEVBQUluQyxLQUNibUMsRUFBSWdELEdBQVUrSSxFQUFJbE8sUUFBWW1DLEdBQUs4TCxFQUFJak8sVUFEaEJtQyxFQUU1QitMLEVBQUkvTCxFQUFJZ0QsR0FBVThJLEVBQUk5TCxHQUV4QixPQUFPQSxFQU1ULFNBQVN0QixXQUFZd0IsRUFBS0ssR0FDeEIsT0FBT0wsYUFBZUssR0FDWixNQUFQTCxHQUFrQyxNQUFuQkEsRUFBSThMLGFBQStDLE1BQXhCOUwsRUFBSThMLFlBQVlDLE1BQ3pEL0wsRUFBSThMLFlBQVlDLE9BQVMxTCxFQUFLMEwsS0FFcEMsU0FBUzNMLFlBQWFKLEdBRXBCLE9BQU9BLEdBQVFBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9idWZmZXIvaW5kZXguanMifQ==", - "module.exports={100:\"Continue\",101:\"Switching Protocols\",102:\"Processing\",200:\"OK\",201:\"Created\",202:\"Accepted\",203:\"Non-Authoritative Information\",204:\"No Content\",205:\"Reset Content\",206:\"Partial Content\",207:\"Multi-Status\",208:\"Already Reported\",226:\"IM Used\",300:\"Multiple Choices\",301:\"Moved Permanently\",302:\"Found\",303:\"See Other\",304:\"Not Modified\",305:\"Use Proxy\",307:\"Temporary Redirect\",308:\"Permanent Redirect\",400:\"Bad Request\",401:\"Unauthorized\",402:\"Payment Required\",403:\"Forbidden\",404:\"Not Found\",405:\"Method Not Allowed\",406:\"Not Acceptable\",407:\"Proxy Authentication Required\",408:\"Request Timeout\",409:\"Conflict\",410:\"Gone\",411:\"Length Required\",412:\"Precondition Failed\",413:\"Payload Too Large\",414:\"URI Too Long\",415:\"Unsupported Media Type\",416:\"Range Not Satisfiable\",417:\"Expectation Failed\",418:\"I'm a teapot\",421:\"Misdirected Request\",422:\"Unprocessable Entity\",423:\"Locked\",424:\"Failed Dependency\",425:\"Unordered Collection\",426:\"Upgrade Required\",428:\"Precondition Required\",429:\"Too Many Requests\",431:\"Request Header Fields Too Large\",451:\"Unavailable For Legal Reasons\",500:\"Internal Server Error\",501:\"Not Implemented\",502:\"Bad Gateway\",503:\"Service Unavailable\",504:\"Gateway Timeout\",505:\"HTTP Version Not Supported\",506:\"Variant Also Negotiates\",507:\"Insufficient Storage\",508:\"Loop Detected\",509:\"Bandwidth Limit Exceeded\",510:\"Not Extended\",511:\"Network Authentication Required\"};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJyb3dzZXIuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIjEwMCIsIjEwMSIsIjEwMiIsIjIwMCIsIjIwMSIsIjIwMiIsIjIwMyIsIjIwNCIsIjIwNSIsIjIwNiIsIjIwNyIsIjIwOCIsIjIyNiIsIjMwMCIsIjMwMSIsIjMwMiIsIjMwMyIsIjMwNCIsIjMwNSIsIjMwNyIsIjMwOCIsIjQwMCIsIjQwMSIsIjQwMiIsIjQwMyIsIjQwNCIsIjQwNSIsIjQwNiIsIjQwNyIsIjQwOCIsIjQwOSIsIjQxMCIsIjQxMSIsIjQxMiIsIjQxMyIsIjQxNCIsIjQxNSIsIjQxNiIsIjQxNyIsIjQxOCIsIjQyMSIsIjQyMiIsIjQyMyIsIjQyNCIsIjQyNSIsIjQyNiIsIjQyOCIsIjQyOSIsIjQzMSIsIjQ1MSIsIjUwMCIsIjUwMSIsIjUwMiIsIjUwMyIsIjUwNCIsIjUwNSIsIjUwNiIsIjUwNyIsIjUwOCIsIjUwOSIsIjUxMCIsIjUxMSJdLCJtYXBwaW5ncyI6IkFBQUFBLE9BQU9DLFFBQVUsQ0FDZkMsSUFBTyxXQUNQQyxJQUFPLHNCQUNQQyxJQUFPLGFBQ1BDLElBQU8sS0FDUEMsSUFBTyxVQUNQQyxJQUFPLFdBQ1BDLElBQU8sZ0NBQ1BDLElBQU8sYUFDUEMsSUFBTyxnQkFDUEMsSUFBTyxrQkFDUEMsSUFBTyxlQUNQQyxJQUFPLG1CQUNQQyxJQUFPLFVBQ1BDLElBQU8sbUJBQ1BDLElBQU8sb0JBQ1BDLElBQU8sUUFDUEMsSUFBTyxZQUNQQyxJQUFPLGVBQ1BDLElBQU8sWUFDUEMsSUFBTyxxQkFDUEMsSUFBTyxxQkFDUEMsSUFBTyxjQUNQQyxJQUFPLGVBQ1BDLElBQU8sbUJBQ1BDLElBQU8sWUFDUEMsSUFBTyxZQUNQQyxJQUFPLHFCQUNQQyxJQUFPLGlCQUNQQyxJQUFPLGdDQUNQQyxJQUFPLGtCQUNQQyxJQUFPLFdBQ1BDLElBQU8sT0FDUEMsSUFBTyxrQkFDUEMsSUFBTyxzQkFDUEMsSUFBTyxvQkFDUEMsSUFBTyxlQUNQQyxJQUFPLHlCQUNQQyxJQUFPLHdCQUNQQyxJQUFPLHFCQUNQQyxJQUFPLGVBQ1BDLElBQU8sc0JBQ1BDLElBQU8sdUJBQ1BDLElBQU8sU0FDUEMsSUFBTyxvQkFDUEMsSUFBTyx1QkFDUEMsSUFBTyxtQkFDUEMsSUFBTyx3QkFDUEMsSUFBTyxvQkFDUEMsSUFBTyxrQ0FDUEMsSUFBTyxnQ0FDUEMsSUFBTyx3QkFDUEMsSUFBTyxrQkFDUEMsSUFBTyxjQUNQQyxJQUFPLHNCQUNQQyxJQUFPLGtCQUNQQyxJQUFPLDZCQUNQQyxJQUFPLDBCQUNQQyxJQUFPLHVCQUNQQyxJQUFPLGdCQUNQQyxJQUFPLDJCQUNQQyxJQUFPLGVBQ1BDLElBQU8iLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2J1aWx0aW4tc3RhdHVzLWNvZGVzL2Jyb3dzZXIuanMifQ==", - "\"use strict\";var next=global.process&&process.nextTick||global.setImmediate||function(n){setTimeout(n,0)};module.exports=function(n,t){return n?void t.then(function(t){next(function(){n(null,t)})},function(t){next(function(){n(t)})}):t};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbIm5leHQiLCJnbG9iYWwiLCJwcm9jZXNzIiwibmV4dFRpY2siLCJzZXRJbW1lZGlhdGUiLCJmIiwic2V0VGltZW91dCIsIm1vZHVsZSIsImV4cG9ydHMiLCJjYiIsInByb21pc2UiLCJ0aGVuIiwicmVzdWx0IiwiZXJyIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUVBLElBQUlBLEtBQVFDLE9BQU9DLFNBQVdBLFFBQVFDLFVBQWFGLE9BQU9HLGNBQWdCLFNBQVVDLEdBQ2xGQyxXQUFXRCxFQUFHLElBR2hCRSxPQUFPQyxRQUFVLFNBQWdCQyxFQUFJQyxHQUNuQyxPQUFJRCxPQUNGQyxFQUNHQyxLQUFLLFNBQVVDLEdBQ2RaLEtBQUssV0FBY1MsRUFBRyxLQUFNRyxNQUMzQixTQUFVQyxHQUNYYixLQUFLLFdBQWNTLEVBQUdJLE9BS25CSCIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvY2FsbC1tZS1tYXliZS9pbmRleC5qcyJ9", - "function isArray(r){return Array.isArray?Array.isArray(r):\"[object Array]\"===objectToString(r)}function isBoolean(r){return\"boolean\"==typeof r}function isNull(r){return null===r}function isNullOrUndefined(r){return null==r}function isNumber(r){return\"number\"==typeof r}function isString(r){return\"string\"==typeof r}function isSymbol(r){return\"symbol\"==typeof r}function isUndefined(r){return void 0===r}function isRegExp(r){return\"[object RegExp]\"===objectToString(r)}function isObject(r){return\"object\"==typeof r&&null!==r}function isDate(r){return\"[object Date]\"===objectToString(r)}function isError(r){return\"[object Error]\"===objectToString(r)||r instanceof Error}function isFunction(r){return\"function\"==typeof r}function isPrimitive(r){return null===r||\"boolean\"==typeof r||\"number\"==typeof r||\"string\"==typeof r||\"symbol\"==typeof r||void 0===r}function objectToString(r){return Object.prototype.toString.call(r)}exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=Buffer.isBuffer;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWwuanMiXSwibmFtZXMiOlsiaXNBcnJheSIsImFyZyIsIkFycmF5Iiwib2JqZWN0VG9TdHJpbmciLCJpc0Jvb2xlYW4iLCJpc051bGwiLCJpc051bGxPclVuZGVmaW5lZCIsImlzTnVtYmVyIiwiaXNTdHJpbmciLCJpc1N5bWJvbCIsImlzVW5kZWZpbmVkIiwiaXNSZWdFeHAiLCJyZSIsImlzT2JqZWN0IiwiaXNEYXRlIiwiZCIsImlzRXJyb3IiLCJlIiwiRXJyb3IiLCJpc0Z1bmN0aW9uIiwiaXNQcmltaXRpdmUiLCJvIiwiT2JqZWN0IiwicHJvdG90eXBlIiwidG9TdHJpbmciLCJjYWxsIiwiZXhwb3J0cyIsImlzQnVmZmVyIiwiQnVmZmVyIl0sIm1hcHBpbmdzIjoiQUF3QkEsU0FBU0EsUUFBUUMsR0FDZixPQUFJQyxNQUFNRixRQUNERSxNQUFNRixRQUFRQyxHQUVRLG1CQUF4QkUsZUFBZUYsR0FJeEIsU0FBU0csVUFBVUgsR0FDakIsTUFBc0Isa0JBQVJBLEVBSWhCLFNBQVNJLE9BQU9KLEdBQ2QsT0FBZSxPQUFSQSxFQUlULFNBQVNLLGtCQUFrQkwsR0FDekIsT0FBYyxNQUFQQSxFQUlULFNBQVNNLFNBQVNOLEdBQ2hCLE1BQXNCLGlCQUFSQSxFQUloQixTQUFTTyxTQUFTUCxHQUNoQixNQUFzQixpQkFBUkEsRUFJaEIsU0FBU1EsU0FBU1IsR0FDaEIsTUFBc0IsaUJBQVJBLEVBSWhCLFNBQVNTLFlBQVlULEdBQ25CLFlBQWUsSUFBUkEsRUFJVCxTQUFTVSxTQUFTQyxHQUNoQixNQUE4QixvQkFBdkJULGVBQWVTLEdBSXhCLFNBQVNDLFNBQVNaLEdBQ2hCLE1BQXNCLGlCQUFSQSxHQUE0QixPQUFSQSxFQUlwQyxTQUFTYSxPQUFPQyxHQUNkLE1BQTZCLGtCQUF0QlosZUFBZVksR0FJeEIsU0FBU0MsUUFBUUMsR0FDZixNQUE4QixtQkFBdEJkLGVBQWVjLElBQTJCQSxhQUFhQyxNQUlqRSxTQUFTQyxXQUFXbEIsR0FDbEIsTUFBc0IsbUJBQVJBLEVBSWhCLFNBQVNtQixZQUFZbkIsR0FDbkIsT0FBZSxPQUFSQSxHQUNlLGtCQUFSQSxHQUNRLGlCQUFSQSxHQUNRLGlCQUFSQSxHQUNRLGlCQUFSQSxRQUNRLElBQVJBLEVBTWhCLFNBQVNFLGVBQWVrQixHQUN0QixPQUFPQyxPQUFPQyxVQUFVQyxTQUFTQyxLQUFLSixHQTNFeENLLFFBQVExQixRQUFVQSxRQUtsQjBCLFFBQVF0QixVQUFZQSxVQUtwQnNCLFFBQVFyQixPQUFTQSxPQUtqQnFCLFFBQVFwQixrQkFBb0JBLGtCQUs1Qm9CLFFBQVFuQixTQUFXQSxTQUtuQm1CLFFBQVFsQixTQUFXQSxTQUtuQmtCLFFBQVFqQixTQUFXQSxTQUtuQmlCLFFBQVFoQixZQUFjQSxZQUt0QmdCLFFBQVFmLFNBQVdBLFNBS25CZSxRQUFRYixTQUFXQSxTQUtuQmEsUUFBUVosT0FBU0EsT0FLakJZLFFBQVFWLFFBQVVBLFFBS2xCVSxRQUFRUCxXQUFhQSxXQVVyQk8sUUFBUU4sWUFBY0EsWUFFdEJNLFFBQVFDLFNBQVdDLE9BQU9EIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9jb3JlLXV0aWwtaXMvbGliL3V0aWwuanMifQ==", - "var objectCreate=Object.create||objectCreatePolyfill,objectKeys=Object.keys||objectKeysPolyfill,bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){this._events&&Object.prototype.hasOwnProperty.call(this,\"_events\")||(this._events=objectCreate(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}module.exports=EventEmitter,EventEmitter.EventEmitter=EventEmitter,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0;var hasDefineProperty,defaultMaxListeners=10;try{var o={};Object.defineProperty&&Object.defineProperty(o,\"x\",{value:0}),hasDefineProperty=0===o.x}catch(e){hasDefineProperty=!1}function $getMaxListeners(e){return void 0===e._maxListeners?EventEmitter.defaultMaxListeners:e._maxListeners}function emitNone(e,t,n){if(t)e.call(n);else for(var r=e.length,i=arrayClone(e,r),s=0;s0&&o.length>i){o.warned=!0;var a=new Error(\"Possible EventEmitter memory leak detected. \"+o.length+' \"'+String(t)+'\" listeners added. Use emitter.setMaxListeners() to increase limit.');a.name=\"MaxListenersExceededWarning\",a.emitter=e,a.type=t,a.count=o.length,\"object\"==typeof console&&console.warn&&console.warn(\"%s: %s\",a.name,a.message)}}else o=s[t]=n,++e._eventsCount;return e}function onceWrapper(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var e=new Array(arguments.length),t=0;t1&&(t=arguments[1]),t instanceof Error)throw t;var l=new Error('Unhandled \"error\" event. ('+t+\")\");throw l.context=t,l}if(!(n=o[e]))return!1;var u=\"function\"==typeof n;switch(r=arguments.length){case 1:emitNone(n,u,this);break;case 2:emitOne(n,u,this,arguments[1]);break;case 3:emitTwo(n,u,this,arguments[1],arguments[2]);break;case 4:emitThree(n,u,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=new Array(r-1),s=1;s=0;s--)if(n[s]===t||n[s].listener===t){o=n[s].listener,i=s;break}if(i<0)return this;0===i?n.shift():spliceOne(n,i),1===n.length&&(r[e]=n[0]),r.removeListener&&this.emit(\"removeListener\",e,o||t)}return this},EventEmitter.prototype.removeAllListeners=function(e){var t,n,r;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=objectCreate(null),this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=objectCreate(null):delete n[e]),this;if(0===arguments.length){var i,s=objectKeys(n);for(r=0;r=0;r--)this.removeListener(e,t[r]);return this},EventEmitter.prototype.listeners=function(e){return _listeners(this,e,!0)},EventEmitter.prototype.rawListeners=function(e){return _listeners(this,e,!1)},EventEmitter.listenerCount=function(e,t){return\"function\"==typeof e.listenerCount?e.listenerCount(t):listenerCount.call(e,t)},EventEmitter.prototype.listenerCount=listenerCount,EventEmitter.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV2ZW50cy5qcyJdLCJuYW1lcyI6WyJvYmplY3RDcmVhdGUiLCJPYmplY3QiLCJjcmVhdGUiLCJvYmplY3RDcmVhdGVQb2x5ZmlsbCIsIm9iamVjdEtleXMiLCJrZXlzIiwib2JqZWN0S2V5c1BvbHlmaWxsIiwiYmluZCIsIkZ1bmN0aW9uIiwicHJvdG90eXBlIiwiZnVuY3Rpb25CaW5kUG9seWZpbGwiLCJFdmVudEVtaXR0ZXIiLCJ0aGlzIiwiX2V2ZW50cyIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9ldmVudHNDb3VudCIsIl9tYXhMaXN0ZW5lcnMiLCJ1bmRlZmluZWQiLCJtb2R1bGUiLCJleHBvcnRzIiwiaGFzRGVmaW5lUHJvcGVydHkiLCJkZWZhdWx0TWF4TGlzdGVuZXJzIiwibyIsImRlZmluZVByb3BlcnR5IiwidmFsdWUiLCJ4IiwiZXJyIiwiJGdldE1heExpc3RlbmVycyIsInRoYXQiLCJlbWl0Tm9uZSIsImhhbmRsZXIiLCJpc0ZuIiwic2VsZiIsImxlbiIsImxlbmd0aCIsImxpc3RlbmVycyIsImFycmF5Q2xvbmUiLCJpIiwiZW1pdE9uZSIsImFyZzEiLCJlbWl0VHdvIiwiYXJnMiIsImVtaXRUaHJlZSIsImFyZzMiLCJlbWl0TWFueSIsImFyZ3MiLCJhcHBseSIsIl9hZGRMaXN0ZW5lciIsInRhcmdldCIsInR5cGUiLCJsaXN0ZW5lciIsInByZXBlbmQiLCJtIiwiZXZlbnRzIiwiZXhpc3RpbmciLCJUeXBlRXJyb3IiLCJuZXdMaXN0ZW5lciIsImVtaXQiLCJ1bnNoaWZ0IiwicHVzaCIsIndhcm5lZCIsInciLCJFcnJvciIsIlN0cmluZyIsIm5hbWUiLCJlbWl0dGVyIiwiY291bnQiLCJjb25zb2xlIiwid2FybiIsIm1lc3NhZ2UiLCJvbmNlV3JhcHBlciIsImZpcmVkIiwicmVtb3ZlTGlzdGVuZXIiLCJ3cmFwRm4iLCJhcmd1bWVudHMiLCJBcnJheSIsIl9vbmNlV3JhcCIsInN0YXRlIiwid3JhcHBlZCIsIl9saXN0ZW5lcnMiLCJ1bndyYXAiLCJldmxpc3RlbmVyIiwidW53cmFwTGlzdGVuZXJzIiwibGlzdGVuZXJDb3VudCIsInNwbGljZU9uZSIsImxpc3QiLCJpbmRleCIsImsiLCJuIiwicG9wIiwiYXJyIiwiY29weSIsInJldCIsInByb3RvIiwiRiIsIm9iaiIsImNvbnRleHQiLCJmbiIsImVudW1lcmFibGUiLCJnZXQiLCJzZXQiLCJhcmciLCJzZXRNYXhMaXN0ZW5lcnMiLCJpc05hTiIsImdldE1heExpc3RlbmVycyIsImVyIiwiZG9FcnJvciIsImVycm9yIiwiYWRkTGlzdGVuZXIiLCJvbiIsInByZXBlbmRMaXN0ZW5lciIsIm9uY2UiLCJwcmVwZW5kT25jZUxpc3RlbmVyIiwicG9zaXRpb24iLCJvcmlnaW5hbExpc3RlbmVyIiwic2hpZnQiLCJyZW1vdmVBbGxMaXN0ZW5lcnMiLCJrZXkiLCJyYXdMaXN0ZW5lcnMiLCJldmVudE5hbWVzIiwiUmVmbGVjdCIsIm93bktleXMiXSwibWFwcGluZ3MiOiJBQXFCQSxJQUFJQSxhQUFlQyxPQUFPQyxRQUFVQyxxQkFDaENDLFdBQWFILE9BQU9JLE1BQVFDLG1CQUM1QkMsS0FBT0MsU0FBU0MsVUFBVUYsTUFBUUcscUJBRXRDLFNBQVNDLGVBQ0ZDLEtBQUtDLFNBQVlaLE9BQU9RLFVBQVVLLGVBQWVDLEtBQUtILEtBQU0sYUFDL0RBLEtBQUtDLFFBQVViLGFBQWEsTUFDNUJZLEtBQUtJLGFBQWUsR0FHdEJKLEtBQUtLLGNBQWdCTCxLQUFLSyxvQkFBaUJDLEVBRTdDQyxPQUFPQyxRQUFVVCxhQUdqQkEsYUFBYUEsYUFBZUEsYUFFNUJBLGFBQWFGLFVBQVVJLGFBQVVLLEVBQ2pDUCxhQUFhRixVQUFVUSxtQkFBZ0JDLEVBSXZDLElBRUlHLGtCQUZBQyxvQkFBc0IsR0FHMUIsSUFDRSxJQUFJQyxFQUFJLEdBQ0p0QixPQUFPdUIsZ0JBQWdCdkIsT0FBT3VCLGVBQWVELEVBQUcsSUFBSyxDQUFFRSxNQUFPLElBQ2xFSixrQkFBNEIsSUFBUkUsRUFBRUcsRUFDdEIsTUFBT0MsR0FBT04s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", - "function format(e){var r=Array.prototype.slice.call(arguments,1);return r.length&&(e=e.replace(/(%?)(%([jds]))/g,function(e,t,a,n){var s=r.shift();switch(n){case\"s\":s=\"\"+s;break;case\"d\":s=Number(s);break;case\"j\":s=JSON.stringify(s)}return t?(r.unshift(s),e):s})),r.length&&(e+=\" \"+r.join(\" \")),\"\"+(e=e.replace(/%{2,2}/g,\"%\"))}module.exports=format;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvcm1hdC5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJmbXQiLCJhcmdzIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJzbGljZSIsImNhbGwiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJyZXBsYWNlIiwibWF0Y2giLCJlc2NhcGVkIiwicHRuIiwiZmxhZyIsImFyZyIsInNoaWZ0IiwiTnVtYmVyIiwiSlNPTiIsInN0cmluZ2lmeSIsInVuc2hpZnQiLCJqb2luIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsT0FBT0MsR0FDZCxJQUNJQyxFQUFPQyxNQUFNQyxVQUFVQyxNQUFNQyxLQUFLQyxVQUFXLEdBK0JqRCxPQTlCR0wsRUFBS00sU0FDTlAsRUFBTUEsRUFBSVEsUUFISCxrQkFHZSxTQUFTQyxFQUFPQyxFQUFTQyxFQUFLQyxHQUNsRCxJQUFJQyxFQUFNWixFQUFLYSxRQUNmLE9BQU9GLEdBQ0wsSUFBSyxJQUNIQyxFQUFNLEdBQUtBLEVBQ1gsTUFDRixJQUFLLElBQ0hBLEVBQU1FLE9BQU9GLEdBQ2IsTUFDRixJQUFLLElBQ0hBLEVBQU1HLEtBQUtDLFVBQVVKLEdBR3pCLE9BQUlILEdBR0pULEVBQUtpQixRQUFRTCxHQUNOSixHQUhFSSxLQVFWWixFQUFLTSxTQUNOUCxHQUFPLElBQU1DLEVBQUtrQixLQUFLLE1BTWxCLElBRlBuQixFQUFNQSxFQUFJUSxRQUFRLFVBQVcsTUFLL0JZLE9BQU9DLFFBQVV0QiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvZm9ybWF0LXV0aWwvZm9ybWF0LmpzIn0=", - "var http=require(\"http\"),url=require(\"url\"),https=module.exports;for(var key in http)http.hasOwnProperty(key)&&(https[key]=http[key]);function validateParams(t){if(\"string\"==typeof t&&(t=url.parse(t)),t.protocol||(t.protocol=\"https:\"),\"https:\"!==t.protocol)throw new Error('Protocol \"'+t.protocol+'\" not supported. Expected \"https:\"');return t}https.request=function(t,r){return t=validateParams(t),http.request.call(this,t,r)},https.get=function(t,r){return t=validateParams(t),http.get.call(this,t,r)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImh0dHAiLCJyZXF1aXJlIiwidXJsIiwiaHR0cHMiLCJtb2R1bGUiLCJleHBvcnRzIiwia2V5IiwiaGFzT3duUHJvcGVydHkiLCJ2YWxpZGF0ZVBhcmFtcyIsInBhcmFtcyIsInBhcnNlIiwicHJvdG9jb2wiLCJFcnJvciIsInJlcXVlc3QiLCJjYiIsImNhbGwiLCJ0aGlzIiwiZ2V0Il0sIm1hcHBpbmdzIjoiQUFBQSxJQUFJQSxLQUFPQyxRQUFRLFFBQ2ZDLElBQU1ELFFBQVEsT0FFZEUsTUFBUUMsT0FBT0MsUUFFbkIsSUFBSyxJQUFJQyxPQUFPTixLQUNWQSxLQUFLTyxlQUFlRCxPQUFNSCxNQUFNRyxLQUFPTixLQUFLTSxNQWFsRCxTQUFTRSxlQUFnQkMsR0FPdkIsR0FOc0IsaUJBQVhBLElBQ1RBLEVBQVNQLElBQUlRLE1BQU1ELElBRWhCQSxFQUFPRSxXQUNWRixFQUFPRSxTQUFXLFVBRUksV0FBcEJGLEVBQU9FLFNBQ1QsTUFBTSxJQUFJQyxNQUFNLGFBQWVILEVBQU9FLFNBQVcsc0NBRW5ELE9BQU9GLEVBcEJUTixNQUFNVSxRQUFVLFNBQVVKLEVBQVFLLEdBRWhDLE9BREFMLEVBQVNELGVBQWVDLEdBQ2pCVCxLQUFLYSxRQUFRRSxLQUFLQyxLQUFNUCxFQUFRSyxJQUd6Q1gsTUFBTWMsSUFBTSxTQUFVUixFQUFRSyxHQUU1QixPQURBTCxFQUFTRCxlQUFlQyxHQUNqQlQsS0FBS2lCLElBQUlGLEtBQUtDLEtBQU1QLEVBQVFLIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9odHRwcy1icm93c2VyaWZ5L2luZGV4LmpzIn0=", - "exports.read=function(a,o,t,r,h){var M,p,w=8*h-r-1,f=(1<>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:1/0*(s?-1:1);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),(o+=p+N>=1?n/f:n*Math.pow(2,1-N))*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImV4cG9ydHMiLCJyZWFkIiwiYnVmZmVyIiwib2Zmc2V0IiwiaXNMRSIsIm1MZW4iLCJuQnl0ZXMiLCJlIiwibSIsImVMZW4iLCJlTWF4IiwiZUJpYXMiLCJuQml0cyIsImkiLCJkIiwicyIsIk5hTiIsIkluZmluaXR5IiwiTWF0aCIsInBvdyIsIndyaXRlIiwidmFsdWUiLCJjIiwicnQiLCJhYnMiLCJpc05hTiIsImZsb29yIiwibG9nIiwiTE4yIl0sIm1hcHBpbmdzIjoiQUFBQUEsUUFBUUMsS0FBTyxTQUFVQyxFQUFRQyxFQUFRQyxFQUFNQyxFQUFNQyxHQUNuRCxJQUFJQyxFQUFHQyxFQUNIQyxFQUFpQixFQUFUSCxFQUFjRCxFQUFPLEVBQzdCSyxHQUFRLEdBQUtELEdBQVEsRUFDckJFLEVBQVFELEdBQVEsRUFDaEJFLEdBQVMsRUFDVEMsRUFBSVQsRUFBUUUsRUFBUyxFQUFLLEVBQzFCUSxFQUFJVixHQUFRLEVBQUksRUFDaEJXLEVBQUliLEVBQU9DLEVBQVNVLEdBT3hCLElBTEFBLEdBQUtDLEVBRUxQLEVBQUlRLEdBQU0sSUFBT0gsR0FBVSxFQUMzQkcsS0FBUUgsRUFDUkEsR0FBU0gsRUFDRkcsRUFBUSxFQUFHTCxFQUFTLElBQUpBLEVBQVdMLEVBQU9DLEVBQVNVLEdBQUlBLEdBQUtDLEVBQUdGLEdBQVMsR0FLdkUsSUFIQUosRUFBSUQsR0FBTSxJQUFPSyxHQUFVLEVBQzNCTCxLQUFRSyxFQUNSQSxHQUFTUCxFQUNGTyxFQUFRLEVBQUdKLEVBQVMsSUFBSkEsRUFBV04sRUFBT0MsRUFBU1UsR0FBSUEsR0FBS0MsRUFBR0YsR0FBUyxHQUV2RSxHQUFVLElBQU5MLEVBQ0ZBLEVBQUksRUFBSUksTUFDSCxDQUFBLEdBQUlKLElBQU1HLEVBQ2YsT0FBT0YsRUFBSVEsSUFBc0JDLEVBQUFBLEdBQWRGLEdBQUssRUFBSSxHQUU1QlAsR0FBUVUsS0FBS0MsSUFBSSxFQUFHZCxHQUNwQkUsR0FBUUksRUFFVixPQUFRSSxHQUFLLEVBQUksR0FBS1AsRUFBSVUsS0FBS0MsSUFBSSxFQUFHWixFQUFJRixJQUc1Q0wsUUFBUW9CLE1BQVEsU0FBVWxCLEVBQVFtQixFQUFPbEIsRUFBUUMsRUFBTUMsRUFBTUMsR0FDM0QsSUFBSUMsRUFBR0MsRUFBR2MsRUFDTmIsRUFBaUIsRUFBVEgsRUFBY0QsRUFBTyxFQUM3QkssR0FBUSxHQUFLRCxHQUFRLEVBQ3JCRSxFQUFRRCxHQUFRLEVBQ2hCYSxFQUFlLEtBQVRsQixFQUFjYSxLQUFLQyxJQUFJLEdBQUksSUFBTUQsS0FBS0MsSUFBSSxHQUFJLElBQU0sRUFDMUROLEVBQUlULEVBQU8sRUFBS0UsRUFBUyxFQUN6QlEsRUFBSVYsRUFBTyxHQUFLLEVBQ2hCVyxFQUFJTSxFQUFRLEdBQWdCLElBQVZBLEdBQWUsRUFBSUEsRUFBUSxFQUFLLEVBQUksRUFtQzFELElBakNBQSxFQUFRSCxLQUFLTSxJQUFJSCxHQUViSSxNQUFNSixJQUFVQSxJQUFVSixFQUFBQSxHQUM1QlQsRUFBSWlCLE1BQU1KLEdBQVMsRUFBSSxFQUN2QmQsRUFBSUcsSUFFSkgsRUFBSVcsS0FBS1EsTUFBTVIsS0FBS1MsSUFBSU4sR0FBU0gsS0FBS1UsS0FDbENQLEdBQVNDLEVBQUlKLEtBQUtDLElBQUksR0FBSVosSUFBTSxJQUNsQ0EsSUFDQWUsR0FBSyxJQUdMRCxHQURFZCxFQUFJSSxHQUFTLEVBQ05ZLEVBQUtELEVBRUxDLEVBQUtMLEtBQUtDLElBQUksRUFBRyxFQUFJUixJQUVwQlcsR0FBSyxJQUNmZixJQUNBZSxHQUFLLEdBR0hmLEVBQUlJLEdBQVNELEdBQ2ZGLEVBQUksRUFDSkQsRUFBSUcsR0FDS0gsRUFBSUksR0FBUyxHQUN0QkgsR0FBTWEsRUFBUUMsRUFBSyxHQUFLSixLQUFLQyxJQUFJLEVBQUdkLEdBQ3BDRSxHQUFRSSxJQUVSSCxFQUFJYSxFQUFRSCxLQUFLQyxJQUFJLEVBQUdSLEVBQVEsR0FBS08sS0FBS0MsSUFBSSxFQUFHZCxHQUNqREUsRUFBSSxJQUlERixHQUFRLEVBQUdILEVBQU9DLEVBQVNVLEdBQVMsSUFBSkwsRUFBVUssR0FBS0MsRUFBR04sR0FBSyxJQUFLSCxHQUFRLEdBSTNFLElBRkFFLEVBQUtBLEdBQUtGLEVBQVFHLEVBQ2xCQyxHQUFRSixFQUNESSxFQUFPLEVBQUdQLEVBQU9DLEVBQVNVLEdBQVMsSUFBSk4sRUFBVU0sR0FBS0MsRUFBR1AsR0FBSyxJQUFLRSxHQUFRLEdBRTFFUCxFQUFPQyxFQUFTVSxFQUFJQyxJQUFVLElBQUpDIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9pZWVlNzU0L2luZGV4LmpzIn0=", - "\"function\"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluaGVyaXRzX2Jyb3dzZXIuanMiXSwibmFtZXMiOlsiT2JqZWN0IiwiY3JlYXRlIiwibW9kdWxlIiwiZXhwb3J0cyIsImN0b3IiLCJzdXBlckN0b3IiLCJzdXBlcl8iLCJwcm90b3R5cGUiLCJjb25zdHJ1Y3RvciIsInZhbHVlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiY29uZmlndXJhYmxlIiwiVGVtcEN0b3IiXSwibWFwcGluZ3MiOiJBQUE2QixtQkFBbEJBLE9BQU9DLE9BRWhCQyxPQUFPQyxRQUFVLFNBQWtCQyxFQUFNQyxHQUN2Q0QsRUFBS0UsT0FBU0QsRUFDZEQsRUFBS0csVUFBWVAsT0FBT0MsT0FBT0ksRUFBVUUsVUFBVyxDQUNsREMsWUFBYSxDQUNYQyxNQUFPTCxFQUNQTSxZQUFZLEVBQ1pDLFVBQVUsRUFDVkMsY0FBYyxNQU1wQlYsT0FBT0MsUUFBVSxTQUFrQkMsRUFBTUMsR0FDdkNELEVBQUtFLE9BQVNELEVBQ2QsSUFBSVEsRUFBVyxhQUNmQSxFQUFTTixVQUFZRixFQUFVRSxVQUMvQkgsRUFBS0csVUFBWSxJQUFJTSxFQUNyQlQsRUFBS0csVUFBVUMsWUFBY0oiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2luaGVyaXRzL2luaGVyaXRzX2Jyb3dzZXIuanMifQ==", - "/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nfunction isBuffer(f){return!!f.constructor&&\"function\"==typeof f.constructor.isBuffer&&f.constructor.isBuffer(f)}function isSlowBuffer(f){return\"function\"==typeof f.readFloatLE&&\"function\"==typeof f.slice&&isBuffer(f.slice(0,0))}module.exports=function(f){return null!=f&&(isBuffer(f)||isSlowBuffer(f)||!!f._isBuffer)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImlzQnVmZmVyIiwib2JqIiwiY29uc3RydWN0b3IiLCJpc1Nsb3dCdWZmZXIiLCJyZWFkRmxvYXRMRSIsInNsaWNlIiwibW9kdWxlIiwiZXhwb3J0cyIsIl9pc0J1ZmZlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBYUEsU0FBU0EsU0FBVUMsR0FDakIsUUFBU0EsRUFBSUMsYUFBbUQsbUJBQTdCRCxFQUFJQyxZQUFZRixVQUEyQkMsRUFBSUMsWUFBWUYsU0FBU0MsR0FJekcsU0FBU0UsYUFBY0YsR0FDckIsTUFBa0MsbUJBQXBCQSxFQUFJRyxhQUFtRCxtQkFBZEgsRUFBSUksT0FBd0JMLFNBQVNDLEVBQUlJLE1BQU0sRUFBRyxJQVYzR0MsT0FBT0MsUUFBVSxTQUFVTixHQUN6QixPQUFjLE1BQVBBLElBQWdCRCxTQUFTQyxJQUFRRSxhQUFhRixNQUFVQSxFQUFJTyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzIn0=", - "var toString={}.toString;module.exports=Array.isArray||function(r){return\"[object Array]\"==toString.call(r)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbInRvU3RyaW5nIiwibW9kdWxlIiwiZXhwb3J0cyIsIkFycmF5IiwiaXNBcnJheSIsImFyciIsImNhbGwiXSwibWFwcGluZ3MiOiJBQUFBLElBQUlBLFNBQVcsR0FBR0EsU0FFbEJDLE9BQU9DLFFBQVVDLE1BQU1DLFNBQVcsU0FBVUMsR0FDMUMsTUFBNkIsa0JBQXRCTCxTQUFTTSxLQUFLRCIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvaXNhcnJheS9pbmRleC5qcyJ9", - "\"use strict\";var yaml=require(\"./lib/js-yaml.js\");module.exports=yaml;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbInlhbWwiLCJyZXF1aXJlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsYUFHQSxJQUFJQSxLQUFPQyxRQUFRLG9CQUduQkMsT0FBT0MsUUFBVUgiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2pzLXlhbWwvaW5kZXguanMifQ==", - "\"use strict\";var loader=require(\"./js-yaml/loader\"),dumper=require(\"./js-yaml/dumper\");function deprecated(e){return function(){throw new Error(\"Function \"+e+\" is deprecated and cannot be used.\")}}module.exports.Type=require(\"./js-yaml/type\"),module.exports.Schema=require(\"./js-yaml/schema\"),module.exports.FAILSAFE_SCHEMA=require(\"./js-yaml/schema/failsafe\"),module.exports.JSON_SCHEMA=require(\"./js-yaml/schema/json\"),module.exports.CORE_SCHEMA=require(\"./js-yaml/schema/core\"),module.exports.DEFAULT_SAFE_SCHEMA=require(\"./js-yaml/schema/default_safe\"),module.exports.DEFAULT_FULL_SCHEMA=require(\"./js-yaml/schema/default_full\"),module.exports.load=loader.load,module.exports.loadAll=loader.loadAll,module.exports.safeLoad=loader.safeLoad,module.exports.safeLoadAll=loader.safeLoadAll,module.exports.dump=dumper.dump,module.exports.safeDump=dumper.safeDump,module.exports.YAMLException=require(\"./js-yaml/exception\"),module.exports.MINIMAL_SCHEMA=require(\"./js-yaml/schema/failsafe\"),module.exports.SAFE_SCHEMA=require(\"./js-yaml/schema/default_safe\"),module.exports.DEFAULT_SCHEMA=require(\"./js-yaml/schema/default_full\"),module.exports.scan=deprecated(\"scan\"),module.exports.parse=deprecated(\"parse\"),module.exports.compose=deprecated(\"compose\"),module.exports.addConstructor=deprecated(\"addConstructor\");\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImpzLXlhbWwuanMiXSwibmFtZXMiOlsibG9hZGVyIiwicmVxdWlyZSIsImR1bXBlciIsImRlcHJlY2F0ZWQiLCJuYW1lIiwiRXJyb3IiLCJtb2R1bGUiLCJleHBvcnRzIiwiVHlwZSIsIlNjaGVtYSIsIkZBSUxTQUZFX1NDSEVNQSIsIkpTT05fU0NIRU1BIiwiQ09SRV9TQ0hFTUEiLCJERUZBVUxUX1NBRkVfU0NIRU1BIiwiREVGQVVMVF9GVUxMX1NDSEVNQSIsImxvYWQiLCJsb2FkQWxsIiwic2FmZUxvYWQiLCJzYWZlTG9hZEFsbCIsImR1bXAiLCJzYWZlRHVtcCIsIllBTUxFeGNlcHRpb24iLCJNSU5JTUFMX1NDSEVNQSIsIlNBRkVfU0NIRU1BIiwiREVGQVVMVF9TQ0hFTUEiLCJzY2FuIiwicGFyc2UiLCJjb21wb3NlIiwiYWRkQ29uc3RydWN0b3IiXSwibWFwcGluZ3MiOiJBQUFBLGFBR0EsSUFBSUEsT0FBU0MsUUFBUSxvQkFDakJDLE9BQVNELFFBQVEsb0JBR3JCLFNBQVNFLFdBQVdDLEdBQ2xCLE9BQU8sV0FDTCxNQUFNLElBQUlDLE1BQU0sWUFBY0QsRUFBTyx1Q0FLekNFLE9BQU9DLFFBQVFDLEtBQXNCUCxRQUFRLGtCQUM3Q0ssT0FBT0MsUUFBUUUsT0FBc0JSLFFBQVEsb0JBQzdDSyxPQUFPQyxRQUFRRyxnQkFBc0JULFFBQVEsNkJBQzdDSyxPQUFPQyxRQUFRSSxZQUFzQlYsUUFBUSx5QkFDN0NLLE9BQU9DLFFBQVFLLFlBQXNCWCxRQUFRLHlCQUM3Q0ssT0FBT0MsUUFBUU0sb0JBQXNCWixRQUFRLGlDQUM3Q0ssT0FBT0MsUUFBUU8sb0JBQXNCYixRQUFRLGlDQUM3Q0ssT0FBT0MsUUFBUVEsS0FBc0JmLE9BQU9lLEtBQzVDVCxPQUFPQyxRQUFRUyxRQUFzQmhCLE9BQU9nQixRQUM1Q1YsT0FBT0MsUUFBUVUsU0FBc0JqQixPQUFPaUIsU0FDNUNYLE9BQU9DLFFBQVFXLFlBQXNCbEIsT0FBT2tCLFlBQzVDWixPQUFPQyxRQUFRWSxLQUFzQmpCLE9BQU9pQixLQUM1Q2IsT0FBT0MsUUFBUWEsU0FBc0JsQixPQUFPa0IsU0FDNUNkLE9BQU9DLFFBQVFjLGNBQXNCcEIsUUFBUSx1QkFHN0NLLE9BQU9DLFFBQVFlLGVBQWlCckIsUUFBUSw2QkFDeENLLE9BQU9DLFFBQVFnQixZQUFpQnRCLFFBQVEsaUNBQ3hDSyxPQUFPQyxRQUFRaUIsZUFBaUJ2QixRQUFRLGlDQUd4Q0ssT0FBT0MsUUFBUWtCLEtBQWlCdEIsV0FBVyxRQUMzQ0csT0FBT0MsUUFBUW1CLE1BQWlCdkIsV0FBVyxTQUMzQ0csT0FBT0MsUUFBUW9CLFFBQWlCeEIsV0FBVyxXQUMzQ0csT0FBT0MsUUFBUXFCLGVBQWlCekIsV0FBVyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC5qcyJ9", - "\"use strict\";function isNothing(e){return null==e}function isObject(e){return\"object\"==typeof e&&null!==e}function toArray(e){return Array.isArray(e)?e:isNothing(e)?[]:[e]}function extend(e,t){var r,o,n,i;if(t)for(r=0,o=(i=Object.keys(t)).length;ri&&\" \"!==e[u+1],u=o);else if(!isPrintable(a))return STYLE_DOUBLE;d=d&&isPlainSafe(a)}s=s||c&&o-u-1>i&&\" \"!==e[u+1]}return l||s?n>9&&needIndentIndicator(e)?STYLE_DOUBLE:s?STYLE_FOLDED:STYLE_LITERAL:d&&!r(e)?STYLE_PLAIN:STYLE_SINGLE}function writeScalar(e,t,n,i){e.dump=function(){if(0===t.length)return\"''\";if(!e.noCompatMode&&-1!==DEPRECATED_BOOLEANS_SYNTAX.indexOf(t))return\"'\"+t+\"'\";var r=e.indent*Math.max(1,n),o=-1===e.lineWidth?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-r),a=i||e.flowLevel>-1&&n>=e.flowLevel;switch(chooseScalarStyle(t,a,e.indent,o,function(t){return testImplicitResolving(e,t)})){case STYLE_PLAIN:return t;case STYLE_SINGLE:return\"'\"+t.replace(/'/g,\"''\")+\"'\";case STYLE_LITERAL:return\"|\"+blockHeader(t,e.indent)+dropEndingNewline(indentString(t,r));case STYLE_FOLDED:return\">\"+blockHeader(t,e.indent)+dropEndingNewline(indentString(foldString(t,o),r));case STYLE_DOUBLE:return'\"'+escapeString(t,o)+'\"';default:throw new YAMLException(\"impossible error: invalid scalar style\")}}()}function blockHeader(e,t){var n=needIndentIndicator(e)?String(t):\"\",i=\"\\n\"===e[e.length-1];return n+(i&&(\"\\n\"===e[e.length-2]||\"\\n\"===e)?\"+\":i?\"\":\"-\")+\"\\n\"}function dropEndingNewline(e){return\"\\n\"===e[e.length-1]?e.slice(0,-1):e}function foldString(e,t){for(var n,i,r,o=/(\\n+)([^\\n]*)/g,a=(n=-1!==(n=e.indexOf(\"\\n\"))?n:e.length,o.lastIndex=n,foldLine(e.slice(0,n),t)),l=\"\\n\"===e[0]||\" \"===e[0];r=o.exec(e);){var s=r[1],c=r[2];i=\" \"===c[0],a+=s+(l||i||\"\"===c?\"\":\"\\n\")+foldLine(c,t),l=i}return a}function foldLine(e,t){if(\"\"===e||\" \"===e[0])return e;for(var n,i,r=/ [^ ]/g,o=0,a=0,l=0,s=\"\";n=r.exec(e);)(l=n.index)-o>t&&(i=a>o?a:l,s+=\"\\n\"+e.slice(o,i),o=i+1),a=l;return s+=\"\\n\",e.length-o>t&&a>o?s+=e.slice(o,a)+\"\\n\"+e.slice(a+1):s+=e.slice(o),s.slice(1)}function escapeString(e){for(var t,n,i,r=\"\",o=0;o=55296&&t<=56319&&(n=e.charCodeAt(o+1))>=56320&&n<=57343?(r+=encodeHex(1024*(t-55296)+n-56320+65536),o++):r+=!(i=ESCAPE_SEQUENCES[t])&&isPrintable(t)?e[o]:i||encodeHex(t);return r}function writeFlowSequence(e,t,n){var i,r,o=\"\",a=e.tag;for(i=0,r=n.length;i1024&&(l+=\"? \"),l+=e.dump+(e.condenseFlow?'\"':\"\")+\":\"+(e.condenseFlow?\"\":\" \"),writeNode(e,t,a,!1,!1)&&(s+=l+=e.dump));e.tag=c,e.dump=\"{\"+s+\"}\"}function writeBlockMapping(e,t,n,i){var r,o,a,l,s,c,u=\"\",d=e.tag,p=Object.keys(n);if(!0===e.sortKeys)p.sort();else if(\"function\"==typeof e.sortKeys)p.sort(e.sortKeys);else if(e.sortKeys)throw new YAMLException(\"sortKeys must be a boolean or a function\");for(r=0,o=p.length;r1024)&&(e.dump&&CHAR_LINE_FEED===e.dump.charCodeAt(0)?c+=\"?\":c+=\"? \"),c+=e.dump,s&&(c+=generateNextLine(e,t)),writeNode(e,t+1,l,!0,s)&&(e.dump&&CHAR_LINE_FEED===e.dump.charCodeAt(0)?c+=\":\":c+=\": \",u+=c+=e.dump));e.tag=d,e.dump=u||\"{}\"}function detectType(e,t,n){var i,r,o,a,l,s;for(o=0,a=(r=n?e.explicitTypes:e.implicitTypes).length;o tag resolver accepts not \"'+s+'\" style');i=l.represent[s](t,s)}e.dump=i}return!0}return!1}function writeNode(e,t,n,i,r,o){e.tag=null,e.dump=n,detectType(e,n,!1)||detectType(e,n,!0);var a=_toString.call(e.dump);i&&(i=e.flowLevel<0||e.flowLevel>t);var l,s,c=\"[object Object]\"===a||\"[object Array]\"===a;if(c&&(s=-1!==(l=e.duplicates.indexOf(n))),(null!==e.tag&&\"?\"!==e.tag||s||2!==e.indent&&t>0)&&(r=!1),s&&e.usedDuplicates[l])e.dump=\"*ref_\"+l;else{if(c&&s&&!e.usedDuplicates[l]&&(e.usedDuplicates[l]=!0),\"[object Object]\"===a)i&&0!==Object.keys(e.dump).length?(writeBlockMapping(e,t,e.dump,r),s&&(e.dump=\"&ref_\"+l+e.dump)):(writeFlowMapping(e,t,e.dump),s&&(e.dump=\"&ref_\"+l+\" \"+e.dump));else if(\"[object Array]\"===a){var u=e.noArrayIndent?t-1:t;i&&0!==e.dump.length?(writeBlockSequence(e,u,e.dump,r),s&&(e.dump=\"&ref_\"+l+e.dump)):(writeFlowSequence(e,u,e.dump),s&&(e.dump=\"&ref_\"+l+\" \"+e.dump))}else{if(\"[object String]\"!==a){if(e.skipInvalid)return!1;throw new YAMLException(\"unacceptable kind of an object to dump \"+a)}\"?\"!==e.tag&&writeScalar(e,e.dump,t,o)}null!==e.tag&&\"?\"!==e.tag&&(e.dump=\"!<\"+e.tag+\"> \"+e.dump)}return!0}function getDuplicateReferences(e,t){var n,i,r=[],o=[];for(inspectNode(e,r,o),n=0,i=o.length;n>10),56320+(e-65536&1023))}for(var simpleEscapeCheck=new Array(256),simpleEscapeMap=new Array(256),i=0;i<256;i++)simpleEscapeCheck[i]=simpleEscapeSequence(i)?1:0,simpleEscapeMap[i]=simpleEscapeSequence(i);function State(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||DEFAULT_FULL_SCHEMA,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function generateError(e,t){return new YAMLException(t,new Mark(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function throwError(e,t){throw generateError(e,t)}function throwWarning(e,t){e.onWarning&&e.onWarning.call(null,generateError(e,t))}var directiveHandlers={YAML:function(e,t,n){var i,o,r;null!==e.version&&throwError(e,\"duplication of %YAML directive\"),1!==n.length&&throwError(e,\"YAML directive accepts exactly one argument\"),null===(i=/^([0-9]+)\\.([0-9]+)$/.exec(n[0]))&&throwError(e,\"ill-formed argument of the YAML directive\"),o=parseInt(i[1],10),r=parseInt(i[2],10),1!==o&&throwError(e,\"unacceptable YAML version of the document\"),e.version=n[0],e.checkLineBreaks=r<2,1!==r&&2!==r&&throwWarning(e,\"unsupported YAML version of the document\")},TAG:function(e,t,n){var i,o;2!==n.length&&throwError(e,\"TAG directive accepts exactly two arguments\"),i=n[0],o=n[1],PATTERN_TAG_HANDLE.test(i)||throwError(e,\"ill-formed tag handle (first argument) of the TAG directive\"),_hasOwnProperty.call(e.tagMap,i)&&throwError(e,'there is a previously declared suffix for \"'+i+'\" tag handle'),PATTERN_TAG_URI.test(o)||throwError(e,\"ill-formed tag prefix (second argument) of the TAG directive\"),e.tagMap[i]=o}};function captureSegment(e,t,n,i){var o,r,a,s;if(t1&&(e.result+=common.repeat(\"\\n\",t-1))}function readPlainScalar(e,t,n){var i,o,r,a,s,p,c,l,u=e.kind,d=e.result;if(is_WS_OR_EOL(l=e.input.charCodeAt(e.position))||is_FLOW_INDICATOR(l)||35===l||38===l||42===l||33===l||124===l||62===l||39===l||34===l||37===l||64===l||96===l)return!1;if((63===l||45===l)&&(is_WS_OR_EOL(i=e.input.charCodeAt(e.position+1))||n&&is_FLOW_INDICATOR(i)))return!1;for(e.kind=\"scalar\",e.result=\"\",o=r=e.position,a=!1;0!==l;){if(58===l){if(is_WS_OR_EOL(i=e.input.charCodeAt(e.position+1))||n&&is_FLOW_INDICATOR(i))break}else if(35===l){if(is_WS_OR_EOL(e.input.charCodeAt(e.position-1)))break}else{if(e.position===e.lineStart&&testDocumentSeparator(e)||n&&is_FLOW_INDICATOR(l))break;if(is_EOL(l)){if(s=e.line,p=e.lineStart,c=e.lineIndent,skipSeparationSpace(e,!1,-1),e.lineIndent>=t){a=!0,l=e.input.charCodeAt(e.position);continue}e.position=r,e.line=s,e.lineStart=p,e.lineIndent=c;break}}a&&(captureSegment(e,o,r,!1),writeFoldedLines(e,e.line-s),o=r=e.position,a=!1),is_WHITE_SPACE(l)||(r=e.position+1),l=e.input.charCodeAt(++e.position)}return captureSegment(e,o,r,!1),!!e.result||(e.kind=u,e.result=d,!1)}function readSingleQuotedScalar(e,t){var n,i,o;if(39!==(n=e.input.charCodeAt(e.position)))return!1;for(e.kind=\"scalar\",e.result=\"\",e.position++,i=o=e.position;0!==(n=e.input.charCodeAt(e.position));)if(39===n){if(captureSegment(e,i,e.position,!0),39!==(n=e.input.charCodeAt(++e.position)))return!0;i=e.position,e.position++,o=e.position}else is_EOL(n)?(captureSegment(e,i,o,!0),writeFoldedLines(e,skipSeparationSpace(e,!1,t)),i=o=e.position):e.position===e.lineStart&&testDocumentSeparator(e)?throwError(e,\"unexpected end of the document within a single quoted scalar\"):(e.position++,o=e.position);throwError(e,\"unexpected end of the stream within a single quoted scalar\")}function readDoubleQuotedScalar(e,t){var n,i,o,r,a,s;if(34!==(s=e.input.charCodeAt(e.position)))return!1;for(e.kind=\"scalar\",e.result=\"\",e.position++,n=i=e.position;0!==(s=e.input.charCodeAt(e.position));){if(34===s)return captureSegment(e,n,e.position,!0),e.position++,!0;if(92===s){if(captureSegment(e,n,e.position,!0),is_EOL(s=e.input.charCodeAt(++e.position)))skipSeparationSpace(e,!1,t);else if(s<256&&simpleEscapeCheck[s])e.result+=simpleEscapeMap[s],e.position++;else if((a=escapedHexLen(s))>0){for(o=a,r=0;o>0;o--)(a=fromHexCode(s=e.input.charCodeAt(++e.position)))>=0?r=(r<<4)+a:throwError(e,\"expected hexadecimal character\");e.result+=charFromCodepoint(r),e.position++}else throwError(e,\"unknown escape sequence\");n=i=e.position}else is_EOL(s)?(captureSegment(e,n,i,!0),writeFoldedLines(e,skipSeparationSpace(e,!1,t)),n=i=e.position):e.position===e.lineStart&&testDocumentSeparator(e)?throwError(e,\"unexpected end of the document within a double quoted scalar\"):(e.position++,i=e.position)}throwError(e,\"unexpected end of the stream within a double quoted scalar\")}function readFlowCollection(e,t){var n,i,o,r,a,s,p,c,l,u,d=!0,h=e.tag,f=e.anchor,_={};if(91===(u=e.input.charCodeAt(e.position)))o=93,s=!1,i=[];else{if(123!==u)return!1;o=125,s=!0,i={}}for(null!==e.anchor&&(e.anchorMap[e.anchor]=i),u=e.input.charCodeAt(++e.position);0!==u;){if(skipSeparationSpace(e,!0,t),(u=e.input.charCodeAt(e.position))===o)return e.position++,e.tag=h,e.anchor=f,e.kind=s?\"mapping\":\"sequence\",e.result=i,!0;d||throwError(e,\"missed comma between flow collection entries\"),l=null,r=a=!1,63===u&&is_WS_OR_EOL(e.input.charCodeAt(e.position+1))&&(r=a=!0,e.position++,skipSeparationSpace(e,!0,t)),n=e.line,composeNode(e,t,CONTEXT_FLOW_IN,!1,!0),c=e.tag,p=e.result,skipSeparationSpace(e,!0,t),u=e.input.charCodeAt(e.position),!a&&e.line!==n||58!==u||(r=!0,u=e.input.charCodeAt(++e.position),skipSeparationSpace(e,!0,t),composeNode(e,t,CONTEXT_FLOW_IN,!1,!0),l=e.result),s?storeMappingPair(e,i,_,c,p,l):r?i.push(storeMappingPair(e,null,_,c,p,l)):i.push(p),skipSeparationSpace(e,!0,t),44===(u=e.input.charCodeAt(e.position))?(d=!0,u=e.input.charCodeAt(++e.position)):d=!1}throwError(e,\"unexpected end of the stream within a flow collection\")}function readBlockScalar(e,t){var n,i,o,r,a=CHOMPING_CLIP,s=!1,p=!1,c=t,l=0,u=!1;if(124===(r=e.input.charCodeAt(e.position)))i=!1;else{if(62!==r)return!1;i=!0}for(e.kind=\"scalar\",e.result=\"\";0!==r;)if(43===(r=e.input.charCodeAt(++e.position))||45===r)CHOMPING_CLIP===a?a=43===r?CHOMPING_KEEP:CHOMPING_STRIP:throwError(e,\"repeat of a chomping mode identifier\");else{if(!((o=fromDecimalCode(r))>=0))break;0===o?throwError(e,\"bad explicit indentation width of a block scalar; it cannot be less than one\"):p?throwError(e,\"repeat of an indentation width identifier\"):(c=t+o-1,p=!0)}if(is_WHITE_SPACE(r)){do{r=e.input.charCodeAt(++e.position)}while(is_WHITE_SPACE(r));if(35===r)do{r=e.input.charCodeAt(++e.position)}while(!is_EOL(r)&&0!==r)}for(;0!==r;){for(readLineBreak(e),e.lineIndent=0,r=e.input.charCodeAt(e.position);(!p||e.lineIndentc&&(c=e.lineIndent),is_EOL(r))l++;else{if(e.lineIndentt)&&0!==i)throwError(e,\"bad indentation of a sequence entry\");else if(e.lineIndentt)&&(composeNode(e,t,CONTEXT_BLOCK_OUT,!0,o)&&(_?h=e.result:f=e.result),_||(storeMappingPair(e,l,u,d,h,f,r,a),d=h=f=null),skipSeparationSpace(e,!0,-1),s=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==s)throwError(e,\"bad indentation of a mapping entry\");else if(e.lineIndentt?h=1:e.lineIndent===t?h=0:e.lineIndentt?h=1:e.lineIndent===t?h=0:e.lineIndent tag; it should be \"'+l.kind+'\", not \"'+e.kind+'\"'),l.resolve(e.result)?(e.result=l.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):throwError(e,\"cannot resolve a node with !<\"+e.tag+\"> explicit tag\")):throwError(e,\"unknown tag !<\"+e.tag+\">\");return null!==e.listener&&e.listener(\"close\",e),null!==e.tag||null!==e.anchor||_}function readDocument(e){var t,n,i,o,r=e.position,a=!1;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(o=e.input.charCodeAt(e.position))&&(skipSeparationSpace(e,!0,-1),o=e.input.charCodeAt(e.position),!(e.lineIndent>0||37!==o));){for(a=!0,o=e.input.charCodeAt(++e.position),t=e.position;0!==o&&!is_WS_OR_EOL(o);)o=e.input.charCodeAt(++e.position);for(i=[],(n=e.input.slice(t,e.position)).length<1&&throwError(e,\"directive name must not be less than one character in length\");0!==o;){for(;is_WHITE_SPACE(o);)o=e.input.charCodeAt(++e.position);if(35===o){do{o=e.input.charCodeAt(++e.position)}while(0!==o&&!is_EOL(o));break}if(is_EOL(o))break;for(t=e.position;0!==o&&!is_WS_OR_EOL(o);)o=e.input.charCodeAt(++e.position);i.push(e.input.slice(t,e.position))}0!==o&&readLineBreak(e),_hasOwnProperty.call(directiveHandlers,n)?directiveHandlers[n](e,n,i):throwWarning(e,'unknown document directive \"'+n+'\"')}skipSeparationSpace(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,skipSeparationSpace(e,!0,-1)):a&&throwError(e,\"directives end mark is expected\"),composeNode(e,e.lineIndent-1,CONTEXT_BLOCK_OUT,!1,!0),skipSeparationSpace(e,!0,-1),e.checkLineBreaks&&PATTERN_NON_ASCII_LINE_BREAKS.test(e.input.slice(r,e.position))&&throwWarning(e,\"non-ASCII line breaks are interpreted as content\"),e.documents.push(e.result),e.position===e.lineStart&&testDocumentSeparator(e)?46===e.input.charCodeAt(e.position)&&(e.position+=3,skipSeparationSpace(e,!0,-1)):e.position0&&-1===\"\\0\\r\\n…\\u2028\\u2029\".indexOf(this.buffer.charAt(e-1));)if(e-=1,this.position-e>i/2-1){n=\" ... \",e+=5;break}for(r=\"\",o=this.position;oi/2-1){r=\" ... \",o-=5;break}return s=this.buffer.slice(e,o),common.repeat(\" \",t)+n+s+r+\"\\n\"+common.repeat(\" \",t+this.position-e+n.length)+\"^\"},Mark.prototype.toString=function(t){var i,n=\"\";return this.name&&(n+='in \"'+this.name+'\" '),n+=\"at line \"+(this.line+1)+\", column \"+(this.column+1),t||(i=this.getSnippet())&&(n+=\":\\n\"+i),n},module.exports=Mark;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1hcmsuanMiXSwibmFtZXMiOlsiY29tbW9uIiwicmVxdWlyZSIsIk1hcmsiLCJuYW1lIiwiYnVmZmVyIiwicG9zaXRpb24iLCJsaW5lIiwiY29sdW1uIiwidGhpcyIsInByb3RvdHlwZSIsImdldFNuaXBwZXQiLCJpbmRlbnQiLCJtYXhMZW5ndGgiLCJoZWFkIiwic3RhcnQiLCJ0YWlsIiwiZW5kIiwic25pcHBldCIsImluZGV4T2YiLCJjaGFyQXQiLCJsZW5ndGgiLCJzbGljZSIsInJlcGVhdCIsInRvU3RyaW5nIiwiY29tcGFjdCIsIndoZXJlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsYUFHQSxJQUFJQSxPQUFTQyxRQUFRLFlBR3JCLFNBQVNDLEtBQUtDLEVBQU1DLEVBQVFDLEVBQVVDLEVBQU1DLEdBQzFDQyxLQUFLTCxLQUFXQSxFQUNoQkssS0FBS0osT0FBV0EsRUFDaEJJLEtBQUtILFNBQVdBLEVBQ2hCRyxLQUFLRixLQUFXQSxFQUNoQkUsS0FBS0QsT0FBV0EsRUFJbEJMLEtBQUtPLFVBQVVDLFdBQWEsU0FBb0JDLEVBQVFDLEdBQ3RELElBQUlDLEVBQU1DLEVBQU9DLEVBQU1DLEVBQUtDLEVBRTVCLElBQUtULEtBQUtKLE9BQVEsT0FBTyxLQVF6QixJQU5BTyxFQUFTQSxHQUFVLEVBQ25CQyxFQUFZQSxHQUFhLEdBRXpCQyxFQUFPLEdBQ1BDLEVBQVFOLEtBQUtILFNBRU5TLEVBQVEsSUFBNEUsSUFBdkUsc0JBQTJCSSxRQUFRVixLQUFLSixPQUFPZSxPQUFPTCxFQUFRLEtBRWhGLEdBREFBLEdBQVMsRUFDTE4sS0FBS0gsU0FBV1MsRUFBU0YsRUFBWSxFQUFJLEVBQUksQ0FDL0NDLEVBQU8sUUFDUEMsR0FBUyxFQUNULE1BT0osSUFIQUMsRUFBTyxHQUNQQyxFQUFNUixLQUFLSCxTQUVKVyxFQUFNUixLQUFLSixPQUFPZ0IsU0FBMkUsSUFBakUsc0JBQTJCRixRQUFRVixLQUFLSixPQUFPZSxPQUFPSCxLQUV2RixJQURBQSxHQUFPLEdBQ0dSLEtBQUtILFNBQVlPLEVBQVksRUFBSSxFQUFJLENBQzdDRyxFQUFPLFFBQ1BDLEdBQU8sRUFDUCxNQU1KLE9BRkFDLEVBQVVULEtBQUtKLE9BQU9pQixNQUFNUCxFQUFPRSxHQUU1QmhCLE9BQU9zQixPQUFPLElBQUtYLEdBQVVFLEVBQU9JLEVBQVVGLEVBQU8sS0FDckRmLE9BQU9zQixPQUFPLElBQUtYLEVBQVNILEtBQUtILFNBQVdTLEVBQVFELEVBQUtPLFFBQVUsS0FJNUVsQixLQUFLTyxVQUFVYyxTQUFXLFNBQWtCQyxHQUMxQyxJQUFJUCxFQUFTUSxFQUFRLEdBZ0JyQixPQWRJakIsS0FBS0wsT0FDUHNCLEdBQVMsT0FBU2pCLEtBQUtMLEtBQU8sTUFHaENzQixHQUFTLFlBQWNqQixLQUFLRixLQUFPLEdBQUssYUFBZUUsS0FBS0QsT0FBUyxHQUVoRWlCLElBQ0hQLEVBQVVULEtBQUtFLGdCQUdiZSxHQUFTLE1BQVFSLEdBSWRRLEdBSVRDLE9BQU9DLFFBQVV6QiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC9tYXJrLmpzIn0=", - "\"use strict\";var common=require(\"./common\"),YAMLException=require(\"./exception\"),Type=require(\"./type\");function compileList(i,e,t){var c=[];return i.include.forEach(function(i){t=compileList(i,e,t)}),i[e].forEach(function(i){t.forEach(function(e,t){e.tag===i.tag&&e.kind===i.kind&&c.push(t)}),t.push(i)}),t.filter(function(i,e){return-1===c.indexOf(e)})}function compileMap(){var i,e,t={scalar:{},sequence:{},mapping:{},fallback:{}};function c(i){t[i.kind][i.tag]=t.fallback[i.tag]=i}for(i=0,e=arguments.length;i64)){if(e<0)return!1;u+=6}return u%8==0}function constructYamlBinary(r){var e,n,u=r.replace(/[\\r\\n=]/g,\"\"),f=u.length,t=BASE64_MAP,a=0,i=[];for(e=0;e>16&255),i.push(a>>8&255),i.push(255&a)),a=a<<6|t.indexOf(u.charAt(e));return 0===(n=f%4*6)?(i.push(a>>16&255),i.push(a>>8&255),i.push(255&a)):18===n?(i.push(a>>10&255),i.push(a>>2&255)):12===n&&i.push(a>>4&255),NodeBuffer?NodeBuffer.from?NodeBuffer.from(i):new NodeBuffer(i):i}function representYamlBinary(r){var e,n,u=\"\",f=0,t=r.length,a=BASE64_MAP;for(e=0;e>18&63],u+=a[f>>12&63],u+=a[f>>6&63],u+=a[63&f]),f=(f<<8)+r[e];return 0===(n=t%3)?(u+=a[f>>18&63],u+=a[f>>12&63],u+=a[f>>6&63],u+=a[63&f]):2===n?(u+=a[f>>10&63],u+=a[f>>4&63],u+=a[f<<2&63],u+=a[64]):1===n&&(u+=a[f>>2&63],u+=a[f<<4&63],u+=a[64],u+=a[64]),u}function isBinary(r){return NodeBuffer&&NodeBuffer.isBuffer(r)}module.exports=new Type(\"tag:yaml.org,2002:binary\",{kind:\"scalar\",resolve:resolveYamlBinary,construct:constructYamlBinary,predicate:isBinary,represent:representYamlBinary});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJpbmFyeS5qcyJdLCJuYW1lcyI6WyJOb2RlQnVmZmVyIiwiX3JlcXVpcmUiLCJyZXF1aXJlIiwiQnVmZmVyIiwiX18iLCJUeXBlIiwiQkFTRTY0X01BUCIsInJlc29sdmVZYW1sQmluYXJ5IiwiZGF0YSIsImNvZGUiLCJpZHgiLCJiaXRsZW4iLCJtYXgiLCJsZW5ndGgiLCJtYXAiLCJpbmRleE9mIiwiY2hhckF0IiwiY29uc3RydWN0WWFtbEJpbmFyeSIsInRhaWxiaXRzIiwiaW5wdXQiLCJyZXBsYWNlIiwiYml0cyIsInJlc3VsdCIsInB1c2giLCJmcm9tIiwicmVwcmVzZW50WWFtbEJpbmFyeSIsIm9iamVjdCIsInRhaWwiLCJpc0JpbmFyeSIsImlzQnVmZmVyIiwibW9kdWxlIiwiZXhwb3J0cyIsImtpbmQiLCJyZXNvbHZlIiwiY29uc3RydWN0IiwicHJlZGljYXRlIiwicmVwcmVzZW50Il0sIm1hcHBpbmdzIjoiQUFBQSxhQUlBLElBQUlBLFdBRUosSUFFRSxJQUFJQyxTQUFXQyxRQUNmRixXQUFhQyxTQUFTLFVBQVVFLE9BQ2hDLE1BQU9DLElBRVQsSUFBSUMsS0FBYUgsUUFBUSxXQUlyQkksV0FBYSx3RUFHakIsU0FBU0Msa0JBQWtCQyxHQUN6QixHQUFhLE9BQVRBLEVBQWUsT0FBTyxFQUUxQixJQUFJQyxFQUFNQyxFQUFLQyxFQUFTLEVBQUdDLEVBQU1KLEVBQUtLLE9BQVFDLEVBQU1SLFdBR3BELElBQUtJLEVBQU0sRUFBR0EsRUFBTUUsRUFBS0YsSUFJdkIsTUFIQUQsRUFBT0ssRUFBSUMsUUFBUVAsRUFBS1EsT0FBT04sS0FHcEIsSUFBWCxDQUdBLEdBQUlELEVBQU8sRUFBRyxPQUFPLEVBRXJCRSxHQUFVLEVBSVosT0FBUUEsRUFBUyxHQUFPLEVBRzFCLFNBQVNNLG9CQUFvQlQsR0FDM0IsSUFBSUUsRUFBS1EsRUFDTEMsRUFBUVgsRUFBS1ksUUFBUSxXQUFZLElBQ2pDUixFQUFNTyxFQUFNTixPQUNaQyxFQUFNUixXQUNOZSxFQUFPLEVBQ1BDLEVBQVMsR0FJYixJQUFLWixFQUFNLEVBQUdBLEVBQU1FLEVBQUtGLElBQ2xCQSxFQUFNLEdBQU0sR0FBTUEsSUFDckJZLEVBQU9DLEtBQU1GLEdBQVEsR0FBTSxLQUMzQkMsRUFBT0MsS0FBTUYsR0FBUSxFQUFLLEtBQzFCQyxFQUFPQyxLQUFZLElBQVBGLElBR2RBLEVBQVFBLEdBQVEsRUFBS1AsRUFBSUMsUUFBUUksRUFBTUgsT0FBT04sSUFtQmhELE9BWmlCLEtBRmpCUSxFQUFZTixFQUFNLEVBQUssSUFHckJVLEVBQU9DLEtBQU1GLEdBQVEsR0FBTSxLQUMzQkMsRUFBT0MsS0FBTUYsR0FBUSxFQUFLLEtBQzFCQyxFQUFPQyxLQUFZLElBQVBGLElBQ1UsS0FBYkgsR0FDVEksRUFBT0MsS0FBTUYsR0FBUSxHQUFNLEtBQzNCQyxFQUFPQyxLQUFNRixHQUFRLEVBQUssTUFDSixLQUFiSCxHQUNUSSxFQUFPQyxLQUFNRixHQUFRLEVBQUssS0FJeEJyQixXQUVLQSxXQUFXd0IsS0FBT3hCLFdBQVd3QixLQUFLRixHQUFVLElBQUl0QixXQUFXc0IsR0FHN0RBLEVBR1QsU0FBU0csb0JBQW9CQyxHQUMzQixJQUEyQmhCLEVBQUtpQixFQUE1QkwsRUFBUyxHQUFJRCxFQUFPLEVBQ3BCVCxFQUFNYyxFQUFPYixPQUNiQyxFQUFNUixXQUlWLElBQUtJLEVBQU0sRUFBR0EsRUFBTUUsRUFBS0YsSUFDbEJBLEVBQU0sR0FBTSxHQUFNQSxJQUNyQlksR0FBVVIsRUFBS08sR0FBUSxHQUFNLElBQzdCQyxHQUFVUixFQUFLTyxHQUFRLEdBQU0sSUFDN0JDLEdBQVVSLEVBQUtPLEdBQVEsRUFBSyxJQUM1QkMsR0FBVVIsRUFBVyxHQUFQTyxJQUdoQkEsR0FBUUEsR0FBUSxHQUFLSyxFQUFPaEIsR0F3QjlCLE9BakJhLEtBRmJpQixFQUFPZixFQUFNLElBR1hVLEdBQVVSLEVBQUtPLEdBQVEsR0FBTSxJQUM3QkMsR0FBVVIsRUFBS08sR0FBUSxHQUFNLElBQzdCQyxHQUFVUixFQUFLTyxHQUFRLEVBQUssSUFDNUJDLEdBQVVSLEVBQVcsR0FBUE8sSUFDSSxJQUFUTSxHQUNUTCxHQUFVUixFQUFLTyxHQUFRLEdBQU0sSUFDN0JDLEdBQVVSLEVBQUtPLEdBQVEsRUFBSyxJQUM1QkMsR0FBVVIsRUFBS08sR0FBUSxFQUFLLElBQzVCQyxHQUFVUixFQUFJLEtBQ0ksSUFBVGEsSUFDVEwsR0FBVVIsRUFBS08sR0FBUSxFQUFLLElBQzVCQyxHQUFVUixFQUFLTyxHQUFRLEVBQUssSUFDNUJDLEdBQVVSLEVBQUksSUFDZFEsR0FBVVIsRUFBSSxLQUdUUSxFQUdULFNBQVNNLFNBQVNGLEdBQ2hCLE9BQU8xQixZQUFjQSxXQUFXNkIsU0FBU0gsR0FHM0NJLE9BQU9DLFFBQVUsSUFBSTFCLEtBQUssMkJBQTRCLENBQ3BEMkIsS0FBTSxTQUNOQyxRQUFTMUIsa0JBQ1QyQixVQUFXakIsb0JBQ1hrQixVQUFXUCxTQUNYUSxVQUFXWCIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL2JpbmFyeS5qcyJ9", - "\"use strict\";var Type=require(\"../type\");function resolveYamlBoolean(e){if(null===e)return!1;var r=e.length;return 4===r&&(\"true\"===e||\"True\"===e||\"TRUE\"===e)||5===r&&(\"false\"===e||\"False\"===e||\"FALSE\"===e)}function constructYamlBoolean(e){return\"true\"===e||\"True\"===e||\"TRUE\"===e}function isBoolean(e){return\"[object Boolean]\"===Object.prototype.toString.call(e)}module.exports=new Type(\"tag:yaml.org,2002:bool\",{kind:\"scalar\",resolve:resolveYamlBoolean,construct:constructYamlBoolean,predicate:isBoolean,represent:{lowercase:function(e){return e?\"true\":\"false\"},uppercase:function(e){return e?\"TRUE\":\"FALSE\"},camelcase:function(e){return e?\"True\":\"False\"}},defaultStyle:\"lowercase\"});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJvb2wuanMiXSwibmFtZXMiOlsiVHlwZSIsInJlcXVpcmUiLCJyZXNvbHZlWWFtbEJvb2xlYW4iLCJkYXRhIiwibWF4IiwibGVuZ3RoIiwiY29uc3RydWN0WWFtbEJvb2xlYW4iLCJpc0Jvb2xlYW4iLCJvYmplY3QiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImNhbGwiLCJtb2R1bGUiLCJleHBvcnRzIiwia2luZCIsInJlc29sdmUiLCJjb25zdHJ1Y3QiLCJwcmVkaWNhdGUiLCJyZXByZXNlbnQiLCJsb3dlcmNhc2UiLCJ1cHBlcmNhc2UiLCJjYW1lbGNhc2UiLCJkZWZhdWx0U3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBLGFBRUEsSUFBSUEsS0FBT0MsUUFBUSxXQUVuQixTQUFTQyxtQkFBbUJDLEdBQzFCLEdBQWEsT0FBVEEsRUFBZSxPQUFPLEVBRTFCLElBQUlDLEVBQU1ELEVBQUtFLE9BRWYsT0FBZ0IsSUFBUkQsSUFBdUIsU0FBVEQsR0FBNEIsU0FBVEEsR0FBNEIsU0FBVEEsSUFDNUMsSUFBUkMsSUFBdUIsVUFBVEQsR0FBNkIsVUFBVEEsR0FBNkIsVUFBVEEsR0FHaEUsU0FBU0cscUJBQXFCSCxHQUM1QixNQUFnQixTQUFUQSxHQUNTLFNBQVRBLEdBQ1MsU0FBVEEsRUFHVCxTQUFTSSxVQUFVQyxHQUNqQixNQUFrRCxxQkFBM0NDLE9BQU9DLFVBQVVDLFNBQVNDLEtBQUtKLEdBR3hDSyxPQUFPQyxRQUFVLElBQUlkLEtBQUsseUJBQTBCLENBQ2xEZSxLQUFNLFNBQ05DLFFBQVNkLG1CQUNUZSxVQUFXWCxxQkFDWFksVUFBV1gsVUFDWFksVUFBVyxDQUNUQyxVQUFXLFNBQVVaLEdBQVUsT0FBT0EsRUFBUyxPQUFTLFNBQ3hEYSxVQUFXLFNBQVViLEdBQVUsT0FBT0EsRUFBUyxPQUFTLFNBQ3hEYyxVQUFXLFNBQVVkLEdBQVUsT0FBT0EsRUFBUyxPQUFTLFVBRTFEZSxhQUFjIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9qcy15YW1sL2xpYi9qcy15YW1sL3R5cGUvYm9vbC5qcyJ9", - "\"use strict\";var common=require(\"../common\"),Type=require(\"../type\"),YAML_FLOAT_PATTERN=new RegExp(\"^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))$\");function resolveYamlFloat(e){return null!==e&&!(!YAML_FLOAT_PATTERN.test(e)||\"_\"===e[e.length-1])}function constructYamlFloat(e){var r,t,a,n;return t=\"-\"===(r=e.replace(/_/g,\"\").toLowerCase())[0]?-1:1,n=[],\"+-\".indexOf(r[0])>=0&&(r=r.slice(1)),\".inf\"===r?1===t?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:\".nan\"===r?NaN:r.indexOf(\":\")>=0?(r.split(\":\").forEach(function(e){n.unshift(parseFloat(e,10))}),r=0,a=1,n.forEach(function(e){r+=e*a,a*=60}),t*r):t*parseFloat(r,10)}var SCIENTIFIC_WITHOUT_DOT=/^[-+]?[0-9]+e/;function representYamlFloat(e,r){var t;if(isNaN(e))switch(r){case\"lowercase\":return\".nan\";case\"uppercase\":return\".NAN\";case\"camelcase\":return\".NaN\"}else if(Number.POSITIVE_INFINITY===e)switch(r){case\"lowercase\":return\".inf\";case\"uppercase\":return\".INF\";case\"camelcase\":return\".Inf\"}else if(Number.NEGATIVE_INFINITY===e)switch(r){case\"lowercase\":return\"-.inf\";case\"uppercase\":return\"-.INF\";case\"camelcase\":return\"-.Inf\"}else if(common.isNegativeZero(e))return\"-0.0\";return t=e.toString(10),SCIENTIFIC_WITHOUT_DOT.test(t)?t.replace(\"e\",\".e\"):t}function isFloat(e){return\"[object Number]\"===Object.prototype.toString.call(e)&&(e%1!=0||common.isNegativeZero(e))}module.exports=new Type(\"tag:yaml.org,2002:float\",{kind:\"scalar\",resolve:resolveYamlFloat,construct:constructYamlFloat,predicate:isFloat,represent:representYamlFloat,defaultStyle:\"lowercase\"});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZsb2F0LmpzIl0sIm5hbWVzIjpbImNvbW1vbiIsInJlcXVpcmUiLCJUeXBlIiwiWUFNTF9GTE9BVF9QQVRURVJOIiwiUmVnRXhwIiwicmVzb2x2ZVlhbWxGbG9hdCIsImRhdGEiLCJ0ZXN0IiwibGVuZ3RoIiwiY29uc3RydWN0WWFtbEZsb2F0IiwidmFsdWUiLCJzaWduIiwiYmFzZSIsImRpZ2l0cyIsInJlcGxhY2UiLCJ0b0xvd2VyQ2FzZSIsImluZGV4T2YiLCJzbGljZSIsIk51bWJlciIsIlBPU0lUSVZFX0lORklOSVRZIiwiTkVHQVRJVkVfSU5GSU5JVFkiLCJOYU4iLCJzcGxpdCIsImZvckVhY2giLCJ2IiwidW5zaGlmdCIsInBhcnNlRmxvYXQiLCJkIiwiU0NJRU5USUZJQ19XSVRIT1VUX0RPVCIsInJlcHJlc2VudFlhbWxGbG9hdCIsIm9iamVjdCIsInN0eWxlIiwicmVzIiwiaXNOYU4iLCJpc05lZ2F0aXZlWmVybyIsInRvU3RyaW5nIiwiaXNGbG9hdCIsIk9iamVjdCIsInByb3RvdHlwZSIsImNhbGwiLCJtb2R1bGUiLCJleHBvcnRzIiwia2luZCIsInJlc29sdmUiLCJjb25zdHJ1Y3QiLCJwcmVkaWNhdGUiLCJyZXByZXNlbnQiLCJkZWZhdWx0U3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBLGFBRUEsSUFBSUEsT0FBU0MsUUFBUSxhQUNqQkMsS0FBU0QsUUFBUSxXQUVqQkUsbUJBQXFCLElBQUlDLE9BRTNCLDJMQVdGLFNBQVNDLGlCQUFpQkMsR0FDeEIsT0FBYSxPQUFUQSxNQUVDSCxtQkFBbUJJLEtBQUtELElBR0MsTUFBMUJBLEVBQUtBLEVBQUtFLE9BQVMsSUFPekIsU0FBU0MsbUJBQW1CSCxHQUMxQixJQUFJSSxFQUFPQyxFQUFNQyxFQUFNQyxFQVV2QixPQVBBRixFQUFzQixPQUR0QkQsRUFBU0osRUFBS1EsUUFBUSxLQUFNLElBQUlDLGVBQ2pCLElBQWMsRUFBSSxFQUNqQ0YsRUFBUyxHQUVMLEtBQUtHLFFBQVFOLEVBQU0sS0FBTyxJQUM1QkEsRUFBUUEsRUFBTU8sTUFBTSxJQUdSLFNBQVZQLEVBQ2UsSUFBVEMsRUFBY08sT0FBT0Msa0JBQW9CRCxPQUFPRSxrQkFFckMsU0FBVlYsRUFDRlcsSUFFRVgsRUFBTU0sUUFBUSxNQUFRLEdBQy9CTixFQUFNWSxNQUFNLEtBQUtDLFFBQVEsU0FBVUMsR0FDakNYLEVBQU9ZLFFBQVFDLFdBQVdGLEVBQUcsT0FHL0JkLEVBQVEsRUFDUkUsRUFBTyxFQUVQQyxFQUFPVSxRQUFRLFNBQVVJLEdBQ3ZCakIsR0FBU2lCLEVBQUlmLEVBQ2JBLEdBQVEsS0FHSEQsRUFBT0QsR0FHVEMsRUFBT2UsV0FBV2hCLEVBQU8sSUFJbEMsSUFBSWtCLHVCQUF5QixnQkFFN0IsU0FBU0MsbUJBQW1CQyxFQUFRQyxHQUNsQyxJQUFJQyxFQUVKLEdBQUlDLE1BQU1ILEdBQ1IsT0FBUUMsR0FDTixJQUFLLFlBQWEsTUFBTyxPQUN6QixJQUFLLFlBQWEsTUFBTyxPQUN6QixJQUFLLFlBQWEsTUFBTyxZQUV0QixHQUFJYixPQUFPQyxvQkFBc0JXLEVBQ3RDLE9BQVFDLEdBQ04sSUFBSyxZQUFhLE1BQU8sT0FDekIsSUFBSyxZQUFhLE1BQU8sT0FDekIsSUFBSyxZQUFhLE1BQU8sWUFFdEIsR0FBSWIsT0FBT0Usb0JBQXNCVSxFQUN0QyxPQUFRQyxHQUNOLElBQUssWUFBYSxNQUFPLFFBQ3pCLElBQUssWUFBYSxNQUFPLFFBQ3pCLElBQUssWUFBYSxNQUFPLGFBRXRCLEdBQUkvQixPQUFPa0MsZUFBZUosR0FDL0IsTUFBTyxPQVFULE9BTEFFLEVBQU1GLEVBQU9LLFNBQVMsSUFLZlAsdUJBQXVCckIsS0FBS3lCLEdBQU9BLEVBQUlsQixRQUFRLElBQUssTUFBUWtCLEVBR3JFLFNBQVNJLFFBQVFOLEdBQ2YsTUFBbUQsb0JBQTNDTyxPQUFPQyxVQUFVSCxTQUFTSSxLQUFLVCxLQUMvQkEsRUFBUyxHQUFNLEdBQUs5QixPQUFPa0MsZUFBZUosSUFHcERVLE9BQU9DLFFBQVUsSUFBSXZDLEtBQUssMEJBQTJCLENBQ25Ed0MsS0FBTSxTQUNOQyxRQUFTdEMsaUJBQ1R1QyxVQUFXbkMsbUJBQ1hvQyxVQUFXVCxRQUNYVSxVQUFXakIsbUJBQ1hrQixhQUFjIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9qcy15YW1sL2xpYi9qcy15YW1sL3R5cGUvZmxvYXQuanMifQ==", - "\"use strict\";var common=require(\"../common\"),Type=require(\"../type\");function isHexCode(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function isOctCode(e){return 48<=e&&e<=55}function isDecCode(e){return 48<=e&&e<=57}function resolveYamlInteger(e){if(null===e)return!1;var r,t=e.length,n=0,i=!1;if(!t)return!1;if(\"-\"!==(r=e[n])&&\"+\"!==r||(r=e[++n]),\"0\"===r){if(n+1===t)return!0;if(\"b\"===(r=e[++n])){for(n++;n=0?\"0b\"+e.toString(2):\"-0b\"+e.toString(2).slice(1)},octal:function(e){return e>=0?\"0\"+e.toString(8):\"-0\"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?\"0x\"+e.toString(16).toUpperCase():\"-0x\"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:\"decimal\",styleAliases:{binary:[2,\"bin\"],octal:[8,\"oct\"],decimal:[10,\"dec\"],hexadecimal:[16,\"hex\"]}});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImludC5qcyJdLCJuYW1lcyI6WyJjb21tb24iLCJyZXF1aXJlIiwiVHlwZSIsImlzSGV4Q29kZSIsImMiLCJpc09jdENvZGUiLCJpc0RlY0NvZGUiLCJyZXNvbHZlWWFtbEludGVnZXIiLCJkYXRhIiwiY2giLCJtYXgiLCJsZW5ndGgiLCJpbmRleCIsImhhc0RpZ2l0cyIsImNoYXJDb2RlQXQiLCJ0ZXN0Iiwic2xpY2UiLCJjb25zdHJ1Y3RZYW1sSW50ZWdlciIsImJhc2UiLCJ2YWx1ZSIsInNpZ24iLCJkaWdpdHMiLCJpbmRleE9mIiwicmVwbGFjZSIsInBhcnNlSW50Iiwic3BsaXQiLCJmb3JFYWNoIiwidiIsInVuc2hpZnQiLCJkIiwiaXNJbnRlZ2VyIiwib2JqZWN0IiwiT2JqZWN0IiwicHJvdG90eXBlIiwidG9TdHJpbmciLCJjYWxsIiwiaXNOZWdhdGl2ZVplcm8iLCJtb2R1bGUiLCJleHBvcnRzIiwia2luZCIsInJlc29sdmUiLCJjb25zdHJ1Y3QiLCJwcmVkaWNhdGUiLCJyZXByZXNlbnQiLCJiaW5hcnkiLCJvYmoiLCJvY3RhbCIsImRlY2ltYWwiLCJoZXhhZGVjaW1hbCIsInRvVXBwZXJDYXNlIiwiZGVmYXVsdFN0eWxlIiwic3R5bGVBbGlhc2VzIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUVBLElBQUlBLE9BQVNDLFFBQVEsYUFDakJDLEtBQVNELFFBQVEsV0FFckIsU0FBU0UsVUFBVUMsR0FDakIsT0FBUyxJQUFlQSxHQUFPQSxHQUFLLElBQzNCLElBQWVBLEdBQU9BLEdBQUssSUFDM0IsSUFBZUEsR0FBT0EsR0FBSyxJQUd0QyxTQUFTQyxVQUFVRCxHQUNqQixPQUFTLElBQWVBLEdBQU9BLEdBQUssR0FHdEMsU0FBU0UsVUFBVUYsR0FDakIsT0FBUyxJQUFlQSxHQUFPQSxHQUFLLEdBR3RDLFNBQVNHLG1CQUFtQkMsR0FDMUIsR0FBYSxPQUFUQSxFQUFlLE9BQU8sRUFFMUIsSUFHSUMsRUFIQUMsRUFBTUYsRUFBS0csT0FDWEMsRUFBUSxFQUNSQyxHQUFZLEVBR2hCLElBQUtILEVBQUssT0FBTyxFQVNqQixHQUpXLE9BSFhELEVBQUtELEVBQUtJLEtBR2UsTUFBUEgsSUFDaEJBLEVBQUtELElBQU9JLElBR0gsTUFBUEgsRUFBWSxDQUVkLEdBQUlHLEVBQVEsSUFBTUYsRUFBSyxPQUFPLEVBSzlCLEdBQVcsT0FKWEQsRUFBS0QsSUFBT0ksSUFJSSxDQUlkLElBRkFBLElBRU9BLEVBQVFGLEVBQUtFLElBRWxCLEdBQVcsT0FEWEgsRUFBS0QsRUFBS0ksSUFDVixDQUNBLEdBQVcsTUFBUEgsR0FBcUIsTUFBUEEsRUFBWSxPQUFPLEVBQ3JDSSxHQUFZLEVBRWQsT0FBT0EsR0FBb0IsTUFBUEosRUFJdEIsR0FBVyxNQUFQQSxFQUFZLENBSWQsSUFGQUcsSUFFT0EsRUFBUUYsRUFBS0UsSUFFbEIsR0FBVyxPQURYSCxFQUFLRCxFQUFLSSxJQUNWLENBQ0EsSUFBS1QsVUFBVUssRUFBS00sV0FBV0YsSUFBUyxPQUFPLEVBQy9DQyxHQUFZLEVBRWQsT0FBT0EsR0FBb0IsTUFBUEosRUFJdEIsS0FBT0csRUFBUUYsRUFBS0UsSUFFbEIsR0FBVyxPQURYSCxFQUFLRCxFQUFLSSxJQUNWLENBQ0EsSUFBS1AsVUFBVUcsRUFBS00sV0FBV0YsSUFBUyxPQUFPLEVBQy9DQyxHQUFZLEVBRWQsT0FBT0EsR0FBb0IsTUFBUEosRUFNdEIsR0FBVyxNQUFQQSxFQUFZLE9BQU8sRUFFdkIsS0FBT0csRUFBUUYsRUFBS0UsSUFFbEIsR0FBVyxPQURYSCxFQUFLRCxFQUFLSSxJQUNWLENBQ0EsR0FBVyxNQUFQSCxFQUFZLE1BQ2hCLElBQUtILFVBQVVFLEVBQUtNLFdBQVdGLElBQzdCLE9BQU8sRUFFVEMsR0FBWSxFQUlkLFNBQUtBLEdBQW9CLE1BQVBKLEtBR1AsTUFBUEEsR0FHRyxvQkFBb0JNLEtBQUtQLEVBQUtRLE1BQU1KLEtBRzdDLFNBQVNLLHFCQUFxQlQsR0FDNUIsSUFBNEJDLEVBQUlTLEVBQTVCQyxFQUFRWCxFQUFNWSxFQUFPLEVBQWFDLEVBQVMsR0FjL0MsT0FaNEIsSUFBeEJGLEVBQU1HLFFBQVEsT0FDaEJILEVBQVFBLEVBQU1JLFFBQVEsS0FBTSxLQUtuQixPQUZYZCxFQUFLVSxFQUFNLEtBRWMsTUFBUFYsSUFDTCxNQUFQQSxJQUFZVyxHQUFRLEdBRXhCWCxHQURBVSxFQUFRQSxFQUFNSCxNQUFNLElBQ1QsSUFHQyxNQUFWRyxFQUFzQixFQUVmLE1BQVBWLEVBQ2UsTUFBYlUsRUFBTSxHQUFtQkMsRUFBT0ksU0FBU0wsRUFBTUgsTUFBTSxHQUFJLEdBQzVDLE1BQWJHLEVBQU0sR0FBbUJDLEVBQU9JLFNBQVNMLEVBQU8sSUFDN0NDLEVBQU9JLFNBQVNMLEVBQU8sSUFHSixJQUF4QkEsRUFBTUcsUUFBUSxNQUNoQkgsRUFBTU0sTUFBTSxLQUFLQyxRQUFRLFNBQVVDLEdBQ2pDTixFQUFPTyxRQUFRSixTQUFTRyxFQUFHLE9BRzdCUixFQUFRLEVBQ1JELEVBQU8sRUFFUEcsRUFBT0ssUUFBUSxTQUFVRyxHQUN2QlYsR0FBVVUsRUFBSVgsRUFDZEEsR0FBUSxLQUdIRSxFQUFPRCxHQUlUQyxFQUFPSSxTQUFTTCxFQUFPLElBR2hDLFNBQVNXLFVBQVVDLEdBQ2pCLE1BQW9ELG9CQUE1Q0MsT0FBT0MsVUFBVUMsU0FBU0MsS0FBS0osSUFDL0JBLEVBQVMsR0FBTSxJQUFNL0IsT0FBT29DLGVBQWVMLEdBR3JETSxPQUFPQyxRQUFVLElBQUlwQyxLQUFLLHdCQUF5QixDQUNqRHFDLEtBQU0sU0FDTkMsUUFBU2pDLG1CQUNUa0MsVUFBV3hCLHFCQUNYeUIsVUFBV1osVUFDWGEsVUFBVyxDQUNUQyxPQUFhLFNBQVVDLEdBQU8sT0FBT0EsR0FBTyxFQUFJLEtBQU9BLEVBQUlYLFNBQVMsR0FBSyxNQUFRVyxFQUFJWCxTQUFTLEdBQUdsQixNQUFNLElBQ3ZHOEIsTUFBYSxTQUFVRCxHQUFPLE9BQU9BLEdBQU8sRUFBSSxJQUFPQSxFQUFJWCxTQUFTLEdBQUssS0FBUVcsRUFBSVgsU0FBUyxHQUFHbEIsTUFBTSxJQUN2RytCLFFBQWEsU0FBVUYsR0FBTyxPQUFPQSxFQUFJWCxTQUFTLEtBRWxEYyxZQUFhLFNBQVVILEdBQU8sT0FBT0EsR0FBTyxFQUFJLEtBQU9BLEVBQUlYLFNBQVMsSUFBSWUsY0FBaUIsTUFBUUosRUFBSVgsU0FBUyxJQUFJZSxjQUFjakMsTUFBTSxLQUV4SWtDLGFBQWMsVUFDZEMsYUFBYyxDQUNaUCxPQUFhLENBQUUsRUFBSSxPQUNuQkUsTUFBYSxDQUFFLEVBQUksT0FDbkJDLFFBQWEsQ0FBRSxHQUFJLE9BQ25CQyxZQUFhLENBQUUsR0FBSSIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL2ludC5qcyJ9", - "\"use strict\";var esprima;try{var _require=require;esprima=_require(\"esprima\")}catch(e){\"undefined\"!=typeof window&&(esprima=window.esprima)}var Type=require(\"../../type\");function resolveJavascriptFunction(e){if(null===e)return!1;try{var r=\"(\"+e+\")\",n=esprima.parse(r,{range:!0});return\"Program\"===n.type&&1===n.body.length&&\"ExpressionStatement\"===n.body[0].type&&(\"ArrowFunctionExpression\"===n.body[0].expression.type||\"FunctionExpression\"===n.body[0].expression.type)}catch(e){return!1}}function constructJavascriptFunction(e){var r,n=\"(\"+e+\")\",t=esprima.parse(n,{range:!0}),o=[];if(\"Program\"!==t.type||1!==t.body.length||\"ExpressionStatement\"!==t.body[0].type||\"ArrowFunctionExpression\"!==t.body[0].expression.type&&\"FunctionExpression\"!==t.body[0].expression.type)throw new Error(\"Failed to resolve function\");return t.body[0].expression.params.forEach(function(e){o.push(e.name)}),r=t.body[0].expression.body.range,\"BlockStatement\"===t.body[0].expression.body.type?new Function(o,n.slice(r[0]+1,r[1]-1)):new Function(o,\"return \"+n.slice(r[0],r[1]))}function representJavascriptFunction(e){return e.toString()}function isFunction(e){return\"[object Function]\"===Object.prototype.toString.call(e)}module.exports=new Type(\"tag:yaml.org,2002:js/function\",{kind:\"scalar\",resolve:resolveJavascriptFunction,construct:constructJavascriptFunction,predicate:isFunction,represent:representJavascriptFunction});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZ1bmN0aW9uLmpzIl0sIm5hbWVzIjpbImVzcHJpbWEiLCJfcmVxdWlyZSIsInJlcXVpcmUiLCJfIiwid2luZG93IiwiVHlwZSIsInJlc29sdmVKYXZhc2NyaXB0RnVuY3Rpb24iLCJkYXRhIiwic291cmNlIiwiYXN0IiwicGFyc2UiLCJyYW5nZSIsInR5cGUiLCJib2R5IiwibGVuZ3RoIiwiZXhwcmVzc2lvbiIsImVyciIsImNvbnN0cnVjdEphdmFzY3JpcHRGdW5jdGlvbiIsInBhcmFtcyIsIkVycm9yIiwiZm9yRWFjaCIsInBhcmFtIiwicHVzaCIsIm5hbWUiLCJGdW5jdGlvbiIsInNsaWNlIiwicmVwcmVzZW50SmF2YXNjcmlwdEZ1bmN0aW9uIiwib2JqZWN0IiwidG9TdHJpbmciLCJpc0Z1bmN0aW9uIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiY2FsbCIsIm1vZHVsZSIsImV4cG9ydHMiLCJraW5kIiwicmVzb2x2ZSIsImNvbnN0cnVjdCIsInByZWRpY2F0ZSIsInJlcHJlc2VudCJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxRQVNKLElBRUUsSUFBSUMsU0FBV0MsUUFDZkYsUUFBVUMsU0FBUyxXQUNuQixNQUFPRSxHQUVlLG9CQUFYQyxTQUF3QkosUUFBVUksT0FBT0osU0FHdEQsSUFBSUssS0FBT0gsUUFBUSxjQUVuQixTQUFTSSwwQkFBMEJDLEdBQ2pDLEdBQWEsT0FBVEEsRUFBZSxPQUFPLEVBRTFCLElBQ0UsSUFBSUMsRUFBUyxJQUFNRCxFQUFPLElBQ3RCRSxFQUFTVCxRQUFRVSxNQUFNRixFQUFRLENBQUVHLE9BQU8sSUFFNUMsTUFBb0MsWUFBaENGLEVBQUlHLE1BQzRCLElBQWhDSCxFQUFJSSxLQUFLQyxRQUN1Qix3QkFBaENMLEVBQUlJLEtBQUssR0FBR0QsT0FDcUIsNEJBQWhDSCxFQUFJSSxLQUFLLEdBQUdFLFdBQVdILE1BQ1UsdUJBQWhDSCxFQUFJSSxLQUFLLEdBQUdFLFdBQVdILE1BSzdCLE1BQU9JLEdBQ1AsT0FBTyxHQUlYLFNBQVNDLDRCQUE0QlYsR0FHbkMsSUFHSU0sRUFIQUwsRUFBUyxJQUFNRCxFQUFPLElBQ3RCRSxFQUFTVCxRQUFRVSxNQUFNRixFQUFRLENBQUVHLE9BQU8sSUFDeENPLEVBQVMsR0FHYixHQUFvQyxZQUFoQ1QsRUFBSUcsTUFDNEIsSUFBaENILEVBQUlJLEtBQUtDLFFBQ3VCLHdCQUFoQ0wsRUFBSUksS0FBSyxHQUFHRCxNQUNxQiw0QkFBaENILEVBQUlJLEtBQUssR0FBR0UsV0FBV0gsTUFDVSx1QkFBaENILEVBQUlJLEtBQUssR0FBR0UsV0FBV0gsS0FDM0IsTUFBTSxJQUFJTyxNQUFNLDhCQVdsQixPQVJBVixFQUFJSSxLQUFLLEdBQUdFLFdBQVdHLE9BQU9FLFFBQVEsU0FBVUMsR0FDOUNILEVBQU9JLEtBQUtELEVBQU1FLFFBR3BCVixFQUFPSixFQUFJSSxLQUFLLEdBQUdFLFdBQVdGLEtBQUtGLE1BSU0sbUJBQXJDRixFQUFJSSxLQUFLLEdBQUdFLFdBQVdGLEtBQUtELEtBRXZCLElBQUlZLFNBQVNOLEVBQVFWLEVBQU9pQixNQUFNWixFQUFLLEdBQUssRUFBR0EsRUFBSyxHQUFLLElBSzNELElBQUlXLFNBQVNOLEVBQVEsVUFBWVYsRUFBT2lCLE1BQU1aLEVBQUssR0FBSUEsRUFBSyxLQUdyRSxTQUFTYSw0QkFBNEJDLEdBQ25DLE9BQU9BLEVBQU9DLFdBR2hCLFNBQVNDLFdBQVdGLEdBQ2xCLE1BQWtELHNCQUEzQ0csT0FBT0MsVUFBVUgsU0FBU0ksS0FBS0wsR0FHeENNLE9BQU9DLFFBQVUsSUFBSTdCLEtBQUssZ0NBQWlDLENBQ3pEOEIsS0FBTSxTQUNOQyxRQUFTOUIsMEJBQ1QrQixVQUFXcEIsNEJBQ1hxQixVQUFXVCxXQUNYVSxVQUFXYiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL2pzL2Z1bmN0aW9uLmpzIn0=", - "\"use strict\";var Type=require(\"../../type\");function resolveJavascriptRegExp(e){if(null===e)return!1;if(0===e.length)return!1;var r=e,t=/\\/([gim]*)$/.exec(e),n=\"\";if(\"/\"===r[0]){if(t&&(n=t[1]),n.length>3)return!1;if(\"/\"!==r[r.length-n.length-1])return!1}return!0}function constructJavascriptRegExp(e){var r=e,t=/\\/([gim]*)$/.exec(e),n=\"\";return\"/\"===r[0]&&(t&&(n=t[1]),r=r.slice(1,r.length-n.length-1)),new RegExp(r,n)}function representJavascriptRegExp(e){var r=\"/\"+e.source+\"/\";return e.global&&(r+=\"g\"),e.multiline&&(r+=\"m\"),e.ignoreCase&&(r+=\"i\"),r}function isRegExp(e){return\"[object RegExp]\"===Object.prototype.toString.call(e)}module.exports=new Type(\"tag:yaml.org,2002:js/regexp\",{kind:\"scalar\",resolve:resolveJavascriptRegExp,construct:constructJavascriptRegExp,predicate:isRegExp,represent:representJavascriptRegExp});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlZ2V4cC5qcyJdLCJuYW1lcyI6WyJUeXBlIiwicmVxdWlyZSIsInJlc29sdmVKYXZhc2NyaXB0UmVnRXhwIiwiZGF0YSIsImxlbmd0aCIsInJlZ2V4cCIsInRhaWwiLCJleGVjIiwibW9kaWZpZXJzIiwiY29uc3RydWN0SmF2YXNjcmlwdFJlZ0V4cCIsInNsaWNlIiwiUmVnRXhwIiwicmVwcmVzZW50SmF2YXNjcmlwdFJlZ0V4cCIsIm9iamVjdCIsInJlc3VsdCIsInNvdXJjZSIsImdsb2JhbCIsIm11bHRpbGluZSIsImlnbm9yZUNhc2UiLCJpc1JlZ0V4cCIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsIm1vZHVsZSIsImV4cG9ydHMiLCJraW5kIiwicmVzb2x2ZSIsImNvbnN0cnVjdCIsInByZWRpY2F0ZSIsInJlcHJlc2VudCJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxLQUFPQyxRQUFRLGNBRW5CLFNBQVNDLHdCQUF3QkMsR0FDL0IsR0FBYSxPQUFUQSxFQUFlLE9BQU8sRUFDMUIsR0FBb0IsSUFBaEJBLEVBQUtDLE9BQWMsT0FBTyxFQUU5QixJQUFJQyxFQUFTRixFQUNURyxFQUFTLGNBQWNDLEtBQUtKLEdBQzVCSyxFQUFZLEdBSWhCLEdBQWtCLE1BQWRILEVBQU8sR0FBWSxDQUdyQixHQUZJQyxJQUFNRSxFQUFZRixFQUFLLElBRXZCRSxFQUFVSixPQUFTLEVBQUcsT0FBTyxFQUVqQyxHQUFxRCxNQUFqREMsRUFBT0EsRUFBT0QsT0FBU0ksRUFBVUosT0FBUyxHQUFZLE9BQU8sRUFHbkUsT0FBTyxFQUdULFNBQVNLLDBCQUEwQk4sR0FDakMsSUFBSUUsRUFBU0YsRUFDVEcsRUFBUyxjQUFjQyxLQUFLSixHQUM1QkssRUFBWSxHQVFoQixNQUxrQixNQUFkSCxFQUFPLEtBQ0xDLElBQU1FLEVBQVlGLEVBQUssSUFDM0JELEVBQVNBLEVBQU9LLE1BQU0sRUFBR0wsRUFBT0QsT0FBU0ksRUFBVUosT0FBUyxJQUd2RCxJQUFJTyxPQUFPTixFQUFRRyxHQUc1QixTQUFTSSwwQkFBMEJDLEdBQ2pDLElBQUlDLEVBQVMsSUFBTUQsRUFBT0UsT0FBUyxJQU1uQyxPQUpJRixFQUFPRyxTQUFRRixHQUFVLEtBQ3pCRCxFQUFPSSxZQUFXSCxHQUFVLEtBQzVCRCxFQUFPSyxhQUFZSixHQUFVLEtBRTFCQSxFQUdULFNBQVNLLFNBQVNOLEdBQ2hCLE1BQWtELG9CQUEzQ08sT0FBT0MsVUFBVUMsU0FBU0MsS0FBS1YsR0FHeENXLE9BQU9DLFFBQVUsSUFBSXpCLEtBQUssOEJBQStCLENBQ3ZEMEIsS0FBTSxTQUNOQyxRQUFTekIsd0JBQ1QwQixVQUFXbkIsMEJBQ1hvQixVQUFXVixTQUNYVyxVQUFXbEIiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL2pzLXlhbWwvbGliL2pzLXlhbWwvdHlwZS9qcy9yZWdleHAuanMifQ==", - "\"use strict\";var Type=require(\"../../type\");function resolveJavascriptUndefined(){return!0}function constructJavascriptUndefined(){}function representJavascriptUndefined(){return\"\"}function isUndefined(e){return void 0===e}module.exports=new Type(\"tag:yaml.org,2002:js/undefined\",{kind:\"scalar\",resolve:resolveJavascriptUndefined,construct:constructJavascriptUndefined,predicate:isUndefined,represent:representJavascriptUndefined});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuZGVmaW5lZC5qcyJdLCJuYW1lcyI6WyJUeXBlIiwicmVxdWlyZSIsInJlc29sdmVKYXZhc2NyaXB0VW5kZWZpbmVkIiwiY29uc3RydWN0SmF2YXNjcmlwdFVuZGVmaW5lZCIsInJlcHJlc2VudEphdmFzY3JpcHRVbmRlZmluZWQiLCJpc1VuZGVmaW5lZCIsIm9iamVjdCIsIm1vZHVsZSIsImV4cG9ydHMiLCJraW5kIiwicmVzb2x2ZSIsImNvbnN0cnVjdCIsInByZWRpY2F0ZSIsInJlcHJlc2VudCJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxLQUFPQyxRQUFRLGNBRW5CLFNBQVNDLDZCQUNQLE9BQU8sRUFHVCxTQUFTQyxnQ0FLVCxTQUFTQywrQkFDUCxNQUFPLEdBR1QsU0FBU0MsWUFBWUMsR0FDbkIsWUFBeUIsSUFBWEEsRUFHaEJDLE9BQU9DLFFBQVUsSUFBSVIsS0FBSyxpQ0FBa0MsQ0FDMURTLEtBQU0sU0FDTkMsUUFBU1IsMkJBQ1RTLFVBQVdSLDZCQUNYUyxVQUFXUCxZQUNYUSxVQUFXVCIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL2pzL3VuZGVmaW5lZC5qcyJ9", - "\"use strict\";var Type=require(\"../type\");module.exports=new Type(\"tag:yaml.org,2002:map\",{kind:\"mapping\",construct:function(e){return null!==e?e:{}}});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1hcC5qcyJdLCJuYW1lcyI6WyJUeXBlIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJraW5kIiwiY29uc3RydWN0IiwiZGF0YSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxLQUFPQyxRQUFRLFdBRW5CQyxPQUFPQyxRQUFVLElBQUlILEtBQUssd0JBQXlCLENBQ2pESSxLQUFNLFVBQ05DLFVBQVcsU0FBVUMsR0FBUSxPQUFnQixPQUFUQSxFQUFnQkEsRUFBTyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL21hcC5qcyJ9", - "\"use strict\";var Type=require(\"../type\");function resolveYamlMerge(e){return\"<<\"===e||null===e}module.exports=new Type(\"tag:yaml.org,2002:merge\",{kind:\"scalar\",resolve:resolveYamlMerge});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1lcmdlLmpzIl0sIm5hbWVzIjpbIlR5cGUiLCJyZXF1aXJlIiwicmVzb2x2ZVlhbWxNZXJnZSIsImRhdGEiLCJtb2R1bGUiLCJleHBvcnRzIiwia2luZCIsInJlc29sdmUiXSwibWFwcGluZ3MiOiJBQUFBLGFBRUEsSUFBSUEsS0FBT0MsUUFBUSxXQUVuQixTQUFTQyxpQkFBaUJDLEdBQ3hCLE1BQWdCLE9BQVRBLEdBQTBCLE9BQVRBLEVBRzFCQyxPQUFPQyxRQUFVLElBQUlMLEtBQUssMEJBQTJCLENBQ25ETSxLQUFNLFNBQ05DLFFBQVNMIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9qcy15YW1sL2xpYi9qcy15YW1sL3R5cGUvbWVyZ2UuanMifQ==", - "\"use strict\";var Type=require(\"../type\");function resolveYamlNull(l){if(null===l)return!0;var e=l.length;return 1===e&&\"~\"===l||4===e&&(\"null\"===l||\"Null\"===l||\"NULL\"===l)}function constructYamlNull(){return null}function isNull(l){return null===l}module.exports=new Type(\"tag:yaml.org,2002:null\",{kind:\"scalar\",resolve:resolveYamlNull,construct:constructYamlNull,predicate:isNull,represent:{canonical:function(){return\"~\"},lowercase:function(){return\"null\"},uppercase:function(){return\"NULL\"},camelcase:function(){return\"Null\"}},defaultStyle:\"lowercase\"});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm51bGwuanMiXSwibmFtZXMiOlsiVHlwZSIsInJlcXVpcmUiLCJyZXNvbHZlWWFtbE51bGwiLCJkYXRhIiwibWF4IiwibGVuZ3RoIiwiY29uc3RydWN0WWFtbE51bGwiLCJpc051bGwiLCJvYmplY3QiLCJtb2R1bGUiLCJleHBvcnRzIiwia2luZCIsInJlc29sdmUiLCJjb25zdHJ1Y3QiLCJwcmVkaWNhdGUiLCJyZXByZXNlbnQiLCJjYW5vbmljYWwiLCJsb3dlcmNhc2UiLCJ1cHBlcmNhc2UiLCJjYW1lbGNhc2UiLCJkZWZhdWx0U3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBLGFBRUEsSUFBSUEsS0FBT0MsUUFBUSxXQUVuQixTQUFTQyxnQkFBZ0JDLEdBQ3ZCLEdBQWEsT0FBVEEsRUFBZSxPQUFPLEVBRTFCLElBQUlDLEVBQU1ELEVBQUtFLE9BRWYsT0FBZ0IsSUFBUkQsR0FBc0IsTUFBVEQsR0FDTCxJQUFSQyxJQUF1QixTQUFURCxHQUE0QixTQUFUQSxHQUE0QixTQUFUQSxHQUc5RCxTQUFTRyxvQkFDUCxPQUFPLEtBR1QsU0FBU0MsT0FBT0MsR0FDZCxPQUFrQixPQUFYQSxFQUdUQyxPQUFPQyxRQUFVLElBQUlWLEtBQUsseUJBQTBCLENBQ2xEVyxLQUFNLFNBQ05DLFFBQVNWLGdCQUNUVyxVQUFXUCxrQkFDWFEsVUFBV1AsT0FDWFEsVUFBVyxDQUNUQyxVQUFXLFdBQWMsTUFBTyxLQUNoQ0MsVUFBVyxXQUFjLE1BQU8sUUFDaENDLFVBQVcsV0FBYyxNQUFPLFFBQ2hDQyxVQUFXLFdBQWMsTUFBTyxTQUVsQ0MsYUFBYyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvanMteWFtbC9saWIvanMteWFtbC90eXBlL251bGwuanMifQ==", - "\"use strict\";var Type=require(\"../type\"),_hasOwnProperty=Object.prototype.hasOwnProperty,_toString=Object.prototype.toString;function resolveYamlOmap(r){if(null===r)return!0;var t,e,n,o,u,a=[],l=r;for(t=0,e=l.length;t0&&(c=module.exports.formatter.apply(null,a)),r&&r.message&&(c+=(c?\" \\n\":\"\")+r.message);var i=new e(c);return extendError(i,r),extendToJSON(i),extend(i,t),i}}function extendError(e,r){extendStack(e,r),extend(e,r)}function extendToJSON(e){e.toJSON=errorToJSON,e.inspect=errorToString}function extend(e,r){if(r&&\"object\"==typeof r)for(var t=Object.keys(r),o=0;o=0))try{e[n]=r[n]}catch(e){}}}function errorToJSON(){var e={},r=Object.keys(this);r=r.concat(errorPrototypeProperties);for(var t=0;t=0)return r.splice(t,1),r.join(\"\\n\")}return e}}module.exports=create(Error),module.exports.error=create(Error),module.exports.eval=create(EvalError),module.exports.range=create(RangeError),module.exports.reference=create(ReferenceError),module.exports.syntax=create(SyntaxError),module.exports.type=create(TypeError),module.exports.uri=create(URIError),module.exports.formatter=format;var supportsLazyStack=!(!Object.getOwnPropertyDescriptor||!Object.defineProperty||\"undefined\"!=typeof navigator&&/Android/.test(navigator.userAgent));function hasLazyStack(e){if(!supportsLazyStack)return!1;var r=Object.getOwnPropertyDescriptor(e,\"stack\");return!!r&&\"function\"==typeof r.get}function lazyJoinStacks(e,r){var t=Object.getOwnPropertyDescriptor(e,\"stack\");Object.defineProperty(e,\"stack\",{get:function(){return joinStacks(t.get.apply(e),r.stack)},enumerable:!1,configurable:!0})}function lazyPopStack(e){var r=Object.getOwnPropertyDescriptor(e,\"stack\");Object.defineProperty(e,\"stack\",{get:function(){return popStack(r.get.apply(e))},enumerable:!1,configurable:!0})}\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm9uby5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJyZXF1aXJlIiwic2xpY2UiLCJBcnJheSIsInByb3RvdHlwZSIsInByb3RlY3RlZFByb3BlcnRpZXMiLCJlcnJvclByb3RvdHlwZVByb3BlcnRpZXMiLCJjcmVhdGUiLCJLbGFzcyIsImVyciIsInByb3BzIiwibWVzc2FnZSIsInBhcmFtcyIsImZvcm1hdEFyZ3MiLCJmb3JtYXR0ZWRNZXNzYWdlIiwiY2FsbCIsImFyZ3VtZW50cyIsInVuZGVmaW5lZCIsImxlbmd0aCIsIm1vZHVsZSIsImV4cG9ydHMiLCJmb3JtYXR0ZXIiLCJhcHBseSIsIm5ld0Vycm9yIiwiZXh0ZW5kRXJyb3IiLCJleHRlbmRUb0pTT04iLCJleHRlbmQiLCJ0YXJnZXRFcnJvciIsInNvdXJjZUVycm9yIiwiZXh0ZW5kU3RhY2siLCJlcnJvciIsInRvSlNPTiIsImVycm9yVG9KU09OIiwiaW5zcGVjdCIsImVycm9yVG9TdHJpbmciLCJ0YXJnZXQiLCJzb3VyY2UiLCJrZXlzIiwiT2JqZWN0IiwiaSIsImtleSIsImluZGV4T2YiLCJlIiwianNvbiIsInRoaXMiLCJjb25jYXQiLCJ2YWx1ZSIsInR5cGUiLCJKU09OIiwic3RyaW5naWZ5IiwicmVwbGFjZSIsImhhc0xhenlTdGFjayIsImxhenlKb2luU3RhY2tzIiwibGF6eVBvcFN0YWNrIiwic3RhY2siLCJqb2luU3RhY2tzIiwicG9wU3RhY2siLCJuZXdTdGFjayIsIm9yaWdpbmFsU3RhY2siLCJsaW5lcyIsInNwbGl0Iiwic3BsaWNlIiwiam9pbiIsIkVycm9yIiwiZXZhbCIsIkV2YWxFcnJvciIsInJhbmdlIiwiUmFuZ2VFcnJvciIsInJlZmVyZW5jZSIsIlJlZmVyZW5jZUVycm9yIiwic3ludGF4IiwiU3ludGF4RXJyb3IiLCJUeXBlRXJyb3IiLCJ1cmkiLCJVUklFcnJvciIsInN1cHBvcnRzTGF6eVN0YWNrIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZGVmaW5lUHJvcGVydHkiLCJuYXZpZ2F0b3IiLCJ0ZXN0IiwidXNlckFnZW50IiwiZGVzY3JpcHRvciIsImdldCIsInRhcmdldFN0YWNrIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxPQUFTQyxRQUFRLGVBQ2pCQyxNQUFRQyxNQUFNQyxVQUFVRixNQUN4Qkcsb0JBQXNCLENBQUMsT0FBUSxVQUFXLFNBQzFDQyx5QkFBMkIsQ0FDN0IsT0FBUSxVQUFXLGNBQWUsU0FBVSxPQUFRLFdBQVksYUFBYyxlQUM5RSxZQUFhLE9BQVEsU0FBVSxTQW1CakMsU0FBU0MsT0FBUUMsR0FRZixPQUFPLFNBQXFCQyxFQUFLQyxFQUFPQyxFQUFTQyxHQUMvQyxJQUFJQyxFQUFhLEdBQ2JDLEVBQW1CLEdBR0osaUJBQVJMLEdBQ1RJLEVBQWFYLE1BQU1hLEtBQUtDLFdBQ3hCUCxFQUFNQyxPQUFRTyxHQUVVLGlCQUFWUCxHQUNkRyxFQUFhWCxNQUFNYSxLQUFLQyxVQUFXLEdBQ25DTixPQUFRTyxHQUVrQixpQkFBWk4sSUFDZEUsRUFBYVgsTUFBTWEsS0FBS0MsVUFBVyxJQUlqQ0gsRUFBV0ssT0FBUyxJQUN0QkosRUFBbUJLLE9BQU9DLFFBQVFDLFVBQVVDLE1BQU0sS0FBTVQsSUFHdERKLEdBQU9BLEVBQUlFLFVBRWJHLElBQXFCQSxFQUFtQixNQUFRLElBQU1MLEVBQUlFLFNBSzVELElBQUlZLEVBQVcsSUFBSWYsRUFBTU0sR0FPekIsT0FKQVUsWUFBWUQsRUFBVWQsR0FDdEJnQixhQUFhRixHQUNiRyxPQUFPSCxFQUFVYixHQUVWYSxHQVVYLFNBQVNDLFlBQWFHLEVBQWFDLEdBQ2pDQyxZQUFZRixFQUFhQyxHQUN6QkYsT0FBT0MsRUFBYUMsR0FRdEIsU0FBU0gsYUFBY0ssR0FDckJBLEVBQU1DLE9BQVNDLFlBR2ZGLEVBQU1HLFFBQVVDLGNBU2xCLFNBQVNSLE9BQVFTLEVBQVFDLEdBQ3ZCLEdBQUlBLEdBQTRCLGlCQUFYQSxFQUVuQixJQURBLElBQUlDLEVBQU9DLE9BQU9E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", - "\"use strict\";function nextTick(e,n,c,r){if(\"function\"!=typeof e)throw new TypeError('\"callback\" argument must be a function');var s,t,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick(function(){e.call(null,n)});case 3:return process.nextTick(function(){e.call(null,n,c)});case 4:return process.nextTick(function(){e.call(null,n,c,r)});default:for(s=new Array(o-1),t=0;t1)for(var r=1;r0&&p>s&&(p=s);for(var y=0;y=0?(u=f.substr(0,v),c=f.substr(v+1)):(u=f,c=\"\"),i=decodeURIComponent(u),l=decodeURIComponent(c),hasOwnProperty(o,i)?isArray(o[i])?o[i].push(l):o[i]=[o[i],l]:o[i]=l}return o};var isArray=Array.isArray||function(r){return\"[object Array]\"===Object.prototype.toString.call(r)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlY29kZS5qcyJdLCJuYW1lcyI6WyJoYXNPd25Qcm9wZXJ0eSIsIm9iaiIsInByb3AiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJjYWxsIiwibW9kdWxlIiwiZXhwb3J0cyIsInFzIiwic2VwIiwiZXEiLCJvcHRpb25zIiwibGVuZ3RoIiwicmVnZXhwIiwic3BsaXQiLCJtYXhLZXlzIiwibGVuIiwiaSIsImtzdHIiLCJ2c3RyIiwiayIsInYiLCJ4IiwicmVwbGFjZSIsImlkeCIsImluZGV4T2YiLCJzdWJzdHIiLCJkZWNvZGVVUklDb21wb25lbnQiLCJpc0FycmF5IiwicHVzaCIsIkFycmF5IiwieHMiLCJ0b1N0cmluZyJdLCJtYXBwaW5ncyI6IkFBcUJBLGFBS0EsU0FBU0EsZUFBZUMsRUFBS0MsR0FDM0IsT0FBT0MsT0FBT0MsVUFBVUosZUFBZUssS0FBS0osRUFBS0MsR0FHbkRJLE9BQU9DLFFBQVUsU0FBU0MsRUFBSUMsRUFBS0MsRUFBSUMsR0FDckNGLEVBQU1BLEdBQU8sSUFDYkMsRUFBS0EsR0FBTSxJQUNYLElBQUlULEVBQU0sR0FFVixHQUFrQixpQkFBUE8sR0FBaUMsSUFBZEEsRUFBR0ksT0FDL0IsT0FBT1gsRUFHVCxJQUFJWSxFQUFTLE1BQ2JMLEVBQUtBLEVBQUdNLE1BQU1MLEdBRWQsSUFBSU0sRUFBVSxJQUNWSixHQUFzQyxpQkFBcEJBLEVBQVFJLFVBQzVCQSxFQUFVSixFQUFRSSxTQUdwQixJQUFJQyxFQUFNUixFQUFHSSxPQUVURyxFQUFVLEdBQUtDLEVBQU1ELElBQ3ZCQyxFQUFNRCxHQUdSLElBQUssSUFBSUUsRUFBSSxFQUFHQSxFQUFJRCxJQUFPQyxFQUFHLENBQzVCLElBRUlDLEVBQU1DLEVBQU1DLEVBQUdDLEVBRmZDLEVBQUlkLEVBQUdTLEdBQUdNLFFBQVFWLEVBQVEsT0FDMUJXLEVBQU1GLEVBQUVHLFFBQVFmLEdBR2hCYyxHQUFPLEdBQ1ROLEVBQU9JLEVBQUVJLE9BQU8sRUFBR0YsR0FDbkJMLEVBQU9HLEVBQUVJLE9BQU9GLEVBQU0sS0FFdEJOLEVBQU9JLEVBQ1BILEVBQU8sSUFHVEMsRUFBSU8sbUJBQW1CVCxHQUN2QkcsRUFBSU0sbUJBQW1CUixHQUVsQm5CLGVBQWVDLEVBQUttQixHQUVkUSxRQUFRM0IsRUFBSW1CLElBQ3JCbkIsRUFBSW1CLEdBQUdTLEtBQUtSLEdBRVpwQixFQUFJbUIsR0FBSyxDQUFDbkIsRUFBSW1CLEdBQUlDLEdBSmxCcEIsRUFBSW1CLEdBQUtDLEVBUWIsT0FBT3BCLEdBR1QsSUFBSTJCLFFBQVVFLE1BQU1GLFNBQVcsU0FBVUcsR0FDdkMsTUFBOEMsbUJBQXZDNUIsT0FBT0MsVUFBVTRCLFNBQVMzQixLQUFLMEIiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL3F1ZXJ5c3RyaW5nLWVzMy9kZWNvZGUuanMifQ==", - "\"use strict\";var stringifyPrimitive=function(r){switch(typeof r){case\"string\":return r;case\"boolean\":return r?\"true\":\"false\";case\"number\":return isFinite(r)?r:\"\";default:return\"\"}};module.exports=function(r,e,t,n){return e=e||\"&\",t=t||\"=\",null===r&&(r=void 0),\"object\"==typeof r?map(objectKeys(r),function(n){var i=encodeURIComponent(stringifyPrimitive(n))+t;return isArray(r[n])?map(r[n],function(r){return i+encodeURIComponent(stringifyPrimitive(r))}).join(e):i+encodeURIComponent(stringifyPrimitive(r[n]))}).join(e):n?encodeURIComponent(stringifyPrimitive(n))+t+encodeURIComponent(stringifyPrimitive(r)):\"\"};var isArray=Array.isArray||function(r){return\"[object Array]\"===Object.prototype.toString.call(r)};function map(r,e){if(r.map)return r.map(e);for(var t=[],n=0;n0?(\"string\"==typeof t||d.objectMode||Object.getPrototypeOf(t)===Buffer.prototype||(t=_uint8ArrayToBuffer(t)),n?d.endEmitted?e.emit(\"error\",new Error(\"stream.unshift() after end event\")):addChunk(e,d,t,!0):d.ended?e.emit(\"error\",new Error(\"stream.push() after EOF\")):(d.reading=!1,d.decoder&&!r?(t=d.decoder.write(t),d.objectMode||0!==t.length?addChunk(e,d,t,!1):maybeReadMore(e,d)):addChunk(e,d,t,!1))):n||(d.reading=!1));return needMoreData(d)}function addChunk(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit(\"data\",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&emitReadable(e)),maybeReadMore(e,t)}function chunkInvalid(e,t){var r;return _isUint8Array(t)||\"string\"==typeof t||void 0===t||e.objectMode||(r=new TypeError(\"Invalid non-string/buffer chunk\")),r}function needMoreData(e){return!e.ended&&(e.needReadable||e.length=MAX_HWM?e=MAX_HWM:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function howMuchToRead(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=computeNewHighWaterMark(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function onEofChunk(e,t){if(!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,emitReadable(e)}}function emitReadable(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(debug(\"emitReadable\",t.flowing),t.emittedReadable=!0,t.sync?pna.nextTick(emitReadable_,e):emitReadable_(e))}function emitReadable_(e){debug(\"emit readable\"),e.emit(\"readable\"),flow(e)}function maybeReadMore(e,t){t.readingMore||(t.readingMore=!0,pna.nextTick(maybeReadMore_,e,t))}function maybeReadMore_(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(\"\"):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=fromListPartial(e,t.buffer,t.decoder),r);var r}function fromListPartial(e,t,r){var n;return ei.length?i.length:e;if(d===i.length?a+=i:a+=i.slice(0,e),0===(e-=d)){d===i.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(d));break}++n}return t.length-=n,a}function copyFromBuffer(e,t){var r=Buffer.allocUnsafe(e),n=t.head,a=1;for(n.data.copy(r),e-=n.data.length;n=n.next;){var i=n.data,d=e>i.length?i.length:e;if(i.copy(r,r.length-e,0,d),0===(e-=d)){d===i.length?(++a,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(d));break}++a}return t.length-=a,r}function endReadable(e){var t=e._readableState;if(t.length>0)throw new Error('\"endReadable()\" called on non-empty stream');t.endEmitted||(t.ended=!0,pna.nextTick(endReadableNT,t,e))}function endReadableNT(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit(\"end\"))}function indexOf(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return debug(\"read: emitReadable\",t.length,t.ended),0===t.length&&t.ended?endReadable(this):emitReadable(this),null;if(0===(e=howMuchToRead(e,t))&&t.ended)return 0===t.length&&endReadable(this),null;var n,a=t.needReadable;return debug(\"need readable\",a),(0===t.length||t.length-e0?fromList(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&endReadable(this)),null!==n&&this.emit(\"data\",n),n},Readable.prototype._read=function(e){this.emit(\"error\",new Error(\"_read() is not implemented\"))},Readable.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,debug(\"pipe count=%d opts=%j\",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?d:b;function i(t,a){debug(\"onunpipe\"),t===r&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,debug(\"cleanup\"),e.removeListener(\"close\",f),e.removeListener(\"finish\",p),e.removeListener(\"drain\",o),e.removeListener(\"error\",h),e.removeListener(\"unpipe\",i),r.removeListener(\"end\",d),r.removeListener(\"end\",b),r.removeListener(\"data\",s),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||o())}function d(){debug(\"onend\"),e.end()}n.endEmitted?pna.nextTick(a):r.once(\"end\",a),e.on(\"unpipe\",i);var o=pipeOnDrain(r);e.on(\"drain\",o);var u=!1;var l=!1;function s(t){debug(\"ondata\"),l=!1,!1!==e.write(t)||l||((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==indexOf(n.pipes,e))&&!u&&(debug(\"false write response, pause\",r._readableState.awaitDrain),r._readableState.awaitDrain++,l=!0),r.pause())}function h(t){debug(\"onerror\",t),b(),e.removeListener(\"error\",h),0===EElistenerCount(e,\"error\")&&e.emit(\"error\",t)}function f(){e.removeListener(\"finish\",p),b()}function p(){debug(\"onfinish\"),e.removeListener(\"close\",f),b()}function b(){debug(\"unpipe\"),r.unpipe(e)}return r.on(\"data\",s),prependListener(e,\"error\",h),e.once(\"close\",f),e.once(\"finish\",p),e.emit(\"pipe\",r),n.flowing||(debug(\"pipe resume\"),r.resume()),e},Readable.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit(\"unpipe\",this,r),this);if(!e){var n=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i-1?setImmediate:pna.nextTick;Writable.WritableState=WritableState;var util=require(\"core-util-is\");util.inherits=require(\"inherits\");var internalUtil={deprecate:require(\"util-deprecate\")},Stream=require(\"./internal/streams/stream\"),Buffer=require(\"safe-buffer\").Buffer,OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(e){return Buffer.from(e)}function _isUint8Array(e){return Buffer.isBuffer(e)||e instanceof OurUint8Array}var realHasInstance,destroyImpl=require(\"./internal/streams/destroy\");function nop(){}function WritableState(e,t){Duplex=Duplex||require(\"./_stream_duplex\"),e=e||{};var r=t instanceof Duplex;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,n=e.writableHighWaterMark,o=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(n||0===n)?n:o,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=!1===e.decodeStrings;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||\"utf8\",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){onwrite(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new CorkedRequest(this)}function Writable(e){if(Duplex=Duplex||require(\"./_stream_duplex\"),!(realHasInstance.call(Writable,this)||this instanceof Duplex))return new Writable(e);this._writableState=new WritableState(e,this),this.writable=!0,e&&(\"function\"==typeof e.write&&(this._write=e.write),\"function\"==typeof e.writev&&(this._writev=e.writev),\"function\"==typeof e.destroy&&(this._destroy=e.destroy),\"function\"==typeof e.final&&(this._final=e.final)),Stream.call(this)}function writeAfterEnd(e,t){var r=new Error(\"write after end\");e.emit(\"error\",r),pna.nextTick(t,r)}function validChunk(e,t,r,i){var n=!0,o=!1;return null===r?o=new TypeError(\"May not write null values to stream\"):\"string\"==typeof r||void 0===r||t.objectMode||(o=new TypeError(\"Invalid non-string/buffer chunk\")),o&&(e.emit(\"error\",o),pna.nextTick(i,o),n=!1),n}function decodeChunk(e,t,r){return e.objectMode||!1===e.decodeStrings||\"string\"!=typeof t||(t=Buffer.from(t,r)),t}function writeOrBuffer(e,t,r,i,n,o){if(!r){var a=decodeChunk(t,i,n);i!==a&&(r=!0,n=\"buffer\",i=a)}var s=t.objectMode?1:i.length;t.length+=s;var f=t.length-1))throw new TypeError(\"Unknown encoding: \"+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(Writable.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Writable.prototype._write=function(e,t,r){r(new Error(\"_write() is not implemented\"))},Writable.prototype._writev=null,Writable.prototype.end=function(e,t,r){var i=this._writableState;\"function\"==typeof e?(r=e,e=null,t=null):\"function\"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||endWritable(this,i,r)},Object.defineProperty(Writable.prototype,\"destroyed\",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),Writable.prototype.destroy=destroyImpl.destroy,Writable.prototype._undestroy=destroyImpl.undestroy,Writable.prototype._destroy=function(e,t){this.end(),t(e)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9zdHJlYW1fd3JpdGFibGUuanMiXSwibmFtZXMiOlsicG5hIiwicmVxdWlyZSIsIldyaXRlUmVxIiwiY2h1bmsiLCJlbmNvZGluZyIsImNiIiwidGhpcyIsImNhbGxiYWNrIiwibmV4dCIsIkNvcmtlZFJlcXVlc3QiLCJzdGF0ZSIsIl90aGlzIiwiZW50cnkiLCJmaW5pc2giLCJvbkNvcmtlZEZpbmlzaCIsIm1vZHVsZSIsImV4cG9ydHMiLCJXcml0YWJsZSIsIkR1cGxleCIsImFzeW5jV3JpdGUiLCJwcm9jZXNzIiwiYnJvd3NlciIsImluZGV4T2YiLCJ2ZXJzaW9uIiwic2xpY2UiLCJzZXRJbW1lZGlhdGUiLCJuZXh0VGljayIsIldyaXRhYmxlU3RhdGUiLCJ1dGlsIiwiaW5oZXJpdHMiLCJpbnRlcm5hbFV0aWwiLCJkZXByZWNhdGUiLCJTdHJlYW0iLCJCdWZmZXIiLCJPdXJVaW50OEFycmF5IiwiZ2xvYmFsIiwiVWludDhBcnJheSIsIl91aW50OEFycmF5VG9CdWZmZXIiLCJmcm9tIiwiX2lzVWludDhBcnJheSIsIm9iaiIsImlzQnVmZmVyIiwicmVhbEhhc0luc3RhbmNlIiwiZGVzdHJveUltcGwiLCJub3AiLCJvcHRpb25zIiwic3RyZWFtIiwiaXNEdXBsZXgiLCJvYmplY3RNb2RlIiwid3JpdGFibGVPYmplY3RNb2RlIiwiaHdtIiwiaGlnaFdhdGVyTWFyayIsIndyaXRhYmxlSHdtIiwid3JpdGFibGVIaWdoV2F0ZXJNYXJrIiwiZGVmYXVsdEh3bSIsIk1hdGgiLCJmbG9vciIsImZpbmFsQ2FsbGVkIiwibmVlZERyYWluIiwiZW5kaW5nIiwiZW5kZWQiLCJmaW5pc2hlZCIsImRlc3Ryb3llZCIsIm5vRGVjb2RlIiwiZGVjb2RlU3RyaW5ncyIsImRlZmF1bHRFbmNvZGluZyIsImxlbmd0aCIsIndyaXRpbmciLCJjb3JrZWQiLCJzeW5jIiwiYnVmZmVyUHJvY2Vzc2luZyIsIm9ud3JpdGUiLCJlciIsIndyaXRlY2IiLCJ3cml0ZWxlbiIsImJ1ZmZlcmVkUmVxdWVzdCIsImxhc3RCdWZmZXJlZFJlcXVlc3QiLCJwZW5kaW5nY2IiLCJwcmVmaW5pc2hlZCIsImVycm9yRW1pdHRlZCIsImJ1ZmZlcmVkUmVxdWVzdENvdW50IiwiY29ya2VkUmVxdWVzdHNGcmVlIiwiY2FsbCIsIl93cml0YWJsZVN0YXRlIiwid3JpdGFibGUiLCJ3cml0ZSIsIl93cml0ZSIsIndyaXRldiIsIl93cml0ZXYiLCJkZXN0cm95IiwiX2Rlc3Ryb3kiLCJmaW5hbCIsIl9maW5hbCIsIndyaXRlQWZ0ZXJFbmQiLCJFcnJvciIsImVtaXQiLCJ2YWxpZENodW5rIiwidmFsaWQiLCJUeXBlRXJyb3IiLCJ1bmRlZmluZWQiLCJkZWNvZGVDaHVuayIsIndyaXRlT3JCdWZmZXIiLCJpc0J1ZiIsIm5ld0NodW5rIiwibGVuIiwicmV0IiwibGFzdCIsImRvV3JpdGUiLCJvbndyaXRlRXJyb3IiLCJmaW5pc2hNYXliZSIsIm9ud3JpdGVTdGF0ZVVwZGF0ZSIsIm5lZWRGaW5pc2giLCJjbGVhckJ1ZmZlciIsImFmdGVyV3JpdGUiLCJvbndyaXRlRHJhaW4iLCJsIiwiYnVmZmVyIiwiQXJyYXkiLCJob2xkZXIiLCJjb3VudCIsImFsbEJ1ZmZlcnMiLCJjYWxsRmluYWwiLCJlcnIiLCJwcmVmaW5pc2giLCJuZWVkIiwiZW5kV3JpdGFibGUiLCJvbmNlIiwiY29ya1JlcSIsInByb3RvdHlwZSIsImdldEJ1ZmZlciIsImN1cnJlbnQiLCJvdXQiLCJwdXNoIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXQiLCJfIiwiU3ltYm9sIiwiaGFzSW5zdGFuY2UiLCJGdW5jdGlvbiIsInZhbHVlIiwib2JqZWN0IiwicGlwZSIsImNvcmsiLCJ1bmNvcmsiLCJzZXREZWZhdWx0RW5jb2RpbmciLCJ0b0xvd2VyQ2FzZSIsImVudW1lcmFibGUiLCJlbmQiLCJzZXQiLCJfdW5kZXN0cm95IiwidW5kZXN0cm95Il0sIm1hcHBpbmdzIjoiQUF5QkEsYUFJQSxJQUFJQSxJQUFNQyxRQUFRLHdCQU1sQixTQUFTQyxTQUFTQyxFQUFPQyxFQUFVQyxHQUNqQ0MsS0FBS0gsTUFBUUEsRUFDYkcsS0FBS0YsU0FBV0EsRUFDaEJFLEtBQUtDLFNBQVdGLEVBQ2hCQyxLQUFLRSxLQUFPLEtBS2QsU0FBU0MsY0FBY0MsR0FDckIsSUFBSUMsRUFBUUwsS0FFWkEsS0FBS0UsS0FBTyxLQUNaRixLQUFLTSxNQUFRLEtBQ2JOLEtBQUtPLE9BQVMsV0FDWkMsZUFBZUgsRUFBT0QsSUFsQjFCSyxPQUFPQyxRQUFVQyxTQXdCakIsSUFJSUMsT0FKQUMsWUFBY0MsUUFBUUMsU0FBVyxDQUFDLFFBQVMsU0FBU0MsUUFBUUYsUUFBUUcsUUFBUUMsTUFBTSxFQUFHLEtBQU8sRUFBSUMsYUFBZXpCLElBQUkwQixTQU92SFQsU0FBU1UsY0FBZ0JBLGNBR3pCLElBQUlDLEtBQU8zQixRQUFRLGdCQUNuQjJCLEtBQUtDLFNBQVc1QixRQUFRLFlBSXhCLElBQUk2QixhQUFlLENBQ2pCQyxVQUFXOUIsUUFBUSxtQkFLakIrQixPQUFTL0IsUUFBUSw2QkFLakJnQyxPQUFTaEMsUUFBUSxlQUFlZ0MsT0FDaENDLGNBQWdCQyxPQUFPQyxZQUFjLGFBQ3pDLFNBQVNDLG9CQUFvQmxDLEdBQzNCLE9BQU84QixPQUFPSyxLQUFLbkMsR0FFckIsU0FBU29DLGNBQWNDLEdBQ3JCLE9BQU9QLE9BQU9RLFNBQVNELElBQVFBLGFBQWVOLGNBS2hELElBMklJUSxnQkEzSUFDLFlBQWMxQyxRQUFRLDhCQUkxQixTQUFTMkMsT0FFVCxTQUFTakIsY0FBY2tCLEVBQVNDLEdBQzlCNUIsT0FBU0EsUUFBVWpCLFFBQVEsb0JBRTNCNEMsRUFBVUEsR0FBVyxHQU9yQixJQUFJRSxFQUFXRCxhQUFrQjVCLE9BSWpDWixLQUFLMEMsYUFBZUgsRUFBUUcsV0FFeEJELElBQVV6QyxLQUFLMEMsV0FBYTFDLEtBQUswQyxjQUFnQkgsRUFBUUksb0JBSzdELElBQUlDLEVBQU1MLEVBQVFNLGNBQ2RDLEVBQWNQLEVBQVFRLHNCQUN0QkMsRUFBYWhELEtBQUswQyxXQUFhLEdBQUssTUFFbEIxQyxLQUFLNkMsY0FBdkJELEdBQWUsSUFBUkEsRUFBZ0NBLEVBQWFILElBQWFLLEdBQStCLElBQWhCQSxHQUF5Q0EsRUFBc0NFLEVBR25LaEQsS0FBSzZDLGNBQWdCSSxLQUFLQyxNQUFNbEQsS0FBSzZDLGVBR3JDN0MsS0FBS21ELGFBQWMsRUFHbkJuRCxLQUFLb0QsV0FBWSxFQUVqQnBELEtBQUtxRCxRQUFTLEVBRWRyRCxLQUFLc0QsT0FBUSxFQUVidEQsS0FBS3VELFVBQVcsRUFHaEJ2RCxLQUFLd0QsV0FBWSxFQUtqQixJQUFJQyxHQUFxQyxJQUExQmxCLEVBQVFtQixjQUN2QjFELEtBQUswRCxlQUFpQkQsRUFLdEJ6RCxLQUFLMkQsZ0JBQWtCcEIsRUFBUW9CLGlCQUFtQixPQUtsRDNELEtBQUs0RCxPQUFTLEVBR2Q1RCxLQUFLNkQsU0FBVSxFQUdmN0QsS0FBSzhELE9BQVMsRUFNZDlELEtBQUsrRCxNQUFPLEVBS1ovRCxLQUFLZ0Usa0JBQW1CLEVBR3hCaEUsS0FBS2lFLFFBQVUsU0FBVUMsR0FDdkJELFFBQVF6QixFQUFRMEIsSUFJbEJsRSxLQUFLbUUsUUFBVSxLQUdmbkUsS0FBS29FLFNBQVcsRUFFaEJwRSxLQUFLcUUsZ0JBQWtCLEtBQ3ZCckUsS0FBS3NFLG9CQUFzQixLQUkzQnRFLEtBQUt1RSxVQUFZLEVBSWpCdkUsS0FBS3dFLGFBQWMsRUFHbkJ4RSxLQUFLeUUsY0FBZSxFQUdwQnpFLEtBQUswRSxxQkFBdUIsRUFJNUIxRSxLQUFLMkUsbUJBQXFCLElBQUl4RSxjQUFjSCxNQTBDOUMsU0FBU1csU0FBUzRCLEdBVWhCLEdBVEEzQixPQUFTQSxRQUFVakIsUUFBUSxzQkFTdEJ5QyxnQkFBZ0J3QyxLQUFLakUsU0FBVVgsT0FBV0EsZ0JBQWdCWSxRQUM3RCxPQUFPLElBQUlELFNBQVM0QixHQUd0QnZDLEtBQUs2RSxlQUFpQixJQUFJeEQsY0FBY2tCLEVBQVN2QyxNQUdqREEsS0FBSzhFLFVBQVcsRUFFWnZDLElBQzJCLG1CQUFsQkEsRUFBUXdDLFFBQXNCL0UsS0FBS2dGLE9BQVN6QyxFQUFRd0MsT0FFakMsbUJBQW5CeEMsRUFBUTBDLFNBQXVCakYsS0FBS2tGLFFBQVUzQyxFQUFRMEMsUUFFbEMsbUJBQXBCMUMsRUFBUTRDLFVBQXdCbkYsS0FBS29GLFNBQVc3QyxFQUFRNEMsU0FFdEMsbUJBQWxCNUMsRUFBUThDLFFBQXNCckYsS0FBS3NGLE9BQVMvQyxFQUFROEMsUUFHakUzRCxPQUFPa0QsS0FBSzVFLE1BUWQsU0FBU3VGLGNBQWMvQyxFQUFRekMsR0FDN0IsSUFBSW1FLEVBQUssSUFBSXNCLE1BQU0sbUJBRW5CaEQsRUFBT2lELEtBQUssUUFBU3ZCLEdBQ3JCeEUsSUFBSTBCLFNBQVNyQixFQUFJbUUsR0FNbkIsU0FBU3dCLFdBQVdsRCxFQUFRcEMsRUFBT1AsRUFBT0UsR0FDeEMsSUFBSTRGLEdBQVEsRUFDUnpCLEdBQUssRUFZVCxPQVZjLE9BQVZyRSxFQUNGcUUsRUFBSyxJQUFJMEIsVUFBVSx1Q0FDTyxpQkFBVi9GLFFBQWdDZ0csSUFBVmhHLEdBQXdCTyxFQUFNc0MsYUFDcEV3QixFQUFLLElBQUkwQixVQUFVLG9DQUVqQjFCLElBQ0YxQixFQUFPaUQsS0FBSyxRQUFTdkIsR0FDckJ4RSxJQUFJMEIsU0FBU3JCLEVBQUltRSxHQUNqQnlCLEdBQVEsR0FFSEEsRUFxRFQsU0FBU0csWUFBWTFGLEVBQU9QLEVBQU9DLEdBSWpDLE9BSEtNLEVBQU1zQyxhQUFzQyxJQUF4QnRDLEVBQU1zRCxlQUE0QyxpQkFBVjdELElBQy9EQSxFQUFROEIsT0FBT0ssS0FBS25DLEVBQU9DLElBRXRCRCxFQWdCVCxTQUFTa0csY0FBY3ZELEVBQVFwQyxFQUFPNEYsRUFBT25HLEVBQU9DLEVBQVVDLEdBQzVELElBQUtpRyxFQUFPLENBQ1YsSUFBSUMsRUFBV0gsWUFBWTFGLEVBQU9QLEVBQU9DLEdBQ3JDRCxJQUFVb0csSUFDWkQsR0FBUSxFQUNSbEcsRUFBVyxTQUNYRCxFQUFRb0csR0FHWixJQUFJQyxFQUFNOUYsRUFBTXNDLFdBQWEsRUFBSTdDLEVBQU0rRCxPQUV2Q3hELEVBQU13RCxRQUFVc0MsRUFFaEIsSUFBSUMsRUFBTS9GLEVBQU13RCxPQUFTeEQsRUFBTXlDLGNBSS9CLEdBRktzRCxJQUFLL0YsRUFBTWdELFdBQVksR0FFeEJoRCxFQUFNeUQsU0FBV3pELEVBQU0wRCxPQUFRLENBQ2pDLElBQUlzQyxFQUFPaEcsRUFBTWtFLG9CQUNqQmxFLEVBQU1rRSxvQkFBc0IsQ0FDMUJ6RSxNQUFPQSxFQUNQQyxTQUFVQSxFQUNWa0csTUFBT0EsRUFDUC9GLFNBQVVGLEVBQ1ZHLEtBQU0sTUFFSmtHLEVBQ0ZBLEVBQUtsRyxLQUFPRSxFQUFNa0Usb0JBRWxCbEUsRUFBTWlFLGdCQUFrQmpFLEVBQU1rRSxvQkFFaENsRSxFQUFNc0Usc0JBQXdCLE9BRTlCMkIsUUFBUTdELEVBQVFwQyxHQUFPLEVBQU84RixFQUFLckcsRUFBT0MsRUFBVUMsR0FHdEQsT0FBT29HLEVBR1QsU0FBU0UsUUFBUTdELEVBQVFwQyxFQUFPNkUsRUFBUWlCLEVBQUtyRyxFQUFPQyxFQUFVQyxHQUM1REssRUFBTWdFLFNBQVc4QixFQUNqQjlGLEVBQU0rRCxRQUFVcEUsRUFDaEJLLEVBQU15RCxTQUFVLEVBQ2hCekQsRUFBTTJELE1BQU8sRUFDVGtCLEVBQVF6QyxFQUFPMEMsUUFBUXJGLEVBQU9PLEVBQU02RCxTQUFjekIsRUFBT3dDLE9BQU9uRixFQUFPQyxFQUFVTSxFQUFNNkQsU0FDM0Y3RCxFQUFNMkQsTUFBTyxFQUdmLFNBQVN1QyxhQUFhOUQsRUFBUXBDLEVBQU8yRCxFQUFNRyxFQUFJbkUsS0FDM0NLLEVBQU1tRSxVQUVKUixHQUdGckUsSUFBSTBCLFNBQVNyQixFQUFJbUUsR0FHakJ4RSxJQUFJMEIsU0FBU21GLFlBQWEvRCxFQUFRcEMsR0FDbENvQyxFQUFPcUMsZUFBZUosY0FBZSxFQUNyQ2pDLEVBQU9pRCxLQUFLLFFBQVN2QixLQUlyQm5FLEVBQUdtRSxHQUNIMUIsRUFBT3FDLGVBQWVKLGNBQWUsRUFDckNqQyxFQUFPaUQsS0FBSyxRQUFTdkIsR0FHckJxQyxZQUFZL0QsRUFBUXBDLElBSXhCLFNBQVNvRyxtQkFBbUJwRyxHQUMxQkEsRUFBTXlELFNBQVUsRUFDaEJ6RCxFQUFNK0QsUUFBVSxLQUNoQi9ELEVBQU13RCxRQUFVeEQsRUFBTWdFLFNBQ3RCaEUsRUFBTWdFLFNBQVcsRUFHbkIsU0FBU0gsUUFBUXpCLEVBQVEwQixHQUN2QixJQUFJOUQsRUFBUW9DLEVBQU9xQyxlQUNmZCxFQUFPM0QsRUFBTTJELEtBQ2JoRSxFQUFLSyxFQUFNK0QsUUFJZixHQUZBcUMsbUJBQW1CcEcsR0FFZjhELEVBQUlvQyxhQUFhOUQsRUFBUXBDLEVBQU8yRCxFQUFNRyxFQUFJbkUsT0FBUyxDQUVyRCxJQUFJd0QsRUFBV2tELFdBQVdyRyxHQUVyQm1ELEdBQWFuRCxFQUFNMEQsUUFBVzFELEVBQU00RCxtQkFBb0I1RCxFQUFNaUUsaUJBQ2pFcUMsWUFBWWxFLEVBQVFwQyxHQUdsQjJELEVBRUZsRCxXQUFXOEYsV0FBWW5FLEVBQVFwQyxFQUFPbUQsRUFBVXhELEdBR2hENEcsV0FBV25FLEVBQVFwQyxFQUFPbUQsRUFBVXhELElBSzFDLFNBQVM0RyxXQUFXbkUsRUFBUXBDLEVBQU9tRCxFQUFVeEQsR0FDdEN3RCxHQUFVcUQsYUFBYXBFLEVBQVFwQyxHQUNwQ0EsRUFBTW1FLFlBQ054RSxJQUNBd0csWUFBWS9ELEVBQVFwQyxHQU10QixTQUFTd0csYUFBYXBFLEVBQVFwQyxHQUNQLElBQWpCQSxFQUFNd0QsUUFBZ0J4RCxFQUFNZ0QsWUFDOUJoRCxFQUFNZ0QsV0FBWSxFQUNsQlosRUFBT2lELEtBQUssVUFLaEIsU0FBU2lCLFlBQVlsRSxFQUFRcEMsR0FDM0JBLEVBQU00RCxrQkFBbUIsRUFDekIsSUFBSTFELEVBQVFGLEVBQU1pRSxnQkFFbEIsR0FBSTdCLEVBQU8wQyxTQUFXNUUsR0FBU0EsRUFBTUosS0FBTSxDQUV6QyxJQUFJMkcsRUFBSXpHLEVBQU1zRSxxQkFDVm9DLEVBQVMsSUFBSUMsTUFBTUYsR0FDbkJHLEVBQVM1RyxFQUFNdUUsbUJBQ25CcUMsRUFBTzFHLE1BQVFBLEVBSWYsSUFGQSxJQUFJMkcsRUFBUSxFQUNSQyxHQUFhLEVBQ1Y1RyxHQUNMd0csRUFBT0csR0FBUzNHLEVBQ1hBLEVBQU0wRixRQUFPa0IsR0FBYSxHQUMvQjVHLEVBQVFBLEVBQU1KLEtBQ2QrRyxHQUFTLEVBRVhILEVBQU9JLFdBQWFBLEVBRXBCYixRQUFRN0QsRUFBUXBDLEdBQU8sRUFBTUEsRUFBTXdELE9BQVFrRCxFQUFRLEdBQUlFLEVBQU96RyxRQUk5REgsRUFBTW1FLFlBQ05uRSxFQUFNa0Usb0JBQXNCLEtBQ3hCMEMsRUFBTzlHLE1BQ1RFLEVBQU11RSxtQkFBcUJxQyxFQUFPOUcsS0FDbEM4RyxFQUFPOUcsS0FBTyxNQUVkRSxFQUFNdUUsbUJBQXFCLElBQUl4RSxjQUFjQyxHQUUvQ0EsRUFBTXNFLHFCQUF1QixNQUN4QixDQUVMLEtBQU9wRSxHQUFPLENBQ1osSUFBSVQsRUFBUVMsRUFBTVQsTUFDZEMsRUFBV1EsRUFBTVIsU0FDakJDLEVBQUtPLEVBQU1MLFNBVWYsR0FQQW9HLFFBQVE3RCxFQUFRcEMsR0FBTyxFQUZiQSxFQUFNc0MsV0FBYSxFQUFJN0MsRUFBTStELE9BRUovRCxFQUFPQyxFQUFVQyxHQUNwRE8sRUFBUUEsRUFBTUosS0FDZEUsRUFBTXNFLHVCQUtGdEUsRUFBTXlELFFBQ1IsTUFJVSxPQUFWdkQsSUFBZ0JGLEVBQU1rRSxvQkFBc0IsTUFHbERsRSxFQUFNaUUsZ0JBQWtCL0QsRUFDeEJGLEVBQU00RCxrQkFBbUIsRUFpQzNCLFNBQVN5QyxXQUFXckcsR0FDbEIsT0FBT0EsRUFBTWlELFFBQTJCLElBQWpCakQsRUFBTXdELFFBQTBDLE9BQTFCeEQsRUFBTWlFLGtCQUE2QmpFLEVBQU1tRCxXQUFhbkQsRUFBTXlELFFBRTNHLFNBQVNzRCxVQUFVM0UsRUFBUXBDLEdBQ3pCb0MsRUFBTzhDLE9BQU8sU0FBVThCLEdBQ3RCaEgsRUFBTW1FLFlBQ0Y2QyxHQUNGNUUsRUFBT2lELEtBQUssUUFBUzJCLEdBRXZCaEgsRUFBTW9FLGFBQWMsRUFDcEJoQyxFQUFPaUQsS0FBSyxhQUNaYyxZQUFZL0QsRUFBUXBDLEtBR3hCLFNBQVNpSCxVQUFVN0UsRUFBUXBDLEdBQ3BCQSxFQUFNb0UsYUFBZ0JwRSxFQUFNK0MsY0FDRixtQkFBbEJYLEVBQU84QyxRQUNoQmxGLEVBQU1tRSxZQUNObkUsRUFBTStDLGFBQWMsRUFDcEJ6RCxJQUFJMEIsU0FBUytGLFVBQVczRSxFQUFRcEMsS0FFaENBLEVBQU1vRSxhQUFjLEVBQ3BCaEMsRUFBT2lELEtBQUssZUFLbEIsU0FBU2MsWUFBWS9ELEVBQVFwQyxHQUMzQixJQUFJa0gsRUFBT2IsV0FBV3JHLEdBUXRCLE9BUElrSCxJQUNGRCxVQUFVN0UsRUFBUXBDLEdBQ00sSUFBcEJBLEVBQU1tRSxZQUNSbkUsRUFBTW1ELFVBQVcsRUFDakJmLEVBQU9pRCxLQUFLLFlBR1Q2QixFQUdULFNBQVNDLFlBQVkvRSxFQUFRcEMsRUFBT0wsR0FDbENLLEVBQU1pRCxRQUFTLEVBQ2ZrRCxZQUFZL0QsRUFBUXBDLEdBQ2hCTCxJQUNFSyxFQUFNbUQsU0FBVTdELElBQUkwQixTQUFTckIsR0FBU3lDLEVBQU9nRixLQUFLLFNBQVV6SCxJQUVsRUssRUFBTWtELE9BQVEsRUFDZGQsRUFBT3NDLFVBQVcsRUFHcEIsU0FBU3RFLGVBQWVpSCxFQUFTckgsRUFBT2dILEdBQ3RDLElBQUk5RyxFQUFRbUgsRUFBUW5ILE1BRXBCLElBREFtSCxFQUFRbkgsTUFBUSxLQUNUQSxHQUFPLENBQ1osSUFBSVAsRUFBS08sRUFBTUwsU0FDZkcsRUFBTW1FLFlBQ054RSxFQUFHcUgsR0FDSDlHLEVBQVFBLEVBQU1KLEtBRVpFLEVBQU11RSxtQkFDUnZFLEVBQU11RSxtQkFBbUJ6RSxLQUFPdUgsRUFFaENySCxFQUFNdUUsbUJBQXFCOEMsRUFsakIvQm5HLEtBQUtDLFNBQVNaLFNBQVVlLFFBbUh4QkwsY0FBY3FHLFVBQVVDLFVBQVksV0FHbEMsSUFGQSxJQUFJQyxFQUFVNUgsS0FBS3FFLGdCQUNmd0QsRUFBTSxHQUNIRCxHQUNMQyxFQUFJQyxLQUFLRixHQUNUQSxFQUFVQSxFQUFRMUgsS0FFcEIsT0FBTzJILEdBR1QsV0FDRSxJQUNFRSxPQUFPQyxlQUFlM0csY0FBY3FHLFVBQVcsU0FBVSxDQUN2RE8sSUFBS3pHLGFBQWFDLFVBQVUsV0FDMUIsT0FBT3pCLEtBQUsySCxhQUNYLDZFQUFtRixhQUV4RixNQUFPTyxLQVBYLEdBYXNCLG1CQUFYQyxRQUF5QkEsT0FBT0MsYUFBaUUsbUJBQTNDQyxTQUFTWCxVQUFVUyxPQUFPQyxjQUN6RmhHLGdCQUFrQmlHLFNBQVNYLFVBQVVTLE9BQU9DLGFBQzVDTCxPQUFPQyxlQUFlckgsU0FBVXdILE9BQU9DLFlBQWEsQ0FDbERFLE1BQU8sU0FBVUMsR0FDZixRQUFJbkcsZ0JBQWdCd0MsS0FBSzVFLEtBQU11SSxJQUMzQnZJLE9BQVNXLFdBRU40SCxHQUFVQSxFQUFPMUQsMEJBQTBCeEQsbUJBSXREZSxnQkFBa0IsU0FBVW1HLEdBQzFCLE9BQU9BLGFBQWtCdkksTUFxQzdCVyxTQUFTK0csVUFBVWMsS0FBTyxXQUN4QnhJLEtBQUt5RixLQUFLLFFBQVMsSUFBSUQsTUFBTSwrQkE4Qi9CN0UsU0FBUytHLFVBQVUzQyxNQUFRLFNBQVVsRixFQUFPQyxFQUFVQyxHQUNwRCxJQUFJSyxFQUFRSixLQUFLNkUsZUFDYnNCLEdBQU0sRUFDTkgsR0FBUzVGLEVBQU1zQyxZQUFjVCxjQUFjcEMsR0FvQi9DLE9BbEJJbUcsSUFBVXJFLE9BQU9RLFNBQVN0QyxLQUM1QkEsRUFBUWtDLG9CQUFvQmxDLElBR04sbUJBQWJDLElBQ1RDLEVBQUtELEVBQ0xBLEVBQVcsTUFHVGtHLEVBQU9sRyxFQUFXLFNBQW1CQSxJQUFVQSxFQUFXTSxFQUFNdUQsaUJBRWxELG1CQUFQNUQsSUFBbUJBLEVBQUt1QyxLQUUvQmxDLEVBQU1rRCxNQUFPaUMsY0FBY3ZGLEtBQU1ELElBQWFpRyxHQUFTTixXQUFXMUYsS0FBTUksRUFBT1AsRUFBT0UsTUFDeEZLLEVBQU1tRSxZQUNONEIsRUFBTUosY0FBYy9GLEtBQU1JLEVBQU80RixFQUFPbkcsRUFBT0MsRUFBVUMsSUFHcERvRyxHQUdUeEYsU0FBUytHLFVBQVVlLEtBQU8sV0FDWnpJLEtBQUs2RSxlQUVYZixVQUdSbkQsU0FBUytHLFVBQVVnQixPQUFTLFdBQzFCLElBQUl0SSxFQUFRSixLQUFLNkUsZUFFYnpFLEVBQU0wRCxTQUNSMUQsRUFBTTBELFNBRUQxRCxFQUFNeUQsU0FBWXpELEVBQU0wRCxRQUFXMUQsRUFBTW1ELFVBQWFuRCxFQUFNNEQsbUJBQW9CNUQsRUFBTWlFLGlCQUFpQnFDLFlBQVkxRyxLQUFNSSxLQUlsSU8sU0FBUytHLFVBQVVpQixtQkFBcUIsU0FBNEI3SSxHQUdsRSxHQUR3QixpQkFBYkEsSUFBdUJBLEVBQVdBLEVBQVM4SSxpQkFDaEQsQ0FBQyxNQUFPLE9BQVEsUUFBUyxRQUFTLFNBQVUsU0FBVSxPQUFRLFFBQVMsVUFBVyxXQUFZLE9BQU81SCxTQUFTbEIsRUFBVyxJQUFJOEksZ0JBQWtCLEdBQUksTUFBTSxJQUFJaEQsVUFBVSxxQkFBdUI5RixHQUVwTSxPQURBRSxLQUFLNkUsZUFBZWxCLGdCQUFrQjdELEVBQy9CRSxNQVVUK0gsT0FBT0MsZUFBZXJILFNBQVMrRyxVQUFXLHdCQUF5QixDQUlqRW1CLFlBQVksRUFDWlosSUFBSyxXQUNILE9BQU9qSSxLQUFLNkUsZUFBZWhDLGlCQThML0JsQyxTQUFTK0csVUFBVTFDLE9BQVMsU0FBVW5GLEVBQU9DLEVBQVVDLEdBQ3JEQSxFQUFHLElBQUl5RixNQUFNLGlDQUdmN0UsU0FBUytHLFVBQVV4QyxRQUFVLEtBRTdCdkUsU0FBUytHLFVBQVVvQixJQUFNLFNBQVVqSixFQUFPQyxFQUFVQyxHQUNsRCxJQUFJSyxFQUFRSixLQUFLNkUsZUFFSSxtQkFBVmhGLEdBQ1RFLEVBQUtGLEVBQ0xBLEVBQVEsS0FDUkMsRUFBVyxNQUNrQixtQkFBYkEsSUFDaEJDLEVBQUtELEVBQ0xBLEVBQVcsTUFHVEQsTUFBQUEsR0FBdUNHLEtBQUsrRSxNQUFNbEYsRUFBT0MsR0FHekRNLEVBQU0wRCxTQUNSMUQsRUFBTTBELE9BQVMsRUFDZjlELEtBQUswSSxVQUlGdEksRUFBTWlELFFBQVdqRCxFQUFNbUQsVUFBVWdFLFlBQVl2SCxLQUFNSSxFQUFPTCxJQW9FakVnSSxPQUFPQyxlQUFlckgsU0FBUytHLFVBQVcsWUFBYSxDQUNyRE8sSUFBSyxXQUNILFlBQTRCcEMsSUFBeEI3RixLQUFLNkUsZ0JBR0Y3RSxLQUFLNkUsZUFBZXJCLFdBRTdCdUYsSUFBSyxTQUFVVCxHQUdSdEksS0FBSzZFLGlCQU1WN0UsS0FBSzZFLGVBQWVyQixVQUFZOEUsTUFJcEMzSCxTQUFTK0csVUFBVXZDLFFBQVU5QyxZQUFZOEMsUUFDekN4RSxTQUFTK0csVUFBVXNCLFdBQWEzRyxZQUFZNEcsVUFDNUN0SSxTQUFTK0csVUFBVXRDLFNBQVcsU0FBVWdDLEVBQUtySCxHQUMzQ0MsS0FBSzhJLE1BQ0wvSSxFQUFHcUgiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL3JlYWRhYmxlLXN0cmVhbS9saWIvX3N0cmVhbV93cml0YWJsZS5qcyJ9", - "\"use strict\";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}var Buffer=require(\"safe-buffer\").Buffer,util=require(\"util\");function copyBuffer(t,e,i){t.copy(e,i)}module.exports=function(){function t(){_classCallCheck(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return\"\";for(var e=this.head,i=\"\"+e.data;e=e.next;)i+=t+e.data;return i},t.prototype.concat=function(t){if(0===this.length)return Buffer.alloc(0);if(1===this.length)return this.head.data;for(var e=Buffer.allocUnsafe(t>>>0),i=this.head,n=0;i;)copyBuffer(i.data,e,n),n+=i.data.length,i=i.next;return e},t}(),util&&util.inspect&&util.inspect.custom&&(module.exports.prototype[util.inspect.custom]=function(){var t=util.inspect({length:this.length});return this.constructor.name+\" \"+t});\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJ1ZmZlckxpc3QuanMiXSwibmFtZXMiOlsiX2NsYXNzQ2FsbENoZWNrIiwiaW5zdGFuY2UiLCJDb25zdHJ1Y3RvciIsIlR5cGVFcnJvciIsIkJ1ZmZlciIsInJlcXVpcmUiLCJ1dGlsIiwiY29weUJ1ZmZlciIsInNyYyIsInRhcmdldCIsIm9mZnNldCIsImNvcHkiLCJtb2R1bGUiLCJleHBvcnRzIiwiQnVmZmVyTGlzdCIsInRoaXMiLCJoZWFkIiwidGFpbCIsImxlbmd0aCIsInByb3RvdHlwZSIsInB1c2giLCJ2IiwiZW50cnkiLCJkYXRhIiwibmV4dCIsInVuc2hpZnQiLCJzaGlmdCIsInJldCIsImNsZWFyIiwiam9pbiIsInMiLCJwIiwiY29uY2F0IiwibiIsImFsbG9jIiwiYWxsb2NVbnNhZmUiLCJpIiwiaW5zcGVjdCIsImN1c3RvbSIsIm9iaiIsImNvbnN0cnVjdG9yIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxTQUFTQSxnQkFBZ0JDLEVBQVVDLEdBQWUsS0FBTUQsYUFBb0JDLEdBQWdCLE1BQU0sSUFBSUMsVUFBVSxxQ0FFaEgsSUFBSUMsT0FBU0MsUUFBUSxlQUFlRCxPQUNoQ0UsS0FBT0QsUUFBUSxRQUVuQixTQUFTRSxXQUFXQyxFQUFLQyxFQUFRQyxHQUMvQkYsRUFBSUcsS0FBS0YsRUFBUUMsR0FHbkJFLE9BQU9DLFFBQVUsV0FDZixTQUFTQyxJQUNQZCxnQkFBZ0JlLEtBQU1ELEdBRXRCQyxLQUFLQyxLQUFPLEtBQ1pELEtBQUtFLEtBQU8sS0FDWkYsS0FBS0csT0FBUyxFQXFEaEIsT0FsREFKLEVBQVdLLFVBQVVDLEtBQU8sU0FBY0MsR0FDeEMsSUFBSUMsRUFBUSxDQUFFQyxLQUFNRixFQUFHRyxLQUFNLE1BQ3pCVCxLQUFLRyxPQUFTLEVBQUdILEtBQUtFLEtBQUtPLEtBQU9GLEVBQVdQLEtBQUtDLEtBQU9NLEVBQzdEUCxLQUFLRSxLQUFPSyxJQUNWUCxLQUFLRyxRQUdUSixFQUFXSyxVQUFVTSxRQUFVLFNBQWlCSixHQUM5QyxJQUFJQyxFQUFRLENBQUVDLEtBQU1GLEVBQUdHLEtBQU1ULEtBQUtDLE1BQ2QsSUFBaEJELEtBQUtHLFNBQWNILEtBQUtFLEtBQU9LLEdBQ25DUCxLQUFLQyxLQUFPTSxJQUNWUCxLQUFLRyxRQUdUSixFQUFXSyxVQUFVTyxNQUFRLFdBQzNCLEdBQW9CLElBQWhCWCxLQUFLRyxPQUFULENBQ0EsSUFBSVMsRUFBTVosS0FBS0MsS0FBS08sS0FHcEIsT0FGb0IsSUFBaEJSLEtBQUtHLE9BQWNILEtBQUtDLEtBQU9ELEtBQUtFLEtBQU8sS0FBVUYsS0FBS0MsS0FBT0QsS0FBS0MsS0FBS1EsT0FDN0VULEtBQUtHLE9BQ0FTLElBR1RiLEVBQVdLLFVBQVVTLE1BQVEsV0FDM0JiLEtBQUtDLEtBQU9ELEtBQUtFLEtBQU8sS0FDeEJGLEtBQUtHLE9BQVMsR0FHaEJKLEVBQVdLLFVBQVVVLEtBQU8sU0FBY0MsR0FDeEMsR0FBb0IsSUFBaEJmLEtBQUtHLE9BQWMsTUFBTyxHQUc5QixJQUZBLElBQUlhLEVBQUloQixLQUFLQyxLQUNUVyxFQUFNLEdBQUtJLEVBQUVSLEtBQ1ZRLEVBQUlBLEVBQUVQLE1BQ1hHLEdBQU9HLEVBQUlDLEVBQUVSLEtBQ2QsT0FBT0ksR0FHVmIsRUFBV0ssVUFBVWEsT0FBUyxTQUFnQkMsR0FDNUMsR0FBb0IsSUFBaEJsQixLQUFLRyxPQUFjLE9BQU9kLE9BQU84QixNQUFNLEdBQzNDLEdBQW9CLElBQWhCbkIsS0FBS0csT0FBYyxPQUFPSCxLQUFLQyxLQUFLTyxLQUl4QyxJQUhBLElBQUlJLEVBQU12QixPQUFPK0IsWUFBWUYsSUFBTSxHQUMvQkYsRUFBSWhCLEtBQUtDLEtBQ1RvQixFQUFJLEVBQ0RMLEdBQ0x4QixXQUFXd0IsRUFBRVIsS0FBTUksRUFBS1MsR0FDeEJBLEdBQUtMLEVBQUVSLEtBQUtMLE9BQ1phLEVBQUlBLEVBQUVQLEtBRVIsT0FBT0csR0FHRmIsRUEzRFEsR0E4RGJSLE1BQVFBLEtBQUsrQixTQUFXL0IsS0FBSytCLFFBQVFDLFNBQ3ZDMUIsT0FBT0MsUUFBUU0sVUFBVWIsS0FBSytCLFFBQVFDLFFBQVUsV0FDOUMsSUFBSUMsRUFBTWpDLEtBQUsrQixRQUFRLENBQUVuQixPQUFRSCxLQUFLRyxTQUN0QyxPQUFPSCxLQUFLeUIsWUFBWUMsS0FBTyxJQUFNRiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvcmVhZGFibGUtc3RyZWFtL2xpYi9pbnRlcm5hbC9zdHJlYW1zL0J1ZmZlckxpc3QuanMifQ==", - "\"use strict\";var pna=require(\"process-nextick-args\");function destroy(t,e){var r=this,a=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return a||i?(e?e(t):!t||this._writableState&&this._writableState.errorEmitted||pna.nextTick(emitErrorNT,this,t),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(t){!e&&t?(pna.nextTick(emitErrorNT,r,t),r._writableState&&(r._writableState.errorEmitted=!0)):e&&e(t)}),this)}function undestroy(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function emitErrorNT(t,e){t.emit(\"error\",e)}module.exports={destroy:destroy,undestroy:undestroy};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlc3Ryb3kuanMiXSwibmFtZXMiOlsicG5hIiwicmVxdWlyZSIsImRlc3Ryb3kiLCJlcnIiLCJjYiIsIl90aGlzIiwidGhpcyIsInJlYWRhYmxlRGVzdHJveWVkIiwiX3JlYWRhYmxlU3RhdGUiLCJkZXN0cm95ZWQiLCJ3cml0YWJsZURlc3Ryb3llZCIsIl93cml0YWJsZVN0YXRlIiwiZXJyb3JFbWl0dGVkIiwibmV4dFRpY2siLCJlbWl0RXJyb3JOVCIsIl9kZXN0cm95IiwidW5kZXN0cm95IiwicmVhZGluZyIsImVuZGVkIiwiZW5kRW1pdHRlZCIsImVuZGluZyIsImZpbmlzaGVkIiwic2VsZiIsImVtaXQiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiQUFBQSxhQUlBLElBQUlBLElBQU1DLFFBQVEsd0JBSWxCLFNBQVNDLFFBQVFDLEVBQUtDLEdBQ3BCLElBQUlDLEVBQVFDLEtBRVJDLEVBQW9CRCxLQUFLRSxnQkFBa0JGLEtBQUtFLGVBQWVDLFVBQy9EQyxFQUFvQkosS0FBS0ssZ0JBQWtCTCxLQUFLSyxlQUFlRixVQUVuRSxPQUFJRixHQUFxQkcsR0FDbkJOLEVBQ0ZBLEVBQUdELElBQ01BLEdBQVNHLEtBQUtLLGdCQUFtQkwsS0FBS0ssZUFBZUMsY0FDOURaLElBQUlhLFNBQVNDLFlBQWFSLEtBQU1ILEdBRTNCRyxPQU1MQSxLQUFLRSxpQkFDUEYsS0FBS0UsZUFBZUMsV0FBWSxHQUk5QkgsS0FBS0ssaUJBQ1BMLEtBQUtLLGVBQWVGLFdBQVksR0FHbENILEtBQUtTLFNBQVNaLEdBQU8sS0FBTSxTQUFVQSxJQUM5QkMsR0FBTUQsR0FDVEgsSUFBSWEsU0FBU0MsWUFBYVQsRUFBT0YsR0FDN0JFLEVBQU1NLGlCQUNSTixFQUFNTSxlQUFlQyxjQUFlLElBRTdCUixHQUNUQSxFQUFHRCxLQUlBRyxNQUdULFNBQVNVLFlBQ0hWLEtBQUtFLGlCQUNQRixLQUFLRSxlQUFlQyxXQUFZLEVBQ2hDSCxLQUFLRSxlQUFlUyxTQUFVLEVBQzlCWCxLQUFLRSxlQUFlVSxPQUFRLEVBQzVCWixLQUFLRSxlQUFlVyxZQUFhLEdBRy9CYixLQUFLSyxpQkFDUEwsS0FBS0ssZUFBZUYsV0FBWSxFQUNoQ0gsS0FBS0ssZUFBZU8sT0FBUSxFQUM1QlosS0FBS0ssZUFBZVMsUUFBUyxFQUM3QmQsS0FBS0ssZUFBZVUsVUFBVyxFQUMvQmYsS0FBS0ssZUFBZUMsY0FBZSxHQUl2QyxTQUFTRSxZQUFZUSxFQUFNbkIsR0FDekJtQixFQUFLQyxLQUFLLFFBQVNwQixHQUdyQnFCLE9BQU9DLFFBQVUsQ0FDZnZCLFFBQVNBLFFBQ1RjLFVBQVdBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9yZWFkYWJsZS1zdHJlYW0vbGliL2ludGVybmFsL3N0cmVhbXMvZGVzdHJveS5qcyJ9", - "module.exports=require(\"events\").EventEmitter;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0cmVhbS1icm93c2VyLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJyZXF1aXJlIiwiRXZlbnRFbWl0dGVyIl0sIm1hcHBpbmdzIjoiQUFBQUEsT0FBT0MsUUFBVUMsUUFBUSxVQUFVQyIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvcmVhZGFibGUtc3RyZWFtL2xpYi9pbnRlcm5hbC9zdHJlYW1zL3N0cmVhbS1icm93c2VyLmpzIn0=", - "exports=module.exports=require(\"./lib/_stream_readable.js\"),exports.Stream=exports,exports.Readable=exports,exports.Writable=require(\"./lib/_stream_writable.js\"),exports.Duplex=require(\"./lib/_stream_duplex.js\"),exports.Transform=require(\"./lib/_stream_transform.js\"),exports.PassThrough=require(\"./lib/_stream_passthrough.js\");\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlYWRhYmxlLWJyb3dzZXIuanMiXSwibmFtZXMiOlsiZXhwb3J0cyIsIm1vZHVsZSIsInJlcXVpcmUiLCJTdHJlYW0iLCJSZWFkYWJsZSIsIldyaXRhYmxlIiwiRHVwbGV4IiwiVHJhbnNmb3JtIiwiUGFzc1Rocm91Z2giXSwibWFwcGluZ3MiOiJBQUFBQSxRQUFVQyxPQUFPRCxRQUFVRSxRQUFRLDZCQUNuQ0YsUUFBUUcsT0FBU0gsUUFDakJBLFFBQVFJLFNBQVdKLFFBQ25CQSxRQUFRSyxTQUFXSCxRQUFRLDZCQUMzQkYsUUFBUU0sT0FBU0osUUFBUSwyQkFDekJGLFFBQVFPLFVBQVlMLFFBQVEsOEJBQzVCRixRQUFRUSxZQUFjTixRQUFRIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9yZWFkYWJsZS1zdHJlYW0vcmVhZGFibGUtYnJvd3Nlci5qcyJ9", - "var buffer=require(\"buffer\"),Buffer=buffer.Buffer;function copyProps(f,r){for(var e in f)r[e]=f[e]}function SafeBuffer(f,r,e){return Buffer(f,r,e)}Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow?module.exports=buffer:(copyProps(buffer,exports),exports.Buffer=SafeBuffer),copyProps(Buffer,SafeBuffer),SafeBuffer.from=function(f,r,e){if(\"number\"==typeof f)throw new TypeError(\"Argument must not be a number\");return Buffer(f,r,e)},SafeBuffer.alloc=function(f,r,e){if(\"number\"!=typeof f)throw new TypeError(\"Argument must be a number\");var u=Buffer(f);return void 0!==r?\"string\"==typeof e?u.fill(r,e):u.fill(r):u.fill(0),u},SafeBuffer.allocUnsafe=function(f){if(\"number\"!=typeof f)throw new TypeError(\"Argument must be a number\");return Buffer(f)},SafeBuffer.allocUnsafeSlow=function(f){if(\"number\"!=typeof f)throw new TypeError(\"Argument must be a number\");return buffer.SlowBuffer(f)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImJ1ZmZlciIsInJlcXVpcmUiLCJCdWZmZXIiLCJjb3B5UHJvcHMiLCJzcmMiLCJkc3QiLCJrZXkiLCJTYWZlQnVmZmVyIiwiYXJnIiwiZW5jb2RpbmdPck9mZnNldCIsImxlbmd0aCIsImZyb20iLCJhbGxvYyIsImFsbG9jVW5zYWZlIiwiYWxsb2NVbnNhZmVTbG93IiwibW9kdWxlIiwiZXhwb3J0cyIsIlR5cGVFcnJvciIsInNpemUiLCJmaWxsIiwiZW5jb2RpbmciLCJidWYiLCJ1bmRlZmluZWQiLCJTbG93QnVmZmVyIl0sIm1hcHBpbmdzIjoiQUFDQSxJQUFJQSxPQUFTQyxRQUFRLFVBQ2pCQyxPQUFTRixPQUFPRSxPQUdwQixTQUFTQyxVQUFXQyxFQUFLQyxHQUN2QixJQUFLLElBQUlDLEtBQU9GLEVBQ2RDLEVBQUlDLEdBQU9GLEVBQUlFLEdBV25CLFNBQVNDLFdBQVlDLEVBQUtDLEVBQWtCQyxHQUMxQyxPQUFPUixPQUFPTSxFQUFLQyxFQUFrQkMsR0FUbkNSLE9BQU9TLE1BQVFULE9BQU9VLE9BQVNWLE9BQU9XLGFBQWVYLE9BQU9ZLGdCQUM5REMsT0FBT0MsUUFBVWhCLFFBR2pCRyxVQUFVSCxPQUFRZ0IsU0FDbEJBLFFBQVFkLE9BQVNLLFlBUW5CSixVQUFVRCxPQUFRSyxZQUVsQkEsV0FBV0ksS0FBTyxTQUFVSCxFQUFLQyxFQUFrQkMsR0FDakQsR0FBbUIsaUJBQVJGLEVBQ1QsTUFBTSxJQUFJUyxVQUFVLGlDQUV0QixPQUFPZixPQUFPTSxFQUFLQyxFQUFrQkMsSUFHdkNILFdBQVdLLE1BQVEsU0FBVU0sRUFBTUMsRUFBTUMsR0FDdkMsR0FBb0IsaUJBQVRGLEVBQ1QsTUFBTSxJQUFJRCxVQUFVLDZCQUV0QixJQUFJSSxFQUFNbkIsT0FBT2dCLEdBVWpCLFlBVGFJLElBQVRILEVBQ3NCLGlCQUFiQyxFQUNUQyxFQUFJRixLQUFLQSxFQUFNQyxHQUVmQyxFQUFJRixLQUFLQSxHQUdYRSxFQUFJRixLQUFLLEdBRUpFLEdBR1RkLFdBQVdNLFlBQWMsU0FBVUssR0FDakMsR0FBb0IsaUJBQVRBLEVBQ1QsTUFBTSxJQUFJRCxVQUFVLDZCQUV0QixPQUFPZixPQUFPZ0IsSUFHaEJYLFdBQVdPLGdCQUFrQixTQUFVSSxHQUNyQyxHQUFvQixpQkFBVEEsRUFDVCxNQUFNLElBQUlELFVBQVUsNkJBRXRCLE9BQU9qQixPQUFPdUIsV0FBV0wiLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL3NhZmUtYnVmZmVyL2luZGV4LmpzIn0=", - "var ClientRequest=require(\"./lib/request\"),response=require(\"./lib/response\"),extend=require(\"xtend\"),statusCodes=require(\"builtin-status-codes\"),url=require(\"url\"),http=exports;http.request=function(e,t){e=\"string\"==typeof e?url.parse(e):extend(e);var r=-1===global.location.protocol.search(/^https?:$/)?\"http:\":\"\",s=e.protocol||r,n=e.hostname||e.host,o=e.port,p=e.path||\"/\";n&&-1!==n.indexOf(\":\")&&(n=\"[\"+n+\"]\"),e.url=(n?s+\"//\"+n:\"\")+(o?\":\"+o:\"\")+p,e.method=(e.method||\"GET\").toUpperCase(),e.headers=e.headers||{};var u=new ClientRequest(e);return t&&u.on(\"response\",t),u},http.get=function(e,t){var r=http.request(e,t);return r.end(),r},http.ClientRequest=ClientRequest,http.IncomingMessage=response.IncomingMessage,http.Agent=function(){},http.Agent.defaultMaxSockets=4,http.globalAgent=new http.Agent,http.STATUS_CODES=statusCodes,http.METHODS=[\"CHECKOUT\",\"CONNECT\",\"COPY\",\"DELETE\",\"GET\",\"HEAD\",\"LOCK\",\"M-SEARCH\",\"MERGE\",\"MKACTIVITY\",\"MKCOL\",\"MOVE\",\"NOTIFY\",\"OPTIONS\",\"PATCH\",\"POST\",\"PROPFIND\",\"PROPPATCH\",\"PURGE\",\"PUT\",\"REPORT\",\"SEARCH\",\"SUBSCRIBE\",\"TRACE\",\"UNLOCK\",\"UNSUBSCRIBE\"];\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbIkNsaWVudFJlcXVlc3QiLCJyZXF1aXJlIiwicmVzcG9uc2UiLCJleHRlbmQiLCJzdGF0dXNDb2RlcyIsInVybCIsImh0dHAiLCJleHBvcnRzIiwicmVxdWVzdCIsIm9wdHMiLCJjYiIsInBhcnNlIiwiZGVmYXVsdFByb3RvY29sIiwiZ2xvYmFsIiwibG9jYXRpb24iLCJwcm90b2NvbCIsInNlYXJjaCIsImhvc3QiLCJob3N0bmFtZSIsInBvcnQiLCJwYXRoIiwiaW5kZXhPZiIsIm1ldGhvZCIsInRvVXBwZXJDYXNlIiwiaGVhZGVycyIsInJlcSIsIm9uIiwiZ2V0IiwiZW5kIiwiSW5jb21pbmdNZXNzYWdlIiwiQWdlbnQiLCJkZWZhdWx0TWF4U29ja2V0cyIsImdsb2JhbEFnZW50IiwiU1RBVFVTX0NPREVTIiwiTUVUSE9EUyJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSUEsY0FBZ0JDLFFBQVEsaUJBQ3hCQyxTQUFXRCxRQUFRLGtCQUNuQkUsT0FBU0YsUUFBUSxTQUNqQkcsWUFBY0gsUUFBUSx3QkFDdEJJLElBQU1KLFFBQVEsT0FFZEssS0FBT0MsUUFFWEQsS0FBS0UsUUFBVSxTQUFVQyxFQUFNQyxHQUU3QkQsRUFEbUIsaUJBQVRBLEVBQ0hKLElBQUlNLE1BQU1GLEdBRVZOLE9BQU9NLEdBS2YsSUFBSUcsR0FBb0UsSUFBbERDLE9BQU9DLFNBQVNDLFNBQVNDLE9BQU8sYUFBc0IsUUFBVSxHQUVsRkQsRUFBV04sRUFBS00sVUFBWUgsRUFDNUJLLEVBQU9SLEVBQUtTLFVBQVlULEVBQUtRLEtBQzdCRSxFQUFPVixFQUFLVSxLQUNaQyxFQUFPWCxFQUFLVyxNQUFRLElBR3BCSCxJQUErQixJQUF2QkEsRUFBS0ksUUFBUSxPQUN4QkosRUFBTyxJQUFNQSxFQUFPLEtBR3JCUixFQUFLSixLQUFPWSxFQUFRRixFQUFXLEtBQU9FLEVBQVEsS0FBT0UsRUFBTyxJQUFNQSxFQUFPLElBQU1DLEVBQy9FWCxFQUFLYSxRQUFVYixFQUFLYSxRQUFVLE9BQU9DLGNBQ3JDZCxFQUFLZSxRQUFVZixFQUFLZSxTQUFXLEdBSS9CLElBQUlDLEVBQU0sSUFBSXpCLGNBQWNTLEdBRzVCLE9BRklDLEdBQ0hlLEVBQUlDLEdBQUcsV0FBWWhCLEdBQ2JlLEdBR1JuQixLQUFLcUIsSUFBTSxTQUFjbEIsRUFBTUMsR0FDOUIsSUFBSWUsRUFBTW5CLEtBQUtFLFFBQVFDLEVBQU1DLEdBRTdCLE9BREFlLEVBQUlHLE1BQ0dILEdBR1JuQixLQUFLTixjQUFnQkEsY0FDckJNLEtBQUt1QixnQkFBa0IzQixTQUFTMkIsZ0JBRWhDdkIsS0FBS3dCLE1BQVEsYUFDYnhCLEtBQUt3QixNQUFNQyxrQkFBb0IsRUFFL0J6QixLQUFLMEIsWUFBYyxJQUFJMUIsS0FBS3dCLE1BRTVCeEIsS0FBSzJCLGFBQWU3QixZQUVwQkUsS0FBSzRCLFFBQVUsQ0FDZCxXQUNBLFVBQ0EsT0FDQSxTQUNBLE1BQ0EsT0FDQSxPQUNBLFdBQ0EsUUFDQSxhQUNBLFFBQ0EsT0FDQSxTQUNBLFVBQ0EsUUFDQSxPQUNBLFdBQ0EsWUFDQSxRQUNBLE1BQ0EsU0FDQSxTQUNBLFlBQ0EsUUFDQSxTQUNBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9zdHJlYW0taHR0cC9pbmRleC5qcyJ9", - "exports.fetch=isFunction(global.fetch)&&isFunction(global.ReadableStream),exports.writableStream=isFunction(global.WritableStream),exports.abortController=isFunction(global.AbortController),exports.blobConstructor=!1;try{new Blob([new ArrayBuffer(1)]),exports.blobConstructor=!0}catch(r){}var xhr;function getXHR(){if(void 0!==xhr)return xhr;if(global.XMLHttpRequest){xhr=new global.XMLHttpRequest;try{xhr.open(\"GET\",global.XDomainRequest?\"/\":\"https://example.com\")}catch(r){xhr=null}}else xhr=null;return xhr}function checkTypeSupport(r){var e=getXHR();if(!e)return!1;try{return e.responseType=r,e.responseType===r}catch(r){}return!1}var haveArrayBuffer=void 0!==global.ArrayBuffer,haveSlice=haveArrayBuffer&&isFunction(global.ArrayBuffer.prototype.slice);function isFunction(r){return\"function\"==typeof r}exports.arraybuffer=exports.fetch||haveArrayBuffer&&checkTypeSupport(\"arraybuffer\"),exports.msstream=!exports.fetch&&haveSlice&&checkTypeSupport(\"ms-stream\"),exports.mozchunkedarraybuffer=!exports.fetch&&haveArrayBuffer&&checkTypeSupport(\"moz-chunked-arraybuffer\"),exports.overrideMimeType=exports.fetch||!!getXHR()&&isFunction(getXHR().overrideMimeType),exports.vbArray=isFunction(global.VBArray),xhr=null;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhcGFiaWxpdHkuanMiXSwibmFtZXMiOlsiZXhwb3J0cyIsImZldGNoIiwiaXNGdW5jdGlvbiIsImdsb2JhbCIsIlJlYWRhYmxlU3RyZWFtIiwid3JpdGFibGVTdHJlYW0iLCJXcml0YWJsZVN0cmVhbSIsImFib3J0Q29udHJvbGxlciIsIkFib3J0Q29udHJvbGxlciIsImJsb2JDb25zdHJ1Y3RvciIsIkJsb2IiLCJBcnJheUJ1ZmZlciIsImUiLCJ4aHIiLCJnZXRYSFIiLCJ1bmRlZmluZWQiLCJYTUxIdHRwUmVxdWVzdCIsIm9wZW4iLCJYRG9tYWluUmVxdWVzdCIsImNoZWNrVHlwZVN1cHBvcnQiLCJ0eXBlIiwicmVzcG9uc2VUeXBlIiwiaGF2ZUFycmF5QnVmZmVyIiwiaGF2ZVNsaWNlIiwicHJvdG90eXBlIiwic2xpY2UiLCJ2YWx1ZSIsImFycmF5YnVmZmVyIiwibXNzdHJlYW0iLCJtb3pjaHVua2VkYXJyYXlidWZmZXIiLCJvdmVycmlkZU1pbWVUeXBlIiwidmJBcnJheSIsIlZCQXJyYXkiXSwibWFwcGluZ3MiOiJBQUFBQSxRQUFRQyxNQUFRQyxXQUFXQyxPQUFPRixRQUFVQyxXQUFXQyxPQUFPQyxnQkFFOURKLFFBQVFLLGVBQWlCSCxXQUFXQyxPQUFPRyxnQkFFM0NOLFFBQVFPLGdCQUFrQkwsV0FBV0MsT0FBT0ssaUJBRTVDUixRQUFRUyxpQkFBa0IsRUFDMUIsSUFDQyxJQUFJQyxLQUFLLENBQUMsSUFBSUMsWUFBWSxLQUMxQlgsUUFBUVMsaUJBQWtCLEVBQ3pCLE1BQU9HLElBS1QsSUFBSUMsSUFDSixTQUFTQyxTQUVSLFFBQVlDLElBQVJGLElBQW1CLE9BQU9BLElBRTlCLEdBQUlWLE9BQU9hLGVBQWdCLENBQzFCSCxJQUFNLElBQUlWLE9BQU9hLGVBSWpCLElBQ0NILElBQUlJLEtBQUssTUFBT2QsT0FBT2UsZUFBaUIsSUFBTSx1QkFDN0MsTUFBTU4sR0FDUEMsSUFBTSxXQUlQQSxJQUFNLEtBRVAsT0FBT0EsSUFHUixTQUFTTSxpQkFBa0JDLEdBQzFCLElBQUlQLEVBQU1DLFNBQ1YsSUFBS0QsRUFBSyxPQUFPLEVBQ2pCLElBRUMsT0FEQUEsRUFBSVEsYUFBZUQsRUFDWlAsRUFBSVEsZUFBaUJELEVBQzNCLE1BQU9SLElBQ1QsT0FBTyxFQUtSLElBQUlVLHFCQUFnRCxJQUF2Qm5CLE9BQU9RLFlBQ2hDWSxVQUFZRCxpQkFBbUJwQixXQUFXQyxPQUFPUSxZQUFZYSxVQUFVQyxPQWtCM0UsU0FBU3ZCLFdBQVl3QixHQUNwQixNQUF3QixtQkFBVkEsRUFmZjFCLFFBQVEyQixZQUFjM0IsUUFBUUMsT0FBVXFCLGlCQUFtQkgsaUJBQWlCLGVBSTVFbkIsUUFBUTRCLFVBQVk1QixRQUFRQyxPQUFTc0IsV0FBYUosaUJBQWlCLGFBQ25FbkIsUUFBUTZCLHVCQUF5QjdCLFFBQVFDLE9BQVNxQixpQkFDakRILGlCQUFpQiwyQkFJbEJuQixRQUFROEIsaUJBQW1COUIsUUFBUUMsU0FBVWEsVUFBV1osV0FBV1ksU0FBU2dCLGtCQUU1RTlCLFFBQVErQixRQUFVN0IsV0FBV0MsT0FBTzZCLFNBTXBDbkIsSUFBTSIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvc3RyZWFtLWh0dHAvbGliL2NhcGFiaWxpdHkuanMifQ==", - "var capability=require(\"./capability\"),inherits=require(\"inherits\"),response=require(\"./response\"),stream=require(\"readable-stream\"),toArrayBuffer=require(\"to-arraybuffer\"),IncomingMessage=response.IncomingMessage,rStates=response.readyStates;function decideMode(e,t){return capability.fetch&&t?\"fetch\":capability.mozchunkedarraybuffer?\"moz-chunked-arraybuffer\":capability.msstream?\"ms-stream\":capability.arraybuffer&&e?\"arraybuffer\":capability.vbArray&&e?\"text:vbarray\":\"text\"}var ClientRequest=module.exports=function(e){var t,r=this;stream.Writable.call(r),r._opts=e,r._body=[],r._headers={},e.auth&&r.setHeader(\"Authorization\",\"Basic \"+new Buffer(e.auth).toString(\"base64\")),Object.keys(e.headers).forEach(function(t){r.setHeader(t,e.headers[t])});var o=!0;if(\"disable-fetch\"===e.mode||\"requestTimeout\"in e&&!capability.abortController)o=!1,t=!0;else if(\"prefer-streaming\"===e.mode)t=!1;else if(\"allow-wrong-content-type\"===e.mode)t=!capability.overrideMimeType;else{if(e.mode&&\"default\"!==e.mode&&\"prefer-fast\"!==e.mode)throw new Error(\"Invalid value for opts.mode\");t=!0}r._mode=decideMode(t,o),r._fetchTimer=null,r.on(\"finish\",function(){r._onFinish()})};function statusValid(e){try{var t=e.status;return null!==t&&0!==t}catch(e){return!1}}inherits(ClientRequest,stream.Writable),ClientRequest.prototype.setHeader=function(e,t){var r=e.toLowerCase();-1===unsafeHeaders.indexOf(r)&&(this._headers[r]={name:e,value:t})},ClientRequest.prototype.getHeader=function(e){var t=this._headers[e.toLowerCase()];return t?t.value:null},ClientRequest.prototype.removeHeader=function(e){delete this._headers[e.toLowerCase()]},ClientRequest.prototype._onFinish=function(){var e=this;if(!e._destroyed){var t=e._opts,r=e._headers,o=null;\"GET\"!==t.method&&\"HEAD\"!==t.method&&(o=capability.arraybuffer?toArrayBuffer(Buffer.concat(e._body)):capability.blobConstructor?new global.Blob(e._body.map(function(e){return toArrayBuffer(e)}),{type:(r[\"content-type\"]||{}).value||\"\"}):Buffer.concat(e._body).toString());var n=[];if(Object.keys(r).forEach(function(e){var t=r[e].name,o=r[e].value;Array.isArray(o)?o.forEach(function(e){n.push([t,e])}):n.push([t,o])}),\"fetch\"===e._mode){var i=null;if(capability.abortController){var s=new AbortController;i=s.signal,e._fetchAbortController=s,\"requestTimeout\"in t&&0!==t.requestTimeout&&(e._fetchTimer=global.setTimeout(function(){e.emit(\"requestTimeout\"),e._fetchAbortController&&e._fetchAbortController.abort()},t.requestTimeout))}global.fetch(e._opts.url,{method:e._opts.method,headers:n,body:o||void 0,mode:\"cors\",credentials:t.withCredentials?\"include\":\"same-origin\",signal:i}).then(function(t){e._fetchResponse=t,e._connect()},function(t){global.clearTimeout(e._fetchTimer),e._destroyed||e.emit(\"error\",t)})}else{var a=e._xhr=new global.XMLHttpRequest;try{a.open(e._opts.method,e._opts.url,!0)}catch(t){return void process.nextTick(function(){e.emit(\"error\",t)})}\"responseType\"in a&&(a.responseType=e._mode.split(\":\")[0]),\"withCredentials\"in a&&(a.withCredentials=!!t.withCredentials),\"text\"===e._mode&&\"overrideMimeType\"in a&&a.overrideMimeType(\"text/plain; charset=x-user-defined\"),\"requestTimeout\"in t&&(a.timeout=t.requestTimeout,a.ontimeout=function(){e.emit(\"requestTimeout\")}),n.forEach(function(e){a.setRequestHeader(e[0],e[1])}),e._response=null,a.onreadystatechange=function(){switch(a.readyState){case rStates.LOADING:case rStates.DONE:e._onXHRProgress()}},\"moz-chunked-arraybuffer\"===e._mode&&(a.onprogress=function(){e._onXHRProgress()}),a.onerror=function(){e._destroyed||e.emit(\"error\",new Error(\"XHR error\"))};try{a.send(o)}catch(t){return void process.nextTick(function(){e.emit(\"error\",t)})}}}},ClientRequest.prototype._onXHRProgress=function(){statusValid(this._xhr)&&!this._destroyed&&(this._response||this._connect(),this._response._onXHRProgress())},ClientRequest.prototype._connect=function(){var e=this;e._destroyed||(e._response=new IncomingMessage(e._xhr,e._fetchResponse,e._mode,e._fetchTimer),e._response.on(\"error\",function(t){e.emit(\"error\",t)}),e.emit(\"response\",e._response))},ClientRequest.prototype._write=function(e,t,r){this._body.push(e),r()},ClientRequest.prototype.abort=ClientRequest.prototype.destroy=function(){this._destroyed=!0,global.clearTimeout(this._fetchTimer),this._response&&(this._response._destroyed=!0),this._xhr?this._xhr.abort():this._fetchAbortController&&this._fetchAbortController.abort()},ClientRequest.prototype.end=function(e,t,r){\"function\"==typeof e&&(r=e,e=void 0),stream.Writable.prototype.end.call(this,e,t,r)},ClientRequest.prototype.flushHeaders=function(){},ClientRequest.prototype.setTimeout=function(){},ClientRequest.prototype.setNoDelay=function(){},ClientRequest.prototype.setSocketKeepAlive=function(){};var unsafeHeaders=[\"accept-charset\",\"accept-encoding\",\"access-control-request-headers\",\"access-control-request-method\",\"connection\",\"content-length\",\"cookie\",\"cookie2\",\"date\",\"dnt\",\"expect\",\"host\",\"keep-alive\",\"origin\",\"referer\",\"te\",\"trailer\",\"transfer-encoding\",\"upgrade\",\"via\"];\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlcXVlc3QuanMiXSwibmFtZXMiOlsiY2FwYWJpbGl0eSIsInJlcXVpcmUiLCJpbmhlcml0cyIsInJlc3BvbnNlIiwic3RyZWFtIiwidG9BcnJheUJ1ZmZlciIsIkluY29taW5nTWVzc2FnZSIsInJTdGF0ZXMiLCJyZWFkeVN0YXRlcyIsImRlY2lkZU1vZGUiLCJwcmVmZXJCaW5hcnkiLCJ1c2VGZXRjaCIsImZldGNoIiwibW96Y2h1bmtlZGFycmF5YnVmZmVyIiwibXNzdHJlYW0iLCJhcnJheWJ1ZmZlciIsInZiQXJyYXkiLCJDbGllbnRSZXF1ZXN0IiwibW9kdWxlIiwiZXhwb3J0cyIsIm9wdHMiLCJzZWxmIiwidGhpcyIsIldyaXRhYmxlIiwiY2FsbCIsIl9vcHRzIiwiX2JvZHkiLCJfaGVhZGVycyIsImF1dGgiLCJzZXRIZWFkZXIiLCJCdWZmZXIiLCJ0b1N0cmluZyIsIk9iamVjdCIsImtleXMiLCJoZWFkZXJzIiwiZm9yRWFjaCIsIm5hbWUiLCJtb2RlIiwiYWJvcnRDb250cm9sbGVyIiwib3ZlcnJpZGVNaW1lVHlwZSIsIkVycm9yIiwiX21vZGUiLCJfZmV0Y2hUaW1lciIsIm9uIiwiX29uRmluaXNoIiwic3RhdHVzVmFsaWQiLCJ4aHIiLCJzdGF0dXMiLCJlIiwicHJvdG90eXBlIiwidmFsdWUiLCJsb3dlck5hbWUiLCJ0b0xvd2VyQ2FzZSIsInVuc2FmZUhlYWRlcnMiLCJpbmRleE9mIiwiZ2V0SGVhZGVyIiwiaGVhZGVyIiwicmVtb3ZlSGVhZGVyIiwiX2Rlc3Ryb3llZCIsImhlYWRlcnNPYmoiLCJib2R5IiwibWV0aG9kIiwiY29uY2F0IiwiYmxvYkNvbnN0cnVjdG9yIiwiZ2xvYmFsIiwiQmxvYiIsIm1hcCIsImJ1ZmZlciIsInR5cGUiLCJoZWFkZXJzTGlzdCIsImtleU5hbWUiLCJBcnJheSIsImlzQXJyYXkiLCJ2IiwicHVzaCIsInNpZ25hbCIsImNvbnRyb2xsZXIiLCJBYm9ydENvbnRyb2xsZXIiLCJfZmV0Y2hBYm9ydENvbnRyb2xsZXIiLCJyZXF1ZXN0VGltZW91dCIsInNldFRpbWVvdXQiLCJlbWl0IiwiYWJvcnQiLCJ1cmwiLCJ1bmRlZmluZWQiLCJjcmVkZW50aWFscyIsIndpdGhDcmVkZW50aWFscyIsInRoZW4iLCJfZmV0Y2hSZXNwb25zZSIsIl9jb25uZWN0IiwicmVhc29uIiwiY2xlYXJUaW1lb3V0IiwiX3hociIsIlhNTEh0dHBSZXF1ZXN0Iiwib3BlbiIsImVyciIsInByb2Nlc3MiLCJuZXh0VGljayIsInJlc3BvbnNlVHlwZSIsInNwbGl0IiwidGltZW91dCIsIm9udGltZW91dCIsInNldFJlcXVlc3RIZWFkZXIiLCJfcmVzcG9uc2UiLCJvbnJlYWR5c3RhdGVjaGFuZ2UiLCJyZWFkeVN0YXRlIiwiTE9BRElORyIsIkRPTkUiLCJfb25YSFJQcm9ncmVzcyIsIm9ucHJvZ3Jlc3MiLCJvbmVycm9yIiwic2VuZCIsIl93cml0ZSIsImNodW5rIiwiZW5jb2RpbmciLCJjYiIsImRlc3Ryb3kiLCJlbmQiLCJkYXRhIiwiZmx1c2hIZWFkZXJzIiwic2V0Tm9EZWxheSIsInNldFNvY2tldEtlZXBBbGl2ZSJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSUEsV0FBYUMsUUFBUSxnQkFDckJDLFNBQVdELFFBQVEsWUFDbkJFLFNBQVdGLFFBQVEsY0FDbkJHLE9BQVNILFFBQVEsbUJBQ2pCSSxjQUFnQkosUUFBUSxrQkFFeEJLLGdCQUFrQkgsU0FBU0csZ0JBQzNCQyxRQUFVSixTQUFTSyxZQUV2QixTQUFTQyxXQUFZQyxFQUFjQyxHQUNsQyxPQUFJWCxXQUFXWSxPQUFTRCxFQUNoQixRQUNHWCxXQUFXYSxzQkFDZCwwQkFDR2IsV0FBV2MsU0FDZCxZQUNHZCxXQUFXZSxhQUFlTCxFQUM3QixjQUNHVixXQUFXZ0IsU0FBV04sRUFDekIsZUFFQSxPQUlULElBQUlPLGNBQWdCQyxPQUFPQyxRQUFVLFNBQVVDLEdBQzlDLElBWUlWLEVBWkFXLEVBQU9DLEtBQ1hsQixPQUFPbUIsU0FBU0MsS0FBS0gsR0FFckJBLEVBQUtJLE1BQVFMLEVBQ2JD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RCxzQkFBc0JJLFNBRzdCakUsY0FBY2dDLFVBQVVvRSxJQUFNLFNBQVVDLEVBQU1KLEVBQVVDLEdBRW5DLG1CQUFURyxJQUNWSCxFQUFLRyxFQUNMQSxPQUFPbEMsR0FHUmhGLE9BQU9tQixTQUFTMEIsVUFBVW9FLElBQUk3RixLQU5uQkYsS0FNOEJnRyxFQUFNSixFQUFVQyxJQUcxRGxHLGNBQWNnQyxVQUFVc0UsYUFBZSxhQUN2Q3RHLGNBQWNnQyxVQUFVK0IsV0FBYSxhQUNyQy9ELGNBQWNnQyxVQUFVdUUsV0FBYSxhQUNyQ3ZHLGNBQWNnQyxVQUFVd0UsbUJBQXFCLGFBRzdDLElBQUlwRSxjQUFnQixDQUNuQixpQkFDQSxrQkFDQSxpQ0FDQSxnQ0FDQSxhQUNBLGlCQUNBLFNBQ0EsVUFDQSxPQUNBLE1BQ0EsU0FDQSxPQUNBLGFBQ0EsU0FDQSxVQUNBLEtBQ0EsVUFDQSxvQkFDQSxVQUNBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9zdHJlYW0taHR0cC9saWIvcmVxdWVzdC5qcyJ9", - "var capability=require(\"./capability\"),inherits=require(\"inherits\"),stream=require(\"readable-stream\"),rStates=exports.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},IncomingMessage=exports.IncomingMessage=function(e,r,t,a){var s=this;if(stream.Readable.call(s),s._mode=t,s.headers={},s.rawHeaders=[],s.trailers={},s.rawTrailers=[],s.on(\"end\",function(){process.nextTick(function(){s.emit(\"close\")})}),\"fetch\"===t){if(s._fetchResponse=r,s.url=r.url,s.statusCode=r.status,s.statusMessage=r.statusText,r.headers.forEach(function(e,r){s.headers[r.toLowerCase()]=e,s.rawHeaders.push(r,e)}),capability.writableStream){var o=new WritableStream({write:function(e){return new Promise(function(r,t){s._destroyed?t():s.push(new Buffer(e))?r():s._resumeFetch=r})},close:function(){global.clearTimeout(a),s._destroyed||s.push(null)},abort:function(e){s._destroyed||s.emit(\"error\",e)}});try{return void r.body.pipeTo(o).catch(function(e){global.clearTimeout(a),s._destroyed||s.emit(\"error\",e)})}catch(e){}}var n=r.body.getReader();!function e(){n.read().then(function(r){if(!s._destroyed){if(r.done)return global.clearTimeout(a),void s.push(null);s.push(new Buffer(r.value)),e()}}).catch(function(e){global.clearTimeout(a),s._destroyed||s.emit(\"error\",e)})}()}else{if(s._xhr=e,s._pos=0,s.url=e.responseURL,s.statusCode=e.status,s.statusMessage=e.statusText,e.getAllResponseHeaders().split(/\\r?\\n/).forEach(function(e){var r=e.match(/^([^:]+):\\s*(.*)/);if(r){var t=r[1].toLowerCase();\"set-cookie\"===t?(void 0===s.headers[t]&&(s.headers[t]=[]),s.headers[t].push(r[2])):void 0!==s.headers[t]?s.headers[t]+=\", \"+r[2]:s.headers[t]=r[2],s.rawHeaders.push(r[1],r[2])}}),s._charset=\"x-user-defined\",!capability.overrideMimeType){var i=s.rawHeaders[\"mime-type\"];if(i){var u=i.match(/;\\s*charset=([^;])(;|$)/);u&&(s._charset=u[1].toLowerCase())}s._charset||(s._charset=\"utf-8\")}}};inherits(IncomingMessage,stream.Readable),IncomingMessage.prototype._read=function(){var e=this._resumeFetch;e&&(this._resumeFetch=null,e())},IncomingMessage.prototype._onXHRProgress=function(){var e=this,r=e._xhr,t=null;switch(e._mode){case\"text:vbarray\":if(r.readyState!==rStates.DONE)break;try{t=new global.VBArray(r.responseBody).toArray()}catch(e){}if(null!==t){e.push(new Buffer(t));break}case\"text\":try{t=r.responseText}catch(r){e._mode=\"text:vbarray\";break}if(t.length>e._pos){var a=t.substr(e._pos);if(\"x-user-defined\"===e._charset){for(var s=new Buffer(a.length),o=0;oe._pos&&(e.push(new Buffer(new Uint8Array(n.result.slice(e._pos)))),e._pos=n.result.byteLength)},n.onload=function(){e.push(null)},n.readAsArrayBuffer(t)}e._xhr.readyState===rStates.DONE&&\"ms-stream\"!==e._mode&&e.push(null)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc3BvbnNlLmpzIl0sIm5hbWVzIjpbImNhcGFiaWxpdHkiLCJyZXF1aXJlIiwiaW5oZXJpdHMiLCJzdHJlYW0iLCJyU3RhdGVzIiwiZXhwb3J0cyIsInJlYWR5U3RhdGVzIiwiVU5TRU5UIiwiT1BFTkVEIiwiSEVBREVSU19SRUNFSVZFRCIsIkxPQURJTkciLCJET05FIiwiSW5jb21pbmdNZXNzYWdlIiwieGhyIiwicmVzcG9uc2UiLCJtb2RlIiwiZmV0Y2hUaW1lciIsInNlbGYiLCJ0aGlzIiwiUmVhZGFibGUiLCJjYWxsIiwiX21vZGUiLCJoZWFkZXJzIiwicmF3SGVhZGVycyIsInRyYWlsZXJzIiwicmF3VHJhaWxlcnMiLCJvbiIsInByb2Nlc3MiLCJuZXh0VGljayIsImVtaXQiLCJfZmV0Y2hSZXNwb25zZSIsInVybCIsInN0YXR1c0NvZGUiLCJzdGF0dXMiLCJzdGF0dXNNZXNzYWdlIiwic3RhdHVzVGV4dCIsImZvckVhY2giLCJoZWFkZXIiLCJrZXkiLCJ0b0xvd2VyQ2FzZSIsInB1c2giLCJ3cml0YWJsZVN0cmVhbSIsIndyaXRhYmxlIiwiV3JpdGFibGVTdHJlYW0iLCJ3cml0ZSIsImNodW5rIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJfZGVzdHJveWVkIiwiQnVmZmVyIiwiX3Jlc3VtZUZldGNoIiwiY2xvc2UiLCJnbG9iYWwiLCJjbGVhclRpbWVvdXQiLCJhYm9ydCIsImVyciIsImJvZHkiLCJwaXBlVG8iLCJjYXRjaCIsImUiLCJyZWFkZXIiLCJnZXRSZWFkZXIiLCJyZWFkIiwidGhlbiIsInJlc3VsdCIsImRvbmUiLCJ2YWx1ZSIsIl94aHIiLCJfcG9zIiwicmVzcG9uc2VVUkwiLCJnZXRBbGxSZXNwb25zZUhlYWRlcnMiLCJzcGxpdCIsIm1hdGNoZXMiLCJtYXRjaCIsInVuZGVmaW5lZCIsIl9jaGFyc2V0Iiwib3ZlcnJpZGVNaW1lVHlwZSIsIm1pbWVUeXBlIiwiY2hhcnNldE1hdGNoIiwicHJvdG90eXBlIiwiX3JlYWQiLCJfb25YSFJQcm9ncmVzcyIsInJlYWR5U3RhdGUiLCJWQkFycmF5IiwicmVzcG9uc2VCb2R5IiwidG9BcnJheSIsInJlc3BvbnNlVGV4dCIsImxlbmd0aCIsIm5ld0RhdGEiLCJzdWJzdHIiLCJidWZmZXIiLCJpIiwiY2hhckNvZGVBdCIsIlVpbnQ4QXJyYXkiLCJNU1N0cmVhbVJlYWRlciIsIm9ucHJvZ3Jlc3MiLCJieXRlTGVuZ3RoIiwic2xpY2UiLCJvbmxvYWQiLCJyZWFkQXNBcnJheUJ1ZmZlciJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSUEsV0FBYUMsUUFBUSxnQkFDckJDLFNBQVdELFFBQVEsWUFDbkJFLE9BQVNGLFFBQVEsbUJBRWpCRyxRQUFVQyxRQUFRQyxZQUFjLENBQ25DQyxPQUFRLEVBQ1JDLE9BQVEsRUFDUkMsaUJBQWtCLEVBQ2xCQyxRQUFTLEVBQ1RDLEtBQU0sR0FHSEMsZ0JBQWtCUCxRQUFRTyxnQkFBa0IsU0FBVUMsRUFBS0MsRUFBVUMsRUFBTUMsR0FDOUUsSUFBSUMsRUFBT0MsS0FpQlgsR0FoQkFmLE9BQU9nQixTQUFTQyxLQUFLSCxHQUVyQkEsRUFBS0ksTUFBUU4sRUFDYkUsRUFBS0ssUUFBVSxHQUNmTCxFQUFLTSxXQUFhLEdBQ2xCTixFQUFLTyxTQUFXLEdBQ2hCUCxFQUFLUSxZQUFjLEdBR25CUixFQUFLUyxHQUFHLE1BQU8sV0FFZEMsUUFBUUMsU0FBUyxXQUNoQlgsRUFBS1ksS0FBSyxhQUlDLFVBQVRkLEVBQWtCLENBWXJCLEdBWEFFLEVBQUthLGVBQWlCaEIsRUFFdEJHLEVBQUtjLElBQU1qQixFQUFTaUIsSUFDcEJkLEVBQUtlLFdBQWFsQixFQUFTbUIsT0FDM0JoQixFQUFLaUIsY0FBZ0JwQixFQUFTcUIsV0FFOUJyQixFQUFTUSxRQUFRYyxRQUFRLFNBQVVDLEVBQVFDLEdBQzFDckIsRUFBS0ssUUFBUWdCLEVBQUlDLGVBQWlCRixFQUNsQ3BCLEVBQUtNLFdBQVdpQixLQUFLRixFQUFLRCxLQUd2QnJDLFdBQVd5QyxlQUFnQixDQUM5QixJQUFJQyxFQUFX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LEdBQ1IzQyxFQUFLSSxNQUFRLGVBQ2IsTUFFRCxHQUFJUCxFQUFTMEUsT0FBU3ZFLEVBQUtvRCxLQUFNLENBQ2hDLElBQUlvQixFQUFVM0UsRUFBUzRFLE9BQU96RSxFQUFLb0QsTUFDbkMsR0FBc0IsbUJBQWxCcEQsRUFBSzJELFNBQStCLENBRXZDLElBREEsSUFBSWUsRUFBUyxJQUFJekMsT0FBT3VDLEVBQVFELFFBQ3ZCSSxFQUFJLEVBQUdBLEVBQUlILEVBQVFELE9BQVFJLElBQ25DRCxFQUFPQyxHQUE2QixJQUF4QkgsRUFBUUksV0FBV0QsR0FFaEMzRSxFQUFLdUIsS0FBS21ELFFBRVYxRSxFQUFLdUIsS0FBS2lELEVBQVN4RSxFQUFLMkQsVUFFekIzRCxFQUFLb0QsS0FBT3ZELEVBQVMwRSxPQUV0QixNQUNELElBQUssY0FDSixHQUFJM0UsRUFBSXNFLGFBQWUvRSxRQUFRTyxPQUFTRSxFQUFJQyxTQUMzQyxNQUNEQSxFQUFXRCxFQUFJQyxTQUNmRyxFQUFLdUIsS0FBSyxJQUFJVSxPQUFPLElBQUk0QyxXQUFXaEYsS0FDcEMsTUFDRCxJQUFLLDBCQUVKLEdBREFBLEVBQVdELEVBQUlDLFNBQ1hELEVBQUlzRSxhQUFlL0UsUUFBUU0sVUFBWUksRUFDMUMsTUFDREcsRUFBS3VCLEtBQUssSUFBSVUsT0FBTyxJQUFJNEMsV0FBV2hGLEtBQ3BDLE1BQ0QsSUFBSyxZQUVKLEdBREFBLEVBQVdELEVBQUlDLFNBQ1hELEVBQUlzRSxhQUFlL0UsUUFBUU0sUUFDOUIsTUFDRCxJQUFJbUQsRUFBUyxJQUFJUixPQUFPMEMsZUFDeEJsQyxFQUFPbUMsV0FBYSxXQUNmbkMsRUFBT0ksT0FBT2dDLFdBQWFoRixFQUFLb0QsT0FDbkNwRCxFQUFLdUIsS0FBSyxJQUFJVSxPQUFPLElBQUk0QyxXQUFXakMsRUFBT0ksT0FBT2lDLE1BQU1qRixFQUFLb0QsU0FDN0RwRCxFQUFLb0QsS0FBT1IsRUFBT0ksT0FBT2dDLGFBRzVCcEMsRUFBT3NDLE9BQVMsV0FDZmxGLEVBQUt1QixLQUFLLE9BR1hxQixFQUFPdUMsa0JBQWtCdEYsR0FLdkJHLEVBQUttRCxLQUFLZSxhQUFlL0UsUUFBUU8sTUFBdUIsY0FBZk0sRUFBS0ksT0FDakRKLEVBQUt1QixLQUFLIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy9zdHJlYW0taHR0cC9saWIvcmVzcG9uc2UuanMifQ==", - "\"use strict\";var Buffer=require(\"safe-buffer\").Buffer,isEncoding=Buffer.isEncoding||function(t){switch((t=\"\"+t)&&t.toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":case\"raw\":return!0;default:return!1}};function _normalizeEncoding(t){if(!t)return\"utf8\";for(var e;;)switch(t){case\"utf8\":case\"utf-8\":return\"utf8\";case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return\"utf16le\";case\"latin1\":case\"binary\":return\"latin1\";case\"base64\":case\"ascii\":case\"hex\":return t;default:if(e)return;t=(\"\"+t).toLowerCase(),e=!0}}function normalizeEncoding(t){var e=_normalizeEncoding(t);if(\"string\"!=typeof e&&(Buffer.isEncoding===isEncoding||!isEncoding(t)))throw new Error(\"Unknown encoding: \"+t);return e||t}function StringDecoder(t){var e;switch(this.encoding=normalizeEncoding(t),this.encoding){case\"utf16le\":this.text=utf16Text,this.end=utf16End,e=4;break;case\"utf8\":this.fillLast=utf8FillLast,e=4;break;case\"base64\":this.text=base64Text,this.end=base64End,e=3;break;default:return this.write=simpleWrite,void(this.end=simpleEnd)}this.lastNeed=0,this.lastTotal=0,this.lastChar=Buffer.allocUnsafe(e)}function utf8CheckByte(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function utf8CheckIncomplete(t,e,s){var i=e.length-1;if(i=0?(n>0&&(t.lastNeed=n-1),n):--i=0?(n>0&&(t.lastNeed=n-2),n):--i=0?(n>0&&(2===n?n=0:t.lastNeed=n-3),n):0}function utf8CheckExtraBytes(t,e,s){if(128!=(192&e[0]))return t.lastNeed=0,\"�\";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,\"�\";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,\"�\"}}function utf8FillLast(t){var e=this.lastTotal-this.lastNeed,s=utf8CheckExtraBytes(this,t,e);return void 0!==s?s:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function utf8Text(t,e){var s=utf8CheckIncomplete(this,t,e);if(!this.lastNeed)return t.toString(\"utf8\",e);this.lastTotal=s;var i=t.length-(s-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString(\"utf8\",e,i)}function utf8End(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+\"�\":e}function utf16Text(t,e){if((t.length-e)%2==0){var s=t.toString(\"utf16le\",e);if(s){var i=s.charCodeAt(s.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],s.slice(0,-1)}return s}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString(\"utf16le\",e,t.length-1)}function utf16End(t){var e=t&&t.length?this.write(t):\"\";if(this.lastNeed){var s=this.lastTotal-this.lastNeed;return e+this.lastChar.toString(\"utf16le\",0,s)}return e}function base64Text(t,e){var s=(t.length-e)%3;return 0===s?t.toString(\"base64\",e):(this.lastNeed=3-s,this.lastTotal=3,1===s?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString(\"base64\",e,t.length-s))}function base64End(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+this.lastChar.toString(\"base64\",0,3-this.lastNeed):e}function simpleWrite(t){return t.toString(this.encoding)}function simpleEnd(t){return t&&t.length?this.write(t):\"\"}exports.StringDecoder=StringDecoder,StringDecoder.prototype.write=function(t){if(0===t.length)return\"\";var e,s;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return\"\";s=this.lastNeed,this.lastNeed=0}else s=0;return s=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},exports.setImmediate=\"function\"==typeof setImmediate?setImmediate:function(e){var t=nextImmediateId++,i=!(arguments.length<2)&&slice.call(arguments,1);return immediateIds[t]=!0,nextTick(function(){immediateIds[t]&&(i?e.apply(null,i):e.call(null),exports.clearImmediate(t))}),t},exports.clearImmediate=\"function\"==typeof clearImmediate?clearImmediate:function(e){delete immediateIds[e]};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uanMiXSwibmFtZXMiOlsibmV4dFRpY2siLCJyZXF1aXJlIiwiYXBwbHkiLCJGdW5jdGlvbiIsInByb3RvdHlwZSIsInNsaWNlIiwiQXJyYXkiLCJpbW1lZGlhdGVJZHMiLCJuZXh0SW1tZWRpYXRlSWQiLCJUaW1lb3V0IiwiaWQiLCJjbGVhckZuIiwidGhpcyIsIl9pZCIsIl9jbGVhckZuIiwiZXhwb3J0cyIsInNldFRpbWVvdXQiLCJjYWxsIiwid2luZG93IiwiYXJndW1lbnRzIiwiY2xlYXJUaW1lb3V0Iiwic2V0SW50ZXJ2YWwiLCJjbGVhckludGVydmFsIiwidGltZW91dCIsImNsb3NlIiwidW5yZWYiLCJyZWYiLCJlbnJvbGwiLCJpdGVtIiwibXNlY3MiLCJfaWRsZVRpbWVvdXRJZCIsIl9pZGxlVGltZW91dCIsInVuZW5yb2xsIiwiX3VucmVmQWN0aXZlIiwiYWN0aXZlIiwiX29uVGltZW91dCIsInNldEltbWVkaWF0ZSIsImZuIiwiYXJncyIsImxlbmd0aCIsImNsZWFySW1tZWRpYXRlIl0sIm1hcHBpbmdzIjoiQUFBQSxJQUFJQSxTQUFXQyxRQUFRLHNCQUFzQkQsU0FDekNFLE1BQVFDLFNBQVNDLFVBQVVGLE1BQzNCRyxNQUFRQyxNQUFNRixVQUFVQyxNQUN4QkUsYUFBZSxHQUNmQyxnQkFBa0IsRUFhdEIsU0FBU0MsUUFBUUMsRUFBSUMsR0FDbkJDLEtBQUtDLElBQU1ILEVBQ1hFLEtBQUtFLFNBQVdILEVBWGxCSSxRQUFRQyxXQUFhLFdBQ25CLE9BQU8sSUFBSVAsUUFBUVAsTUFBTWUsS0FBS0QsV0FBWUUsT0FBUUMsV0FBWUMsZUFFaEVMLFFBQVFNLFlBQWMsV0FDcEIsT0FBTyxJQUFJWixRQUFRUCxNQUFNZSxLQUFLSSxZQUFhSCxPQUFRQyxXQUFZRyxnQkFFakVQLFFBQVFLLGFBQ1JMLFFBQVFPLGNBQWdCLFNBQVNDLEdBQVdBLEVBQVFDLFNBTXBEZixRQUFRTCxVQUFVcUIsTUFBUWhCLFFBQVFMLFVBQVVzQixJQUFNLGFBQ2xEakIsUUFBUUwsVUFBVW9CLE1BQVEsV0FDeEJaLEtBQUtFLFNBQVNHLEtBQUtDLE9BQVFOLEtBQUtDLE1BSWxDRSxRQUFRWSxPQUFTLFNBQVNDLEVBQU1DLEdBQzlCVCxhQUFhUSxFQUFLRSxnQkFDbEJGLEVBQUtHLGFBQWVGLEdBR3RCZCxRQUFRaUIsU0FBVyxTQUFTSixHQUMxQlIsYUFBYVEsRUFBS0UsZ0JBQ2xCRixFQUFLRyxjQUFnQixHQUd2QmhCLFFBQVFrQixhQUFlbEIsUUFBUW1CLE9BQVMsU0FBU04sR0FDL0NSLGFBQWFRLEVBQUtFLGdCQUVsQixJQUFJRCxFQUFRRCxFQUFLRyxhQUNiRixHQUFTLElBQ1hELEVBQUtFLGVBQWlCZCxXQUFXLFdBQzNCWSxFQUFLTyxZQUNQUCxFQUFLTyxjQUNOTixLQUtQZCxRQUFRcUIsYUFBdUMsbUJBQWpCQSxhQUE4QkEsYUFBZSxTQUFTQyxHQUNsRixJQUFJM0IsRUFBS0Ysa0JBQ0w4QixJQUFPbkIsVUFBVW9CLE9BQVMsSUFBWWxDLE1BQU1ZLEtBQUtFLFVBQVcsR0FrQmhFLE9BaEJBWixhQUFhRyxJQUFNLEVBRW5CVixTQUFTLFdBQ0hPLGFBQWFHLEtBR1g0QixFQUNGRCxFQUFHbkMsTUFBTSxLQUFNb0MsR0FFZkQsRUFBR3BCLEtBQUssTUFHVkYsUUFBUXlCLGVBQWU5QixNQUlwQkEsR0FHVEssUUFBUXlCLGVBQTJDLG1CQUFuQkEsZUFBZ0NBLGVBQWlCLFNBQVM5QixVQUNqRkgsYUFBYUciLCJmaWxlIjoiL2hvbWUvdHJhdmlzL2J1aWxkL0FQSURldlRvb2xzL2pzb24tc2NoZW1hLXJlZi1wYXJzZXIvbm9kZV9tb2R1bGVzL3RpbWVycy1icm93c2VyaWZ5L21haW4uanMifQ==", - "var Buffer=require(\"buffer\").Buffer;module.exports=function(e){if(e instanceof Uint8Array){if(0===e.byteOffset&&e.byteLength===e.buffer.byteLength)return e.buffer;if(\"function\"==typeof e.buffer.slice)return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}if(Buffer.isBuffer(e)){for(var f=new Uint8Array(e.length),r=e.length,t=0;t\",'\"',\"`\",\" \",\"\\r\",\"\\n\",\"\\t\"],unwise=[\"{\",\"}\",\"|\",\"\\\\\",\"^\",\"`\"].concat(delims),autoEscape=[\"'\"].concat(unwise),nonHostChars=[\"%\",\"/\",\"?\",\";\",\"#\"].concat(autoEscape),hostEndingChars=[\"/\",\"?\",\"#\"],hostnameMaxLen=255,hostnamePartPattern=/^[+a-z0-9A-Z_-]{0,63}$/,hostnamePartStart=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,unsafeProtocol={javascript:!0,\"javascript:\":!0},hostlessProtocol={javascript:!0,\"javascript:\":!0},slashedProtocol={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,\"http:\":!0,\"https:\":!0,\"ftp:\":!0,\"gopher:\":!0,\"file:\":!0},querystring=require(\"querystring\");function urlParse(t,s,e){if(t&&util.isObject(t)&&t instanceof Url)return t;var h=new Url;return h.parse(t,s,e),h}function urlFormat(t){return util.isString(t)&&(t=urlParse(t)),t instanceof Url?t.format():Url.prototype.format.call(t)}function urlResolve(t,s){return urlParse(t,!1,!0).resolve(s)}function urlResolveObject(t,s){return t?urlParse(t,!1,!0).resolveObject(s):s}Url.prototype.parse=function(t,s,e){if(!util.isString(t))throw new TypeError(\"Parameter 'url' must be a string, not \"+typeof t);var h=t.indexOf(\"?\"),r=-1!==h&&h127?b+=\"x\":b+=d[q];if(!b.match(hostnamePartPattern)){var j=y.slice(0,m),x=y.slice(m+1),U=d.match(hostnamePartStart);U&&(j.push(U[1]),x.unshift(U[2])),x.length&&(o=\"/\"+x.join(\".\")+o),this.hostname=j.join(\".\");break}}}this.hostname.length>hostnameMaxLen?this.hostname=\"\":this.hostname=this.hostname.toLowerCase(),g||(this.hostname=punycode.toASCII(this.hostname));var C=this.port?\":\"+this.port:\"\",A=this.hostname||\"\";this.host=A+C,this.href+=this.host,g&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),\"/\"!==o[0]&&(o=\"/\"+o))}if(!unsafeProtocol[l])for(m=0,P=autoEscape.length;m0)&&e.host.split(\"@\"))&&(e.auth=U.shift(),e.host=e.hostname=U.shift());return e.search=t.search,e.query=t.query,util.isNull(e.pathname)&&util.isNull(e.search)||(e.path=(e.pathname?e.pathname:\"\")+(e.search?e.search:\"\")),e.href=e.format(),e}if(!d.length)return e.pathname=null,e.search?e.path=\"/\"+e.search:e.path=null,e.href=e.format(),e;for(var q=d.slice(-1)[0],O=(e.host||t.host||d.length>1)&&(\".\"===q||\"..\"===q)||\"\"===q,j=0,x=d.length;x>=0;x--)\".\"===(q=d[x])?d.splice(x,1):\"..\"===q?(d.splice(x,1),j++):j&&(d.splice(x,1),j--);if(!y&&!P)for(;j--;j)d.unshift(\"..\");!y||\"\"===d[0]||d[0]&&\"/\"===d[0].charAt(0)||d.unshift(\"\"),O&&\"/\"!==d.join(\"/\").substr(-1)&&d.push(\"\");var U,C=\"\"===d[0]||d[0]&&\"/\"===d[0].charAt(0);b&&(e.hostname=e.host=C?\"\":d.length?d.shift():\"\",(U=!!(e.host&&e.host.indexOf(\"@\")>0)&&e.host.split(\"@\"))&&(e.auth=U.shift(),e.host=e.hostname=U.shift()));return(y=y||e.host&&d.length)&&!C&&d.unshift(\"\"),d.length?e.pathname=d.join(\"/\"):(e.pathname=null,e.path=null),util.isNull(e.pathname)&&util.isNull(e.search)||(e.path=(e.pathname?e.pathname:\"\")+(e.search?e.search:\"\")),e.auth=t.auth||e.auth,e.slashes=e.slashes||t.slashes,e.href=e.format(),e},Url.prototype.parseHost=function(){var t=this.host,s=portPattern.exec(t);s&&(\":\"!==(s=s[0])&&(this.port=s.substr(1)),t=t.substr(0,t.length-s.length)),t&&(this.hostname=t)};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVybC5qcyJdLCJuYW1lcyI6WyJwdW55Y29kZSIsInJlcXVpcmUiLCJ1dGlsIiwiVXJsIiwidGhpcyIsInByb3RvY29sIiwic2xhc2hlcyIsImF1dGgiLCJob3N0IiwicG9ydCIsImhvc3RuYW1lIiwiaGFzaCIsInNlYXJjaCIsInF1ZXJ5IiwicGF0aG5hbWUiLCJwYXRoIiwiaHJlZiIsImV4cG9ydHMiLCJwYXJzZSIsInVybFBhcnNlIiwicmVzb2x2ZSIsInVybFJlc29sdmUiLCJyZXNvbHZlT2JqZWN0IiwidXJsUmVzb2x2ZU9iamVjdCIsImZvcm1hdCIsInVybEZvcm1hdCIsInByb3RvY29sUGF0dGVybiIsInBvcnRQYXR0ZXJuIiwic2ltcGxlUGF0aFBhdHRlcm4iLCJkZWxpbXMiLCJ1bndpc2UiLCJjb25jYXQiLCJhdXRvRXNjYXBlIiwibm9uSG9zdENoYXJzIiwiaG9zdEVuZGluZ0NoYXJzIiwiaG9zdG5hbWVNYXhMZW4iLCJob3N0bmFtZVBhcnRQYXR0ZXJuIiwiaG9zdG5hbWVQYXJ0U3RhcnQiLCJ1bnNhZmVQcm90b2NvbCIsImphdmFzY3JpcHQiLCJqYXZhc2NyaXB0OiIsImhvc3RsZXNzUHJvdG9jb2wiLCJzbGFzaGVkUHJvdG9jb2wiLCJodHRwIiwiaHR0cHMiLCJmdHAiLCJnb3BoZXIiLCJmaWxlIiwiaHR0cDoiLCJodHRwczoiLCJmdHA6IiwiZ29waGVyOiIsImZpbGU6IiwicXVlcnlzdHJpbmciLCJ1cmwiLCJwYXJzZVF1ZXJ5U3RyaW5nIiwic2xhc2hlc0Rlbm90ZUhvc3QiLCJpc09iamVjdCIsInUiLCJvYmoiLCJpc1N0cmluZyIsInByb3RvdHlwZSIsImNhbGwiLCJzb3VyY2UiLCJyZWxhdGl2ZSIsIlR5cGVFcnJvciIsInF1ZXJ5SW5kZXgiLCJpbmRleE9mIiwic3BsaXR0ZXIiLCJ1U3BsaXQiLCJzcGxpdCIsInJlcGxhY2UiLCJyZXN0Iiwiam9pbiIsInRyaW0iLCJsZW5ndGgiLCJzaW1wbGVQYXRoIiwiZXhlYyIsInN1YnN0ciIsInByb3RvIiwibG93ZXJQcm90byIsInRvTG93ZXJDYXNlIiwibWF0Y2giLCJhdFNpZ24iLCJob3N0RW5kIiwiaSIsImhlYyIsImxhc3RJbmRleE9mIiwic2xpY2UiLCJkZWNvZGVVUklDb21wb25lbnQiLCJwYXJzZUhvc3QiLCJpcHY2SG9zdG5hbWUiLCJob3N0cGFydHMiLCJsIiwicGFydCIsIm5ld3BhcnQiLCJqIiwiayIsImNoYXJDb2RlQXQiLCJ2YWxpZFBhcnRzIiwibm90SG9zdCIsImJpdCIsInB1c2giLCJ1bnNoaWZ0IiwidG9BU0NJSSIsInAiLCJoIiwiYWUiLCJlc2MiLCJlbmNvZGVVUklDb21wb25lbnQiLCJlc2NhcGUiLCJxbSIsInMiLCJPYmplY3QiLCJrZXlzIiwic3RyaW5naWZ5IiwiY2hhckF0IiwicmVsIiwicmVzdWx0IiwidGtleXMiLCJ0ayIsInRrZXkiLCJya2V5cyIsInJrIiwicmtleSIsInYiLCJyZWxQYXRoIiwic2hpZnQiLCJpc1NvdXJjZUFicyIsImlzUmVsQWJzIiwibXVzdEVuZEFicyIsInJlbW92ZUFsbERvdHMiLCJzcmNQYXRoIiwicHN5Y2hvdGljIiwicG9wIiwiaXNOdWxsT3JVbmRlZmluZWQiLCJhdXRoSW5Ib3N0IiwiaXNOdWxsIiwibGFzdCIsImhhc1RyYWlsaW5nU2xhc2giLCJ1cCIsInNwbGljZSIsImlzQWJzb2x1dGUiXSwibWFwcGluZ3MiOiJBQXFCQSxhQUVBLElBQUlBLFNBQVdDLFFBQVEsWUFDbkJDLEtBQU9ELFFBQVEsVUFTbkIsU0FBU0UsTUFDUEMsS0FBS0MsU0FBVyxLQUNoQkQsS0FBS0UsUUFBVSxLQUNmRixLQUFLRyxLQUFPLEtBQ1pILEtBQUtJLEtBQU8sS0FDWkosS0FBS0ssS0FBTyxLQUNaTCxLQUFLTSxTQUFXLEtBQ2hCTixLQUFLTyxLQUFPLEtBQ1pQLEtBQUtRLE9BQVMsS0FDZFIsS0FBS1MsTUFBUSxLQUNiVCxLQUFLVSxTQUFXLEtBQ2hCVixLQUFLVyxLQUFPLEtBQ1pYLEtBQUtZLEtBQU8sS0FuQmRDLFFBQVFDLE1BQVFDLFNB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QWNaLEtBQUt1SSxPQUFPbkIsRUFBTzFHLFVBQ3ZEMEcsRUFBT3ZHLE1BQVF1RyxFQUFPeEcsU0FBV3dHLEVBQU94RyxTQUFXLEtBQ3BDd0csRUFBTzFHLE9BQVMwRyxFQUFPMUcsT0FBUyxLQUVqRDBHLEVBQU8vRyxLQUFPeUQsRUFBU3pELE1BQVErRyxFQUFPL0csS0FDdEMrRyxFQUFPaEgsUUFBVWdILEVBQU9oSCxTQUFXMEQsRUFBUzFELFFBQzVDZ0gsRUFBT3RHLEtBQU9zRyxFQUFPOUYsU0FDZDhGLEdBR1RuSCxJQUFJMEQsVUFBVTZCLFVBQVksV0FDeEIsSUFBSWxGLEVBQU9KLEtBQUtJLEtBQ1pDLEVBQU9rQixZQUFZa0QsS0FBS3JFLEdBQ3hCQyxJQUVXLE9BRGJBLEVBQU9BLEVBQUssTUFFVkwsS0FBS0ssS0FBT0EsRUFBS3FFLE9BQU8sSUFFMUJ0RSxFQUFPQSxFQUFLc0UsT0FBTyxFQUFHdEUsRUFBS21FLE9BQVNsRSxFQUFLa0UsU0FFdkNuRSxJQUFNSixLQUFLTSxTQUFXRiIsImZpbGUiOiIvaG9tZS90cmF2aXMvYnVpbGQvQVBJRGV2VG9vbHMvanNvbi1zY2hlbWEtcmVmLXBhcnNlci9ub2RlX21vZHVsZXMvdXJsL3VybC5qcyJ9", - "\"use strict\";module.exports={isString:function(n){return\"string\"==typeof n},isObject:function(n){return\"object\"==typeof n&&null!==n},isNull:function(n){return null===n},isNullOrUndefined:function(n){return null==n}};\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWwuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsImlzU3RyaW5nIiwiYXJnIiwiaXNPYmplY3QiLCJpc051bGwiLCJpc051bGxPclVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQUEsT0FBT0MsUUFBVSxDQUNmQyxTQUFVLFNBQVNDLEdBQ2pCLE1BQXVCLGlCQUFWLEdBRWZDLFNBQVUsU0FBU0QsR0FDakIsTUFBdUIsaUJBQVYsR0FBOEIsT0FBUkEsR0FFckNFLE9BQVEsU0FBU0YsR0FDZixPQUFlLE9BQVJBLEdBRVRHLGtCQUFtQixTQUFTSCxHQUMxQixPQUFjLE1BQVBBIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy91cmwvdXRpbC5qcyJ9", - "function deprecate(r,e){if(config(\"noDeprecation\"))return r;var o=!1;return function(){if(!o){if(config(\"throwDeprecation\"))throw new Error(e);config(\"traceDeprecation\")?console.trace(e):console.warn(e),o=!0}return r.apply(this,arguments)}}function config(r){try{if(!global.localStorage)return!1}catch(r){return!1}var e=global.localStorage[r];return null!=e&&\"true\"===String(e).toLowerCase()}module.exports=deprecate;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJyb3dzZXIuanMiXSwibmFtZXMiOlsiZGVwcmVjYXRlIiwiZm4iLCJtc2ciLCJjb25maWciLCJ3YXJuZWQiLCJFcnJvciIsImNvbnNvbGUiLCJ0cmFjZSIsIndhcm4iLCJhcHBseSIsInRoaXMiLCJhcmd1bWVudHMiLCJuYW1lIiwiZ2xvYmFsIiwibG9jYWxTdG9yYWdlIiwiXyIsInZhbCIsIlN0cmluZyIsInRvTG93ZXJDYXNlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBeUJBLFNBQVNBLFVBQVdDLEVBQUlDLEdBQ3RCLEdBQUlDLE9BQU8saUJBQ1QsT0FBT0YsRUFHVCxJQUFJRyxHQUFTLEVBZWIsT0FkQSxXQUNFLElBQUtBLEVBQVEsQ0FDWCxHQUFJRCxPQUFPLG9CQUNULE1BQU0sSUFBSUUsTUFBTUgsR0FDUEMsT0FBTyxvQkFDaEJHLFFBQVFDLE1BQU1MLEdBRWRJLFFBQVFFLEtBQUtOLEdBRWZFLEdBQVMsRUFFWCxPQUFPSCxFQUFHUSxNQUFNQyxLQUFNQyxZQWMxQixTQUFTUixPQUFRUyxHQUVmLElBQ0UsSUFBS0MsT0FBT0MsYUFBYyxPQUFPLEVBQ2pDLE1BQU9DLEdBQ1AsT0FBTyxFQUVULElBQUlDLEVBQU1ILE9BQU9DLGFBQWFGLEdBQzlCLE9BQUksTUFBUUksR0FDeUIsU0FBOUJDLE9BQU9ELEdBQUtFLGNBNURyQkMsT0FBT0MsUUFBVXBCIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9BUElEZXZUb29scy9qc29uLXNjaGVtYS1yZWYtcGFyc2VyL25vZGVfbW9kdWxlcy91dGlsLWRlcHJlY2F0ZS9icm93c2VyLmpzIn0=", - "module.exports=extend;var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(){for(var r={},e=0;e { // Most people will expect references to be bundled into the the "definitions" property, // so we always crawl that property first, if it exists. if (a === "definitions") { @@ -64,10 +64,11 @@ function crawl (parent, key, path, pathFromRoot, indirections, inventory, $refs, } }); - keys.forEach(function (key) { - var keyPath = Pointer.join(path, key); - var keyPathFromRoot = Pointer.join(pathFromRoot, key); - var value = obj[key]; + // eslint-disable-next-line no-shadow + for (let key of keys) { + let keyPath = Pointer.join(path, key); + let keyPathFromRoot = Pointer.join(pathFromRoot, key); + let value = obj[key]; if ($Ref.isAllowed$Ref(value)) { inventory$Ref(obj, key, path, keyPathFromRoot, indirections, inventory, $refs, options); @@ -75,7 +76,7 @@ function crawl (parent, key, path, pathFromRoot, indirections, inventory, $refs, else { crawl(obj, key, keyPath, keyPathFromRoot, indirections, inventory, $refs, options); } - }); + } } } } @@ -93,17 +94,17 @@ function crawl (parent, key, path, pathFromRoot, indirections, inventory, $refs, * @param {$RefParserOptions} options */ function inventory$Ref ($refParent, $refKey, path, pathFromRoot, indirections, inventory, $refs, options) { - var $ref = $refKey === null ? $refParent : $refParent[$refKey]; - var $refPath = url.resolve(path, $ref.$ref); - var pointer = $refs._resolve($refPath, options); - var depth = Pointer.parse(pathFromRoot).length; - var file = url.stripHash(pointer.path); - var hash = url.getHash(pointer.path); - var external = file !== $refs._root$Ref.path; - var extended = $Ref.isExtended$Ref($ref); + let $ref = $refKey === null ? $refParent : $refParent[$refKey]; + let $refPath = url.resolve(path, $ref.$ref); + let pointer = $refs._resolve($refPath, options); + let depth = Pointer.parse(pathFromRoot).length; + let file = url.stripHash(pointer.path); + let hash = url.getHash(pointer.path); + let external = file !== $refs._root$Ref.path; + let extended = $Ref.isExtended$Ref($ref); indirections += pointer.indirections; - var existingEntry = findInInventory(inventory, $refParent, $refKey); + let existingEntry = findInInventory(inventory, $refParent, $refKey); if (existingEntry) { // This $Ref has already been inventoried, so we don't need to process it again if (depth < existingEntry.depth || indirections < existingEntry.indirections) { @@ -115,18 +116,18 @@ function inventory$Ref ($refParent, $refKey, path, pathFromRoot, indirections, i } inventory.push({ - $ref: $ref, // The JSON Reference (e.g. {$ref: string}) + $ref, // The JSON Reference (e.g. {$ref: string}) parent: $refParent, // The object that contains this $ref pointer key: $refKey, // The key in `parent` that is the $ref pointer - pathFromRoot: pathFromRoot, // The path to the $ref pointer, from the JSON Schema root - depth: depth, // How far from the JSON Schema root is this $ref pointer? - file: file, // The file that the $ref pointer resolves to - hash: hash, // The hash within `file` that the $ref pointer resolves to + pathFromRoot, // The path to the $ref pointer, from the JSON Schema root + depth, // How far from the JSON Schema root is this $ref pointer? + file, // The file that the $ref pointer resolves to + hash, // The hash within `file` that the $ref pointer resolves to value: pointer.value, // The resolved value of the $ref pointer circular: pointer.circular, // Is this $ref pointer DIRECTLY circular? (i.e. it references itself) - extended: extended, // Does this $ref extend its resolved value? (i.e. it has extra properties, in addition to "$ref") - external: external, // Does this $ref pointer point to a file other than the main JSON Schema file? - indirections: indirections, // The number of indirect references that were traversed to resolve the value + extended, // Does this $ref extend its resolved value? (i.e. it has extra properties, in addition to "$ref") + external, // Does this $ref pointer point to a file other than the main JSON Schema file? + indirections, // The number of indirect references that were traversed to resolve the value }); // Recursively crawl the resolved value @@ -158,7 +159,7 @@ function inventory$Ref ($refParent, $refKey, path, pathFromRoot, indirections, i */ function remap (inventory) { // Group & sort all the $ref pointers, so they're in the order that we need to dereference/remap them - inventory.sort(function (a, b) { + inventory.sort((a, b) => { if (a.file !== b.file) { // Group all the $refs that point to the same file return a.file < b.file ? -1 : +1; @@ -186,8 +187,8 @@ function remap (inventory) { else { // Determine how far each $ref is from the "definitions" property. // Most people will expect references to be bundled into the the "definitions" property if possible. - var aDefinitionsIndex = a.pathFromRoot.lastIndexOf("/definitions"); - var bDefinitionsIndex = b.pathFromRoot.lastIndexOf("/definitions"); + let aDefinitionsIndex = a.pathFromRoot.lastIndexOf("/definitions"); + let bDefinitionsIndex = b.pathFromRoot.lastIndexOf("/definitions"); if (aDefinitionsIndex !== bDefinitionsIndex) { // Give higher priority to the $ref that's closer to the "definitions" property @@ -200,8 +201,8 @@ function remap (inventory) { } }); - var file, hash, pathFromRoot; - inventory.forEach(function (entry) { + let file, hash, pathFromRoot; + for (let entry of inventory) { // console.log('Re-mapping $ref pointer "%s" at %s', entry.$ref.$ref, entry.pathFromRoot); if (!entry.external) { @@ -233,15 +234,15 @@ function remap (inventory) { } // console.log(' new value: %s', (entry.$ref && entry.$ref.$ref) ? entry.$ref.$ref : '[object Object]'); - }); + } } /** * TODO */ function findInInventory (inventory, $refParent, $refKey) { - for (var i = 0; i < inventory.length; i++) { - var existingEntry = inventory[i]; + for (let i = 0; i < inventory.length; i++) { + let existingEntry = inventory[i]; if (existingEntry.parent === $refParent && existingEntry.key === $refKey) { return existingEntry; } @@ -249,6 +250,6 @@ function findInInventory (inventory, $refParent, $refKey) { } function removeFromInventory (inventory, entry) { - var index = inventory.indexOf(entry); + let index = inventory.indexOf(entry); inventory.splice(index, 1); } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/dereference.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/dereference.js index 65df740..5a97011 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/dereference.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/dereference.js @@ -1,149 +1,149 @@ -"use strict"; - -var $Ref = require("./ref"), - Pointer = require("./pointer"), - ono = require("ono"), - url = require("./util/url"); - -module.exports = dereference; - -/** - * Crawls the JSON schema, finds all JSON references, and dereferences them. - * This method mutates the JSON schema object, replacing JSON references with their resolved value. - * - * @param {$RefParser} parser - * @param {$RefParserOptions} options - */ -function dereference (parser, options) { - // console.log('Dereferencing $ref pointers in %s', parser.$refs._root$Ref.path); - var dereferenced = crawl(parser.schema, parser.$refs._root$Ref.path, "#", [], parser.$refs, options); - parser.$refs.circular = dereferenced.circular; - parser.schema = dereferenced.value; -} - -/** - * Recursively crawls the given value, and dereferences any JSON references. - * - * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored. - * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of `obj` from the schema root - * @param {object[]} parents - An array of the parent objects that have already been dereferenced - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {{value: object, circular: boolean}} - */ -function crawl (obj, path, pathFromRoot, parents, $refs, options) { - var dereferenced; - var result = { - value: obj, - circular: false - }; - - if (obj && typeof obj === "object") { - parents.push(obj); - - if ($Ref.isAllowed$Ref(obj, options)) { - dereferenced = dereference$Ref(obj, path, pathFromRoot, parents, $refs, options); - result.circular = dereferenced.circular; - result.value = dereferenced.value; - } - else { - Object.keys(obj).forEach(function (key) { - var keyPath = Pointer.join(path, key); - var keyPathFromRoot = Pointer.join(pathFromRoot, key); - var value = obj[key]; - var circular = false; - - if ($Ref.isAllowed$Ref(value, options)) { - dereferenced = dereference$Ref(value, keyPath, keyPathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - obj[key] = dereferenced.value; - } - else { - if (parents.indexOf(value) === -1) { - dereferenced = crawl(value, keyPath, keyPathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - obj[key] = dereferenced.value; - } - else { - circular = foundCircularReference(keyPath, $refs, options); - } - } - - // Set the "isCircular" flag if this or any other property is circular - result.circular = result.circular || circular; - }); - } - - parents.pop(); - } - - return result; -} - -/** - * Dereferences the given JSON Reference, and then crawls the resulting value. - * - * @param {{$ref: string}} $ref - The JSON Reference to resolve - * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of `$ref` from the schema root - * @param {object[]} parents - An array of the parent objects that have already been dereferenced - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {{value: object, circular: boolean}} - */ -function dereference$Ref ($ref, path, pathFromRoot, parents, $refs, options) { - // console.log('Dereferencing $ref pointer "%s" at %s', $ref.$ref, path); - - var $refPath = url.resolve(path, $ref.$ref); - var pointer = $refs._resolve($refPath, options); - - // Check for circular references - var directCircular = pointer.circular; - var circular = directCircular || parents.indexOf(pointer.value) !== -1; - circular && foundCircularReference(path, $refs, options); - - // Dereference the JSON reference - var dereferencedValue = $Ref.dereference($ref, pointer.value); - - // Crawl the dereferenced value (unless it's circular) - if (!circular) { - // Determine if the dereferenced value is circular - var dereferenced = crawl(dereferencedValue, pointer.path, pathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - dereferencedValue = dereferenced.value; - } - - if (circular && !directCircular && options.dereference.circular === "ignore") { - // The user has chosen to "ignore" circular references, so don't change the value - dereferencedValue = $ref; - } - - if (directCircular) { - // The pointer is a DIRECT circular reference (i.e. it references itself). - // So replace the $ref path with the absolute path from the JSON Schema root - dereferencedValue.$ref = pathFromRoot; - } - - return { - circular: circular, - value: dereferencedValue - }; -} - -/** - * Called when a circular reference is found. - * It sets the {@link $Refs#circular} flag, and throws an error if options.dereference.circular is false. - * - * @param {string} keyPath - The JSON Reference path of the circular reference - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {boolean} - always returns true, to indicate that a circular reference was found - */ -function foundCircularReference (keyPath, $refs, options) { - $refs.circular = true; - if (!options.dereference.circular) { - throw ono.reference("Circular $ref pointer found at %s", keyPath); - } - return true; -} +"use strict"; + +const $Ref = require("./ref"); +const Pointer = require("./pointer"); +const { ono } = require("ono"); +const url = require("./util/url"); + +module.exports = dereference; + +/** + * Crawls the JSON schema, finds all JSON references, and dereferences them. + * This method mutates the JSON schema object, replacing JSON references with their resolved value. + * + * @param {$RefParser} parser + * @param {$RefParserOptions} options + */ +function dereference (parser, options) { + // console.log('Dereferencing $ref pointers in %s', parser.$refs._root$Ref.path); + let dereferenced = crawl(parser.schema, parser.$refs._root$Ref.path, "#", [], parser.$refs, options); + parser.$refs.circular = dereferenced.circular; + parser.schema = dereferenced.value; +} + +/** + * Recursively crawls the given value, and dereferences any JSON references. + * + * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored. + * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash + * @param {string} pathFromRoot - The path of `obj` from the schema root + * @param {object[]} parents - An array of the parent objects that have already been dereferenced + * @param {$Refs} $refs + * @param {$RefParserOptions} options + * @returns {{value: object, circular: boolean}} + */ +function crawl (obj, path, pathFromRoot, parents, $refs, options) { + let dereferenced; + let result = { + value: obj, + circular: false + }; + + if (obj && typeof obj === "object") { + parents.push(obj); + + if ($Ref.isAllowed$Ref(obj, options)) { + dereferenced = dereference$Ref(obj, path, pathFromRoot, parents, $refs, options); + result.circular = dereferenced.circular; + result.value = dereferenced.value; + } + else { + for (let key of Object.keys(obj)) { + let keyPath = Pointer.join(path, key); + let keyPathFromRoot = Pointer.join(pathFromRoot, key); + let value = obj[key]; + let circular = false; + + if ($Ref.isAllowed$Ref(value, options)) { + dereferenced = dereference$Ref(value, keyPath, keyPathFromRoot, parents, $refs, options); + circular = dereferenced.circular; + obj[key] = dereferenced.value; + } + else { + if (parents.indexOf(value) === -1) { + dereferenced = crawl(value, keyPath, keyPathFromRoot, parents, $refs, options); + circular = dereferenced.circular; + obj[key] = dereferenced.value; + } + else { + circular = foundCircularReference(keyPath, $refs, options); + } + } + + // Set the "isCircular" flag if this or any other property is circular + result.circular = result.circular || circular; + } + } + + parents.pop(); + } + + return result; +} + +/** + * Dereferences the given JSON Reference, and then crawls the resulting value. + * + * @param {{$ref: string}} $ref - The JSON Reference to resolve + * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash + * @param {string} pathFromRoot - The path of `$ref` from the schema root + * @param {object[]} parents - An array of the parent objects that have already been dereferenced + * @param {$Refs} $refs + * @param {$RefParserOptions} options + * @returns {{value: object, circular: boolean}} + */ +function dereference$Ref ($ref, path, pathFromRoot, parents, $refs, options) { + // console.log('Dereferencing $ref pointer "%s" at %s', $ref.$ref, path); + + let $refPath = url.resolve(path, $ref.$ref); + let pointer = $refs._resolve($refPath, options); + + // Check for circular references + let directCircular = pointer.circular; + let circular = directCircular || parents.indexOf(pointer.value) !== -1; + circular && foundCircularReference(path, $refs, options); + + // Dereference the JSON reference + let dereferencedValue = $Ref.dereference($ref, pointer.value); + + // Crawl the dereferenced value (unless it's circular) + if (!circular) { + // Determine if the dereferenced value is circular + let dereferenced = crawl(dereferencedValue, pointer.path, pathFromRoot, parents, $refs, options); + circular = dereferenced.circular; + dereferencedValue = dereferenced.value; + } + + if (circular && !directCircular && options.dereference.circular === "ignore") { + // The user has chosen to "ignore" circular references, so don't change the value + dereferencedValue = $ref; + } + + if (directCircular) { + // The pointer is a DIRECT circular reference (i.e. it references itself). + // So replace the $ref path with the absolute path from the JSON Schema root + dereferencedValue.$ref = pathFromRoot; + } + + return { + circular, + value: dereferencedValue + }; +} + +/** + * Called when a circular reference is found. + * It sets the {@link $Refs#circular} flag, and throws an error if options.dereference.circular is false. + * + * @param {string} keyPath - The JSON Reference path of the circular reference + * @param {$Refs} $refs + * @param {$RefParserOptions} options + * @returns {boolean} - always returns true, to indicate that a circular reference was found + */ +function foundCircularReference (keyPath, $refs, options) { + $refs.circular = true; + if (!options.dereference.circular) { + throw ono.reference(`Circular $ref pointer found at ${keyPath}`); + } + return true; +} diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/index.d.ts b/forward_engineering/node_modules/json-schema-ref-parser/lib/index.d.ts index e071da9..614abb4 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/index.d.ts +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/index.d.ts @@ -1,389 +1,389 @@ -import { JSONSchema4, JSONSchema4Type, JSONSchema6, JSONSchema6Type } from 'json-schema'; - -export = $RefParser - -/** - * This is the default export of JSON Schema $Ref Parser. You can creates instances of this class using new $RefParser(), or you can just call its static methods. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md - */ -declare class $RefParser { - - /** - * The `schema` property is the parsed/bundled/dereferenced JSON Schema object. This is the same value that is passed to the callback function (or Promise) when calling the parse, bundle, or dereference methods. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#schema - */ - schema: $RefParser.JSONSchema - - /** - * The $refs property is a `$Refs` object, which lets you access all of the externally-referenced files in the schema, as well as easily get and set specific values in the schema using JSON pointers. - * - * This is the same value that is passed to the callback function (or Promise) when calling the `resolve` method. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#refs - */ - $refs: $RefParser.$Refs - - /** - * Dereferences all `$ref` pointers in the JSON Schema, replacing each reference with its resolved value. This results in a schema object that does not contain any `$ref` pointers. Instead, it's a normal JavaScript object tree that can easily be crawled and used just like any other JavaScript object. This is great for programmatic usage, especially when using tools that don't understand JSON references. - * - * The dereference method maintains object reference equality, meaning that all `$ref` pointers that point to the same object will be replaced with references to the same object. Again, this is great for programmatic usage, but it does introduce the risk of circular references, so be careful if you intend to serialize the schema using `JSON.stringify()`. Consider using the bundle method instead, which does not create circular references. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#dereferenceschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive the dereferenced schema object - */ - dereference(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - dereference(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * Dereferences all `$ref` pointers in the JSON Schema, replacing each reference with its resolved value. This results in a schema object that does not contain any `$ref` pointers. Instead, it's a normal JavaScript object tree that can easily be crawled and used just like any other JavaScript object. This is great for programmatic usage, especially when using tools that don't understand JSON references. - * - * The dereference method maintains object reference equality, meaning that all `$ref` pointers that point to the same object will be replaced with references to the same object. Again, this is great for programmatic usage, but it does introduce the risk of circular references, so be careful if you intend to serialize the schema using `JSON.stringify()`. Consider using the bundle method instead, which does not create circular references. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#dereferenceschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive the dereferenced schema object - */ - static dereference(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - static dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static dereference(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - static dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - static dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * Bundles all referenced files/URLs into a single schema that only has internal `$ref` pointers. This lets you split-up your schema however you want while you're building it, but easily combine all those files together when it's time to package or distribute the schema to other people. The resulting schema size will be small, since it will still contain internal JSON references rather than being fully-dereferenced. - * - * This also eliminates the risk of circular references, so the schema can be safely serialized using `JSON.stringify()`. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#bundleschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive the bundled schema object - */ - bundle(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - bundle(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * Bundles all referenced files/URLs into a single schema that only has internal `$ref` pointers. This lets you split-up your schema however you want while you're building it, but easily combine all those files together when it's time to package or distribute the schema to other people. The resulting schema size will be small, since it will still contain internal JSON references rather than being fully-dereferenced. - * - * This also eliminates the risk of circular references, so the schema can be safely serialized using `JSON.stringify()`. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#bundleschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive the bundled schema object - */ - static bundle(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - static bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static bundle(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - static bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - static bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* - * - * Parses the given JSON Schema file (in JSON or YAML format), and returns it as a JavaScript object. This method `does not` resolve `$ref` pointers or dereference anything. It simply parses one file and returns it. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#parseschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. The path can be absolute or relative. In Node, the path is relative to `process.cwd()`. In the browser, it's relative to the URL of the page. - * @param options (optional) - * @param callback (optional) A callback that will receive the parsed schema object, or an error - */ - parse(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - parse(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* - * - * Parses the given JSON Schema file (in JSON or YAML format), and returns it as a JavaScript object. This method `does not` resolve `$ref` pointers or dereference anything. It simply parses one file and returns it. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#parseschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. The path can be absolute or relative. In Node, the path is relative to `process.cwd()`. In the browser, it's relative to the URL of the page. - * @param options (optional) - * @param callback (optional) A callback that will receive the parsed schema object, or an error - */ - static parse(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; - static parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; - static parse(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; - static parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - static parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; - - /** - * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* - * - * Resolves all JSON references (`$ref` pointers) in the given JSON Schema file. If it references any other files/URLs, then they will be downloaded and resolved as well. This method **does not** dereference anything. It simply gives you a `$Refs` object, which is a map of all the resolved references and their values. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#resolveschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive a `$Refs` object - */ - resolve(schema: string | $RefParser.JSONSchema, callback: $RefParser.$RefsCallback): void; - resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; - resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; - resolve(schema: string | $RefParser.JSONSchema): Promise<$RefParser.$Refs>; - resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; - resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; - - /** - * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* - * - * Resolves all JSON references (`$ref` pointers) in the given JSON Schema file. If it references any other files/URLs, then they will be downloaded and resolved as well. This method **does not** dereference anything. It simply gives you a `$Refs` object, which is a map of all the resolved references and their values. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#resolveschema-options-callback - * - * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. - * @param options (optional) - * @param callback (optional) A callback that will receive a `$Refs` object - */ - static resolve(schema: string | $RefParser.JSONSchema, callback: $RefParser.$RefsCallback): void; - static resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; - static resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; - static resolve(schema: string | $RefParser.JSONSchema): Promise<$RefParser.$Refs>; - static resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; - static resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; -} - -declare namespace $RefParser { - - export type JSONSchema = JSONSchema4 | JSONSchema6; - export type SchemaCallback = (err: Error | null, schema?: JSONSchema) => any; - export type $RefsCallback = (err: Error | null, $refs?: $Refs) => any; - - /** - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/options.md - */ - export type Options = { - - /** - * The `parse` options determine how different types of files will be parsed. - * - * JSON Schema `$Ref` Parser comes with built-in JSON, YAML, plain-text, and binary parsers, any of which you can configure or disable. You can also add your own custom parsers if you want. - */ - parse?: { - json?: ParserOptions | boolean - yaml?: ParserOptions | boolean - text?: (ParserOptions & { encoding?: string }) | boolean - [key: string]: ParserOptions | boolean | undefined - } - - /** - * The `resolve` options control how JSON Schema $Ref Parser will resolve file paths and URLs, and how those files will be read/downloaded. - * - * JSON Schema `$Ref` Parser comes with built-in support for HTTP and HTTPS, as well as support for local files (when running in Node.js). You can configure or disable either of these built-in resolvers. You can also add your own custom resolvers if you want. - */ - resolve?: { - - /** - * Determines whether external $ref pointers will be resolved. If this option is disabled, then external `$ref` pointers will simply be ignored. - */ - external?: boolean - file?: Partial | boolean - http?: HTTPResolverOptions | boolean - } - - /** - * The `dereference` options control how JSON Schema `$Ref` Parser will dereference `$ref` pointers within the JSON schema. - */ - dereference?: { - - /** - * Determines whether circular `$ref` pointers are handled. - * - * If set to `false`, then a `ReferenceError` will be thrown if the schema contains any circular references. - * - * If set to `"ignore"`, then circular references will simply be ignored. No error will be thrown, but the `$Refs.circular` property will still be set to `true`. - */ - circular?: boolean | 'ignore' - } - } - - export interface HTTPResolverOptions extends Partial { - - /** - * You can specify any HTTP headers that should be sent when downloading files. For example, some servers may require you to set the `Accept` or `Referrer` header. - */ - headers?: object - - /** - * The amount of time (in milliseconds) to wait for a response from the server when downloading files. The default is 5 seconds. - */ - timeout?: number - - /** - * The maximum number of HTTP redirects to follow per file. The default is 5. To disable automatic following of redirects, set this to zero. - */ - redirects?: number - - /** - * Set this to `true` if you're downloading files from a CORS-enabled server that requires authentication - */ - withCredentials?: boolean - } - - /** - * JSON Schema `$Ref` Parser comes with built-in resolvers for HTTP and HTTPS URLs, as well as local filesystem paths (when running in Node.js). You can add your own custom resolvers to support additional protocols, or even replace any of the built-in resolvers with your own custom implementation. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/plugins/resolvers.md - */ - export interface ResolverOptions { - - /** - * All resolvers have an order property, even the built-in resolvers. If you don't specify an order property, then your resolver will run last. Specifying `order: 1`, like we did in this example, will make your resolver run first. Or you can squeeze your resolver in-between some of the built-in resolvers. For example, `order: 101` would make it run after the file resolver, but before the HTTP resolver. You can see the order of all the built-in resolvers by looking at their source code. - * - * The order property and canRead property are related to each other. For each file that JSON Schema $Ref Parser needs to resolve, it first determines which resolvers can read that file by checking their canRead property. If only one resolver matches a file, then only that one resolver is called, regardless of its order. If multiple resolvers match a file, then those resolvers are tried in order until one of them successfully reads the file. Once a resolver successfully reads the file, the rest of the resolvers are skipped. - */ - order?: number - - /** - * The `canRead` property tells JSON Schema `$Ref` Parser what kind of files your resolver can read. In this example, we've simply specified a regular expression that matches "mogodb://" URLs, but we could have used a simple boolean, or even a function with custom logic to determine which files to resolve. Here are examples of each approach: - */ - canRead: boolean | RegExp | string | string[] | ((file: FileInfo) => boolean) - - /** - * This is where the real work of a resolver happens. The `read` method accepts the same file info object as the `canRead` function, but rather than returning a boolean value, the `read` method should return the contents of the file. The file contents should be returned in as raw a form as possible, such as a string or a byte array. Any further parsing or processing should be done by parsers. - * - * Unlike the `canRead` function, the `read` method can also be asynchronous. This might be important if your resolver needs to read data from a database or some other external source. You can return your asynchronous value using either an ES6 Promise or a Node.js-style error-first callback. Of course, if your resolver has the ability to return its data synchronously, then that's fine too. Here are examples of all three approaches: - */ - read( - file: FileInfo, - callback?: (error: Error | null, data: string | null) => any - ): string | Buffer | Promise - } - - export interface ParserOptions { - - /** - * Parsers run in a specific order, relative to other parsers. For example, a parser with `order: 5` will run before a parser with `order: 10`. If a parser is unable to successfully parse a file, then the next parser is tried, until one succeeds or they all fail. - * - * You can change the order in which parsers run, which is useful if you know that most of your referenced files will be a certain type, or if you add your own custom parser that you want to run first. - */ - order?: number - - /** - * All of the built-in parsers allow empty files by default. The JSON and YAML parsers will parse empty files as `undefined`. The text parser will parse empty files as an empty string. The binary parser will parse empty files as an empty byte array. - * - * You can set `allowEmpty: false` on any parser, which will cause an error to be thrown if a file empty. - */ - allowEmpty?: boolean - - /** - * Determines which parsers will be used for which files. - * - * A regular expression can be used to match files by their full path. A string (or array of strings) can be used to match files by their file extension. Or a function can be used to perform more complex matching logic. See the custom parser docs for details. - */ - canParse?: boolean | RegExp | string | string[] | ((file: FileInfo) => boolean) - } - - /** - * JSON Schema `$Ref` Parser supports plug-ins, such as resolvers and parsers. These plug-ins can have methods such as `canRead()`, `read()`, `canParse()`, and `parse()`. All of these methods accept the same object as their parameter: an object containing information about the file being read or parsed. - * - * The file info object currently only consists of a few properties, but it may grow in the future if plug-ins end up needing more information. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/plugins/file-info-object.md - */ - export interface FileInfo { - - /** - * The full URL of the file. This could be any type of URL, including "http://", "https://", "file://", "ftp://", "mongodb://", or even a local filesystem path (when running in Node.js). - */ - url: string - - /** - * The lowercase file extension, such as ".json", ".yaml", ".txt", etc. - */ - extension: string - - /** - * The raw file contents, in whatever form they were returned by the resolver that read the file. - */ - data: string | Buffer - } - - /** - * When you call the resolve method, the value that gets passed to the callback function (or Promise) is a $Refs object. This same object is accessible via the parser.$refs property of $RefParser objects. - * - * This object is a map of JSON References and their resolved values. It also has several convenient helper methods that make it easy for you to navigate and manipulate the JSON References. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md - */ - export class $Refs { - /** - * This property is true if the schema contains any circular references. You may want to check this property before serializing the dereferenced schema as JSON, since JSON.stringify() does not support circular references by default. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#circular - */ - circular: boolean - - /** - * Returns the paths/URLs of all the files in your schema (including the main schema file). - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#pathstypes - * - * @param types (optional) Optionally only return certain types of paths ("file", "http", etc.) - */ - paths(...types: string[]): string[] - - /** - * Returns a map of paths/URLs and their correspond values. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#valuestypes - * - * @param types (optional) Optionally only return values from certain locations ("file", "http", etc.) - */ - values(...types: string[]): { [url: string]: $RefParser.JSONSchema } - - /** - * Returns `true` if the given path exists in the schema; otherwise, returns `false` - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#existsref - * - * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash - */ - exists($ref: string): boolean - - /** - * Gets the value at the given path in the schema. Throws an error if the path does not exist. - * - * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#getref - * - * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash - */ - get($ref: string): JSONSchema4Type | JSONSchema6Type - - /** - * Sets the value at the given path in the schema. If the property, or any of its parents, don't exist, they will be created. - * - * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash - * @param value The value to assign. Can be anything (object, string, number, etc.) - */ - set($ref: string, value: JSONSchema4Type | JSONSchema6Type): void - } - -} +import { JSONSchema4, JSONSchema4Type, JSONSchema6, JSONSchema6Type } from 'json-schema'; + +export = $RefParser + +/** + * This is the default export of JSON Schema $Ref Parser. You can creates instances of this class using new $RefParser(), or you can just call its static methods. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md + */ +declare class $RefParser { + + /** + * The `schema` property is the parsed/bundled/dereferenced JSON Schema object. This is the same value that is passed to the callback function (or Promise) when calling the parse, bundle, or dereference methods. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#schema + */ + schema: $RefParser.JSONSchema + + /** + * The $refs property is a `$Refs` object, which lets you access all of the externally-referenced files in the schema, as well as easily get and set specific values in the schema using JSON pointers. + * + * This is the same value that is passed to the callback function (or Promise) when calling the `resolve` method. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#refs + */ + $refs: $RefParser.$Refs + + /** + * Dereferences all `$ref` pointers in the JSON Schema, replacing each reference with its resolved value. This results in a schema object that does not contain any `$ref` pointers. Instead, it's a normal JavaScript object tree that can easily be crawled and used just like any other JavaScript object. This is great for programmatic usage, especially when using tools that don't understand JSON references. + * + * The dereference method maintains object reference equality, meaning that all `$ref` pointers that point to the same object will be replaced with references to the same object. Again, this is great for programmatic usage, but it does introduce the risk of circular references, so be careful if you intend to serialize the schema using `JSON.stringify()`. Consider using the bundle method instead, which does not create circular references. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#dereferenceschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive the dereferenced schema object + */ + dereference(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + dereference(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * Dereferences all `$ref` pointers in the JSON Schema, replacing each reference with its resolved value. This results in a schema object that does not contain any `$ref` pointers. Instead, it's a normal JavaScript object tree that can easily be crawled and used just like any other JavaScript object. This is great for programmatic usage, especially when using tools that don't understand JSON references. + * + * The dereference method maintains object reference equality, meaning that all `$ref` pointers that point to the same object will be replaced with references to the same object. Again, this is great for programmatic usage, but it does introduce the risk of circular references, so be careful if you intend to serialize the schema using `JSON.stringify()`. Consider using the bundle method instead, which does not create circular references. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#dereferenceschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive the dereferenced schema object + */ + static dereference(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + static dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static dereference(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + static dereference(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + static dereference(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * Bundles all referenced files/URLs into a single schema that only has internal `$ref` pointers. This lets you split-up your schema however you want while you're building it, but easily combine all those files together when it's time to package or distribute the schema to other people. The resulting schema size will be small, since it will still contain internal JSON references rather than being fully-dereferenced. + * + * This also eliminates the risk of circular references, so the schema can be safely serialized using `JSON.stringify()`. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#bundleschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive the bundled schema object + */ + bundle(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + bundle(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * Bundles all referenced files/URLs into a single schema that only has internal `$ref` pointers. This lets you split-up your schema however you want while you're building it, but easily combine all those files together when it's time to package or distribute the schema to other people. The resulting schema size will be small, since it will still contain internal JSON references rather than being fully-dereferenced. + * + * This also eliminates the risk of circular references, so the schema can be safely serialized using `JSON.stringify()`. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#bundleschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive the bundled schema object + */ + static bundle(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + static bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static bundle(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + static bundle(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + static bundle(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* + * + * Parses the given JSON Schema file (in JSON or YAML format), and returns it as a JavaScript object. This method `does not` resolve `$ref` pointers or dereference anything. It simply parses one file and returns it. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#parseschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. The path can be absolute or relative. In Node, the path is relative to `process.cwd()`. In the browser, it's relative to the URL of the page. + * @param options (optional) + * @param callback (optional) A callback that will receive the parsed schema object, or an error + */ + parse(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + parse(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* + * + * Parses the given JSON Schema file (in JSON or YAML format), and returns it as a JavaScript object. This method `does not` resolve `$ref` pointers or dereference anything. It simply parses one file and returns it. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#parseschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. The path can be absolute or relative. In Node, the path is relative to `process.cwd()`. In the browser, it's relative to the URL of the page. + * @param options (optional) + * @param callback (optional) A callback that will receive the parsed schema object, or an error + */ + static parse(schema: string | $RefParser.JSONSchema, callback: $RefParser.SchemaCallback): void; + static parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.SchemaCallback): void; + static parse(schema: string | $RefParser.JSONSchema): Promise<$RefParser.JSONSchema>; + static parse(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + static parse(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.JSONSchema>; + + /** + * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* + * + * Resolves all JSON references (`$ref` pointers) in the given JSON Schema file. If it references any other files/URLs, then they will be downloaded and resolved as well. This method **does not** dereference anything. It simply gives you a `$Refs` object, which is a map of all the resolved references and their values. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#resolveschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive a `$Refs` object + */ + resolve(schema: string | $RefParser.JSONSchema, callback: $RefParser.$RefsCallback): void; + resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; + resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; + resolve(schema: string | $RefParser.JSONSchema): Promise<$RefParser.$Refs>; + resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; + resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; + + /** + * *This method is used internally by other methods, such as `bundle` and `dereference`. You probably won't need to call this method yourself.* + * + * Resolves all JSON references (`$ref` pointers) in the given JSON Schema file. If it references any other files/URLs, then they will be downloaded and resolved as well. This method **does not** dereference anything. It simply gives you a `$Refs` object, which is a map of all the resolved references and their values. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/ref-parser.md#resolveschema-options-callback + * + * @param schema A JSON Schema object, or the file path or URL of a JSON Schema file. See the `parse` method for more info. + * @param options (optional) + * @param callback (optional) A callback that will receive a `$Refs` object + */ + static resolve(schema: string | $RefParser.JSONSchema, callback: $RefParser.$RefsCallback): void; + static resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; + static resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options, callback: $RefParser.$RefsCallback): void; + static resolve(schema: string | $RefParser.JSONSchema): Promise<$RefParser.$Refs>; + static resolve(schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; + static resolve(baseUrl: string, schema: string | $RefParser.JSONSchema, options: $RefParser.Options): Promise<$RefParser.$Refs>; +} + +declare namespace $RefParser { + + export type JSONSchema = JSONSchema4 | JSONSchema6; + export type SchemaCallback = (err: Error | null, schema?: JSONSchema) => any; + export type $RefsCallback = (err: Error | null, $refs?: $Refs) => any; + + /** + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/options.md + */ + export type Options = { + + /** + * The `parse` options determine how different types of files will be parsed. + * + * JSON Schema `$Ref` Parser comes with built-in JSON, YAML, plain-text, and binary parsers, any of which you can configure or disable. You can also add your own custom parsers if you want. + */ + parse?: { + json?: ParserOptions | boolean + yaml?: ParserOptions | boolean + text?: (ParserOptions & { encoding?: string }) | boolean + [key: string]: ParserOptions | boolean | undefined + } + + /** + * The `resolve` options control how JSON Schema $Ref Parser will resolve file paths and URLs, and how those files will be read/downloaded. + * + * JSON Schema `$Ref` Parser comes with built-in support for HTTP and HTTPS, as well as support for local files (when running in Node.js). You can configure or disable either of these built-in resolvers. You can also add your own custom resolvers if you want. + */ + resolve?: { + + /** + * Determines whether external $ref pointers will be resolved. If this option is disabled, then external `$ref` pointers will simply be ignored. + */ + external?: boolean + file?: Partial | boolean + http?: HTTPResolverOptions | boolean + } + + /** + * The `dereference` options control how JSON Schema `$Ref` Parser will dereference `$ref` pointers within the JSON schema. + */ + dereference?: { + + /** + * Determines whether circular `$ref` pointers are handled. + * + * If set to `false`, then a `ReferenceError` will be thrown if the schema contains any circular references. + * + * If set to `"ignore"`, then circular references will simply be ignored. No error will be thrown, but the `$Refs.circular` property will still be set to `true`. + */ + circular?: boolean | 'ignore' + } + } + + export interface HTTPResolverOptions extends Partial { + + /** + * You can specify any HTTP headers that should be sent when downloading files. For example, some servers may require you to set the `Accept` or `Referrer` header. + */ + headers?: object + + /** + * The amount of time (in milliseconds) to wait for a response from the server when downloading files. The default is 5 seconds. + */ + timeout?: number + + /** + * The maximum number of HTTP redirects to follow per file. The default is 5. To disable automatic following of redirects, set this to zero. + */ + redirects?: number + + /** + * Set this to `true` if you're downloading files from a CORS-enabled server that requires authentication + */ + withCredentials?: boolean + } + + /** + * JSON Schema `$Ref` Parser comes with built-in resolvers for HTTP and HTTPS URLs, as well as local filesystem paths (when running in Node.js). You can add your own custom resolvers to support additional protocols, or even replace any of the built-in resolvers with your own custom implementation. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/plugins/resolvers.md + */ + export interface ResolverOptions { + + /** + * All resolvers have an order property, even the built-in resolvers. If you don't specify an order property, then your resolver will run last. Specifying `order: 1`, like we did in this example, will make your resolver run first. Or you can squeeze your resolver in-between some of the built-in resolvers. For example, `order: 101` would make it run after the file resolver, but before the HTTP resolver. You can see the order of all the built-in resolvers by looking at their source code. + * + * The order property and canRead property are related to each other. For each file that JSON Schema $Ref Parser needs to resolve, it first determines which resolvers can read that file by checking their canRead property. If only one resolver matches a file, then only that one resolver is called, regardless of its order. If multiple resolvers match a file, then those resolvers are tried in order until one of them successfully reads the file. Once a resolver successfully reads the file, the rest of the resolvers are skipped. + */ + order?: number + + /** + * The `canRead` property tells JSON Schema `$Ref` Parser what kind of files your resolver can read. In this example, we've simply specified a regular expression that matches "mogodb://" URLs, but we could have used a simple boolean, or even a function with custom logic to determine which files to resolve. Here are examples of each approach: + */ + canRead: boolean | RegExp | string | string[] | ((file: FileInfo) => boolean) + + /** + * This is where the real work of a resolver happens. The `read` method accepts the same file info object as the `canRead` function, but rather than returning a boolean value, the `read` method should return the contents of the file. The file contents should be returned in as raw a form as possible, such as a string or a byte array. Any further parsing or processing should be done by parsers. + * + * Unlike the `canRead` function, the `read` method can also be asynchronous. This might be important if your resolver needs to read data from a database or some other external source. You can return your asynchronous value using either an ES6 Promise or a Node.js-style error-first callback. Of course, if your resolver has the ability to return its data synchronously, then that's fine too. Here are examples of all three approaches: + */ + read( + file: FileInfo, + callback?: (error: Error | null, data: string | null) => any + ): string | Buffer | Promise + } + + export interface ParserOptions { + + /** + * Parsers run in a specific order, relative to other parsers. For example, a parser with `order: 5` will run before a parser with `order: 10`. If a parser is unable to successfully parse a file, then the next parser is tried, until one succeeds or they all fail. + * + * You can change the order in which parsers run, which is useful if you know that most of your referenced files will be a certain type, or if you add your own custom parser that you want to run first. + */ + order?: number + + /** + * All of the built-in parsers allow empty files by default. The JSON and YAML parsers will parse empty files as `undefined`. The text parser will parse empty files as an empty string. The binary parser will parse empty files as an empty byte array. + * + * You can set `allowEmpty: false` on any parser, which will cause an error to be thrown if a file empty. + */ + allowEmpty?: boolean + + /** + * Determines which parsers will be used for which files. + * + * A regular expression can be used to match files by their full path. A string (or array of strings) can be used to match files by their file extension. Or a function can be used to perform more complex matching logic. See the custom parser docs for details. + */ + canParse?: boolean | RegExp | string | string[] | ((file: FileInfo) => boolean) + } + + /** + * JSON Schema `$Ref` Parser supports plug-ins, such as resolvers and parsers. These plug-ins can have methods such as `canRead()`, `read()`, `canParse()`, and `parse()`. All of these methods accept the same object as their parameter: an object containing information about the file being read or parsed. + * + * The file info object currently only consists of a few properties, but it may grow in the future if plug-ins end up needing more information. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/plugins/file-info-object.md + */ + export interface FileInfo { + + /** + * The full URL of the file. This could be any type of URL, including "http://", "https://", "file://", "ftp://", "mongodb://", or even a local filesystem path (when running in Node.js). + */ + url: string + + /** + * The lowercase file extension, such as ".json", ".yaml", ".txt", etc. + */ + extension: string + + /** + * The raw file contents, in whatever form they were returned by the resolver that read the file. + */ + data: string | Buffer + } + + /** + * When you call the resolve method, the value that gets passed to the callback function (or Promise) is a $Refs object. This same object is accessible via the parser.$refs property of $RefParser objects. + * + * This object is a map of JSON References and their resolved values. It also has several convenient helper methods that make it easy for you to navigate and manipulate the JSON References. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md + */ + export class $Refs { + /** + * This property is true if the schema contains any circular references. You may want to check this property before serializing the dereferenced schema as JSON, since JSON.stringify() does not support circular references by default. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#circular + */ + circular: boolean + + /** + * Returns the paths/URLs of all the files in your schema (including the main schema file). + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#pathstypes + * + * @param types (optional) Optionally only return certain types of paths ("file", "http", etc.) + */ + paths(...types: string[]): string[] + + /** + * Returns a map of paths/URLs and their correspond values. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#valuestypes + * + * @param types (optional) Optionally only return values from certain locations ("file", "http", etc.) + */ + values(...types: string[]): { [url: string]: $RefParser.JSONSchema } + + /** + * Returns `true` if the given path exists in the schema; otherwise, returns `false` + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#existsref + * + * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash + */ + exists($ref: string): boolean + + /** + * Gets the value at the given path in the schema. Throws an error if the path does not exist. + * + * See https://github.com/APIDevTools/json-schema-ref-parser/blob/master/docs/refs.md#getref + * + * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash + */ + get($ref: string): JSONSchema4Type | JSONSchema6Type + + /** + * Sets the value at the given path in the schema. If the property, or any of its parents, don't exist, they will be created. + * + * @param $ref The JSON Reference path, optionally with a JSON Pointer in the hash + * @param value The value to assign. Can be anything (object, string, number, etc.) + */ + set($ref: string, value: JSONSchema4Type | JSONSchema6Type): void + } + +} diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/index.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/index.js index e4a9b97..762b967 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/index.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/index.js @@ -1,15 +1,15 @@ "use strict"; -var Options = require("./options"), - $Refs = require("./refs"), - parse = require("./parse"), - normalizeArgs = require("./normalize-args"), - resolveExternal = require("./resolve-external"), - bundle = require("./bundle"), - dereference = require("./dereference"), - url = require("./util/url"), - maybe = require("call-me-maybe"), - ono = require("ono"); +const Options = require("./options"); +const $Refs = require("./refs"); +const parse = require("./parse"); +const normalizeArgs = require("./normalize-args"); +const resolveExternal = require("./resolve-external"); +const bundle = require("./bundle"); +const dereference = require("./dereference"); +const url = require("./util/url"); +const maybe = require("call-me-maybe"); +const { ono } = require("ono"); module.exports = $RefParser; module.exports.YAML = require("./util/yaml"); @@ -50,8 +50,8 @@ function $RefParser () { * @returns {Promise} - The returned promise resolves with the parsed JSON schema object. */ $RefParser.parse = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); + let Class = this; // eslint-disable-line consistent-this + let instance = new Class(); return instance.parse.apply(instance, arguments); }; @@ -66,12 +66,12 @@ $RefParser.parse = function (path, schema, options, callback) { * @param {function} [callback] - An error-first callback. The second parameter is the parsed JSON schema object. * @returns {Promise} - The returned promise resolves with the parsed JSON schema object. */ -$RefParser.prototype.parse = function (path, schema, options, callback) { - var args = normalizeArgs(arguments); - var promise; +$RefParser.prototype.parse = async function (path, schema, options, callback) { + let args = normalizeArgs(arguments); + let promise; if (!args.path && !args.schema) { - var err = ono("Expected a file path, URL, or object. Got %s", args.path || args.schema); + let err = ono(`Expected a file path, URL, or object. Got ${args.path || args.schema}`); return maybe(args.callback, Promise.reject(err)); } @@ -85,7 +85,7 @@ $RefParser.prototype.parse = function (path, schema, options, callback) { // So we're being generous here and doing the conversion automatically. // This is not intended to be a 100% bulletproof solution. // If it doesn't work for your use-case, then use a URL instead. - var pathType = "http"; + let pathType = "http"; if (url.isFileSystemPath(args.path)) { args.path = url.fromFileSystemPath(args.path); pathType = "file"; @@ -97,7 +97,7 @@ $RefParser.prototype.parse = function (path, schema, options, callback) { if (args.schema && typeof args.schema === "object") { // A schema object was passed-in. // So immediately add a new $Ref with the schema object as its value - var $ref = this.$refs._add(args.path); + let $ref = this.$refs._add(args.path); $ref.value = args.schema; $ref.pathType = pathType; promise = Promise.resolve(args.schema); @@ -107,20 +107,21 @@ $RefParser.prototype.parse = function (path, schema, options, callback) { promise = parse(args.path, this.$refs, args.options); } - var me = this; - return promise - .then(function (result) { - if (!result || typeof result !== "object" || Buffer.isBuffer(result)) { - throw ono.syntax('"%s" is not a valid JSON Schema', me.$refs._root$Ref.path || result); - } - else { - me.schema = result; - return maybe(args.callback, Promise.resolve(me.schema)); - } - }) - .catch(function (e) { - return maybe(args.callback, Promise.reject(e)); - }); + let me = this; + try { + let result = await promise; + + if (!result || typeof result !== "object" || Buffer.isBuffer(result)) { + throw ono.syntax(`"${me.$refs._root$Ref.path || result}" is not a valid JSON Schema`); + } + else { + me.schema = result; + return maybe(args.callback, Promise.resolve(me.schema)); + } + } + catch (e) { + return maybe(args.callback, Promise.reject(e)); + } }; /** @@ -137,8 +138,8 @@ $RefParser.prototype.parse = function (path, schema, options, callback) { * The returned promise resolves with a {@link $Refs} object containing the resolved JSON references */ $RefParser.resolve = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); + let Class = this; // eslint-disable-line consistent-this + let instance = new Class(); return instance.resolve.apply(instance, arguments); }; @@ -155,20 +156,18 @@ $RefParser.resolve = function (path, schema, options, callback) { * @returns {Promise} * The returned promise resolves with a {@link $Refs} object containing the resolved JSON references */ -$RefParser.prototype.resolve = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.parse(args.path, args.schema, args.options) - .then(function () { - return resolveExternal(me, args.options); - }) - .then(function () { - return maybe(args.callback, Promise.resolve(me.$refs)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); +$RefParser.prototype.resolve = async function (path, schema, options, callback) { + let me = this; + let args = normalizeArgs(arguments); + + try { + await this.parse(args.path, args.schema, args.options); + await resolveExternal(me, args.options); + return maybe(args.callback, Promise.resolve(me.$refs)); + } + catch (err) { + return maybe(args.callback, Promise.reject(err)); + } }; /** @@ -183,8 +182,8 @@ $RefParser.prototype.resolve = function (path, schema, options, callback) { * @returns {Promise} - The returned promise resolves with the bundled JSON schema object. */ $RefParser.bundle = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); + let Class = this; // eslint-disable-line consistent-this + let instance = new Class(); return instance.bundle.apply(instance, arguments); }; @@ -199,18 +198,18 @@ $RefParser.bundle = function (path, schema, options, callback) { * @param {function} [callback] - An error-first callback. The second parameter is the bundled JSON schema object * @returns {Promise} - The returned promise resolves with the bundled JSON schema object. */ -$RefParser.prototype.bundle = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.resolve(args.path, args.schema, args.options) - .then(function () { - bundle(me, args.options); - return maybe(args.callback, Promise.resolve(me.schema)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); +$RefParser.prototype.bundle = async function (path, schema, options, callback) { + let me = this; + let args = normalizeArgs(arguments); + + try { + await this.resolve(args.path, args.schema, args.options); + bundle(me, args.options); + return maybe(args.callback, Promise.resolve(me.schema)); + } + catch (err) { + return maybe(args.callback, Promise.reject(err)); + } }; /** @@ -224,8 +223,8 @@ $RefParser.prototype.bundle = function (path, schema, options, callback) { * @returns {Promise} - The returned promise resolves with the dereferenced JSON schema object. */ $RefParser.dereference = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); + let Class = this; // eslint-disable-line consistent-this + let instance = new Class(); return instance.dereference.apply(instance, arguments); }; @@ -239,16 +238,16 @@ $RefParser.dereference = function (path, schema, options, callback) { * @param {function} [callback] - An error-first callback. The second parameter is the dereferenced JSON schema object * @returns {Promise} - The returned promise resolves with the dereferenced JSON schema object. */ -$RefParser.prototype.dereference = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.resolve(args.path, args.schema, args.options) - .then(function () { - dereference(me, args.options); - return maybe(args.callback, Promise.resolve(me.schema)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); +$RefParser.prototype.dereference = async function (path, schema, options, callback) { + let me = this; + let args = normalizeArgs(arguments); + + try { + await this.resolve(args.path, args.schema, args.options); + dereference(me, args.options); + return maybe(args.callback, Promise.resolve(me.schema)); + } + catch (err) { + return maybe(args.callback, Promise.reject(err)); + } }; diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/normalize-args.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/normalize-args.js index 4c39c07..1d48fe4 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/normalize-args.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/normalize-args.js @@ -1,6 +1,6 @@ "use strict"; -var Options = require("./options"); +const Options = require("./options"); module.exports = normalizeArgs; @@ -11,7 +11,7 @@ module.exports = normalizeArgs; * @returns {object} */ function normalizeArgs (args) { - var path, schema, options, callback; + let path, schema, options, callback; args = Array.prototype.slice.call(args); if (typeof args[args.length - 1] === "function") { @@ -45,9 +45,9 @@ function normalizeArgs (args) { } return { - path: path, - schema: schema, - options: options, - callback: callback + path, + schema, + options, + callback }; } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/options.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/options.js index 133b55e..bfe3ad9 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/options.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/options.js @@ -1,12 +1,12 @@ /* eslint lines-around-comment: [2, {beforeBlockComment: false}] */ "use strict"; -var jsonParser = require("./parsers/json"), - yamlParser = require("./parsers/yaml"), - textParser = require("./parsers/text"), - binaryParser = require("./parsers/binary"), - fileResolver = require("./resolvers/file"), - httpResolver = require("./resolvers/http"); +const jsonParser = require("./parsers/json"); +const yamlParser = require("./parsers/yaml"); +const textParser = require("./parsers/text"); +const binaryParser = require("./parsers/binary"); +const fileResolver = require("./resolvers/file"); +const httpResolver = require("./resolvers/http"); module.exports = $RefParserOptions; @@ -79,11 +79,11 @@ $RefParserOptions.defaults = { */ function merge (target, source) { if (isMergeable(source)) { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var sourceSetting = source[key]; - var targetSetting = target[key]; + let keys = Object.keys(source); + for (let i = 0; i < keys.length; i++) { + let key = keys[i]; + let sourceSetting = source[key]; + let targetSetting = target[key]; if (isMergeable(sourceSetting)) { // It's a nested object, so merge it recursively diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/parse.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/parse.js index 063a80b..d505d3d 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/parse.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/parse.js @@ -1,8 +1,8 @@ "use strict"; -var ono = require("ono"), - url = require("./util/url"), - plugins = require("./util/plugins"); +const { ono } = require("ono"); +const url = require("./util/url"); +const plugins = require("./util/plugins"); module.exports = parse; @@ -16,32 +16,30 @@ module.exports = parse; * @returns {Promise} * The promise resolves with the parsed file contents, NOT the raw (Buffer) contents. */ -function parse (path, $refs, options) { +async function parse (path, $refs, options) { try { // Remove the URL fragment, if any path = url.stripHash(path); // Add a new $Ref for this file, even though we don't have the value yet. // This ensures that we don't simultaneously read & parse the same file multiple times - var $ref = $refs._add(path); + let $ref = $refs._add(path); // This "file object" will be passed to all resolvers and parsers. - var file = { + let file = { url: path, extension: url.getExtension(path), }; // Read the file and then parse the data - return readFile(file, options) - .then(function (resolver) { - $ref.pathType = resolver.plugin.name; - file.data = resolver.result; - return parseFile(file, options); - }) - .then(function (parser) { - $ref.value = parser.result; - return parser.result; - }); + const resolver = await readFile(file, options, $refs); + $ref.pathType = resolver.plugin.name; + file.data = resolver.result; + + const parser = await parseFile(file, options, $refs); + $ref.value = parser.result; + + return parser.result; } catch (e) { return Promise.reject(e); @@ -59,17 +57,17 @@ function parse (path, $refs, options) { * @returns {Promise} * The promise resolves with the raw file contents and the resolver that was used. */ -function readFile (file, options) { - return new Promise(function (resolve, reject) { +function readFile (file, options, $refs) { + return new Promise(((resolve, reject) => { // console.log('Reading %s', file.url); // Find the resolvers that can read this file - var resolvers = plugins.all(options.resolve); + let resolvers = plugins.all(options.resolve); resolvers = plugins.filter(resolvers, "canRead", file); // Run the resolvers, in order, until one of them succeeds plugins.sort(resolvers); - plugins.run(resolvers, "read", file) + plugins.run(resolvers, "read", file, $refs) .then(resolve, onError); function onError (err) { @@ -79,10 +77,10 @@ function readFile (file, options) { reject(err); } else { - reject(ono.syntax('Unable to resolve $ref pointer "%s"', file.url)); + reject(ono.syntax(`Unable to resolve $ref pointer "${file.url}"`)); } } - }); + })); } /** @@ -97,25 +95,25 @@ function readFile (file, options) { * @returns {Promise} * The promise resolves with the parsed file contents and the parser that was used. */ -function parseFile (file, options) { - return new Promise(function (resolve, reject) { +function parseFile (file, options, $refs) { + return new Promise(((resolve, reject) => { // console.log('Parsing %s', file.url); // Find the parsers that can read this file type. // If none of the parsers are an exact match for this file, then we'll try ALL of them. // This handles situations where the file IS a supported type, just with an unknown extension. - var allParsers = plugins.all(options.parse); - var filteredParsers = plugins.filter(allParsers, "canParse", file); - var parsers = filteredParsers.length > 0 ? filteredParsers : allParsers; + let allParsers = plugins.all(options.parse); + let filteredParsers = plugins.filter(allParsers, "canParse", file); + let parsers = filteredParsers.length > 0 ? filteredParsers : allParsers; // Run the parsers, in order, until one of them succeeds plugins.sort(parsers); - plugins.run(parsers, "parse", file) + plugins.run(parsers, "parse", file, $refs) .then(onParsed, onError); function onParsed (parser) { if (!parser.plugin.allowEmpty && isEmpty(parser.result)) { - reject(ono.syntax('Error parsing "%s" as %s. \nParsed value is empty', file.url, parser.plugin.name)); + reject(ono.syntax(`Error parsing "${file.url}" as ${parser.plugin.name}. \nParsed value is empty`)); } else { resolve(parser); @@ -125,13 +123,13 @@ function parseFile (file, options) { function onError (err) { if (err) { err = err instanceof Error ? err : new Error(err); - reject(ono.syntax(err, "Error parsing %s", file.url)); + reject(ono.syntax(err, `Error parsing ${file.url}`)); } else { - reject(ono.syntax("Unable to parse %s", file.url)); + reject(ono.syntax(`Unable to parse ${file.url}`)); } } - }); + })); } /** diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/binary.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/binary.js index f0698f8..0a3b280 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/binary.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/binary.js @@ -1,6 +1,6 @@ "use strict"; -var BINARY_REGEXP = /\.(jpeg|jpg|gif|png|bmp|ico)$/i; +let BINARY_REGEXP = /\.(jpeg|jpg|gif|png|bmp|ico)$/i; module.exports = { /** @@ -29,7 +29,7 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {boolean} */ - canParse: function isBinary (file) { + canParse (file) { // Use this parser if the file is a Buffer, and has a known binary extension return Buffer.isBuffer(file.data) && BINARY_REGEXP.test(file.url); }, @@ -43,13 +43,13 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {Promise} */ - parse: function parseBinary (file) { + parse (file) { if (Buffer.isBuffer(file.data)) { return file.data; } else { // This will reject if data is anything other than a string or typed array - return new Buffer(file.data); + return Buffer.from(file.data); } } }; diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/json.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/json.js index 2cc3deb..45ac68d 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/json.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/json.js @@ -34,9 +34,9 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {Promise} */ - parse: function parseJSON (file) { - return new Promise(function (resolve, reject) { - var data = file.data; + parse (file) { + return new Promise(((resolve, reject) => { + let data = file.data; if (Buffer.isBuffer(data)) { data = data.toString(); } @@ -53,6 +53,6 @@ module.exports = { // data is already a JavaScript value (object, array, number, null, NaN, etc.) resolve(data); } - }); + })); } }; diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/text.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/text.js index 050af1b..f2452e1 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/text.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/text.js @@ -1,6 +1,6 @@ "use strict"; -var TEXT_REGEXP = /\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i; +let TEXT_REGEXP = /\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i; module.exports = { /** @@ -36,7 +36,7 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {boolean} */ - canParse: function isText (file) { + canParse (file) { // Use this parser if the file is a string or Buffer, and has a known text-based extension return (typeof file.data === "string" || Buffer.isBuffer(file.data)) && TEXT_REGEXP.test(file.url); }, @@ -50,7 +50,7 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {Promise} */ - parse: function parseText (file) { + parse (file) { if (typeof file.data === "string") { return file.data; } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/yaml.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/yaml.js index dd39cf1..13cd98c 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/yaml.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/parsers/yaml.js @@ -1,6 +1,6 @@ "use strict"; -var YAML = require("../util/yaml"); +const YAML = require("../util/yaml"); module.exports = { /** @@ -36,9 +36,9 @@ module.exports = { * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver * @returns {Promise} */ - parse: function parseYAML (file) { - return new Promise(function (resolve, reject) { - var data = file.data; + parse (file) { + return new Promise(((resolve, reject) => { + let data = file.data; if (Buffer.isBuffer(data)) { data = data.toString(); } @@ -50,6 +50,6 @@ module.exports = { // data is already a JavaScript value (object, array, number, null, NaN, etc.) resolve(data); } - }); + })); } }; diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/pointer.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/pointer.js index 7d50c22..9f5baf1 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/pointer.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/pointer.js @@ -2,13 +2,13 @@ module.exports = Pointer; -var $Ref = require("./ref"), - url = require("./util/url"), - ono = require("ono"), - slashes = /\//g, - tildes = /~/g, - escapedSlash = /~1/g, - escapedTilde = /~0/g; +const $Ref = require("./ref"); +const url = require("./util/url"); +const { ono } = require("ono"); +const slashes = /\//g; +const tildes = /~/g; +const escapedSlash = /~1/g; +const escapedTilde = /~0/g; /** * This class represents a single JSON pointer and its resolved value. @@ -72,19 +72,19 @@ function Pointer ($ref, path, friendlyPath) { * of the resolved value. */ Pointer.prototype.resolve = function (obj, options) { - var tokens = Pointer.parse(this.path); + let tokens = Pointer.parse(this.path); // Crawl the object, one token at a time this.value = obj; - for (var i = 0; i < tokens.length; i++) { + for (let i = 0; i < tokens.length; i++) { if (resolveIf$Ref(this, options)) { // The $ref path has changed, so append the remaining tokens to the path this.path = Pointer.join(this.path, tokens.slice(i)); } - var token = tokens[i]; + let token = tokens[i]; if (this.value[token] === undefined) { - throw ono.syntax('Error resolving $ref pointer "%s". \nToken "%s" does not exist.', this.originalPath, token); + throw ono.syntax(`Error resolving $ref pointer "${this.originalPath}". \nToken "${token}" does not exist.`); } else { this.value = this.value[token]; @@ -107,8 +107,8 @@ Pointer.prototype.resolve = function (obj, options) { * Returns the modified object, or an entirely new object if the entire object is overwritten. */ Pointer.prototype.set = function (obj, value, options) { - var tokens = Pointer.parse(this.path); - var token; + let tokens = Pointer.parse(this.path); + let token; if (tokens.length === 0) { // There are no tokens, replace the entire object with the new value @@ -118,7 +118,7 @@ Pointer.prototype.set = function (obj, value, options) { // Crawl the object, one token at a time this.value = obj; - for (var i = 0; i < tokens.length - 1; i++) { + for (let i = 0; i < tokens.length - 1; i++) { resolveIf$Ref(this, options); token = tokens[i]; @@ -154,7 +154,7 @@ Pointer.prototype.set = function (obj, value, options) { */ Pointer.parse = function (path) { // Get the JSON pointer from the path's hash - var pointer = url.getHash(path).substr(1); + let pointer = url.getHash(path).substr(1); // If there's no pointer, then there are no tokens, // so return an empty array @@ -166,12 +166,12 @@ Pointer.parse = function (path) { pointer = pointer.split("/"); // Decode each part, according to RFC 6901 - for (var i = 0; i < pointer.length; i++) { + for (let i = 0; i < pointer.length; i++) { pointer[i] = decodeURIComponent(pointer[i].replace(escapedSlash, "/").replace(escapedTilde, "~")); } if (pointer[0] !== "") { - throw ono.syntax('Invalid $ref pointer "%s". Pointers must begin with "#/"', pointer); + throw ono.syntax(`Invalid $ref pointer "${pointer}". Pointers must begin with "#/"`); } return pointer.slice(1); @@ -192,8 +192,8 @@ Pointer.join = function (base, tokens) { // Append each token to the base path tokens = Array.isArray(tokens) ? tokens : [tokens]; - for (var i = 0; i < tokens.length; i++) { - var token = tokens[i]; + for (let i = 0; i < tokens.length; i++) { + let token = tokens[i]; // Encode the token, according to RFC 6901 base += "/" + encodeURIComponent(token.replace(tildes, "~0").replace(slashes, "~1")); } @@ -215,14 +215,14 @@ function resolveIf$Ref (pointer, options) { // Is the value a JSON reference? (and allowed?) if ($Ref.isAllowed$Ref(pointer.value, options)) { - var $refPath = url.resolve(pointer.path, pointer.value.$ref); + let $refPath = url.resolve(pointer.path, pointer.value.$ref); if ($refPath === pointer.path) { // The value is a reference to itself, so there's nothing to do. pointer.circular = true; } else { - var resolved = pointer.$ref.$refs._resolve($refPath, options); + let resolved = pointer.$ref.$refs._resolve($refPath, options); pointer.indirections += resolved.indirections + 1; if ($Ref.isExtended$Ref(pointer.value)) { @@ -264,7 +264,7 @@ function setValue (pointer, token, value) { } } else { - throw ono.syntax('Error assigning $ref pointer "%s". \nCannot set "%s" of a non-object.', pointer.path, token); + throw ono.syntax(`Error assigning $ref pointer "${pointer.path}". \nCannot set "${token}" of a non-object.`); } return value; } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/ref.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/ref.js index e676ad7..30c69f4 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/ref.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/ref.js @@ -2,7 +2,7 @@ module.exports = $Ref; -var Pointer = require("./pointer"); +const Pointer = require("./pointer"); /** * This class represents a single JSON reference and its resolved value. @@ -79,7 +79,7 @@ $Ref.prototype.get = function (path, options) { * @returns {Pointer} */ $Ref.prototype.resolve = function (path, options, friendlyPath) { - var pointer = new Pointer(this, path, friendlyPath); + let pointer = new Pointer(this, path, friendlyPath); return pointer.resolve(this.value, options); }; @@ -91,7 +91,7 @@ $Ref.prototype.resolve = function (path, options, friendlyPath) { * @param {*} value - The value to assign */ $Ref.prototype.set = function (path, value) { - var pointer = new Pointer(this, path); + let pointer = new Pointer(this, path); this.value = pointer.set(this.value, value); }; @@ -212,17 +212,19 @@ $Ref.isExtended$Ref = function (value) { */ $Ref.dereference = function ($ref, resolvedValue) { if (resolvedValue && typeof resolvedValue === "object" && $Ref.isExtended$Ref($ref)) { - var merged = {}; - Object.keys($ref).forEach(function (key) { + let merged = {}; + for (let key of Object.keys($ref)) { if (key !== "$ref") { merged[key] = $ref[key]; } - }); - Object.keys(resolvedValue).forEach(function (key) { + } + + for (let key of Object.keys(resolvedValue)) { if (!(key in merged)) { merged[key] = resolvedValue[key]; } - }); + } + return merged; } else { diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/refs.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/refs.js index 6f1ccb0..e246934 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/refs.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/refs.js @@ -1,196 +1,196 @@ -"use strict"; - -var ono = require("ono"), - $Ref = require("./ref"), - url = require("./util/url"); - -module.exports = $Refs; - -/** - * This class is a map of JSON references and their resolved values. - */ -function $Refs () { - /** - * Indicates whether the schema contains any circular references. - * - * @type {boolean} - */ - this.circular = false; - - /** - * A map of paths/urls to {@link $Ref} objects - * - * @type {object} - * @protected - */ - this._$refs = {}; - - /** - * The {@link $Ref} object that is the root of the JSON schema. - * - * @type {$Ref} - * @protected - */ - this._root$Ref = null; -} - -/** - * Returns the paths of all the files/URLs that are referenced by the JSON schema, - * including the schema itself. - * - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {string[]} - */ -$Refs.prototype.paths = function (types) { - var paths = getPaths(this._$refs, arguments); - return paths.map(function (path) { - return path.decoded; - }); -}; - -/** - * Returns the map of JSON references and their resolved values. - * - * @param {...string|string[]} [types] - Only return references of the given types ("file", "http", etc.) - * @returns {object} - */ -$Refs.prototype.values = function (types) { - var $refs = this._$refs; - var paths = getPaths($refs, arguments); - return paths.reduce(function (obj, path) { - obj[path.decoded] = $refs[path.encoded].value; - return obj; - }, {}); -}; - -/** - * Returns a POJO (plain old JavaScript object) for serialization as JSON. - * - * @returns {object} - */ -$Refs.prototype.toJSON = $Refs.prototype.values; - -/** - * Determines whether the given JSON reference exists. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {boolean} - */ -$Refs.prototype.exists = function (path, options) { - try { - this._resolve(path, options); - return true; - } - catch (e) { - return false; - } -}; - -/** - * Resolves the given JSON reference and returns the resolved value. - * - * @param {string} path - The path being resolved, with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {*} - Returns the resolved value - */ -$Refs.prototype.get = function (path, options) { - return this._resolve(path, options).value; -}; - -/** - * Sets the value of a nested property within this {@link $Ref#value}. - * If the property, or any of its parents don't exist, they will be created. - * - * @param {string} path - The path of the property to set, optionally with a JSON pointer in the hash - * @param {*} value - The value to assign - */ -$Refs.prototype.set = function (path, value) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - $ref.set(absPath, value); -}; - -/** - * Creates a new {@link $Ref} object and adds it to this {@link $Refs} object. - * - * @param {string} path - The file path or URL of the referenced file - */ -$Refs.prototype._add = function (path) { - var withoutHash = url.stripHash(path); - - var $ref = new $Ref(); - $ref.path = withoutHash; - $ref.$refs = this; - - this._$refs[withoutHash] = $ref; - this._root$Ref = this._root$Ref || $ref; - - return $ref; -}; - -/** - * Resolves the given JSON reference. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {Pointer} - * @protected - */ -$Refs.prototype._resolve = function (path, options) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - return $ref.resolve(absPath, options, path); -}; - -/** - * Returns the specified {@link $Ref} object, or undefined. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @returns {$Ref|undefined} - * @protected - */ -$Refs.prototype._get$Ref = function (path) { - path = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(path); - return this._$refs[withoutHash]; -}; - -/** - * Returns the encoded and decoded paths keys of the given object. - * - * @param {object} $refs - The object whose keys are URL-encoded paths - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {object[]} - */ -function getPaths ($refs, types) { - var paths = Object.keys($refs); - - // Filter the paths by type - types = Array.isArray(types[0]) ? types[0] : Array.prototype.slice.call(types); - if (types.length > 0 && types[0]) { - paths = paths.filter(function (key) { - return types.indexOf($refs[key].pathType) !== -1; - }); - } - - // Decode local filesystem paths - return paths.map(function (path) { - return { - encoded: path, - decoded: $refs[path].pathType === "file" ? url.toFileSystemPath(path, true) : path - }; - }); -} +"use strict"; + +const { ono } = require("ono"); +const $Ref = require("./ref"); +const url = require("./util/url"); + +module.exports = $Refs; + +/** + * This class is a map of JSON references and their resolved values. + */ +function $Refs () { + /** + * Indicates whether the schema contains any circular references. + * + * @type {boolean} + */ + this.circular = false; + + /** + * A map of paths/urls to {@link $Ref} objects + * + * @type {object} + * @protected + */ + this._$refs = {}; + + /** + * The {@link $Ref} object that is the root of the JSON schema. + * + * @type {$Ref} + * @protected + */ + this._root$Ref = null; +} + +/** + * Returns the paths of all the files/URLs that are referenced by the JSON schema, + * including the schema itself. + * + * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) + * @returns {string[]} + */ +$Refs.prototype.paths = function (types) { + let paths = getPaths(this._$refs, arguments); + return paths.map((path) => { + return path.decoded; + }); +}; + +/** + * Returns the map of JSON references and their resolved values. + * + * @param {...string|string[]} [types] - Only return references of the given types ("file", "http", etc.) + * @returns {object} + */ +$Refs.prototype.values = function (types) { + let $refs = this._$refs; + let paths = getPaths($refs, arguments); + return paths.reduce((obj, path) => { + obj[path.decoded] = $refs[path.encoded].value; + return obj; + }, {}); +}; + +/** + * Returns a POJO (plain old JavaScript object) for serialization as JSON. + * + * @returns {object} + */ +$Refs.prototype.toJSON = $Refs.prototype.values; + +/** + * Determines whether the given JSON reference exists. + * + * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash + * @param {$RefParserOptions} [options] + * @returns {boolean} + */ +$Refs.prototype.exists = function (path, options) { + try { + this._resolve(path, options); + return true; + } + catch (e) { + return false; + } +}; + +/** + * Resolves the given JSON reference and returns the resolved value. + * + * @param {string} path - The path being resolved, with a JSON pointer in the hash + * @param {$RefParserOptions} [options] + * @returns {*} - Returns the resolved value + */ +$Refs.prototype.get = function (path, options) { + return this._resolve(path, options).value; +}; + +/** + * Sets the value of a nested property within this {@link $Ref#value}. + * If the property, or any of its parents don't exist, they will be created. + * + * @param {string} path - The path of the property to set, optionally with a JSON pointer in the hash + * @param {*} value - The value to assign + */ +$Refs.prototype.set = function (path, value) { + let absPath = url.resolve(this._root$Ref.path, path); + let withoutHash = url.stripHash(absPath); + let $ref = this._$refs[withoutHash]; + + if (!$ref) { + throw ono(`Error resolving $ref pointer "${path}". \n"${withoutHash}" not found.`); + } + + $ref.set(absPath, value); +}; + +/** + * Creates a new {@link $Ref} object and adds it to this {@link $Refs} object. + * + * @param {string} path - The file path or URL of the referenced file + */ +$Refs.prototype._add = function (path) { + let withoutHash = url.stripHash(path); + + let $ref = new $Ref(); + $ref.path = withoutHash; + $ref.$refs = this; + + this._$refs[withoutHash] = $ref; + this._root$Ref = this._root$Ref || $ref; + + return $ref; +}; + +/** + * Resolves the given JSON reference. + * + * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash + * @param {$RefParserOptions} [options] + * @returns {Pointer} + * @protected + */ +$Refs.prototype._resolve = function (path, options) { + let absPath = url.resolve(this._root$Ref.path, path); + let withoutHash = url.stripHash(absPath); + let $ref = this._$refs[withoutHash]; + + if (!$ref) { + throw ono(`Error resolving $ref pointer "${path}". \n"${withoutHash}" not found.`); + } + + return $ref.resolve(absPath, options, path); +}; + +/** + * Returns the specified {@link $Ref} object, or undefined. + * + * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash + * @returns {$Ref|undefined} + * @protected + */ +$Refs.prototype._get$Ref = function (path) { + path = url.resolve(this._root$Ref.path, path); + let withoutHash = url.stripHash(path); + return this._$refs[withoutHash]; +}; + +/** + * Returns the encoded and decoded paths keys of the given object. + * + * @param {object} $refs - The object whose keys are URL-encoded paths + * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) + * @returns {object[]} + */ +function getPaths ($refs, types) { + let paths = Object.keys($refs); + + // Filter the paths by type + types = Array.isArray(types[0]) ? types[0] : Array.prototype.slice.call(types); + if (types.length > 0 && types[0]) { + paths = paths.filter((key) => { + return types.indexOf($refs[key].pathType) !== -1; + }); + } + + // Decode local filesystem paths + return paths.map((path) => { + return { + encoded: path, + decoded: $refs[path].pathType === "file" ? url.toFileSystemPath(path, true) : path + }; + }); +} diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolve-external.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolve-external.js index 7030dc4..fb2e0ae 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolve-external.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolve-external.js @@ -1,9 +1,9 @@ "use strict"; -var $Ref = require("./ref"), - Pointer = require("./pointer"), - parse = require("./parse"), - url = require("./util/url"); +const $Ref = require("./ref"); +const Pointer = require("./pointer"); +const parse = require("./parse"); +const url = require("./util/url"); module.exports = resolveExternal; @@ -28,7 +28,7 @@ function resolveExternal (parser, options) { try { // console.log('Resolving $ref pointers in %s', parser.$refs._root$Ref.path); - var promises = crawl(parser.schema, parser.$refs._root$Ref.path + "#", parser.$refs, options); + let promises = crawl(parser.schema, parser.$refs._root$Ref.path + "#", parser.$refs, options); return Promise.all(promises); } catch (e) { @@ -51,16 +51,16 @@ function resolveExternal (parser, options) { * then the corresponding promise will internally reference an array of promises. */ function crawl (obj, path, $refs, options) { - var promises = []; + let promises = []; if (obj && typeof obj === "object") { if ($Ref.isExternal$Ref(obj)) { promises.push(resolve$Ref(obj, path, $refs, options)); } else { - Object.keys(obj).forEach(function (key) { - var keyPath = Pointer.join(path, key); - var value = obj[key]; + for (let key of Object.keys(obj)) { + let keyPath = Pointer.join(path, key); + let value = obj[key]; if ($Ref.isExternal$Ref(value)) { promises.push(resolve$Ref(value, keyPath, $refs, options)); @@ -68,7 +68,7 @@ function crawl (obj, path, $refs, options) { else { promises = promises.concat(crawl(value, keyPath, $refs, options)); } - }); + } } } @@ -87,11 +87,11 @@ function crawl (obj, path, $refs, options) { * The promise resolves once all JSON references in the object have been resolved, * including nested references that are contained in externally-referenced files. */ -function resolve$Ref ($ref, path, $refs, options) { +async function resolve$Ref ($ref, path, $refs, options) { // console.log('Resolving $ref pointer "%s" at %s', $ref.$ref, path); - var resolvedPath = url.resolve(path, $ref.$ref); - var withoutHash = url.stripHash(resolvedPath); + let resolvedPath = url.resolve(path, $ref.$ref); + let withoutHash = url.stripHash(resolvedPath); // Do we already have this $ref? $ref = $refs._$refs[withoutHash]; @@ -101,11 +101,11 @@ function resolve$Ref ($ref, path, $refs, options) { } // Parse the $referenced file/url - return parse(resolvedPath, $refs, options) - .then(function (result) { - // Crawl the parsed value - // console.log('Resolving $ref pointers in %s', withoutHash); - var promises = crawl(result, withoutHash + "#", $refs, options); - return Promise.all(promises); - }); + const result = await parse(resolvedPath, $refs, options); + + // Crawl the parsed value + // console.log('Resolving $ref pointers in %s', withoutHash); + let promises = crawl(result, withoutHash + "#", $refs, options); + + return Promise.all(promises); } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/file.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/file.js index c0d4b12..c15fcb5 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/file.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/file.js @@ -1,7 +1,7 @@ "use strict"; -var fs = require("fs"), - ono = require("ono"), - url = require("../util/url"); +const fs = require("fs"); +const { ono } = require("ono"); +const url = require("../util/url"); module.exports = { /** @@ -21,7 +21,7 @@ module.exports = { * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) * @returns {boolean} */ - canRead: function isFile (file) { + canRead (file) { return url.isFileSystemPath(file.url); }, @@ -33,22 +33,22 @@ module.exports = { * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) * @returns {Promise} */ - read: function readFile (file) { - return new Promise(function (resolve, reject) { - var path; + read (file) { + return new Promise(((resolve, reject) => { + let path; try { path = url.toFileSystemPath(file.url); } catch (err) { - reject(ono.uri(err, "Malformed URI: %s", file.url)); + reject(ono.uri(err, `Malformed URI: ${file.url}`)); } // console.log('Opening file: %s', path); try { - fs.readFile(path, function (err, data) { + fs.readFile(path, (err, data) => { if (err) { - reject(ono(err, 'Error opening file "%s"', path)); + reject(ono(err, `Error opening file "${path}"`)); } else { resolve(data); @@ -56,8 +56,8 @@ module.exports = { }); } catch (err) { - reject(ono(err, 'Error opening file "%s"', path)); + reject(ono(err, `Error opening file "${path}"`)); } - }); + })); } }; diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/http.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/http.js index b0a8ac9..5dc88c5 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/http.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/resolvers/http.js @@ -1,9 +1,9 @@ "use strict"; -var http = require("http"), - https = require("https"), - ono = require("ono"), - url = require("../util/url"); +const http = require("http"); +const https = require("https"); +const { ono } = require("ono"); +const url = require("../util/url"); module.exports = { /** @@ -59,7 +59,7 @@ module.exports = { * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) * @returns {boolean} */ - canRead: function isHttp (file) { + canRead (file) { return url.isHttp(file.url); }, @@ -71,8 +71,8 @@ module.exports = { * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) * @returns {Promise} */ - read: function readHttp (file) { - var u = url.parse(file.url); + read (file) { + let u = url.parse(file.url); if (process.browser && !u.protocol) { // Use the protocol of the current page @@ -94,38 +94,38 @@ module.exports = { * The promise resolves with the raw downloaded data, or rejects if there is an HTTP error. */ function download (u, httpOptions, redirects) { - return new Promise(function (resolve, reject) { + return new Promise(((resolve, reject) => { u = url.parse(u); redirects = redirects || []; redirects.push(u.href); get(u, httpOptions) - .then(function (res) { + .then((res) => { if (res.statusCode >= 400) { - throw ono({ status: res.statusCode }, "HTTP ERROR %d", res.statusCode); + throw ono({ status: res.statusCode }, `HTTP ERROR ${res.statusCode}`); } else if (res.statusCode >= 300) { if (redirects.length > httpOptions.redirects) { - reject(ono({ status: res.statusCode }, "Error downloading %s. \nToo many redirects: \n %s", - redirects[0], redirects.join(" \n "))); + reject(ono({ status: res.statusCode }, + `Error downloading ${redirects[0]}. \nToo many redirects: \n ${redirects.join(" \n ")}`)); } else if (!res.headers.location) { - throw ono({ status: res.statusCode }, "HTTP %d redirect with no location header", res.statusCode); + throw ono({ status: res.statusCode }, `HTTP ${res.statusCode} redirect with no location header`); } else { // console.log('HTTP %d redirect %s -> %s', res.statusCode, u.href, res.headers.location); - var redirectTo = url.resolve(u, res.headers.location); + let redirectTo = url.resolve(u, res.headers.location); download(redirectTo, httpOptions, redirects).then(resolve, reject); } } else { - resolve(res.body || new Buffer(0)); + resolve(res.body || Buffer.alloc(0)); } }) - .catch(function (err) { - reject(ono(err, "Error downloading", u.href)); + .catch((err) => { + reject(ono(err, `Error downloading ${u.href}`)); }); - }); + })); } /** @@ -138,11 +138,11 @@ function download (u, httpOptions, redirects) { * The promise resolves with the HTTP Response object. */ function get (u, httpOptions) { - return new Promise(function (resolve, reject) { + return new Promise(((resolve, reject) => { // console.log('GET', u.href); - var protocol = u.protocol === "https:" ? https : http; - var req = protocol.get({ + let protocol = u.protocol === "https:" ? https : http; + let req = protocol.get({ hostname: u.hostname, port: u.port, path: u.path, @@ -156,24 +156,24 @@ function get (u, httpOptions) { req.setTimeout(httpOptions.timeout); } - req.on("timeout", function () { + req.on("timeout", () => { req.abort(); }); req.on("error", reject); - req.once("response", function (res) { - res.body = new Buffer(0); + req.once("response", (res) => { + res.body = Buffer.alloc(0); - res.on("data", function (data) { - res.body = Buffer.concat([res.body, new Buffer(data)]); + res.on("data", (data) => { + res.body = Buffer.concat([res.body, Buffer.from(data)]); }); res.on("error", reject); - res.on("end", function () { + res.on("end", () => { resolve(res); }); }); - }); + })); } diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/plugins.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/plugins.js index 3edecf9..932281c 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/plugins.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/plugins.js @@ -9,10 +9,10 @@ */ exports.all = function (plugins) { return Object.keys(plugins) - .filter(function (key) { + .filter((key) => { return typeof plugins[key] === "object"; }) - .map(function (key) { + .map((key) => { plugins[key].name = key; return plugins[key]; }); @@ -28,7 +28,7 @@ exports.all = function (plugins) { */ exports.filter = function (plugins, method, file) { return plugins - .filter(function (plugin) { + .filter((plugin) => { return !!getResult(plugin, method, file); }); }; @@ -40,11 +40,11 @@ exports.filter = function (plugins, method, file) { * @returns {object[]} */ exports.sort = function (plugins) { - plugins.forEach(function (plugin) { + for (let plugin of plugins) { plugin.order = plugin.order || Number.MAX_SAFE_INTEGER; - }); + } - return plugins.sort(function (a, b) { return a.order - b.order; }); + return plugins.sort((a, b) => { return a.order - b.order; }); }; /** @@ -60,10 +60,10 @@ exports.sort = function (plugins) { * @param {object} file - A file info object, which will be passed to each method * @returns {Promise} */ -exports.run = function (plugins, method, file) { - var plugin, lastError, index = 0; +exports.run = function (plugins, method, file, $refs) { + let plugin, lastError, index = 0; - return new Promise(function (resolve, reject) { + return new Promise(((resolve, reject) => { runNextPlugin(); function runNextPlugin () { @@ -75,7 +75,7 @@ exports.run = function (plugins, method, file) { try { // console.log(' %s', plugin.name); - var result = getResult(plugin, method, file, callback); + let result = getResult(plugin, method, file, callback, $refs); if (result && typeof result.then === "function") { // A promise was returned result.then(onSuccess, onError); @@ -103,8 +103,8 @@ exports.run = function (plugins, method, file) { function onSuccess (result) { // console.log(' success'); resolve({ - plugin: plugin, - result: result + plugin, + result }); } @@ -113,7 +113,7 @@ exports.run = function (plugins, method, file) { lastError = err; runNextPlugin(); } - }); + })); }; /** @@ -128,11 +128,11 @@ exports.run = function (plugins, method, file) { * @param {function} [callback] - A callback function, which will be passed to the method * @returns {*} */ -function getResult (obj, prop, file, callback) { - var value = obj[prop]; +function getResult (obj, prop, file, callback, $refs) { + let value = obj[prop]; if (typeof value === "function") { - return value.apply(obj, [file, callback]); + return value.apply(obj, [file, callback, $refs]); } if (!callback) { diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/url.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/url.js index e78d068..b715705 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/url.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/url.js @@ -1,18 +1,18 @@ "use strict"; -var isWindows = /^win/.test(process.platform), +let isWindows = /^win/.test(process.platform), forwardSlashPattern = /\//g, protocolPattern = /^(\w{2,}):\/\//i, url = module.exports; // RegExp patterns to URL-encode special characters in local filesystem paths -var urlEncodePatterns = [ +let urlEncodePatterns = [ /\?/g, "%3F", /\#/g, "%23", ]; // RegExp patterns to URL-decode special characters for local filesystem paths -var urlDecodePatterns = [ +let urlDecodePatterns = [ /\%23/g, "#", /\%24/g, "$", /\%26/g, "&", @@ -39,7 +39,7 @@ exports.cwd = function cwd () { * @returns {?string} */ exports.getProtocol = function getProtocol (path) { - var match = protocolPattern.exec(path); + let match = protocolPattern.exec(path); if (match) { return match[1].toLowerCase(); } @@ -53,7 +53,7 @@ exports.getProtocol = function getProtocol (path) { * @returns {string} */ exports.getExtension = function getExtension (path) { - var lastDot = path.lastIndexOf("."); + let lastDot = path.lastIndexOf("."); if (lastDot >= 0) { return path.substr(lastDot).toLowerCase(); } @@ -68,7 +68,7 @@ exports.getExtension = function getExtension (path) { * @returns {string} */ exports.getHash = function getHash (path) { - var hashIndex = path.indexOf("#"); + let hashIndex = path.indexOf("#"); if (hashIndex >= 0) { return path.substr(hashIndex); } @@ -82,7 +82,7 @@ exports.getHash = function getHash (path) { * @returns {string} */ exports.stripHash = function stripHash (path) { - var hashIndex = path.indexOf("#"); + let hashIndex = path.indexOf("#"); if (hashIndex >= 0) { path = path.substr(0, hashIndex); } @@ -96,7 +96,7 @@ exports.stripHash = function stripHash (path) { * @returns {boolean} */ exports.isHttp = function isHttp (path) { - var protocol = url.getProtocol(path); + let protocol = url.getProtocol(path); if (protocol === "http" || protocol === "https") { return true; } @@ -124,7 +124,7 @@ exports.isFileSystemPath = function isFileSystemPath (path) { return false; } - var protocol = url.getProtocol(path); + let protocol = url.getProtocol(path); return protocol === undefined || protocol === "file"; }; @@ -157,7 +157,7 @@ exports.fromFileSystemPath = function fromFileSystemPath (path) { // Step 3: Manually encode characters that are not encoded by `encodeURI`. // This includes characters such as "#" and "?", which have special meaning in URLs, // but are just normal characters in a filesystem path. - for (var i = 0; i < urlEncodePatterns.length; i += 2) { + for (let i = 0; i < urlEncodePatterns.length; i += 2) { path = path.replace(urlEncodePatterns[i], urlEncodePatterns[i + 1]); } @@ -178,13 +178,13 @@ exports.toFileSystemPath = function toFileSystemPath (path, keepFileProtocol) { // Step 2: Manually decode characters that are not decoded by `decodeURI`. // This includes characters such as "#" and "?", which have special meaning in URLs, // but are just normal characters in a filesystem path. - for (var i = 0; i < urlDecodePatterns.length; i += 2) { + for (let i = 0; i < urlDecodePatterns.length; i += 2) { path = path.replace(urlDecodePatterns[i], urlDecodePatterns[i + 1]); } // Step 3: If it's a "file://" URL, then format it consistently // or convert it to a local filesystem path - var isFileUrl = path.substr(0, 7).toLowerCase() === "file://"; + let isFileUrl = path.substr(0, 7).toLowerCase() === "file://"; if (isFileUrl) { // Strip-off the protocol, and the initial "/", if there is one path = path[7] === "/" ? path.substr(8) : path.substr(7); diff --git a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/yaml.js b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/yaml.js index e1fb3fd..db2e250 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/lib/util/yaml.js +++ b/forward_engineering/node_modules/json-schema-ref-parser/lib/util/yaml.js @@ -1,8 +1,8 @@ /* eslint lines-around-comment: [2, {beforeBlockComment: false}] */ "use strict"; -var yaml = require("js-yaml"), - ono = require("ono"); +const yaml = require("js-yaml"); +const { ono } = require("ono"); /** * Simple YAML parsing functions, similar to {@link JSON.parse} and {@link JSON.stringify} @@ -15,7 +15,7 @@ module.exports = { * @param {function} [reviver] - Not currently supported. Provided for consistency with {@link JSON.parse} * @returns {*} */ - parse: function yamlParse (text, reviver) { + parse (text, reviver) { try { return yaml.safeLoad(text); } @@ -38,10 +38,10 @@ module.exports = { * @param {string|number} space - The number of spaces to use for indentation, or a string containing the number of spaces. * @returns {string} */ - stringify: function yamlStringify (value, replacer, space) { + stringify (value, replacer, space) { try { - var indent = (typeof space === "string" ? space.length : space) || 2; - return yaml.safeDump(value, { indent: indent }); + let indent = (typeof space === "string" ? space.length : space) || 2; + return yaml.safeDump(value, { indent }); } catch (e) { if (e instanceof Error) { diff --git a/forward_engineering/node_modules/json-schema-ref-parser/package.json b/forward_engineering/node_modules/json-schema-ref-parser/package.json index 6a804f6..d2b92c6 100644 --- a/forward_engineering/node_modules/json-schema-ref-parser/package.json +++ b/forward_engineering/node_modules/json-schema-ref-parser/package.json @@ -1,51 +1,27 @@ { - "_args": [ - [ - { - "raw": "json-schema-ref-parser@^6.0.3", - "scope": null, - "escapedName": "json-schema-ref-parser", - "name": "json-schema-ref-parser", - "rawSpec": "^6.0.3", - "spec": ">=6.0.3 <7.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser" - ] - ], - "_from": "json-schema-ref-parser@>=6.0.3 <7.0.0", - "_hasShrinkwrap": false, - "_id": "json-schema-ref-parser@6.1.0", - "_inCache": true, + "_from": "json-schema-ref-parser@^7.1.3", + "_id": "json-schema-ref-parser@7.1.3", + "_inBundle": false, + "_integrity": "sha512-/Lmyl0PW27dOmCO03PI339+1gs4Z2PlqIyUgzIOtoRp08zkkMCB30TRbdppbPO7WWzZX0uT98HqkDiZSujkmbA==", "_location": "/json-schema-ref-parser", - "_nodeVersion": "10.15.1", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/json-schema-ref-parser_6.1.0_1550747597821_0.30601486687771695" - }, - "_npmUser": { - "name": "jamesmessinger", - "email": "james.messinger@gmail.com" - }, - "_npmVersion": "6.4.1", "_phantomChildren": {}, "_requested": { - "raw": "json-schema-ref-parser@^6.0.3", - "scope": null, - "escapedName": "json-schema-ref-parser", + "type": "range", + "registry": true, + "raw": "json-schema-ref-parser@^7.1.3", "name": "json-schema-ref-parser", - "rawSpec": "^6.0.3", - "spec": ">=6.0.3 <7.0.0", - "type": "range" + "escapedName": "json-schema-ref-parser", + "rawSpec": "^7.1.3", + "saveSpec": null, + "fetchSpec": "^7.1.3" }, "_requiredBy": [ "/swagger-parser" ], - "_resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "_shasum": "30af34aeab5bee0431da805dac0eb21b574bf63d", - "_shrinkwrap": null, - "_spec": "json-schema-ref-parser@^6.0.3", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser", + "_resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-7.1.3.tgz", + "_shasum": "21468cd180b2f1939ce93fe291f743b441e97d49", + "_spec": "json-schema-ref-parser@^7.1.3", + "_where": "/home/taras/Dev/Hackolade/OpenApi-fork-3/OpenAPI/forward_engineering/node_modules/swagger-parser", "author": { "name": "James Messinger", "url": "https://jamesmessinger.com" @@ -56,6 +32,7 @@ "bugs": { "url": "https://github.com/APIDevTools/json-schema-ref-parser/issues" }, + "bundleDependencies": false, "contributors": [ { "name": "Boris Cherny", @@ -64,49 +41,33 @@ ], "dependencies": { "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" + "js-yaml": "^3.13.1", + "ono": "^6.0.0" }, + "deprecated": false, "description": "Parse, Resolve, and Dereference JSON Schema $ref pointers", "devDependencies": { - "@types/json-schema": "^7.0.1", - "@types/node": "^11.9.4", + "@babel/polyfill": "^7.7.0", + "@types/json-schema": "^7.0.4", + "@types/node": "^13.1.2", "chai": "^4.2.0", - "coveralls": "^3.0.2", - "eslint": "^5.12.0", - "eslint-config-modular": "^7.0.0", - "http-server": "^0.11.1", - "karma": "^4.0.0", - "karma-chai": "^0.1.0", - "karma-chrome-launcher": "^2.2.0", + "coveralls": "^3.0.9", + "eslint": "^6.8.0", + "eslint-config-modular": "^7.0.1", + "host-environment": "^1.1.4", + "karma": "^4.4.1", "karma-cli": "^2.0.0", - "karma-coverage": "^1.1.2", - "karma-edge-launcher": "^0.4.2", - "karma-firefox-launcher": "^1.1.0", - "karma-host-environment": "^1.1.7", - "karma-ie-launcher": "^1.0.0", - "karma-mocha": "^1.3.0", - "karma-safari-launcher": "^1.0.0", - "karma-sauce-launcher": "^2.0.2", - "karma-verbose-reporter": "0.0.6", - "mocha": "^6.0.0", + "karma-config": "^1.5.7", + "mocha": "^6.2.2", "npm-check": "^5.9.0", - "nyc": "^13.1.0", - "simplifyify": "^7.0.1", - "typescript": "^3.2.2", - "version-bump-prompt": "^4.2.2" + "nyc": "^15.0.0", + "typescript": "^3.7.4", + "version-bump-prompt": "^5.0.7" }, - "directories": {}, - "dist": { - "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", - "shasum": "30af34aeab5bee0431da805dac0eb21b574bf63d", - "tarball": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "fileCount": 28, - "unpackedSize": 2000924, - "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbofOCRA9TVsSAnZWagAAWfYP/jdcSOsZmbjdd9H6fmNc\nmduMsW677DHhE9U6b/QYL0llkLJNdbSjJF89noNVi8nHXsPVbmXlpIOmLull\nE7YsUGiGNZQiI2iMGfXg/mu5CuVyMBKbmOmiLJQlB8L+SfsZ77FMYPyeSFd+\n6S4u0K8BdnSGYRdsmZ0VrAZvAi0h9dhjDQnBUGRARzQDDB42xHNf1y3WX+uU\nuYct6ESQ15t/ETqFJ7+9ii3ve0yGNSwGIMHDkw25DRTSQIJ5hsgovooLHf4c\nifZiSGFTDIrEaCek3M8WO7jnDplSjHwKWODzBTh8n2gDaW8Oiy+EQDyOq9xa\n5yKzNR4lV8h2sx57e9hg8wst+yhg0FrMdt02FplItunucXP2tfAXBczL5oyY\nG0Hyqlxpoz/Mt6Fg5oIUPt8nNn3PDPAU+tgT+wuKKsVuXokC+fv8CmDlJs13\nGLYnZx6rufeiE8rqiAmFeHyUl8KddmYpA3RDMEnZLPmKG548BU76F+ujuLF/\nyDsAv8DvoZgKg629yEyKzsGLIx26Rlp4hVURJHPQUNlRnRp1d2VouxYyVabf\nSP6FJ6tj6q0FposzskOmdNUDzRaXwA2vIqf+dvZ8bLUgQSkyKEUw5S+uUh5t\nbwrhvX/WYydc/jvaNSMO6b83X/Ov+wWht2jowpVlq+uwoBBC8bWeiuJJRxoM\nsneA\r\n=WOBt\r\n-----END PGP SIGNATURE-----\r\n" - }, - "gitHead": "29ea8693e288e5ced3ebd670d545925f16a4ed17", - "homepage": "https://apidevtools.org/json-schema-ref-parser/", + "files": [ + "lib" + ], + "homepage": "https://apitools.dev/json-schema-ref-parser/", "keywords": [ "json", "schema", @@ -119,35 +80,24 @@ ], "license": "MIT", "main": "lib/index.js", - "maintainers": [ - { - "name": "bigstickcarpet", - "email": "bigstickcarpet@gmail.com" - } - ], "name": "json-schema-ref-parser", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", "repository": { "type": "git", "url": "git+https://github.com/APIDevTools/json-schema-ref-parser.git" }, "scripts": { - "build": "simplifyify lib/index.js --outfile dist/ref-parser.js --standalone \\$RefParser --bundle --debug --minify", - "bump": "bump --prompt --grep dist/* --tag --push --all", + "bump": "bump --tag --push --all", "coverage": "npm run coverage:node && npm run coverage:browser", - "coverage:browser": "npm run build -- --coverage && npm run test:browser -- --coverage", - "coverage:node": "nyc --reporter=text --reporter=lcov --report-dir coverage/node mocha", + "coverage:browser": "npm run test:browser -- --coverage", + "coverage:node": "nyc --reporter=text --reporter=lcov --report-dir coverage/node node_modules/mocha/bin/mocha", "lint": "eslint lib test/fixtures test/specs", "release": "npm run upgrade && npm test && npm run bump", - "start": "http-server -c-1 -o http://localhost:8080/test/", "test": "npm run test:node && npm run test:browser && npm run test:typescript && npm run lint", - "test:browser": "npm run build && karma start --single-run", + "test:browser": "karma start --single-run", "test:node": "mocha", "test:typescript": "tsc --noEmit --strict --lib esnext test/specs/typescript-definition.spec.ts", - "upgrade": "npm-check -u", - "watch": "npm run build -- --watch" + "upgrade": "npm-check -u && npm audit fix" }, "typings": "lib/index.d.ts", - "version": "6.1.0" + "version": "7.1.3" } diff --git a/forward_engineering/node_modules/jsonschema-draft4/.npmignore b/forward_engineering/node_modules/jsonschema-draft4/.npmignore deleted file mode 100644 index cb741ea..0000000 --- a/forward_engineering/node_modules/jsonschema-draft4/.npmignore +++ /dev/null @@ -1,11 +0,0 @@ -/.git/ -/dist/ -/bower_components/ -/example/ -/coverage/ -/node_modules/ -.gitignore -.jshint* -.travis.yml -*.swp -*.spec.js diff --git a/forward_engineering/node_modules/jsonschema-draft4/README.md b/forward_engineering/node_modules/jsonschema-draft4/README.md deleted file mode 100644 index 2236a8c..0000000 --- a/forward_engineering/node_modules/jsonschema-draft4/README.md +++ /dev/null @@ -1,36 +0,0 @@ -# jsonschema-draft4 [![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Build Status][travis-image]][travis-url] -> A copy of json schema draft 4. - -As found at http://json-schema.org/draft-04/schema. - -## LICENSE -`````` -The MIT License (MIT) - -Copyright (c) 2016 Kogo Software LLC - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -`````` - -[downloads-image]: http://img.shields.io/npm/dm/jsonschema-draft4.svg -[npm-url]: https://npmjs.org/package/jsonschema-draft4 -[npm-image]: http://img.shields.io/npm/v/jsonschema-draft4.svg - -[travis-url]: https://travis-ci.org/kogosoftwarellc/jsonschema-draft4 -[travis-image]: http://img.shields.io/travis/kogosoftwarellc/jsonschema-draft4.svg diff --git a/forward_engineering/node_modules/jsonschema-draft4/package.json b/forward_engineering/node_modules/jsonschema-draft4/package.json deleted file mode 100644 index a31772f..0000000 --- a/forward_engineering/node_modules/jsonschema-draft4/package.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "_args": [ - [ - { - "raw": "jsonschema-draft4@^1.0.0", - "scope": null, - "escapedName": "jsonschema-draft4", - "name": "jsonschema-draft4", - "rawSpec": "^1.0.0", - "spec": ">=1.0.0 <2.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/openapi-schema-validation" - ] - ], - "_from": "jsonschema-draft4@>=1.0.0 <2.0.0", - "_id": "jsonschema-draft4@1.0.0", - "_inCache": true, - "_location": "/jsonschema-draft4", - "_nodeVersion": "0.12.7", - "_npmUser": { - "name": "jsdevel", - "email": "js.developer.undefined@gmail.com" - }, - "_npmVersion": "3.5.2", - "_phantomChildren": {}, - "_requested": { - "raw": "jsonschema-draft4@^1.0.0", - "scope": null, - "escapedName": "jsonschema-draft4", - "name": "jsonschema-draft4", - "rawSpec": "^1.0.0", - "spec": ">=1.0.0 <2.0.0", - "type": "range" - }, - "_requiredBy": [ - "/openapi-schema-validation" - ], - "_resolved": "https://registry.npmjs.org/jsonschema-draft4/-/jsonschema-draft4-1.0.0.tgz", - "_shasum": "f0af2005054f0f0ade7ea2118614b69dc512d865", - "_shrinkwrap": null, - "_spec": "jsonschema-draft4@^1.0.0", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/openapi-schema-validation", - "author": { - "name": "Joseph Spencer" - }, - "bugs": { - "url": "https://github.com/kogosoftwarellc/jsonschema-draft4/issues" - }, - "dependencies": {}, - "description": "A copy of json schema draft 4.", - "devDependencies": {}, - "directories": {}, - "dist": { - "shasum": "f0af2005054f0f0ade7ea2118614b69dc512d865", - "tarball": "https://registry.npmjs.org/jsonschema-draft4/-/jsonschema-draft4-1.0.0.tgz" - }, - "gitHead": "6de8addf51f371a27872d8137aeeaef316304715", - "homepage": "https://github.com/kogosoftwarellc/jsonschema-draft4#readme", - "keywords": [ - "json", - "schema", - "jsonschema", - "draft4", - "draft-4", - "draft4" - ], - "license": "MIT", - "main": "./schema.json", - "maintainers": [ - { - "name": "jsdevel", - "email": "js.developer.undefined@gmail.com" - } - ], - "name": "jsonschema-draft4", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", - "repository": { - "type": "git", - "url": "git+https://github.com/kogosoftwarellc/jsonschema-draft4.git" - }, - "scripts": { - "test": "node schema.json" - }, - "version": "1.0.0" -} diff --git a/forward_engineering/node_modules/jsonschema-draft4/schema.json b/forward_engineering/node_modules/jsonschema-draft4/schema.json deleted file mode 100644 index 85eb502..0000000 --- a/forward_engineering/node_modules/jsonschema-draft4/schema.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "id": "http://json-schema.org/draft-04/schema#", - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "Core schema meta-schema", - "definitions": { - "schemaArray": { - "type": "array", - "minItems": 1, - "items": { "$ref": "#" } - }, - "positiveInteger": { - "type": "integer", - "minimum": 0 - }, - "positiveIntegerDefault0": { - "allOf": [ { "$ref": "#/definitions/positiveInteger" }, { "default": 0 } ] - }, - "simpleTypes": { - "enum": [ "array", "boolean", "integer", "null", "number", "object", "string" ] - }, - "stringArray": { - "type": "array", - "items": { "type": "string" }, - "minItems": 1, - "uniqueItems": true - } - }, - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "uri" - }, - "$schema": { - "type": "string", - "format": "uri" - }, - "title": { - "type": "string" - }, - "description": { - "type": "string" - }, - "default": {}, - "multipleOf": { - "type": "number", - "minimum": 0, - "exclusiveMinimum": true - }, - "maximum": { - "type": "number" - }, - "exclusiveMaximum": { - "type": "boolean", - "default": false - }, - "minimum": { - "type": "number" - }, - "exclusiveMinimum": { - "type": "boolean", - "default": false - }, - "maxLength": { "$ref": "#/definitions/positiveInteger" }, - "minLength": { "$ref": "#/definitions/positiveIntegerDefault0" }, - "pattern": { - "type": "string", - "format": "regex" - }, - "additionalItems": { - "anyOf": [ - { "type": "boolean" }, - { "$ref": "#" } - ], - "default": {} - }, - "items": { - "anyOf": [ - { "$ref": "#" }, - { "$ref": "#/definitions/schemaArray" } - ], - "default": {} - }, - "maxItems": { "$ref": "#/definitions/positiveInteger" }, - "minItems": { "$ref": "#/definitions/positiveIntegerDefault0" }, - "uniqueItems": { - "type": "boolean", - "default": false - }, - "maxProperties": { "$ref": "#/definitions/positiveInteger" }, - "minProperties": { "$ref": "#/definitions/positiveIntegerDefault0" }, - "required": { "$ref": "#/definitions/stringArray" }, - "additionalProperties": { - "anyOf": [ - { "type": "boolean" }, - { "$ref": "#" } - ], - "default": {} - }, - "definitions": { - "type": "object", - "additionalProperties": { "$ref": "#" }, - "default": {} - }, - "properties": { - "type": "object", - "additionalProperties": { "$ref": "#" }, - "default": {} - }, - "patternProperties": { - "type": "object", - "additionalProperties": { "$ref": "#" }, - "default": {} - }, - "dependencies": { - "type": "object", - "additionalProperties": { - "anyOf": [ - { "$ref": "#" }, - { "$ref": "#/definitions/stringArray" } - ] - } - }, - "enum": { - "type": "array", - "minItems": 1, - "uniqueItems": true - }, - "type": { - "anyOf": [ - { "$ref": "#/definitions/simpleTypes" }, - { - "type": "array", - "items": { "$ref": "#/definitions/simpleTypes" }, - "minItems": 1, - "uniqueItems": true - } - ] - }, - "allOf": { "$ref": "#/definitions/schemaArray" }, - "anyOf": { "$ref": "#/definitions/schemaArray" }, - "oneOf": { "$ref": "#/definitions/schemaArray" }, - "not": { "$ref": "#" } - }, - "dependencies": { - "exclusiveMaximum": [ "maximum" ], - "exclusiveMinimum": [ "minimum" ] - }, - "default": {} -} diff --git a/forward_engineering/node_modules/jsonschema/.editorconfig b/forward_engineering/node_modules/jsonschema/.editorconfig deleted file mode 100644 index 0f09989..0000000 --- a/forward_engineering/node_modules/jsonschema/.editorconfig +++ /dev/null @@ -1,10 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true diff --git a/forward_engineering/node_modules/jsonschema/LICENSE b/forward_engineering/node_modules/jsonschema/LICENSE deleted file mode 100644 index 2b49ed2..0000000 --- a/forward_engineering/node_modules/jsonschema/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -jsonschema is licensed under MIT license. - -Copyright (C) 2012-2015 Tom de Grunt - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/forward_engineering/node_modules/jsonschema/README.md b/forward_engineering/node_modules/jsonschema/README.md deleted file mode 100644 index 741d356..0000000 --- a/forward_engineering/node_modules/jsonschema/README.md +++ /dev/null @@ -1,248 +0,0 @@ -[![Build Status](https://secure.travis-ci.org/tdegrunt/jsonschema.svg)](http://travis-ci.org/tdegrunt/jsonschema) - -# jsonschema -[JSON schema](http://json-schema.org/) validator, which is designed to be fast and simple to use. -The latest IETF published draft is v6, this library is mostly v4 compatible. - -## Contributing & bugs -Please fork the repository, make the changes in your fork and include tests. Once you're done making changes, send in a pull request. - -### Bug reports -Please include a test which shows why the code fails. - -## Usage - -### Simple -Simple object validation using JSON schemas. - -```javascript - var Validator = require('jsonschema').Validator; - var v = new Validator(); - var instance = 4; - var schema = {"type": "number"}; - console.log(v.validate(instance, schema)); -``` - -### Even simpler - -```javascript - var validate = require('jsonschema').validate; - console.log(validate(4, {"type": "number"})); -``` - -### Complex example, with split schemas and references - -```javascript - var Validator = require('jsonschema').Validator; - var v = new Validator(); - - // Address, to be embedded on Person - var addressSchema = { - "id": "/SimpleAddress", - "type": "object", - "properties": { - "lines": { - "type": "array", - "items": {"type": "string"} - }, - "zip": {"type": "string"}, - "city": {"type": "string"}, - "country": {"type": "string"} - }, - "required": ["country"] - }; - - // Person - var schema = { - "id": "/SimplePerson", - "type": "object", - "properties": { - "name": {"type": "string"}, - "address": {"$ref": "/SimpleAddress"}, - "votes": {"type": "integer", "minimum": 1} - } - }; - - var p = { - "name": "Barack Obama", - "address": { - "lines": [ "1600 Pennsylvania Avenue Northwest" ], - "zip": "DC 20500", - "city": "Washington", - "country": "USA" - }, - "votes": "lots" - }; - - v.addSchema(addressSchema, '/SimpleAddress'); - console.log(v.validate(p, schema)); -``` - -For a comprehensive, annotated example illustrating all possible validation options, see [examples/all.js](./examples/all.js) - -## Features - -### Definitions -All schema definitions are supported, $schema is ignored. - -### Types -All types are supported - -### Formats -#### Disabling the format keyword. - -You may disable format validation by providing `disableFormat: true` to the validator -options. - -#### String Formats -All formats are supported, phone numbers are expected to follow the [E.123](http://en.wikipedia.org/wiki/E.123) standard. - -#### Custom Formats -You may add your own custom format functions. Format functions accept the input -being validated and return a boolean value. If the returned value is `true`, then -validation succeeds. If the returned value is `false`, then validation fails. - -* Formats added to `Validator.prototype.customFormats` do not affect previously instantiated -Validators. This is to prevent validator instances from being altered once created. -It is conceivable that multiple validators may be created to handle multiple schemas -with different formats in a program. -* Formats added to `validator.customFormats` affect only that Validator instance. - -Here is an example that uses custom formats: - -``` -Validator.prototype.customFormats.myFormat = function(input) { - return input === 'myFormat'; -}; - -var validator = new Validator(); -validator.validate('myFormat', {type: 'string', format: 'myFormat'}).valid; // true -validator.validate('foo', {type: 'string', format: 'myFormat'}).valid; // false -``` - -### Results -The first error found will be thrown as an `Error` object if `options.throwError` is `true`. Otherwise all results will be appended to the `result.errors` array which also contains the success flag `result.valid`. - -When `oneOf` or `anyOf` validations fail, errors that caused any of the sub-schemas referenced therein to fail are not reported, unless `options.nestedErrors` is truthy. This option may be useful when troubleshooting validation errors in complex schemas. - -### Custom properties -Specify your own JSON Schema properties with the validator.attributes property: - -```javascript -validator.attributes.contains = function validateContains(instance, schema, options, ctx) { - if(typeof instance!='string') return; - if(typeof schema.contains!='string') throw new jsonschema.SchemaError('"contains" expects a string', schema); - if(instance.indexOf(schema.contains)<0){ - return 'does not contain the string ' + JSON.stringify(schema.contains); - } -} -var result = validator.validate("i am an instance", { type:"string", contains: "i am" }); -// result.valid === true; -``` - -The instance passes validation if the function returns nothing. A single validation error is produced -if the fuction returns a string. Any number of errors (maybe none at all) may be returned by passing a -`ValidatorResult` object, which may be used like so: - -```javascript - var result = new ValidatorResult(instance, schema, options, ctx); - while(someErrorCondition()){ - result.addError('fails some validation test'); - } - return result; -``` - -### Dereferencing schemas -Sometimes you may want to download schemas from remote sources, like a database, or over HTTP. When importing a schema, -unknown references are inserted into the `validator.unresolvedRefs` Array. Asynchronously shift elements off this array and import -them: - -```javascript - var Validator = require('jsonschema').Validator; - var v = new Validator(); - v.addSchema(initialSchema); - function importNextSchema(){ - var nextSchema = v.unresolvedRefs.shift(); - if(!nextSchema){ done(); return; } - databaseGet(nextSchema, function(schema){ - v.addSchema(schema); - importNextSchema(); - }); - } - importNextSchema(); -``` - -### Pre-Property Validation Hook -If some processing of properties is required prior to validation a function may be passed via the options parameter of the validate function. For example, say you needed to perform type coercion for some properties: - -```const coercionHook = function (instance, property, schema, options, ctx) { - var value = instance[property]; - - // Skip nulls and undefineds - if (value === null || typeof value == 'undefined') { - return; - } - - // If the schema declares a type and the property fails type validation. - if (schema.type && this.attributes.type.call(this, instance, schema, options, ctx.makeChild(schema, property))) { - var types = (schema.type instanceof Array) ? schema.type : [schema.type]; - var coerced = undefined; - - // Go through the declared types until we find something that we can - // coerce the value into. - for (var i = 0; typeof coerced == 'undefined' && i < types.length; i++) { - // If we support coercion to this type - if (lib.coercions[types[i]]) { - // ...attempt it. - coerced = lib.coercions[types[i]](value); - } - } - // If we got a successful coercion we modify the property of the instance. - if (typeof coerced != 'undefined') { - instance[property] = coerced; - } - } -}.bind(validator) - -// And now, to actually perform validation with the coercion hook! -v.validate(instance, schema, { preValidateProperty: coercionHook }); -``` - -## Tests -Uses [JSON Schema Test Suite](https://github.com/json-schema/JSON-Schema-Test-Suite) as well as our own tests. -You'll need to update and init the git submodules: - - git submodule update --init - npm test - -## Contributions - -This library would not be possible without the valuable contributions by: - -- Austin Wright - -... and many others! - -## License - - jsonschema is licensed under MIT license. - - Copyright (C) 2012-2015 Tom de Grunt - - Permission is hereby granted, free of charge, to any person obtaining a copy of - this software and associated documentation files (the "Software"), to deal in - the Software without restriction, including without limitation the rights to - use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies - of the Software, and to permit persons to whom the Software is furnished to do - so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. diff --git a/forward_engineering/node_modules/jsonschema/lib/attribute.js b/forward_engineering/node_modules/jsonschema/lib/attribute.js deleted file mode 100644 index 2920290..0000000 --- a/forward_engineering/node_modules/jsonschema/lib/attribute.js +++ /dev/null @@ -1,820 +0,0 @@ -'use strict'; - -var helpers = require('./helpers'); - -/** @type ValidatorResult */ -var ValidatorResult = helpers.ValidatorResult; -/** @type SchemaError */ -var SchemaError = helpers.SchemaError; - -var attribute = {}; - -attribute.ignoreProperties = { - // informative properties - 'id': true, - 'default': true, - 'description': true, - 'title': true, - // arguments to other properties - 'exclusiveMinimum': true, - 'exclusiveMaximum': true, - 'additionalItems': true, - // special-handled properties - '$schema': true, - '$ref': true, - 'extends': true -}; - -/** - * @name validators - */ -var validators = attribute.validators = {}; - -/** - * Validates whether the instance if of a certain type - * @param instance - * @param schema - * @param options - * @param ctx - * @return {ValidatorResult|null} - */ -validators.type = function validateType (instance, schema, options, ctx) { - // Ignore undefined instances - if (instance === undefined) { - return null; - } - var result = new ValidatorResult(instance, schema, options, ctx); - var types = Array.isArray(schema.type) ? schema.type : [schema.type]; - if (!types.some(this.testType.bind(this, instance, schema, options, ctx))) { - var list = types.map(function (v) { - return v.id && ('<' + v.id + '>') || (v+''); - }); - result.addError({ - name: 'type', - argument: list, - message: "is not of a type(s) " + list, - }); - } - return result; -}; - -function testSchemaNoThrow(instance, options, ctx, callback, schema){ - var throwError = options.throwError; - options.throwError = false; - var res = this.validateSchema(instance, schema, options, ctx); - options.throwError = throwError; - - if (! res.valid && callback instanceof Function) { - callback(res); - } - return res.valid; -} - -/** - * Validates whether the instance matches some of the given schemas - * @param instance - * @param schema - * @param options - * @param ctx - * @return {ValidatorResult|null} - */ -validators.anyOf = function validateAnyOf (instance, schema, options, ctx) { - // Ignore undefined instances - if (instance === undefined) { - return null; - } - var result = new ValidatorResult(instance, schema, options, ctx); - var inner = new ValidatorResult(instance, schema, options, ctx); - if (!Array.isArray(schema.anyOf)){ - throw new SchemaError("anyOf must be an array"); - } - if (!schema.anyOf.some( - testSchemaNoThrow.bind( - this, instance, options, ctx, function(res){inner.importErrors(res);} - ))) { - var list = schema.anyOf.map(function (v, i) { - return (v.id && ('<' + v.id + '>')) || (v.title && JSON.stringify(v.title)) || (v['$ref'] && ('<' + v['$ref'] + '>')) || '[subschema '+i+']'; - }); - if (options.nestedErrors) { - result.importErrors(inner); - } - result.addError({ - name: 'anyOf', - argument: list, - message: "is not any of " + list.join(','), - }); - } - return result; -}; - -/** - * Validates whether the instance matches every given schema - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null} - */ -validators.allOf = function validateAllOf (instance, schema, options, ctx) { - // Ignore undefined instances - if (instance === undefined) { - return null; - } - if (!Array.isArray(schema.allOf)){ - throw new SchemaError("allOf must be an array"); - } - var result = new ValidatorResult(instance, schema, options, ctx); - var self = this; - schema.allOf.forEach(function(v, i){ - var valid = self.validateSchema(instance, v, options, ctx); - if(!valid.valid){ - var msg = (v.id && ('<' + v.id + '>')) || (v.title && JSON.stringify(v.title)) || (v['$ref'] && ('<' + v['$ref'] + '>')) || '[subschema '+i+']'; - result.addError({ - name: 'allOf', - argument: { id: msg, length: valid.errors.length, valid: valid }, - message: 'does not match allOf schema ' + msg + ' with ' + valid.errors.length + ' error[s]:', - }); - result.importErrors(valid); - } - }); - return result; -}; - -/** - * Validates whether the instance matches exactly one of the given schemas - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null} - */ -validators.oneOf = function validateOneOf (instance, schema, options, ctx) { - // Ignore undefined instances - if (instance === undefined) { - return null; - } - if (!Array.isArray(schema.oneOf)){ - throw new SchemaError("oneOf must be an array"); - } - var result = new ValidatorResult(instance, schema, options, ctx); - var inner = new ValidatorResult(instance, schema, options, ctx); - var count = schema.oneOf.filter( - testSchemaNoThrow.bind( - this, instance, options, ctx, function(res) {inner.importErrors(res);} - ) ).length; - var list = schema.oneOf.map(function (v, i) { - return (v.id && ('<' + v.id + '>')) || (v.title && JSON.stringify(v.title)) || (v['$ref'] && ('<' + v['$ref'] + '>')) || '[subschema '+i+']'; - }); - if (count!==1) { - if (options.nestedErrors) { - result.importErrors(inner); - } - result.addError({ - name: 'oneOf', - argument: list, - message: "is not exactly one from " + list.join(','), - }); - } - return result; -}; - -/** - * Validates properties - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null|ValidatorResult} - */ -validators.properties = function validateProperties (instance, schema, options, ctx) { - if(!this.types.object(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var properties = schema.properties || {}; - for (var property in properties) { - if (typeof options.preValidateProperty == 'function') { - options.preValidateProperty(instance, property, properties[property], options, ctx); - } - - var prop = Object.hasOwnProperty.call(instance, property) ? instance[property] : undefined; - var res = this.validateSchema(prop, properties[property], options, ctx.makeChild(properties[property], property)); - if(res.instance !== result.instance[property]) result.instance[property] = res.instance; - result.importErrors(res); - } - return result; -}; - -/** - * Test a specific property within in instance against the additionalProperties schema attribute - * This ignores properties with definitions in the properties schema attribute, but no other attributes. - * If too many more types of property-existance tests pop up they may need their own class of tests (like `type` has) - * @private - * @return {boolean} - */ -function testAdditionalProperty (instance, schema, options, ctx, property, result) { - if(!this.types.object(instance)) return; - if (schema.properties && schema.properties[property] !== undefined) { - return; - } - if (schema.additionalProperties === false) { - result.addError({ - name: 'additionalProperties', - argument: property, - message: "additionalProperty " + JSON.stringify(property) + " exists in instance when not allowed", - }); - } else { - var additionalProperties = schema.additionalProperties || {}; - - if (typeof options.preValidateProperty == 'function') { - options.preValidateProperty(instance, property, additionalProperties, options, ctx); - } - - var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property)); - if(res.instance !== result.instance[property]) result.instance[property] = res.instance; - result.importErrors(res); - } -} - -/** - * Validates patternProperties - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null|ValidatorResult} - */ -validators.patternProperties = function validatePatternProperties (instance, schema, options, ctx) { - if(!this.types.object(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var patternProperties = schema.patternProperties || {}; - - for (var property in instance) { - var test = true; - for (var pattern in patternProperties) { - var expr = new RegExp(pattern); - if (!expr.test(property)) { - continue; - } - test = false; - - if (typeof options.preValidateProperty == 'function') { - options.preValidateProperty(instance, property, patternProperties[pattern], options, ctx); - } - - var res = this.validateSchema(instance[property], patternProperties[pattern], options, ctx.makeChild(patternProperties[pattern], property)); - if(res.instance !== result.instance[property]) result.instance[property] = res.instance; - result.importErrors(res); - } - if (test) { - testAdditionalProperty.call(this, instance, schema, options, ctx, property, result); - } - } - - return result; -}; - -/** - * Validates additionalProperties - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null|ValidatorResult} - */ -validators.additionalProperties = function validateAdditionalProperties (instance, schema, options, ctx) { - if(!this.types.object(instance)) return; - // if patternProperties is defined then we'll test when that one is called instead - if (schema.patternProperties) { - return null; - } - var result = new ValidatorResult(instance, schema, options, ctx); - for (var property in instance) { - testAdditionalProperty.call(this, instance, schema, options, ctx, property, result); - } - return result; -}; - -/** - * Validates whether the instance value is at least of a certain length, when the instance value is a string. - * @param instance - * @param schema - * @return {String|null} - */ -validators.minProperties = function validateMinProperties (instance, schema, options, ctx) { - if (!this.types.object(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var keys = Object.keys(instance); - if (!(keys.length >= schema.minProperties)) { - result.addError({ - name: 'minProperties', - argument: schema.minProperties, - message: "does not meet minimum property length of " + schema.minProperties, - }) - } - return result; -}; - -/** - * Validates whether the instance value is at most of a certain length, when the instance value is a string. - * @param instance - * @param schema - * @return {String|null} - */ -validators.maxProperties = function validateMaxProperties (instance, schema, options, ctx) { - if (!this.types.object(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var keys = Object.keys(instance); - if (!(keys.length <= schema.maxProperties)) { - result.addError({ - name: 'maxProperties', - argument: schema.maxProperties, - message: "does not meet maximum property length of " + schema.maxProperties, - }); - } - return result; -}; - -/** - * Validates items when instance is an array - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null|ValidatorResult} - */ -validators.items = function validateItems (instance, schema, options, ctx) { - var self = this; - if (!this.types.array(instance)) return; - if (!schema.items) return; - var result = new ValidatorResult(instance, schema, options, ctx); - instance.every(function (value, i) { - var items = Array.isArray(schema.items) ? (schema.items[i] || schema.additionalItems) : schema.items; - if (items === undefined) { - return true; - } - if (items === false) { - result.addError({ - name: 'items', - message: "additionalItems not permitted", - }); - return false; - } - var res = self.validateSchema(value, items, options, ctx.makeChild(items, i)); - if(res.instance !== result.instance[i]) result.instance[i] = res.instance; - result.importErrors(res); - return true; - }); - return result; -}; - -/** - * Validates minimum and exclusiveMinimum when the type of the instance value is a number. - * @param instance - * @param schema - * @return {String|null} - */ -validators.minimum = function validateMinimum (instance, schema, options, ctx) { - if (!this.types.number(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var valid = true; - if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) { - valid = instance > schema.minimum; - } else { - valid = instance >= schema.minimum; - } - if (!valid) { - result.addError({ - name: 'minimum', - argument: schema.minimum, - message: "must have a minimum value of " + schema.minimum, - }); - } - return result; -}; - -/** - * Validates maximum and exclusiveMaximum when the type of the instance value is a number. - * @param instance - * @param schema - * @return {String|null} - */ -validators.maximum = function validateMaximum (instance, schema, options, ctx) { - if (!this.types.number(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var valid; - if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) { - valid = instance < schema.maximum; - } else { - valid = instance <= schema.maximum; - } - if (!valid) { - result.addError({ - name: 'maximum', - argument: schema.maximum, - message: "must have a maximum value of " + schema.maximum, - }); - } - return result; -}; - -/** - * Perform validation for multipleOf and divisibleBy, which are essentially the same. - * @param instance - * @param schema - * @param validationType - * @param errorMessage - * @returns {String|null} - */ -var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy (instance, schema, options, ctx, validationType, errorMessage) { - if (!this.types.number(instance)) return; - - var validationArgument = schema[validationType]; - if (validationArgument == 0) { - throw new SchemaError(validationType + " cannot be zero"); - } - - var result = new ValidatorResult(instance, schema, options, ctx); - - var instanceDecimals = helpers.getDecimalPlaces(instance); - var divisorDecimals = helpers.getDecimalPlaces(validationArgument); - - var maxDecimals = Math.max(instanceDecimals , divisorDecimals); - var multiplier = Math.pow(10, maxDecimals); - - if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) { - result.addError({ - name: validationType, - argument: validationArgument, - message: errorMessage + JSON.stringify(validationArgument) - }); - } - - return result; -}; - -/** - * Validates divisibleBy when the type of the instance value is a number. - * @param instance - * @param schema - * @return {String|null} - */ -validators.multipleOf = function validateMultipleOf (instance, schema, options, ctx) { - return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) "); -}; - -/** - * Validates multipleOf when the type of the instance value is a number. - * @param instance - * @param schema - * @return {String|null} - */ -validators.divisibleBy = function validateDivisibleBy (instance, schema, options, ctx) { - return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) "); -}; - -/** - * Validates whether the instance value is present. - * @param instance - * @param schema - * @return {String|null} - */ -validators.required = function validateRequired (instance, schema, options, ctx) { - var result = new ValidatorResult(instance, schema, options, ctx); - if (instance === undefined && schema.required === true) { - // A boolean form is implemented for reverse-compatability with schemas written against older drafts - result.addError({ - name: 'required', - message: "is required" - }); - } else if (this.types.object(instance) && Array.isArray(schema.required)) { - schema.required.forEach(function(n){ - if(instance[n]===undefined){ - result.addError({ - name: 'required', - argument: n, - message: "requires property " + JSON.stringify(n), - }); - } - }); - } - return result; -}; - -/** - * Validates whether the instance value matches the regular expression, when the instance value is a string. - * @param instance - * @param schema - * @return {String|null} - */ -validators.pattern = function validatePattern (instance, schema, options, ctx) { - if (!this.types.string(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - if (!instance.match(schema.pattern)) { - result.addError({ - name: 'pattern', - argument: schema.pattern, - message: "does not match pattern " + JSON.stringify(schema.pattern), - }); - } - return result; -}; - -/** - * Validates whether the instance value is of a certain defined format or a custom - * format. - * The following formats are supported for string types: - * - date-time - * - date - * - time - * - ip-address - * - ipv6 - * - uri - * - color - * - host-name - * - alpha - * - alpha-numeric - * - utc-millisec - * @param instance - * @param schema - * @param [options] - * @param [ctx] - * @return {String|null} - */ -validators.format = function validateFormat (instance, schema, options, ctx) { - if (instance===undefined) return; - var result = new ValidatorResult(instance, schema, options, ctx); - if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) { - result.addError({ - name: 'format', - argument: schema.format, - message: "does not conform to the " + JSON.stringify(schema.format) + " format", - }); - } - return result; -}; - -/** - * Validates whether the instance value is at least of a certain length, when the instance value is a string. - * @param instance - * @param schema - * @return {String|null} - */ -validators.minLength = function validateMinLength (instance, schema, options, ctx) { - if (!this.types.string(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - var hsp = instance.match(/[\uDC00-\uDFFF]/g); - var length = instance.length - (hsp ? hsp.length : 0); - if (!(length >= schema.minLength)) { - result.addError({ - name: 'minLength', - argument: schema.minLength, - message: "does not meet minimum length of " + schema.minLength, - }); - } - return result; -}; - -/** - * Validates whether the instance value is at most of a certain length, when the instance value is a string. - * @param instance - * @param schema - * @return {String|null} - */ -validators.maxLength = function validateMaxLength (instance, schema, options, ctx) { - if (!this.types.string(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - // TODO if this was already computed in "minLength", use that value instead of re-computing - var hsp = instance.match(/[\uDC00-\uDFFF]/g); - var length = instance.length - (hsp ? hsp.length : 0); - if (!(length <= schema.maxLength)) { - result.addError({ - name: 'maxLength', - argument: schema.maxLength, - message: "does not meet maximum length of " + schema.maxLength, - }); - } - return result; -}; - -/** - * Validates whether instance contains at least a minimum number of items, when the instance is an Array. - * @param instance - * @param schema - * @return {String|null} - */ -validators.minItems = function validateMinItems (instance, schema, options, ctx) { - if (!this.types.array(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - if (!(instance.length >= schema.minItems)) { - result.addError({ - name: 'minItems', - argument: schema.minItems, - message: "does not meet minimum length of " + schema.minItems, - }); - } - return result; -}; - -/** - * Validates whether instance contains no more than a maximum number of items, when the instance is an Array. - * @param instance - * @param schema - * @return {String|null} - */ -validators.maxItems = function validateMaxItems (instance, schema, options, ctx) { - if (!this.types.array(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - if (!(instance.length <= schema.maxItems)) { - result.addError({ - name: 'maxItems', - argument: schema.maxItems, - message: "does not meet maximum length of " + schema.maxItems, - }); - } - return result; -}; - -/** - * Validates that every item in an instance array is unique, when instance is an array - * @param instance - * @param schema - * @param options - * @param ctx - * @return {String|null|ValidatorResult} - */ -validators.uniqueItems = function validateUniqueItems (instance, schema, options, ctx) { - if (!this.types.array(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - function testArrays (v, i, a) { - for (var j = i + 1; j < a.length; j++) if (helpers.deepCompareStrict(v, a[j])) { - return false; - } - return true; - } - if (!instance.every(testArrays)) { - result.addError({ - name: 'uniqueItems', - message: "contains duplicate item", - }); - } - return result; -}; - -/** - * Deep compares arrays for duplicates - * @param v - * @param i - * @param a - * @private - * @return {boolean} - */ -function testArrays (v, i, a) { - var j, len = a.length; - for (j = i + 1, len; j < len; j++) { - if (helpers.deepCompareStrict(v, a[j])) { - return false; - } - } - return true; -} - -/** - * Validates whether there are no duplicates, when the instance is an Array. - * @param instance - * @return {String|null} - */ -validators.uniqueItems = function validateUniqueItems (instance, schema, options, ctx) { - if (!this.types.array(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - if (!instance.every(testArrays)) { - result.addError({ - name: 'uniqueItems', - message: "contains duplicate item", - }); - } - return result; -}; - -/** - * Validate for the presence of dependency properties, if the instance is an object. - * @param instance - * @param schema - * @param options - * @param ctx - * @return {null|ValidatorResult} - */ -validators.dependencies = function validateDependencies (instance, schema, options, ctx) { - if (!this.types.object(instance)) return; - var result = new ValidatorResult(instance, schema, options, ctx); - for (var property in schema.dependencies) { - if (instance[property] === undefined) { - continue; - } - var dep = schema.dependencies[property]; - var childContext = ctx.makeChild(dep, property); - if (typeof dep == 'string') { - dep = [dep]; - } - if (Array.isArray(dep)) { - dep.forEach(function (prop) { - if (instance[prop] === undefined) { - result.addError({ - // FIXME there's two different "dependencies" errors here with slightly different outputs - // Can we make these the same? Or should we create different error types? - name: 'dependencies', - argument: childContext.propertyPath, - message: "property " + prop + " not found, required by " + childContext.propertyPath, - }); - } - }); - } else { - var res = this.validateSchema(instance, dep, options, childContext); - if(result.instance !== res.instance) result.instance = res.instance; - if (res && res.errors.length) { - result.addError({ - name: 'dependencies', - argument: childContext.propertyPath, - message: "does not meet dependency required by " + childContext.propertyPath, - }); - result.importErrors(res); - } - } - } - return result; -}; - -/** - * Validates whether the instance value is one of the enumerated values. - * - * @param instance - * @param schema - * @return {ValidatorResult|null} - */ -validators['enum'] = function validateEnum (instance, schema, options, ctx) { - if (instance === undefined) { - return null; - } - if (!Array.isArray(schema['enum'])) { - throw new SchemaError("enum expects an array", schema); - } - var result = new ValidatorResult(instance, schema, options, ctx); - if (!schema['enum'].some(helpers.deepCompareStrict.bind(null, instance))) { - result.addError({ - name: 'enum', - argument: schema['enum'], - message: "is not one of enum values: " + schema['enum'].map(String).join(','), - }); - } - return result; -}; - -/** - * Validates whether the instance exactly matches a given value - * - * @param instance - * @param schema - * @return {ValidatorResult|null} - */ -validators['const'] = function validateEnum (instance, schema, options, ctx) { - if (instance === undefined) { - return null; - } - var result = new ValidatorResult(instance, schema, options, ctx); - if (!helpers.deepCompareStrict(schema['const'], instance)) { - result.addError({ - name: 'const', - argument: schema['const'], - message: "does not exactly match expected constant: " + schema['const'], - }); - } - return result; -}; - -/** - * Validates whether the instance if of a prohibited type. - * @param instance - * @param schema - * @param options - * @param ctx - * @return {null|ValidatorResult} - */ -validators.not = validators.disallow = function validateNot (instance, schema, options, ctx) { - var self = this; - if(instance===undefined) return null; - var result = new ValidatorResult(instance, schema, options, ctx); - var notTypes = schema.not || schema.disallow; - if(!notTypes) return null; - if(!Array.isArray(notTypes)) notTypes=[notTypes]; - notTypes.forEach(function (type) { - if (self.testType(instance, schema, options, ctx, type)) { - var schemaId = type && type.id && ('<' + type.id + '>') || type; - result.addError({ - name: 'not', - argument: schemaId, - message: "is of prohibited type " + schemaId, - }); - } - }); - return result; -}; - -module.exports = attribute; diff --git a/forward_engineering/node_modules/jsonschema/lib/helpers.js b/forward_engineering/node_modules/jsonschema/lib/helpers.js deleted file mode 100644 index 4b28543..0000000 --- a/forward_engineering/node_modules/jsonschema/lib/helpers.js +++ /dev/null @@ -1,325 +0,0 @@ -'use strict'; - -var uri = require('url'); - -var ValidationError = exports.ValidationError = function ValidationError (message, instance, schema, propertyPath, name, argument) { - if (propertyPath) { - this.property = propertyPath; - } - if (message) { - this.message = message; - } - if (schema) { - if (schema.id) { - this.schema = schema.id; - } else { - this.schema = schema; - } - } - if (instance) { - this.instance = instance; - } - this.name = name; - this.argument = argument; - this.stack = this.toString(); -}; - -ValidationError.prototype.toString = function toString() { - return this.property + ' ' + this.message; -}; - -var ValidatorResult = exports.ValidatorResult = function ValidatorResult(instance, schema, options, ctx) { - this.instance = instance; - this.schema = schema; - this.propertyPath = ctx.propertyPath; - this.errors = []; - this.throwError = options && options.throwError; - this.disableFormat = options && options.disableFormat === true; -}; - -ValidatorResult.prototype.addError = function addError(detail) { - var err; - if (typeof detail == 'string') { - err = new ValidationError(detail, this.instance, this.schema, this.propertyPath); - } else { - if (!detail) throw new Error('Missing error detail'); - if (!detail.message) throw new Error('Missing error message'); - if (!detail.name) throw new Error('Missing validator type'); - err = new ValidationError(detail.message, this.instance, this.schema, this.propertyPath, detail.name, detail.argument); - } - - if (this.throwError) { - throw err; - } - this.errors.push(err); - return err; -}; - -ValidatorResult.prototype.importErrors = function importErrors(res) { - if (typeof res == 'string' || (res && res.validatorType)) { - this.addError(res); - } else if (res && res.errors) { - Array.prototype.push.apply(this.errors, res.errors); - } -}; - -function stringizer (v,i){ - return i+': '+v.toString()+'\n'; -} -ValidatorResult.prototype.toString = function toString(res) { - return this.errors.map(stringizer).join(''); -}; - -Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() { - return !this.errors.length; -} }); - -/** - * Describes a problem with a Schema which prevents validation of an instance - * @name SchemaError - * @constructor - */ -var SchemaError = exports.SchemaError = function SchemaError (msg, schema) { - this.message = msg; - this.schema = schema; - Error.call(this, msg); - Error.captureStackTrace(this, SchemaError); -}; -SchemaError.prototype = Object.create(Error.prototype, - { constructor: {value: SchemaError, enumerable: false} - , name: {value: 'SchemaError', enumerable: false} - }); - -var SchemaContext = exports.SchemaContext = function SchemaContext (schema, options, propertyPath, base, schemas) { - this.schema = schema; - this.options = options; - this.propertyPath = propertyPath; - this.base = base; - this.schemas = schemas; -}; - -SchemaContext.prototype.resolve = function resolve (target) { - return uri.resolve(this.base, target); -}; - -SchemaContext.prototype.makeChild = function makeChild(schema, propertyName){ - var propertyPath = (propertyName===undefined) ? this.propertyPath : this.propertyPath+makeSuffix(propertyName); - var base = uri.resolve(this.base, schema.id||''); - var ctx = new SchemaContext(schema, this.options, propertyPath, base, Object.create(this.schemas)); - if(schema.id && !ctx.schemas[base]){ - ctx.schemas[base] = schema; - } - return ctx; -} - -var FORMAT_REGEXPS = exports.FORMAT_REGEXPS = { - 'date-time': /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/, - 'date': /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/, - 'time': /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/, - - 'email': /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/, - 'ip-address': /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/, - 'ipv6': /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/, - 'uri': /^[a-zA-Z][a-zA-Z0-9+-.]*:[^\s]*$/, - - 'color': /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/, - - // hostname regex from: http://stackoverflow.com/a/1420225/5628 - 'hostname': /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/, - 'host-name': /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/, - - 'alpha': /^[a-zA-Z]+$/, - 'alphanumeric': /^[a-zA-Z0-9]+$/, - 'utc-millisec': function (input) { - return (typeof input === 'string') && parseFloat(input) === parseInt(input, 10) && !isNaN(input); - }, - 'regex': function (input) { - var result = true; - try { - new RegExp(input); - } catch (e) { - result = false; - } - return result; - }, - 'style': /\s*(.+?):\s*([^;]+);?/g, - 'phone': /^\+(?:[0-9] ?){6,14}[0-9]$/ -}; - -FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex; -FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex; -FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS['ip-address']; - -exports.isFormat = function isFormat (input, format, validator) { - if (typeof input === 'string' && FORMAT_REGEXPS[format] !== undefined) { - if (FORMAT_REGEXPS[format] instanceof RegExp) { - return FORMAT_REGEXPS[format].test(input); - } - if (typeof FORMAT_REGEXPS[format] === 'function') { - return FORMAT_REGEXPS[format](input); - } - } else if (validator && validator.customFormats && - typeof validator.customFormats[format] === 'function') { - return validator.customFormats[format](input); - } - return true; -}; - -var makeSuffix = exports.makeSuffix = function makeSuffix (key) { - key = key.toString(); - // This function could be capable of outputting valid a ECMAScript string, but the - // resulting code for testing which form to use would be tens of thousands of characters long - // That means this will use the name form for some illegal forms - if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) { - return '.' + key; - } - if (key.match(/^\d+$/)) { - return '[' + key + ']'; - } - return '[' + JSON.stringify(key) + ']'; -}; - -exports.deepCompareStrict = function deepCompareStrict (a, b) { - if (typeof a !== typeof b) { - return false; - } - if (a instanceof Array) { - if (!(b instanceof Array)) { - return false; - } - if (a.length !== b.length) { - return false; - } - return a.every(function (v, i) { - return deepCompareStrict(a[i], b[i]); - }); - } - if (typeof a === 'object') { - if (!a || !b) { - return a === b; - } - var aKeys = Object.keys(a); - var bKeys = Object.keys(b); - if (aKeys.length !== bKeys.length) { - return false; - } - return aKeys.every(function (v) { - return deepCompareStrict(a[v], b[v]); - }); - } - return a === b; -}; - -function deepMerger (target, dst, e, i) { - if (typeof e === 'object') { - dst[i] = deepMerge(target[i], e) - } else { - if (target.indexOf(e) === -1) { - dst.push(e) - } - } -} - -function copyist (src, dst, key) { - dst[key] = src[key]; -} - -function copyistWithDeepMerge (target, src, dst, key) { - if (typeof src[key] !== 'object' || !src[key]) { - dst[key] = src[key]; - } - else { - if (!target[key]) { - dst[key] = src[key]; - } else { - dst[key] = deepMerge(target[key], src[key]) - } - } -} - -function deepMerge (target, src) { - var array = Array.isArray(src); - var dst = array && [] || {}; - - if (array) { - target = target || []; - dst = dst.concat(target); - src.forEach(deepMerger.bind(null, target, dst)); - } else { - if (target && typeof target === 'object') { - Object.keys(target).forEach(copyist.bind(null, target, dst)); - } - Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst)); - } - - return dst; -}; - -module.exports.deepMerge = deepMerge; - -/** - * Validates instance against the provided schema - * Implements URI+JSON Pointer encoding, e.g. "%7e"="~0"=>"~", "~1"="%2f"=>"/" - * @param o - * @param s The path to walk o along - * @return any - */ -exports.objectGetPath = function objectGetPath(o, s) { - var parts = s.split('/').slice(1); - var k; - while (typeof (k=parts.shift()) == 'string') { - var n = decodeURIComponent(k.replace(/~0/,'~').replace(/~1/g,'/')); - if (!(n in o)) return; - o = o[n]; - } - return o; -}; - -function pathEncoder (v) { - return '/'+encodeURIComponent(v).replace(/~/g,'%7E'); -} -/** - * Accept an Array of property names and return a JSON Pointer URI fragment - * @param Array a - * @return {String} - */ -exports.encodePath = function encodePointer(a){ - // ~ must be encoded explicitly because hacks - // the slash is encoded by encodeURIComponent - return a.map(pathEncoder).join(''); -}; - - -/** - * Calculate the number of decimal places a number uses - * We need this to get correct results out of multipleOf and divisibleBy - * when either figure is has decimal places, due to IEEE-754 float issues. - * @param number - * @returns {number} - */ -exports.getDecimalPlaces = function getDecimalPlaces(number) { - - var decimalPlaces = 0; - if (isNaN(number)) return decimalPlaces; - - if (typeof number !== 'number') { - number = Number(number); - } - - var parts = number.toString().split('e'); - if (parts.length === 2) { - if (parts[1][0] !== '-') { - return decimalPlaces; - } else { - decimalPlaces = Number(parts[1].slice(1)); - } - } - - var decimalParts = parts[0].split('.'); - if (decimalParts.length === 2) { - decimalPlaces += decimalParts[1].length; - } - - return decimalPlaces; -}; - diff --git a/forward_engineering/node_modules/jsonschema/lib/index.d.ts b/forward_engineering/node_modules/jsonschema/lib/index.d.ts deleted file mode 100644 index 98d7442..0000000 --- a/forward_engineering/node_modules/jsonschema/lib/index.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -/* -This is type definition for typescript. -This is for library users. Thus, properties and methods for internal use is omitted. - */ -export declare class Validator { - constructor(); - customFormats: {[formatName: string]: CustomFormat}; - schemas: {[id: string]: Schema}; - unresolvedRefs: string[]; - - attributes: {[property: string]: CustomProperty}; - - addSchema(schema?: Schema, uri?: string): Schema|void; - validate(instance: any, schema: Schema, options?: Options, ctx?: SchemaContext): ValidatorResult; -} - -export declare class ValidatorResult { - constructor(instance: any, schema: Schema, options: Options, ctx: SchemaContext) - instance: any; - schema: Schema; - propertyPath: string; - errors: ValidationError[]; - throwError: boolean; - disableFormat: boolean; - valid: boolean; - addError(detail: string|ErrorDetail): ValidationError; - toString(): string; -} - -export declare class ValidationError { - constructor(message?: string, instance?: any, schema?: Schema, propertyPath?: any, name?: string, argument?: any); - property: string; - message: string; - schema: string|Schema; - instance: any; - name: string; - argument: any; - toString(): string; -} - -export declare class SchemaError extends Error{ - constructor(msg: string, schema: Schema); - schema: Schema; - message: string; -} - -export declare function validate(instance: any, schema: any, options?: Options): ValidatorResult - -export interface Schema { - id?: string - $schema?: string - $ref?: string - title?: string - description?: string - multipleOf?: number - maximum?: number - exclusiveMaximum?: boolean - minimum?: number - exclusiveMinimum?: boolean - maxLength?: number - minLength?: number - pattern?: string - additionalItems?: boolean | Schema - items?: Schema | Schema[] - maxItems?: number - minItems?: number - uniqueItems?: boolean - maxProperties?: number - minProperties?: number - required?: string[] - additionalProperties?: boolean | Schema - definitions?: { - [name: string]: Schema - } - properties?: { - [name: string]: Schema - } - patternProperties?: { - [name: string]: Schema - } - dependencies?: { - [name: string]: Schema | string[] - } - 'enum'?: any[] - type?: string | string[] - format?: string - allOf?: Schema[] - anyOf?: Schema[] - oneOf?: Schema[] - not?: Schema -} - -export interface Options { - skipAttributes?: string[]; - allowUnknownAttributes?: boolean; - rewrite?: RewriteFunction; - propertyName?: string; - base?: string; - throwError?: boolean; -} - -export interface RewriteFunction { - (instance: any, schema: Schema, options: Options, ctx: SchemaContext): any; -} - -export interface SchemaContext { - schema: Schema; - options: Options; - propertyPath: string; - base: string; - schemas: {[base: string]: Schema}; -} - -export interface CustomFormat { - (input: any): boolean; -} - -export interface CustomProperty { - (instance: any, schema: Schema, options: Options, ctx: SchemaContext): string|ValidatorResult; -} - -export interface ErrorDetail { - message: string; - name: string; - argument: string; -} diff --git a/forward_engineering/node_modules/jsonschema/lib/index.js b/forward_engineering/node_modules/jsonschema/lib/index.js deleted file mode 100644 index c68bb2c..0000000 --- a/forward_engineering/node_modules/jsonschema/lib/index.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; - -var Validator = module.exports.Validator = require('./validator'); - -module.exports.ValidatorResult = require('./helpers').ValidatorResult; -module.exports.ValidationError = require('./helpers').ValidationError; -module.exports.SchemaError = require('./helpers').SchemaError; -module.exports.SchemaScanResult = require('./scan').SchemaScanResult; -module.exports.scan = require('./scan').scan; - -module.exports.validate = function (instance, schema, options) { - var v = new Validator(); - return v.validate(instance, schema, options); -}; diff --git a/forward_engineering/node_modules/jsonschema/lib/scan.js b/forward_engineering/node_modules/jsonschema/lib/scan.js deleted file mode 100644 index 94eef81..0000000 --- a/forward_engineering/node_modules/jsonschema/lib/scan.js +++ /dev/null @@ -1,74 +0,0 @@ - -var urilib = require('url'); -var helpers = require('./helpers'); - -module.exports.SchemaScanResult = SchemaScanResult; -function SchemaScanResult(found, ref){ - this.id = found; - this.ref = ref; -} - -/** - * Adds a schema with a certain urn to the Validator instance. - * @param string uri - * @param object schema - * @return {Object} - */ -module.exports.scan = function scan(base, schema){ - function scanSchema(baseuri, schema){ - if(!schema || typeof schema!='object') return; - // Mark all referenced schemas so we can tell later which schemas are referred to, but never defined - if(schema.$ref){ - var resolvedUri = urilib.resolve(baseuri, schema.$ref); - ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri]+1 : 0; - return; - } - var ourBase = schema.id ? urilib.resolve(baseuri, schema.id) : baseuri; - if (ourBase) { - // If there's no fragment, append an empty one - if(ourBase.indexOf('#')<0) ourBase += '#'; - if(found[ourBase]){ - if(!helpers.deepCompareStrict(found[ourBase], schema)){ - throw new Error('Schema <'+schema+'> already exists with different definition'); - } - return found[ourBase]; - } - found[ourBase] = schema; - // strip trailing fragment - if(ourBase[ourBase.length-1]=='#'){ - found[ourBase.substring(0, ourBase.length-1)] = schema; - } - } - scanArray(ourBase+'/items', ((schema.items instanceof Array)?schema.items:[schema.items])); - scanArray(ourBase+'/extends', ((schema.extends instanceof Array)?schema.extends:[schema.extends])); - scanSchema(ourBase+'/additionalItems', schema.additionalItems); - scanObject(ourBase+'/properties', schema.properties); - scanSchema(ourBase+'/additionalProperties', schema.additionalProperties); - scanObject(ourBase+'/definitions', schema.definitions); - scanObject(ourBase+'/patternProperties', schema.patternProperties); - scanObject(ourBase+'/dependencies', schema.dependencies); - scanArray(ourBase+'/disallow', schema.disallow); - scanArray(ourBase+'/allOf', schema.allOf); - scanArray(ourBase+'/anyOf', schema.anyOf); - scanArray(ourBase+'/oneOf', schema.oneOf); - scanSchema(ourBase+'/not', schema.not); - } - function scanArray(baseuri, schemas){ - if(!(schemas instanceof Array)) return; - for(var i=0; i", schema); - } - var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1)); - if(subschema===undefined){ - throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema); - } - return {subschema: subschema, switchSchema: switchSchema}; -}; - -/** - * Tests whether the instance if of a certain type. - * @private - * @param instance - * @param schema - * @param options - * @param ctx - * @param type - * @return {boolean} - */ -Validator.prototype.testType = function validateType (instance, schema, options, ctx, type) { - if (typeof this.types[type] == 'function') { - return this.types[type].call(this, instance); - } - if (type && typeof type == 'object') { - var res = this.validateSchema(instance, type, options, ctx); - return res === undefined || !(res && res.errors.length); - } - // Undefined or properties not on the list are acceptable, same as not being defined - return true; -}; - -var types = Validator.prototype.types = {}; -types.string = function testString (instance) { - return typeof instance == 'string'; -}; -types.number = function testNumber (instance) { - // isFinite returns false for NaN, Infinity, and -Infinity - return typeof instance == 'number' && isFinite(instance); -}; -types.integer = function testInteger (instance) { - return (typeof instance == 'number') && instance % 1 === 0; -}; -types.boolean = function testBoolean (instance) { - return typeof instance == 'boolean'; -}; -types.array = function testArray (instance) { - return Array.isArray(instance); -}; -types['null'] = function testNull (instance) { - return instance === null; -}; -types.date = function testDate (instance) { - return instance instanceof Date; -}; -types.any = function testAny (instance) { - return true; -}; -types.object = function testObject (instance) { - // TODO: fix this - see #15 - return instance && (typeof instance) === 'object' && !(instance instanceof Array) && !(instance instanceof Date); -}; - -module.exports = Validator; diff --git a/forward_engineering/node_modules/jsonschema/package.json b/forward_engineering/node_modules/jsonschema/package.json deleted file mode 100644 index 9e1f9c4..0000000 --- a/forward_engineering/node_modules/jsonschema/package.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "_args": [ - [ - { - "raw": "jsonschema@1.2.4", - "scope": null, - "escapedName": "jsonschema", - "name": "jsonschema", - "rawSpec": "1.2.4", - "spec": "1.2.4", - "type": "version" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/openapi-schema-validation" - ] - ], - "_from": "jsonschema@1.2.4", - "_id": "jsonschema@1.2.4", - "_inCache": true, - "_location": "/jsonschema", - "_nodeVersion": "9.8.0", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/jsonschema_1.2.4_1522814694332_0.5424883819700264" - }, - "_npmUser": { - "name": "acubed", - "email": "aaa@bzfx.net" - }, - "_npmVersion": "5.6.0", - "_phantomChildren": {}, - "_requested": { - "raw": "jsonschema@1.2.4", - "scope": null, - "escapedName": "jsonschema", - "name": "jsonschema", - "rawSpec": "1.2.4", - "spec": "1.2.4", - "type": "version" - }, - "_requiredBy": [ - "/openapi-schema-validation" - ], - "_resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.4.tgz", - "_shasum": "a46bac5d3506a254465bc548876e267c6d0d6464", - "_shrinkwrap": null, - "_spec": "jsonschema@1.2.4", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/openapi-schema-validation", - "author": { - "name": "Tom de Grunt", - "email": "tom@degrunt.nl" - }, - "bugs": { - "url": "https://github.com/tdegrunt/jsonschema/issues" - }, - "contributors": [ - { - "name": "Austin Wright" - } - ], - "dependencies": {}, - "description": "A fast and easy to use JSON Schema validator", - "devDependencies": { - "chai": "~1.5.0", - "json-metaschema": "^1.2.0", - "mocha": "~3" - }, - "directories": {}, - "dist": { - "integrity": "sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw==", - "shasum": "a46bac5d3506a254465bc548876e267c6d0d6464", - "tarball": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.4.tgz", - "fileCount": 10, - "unpackedSize": 63492 - }, - "engines": { - "node": "*" - }, - "gitHead": "9abc4f5d0420759c5606b597bae954f47a13e1ac", - "homepage": "https://github.com/tdegrunt/jsonschema#readme", - "keywords": [ - "json", - "schema", - "jsonschema", - "validator", - "validation" - ], - "license": "MIT", - "main": "./lib", - "maintainers": [ - { - "name": "acubed", - "email": "aaa@bzfx.net" - }, - { - "name": "tdegrunt", - "email": "tom@degrunt.nl" - } - ], - "name": "jsonschema", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", - "repository": { - "type": "git", - "url": "git://github.com/tdegrunt/jsonschema.git" - }, - "scripts": { - "test": "mocha -R spec" - }, - "typings": "./lib/index.d.ts", - "version": "1.2.4" -} diff --git a/forward_engineering/node_modules/ono/CHANGELOG.md b/forward_engineering/node_modules/ono/CHANGELOG.md index bf1b572..be33722 100644 --- a/forward_engineering/node_modules/ono/CHANGELOG.md +++ b/forward_engineering/node_modules/ono/CHANGELOG.md @@ -1,10 +1,69 @@ -# Change Log +Change Log +======================================= All notable changes will be documented in this file. `ono` adheres to [Semantic Versioning](http://semver.org/). -## [v4.0.0](https://github.com/JS-DevTools/ono/tree/v4.0.0) (2017-07-07) +[v6.0.0](https://github.com/JS-DevTools/ono/tree/v6.0.0) (2019-12-28) +---------------------------------------------------------------------------------------------------- +### Breaking Changes + +- Dropped support for IE8 and other JavaScript engines that don't support [`Object.getOwnPropertyDescriptor()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor) + +- Removed `ono.formatter`. It has been replaced with [the `format` option](https://github.com/JS-DevTools/ono#format-option) + +- When using the default `ono()` function to wrap an error, it will now try to match the error's type, rather than simply using the base `Error` class. + +### New Features + +- The [`Ono` constructor](https://github.com/JS-DevTools/ono#onoerror-options) now accepts an optional [options parameter](https://github.com/JS-DevTools/ono#options), which lets you customize the behavior of Ono + +- The [`concatMessages` option](https://github.com/JS-DevTools/ono#concatmessages-option) lets you control whether the original error's message is appended to your error message + +- The [`format` option](https://github.com/JS-DevTools/ono#format-option) lets you provide a custom function for replacing placeholders in error messages + + +[Full Changelog](https://github.com/JS-DevTools/ono/compare/v5.1.0...v6.0.0) + + +[v5.1.0](https://github.com/JS-DevTools/ono/tree/v5.1.0) (2019-09-10) +---------------------------------------------------------------------------------------------------- + +- Added a static `Ono.toJSON()` method that accepts any `Error` (even a non-Ono error) and returns a POJO that can be used with `JSON.stringify()`. Ono errors already have a built-in `toJSON()` method, but this exposes that enhanced functionality in a way that can be used with _any_ error. + +[Full Changelog](https://github.com/JS-DevTools/ono/compare/v5.0.2...v5.1.0) + + + +[v5.0.0](https://github.com/JS-DevTools/ono/tree/v5.0.0) (2019-02-18) +---------------------------------------------------------------------------------------------------- +### Breaking Changes + +#### in Node.js + +- Ono errors previously included an `inspect()` method to support Node's [`util.inspect()` function](https://nodejs.org/api/util.html#util_util_inspect_object_options). As of Node v6.6.0, the `inspect()` method is deprecated in favor of a [`util.inspect.custom`](https://nodejs.org/api/util.html#util_util_inspect_custom). Ono has updated accordingly, so errors no longer have an `inspect()` method. + +#### in Web Browsers + +- We no longer automatically include a polyfill for [Node's `util.format()` function](https://nodejs.org/api/util.html#util_util_format_format_args). We recommend using [ES6 template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) instead. Or you can import [a polyfill](https://github.com/tmpfs/format-util) yourself and assign it to [the `ono.formatter` property](https://jstools.dev/ono/#onoformatter). + +### New Features + +- Completely rewritten in TypeScript. + +- Ono is now completely dependency free. + +- You can now create your own Ono functions for custom error classes. See [the docs](https://jstools.dev/ono/#custom-error-classes) for details. + +- Symbol-keyed properties are now supported. If the `originalError` and/or `props` objects has Symbol-keyed properties, they will be copied to the Ono error. + +[Full Changelog](https://github.com/JS-DevTools/ono/compare/v4.0.11...v5.0.0) + + + +[v4.0.0](https://github.com/JS-DevTools/ono/tree/v4.0.0) (2017-07-07) +---------------------------------------------------------------------------------------------------- The `err` parameter (see [the API docs](https://github.com/JS-DevTools/ono#api)) can now be any type of object, not just an `instanceof Error`. This allows for errors that don't extend from the `Error` class, such as [`DOMError`](https://developer.mozilla.org/en-US/docs/Web/API/DOMError), [`DOMException`](https://developer.mozilla.org/en-US/docs/Web/API/DOMException), and custom error types. > **NOTE:** This should **not** be a breaking change, but I'm bumping the major version number out of an abundance of caution. @@ -12,23 +71,26 @@ The `err` parameter (see [the API docs](https://github.com/JS-DevTools/ono#api)) [Full Changelog](https://github.com/JS-DevTools/ono/compare/v3.1.0...v4.0.0) -## [v3.1.0](https://github.com/JS-DevTools/ono/tree/v3.1.0) (2017-06-01) -I removed the direct dependency on [Node's `util.format()`](https://nodejs.org/api/util.html#util_util_format_format_args), which was needlessly bloating the browser bundle. Instead, I now import [`format-util`](https://www.npmjs.com/package/format-util), which a much more [lightweight browser implementation](https://github.com/tmpfs/format-util/blob/f88c550ef10c5aaadc15a7ebab595f891bb385e1/format.js). There's no change when running in Node.js, because `format-util` simply [exports `util.format()`](https://github.com/tmpfs/format-util/blob/392628c5d45e558589f2f19ffb9d79d4b5540010/index.js#L1). +[v3.1.0](https://github.com/JS-DevTools/ono/tree/v3.1.0) (2017-06-01) +---------------------------------------------------------------------------------------------------- +We removed the direct dependency on [Node's `util.format()`](https://nodejs.org/api/util.html#util_util_format_format_args), which was needlessly bloating the browser bundle. Instead, I now import [`format-util`](https://www.npmjs.com/package/format-util), which a much more [lightweight browser implementation](https://github.com/tmpfs/format-util/blob/f88c550ef10c5aaadc15a7ebab595f891bb385e1/format.js). There's no change when running in Node.js, because `format-util` simply [exports `util.format()`](https://github.com/tmpfs/format-util/blob/392628c5d45e558589f2f19ffb9d79d4b5540010/index.js#L1). [Full Changelog](https://github.com/JS-DevTools/ono/compare/v3.0.0...v3.1.0) -## [v3.0.0](https://github.com/JS-DevTools/ono/tree/v3.0.0) (2017-06-01) +[v3.0.0](https://github.com/JS-DevTools/ono/tree/v3.0.0) (2017-06-01) +---------------------------------------------------------------------------------------------------- - Updated all dependencies and verified support for Node 8.0 - Ono no longer appears in error stack traces, so errors look like they came directly from your code [Full Changelog](https://github.com/JS-DevTools/ono/compare/v2.0.0...v3.0.0) -## [v2.0.0](https://github.com/JS-DevTools/ono/tree/v2.0.0) (2015-12-14) +[v2.0.0](https://github.com/JS-DevTools/ono/tree/v2.0.0) (2015-12-14) +---------------------------------------------------------------------------------------------------- - Did a major refactoring and code cleanup - Support for various browser-specific `Error.prototype` properties (`fileName`, `lineNumber`, `sourceURL`, etc.) - If you define a custom `toJSON()` method on an error object, Ono will no longer overwrite it diff --git a/forward_engineering/node_modules/ono/README.md b/forward_engineering/node_modules/ono/README.md index 57d4697..3d76683 100644 --- a/forward_engineering/node_modules/ono/README.md +++ b/forward_engineering/node_modules/ono/README.md @@ -1,6 +1,6 @@ ono (Oh No!) ============================ -#### Throw better errors. +### Throw better errors. [![Build Status](https://api.travis-ci.com/JS-DevTools/ono.svg?branch=master)](https://travis-ci.com/JS-DevTools/ono) [![Coverage Status](https://coveralls.io/repos/github/JS-DevTools/ono/badge.svg?branch=master)](https://coveralls.io/github/JS-DevTools/ono) @@ -9,109 +9,316 @@ ono (Oh No!) [![Dependencies](https://david-dm.org/JS-DevTools/ono.svg)](https://david-dm.org/JS-DevTools/ono) [![License](https://img.shields.io/npm/l/ono.svg)](LICENSE) -[![OS and Browser Compatibility](https://jsdevtools.org/img/ci-badges-with-ie.svg)](https://travis-ci.com/JS-DevTools/ono) +[![OS and Browser Compatibility](https://jstools.dev/img/badges/ci-badges-with-ie.svg)](https://travis-ci.com/JS-DevTools/ono) + + Features -------------------------- -* Formatted error messages, using Node's [`util.format()`](https://nodejs.org/api/util.html#util_util_format_format_args) or your own custom formatter -* Wrap and re-throw an error _without_ losing the original error's message, stack trace, and properties -* Add custom properties to your errors — great for error codes, support numbers, help URLs, etc. -* Errors can be serialized as JSON, including all native and custom properties -* [Tested](https://jsdevtools.org/ono/test/) on Node.js and all modern web browsers on Mac, Windows, Linux, iOS, and Android +- Wrap and re-throw an error _without_ losing the original error's type, message, stack trace, and properties + +- Add custom properties to errors — great for error numbers, status codes, etc. + +- Use [format strings](#format-option) for error messages — great for localization + +- Enhanced support for [`JSON.stringify()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify) and [`util.inspect()`](https://nodejs.org/api/util.html#util_util_inspect_object_options) — great for logging + +- Create Ono instances for your own [custom error classes](#custom-error-classes) + +- [Tested](https://travis-ci.com/JS-DevTools/ono) on Node.js and all modern web browsers on Mac, Windows, and Linux. + Example -------------------------- ```javascript -// Throw an error with formatted message -throw ono("%s is invalid. Must be at least %d characters.", username, minLength); +const ono = require("ono"); + +// Throw an error with custom properties +throw ono({ code: "NOT_FOUND", status: 404 }, `Resource not found: ${url}`); -// Wrap and re-throw an error without losing the original error's message and stack -throw ono(err, "An error occurred while saving your changes"); +// Wrap an error without losing the original error's stack and props +throw ono(originalError, "An error occurred while saving your changes"); -// Throw an error with custom properties (even a custom method!) -throw ono({code: 413, status: "Invalid data", retry: function() {...}}); +// Wrap an error and add custom properties +throw ono(originalError, { code: 404, status: "NOT_FOUND" }); -// Add custom properties to an existing Error -throw ono(err, {code: 413, status: "Invalid data", retry: function() {...}}) +// Wrap an error, add custom properties, and change the error message +throw ono(originalError, { code: 404, status: "NOT_FOUND" }, `Resource not found: ${url}`); -// Any of the above can throw a specific Error subtype instead -throw ono.range(...); // RangeError -throw ono.syntax(...); // SyntaxError -throw ono.reference(...); // ReferenceError +// Throw a specific Error subtype instead +// (works with any of the above signatures) +throw ono.range(...); // RangeError +throw ono.syntax(...); // SyntaxError +throw ono.reference(...); // ReferenceError + +// Create an Ono method for your own custom error class +const { Ono } = require("ono"); +class MyErrorClass extends Error {} +ono.myError = new Ono(MyErrorClass); + +// And use it just like any other Ono method +throw ono.myError(...); // MyErrorClass ``` + Installation -------------------------- -#### Node -Install using [npm](https://docs.npmjs.com/getting-started/what-is-npm): +Install using [npm](https://docs.npmjs.com/about-npm/): ```bash npm install ono ``` -Then require it in your code: + + +Usage +-------------------------- +When using Ono in Node.js apps, you'll probably want to use **CommonJS** syntax: ```javascript -var ono = require("ono"); +const ono = require("ono"); ``` -#### Web Browsers -Reference [`ono.js`](dist/ono.js) or [`ono.min.js`](dist/ono.min.js) in your HTML: +When using a transpiler such as [Babel](https://babeljs.io/) or [TypeScript](https://www.typescriptlang.org/), or a bundler such as [Webpack](https://webpack.js.org/) or [Rollup](https://rollupjs.org/), you can use **ECMAScript modules** syntax instead: -```html - - +```javascript +import ono from "ono"; ``` + +Browser support +-------------------------- +Ono supports recent versions of every major web browser. Older browsers may require [Babel](https://babeljs.io/) and/or [polyfills](https://babeljs.io/docs/en/next/babel-polyfill). + +To use Ono in a browser, you'll need to use a bundling tool such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/). Some bundlers may require a bit of configuration, such as setting `browser: true` in [rollup-plugin-resolve](https://github.com/rollup/rollup-plugin-node-resolve). + + + API -------------------------- -### `ono([err], [props], [message, ...])` +### `ono([originalError], [props], [message, ...])` Creates an [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) object with the given properties. -* `err` - _(optional)_ An existing error object. This error's message, stack trace, and properties will be appended to the new error. +* `originalError` - _(optional)_ The original error that occurred, if any. This error's message, stack trace, and properties will be copied to the new error. If this error's type is one of the [known error types](#specific-error-types), then the new error will be of the same type. + +* `props` - _(optional)_ An object whose properties will be copied to the new error. Properties can be anything, including objects and functions. + +* `message` - _(optional)_ The error message string. If it contains placeholders, then pass each placeholder's value as an additional parameter. See the [`format` option](#format-option) for more info. -* `props` - _(optional)_ An object whose properties will be added to the new error. Properties can be anything, including objects and functions. +### Specific error types +The default `ono()` function may return an instance of the base [`Error` class](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error), or it may return a more specific sub-class, based on the type of the `originalError` argument. If you want to _explicitly_ create a specific type of error, then you can use any of the following methods: -* `message` - _(optional)_ The error message string. If it contains placeholders, then pass each placeholder's value as an additional parameter. See [`ono.formatter`](#onoformatter) for more info. +The method signatures and arguments are exactly the same as [the default `ono()` function](#onooriginalerror-props-message-). -##### Specific error types -The default `ono()` function always creates [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) objects, but you can use any of the following methods to explicitly create the corresponding Error subclass. The method signatures are exactly the same as above. +|Method | Return Type +|:---------------------------|:------------------- +|`ono.error()` |[`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) +|`ono.eval()` |[`EvalError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/EvalError) +|`ono.range()` |[`RangeError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RangeError) +|`ono.reference()` |[`ReferenceError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ReferenceError) +|`ono.syntax()` |[`SyntaxError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError) +|`ono.type()` |[`TypeError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypeError) +|`ono.uri()` |[`URIError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/URIError) +|`ono.yourCustomErrorHere()` |Add your own [custom error classes](#custom-error-classes) to ono -Method | Error type -:-----------------|:------------------- -`ono.error()` |[`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) (this is just an alternate syntax) -`ono.eval()` |[`EvalError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/EvalError) -`ono.range()` |[`RangeError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RangeError) -`ono.reference()` |[`ReferenceError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ReferenceError) -`ono.syntax()` |[`SyntaxError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError) -`ono.type()` |[`TypeError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypeError) -`ono.uri()` |[`URIError`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/URIError) -### `ono.formatter` -By default, Node's [`util.format()`](https://nodejs.org/api/util.html#util_util_format_format) function is used (even in browsers) to format error messages and substitute placeholders with their corresponding values. You can set `ono.formatter` to a [third-party formatter](https://www.npmjs.com/package/format) or even your own custom implementation, like this: + +### `Ono(Error, [options])` +The `Ono` constructor is used to create your own [custom `ono` methods](#custom-error-classes) for custom error types, or to change the default behavior of the built-in methods. + +> **Warning:** Be sure not to confuse `ono` (lowercase) and `Ono` (capitalized). The latter one is a class. + +* `Error` - The Error sub-class that this Ono method will create instances of + +* `options` - _(optional)_ An [options object](#options), which customizes the behavior of the Ono method + + + +Options +--------------------------------- +The `Ono` constructor takes an optional options object as a second parameter. The object can have the following properties, all of which are optional: + +|Option |Type |Default |Description +|-----------------|------------|-------------|--------------------------------------------------------------- +|`concatMessages` |boolean |`true` |When Ono is used to wrap an error, this setting determines whether the inner error's message is appended to the new error message. +|`format` |function or boolean |[`util.format()`](https://nodejs.org/api/util.html#util_util_format_format_args) in Node.js

`false` in web browsers|A function that replaces placeholders like in error messages with values.

If set to `false`, then error messages will be treated as literals and no placeholder replacement will occur. + + +### `concatMessages` Option +When wrapping an error, Ono's default behavior is to append the error's message to your message, with a newline between them. For example: + +```javascript +const ono = require("ono"); + +function createArray(length) { + try { + return new Array(length); + } + catch (error) { + // Wrap and re-throw the error + throw ono(error, "Sorry, I was unable to create the array."); + } +} + +// Try to create an array with a negative length +createArray(-5); +``` + +The above code produces the following error message: + +``` +Sorry, I was unable to create the array. +Invalid array length; +``` + +If you'd rather not include the original message, then you can set the `concatMessages` option to `false`. For example: ```javascript -ono.formatter = function(message) { - var params = Array.prototype.slice.call(arguments, 1); - return params.reduce(function(message, param, index) { - return message.replace("$" + index, param); - }, message); +const { ono, Ono } = require("ono"); + +// Override the default behavior for the RangeError +ono.range = new Ono(RangeError, { concatMessages: false }); + +function createArray(length) { + try { + return new Array(length); + } + catch (error) { + // Wrap and re-throw the error + throw ono(error, "Sorry, I was unable to create the array."); + } } -throw ono("$0 must be greater than $1", 4, 10); +// Try to create an array with a negative length +createArray(-5); +``` + +Now the error only includes your message, not the original error message. + +``` +Sorry, I was unable to create the array. ``` +### `format` option +The `format` option let you set a format function, which replaces placeholders in error messages with values. + +When running in Node.js, Ono uses [the `util.format()` function](https://nodejs.org/api/util.html#util_util_format_format_args) by default, which lets you use placeholders such as %s, %d, and %j. You can provide the values for these placeholders when calling any Ono method: + +```javascript +throw ono("%s is invalid. Must be at least %d characters.", username, minLength); +``` + +Of course, the above example could be accomplished using [ES6 template literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) instead of format strings: + +```javascript +throw ono(`${username} is invalid. Must be at least ${minLength} characters.`); +``` + +Format strings are most useful when you don't alrady know the values at the time that you're writing the string. A common scenario is localization. Here's a simplistic example: + +```javascript +const errorMessages { + invalidLength: { + en: "%s is invalid. Must be at least %d characters.", + es: "%s no es válido. Debe tener al menos %d caracteres.", + zh: "%s 无效。 必须至少%d个字符。", + } +} + +let lang = getCurrentUsersLanguage(); + +throw ono(errorMessages.invalidLength[lang], username, minLength); +``` + +#### The `format` option in web browsers +Web browsers don't have a built-in equivalent of Node's [`util.format()` function](https://nodejs.org/api/util.html#util_util_format_format_args), so format strings are only supported in Node.js by default. However, you can set the `format` option to any compatible polyfill library to enable this functionality in web browsers too. + +Here are some compatible polyfill libraries: + +- [format](https://www.npmjs.com/package/format) +- [format-util](https://github.com/tmpfs/format-util) + + +#### Custom `format` implementation +If the standard [`util.format()`](https://nodejs.org/api/util.html#util_util_format_format_args) functionality isn't sufficient for your needs, then you can set the `format` option to your own custom implementation. Here's a simplistic example: + +```javascript +const { ono, Ono } = require("ono"); + +// This is a simple formatter that replaces $0, $1, $2, ... with the corresponding argument +let options = { + format(message, ...args) { + for (let [index, arg] of args.entries()) { + message = message.replace("$" + index, arg); + } + return message; + } +}; + +// Use your custom formatter for all of the built-in error types +ono.error = new Ono(Error, options); +ono.eval = new Ono(EvalError, options); +ono.range = new Ono(RangeError, options); +ono.reference = new Ono(ReferenceError, options); +ono.syntax = new Ono(SyntaxError, options); +ono.type = new Ono(TypeError, options); +ono.uri = new Ono(URIError, options); + +// Now all Ono functions support your custom formatter +throw ono("$0 is invalid. Must be at least $1 characters.", username, minLength); +``` + + + + +Custom Error Classes +----------------------------- +Ono has built-in support for all of [the built-in JavaScript Error types](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Error_types). For example, you can use `ono.reference()` to create a `ReferenceError`, or `ono.syntax()` to create a `SyntaxError`. In addition to the built-in types, you can also create Ono methods for your own custom error classes. + +```javascript +const { ono, Ono } = require("ono"); +let counter = 0; + +// A custom Error class that assigns a unique ID and timestamp to each error +class MyErrorClass extends Error { + constructor(message) { + super(message); + this.id = ++counter; + this.timestamp = new Date(); + } +} + +// Create a new Ono method for your custom Error class +ono.myError = new Ono(MyErrorClass); + +// You can use this method just like any other Ono method +throw ono.myError({ code: 404, status: "NOT_FOUND" }, `Resource not found: ${url}`); +``` + +The code above throws an instance of `MyErrorClass` that looks like this: + +```javascript +{ + "name": "MyErrorClass", + "message": "Resource not found: xyz.html", + "id": 1, + "timestamp": "2019-01-01T12:30:00.456Z", + "code": 404, + "status": "NOT_FOUND", + "stack": "MyErrorClass: Resource not found: xyz.html\n at someFunction (index.js:24:5)", +} +``` + + + Contributing -------------------------- -I welcome any contributions, enhancements, and bug-fixes. [File an issue](https://github.com/JS-DevTools/ono/issues) on GitHub and [submit a pull request](https://github.com/JS-DevTools/ono/pulls). +Contributions, enhancements, and bug-fixes are welcome! [File an issue](https://github.com/JS-DevTools/ono/issues) on GitHub and [submit a pull request](https://github.com/JS-DevTools/ono/pulls). #### Building/Testing To build/test the project locally on your computer: @@ -129,6 +336,17 @@ To build/test the project locally on your computer: `npm test` + License -------------------------- Ono is 100% free and open-source, under the [MIT license](LICENSE). Use it however you want. + + + +Big Thanks To +-------------------------- +Thanks to these awesome companies for their support of Open Source developers ❤ + +[![Travis CI](https://jstools.dev/img/badges/travis-ci.svg)](https://travis-ci.com) +[![SauceLabs](https://jstools.dev/img/badges/sauce-labs.svg)](https://saucelabs.com) +[![Coveralls](https://jstools.dev/img/badges/coveralls.svg)](https://coveralls.io) diff --git a/forward_engineering/node_modules/ono/cjs/constructor.d.ts b/forward_engineering/node_modules/ono/cjs/constructor.d.ts new file mode 100644 index 0000000..74ae3c1 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/constructor.d.ts @@ -0,0 +1,3 @@ +import { OnoConstructor } from "./types"; +declare const constructor: OnoConstructor; +export { constructor as Ono }; diff --git a/forward_engineering/node_modules/ono/cjs/constructor.js b/forward_engineering/node_modules/ono/cjs/constructor.js new file mode 100644 index 0000000..20bfe90 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/constructor.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const extend_error_1 = require("./extend-error"); +const normalize_1 = require("./normalize"); +const to_json_1 = require("./to-json"); +const constructor = Ono; +exports.Ono = constructor; +/** + * Returns an object containing all properties of the given Error object, + * which can be used with `JSON.stringify()`. + */ +Ono.toJSON = function toJSON(error) { + return to_json_1.toJSON.call(error); +}; +/** + * Creates an `Ono` instance for a specifc error type. + */ +// tslint:disable-next-line: variable-name +function Ono(ErrorConstructor, options) { + options = normalize_1.normalizeOptions(options); + function ono(...args) { + let { originalError, props, message } = normalize_1.normalizeArgs(args, options); + // Create a new error of the specified type + let newError = new ErrorConstructor(message); + // Extend the error with the properties of the original error and the `props` object + extend_error_1.extendError(newError, originalError, props); + return newError; + } + ono[Symbol.species] = ErrorConstructor; + return ono; +} +//# sourceMappingURL=constructor.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/constructor.js.map b/forward_engineering/node_modules/ono/cjs/constructor.js.map new file mode 100644 index 0000000..598f683 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/constructor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"constructor.js","sourceRoot":"","sources":["../src/constructor.ts"],"names":[],"mappings":";;AAAA,iDAA6C;AAC7C,2CAA8D;AAC9D,uCAAkD;AAGlD,MAAM,WAAW,GAAG,GAAqB,CAAC;AAClB,0BAAG;AAE3B;;;GAGG;AACH,GAAG,CAAC,MAAM,GAAG,SAAS,MAAM,CAAsB,KAAQ;IACxD,OAAO,gBAAW,CAAC,IAAI,CAAC,KAAK,CAAkB,CAAC;AAClD,CAAC,CAAC;AAEF;;GAEG;AACH,0CAA0C;AAC1C,SAAS,GAAG,CAAsB,gBAAyC,EAAE,OAAoB;IAC/F,OAAO,GAAG,4BAAgB,CAAC,OAAO,CAAC,CAAC;IAEpC,SAAS,GAAG,CAAwC,GAAG,IAAe;QACpE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,yBAAa,CAAO,IAAI,EAAE,OAAQ,CAAC,CAAC;QAE5E,2CAA2C;QAC3C,IAAI,QAAQ,GAAG,IAAK,gBAAiD,CAAC,OAAO,CAAoC,CAAC;QAElH,oFAAoF;QACpF,0BAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QAE5C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAAC;IACvC,OAAO,GAAG,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/extend-error.d.ts b/forward_engineering/node_modules/ono/cjs/extend-error.d.ts new file mode 100644 index 0000000..7cd0a1a --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/extend-error.d.ts @@ -0,0 +1,9 @@ +import { ErrorPOJO, OnoError } from "./types"; +/** + * Extends the new error with the properties of the original error and the `props` object. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + * @param props - Additional properties to add, if any + */ +export declare function extendError(newError: OnoError, originalError?: ErrorPOJO, props?: object): void; diff --git a/forward_engineering/node_modules/ono/cjs/extend-error.js b/forward_engineering/node_modules/ono/cjs/extend-error.js new file mode 100644 index 0000000..6a6680b --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/extend-error.js @@ -0,0 +1,74 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const isomorphic_node_1 = require("./isomorphic.node"); +const stack_1 = require("./stack"); +const to_json_1 = require("./to-json"); +const protectedProps = ["name", "message", "stack"]; +/** + * Extends the new error with the properties of the original error and the `props` object. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + * @param props - Additional properties to add, if any + */ +function extendError(newError, originalError, props) { + extendStack(newError, originalError); + // Copy properties from the original error + if (originalError && typeof originalError === "object") { + mergeErrors(newError, originalError); + } + // The default `toJSON` method doesn't output props like `name`, `message`, `stack`, etc. + // So replace it with one that outputs every property of the error. + newError.toJSON = to_json_1.toJSON; + // On Node.js, add support for the `util.inspect()` method + if (isomorphic_node_1.addInspectMethod) { + isomorphic_node_1.addInspectMethod(newError); + } + // Finally, copy custom properties that were specified by the user. + // These props OVERWRITE any previous props + if (props && typeof props === "object") { + Object.assign(newError, props); + } +} +exports.extendError = extendError; +/** + * Extend the error stack to include its cause + */ +function extendStack(newError, originalError) { + let stackProp = Object.getOwnPropertyDescriptor(newError, "stack"); + if (stack_1.isLazyStack(stackProp)) { + stack_1.lazyJoinStacks(stackProp, newError, originalError); + } + else if (stack_1.isWritableStack(stackProp)) { + newError.stack = stack_1.joinStacks(newError, originalError); + } +} +/** + * Merges properties of the original error with the new error. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + */ +function mergeErrors(newError, originalError) { + // Get the original error's keys + // NOTE: We specifically exclude properties that we have already set on the new error. + // This is _especially_ important for the `stack` property, because this property has + // a lazy getter in some environments + let keys = to_json_1.getDeepKeys(originalError, protectedProps); + // HACK: We have to cast the errors to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let _newError = newError; + let _originalError = originalError; + for (let key of keys) { + if (_newError[key] === undefined) { + try { + _newError[key] = _originalError[key]; + } + catch (e) { + // This property is read-only, so it can't be copied + } + } + } +} +//# sourceMappingURL=extend-error.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/extend-error.js.map b/forward_engineering/node_modules/ono/cjs/extend-error.js.map new file mode 100644 index 0000000..f6d98ab --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/extend-error.js.map @@ -0,0 +1 @@ +{"version":3,"file":"extend-error.js","sourceRoot":"","sources":["../src/extend-error.ts"],"names":[],"mappings":";;AAAA,uDAAqD;AACrD,mCAAmF;AACnF,uCAAgD;AAGhD,MAAM,cAAc,GAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAE5E;;;;;;GAMG;AACH,SAAgB,WAAW,CAAI,QAAqB,EAAE,aAAyB,EAAE,KAAc;IAC7F,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAErC,0CAA0C;IAC1C,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACtD,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KACtC;IAED,yFAAyF;IACzF,mEAAmE;IACnE,QAAQ,CAAC,MAAM,GAAG,gBAAM,CAAC;IAEzB,0DAA0D;IAC1D,IAAI,kCAAgB,EAAE;QACpB,kCAAgB,CAAC,QAAQ,CAAC,CAAC;KAC5B;IAED,mEAAmE;IACnE,2CAA2C;IAC3C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;KAChC;AACH,CAAC;AAtBD,kCAsBC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,QAAmB,EAAE,aAAyB;IACjE,IAAI,SAAS,GAAG,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEnE,IAAI,mBAAW,CAAC,SAAS,CAAC,EAAE;QAC1B,sBAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;KACpD;SACI,IAAI,uBAAe,CAAC,SAAS,CAAC,EAAE;QACnC,QAAQ,CAAC,KAAK,GAAG,kBAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KACtD;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,QAAmB,EAAE,aAAwB;IAChE,gCAAgC;IAChC,sFAAsF;IACtF,qFAAqF;IACrF,qCAAqC;IACrC,IAAI,IAAI,GAAG,qBAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAEtD,2EAA2E;IAC3E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,SAAS,GAAG,QAAe,CAAC;IAChC,IAAI,cAAc,GAAG,aAAoB,CAAC;IAE1C,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;QACpB,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;YAChC,IAAI;gBACF,SAAS,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;aACtC;YACD,OAAO,CAAC,EAAE;gBACR,oDAAoD;aACrD;SACF;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/index.d.ts b/forward_engineering/node_modules/ono/cjs/index.d.ts new file mode 100644 index 0000000..e7279db --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/index.d.ts @@ -0,0 +1,5 @@ +import { ono } from "./singleton"; +export { Ono } from "./constructor"; +export * from "./types"; +export { ono }; +export default ono; diff --git a/forward_engineering/node_modules/ono/cjs/index.js b/forward_engineering/node_modules/ono/cjs/index.js new file mode 100644 index 0000000..0a242bd --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const singleton_1 = require("./singleton"); +exports.ono = singleton_1.ono; +var constructor_1 = require("./constructor"); +exports.Ono = constructor_1.Ono; +// tslint:disable-next-line: no-default-export +exports.default = singleton_1.ono; +// CommonJS default export hack +if (typeof module === "object" && typeof module.exports === "object") { + module.exports = Object.assign(module.exports.default, module.exports); // tslint:disable-line: no-unsafe-any +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/index.js.map b/forward_engineering/node_modules/ono/cjs/index.js.map new file mode 100644 index 0000000..c5e315f --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,2CAAkC;AAIzB,cAJA,eAAG,CAIA;AAFZ,6CAAoC;AAA3B,4BAAA,GAAG,CAAA;AAIZ,8CAA8C;AAC9C,kBAAe,eAAG,CAAC;AAEnB,+BAA+B;AAC/B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE;IACpE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,qCAAqC;CAC/G"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.browser.d.ts b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.d.ts new file mode 100644 index 0000000..e5d7776 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.d.ts @@ -0,0 +1,15 @@ +/** + * Ono supports custom formatters for error messages. In Node.js, it defaults + * to the `util.format()` function. In browsers, it defaults to `Array.join()`. + * + * The Node.js functionality can be used in a web browser via a polyfill, + * such as "format-util". + * + * @see https://github.com/tmpfs/format-util + */ +export declare const format = false; +/** + * The `util.inspect()` functionality only applies to Node.js. + * We return the constant `false` here so that the Node-specific code gets removed by tree-shaking. + */ +export declare const addInspectMethod = false; diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js new file mode 100644 index 0000000..199e777 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js @@ -0,0 +1,18 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +/** + * Ono supports custom formatters for error messages. In Node.js, it defaults + * to the `util.format()` function. In browsers, it defaults to `Array.join()`. + * + * The Node.js functionality can be used in a web browser via a polyfill, + * such as "format-util". + * + * @see https://github.com/tmpfs/format-util + */ +exports.format = false; +/** + * The `util.inspect()` functionality only applies to Node.js. + * We return the constant `false` here so that the Node-specific code gets removed by tree-shaking. + */ +exports.addInspectMethod = false; +//# sourceMappingURL=isomorphic.browser.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js.map b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js.map new file mode 100644 index 0000000..b0f4ea4 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.browser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"isomorphic.browser.js","sourceRoot":"","sources":["../src/isomorphic.browser.ts"],"names":[],"mappings":";;AAAA;;;;;;;;GAQG;AACU,QAAA,MAAM,GAAG,KAAK,CAAC;AAE5B;;;GAGG;AACU,QAAA,gBAAgB,GAAG,KAAK,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.node.d.ts b/forward_engineering/node_modules/ono/cjs/isomorphic.node.d.ts new file mode 100644 index 0000000..e0ea2c6 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.node.d.ts @@ -0,0 +1,15 @@ +/// +import * as util from "util"; +import { OnoError } from "./types"; +/** + * Ono supports Node's `util.format()` formatting for error messages. + * + * @see https://nodejs.org/api/util.html#util_util_format_format_args + */ +export declare const format: typeof util.format; +/** + * Adds an `inspect()` method to support Node's `util.inspect()` function. + * + * @see https://nodejs.org/api/util.html#util_util_inspect_custom + */ +export declare function addInspectMethod(newError: OnoError): void; diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.node.js b/forward_engineering/node_modules/ono/cjs/isomorphic.node.js new file mode 100644 index 0000000..58b5ab4 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.node.js @@ -0,0 +1,45 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = require("util"); +const to_json_1 = require("./to-json"); +// The `inspect()` method is actually a Symbol, not a string key. +// https://nodejs.org/api/util.html#util_util_inspect_custom +const inspectMethod = util.inspect.custom || Symbol.for("nodejs.util.inspect.custom"); +/** + * Ono supports Node's `util.format()` formatting for error messages. + * + * @see https://nodejs.org/api/util.html#util_util_format_format_args + */ +exports.format = util.format; +/** + * Adds an `inspect()` method to support Node's `util.inspect()` function. + * + * @see https://nodejs.org/api/util.html#util_util_inspect_custom + */ +function addInspectMethod(newError) { + // @ts-ignore + newError[inspectMethod] = inspect; +} +exports.addInspectMethod = addInspectMethod; +/** + * Returns a representation of the error for Node's `util.inspect()` method. + * + * @see https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects + */ +function inspect() { + // HACK: We have to cast the objects to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let pojo = {}; + let error = this; + for (let key of to_json_1.getDeepKeys(error)) { + let value = error[key]; + pojo[key] = value; + } + // Don't include the `inspect()` method on the output object, + // otherwise it will cause `util.inspect()` to go into an infinite loop + delete pojo[inspectMethod]; // tslint:disable-line: no-dynamic-delete + // tslint:enable: no-any no-unsafe-any + return pojo; +} +//# sourceMappingURL=isomorphic.node.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/isomorphic.node.js.map b/forward_engineering/node_modules/ono/cjs/isomorphic.node.js.map new file mode 100644 index 0000000..8437623 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/isomorphic.node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"isomorphic.node.js","sourceRoot":"","sources":["../src/isomorphic.node.ts"],"names":[],"mappings":";;AAAA,6BAA6B;AAC7B,uCAAwC;AAGxC,iEAAiE;AACjE,4DAA4D;AAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAEtF;;;;GAIG;AACU,QAAA,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAElC;;;;GAIG;AACH,SAAgB,gBAAgB,CAAI,QAAqB;IACvD,aAAa;IACb,QAAQ,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC;AACpC,CAAC;AAHD,4CAGC;AAED;;;;GAIG;AACH,SAAS,OAAO;IACd,4EAA4E;IAC5E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,IAAI,GAAQ,EAAE,CAAC;IACnB,IAAI,KAAK,GAAG,IAAW,CAAC;IAExB,KAAK,IAAI,GAAG,IAAI,qBAAW,CAAC,KAAK,CAAC,EAAE;QAClC,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KACnB;IAED,6DAA6D;IAC7D,uEAAuE;IACvE,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAE,yCAAyC;IAEtE,sCAAsC;IACtC,OAAO,IAAqB,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/normalize.d.ts b/forward_engineering/node_modules/ono/cjs/normalize.d.ts new file mode 100644 index 0000000..e5d14d8 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/normalize.d.ts @@ -0,0 +1,13 @@ +import { ErrorLike, OnoOptions } from "./types"; +/** + * Normalizes Ono options, accounting for defaults and optional options. + */ +export declare function normalizeOptions(options?: OnoOptions): OnoOptions; +/** + * Normalizes the Ono arguments, accounting for defaults, options, and optional arguments. + */ +export declare function normalizeArgs(args: unknown[], options: OnoOptions): { + originalError: E | undefined; + props: P | undefined; + message: string; +}; diff --git a/forward_engineering/node_modules/ono/cjs/normalize.js b/forward_engineering/node_modules/ono/cjs/normalize.js new file mode 100644 index 0000000..9cfce6c --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/normalize.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const isomorphic_node_1 = require("./isomorphic.node"); +/** + * Normalizes Ono options, accounting for defaults and optional options. + */ +function normalizeOptions(options) { + options = options || {}; + return { + concatMessages: options.concatMessages === undefined ? true : Boolean(options.concatMessages), + format: options.format === undefined ? isomorphic_node_1.format + : (typeof options.format === "function" ? options.format : false), + }; +} +exports.normalizeOptions = normalizeOptions; +/** + * Normalizes the Ono arguments, accounting for defaults, options, and optional arguments. + */ +function normalizeArgs(args, options) { + let originalError; + let props; + let formatArgs; + let message = ""; + // Determine which arguments were actually specified + if (typeof args[0] === "string") { + formatArgs = args; + } + else if (typeof args[1] === "string") { + if (args[0] instanceof Error) { + originalError = args[0]; + } + else { + props = args[0]; + } + formatArgs = args.slice(1); + } + else { + originalError = args[0]; + props = args[1]; + formatArgs = args.slice(2); + } + // If there are any format arguments, then format the error message + if (formatArgs.length > 0) { + if (options.format) { + message = options.format.apply(undefined, formatArgs); + } + else { + message = formatArgs.join(" "); + } + } + if (options.concatMessages && originalError && originalError.message) { + // The inner-error's message will be added to the new message + message += (message ? " \n" : "") + originalError.message; + } + return { originalError, props, message }; +} +exports.normalizeArgs = normalizeArgs; +//# sourceMappingURL=normalize.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/normalize.js.map b/forward_engineering/node_modules/ono/cjs/normalize.js.map new file mode 100644 index 0000000..8c15c8f --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/normalize.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":";;AAAA,uDAA2C;AAG3C;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAoB;IACnD,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IACxB,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;QAC7F,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAM;YAC3C,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;KACpE,CAAC;AACJ,CAAC;AAPD,4CAOC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAwC,IAAe,EAAE,OAAmB;IACvG,IAAI,aAA4B,CAAC;IACjC,IAAI,KAAoB,CAAC;IACzB,IAAI,UAAqB,CAAC;IAC1B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,oDAAoD;IACpD,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QAC/B,UAAU,GAAG,IAAI,CAAC;KACnB;SACI,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACpC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,EAAE;YAC5B,aAAa,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;SAC9B;aACI;YACH,KAAK,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;SACtB;QACD,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;SACI;QACH,aAAa,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;QAC7B,KAAK,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;QACrB,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;IAED,mEAAmE;IACnE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACzB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;SACvD;aACI;YACH,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChC;KACF;IAED,IAAI,OAAO,CAAC,cAAc,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,EAAE;QACpE,6DAA6D;QAC7D,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC;KAC3D;IAED,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC3C,CAAC;AAzCD,sCAyCC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/singleton.d.ts b/forward_engineering/node_modules/ono/cjs/singleton.d.ts new file mode 100644 index 0000000..f9ed53d --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/singleton.d.ts @@ -0,0 +1,3 @@ +import { OnoSingleton } from "./types"; +declare const singleton: OnoSingleton; +export { singleton as ono }; diff --git a/forward_engineering/node_modules/ono/cjs/singleton.js b/forward_engineering/node_modules/ono/cjs/singleton.js new file mode 100644 index 0000000..4ce2e59 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/singleton.js @@ -0,0 +1,36 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const constructor_1 = require("./constructor"); +const singleton = ono; +exports.ono = singleton; +ono.error = new constructor_1.Ono(Error); +ono.eval = new constructor_1.Ono(EvalError); +ono.range = new constructor_1.Ono(RangeError); +ono.reference = new constructor_1.Ono(ReferenceError); +ono.syntax = new constructor_1.Ono(SyntaxError); +ono.type = new constructor_1.Ono(TypeError); +ono.uri = new constructor_1.Ono(URIError); +const onoMap = ono; +/** + * Creates a new error with the specified message, properties, and/or inner error. + * If an inner error is provided, then the new error will match its type, if possible. + */ +function ono(...args) { + let originalError = args[0]; + // Is the first argument an Error-like object? + if (typeof originalError === "object" && typeof originalError.name === "string") { + // Try to find an Ono singleton method that matches this error type + for (let typedOno of Object.values(onoMap)) { + if (typeof typedOno === "function" && typedOno.name === "ono") { + let species = typedOno[Symbol.species]; + if (species && species !== Error && (originalError instanceof species || originalError.name === species.name)) { + // Create an error of the same type + return typedOno.apply(undefined, args); + } + } + } + } + // By default, create a base Error object + return ono.error.apply(undefined, args); +} +//# sourceMappingURL=singleton.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/singleton.js.map b/forward_engineering/node_modules/ono/cjs/singleton.js.map new file mode 100644 index 0000000..c2accaf --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/singleton.js.map @@ -0,0 +1 @@ +{"version":3,"file":"singleton.js","sourceRoot":"","sources":["../src/singleton.ts"],"names":[],"mappings":";;AACA,+CAAsD;AAGtD,MAAM,SAAS,GAAG,GAAmB,CAAC;AAChB,wBAAG;AAEzB,GAAG,CAAC,KAAK,GAAG,IAAI,iBAAc,CAAC,KAAK,CAAC,CAAC;AACtC,GAAG,CAAC,IAAI,GAAG,IAAI,iBAAc,CAAC,SAAS,CAAC,CAAC;AACzC,GAAG,CAAC,KAAK,GAAG,IAAI,iBAAc,CAAC,UAAU,CAAC,CAAC;AAC3C,GAAG,CAAC,SAAS,GAAG,IAAI,iBAAc,CAAC,cAAc,CAAC,CAAC;AACnD,GAAG,CAAC,MAAM,GAAG,IAAI,iBAAc,CAAC,WAAW,CAAC,CAAC;AAC7C,GAAG,CAAC,IAAI,GAAG,IAAI,iBAAc,CAAC,SAAS,CAAC,CAAC;AACzC,GAAG,CAAC,GAAG,GAAG,IAAI,iBAAc,CAAC,QAAQ,CAAC,CAAC;AAEvC,MAAM,MAAM,GAAG,GAA4C,CAAC;AAE5D;;;GAGG;AACH,SAAS,GAAG,CAAwC,GAAG,IAAe;IACpE,IAAI,aAAa,GAAG,IAAI,CAAC,CAAC,CAA0B,CAAC;IAErD,8CAA8C;IAC9C,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE;QAE/E,mEAAmE;QACnE,KAAK,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC1C,IAAI,OAAO,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE;gBAC7D,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAEvC,IAAI,OAAO,IAAI,OAAO,KAAK,KAAK,IAAI,CAAC,aAAa,YAAY,OAAO,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC7G,mCAAmC;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;iBACxC;aACF;SACF;KACF;IAED,yCAAyC;IACzC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/stack.d.ts b/forward_engineering/node_modules/ono/cjs/stack.d.ts new file mode 100644 index 0000000..2448780 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/stack.d.ts @@ -0,0 +1,28 @@ +import { ErrorLike } from "./types"; +/** + * The Property Descriptor of a lazily-computed `stack` property. + */ +interface LazyStack { + configurable: true; + /** + * Lazily computes the error's stack trace. + */ + get(): string | undefined; +} +/** + * Is the property lazily computed? + */ +export declare function isLazyStack(stackProp: PropertyDescriptor | undefined): stackProp is LazyStack; +/** + * Is the stack property writable? + */ +export declare function isWritableStack(stackProp: PropertyDescriptor | undefined): boolean; +/** + * Appends the original `Error.stack` property to the new Error's stack. + */ +export declare function joinStacks(newError: ErrorLike, originalError?: ErrorLike): string | undefined; +/** + * Calls `joinStacks` lazily, when the `Error.stack` property is accessed. + */ +export declare function lazyJoinStacks(lazyStack: LazyStack, newError: ErrorLike, originalError?: ErrorLike): void; +export {}; diff --git a/forward_engineering/node_modules/ono/cjs/stack.js b/forward_engineering/node_modules/ono/cjs/stack.js new file mode 100644 index 0000000..bd9866d --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/stack.js @@ -0,0 +1,101 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const newline = /\r?\n/; +const onoCall = /\bono[ @]/; +/** + * Is the property lazily computed? + */ +function isLazyStack(stackProp) { + return Boolean(stackProp && + stackProp.configurable && + typeof stackProp.get === "function"); +} +exports.isLazyStack = isLazyStack; +/** + * Is the stack property writable? + */ +function isWritableStack(stackProp) { + return Boolean( + // If there is no stack property, then it's writable, since assigning it will create it + !stackProp || + stackProp.writable || + typeof stackProp.set === "function"); +} +exports.isWritableStack = isWritableStack; +/** + * Appends the original `Error.stack` property to the new Error's stack. + */ +function joinStacks(newError, originalError) { + let newStack = popStack(newError.stack); + let originalStack = originalError ? originalError.stack : undefined; + if (newStack && originalStack) { + return newStack + "\n\n" + originalStack; + } + else { + return newStack || originalStack; + } +} +exports.joinStacks = joinStacks; +/** + * Calls `joinStacks` lazily, when the `Error.stack` property is accessed. + */ +function lazyJoinStacks(lazyStack, newError, originalError) { + if (originalError) { + Object.defineProperty(newError, "stack", { + get: () => { + let newStack = lazyStack.get.apply(newError); + return joinStacks({ stack: newStack }, originalError); + }, + enumerable: false, + configurable: true + }); + } + else { + lazyPopStack(newError, lazyStack); + } +} +exports.lazyJoinStacks = lazyJoinStacks; +/** + * Removes Ono from the stack, so that the stack starts at the original error location + */ +function popStack(stack) { + if (stack) { + let lines = stack.split(newline); + // Find the Ono call(s) in the stack, and remove them + let onoStart; + for (let i = 0; i < lines.length; i++) { + let line = lines[i]; + if (onoCall.test(line)) { + if (onoStart === undefined) { + // We found the first Ono call in the stack trace. + // There may be other subsequent Ono calls as well. + onoStart = i; + } + } + else if (onoStart !== undefined) { + // We found the first non-Ono call after one or more Ono calls. + // So remove the Ono call lines from the stack trace + lines.splice(onoStart, i - onoStart); + break; + } + } + if (lines.length > 0) { + return lines.join("\n"); + } + } + // If we get here, then the stack doesn't contain a call to `ono`. + // This may be due to minification or some optimization of the JS engine. + // So just return the stack as-is. + return stack; +} +/** + * Calls `popStack` lazily, when the `Error.stack` property is accessed. + */ +function lazyPopStack(error, lazyStack) { + Object.defineProperty(error, "stack", { + get: () => popStack(lazyStack.get.apply(error)), + enumerable: false, + configurable: true + }); +} +//# sourceMappingURL=stack.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/stack.js.map b/forward_engineering/node_modules/ono/cjs/stack.js.map new file mode 100644 index 0000000..589d8eb --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/stack.js.map @@ -0,0 +1 @@ +{"version":3,"file":"stack.js","sourceRoot":"","sources":["../src/stack.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/to-json.d.ts b/forward_engineering/node_modules/ono/cjs/to-json.d.ts new file mode 100644 index 0000000..5c06567 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/to-json.d.ts @@ -0,0 +1,11 @@ +import { ErrorLike, ErrorPOJO } from "./types"; +/** + * Custom JSON serializer for Error objects. + * Returns all built-in error properties, as well as extended properties. + */ +export declare function toJSON(this: E): ErrorPOJO & E; +/** + * Returns own, inherited, enumerable, non-enumerable, string, and symbol keys of `obj`. + * Does NOT return members of the base Object prototype, or the specified omitted keys. + */ +export declare function getDeepKeys(obj: object, omit?: Array): Set; diff --git a/forward_engineering/node_modules/ono/cjs/to-json.js b/forward_engineering/node_modules/ono/cjs/to-json.js new file mode 100644 index 0000000..85a241d --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/to-json.js @@ -0,0 +1,49 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const nonJsonTypes = ["function", "symbol", "undefined"]; +const protectedProps = ["constructor", "prototype", "__proto__"]; +const objectPrototype = Object.getPrototypeOf({}); +/** + * Custom JSON serializer for Error objects. + * Returns all built-in error properties, as well as extended properties. + */ +function toJSON() { + // HACK: We have to cast the objects to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let pojo = {}; + let error = this; + for (let key of getDeepKeys(error)) { + if (typeof key === "string") { + let value = error[key]; + let type = typeof value; + if (!nonJsonTypes.includes(type)) { + pojo[key] = value; + } + } + } + // tslint:enable: no-any no-unsafe-any + return pojo; +} +exports.toJSON = toJSON; +/** + * Returns own, inherited, enumerable, non-enumerable, string, and symbol keys of `obj`. + * Does NOT return members of the base Object prototype, or the specified omitted keys. + */ +function getDeepKeys(obj, omit = []) { + let keys = []; + // Crawl the prototype chain, finding all the string and symbol keys + while (obj && obj !== objectPrototype) { + keys = keys.concat(Object.getOwnPropertyNames(obj), Object.getOwnPropertySymbols(obj)); + obj = Object.getPrototypeOf(obj); + } + // De-duplicate the list of keys + let uniqueKeys = new Set(keys); + // Remove any omitted keys + for (let key of omit.concat(protectedProps)) { + uniqueKeys.delete(key); + } + return uniqueKeys; +} +exports.getDeepKeys = getDeepKeys; +//# sourceMappingURL=to-json.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/to-json.js.map b/forward_engineering/node_modules/ono/cjs/to-json.js.map new file mode 100644 index 0000000..ff5cbc9 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/to-json.js.map @@ -0,0 +1 @@ +{"version":3,"file":"to-json.js","sourceRoot":"","sources":["../src/to-json.ts"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AACzD,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AACjE,MAAM,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;AAElD;;;GAGG;AACH,SAAgB,MAAM;IACpB,4EAA4E;IAC5E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,IAAI,GAAQ,EAAE,CAAC;IACnB,IAAI,KAAK,GAAG,IAAW,CAAC;IAExB,KAAK,IAAI,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;QAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,IAAI,GAAG,OAAO,KAAK,CAAC;YAExB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACnB;SACF;KACF;IAED,sCAAsC;IACtC,OAAO,IAAqB,CAAC;AAC/B,CAAC;AApBD,wBAoBC;AAGD;;;GAGG;AACH,SAAgB,WAAW,CAAC,GAAW,EAAE,OAA+B,EAAE;IACxE,IAAI,IAAI,GAA2B,EAAE,CAAC;IAEtC,oEAAoE;IACpE,OAAO,GAAG,IAAI,GAAG,KAAK,eAAe,EAAE;QACrC,IAAI,GAAG,IAAI,CAAC,MAAM,CAChB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAC/B,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAClC,CAAC;QACF,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAW,CAAC;KAC5C;IAED,gCAAgC;IAChC,IAAI,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAE/B,0BAA0B;IAC1B,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;QAC3C,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;KACxB;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AArBD,kCAqBC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/types.d.ts b/forward_engineering/node_modules/ono/cjs/types.d.ts new file mode 100644 index 0000000..a2e7df9 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/types.d.ts @@ -0,0 +1,169 @@ +/// +import { inspect } from "util"; +/** + * The default export of the "ono" module. + */ +export interface OnoSingleton extends Ono { + error: Ono; + eval: Ono; + range: Ono; + reference: Ono; + syntax: Ono; + type: Ono; + uri: Ono; +} +/** + * Creates an `Ono` instance for a specifc error type. + */ +export interface OnoConstructor { + (constructor: ErrorLikeConstructor, options?: OnoOptions): Ono; + new (constructor: ErrorLikeConstructor, options?: OnoOptions): Ono; + /** + * Returns an object containing all properties of the given Error object, + * which can be used with `JSON.stringify()`. + */ + toJSON(error: E): ErrorPOJO & E; +} +/** + * An `Ono` is a function that creates errors of a specific type. + */ +export interface Ono { + /** + * The type of Error that this `Ono` function produces. + */ + readonly [Symbol.species]: ErrorLikeConstructor; + /** + * Creates a new error with the message, stack trace, and properties of another error. + * + * @param error - The original error + */ + (error: E): T & E & OnoError; + /** + * Creates a new error with the message, stack trace, and properties of another error, + * as well as aditional properties. + * + * @param error - The original error + * @param props - An object whose properties will be added to the returned error + */ + (error: E, props: P): T & E & P & OnoError; + /** + * Creates a new error with a formatted message and the stack trace and properties of another error. + * + * @param error - The original error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (error: E, message: string, ...params: unknown[]): T & E & OnoError; + /** + * Creates a new error with a formatted message and the stack trace and properties of another error, + * as well as additional properties. + * + * @param error - The original error + * @param props - An object whose properties will be added to the returned error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (error: E, props: P, message: string, ...params: unknown[]): T & E & P & OnoError; + /** + * Creates an error with a formatted message. + * + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (message: string, ...params: unknown[]): T & OnoError; + /** + * Creates an error with additional properties. + * + * @param props - An object whose properties will be added to the returned error + */ +

(props: P): T & P & OnoError; + /** + * Creates an error with a formatted message and additional properties. + * + * @param props - An object whose properties will be added to the returned error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ +

(props: P, message: string, ...params: unknown[]): T & P & OnoError; +} +/** + * All error objects returned by Ono have these properties. + */ +export interface OnoError extends ErrorPOJO { + /** + * Returns a JSON representation of the error, including all built-in error properties, + * as well as properties that were dynamically added. + */ + toJSON(): ErrorPOJO & T; + /** + * Returns a representation of the error for Node's `util.inspect()` method. + * + * @see https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects + */ + [inspect.custom](): ErrorPOJO & T; +} +/** + * An error object that doesn't inherit from the `Error` class, such as `DOMError`, `DOMException`, + * and some third-party error types. + */ +export interface ErrorPOJO { + message?: string; + stack?: string; + name?: string; +} +/** + * Any object that "looks like" an `Error` object. + */ +export declare type ErrorLike = Error | ErrorPOJO; +/** + * A constructor for `ErrorLike` objects. + */ +export declare type ErrorLikeConstructor = ErrorLikeConstructorFunction | ErrorLikeConstructorClass; +/** + * A constructor function for `ErrorLike` objects. + * Constructor functions can be called without the `new` keyword. + * + * @example + * throw TypeError(); + */ +export interface ErrorLikeConstructorFunction { + readonly prototype: T; + (): T; +} +/** + * A constructor class for `ErrorLike` objects. + * Constructor classes must be called with the `new` keyword. + * + * @example + * throw new TypeError(); + */ +export interface ErrorLikeConstructorClass { + readonly prototype: T; + new (...args: unknown[]): T; +} +/** + * Options that determine the behavior of an `Ono` instance. + */ +export interface OnoOptions { + /** + * When `Ono` is used to wrap an error, this setting determines whether the inner error's message + * is appended to the new error message. + * + * Defaults to `true`. + */ + concatMessages?: boolean; + /** + * A function that replaces placeholders like "%s" or "%d" in error messages with values. + * If set to `false`, then error messages will be treated as literals and no placeholder replacement will occur. + * + * Defaults to `utils.inspect()` in Node.js. Defaults to `Array.join()` in browsers. + */ + format?: MessageFormatter | false; +} +/** + * A function that accepts a message template and arguments to replace template parameters. + * + * @example + * format("Hello, %s! You have %d unread messages.", "John", 5); + */ +export declare type MessageFormatter = (message: string, ...args: unknown[]) => string; diff --git a/forward_engineering/node_modules/ono/cjs/types.js b/forward_engineering/node_modules/ono/cjs/types.js new file mode 100644 index 0000000..85670e7 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/types.js @@ -0,0 +1,4 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const util_1 = require("util"); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/cjs/types.js.map b/forward_engineering/node_modules/ono/cjs/types.js.map new file mode 100644 index 0000000..9441ac2 --- /dev/null +++ b/forward_engineering/node_modules/ono/cjs/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAAA,+BAA+B"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/dist/ono.js b/forward_engineering/node_modules/ono/dist/ono.js deleted file mode 100644 index c739557..0000000 --- a/forward_engineering/node_modules/ono/dist/ono.js +++ /dev/null @@ -1,353 +0,0 @@ -/*! - * Ono v4.0.11 (December 9th 2018) - * - * https://jsdevtools.org/ono - * - * @author James Messinger (https://jamesmessinger.com) - * @license MIT - */ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.ono = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 0) { - formattedMessage = module.exports.formatter.apply(null, formatArgs); - } - - if (err && err.message) { - // The inner-error's message will be added to the new message - formattedMessage += (formattedMessage ? " \n" : "") + err.message; - } - - // Create the new error - // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace - var newError = new Klass(formattedMessage); - - // Extend the new error with the additional properties - extendError(newError, err); // Copy properties of the original error - extendToJSON(newError); // Replace the original toJSON method - extend(newError, props); // Copy custom properties, possibly including a custom toJSON method - - return newError; - }; -} - -/** - * Extends the targetError with the properties of the source error. - * - * @param {Error} targetError - The error object to extend - * @param {?Error} sourceError - The source error object, if any - */ -function extendError (targetError, sourceError) { - extendStack(targetError, sourceError); - extend(targetError, sourceError); -} - -/** - * JavaScript engines differ in how errors are serialized to JSON - especially when it comes - * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS - * outputs every property of the error. - */ -function extendToJSON (error) { - error.toJSON = errorToJSON; - - // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method - error.inspect = errorToString; -} - -/** - * Extends the target object with the properties of the source object. - * - * @param {object} target - The object to extend - * @param {?source} source - The object whose properties are copied - */ -function extend (target, source) { - if (source && typeof source === "object") { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - // Don't copy "protected" properties, since they have special meaning/behavior - // and are set by the onoFactory function - if (protectedProperties.indexOf(key) >= 0) { - continue; - } - - try { - target[key] = source[key]; - } - catch (e) { - // This property is read-only, so it can't be copied - } - } - } -} - -/** - * Custom JSON serializer for Error objects. - * Returns all built-in error properties, as well as extended properties. - * - * @returns {object} - */ -function errorToJSON () { - var json = {}; - - // Get all the properties of this error - var keys = Object.keys(this); - - // Also include properties from the Error prototype - keys = keys.concat(errorPrototypeProperties); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = this[key]; - var type = typeof value; - if (type !== "undefined" && type !== "function") { - json[key] = value; - } - } - - return json; -} - -/** - * Serializes Error objects as human-readable JSON strings for debugging/logging purposes. - * - * @returns {string} - */ -function errorToString () { - return JSON.stringify(this, null, 2).replace(/\\n/g, "\n"); -} - -/** - * Extend the error stack to include its cause - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function extendStack (targetError, sourceError) { - if (hasLazyStack(targetError)) { - if (sourceError) { - lazyJoinStacks(targetError, sourceError); - } - else { - lazyPopStack(targetError); - } - } - else { - if (sourceError) { - targetError.stack = joinStacks(targetError.stack, sourceError.stack); - } - else { - targetError.stack = popStack(targetError.stack); - } - } -} - -/** - * Appends the original {@link Error#stack} property to the new Error's stack. - * - * @param {string} newStack - * @param {string} originalStack - * @returns {string} - */ -function joinStacks (newStack, originalStack) { - newStack = popStack(newStack); - - if (newStack && originalStack) { - return newStack + "\n\n" + originalStack; - } - else { - return newStack || originalStack; - } -} - -/** - * Removes Ono from the stack, so that the stack starts at the original error location - * - * @param {string} stack - * @returns {string} - */ -function popStack (stack) { - if (stack) { - var lines = stack.split("\n"); - - if (lines.length < 2) { - // The stack only has one line, so there's nothing we can remove - return stack; - } - - // Find the `onoFactory` call in the stack, and remove it - for (var i = 0; i < lines.length; i++) { - var line = lines[i]; - if (line.indexOf("onoFactory") >= 0) { - lines.splice(i, 1); - return lines.join("\n"); - } - } - - // If we get here, then the stack doesn't contain a call to `onoFactory`. - // This may be due to minification or some optimization of the JS engine. - // So just return the stack as-is. - return stack; - } -} - -/** - * Does a one-time determination of whether this JavaScript engine - * supports lazy `Error.stack` properties. - */ -var supportsLazyStack = (function () { - return !!( - // ES5 property descriptors must be supported - Object.getOwnPropertyDescriptor && Object.defineProperty && - - // Chrome on Android doesn't support lazy stacks :( - (typeof navigator === "undefined" || !/Android/.test(navigator.userAgent)) - ); -}()); - -/** - * Does this error have a lazy stack property? - * - * @param {Error} err - * @returns {boolean} - */ -function hasLazyStack (err) { - if (!supportsLazyStack) { - return false; - } - - var descriptor = Object.getOwnPropertyDescriptor(err, "stack"); - if (!descriptor) { - return false; - } - return typeof descriptor.get === "function"; -} - -/** - * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function lazyJoinStacks (targetError, sourceError) { - var targetStack = Object.getOwnPropertyDescriptor(targetError, "stack"); - - Object.defineProperty(targetError, "stack", { - get: function () { - return joinStacks(targetStack.get.apply(targetError), sourceError.stack); - }, - enumerable: false, - configurable: true - }); -} - -/** - * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} error - */ -function lazyPopStack (error) { - var targetStack = Object.getOwnPropertyDescriptor(error, "stack"); - - Object.defineProperty(error, "stack", { - get: function () { - return popStack(targetStack.get.apply(error)); - }, - enumerable: false, - configurable: true - }); -} - -},{"format-util":2}],2:[function(require,module,exports){ -function format(fmt) { - var re = /(%?)(%([jds]))/g - , args = Array.prototype.slice.call(arguments, 1); - if(args.length) { - fmt = fmt.replace(re, function(match, escaped, ptn, flag) { - var arg = args.shift(); - switch(flag) { - case 's': - arg = '' + arg; - break; - case 'd': - arg = Number(arg); - break; - case 'j': - arg = JSON.stringify(arg); - break; - } - if(!escaped) { - return arg; - } - args.unshift(arg); - return match; - }) - } - - // arguments remain after formatting - if(args.length) { - fmt += ' ' + args.join(' '); - } - - // update escaped %% values - fmt = fmt.replace(/%{2,2}/g, '%'); - - return '' + fmt; -} - -module.exports = format; - -},{}]},{},[1])(1) -}); -//# sourceMappingURL=ono.js.map diff --git a/forward_engineering/node_modules/ono/dist/ono.js.map b/forward_engineering/node_modules/ono/dist/ono.js.map deleted file mode 100644 index ab6316a..0000000 --- a/forward_engineering/node_modules/ono/dist/ono.js.map +++ /dev/null @@ -1,17 +0,0 @@ -{ - "version": 3, - "sources": [ - "..\\node_modules\\browser-pack\\_prelude.js", - "..\\lib\\ono.js", - "..\\node_modules\\format-util\\format.js" - ], - "names": [], - "mappings": ";;;;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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": "generated.js", - "sourceRoot": "", - "sourcesContent": [ - "(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 0) {\n formattedMessage = module.exports.formatter.apply(null, formatArgs);\n }\n\n if (err && err.message) {\n // The inner-error's message will be added to the new message\n formattedMessage += (formattedMessage ? \" \\n\" : \"\") + err.message;\n }\n\n // Create the new error\n // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace\n var newError = new Klass(formattedMessage);\n\n // Extend the new error with the additional properties\n extendError(newError, err); // Copy properties of the original error\n extendToJSON(newError); // Replace the original toJSON method\n extend(newError, props); // Copy custom properties, possibly including a custom toJSON method\n\n return newError;\n };\n}\n\n/**\n * Extends the targetError with the properties of the source error.\n *\n * @param {Error} targetError - The error object to extend\n * @param {?Error} sourceError - The source error object, if any\n */\nfunction extendError (targetError, sourceError) {\n extendStack(targetError, sourceError);\n extend(targetError, sourceError);\n}\n\n/**\n * JavaScript engines differ in how errors are serialized to JSON - especially when it comes\n * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS\n * outputs every property of the error.\n */\nfunction extendToJSON (error) {\n error.toJSON = errorToJSON;\n\n // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method\n error.inspect = errorToString;\n}\n\n/**\n * Extends the target object with the properties of the source object.\n *\n * @param {object} target - The object to extend\n * @param {?source} source - The object whose properties are copied\n */\nfunction extend (target, source) {\n if (source && typeof source === \"object\") {\n var keys = Object.keys(source);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n // Don't copy \"protected\" properties, since they have special meaning/behavior\n // and are set by the onoFactory function\n if (protectedProperties.indexOf(key) >= 0) {\n continue;\n }\n\n try {\n target[key] = source[key];\n }\n catch (e) {\n // This property is read-only, so it can't be copied\n }\n }\n }\n}\n\n/**\n * Custom JSON serializer for Error objects.\n * Returns all built-in error properties, as well as extended properties.\n *\n * @returns {object}\n */\nfunction errorToJSON () {\n var json = {};\n\n // Get all the properties of this error\n var keys = Object.keys(this);\n\n // Also include properties from the Error prototype\n keys = keys.concat(errorPrototypeProperties);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = this[key];\n var type = typeof value;\n if (type !== \"undefined\" && type !== \"function\") {\n json[key] = value;\n }\n }\n\n return json;\n}\n\n/**\n * Serializes Error objects as human-readable JSON strings for debugging/logging purposes.\n *\n * @returns {string}\n */\nfunction errorToString () {\n return JSON.stringify(this, null, 2).replace(/\\\\n/g, \"\\n\");\n}\n\n/**\n * Extend the error stack to include its cause\n *\n * @param {Error} targetError\n * @param {Error} sourceError\n */\nfunction extendStack (targetError, sourceError) {\n if (hasLazyStack(targetError)) {\n if (sourceError) {\n lazyJoinStacks(targetError, sourceError);\n }\n else {\n lazyPopStack(targetError);\n }\n }\n else {\n if (sourceError) {\n targetError.stack = joinStacks(targetError.stack, sourceError.stack);\n }\n else {\n targetError.stack = popStack(targetError.stack);\n }\n }\n}\n\n/**\n * Appends the original {@link Error#stack} property to the new Error's stack.\n *\n * @param {string} newStack\n * @param {string} originalStack\n * @returns {string}\n */\nfunction joinStacks (newStack, originalStack) {\n newStack = popStack(newStack);\n\n if (newStack && originalStack) {\n return newStack + \"\\n\\n\" + originalStack;\n }\n else {\n return newStack || originalStack;\n }\n}\n\n/**\n * Removes Ono from the stack, so that the stack starts at the original error location\n *\n * @param {string} stack\n * @returns {string}\n */\nfunction popStack (stack) {\n if (stack) {\n var lines = stack.split(\"\\n\");\n\n if (lines.length < 2) {\n // The stack only has one line, so there's nothing we can remove\n return stack;\n }\n\n // Find the `onoFactory` call in the stack, and remove it\n for (var i = 0; i < lines.length; i++) {\n var line = lines[i];\n if (line.indexOf(\"onoFactory\") >= 0) {\n lines.splice(i, 1);\n return lines.join(\"\\n\");\n }\n }\n\n // If we get here, then the stack doesn't contain a call to `onoFactory`.\n // This may be due to minification or some optimization of the JS engine.\n // So just return the stack as-is.\n return stack;\n }\n}\n\n/**\n * Does a one-time determination of whether this JavaScript engine\n * supports lazy `Error.stack` properties.\n */\nvar supportsLazyStack = (function () {\n return !!(\n // ES5 property descriptors must be supported\n Object.getOwnPropertyDescriptor && Object.defineProperty &&\n\n // Chrome on Android doesn't support lazy stacks :(\n (typeof navigator === \"undefined\" || !/Android/.test(navigator.userAgent))\n );\n}());\n\n/**\n * Does this error have a lazy stack property?\n *\n * @param {Error} err\n * @returns {boolean}\n */\nfunction hasLazyStack (err) {\n if (!supportsLazyStack) {\n return false;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(err, \"stack\");\n if (!descriptor) {\n return false;\n }\n return typeof descriptor.get === \"function\";\n}\n\n/**\n * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed.\n *\n * @param {Error} targetError\n * @param {Error} sourceError\n */\nfunction lazyJoinStacks (targetError, sourceError) {\n var targetStack = Object.getOwnPropertyDescriptor(targetError, \"stack\");\n\n Object.defineProperty(targetError, \"stack\", {\n get: function () {\n return joinStacks(targetStack.get.apply(targetError), sourceError.stack);\n },\n enumerable: false,\n configurable: true\n });\n}\n\n/**\n * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed.\n *\n * @param {Error} error\n */\nfunction lazyPopStack (error) {\n var targetStack = Object.getOwnPropertyDescriptor(error, \"stack\");\n\n Object.defineProperty(error, \"stack\", {\n get: function () {\n return popStack(targetStack.get.apply(error));\n },\n enumerable: false,\n configurable: true\n });\n}\n", - "function format(fmt) {\n var re = /(%?)(%([jds]))/g\n , args = Array.prototype.slice.call(arguments, 1);\n if(args.length) {\n fmt = fmt.replace(re, function(match, escaped, ptn, flag) {\n var arg = args.shift();\n switch(flag) {\n case 's':\n arg = '' + arg;\n break;\n case 'd':\n arg = Number(arg);\n break;\n case 'j':\n arg = JSON.stringify(arg);\n break;\n }\n if(!escaped) {\n return arg; \n }\n args.unshift(arg);\n return match;\n })\n }\n\n // arguments remain after formatting\n if(args.length) {\n fmt += ' ' + args.join(' ');\n }\n\n // update escaped %% values\n fmt = fmt.replace(/%{2,2}/g, '%');\n\n return '' + fmt;\n}\n\nmodule.exports = format;\n" - ] -} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/dist/ono.min.js b/forward_engineering/node_modules/ono/dist/ono.min.js deleted file mode 100644 index bd6b8d3..0000000 --- a/forward_engineering/node_modules/ono/dist/ono.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/*! - * Ono v4.0.11 (December 9th 2018) - * - * https://jsdevtools.org/ono - * - * @author James Messinger (https://jamesmessinger.com) - * @license MIT - */ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.ono=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0&&(c=module.exports.formatter.apply(null,a)),r&&r.message&&(c+=(c?" \n":"")+r.message);var i=new e(c);return extendError(i,r),extendToJSON(i),extend(i,t),i}}function extendError(e,r){extendStack(e,r),extend(e,r)}function extendToJSON(e){e.toJSON=errorToJSON,e.inspect=errorToString}function extend(e,r){if(r&&"object"==typeof r)for(var t=Object.keys(r),o=0;o=0))try{e[n]=r[n]}catch(e){}}}function errorToJSON(){var e={},r=Object.keys(this);r=r.concat(errorPrototypeProperties);for(var t=0;t=0)return r.splice(t,1),r.join("\n")}return e}}module.exports=create(Error),module.exports.error=create(Error),module.exports.eval=create(EvalError),module.exports.range=create(RangeError),module.exports.reference=create(ReferenceError),module.exports.syntax=create(SyntaxError),module.exports.type=create(TypeError),module.exports.uri=create(URIError),module.exports.formatter=format;var supportsLazyStack=!(!Object.getOwnPropertyDescriptor||!Object.defineProperty||"undefined"!=typeof navigator&&/Android/.test(navigator.userAgent));function hasLazyStack(e){if(!supportsLazyStack)return!1;var r=Object.getOwnPropertyDescriptor(e,"stack");return!!r&&"function"==typeof r.get}function lazyJoinStacks(e,r){var t=Object.getOwnPropertyDescriptor(e,"stack");Object.defineProperty(e,"stack",{get:function(){return joinStacks(t.get.apply(e),r.stack)},enumerable:!1,configurable:!0})}function lazyPopStack(e){var r=Object.getOwnPropertyDescriptor(e,"stack");Object.defineProperty(e,"stack",{get:function(){return popStack(r.get.apply(e))},enumerable:!1,configurable:!0})}},{"format-util":2}],2:[function(require,module,exports){function format(e){var r=Array.prototype.slice.call(arguments,1);return r.length&&(e=e.replace(/(%?)(%([jds]))/g,function(e,t,a,n){var s=r.shift();switch(n){case"s":s=""+s;break;case"d":s=Number(s);break;case"j":s=JSON.stringify(s)}return t?(r.unshift(s),e):s})),r.length&&(e+=" "+r.join(" ")),""+(e=e.replace(/%{2,2}/g,"%"))}module.exports=format},{}]},{},[1])(1)}); -//# sourceMappingURL=ono.min.js.map -//# sourceMappingURL=ono.min.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/dist/ono.min.js.map b/forward_engineering/node_modules/ono/dist/ono.min.js.map deleted file mode 100644 index 109a41b..0000000 --- a/forward_engineering/node_modules/ono/dist/ono.min.js.map +++ /dev/null @@ -1,107 +0,0 @@ -{ - "version": 3, - "sources": [ - "..\\node_modules\\browser-pack\\_prelude.js", - "..\\lib\\ono.js", - "..\\node_modules\\format-util\\format.js" - ], - "names": [ - "f", - "exports", - "module", - "define", - "amd", - "g", - "window", - "global", - "self", - "this", - "ono", - "r", - "e", - "n", - "t", - "o", - "i", - "c", - "require", - "u", - "a", - "Error", - "code", - "p", - "call", - "length", - "1", - "format", - "slice", - "Array", - "prototype", - "protectedProperties", - "errorPrototypeProperties", - "create", - "arguments", - "formatter", - "apply", - "message", - "extendError", - "extendToJSON", - "extend", - "extendStack", - "toJSON", - "errorToJSON", - "inspect", - "errorToString", - "Object", - "keys", - "indexOf", - "concat", - "JSON", - "stringify", - "replace", - "hasLazyStack", - "lazyJoinStacks", - "lazyPopStack", - "stack", - "joinStacks", - "popStack", - "split", - "splice", - "join", - "error", - "eval", - "EvalError", - "range", - "RangeError", - "reference", - "ReferenceError", - "syntax", - "SyntaxError", - "type", - "TypeError", - "uri", - "URIError", - "supportsLazyStack", - "getOwnPropertyDescriptor", - "defineProperty", - "navigator", - "test", - "userAgent", - "get", - "enumerable", - "configurable", - "format-util", - "2", - "s", - "shift", - "Number", - "unshift" - ], - "mappings": "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", - "file": "ono.min.js", - "sourcesContent": [ - "(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i0&&(c=module.exports.formatter.apply(null,a)),r&&r.message&&(c+=(c?\" \\n\":\"\")+r.message);var i=new e(c);return extendError(i,r),extendToJSON(i),extend(i,t),i}}function extendError(e,r){extendStack(e,r),extend(e,r)}function extendToJSON(e){e.toJSON=errorToJSON,e.inspect=errorToString}function extend(e,r){if(r&&\"object\"==typeof r)for(var t=Object.keys(r),o=0;o=0))try{e[n]=r[n]}catch(e){}}}function errorToJSON(){var e={},r=Object.keys(this);r=r.concat(errorPrototypeProperties);for(var t=0;t=0)return r.splice(t,1),r.join(\"\\n\")}return e}}module.exports=create(Error),module.exports.error=create(Error),module.exports.eval=create(EvalError),module.exports.range=create(RangeError),module.exports.reference=create(ReferenceError),module.exports.syntax=create(SyntaxError),module.exports.type=create(TypeError),module.exports.uri=create(URIError),module.exports.formatter=format;var supportsLazyStack=!(!Object.getOwnPropertyDescriptor||!Object.defineProperty||\"undefined\"!=typeof navigator&&/Android/.test(navigator.userAgent));function hasLazyStack(e){if(!supportsLazyStack)return!1;var r=Object.getOwnPropertyDescriptor(e,\"stack\");return!!r&&\"function\"==typeof r.get}function lazyJoinStacks(e,r){var t=Object.getOwnPropertyDescriptor(e,\"stack\");Object.defineProperty(e,\"stack\",{get:function(){return joinStacks(t.get.apply(e),r.stack)},enumerable:!1,configurable:!0})}function lazyPopStack(e){var r=Object.getOwnPropertyDescriptor(e,\"stack\");Object.defineProperty(e,\"stack\",{get:function(){return popStack(r.get.apply(e))},enumerable:!1,configurable:!0})}\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm9uby5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJyZXF1aXJlIiwic2xpY2UiLCJBcnJheSIsInByb3RvdHlwZSIsInByb3RlY3RlZFByb3BlcnRpZXMiLCJlcnJvclByb3RvdHlwZVByb3BlcnRpZXMiLCJjcmVhdGUiLCJLbGFzcyIsImVyciIsInByb3BzIiwibWVzc2FnZSIsInBhcmFtcyIsImZvcm1hdEFyZ3MiLCJmb3JtYXR0ZWRNZXNzYWdlIiwiY2FsbCIsImFyZ3VtZW50cyIsInVuZGVmaW5lZCIsImxlbmd0aCIsIm1vZHVsZSIsImV4cG9ydHMiLCJmb3JtYXR0ZXIiLCJhcHBseSIsIm5ld0Vycm9yIiwiZXh0ZW5kRXJyb3IiLCJleHRlbmRUb0pTT04iLCJleHRlbmQiLCJ0YXJnZXRFcnJvciIsInNvdXJjZUVycm9yIiwiZXh0ZW5kU3RhY2siLCJlcnJvciIsInRvSlNPTiIsImVycm9yVG9KU09OIiwiaW5zcGVjdCIsImVycm9yVG9TdHJpbmciLCJ0YXJnZXQiLCJzb3VyY2UiLCJrZXlzIiwiT2JqZWN0IiwiaSIsImtleSIsImluZGV4T2YiLCJlIiwianNvbiIsInRoaXMiLCJjb25jYXQiLCJ2YWx1ZSIsInR5cGUiLCJKU09OIiwic3RyaW5naWZ5IiwicmVwbGFjZSIsImhhc0xhenlTdGFjayIsImxhenlKb2luU3RhY2tzIiwibGF6eVBvcFN0YWNrIiwic3RhY2siLCJqb2luU3RhY2tzIiwicG9wU3RhY2siLCJuZXdTdGFjayIsIm9yaWdpbmFsU3RhY2siLCJsaW5lcyIsInNwbGl0Iiwic3BsaWNlIiwiam9pbiIsIkVycm9yIiwiZXZhbCIsIkV2YWxFcnJvciIsInJhbmdlIiwiUmFuZ2VFcnJvciIsInJlZmVyZW5jZSIsIlJlZmVyZW5jZUVycm9yIiwic3ludGF4IiwiU3ludGF4RXJyb3IiLCJUeXBlRXJyb3IiLCJ1cmkiLCJVUklFcnJvciIsInN1cHBvcnRzTGF6eVN0YWNrIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZGVmaW5lUHJvcGVydHkiLCJuYXZpZ2F0b3IiLCJ0ZXN0IiwidXNlckFnZW50IiwiZGVzY3JpcHRvciIsImdldCIsInRhcmdldFN0YWNrIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSJdLCJtYXBwaW5ncyI6IkFBQUEsYUFFQSxJQUFJQSxPQUFTQyxRQUFRLGVBQ2pCQyxNQUFRQyxNQUFNQyxVQUFVRixNQUN4Qkcsb0JBQXNCLENBQUMsT0FBUSxVQUFXLFNBQzFDQyx5QkFBMkIsQ0FDN0IsT0FBUSxVQUFXLGNBQWUsU0FBVSxPQUFRLFdBQVksYUFBYyxlQUM5RSxZQUFhLE9BQVEsU0FBVSxTQW1CakMsU0FBU0MsT0FBUUMsR0FRZixPQUFPLFNBQXFCQyxFQUFLQyxFQUFPQyxFQUFTQyxHQUMvQyxJQUFJQyxFQUFhLEdBQ2JDLEVBQW1CLEdBR0osaUJBQVJMLEdBQ1RJLEVBQWFYLE1BQU1hLEtBQUtDLFdBQ3hCUCxFQUFNQyxPQUFRTyxHQUVVLGlCQUFWUCxHQUNkRyxFQUFhWCxNQUFNYSxLQUFLQyxVQUFXLEdBQ25DTixPQUFRTyxHQUVrQixpQkFBWk4sSUFDZEUsRUFBYVgsTUFBTWEsS0FBS0MsVUFBVyxJQUlqQ0gsRUFBV0ssT0FBUyxJQUN0QkosRUFBbUJLLE9BQU9DLFFBQVFDLFVBQVVDLE1BQU0sS0FBTVQsSUFHdERKLEdBQU9BLEVBQUlFLFVBRWJHLElBQXFCQSxFQUFtQixNQUFRLElBQU1MLEVBQUlFLFNBSzVELElBQUlZLEVBQVcsSUFBSWYsRUFBTU0sR0FPekIsT0FKQVUsWUFBWUQsRUFBVWQsR0FDdEJnQixhQUFhRixHQUNiRyxPQUFPSCxFQUFVYixHQUVWYSxHQVVYLFNBQVNDLFlBQWFHLEVBQWFDLEdBQ2pDQyxZQUFZRixFQUFhQyxHQUN6QkYsT0FBT0MsRUFBYUMsR0FRdEIsU0FBU0gsYUFBY0ssR0FDckJBLEVBQU1DLE9BQVNDLFlBR2ZGLEVBQU1HLFFBQVVDLGNBU2xCLFNBQVNSLE9BQVFTLEVBQVFDLEdBQ3ZCLEdBQUlBLEdBQTRCLGlCQUFYQSxFQUVuQixJQURBLElBQUlDLEVBQU9DLE9BQU9E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", - "function format(e){var r=Array.prototype.slice.call(arguments,1);return r.length&&(e=e.replace(/(%?)(%([jds]))/g,function(e,t,a,n){var s=r.shift();switch(n){case\"s\":s=\"\"+s;break;case\"d\":s=Number(s);break;case\"j\":s=JSON.stringify(s)}return t?(r.unshift(s),e):s})),r.length&&(e+=\" \"+r.join(\" \")),\"\"+(e=e.replace(/%{2,2}/g,\"%\"))}module.exports=format;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvcm1hdC5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJmbXQiLCJhcmdzIiwiQXJyYXkiLCJwcm90b3R5cGUiLCJzbGljZSIsImNhbGwiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJyZXBsYWNlIiwibWF0Y2giLCJlc2NhcGVkIiwicHRuIiwiZmxhZyIsImFyZyIsInNoaWZ0IiwiTnVtYmVyIiwiSlNPTiIsInN0cmluZ2lmeSIsInVuc2hpZnQiLCJqb2luIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsT0FBT0MsR0FDZCxJQUNJQyxFQUFPQyxNQUFNQyxVQUFVQyxNQUFNQyxLQUFLQyxVQUFXLEdBK0JqRCxPQTlCR0wsRUFBS00sU0FDTlAsRUFBTUEsRUFBSVEsUUFISCxrQkFHZSxTQUFTQyxFQUFPQyxFQUFTQyxFQUFLQyxHQUNsRCxJQUFJQyxFQUFNWixFQUFLYSxRQUNmLE9BQU9GLEdBQ0wsSUFBSyxJQUNIQyxFQUFNLEdBQUtBLEVBQ1gsTUFDRixJQUFLLElBQ0hBLEVBQU1FLE9BQU9GLEdBQ2IsTUFDRixJQUFLLElBQ0hBLEVBQU1HLEtBQUtDLFVBQVVKLEdBR3pCLE9BQUlILEdBR0pULEVBQUtpQixRQUFRTCxHQUNOSixHQUhFSSxLQVFWWixFQUFLTSxTQUNOUCxHQUFPLElBQU1DLEVBQUtrQixLQUFLLE1BTWxCLElBRlBuQixFQUFNQSxFQUFJUSxRQUFRLFVBQVcsTUFLL0JZLE9BQU9DLFFBQVV0QiIsImZpbGUiOiJDOlxcVXNlcnNcXEphbWVzIE1lc3NpbmdlclxcQ29kZVxcUGVyc29uYWxcXE9wZW4gU291cmNlXFxKUy1EZXZUb29sc1xcb25vXFxub2RlX21vZHVsZXNcXGZvcm1hdC11dGlsXFxmb3JtYXQuanMifQ==" - ] -} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/constructor.d.ts b/forward_engineering/node_modules/ono/esm/constructor.d.ts new file mode 100644 index 0000000..74ae3c1 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/constructor.d.ts @@ -0,0 +1,3 @@ +import { OnoConstructor } from "./types"; +declare const constructor: OnoConstructor; +export { constructor as Ono }; diff --git a/forward_engineering/node_modules/ono/esm/constructor.js b/forward_engineering/node_modules/ono/esm/constructor.js new file mode 100644 index 0000000..ecd0284 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/constructor.js @@ -0,0 +1,30 @@ +import { extendError } from "./extend-error"; +import { normalizeArgs, normalizeOptions } from "./normalize"; +import { toJSON as errorToJSON } from "./to-json"; +const constructor = Ono; +export { constructor as Ono }; +/** + * Returns an object containing all properties of the given Error object, + * which can be used with `JSON.stringify()`. + */ +Ono.toJSON = function toJSON(error) { + return errorToJSON.call(error); +}; +/** + * Creates an `Ono` instance for a specifc error type. + */ +// tslint:disable-next-line: variable-name +function Ono(ErrorConstructor, options) { + options = normalizeOptions(options); + function ono(...args) { + let { originalError, props, message } = normalizeArgs(args, options); + // Create a new error of the specified type + let newError = new ErrorConstructor(message); + // Extend the error with the properties of the original error and the `props` object + extendError(newError, originalError, props); + return newError; + } + ono[Symbol.species] = ErrorConstructor; + return ono; +} +//# sourceMappingURL=constructor.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/constructor.js.map b/forward_engineering/node_modules/ono/esm/constructor.js.map new file mode 100644 index 0000000..84df863 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/constructor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"constructor.js","sourceRoot":"","sources":["../src/constructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAGlD,MAAM,WAAW,GAAG,GAAqB,CAAC;AAC1C,OAAO,EAAE,WAAW,IAAI,GAAG,EAAE,CAAC;AAE9B;;;GAGG;AACH,GAAG,CAAC,MAAM,GAAG,SAAS,MAAM,CAAsB,KAAQ;IACxD,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAkB,CAAC;AAClD,CAAC,CAAC;AAEF;;GAEG;AACH,0CAA0C;AAC1C,SAAS,GAAG,CAAsB,gBAAyC,EAAE,OAAoB;IAC/F,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEpC,SAAS,GAAG,CAAwC,GAAG,IAAe;QACpE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,aAAa,CAAO,IAAI,EAAE,OAAQ,CAAC,CAAC;QAE5E,2CAA2C;QAC3C,IAAI,QAAQ,GAAG,IAAK,gBAAiD,CAAC,OAAO,CAAoC,CAAC;QAElH,oFAAoF;QACpF,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QAE5C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAAC;IACvC,OAAO,GAAG,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/extend-error.d.ts b/forward_engineering/node_modules/ono/esm/extend-error.d.ts new file mode 100644 index 0000000..7cd0a1a --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/extend-error.d.ts @@ -0,0 +1,9 @@ +import { ErrorPOJO, OnoError } from "./types"; +/** + * Extends the new error with the properties of the original error and the `props` object. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + * @param props - Additional properties to add, if any + */ +export declare function extendError(newError: OnoError, originalError?: ErrorPOJO, props?: object): void; diff --git a/forward_engineering/node_modules/ono/esm/extend-error.js b/forward_engineering/node_modules/ono/esm/extend-error.js new file mode 100644 index 0000000..e220bd2 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/extend-error.js @@ -0,0 +1,71 @@ +import { addInspectMethod } from "./isomorphic.node"; +import { isLazyStack, isWritableStack, joinStacks, lazyJoinStacks } from "./stack"; +import { getDeepKeys, toJSON } from "./to-json"; +const protectedProps = ["name", "message", "stack"]; +/** + * Extends the new error with the properties of the original error and the `props` object. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + * @param props - Additional properties to add, if any + */ +export function extendError(newError, originalError, props) { + extendStack(newError, originalError); + // Copy properties from the original error + if (originalError && typeof originalError === "object") { + mergeErrors(newError, originalError); + } + // The default `toJSON` method doesn't output props like `name`, `message`, `stack`, etc. + // So replace it with one that outputs every property of the error. + newError.toJSON = toJSON; + // On Node.js, add support for the `util.inspect()` method + if (addInspectMethod) { + addInspectMethod(newError); + } + // Finally, copy custom properties that were specified by the user. + // These props OVERWRITE any previous props + if (props && typeof props === "object") { + Object.assign(newError, props); + } +} +/** + * Extend the error stack to include its cause + */ +function extendStack(newError, originalError) { + let stackProp = Object.getOwnPropertyDescriptor(newError, "stack"); + if (isLazyStack(stackProp)) { + lazyJoinStacks(stackProp, newError, originalError); + } + else if (isWritableStack(stackProp)) { + newError.stack = joinStacks(newError, originalError); + } +} +/** + * Merges properties of the original error with the new error. + * + * @param newError - The error object to extend + * @param originalError - The original error object, if any + */ +function mergeErrors(newError, originalError) { + // Get the original error's keys + // NOTE: We specifically exclude properties that we have already set on the new error. + // This is _especially_ important for the `stack` property, because this property has + // a lazy getter in some environments + let keys = getDeepKeys(originalError, protectedProps); + // HACK: We have to cast the errors to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let _newError = newError; + let _originalError = originalError; + for (let key of keys) { + if (_newError[key] === undefined) { + try { + _newError[key] = _originalError[key]; + } + catch (e) { + // This property is read-only, so it can't be copied + } + } + } +} +//# sourceMappingURL=extend-error.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/extend-error.js.map b/forward_engineering/node_modules/ono/esm/extend-error.js.map new file mode 100644 index 0000000..b219947 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/extend-error.js.map @@ -0,0 +1 @@ +{"version":3,"file":"extend-error.js","sourceRoot":"","sources":["../src/extend-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAGhD,MAAM,cAAc,GAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAE5E;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAI,QAAqB,EAAE,aAAyB,EAAE,KAAc;IAC7F,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAErC,0CAA0C;IAC1C,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACtD,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KACtC;IAED,yFAAyF;IACzF,mEAAmE;IACnE,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;IAEzB,0DAA0D;IAC1D,IAAI,gBAAgB,EAAE;QACpB,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KAC5B;IAED,mEAAmE;IACnE,2CAA2C;IAC3C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;KAChC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,QAAmB,EAAE,aAAyB;IACjE,IAAI,SAAS,GAAG,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEnE,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE;QAC1B,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;KACpD;SACI,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE;QACnC,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KACtD;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,QAAmB,EAAE,aAAwB;IAChE,gCAAgC;IAChC,sFAAsF;IACtF,qFAAqF;IACrF,qCAAqC;IACrC,IAAI,IAAI,GAAG,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAEtD,2EAA2E;IAC3E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,SAAS,GAAG,QAAe,CAAC;IAChC,IAAI,cAAc,GAAG,aAAoB,CAAC;IAE1C,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;QACpB,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;YAChC,IAAI;gBACF,SAAS,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;aACtC;YACD,OAAO,CAAC,EAAE;gBACR,oDAAoD;aACrD;SACF;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/index.d.ts b/forward_engineering/node_modules/ono/esm/index.d.ts new file mode 100644 index 0000000..e7279db --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/index.d.ts @@ -0,0 +1,5 @@ +import { ono } from "./singleton"; +export { Ono } from "./constructor"; +export * from "./types"; +export { ono }; +export default ono; diff --git a/forward_engineering/node_modules/ono/esm/index.js b/forward_engineering/node_modules/ono/esm/index.js new file mode 100644 index 0000000..bc6c4f0 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/index.js @@ -0,0 +1,10 @@ +import { ono } from "./singleton"; +export { Ono } from "./constructor"; +export { ono }; +// tslint:disable-next-line: no-default-export +export default ono; +// CommonJS default export hack +if (typeof module === "object" && typeof module.exports === "object") { + module.exports = Object.assign(module.exports.default, module.exports); // tslint:disable-line: no-unsafe-any +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/index.js.map b/forward_engineering/node_modules/ono/esm/index.js.map new file mode 100644 index 0000000..d28f7df --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,OAAO,EAAE,GAAG,EAAE,CAAC;AAEf,8CAA8C;AAC9C,eAAe,GAAG,CAAC;AAEnB,+BAA+B;AAC/B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE;IACpE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,qCAAqC;CAC/G"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.browser.d.ts b/forward_engineering/node_modules/ono/esm/isomorphic.browser.d.ts new file mode 100644 index 0000000..e5d7776 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.browser.d.ts @@ -0,0 +1,15 @@ +/** + * Ono supports custom formatters for error messages. In Node.js, it defaults + * to the `util.format()` function. In browsers, it defaults to `Array.join()`. + * + * The Node.js functionality can be used in a web browser via a polyfill, + * such as "format-util". + * + * @see https://github.com/tmpfs/format-util + */ +export declare const format = false; +/** + * The `util.inspect()` functionality only applies to Node.js. + * We return the constant `false` here so that the Node-specific code gets removed by tree-shaking. + */ +export declare const addInspectMethod = false; diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.browser.js b/forward_engineering/node_modules/ono/esm/isomorphic.browser.js new file mode 100644 index 0000000..c863c87 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.browser.js @@ -0,0 +1,16 @@ +/** + * Ono supports custom formatters for error messages. In Node.js, it defaults + * to the `util.format()` function. In browsers, it defaults to `Array.join()`. + * + * The Node.js functionality can be used in a web browser via a polyfill, + * such as "format-util". + * + * @see https://github.com/tmpfs/format-util + */ +export const format = false; +/** + * The `util.inspect()` functionality only applies to Node.js. + * We return the constant `false` here so that the Node-specific code gets removed by tree-shaking. + */ +export const addInspectMethod = false; +//# sourceMappingURL=isomorphic.browser.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.browser.js.map b/forward_engineering/node_modules/ono/esm/isomorphic.browser.js.map new file mode 100644 index 0000000..6433a63 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.browser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"isomorphic.browser.js","sourceRoot":"","sources":["../src/isomorphic.browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC;AAE5B;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.node.d.ts b/forward_engineering/node_modules/ono/esm/isomorphic.node.d.ts new file mode 100644 index 0000000..e0ea2c6 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.node.d.ts @@ -0,0 +1,15 @@ +/// +import * as util from "util"; +import { OnoError } from "./types"; +/** + * Ono supports Node's `util.format()` formatting for error messages. + * + * @see https://nodejs.org/api/util.html#util_util_format_format_args + */ +export declare const format: typeof util.format; +/** + * Adds an `inspect()` method to support Node's `util.inspect()` function. + * + * @see https://nodejs.org/api/util.html#util_util_inspect_custom + */ +export declare function addInspectMethod(newError: OnoError): void; diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.node.js b/forward_engineering/node_modules/ono/esm/isomorphic.node.js new file mode 100644 index 0000000..31e5e14 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.node.js @@ -0,0 +1,42 @@ +import * as util from "util"; +import { getDeepKeys } from "./to-json"; +// The `inspect()` method is actually a Symbol, not a string key. +// https://nodejs.org/api/util.html#util_util_inspect_custom +const inspectMethod = util.inspect.custom || Symbol.for("nodejs.util.inspect.custom"); +/** + * Ono supports Node's `util.format()` formatting for error messages. + * + * @see https://nodejs.org/api/util.html#util_util_format_format_args + */ +export const format = util.format; +/** + * Adds an `inspect()` method to support Node's `util.inspect()` function. + * + * @see https://nodejs.org/api/util.html#util_util_inspect_custom + */ +export function addInspectMethod(newError) { + // @ts-ignore + newError[inspectMethod] = inspect; +} +/** + * Returns a representation of the error for Node's `util.inspect()` method. + * + * @see https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects + */ +function inspect() { + // HACK: We have to cast the objects to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let pojo = {}; + let error = this; + for (let key of getDeepKeys(error)) { + let value = error[key]; + pojo[key] = value; + } + // Don't include the `inspect()` method on the output object, + // otherwise it will cause `util.inspect()` to go into an infinite loop + delete pojo[inspectMethod]; // tslint:disable-line: no-dynamic-delete + // tslint:enable: no-any no-unsafe-any + return pojo; +} +//# sourceMappingURL=isomorphic.node.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/isomorphic.node.js.map b/forward_engineering/node_modules/ono/esm/isomorphic.node.js.map new file mode 100644 index 0000000..08fee09 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/isomorphic.node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"isomorphic.node.js","sourceRoot":"","sources":["../src/isomorphic.node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGxC,iEAAiE;AACjE,4DAA4D;AAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAEtF;;;;GAIG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAElC;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAI,QAAqB;IACvD,aAAa;IACb,QAAQ,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,SAAS,OAAO;IACd,4EAA4E;IAC5E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,IAAI,GAAQ,EAAE,CAAC;IACnB,IAAI,KAAK,GAAG,IAAW,CAAC;IAExB,KAAK,IAAI,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;QAClC,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KACnB;IAED,6DAA6D;IAC7D,uEAAuE;IACvE,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAE,yCAAyC;IAEtE,sCAAsC;IACtC,OAAO,IAAqB,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/normalize.d.ts b/forward_engineering/node_modules/ono/esm/normalize.d.ts new file mode 100644 index 0000000..e5d14d8 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/normalize.d.ts @@ -0,0 +1,13 @@ +import { ErrorLike, OnoOptions } from "./types"; +/** + * Normalizes Ono options, accounting for defaults and optional options. + */ +export declare function normalizeOptions(options?: OnoOptions): OnoOptions; +/** + * Normalizes the Ono arguments, accounting for defaults, options, and optional arguments. + */ +export declare function normalizeArgs(args: unknown[], options: OnoOptions): { + originalError: E | undefined; + props: P | undefined; + message: string; +}; diff --git a/forward_engineering/node_modules/ono/esm/normalize.js b/forward_engineering/node_modules/ono/esm/normalize.js new file mode 100644 index 0000000..5ac45f3 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/normalize.js @@ -0,0 +1,54 @@ +import { format } from "./isomorphic.node"; +/** + * Normalizes Ono options, accounting for defaults and optional options. + */ +export function normalizeOptions(options) { + options = options || {}; + return { + concatMessages: options.concatMessages === undefined ? true : Boolean(options.concatMessages), + format: options.format === undefined ? format + : (typeof options.format === "function" ? options.format : false), + }; +} +/** + * Normalizes the Ono arguments, accounting for defaults, options, and optional arguments. + */ +export function normalizeArgs(args, options) { + let originalError; + let props; + let formatArgs; + let message = ""; + // Determine which arguments were actually specified + if (typeof args[0] === "string") { + formatArgs = args; + } + else if (typeof args[1] === "string") { + if (args[0] instanceof Error) { + originalError = args[0]; + } + else { + props = args[0]; + } + formatArgs = args.slice(1); + } + else { + originalError = args[0]; + props = args[1]; + formatArgs = args.slice(2); + } + // If there are any format arguments, then format the error message + if (formatArgs.length > 0) { + if (options.format) { + message = options.format.apply(undefined, formatArgs); + } + else { + message = formatArgs.join(" "); + } + } + if (options.concatMessages && originalError && originalError.message) { + // The inner-error's message will be added to the new message + message += (message ? " \n" : "") + originalError.message; + } + return { originalError, props, message }; +} +//# sourceMappingURL=normalize.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/normalize.js.map b/forward_engineering/node_modules/ono/esm/normalize.js.map new file mode 100644 index 0000000..d66e58e --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/normalize.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAoB;IACnD,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IACxB,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;QAC7F,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM;YAC3C,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;KACpE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAwC,IAAe,EAAE,OAAmB;IACvG,IAAI,aAA4B,CAAC;IACjC,IAAI,KAAoB,CAAC;IACzB,IAAI,UAAqB,CAAC;IAC1B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,oDAAoD;IACpD,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QAC/B,UAAU,GAAG,IAAI,CAAC;KACnB;SACI,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACpC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,EAAE;YAC5B,aAAa,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;SAC9B;aACI;YACH,KAAK,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;SACtB;QACD,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;SACI;QACH,aAAa,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;QAC7B,KAAK,GAAG,IAAI,CAAC,CAAC,CAAM,CAAC;QACrB,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC5B;IAED,mEAAmE;IACnE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACzB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;SACvD;aACI;YACH,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChC;KACF;IAED,IAAI,OAAO,CAAC,cAAc,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,EAAE;QACpE,6DAA6D;QAC7D,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC;KAC3D;IAED,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC3C,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/singleton.d.ts b/forward_engineering/node_modules/ono/esm/singleton.d.ts new file mode 100644 index 0000000..f9ed53d --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/singleton.d.ts @@ -0,0 +1,3 @@ +import { OnoSingleton } from "./types"; +declare const singleton: OnoSingleton; +export { singleton as ono }; diff --git a/forward_engineering/node_modules/ono/esm/singleton.js b/forward_engineering/node_modules/ono/esm/singleton.js new file mode 100644 index 0000000..950db9d --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/singleton.js @@ -0,0 +1,34 @@ +import { Ono as OnoConstructor } from "./constructor"; +const singleton = ono; +export { singleton as ono }; +ono.error = new OnoConstructor(Error); +ono.eval = new OnoConstructor(EvalError); +ono.range = new OnoConstructor(RangeError); +ono.reference = new OnoConstructor(ReferenceError); +ono.syntax = new OnoConstructor(SyntaxError); +ono.type = new OnoConstructor(TypeError); +ono.uri = new OnoConstructor(URIError); +const onoMap = ono; +/** + * Creates a new error with the specified message, properties, and/or inner error. + * If an inner error is provided, then the new error will match its type, if possible. + */ +function ono(...args) { + let originalError = args[0]; + // Is the first argument an Error-like object? + if (typeof originalError === "object" && typeof originalError.name === "string") { + // Try to find an Ono singleton method that matches this error type + for (let typedOno of Object.values(onoMap)) { + if (typeof typedOno === "function" && typedOno.name === "ono") { + let species = typedOno[Symbol.species]; + if (species && species !== Error && (originalError instanceof species || originalError.name === species.name)) { + // Create an error of the same type + return typedOno.apply(undefined, args); + } + } + } + } + // By default, create a base Error object + return ono.error.apply(undefined, args); +} +//# sourceMappingURL=singleton.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/singleton.js.map b/forward_engineering/node_modules/ono/esm/singleton.js.map new file mode 100644 index 0000000..751dba1 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/singleton.js.map @@ -0,0 +1 @@ +{"version":3,"file":"singleton.js","sourceRoot":"","sources":["../src/singleton.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAGtD,MAAM,SAAS,GAAG,GAAmB,CAAC;AACtC,OAAO,EAAE,SAAS,IAAI,GAAG,EAAE,CAAC;AAE5B,GAAG,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;AACtC,GAAG,CAAC,IAAI,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;AACzC,GAAG,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;AAC3C,GAAG,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC,cAAc,CAAC,CAAC;AACnD,GAAG,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC;AAC7C,GAAG,CAAC,IAAI,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;AACzC,GAAG,CAAC,GAAG,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;AAEvC,MAAM,MAAM,GAAG,GAA4C,CAAC;AAE5D;;;GAGG;AACH,SAAS,GAAG,CAAwC,GAAG,IAAe;IACpE,IAAI,aAAa,GAAG,IAAI,CAAC,CAAC,CAA0B,CAAC;IAErD,8CAA8C;IAC9C,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE;QAE/E,mEAAmE;QACnE,KAAK,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC1C,IAAI,OAAO,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE;gBAC7D,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAEvC,IAAI,OAAO,IAAI,OAAO,KAAK,KAAK,IAAI,CAAC,aAAa,YAAY,OAAO,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC7G,mCAAmC;oBACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;iBACxC;aACF;SACF;KACF;IAED,yCAAyC;IACzC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/stack.d.ts b/forward_engineering/node_modules/ono/esm/stack.d.ts new file mode 100644 index 0000000..2448780 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/stack.d.ts @@ -0,0 +1,28 @@ +import { ErrorLike } from "./types"; +/** + * The Property Descriptor of a lazily-computed `stack` property. + */ +interface LazyStack { + configurable: true; + /** + * Lazily computes the error's stack trace. + */ + get(): string | undefined; +} +/** + * Is the property lazily computed? + */ +export declare function isLazyStack(stackProp: PropertyDescriptor | undefined): stackProp is LazyStack; +/** + * Is the stack property writable? + */ +export declare function isWritableStack(stackProp: PropertyDescriptor | undefined): boolean; +/** + * Appends the original `Error.stack` property to the new Error's stack. + */ +export declare function joinStacks(newError: ErrorLike, originalError?: ErrorLike): string | undefined; +/** + * Calls `joinStacks` lazily, when the `Error.stack` property is accessed. + */ +export declare function lazyJoinStacks(lazyStack: LazyStack, newError: ErrorLike, originalError?: ErrorLike): void; +export {}; diff --git a/forward_engineering/node_modules/ono/esm/stack.js b/forward_engineering/node_modules/ono/esm/stack.js new file mode 100644 index 0000000..6f1a6b7 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/stack.js @@ -0,0 +1,95 @@ +const newline = /\r?\n/; +const onoCall = /\bono[ @]/; +/** + * Is the property lazily computed? + */ +export function isLazyStack(stackProp) { + return Boolean(stackProp && + stackProp.configurable && + typeof stackProp.get === "function"); +} +/** + * Is the stack property writable? + */ +export function isWritableStack(stackProp) { + return Boolean( + // If there is no stack property, then it's writable, since assigning it will create it + !stackProp || + stackProp.writable || + typeof stackProp.set === "function"); +} +/** + * Appends the original `Error.stack` property to the new Error's stack. + */ +export function joinStacks(newError, originalError) { + let newStack = popStack(newError.stack); + let originalStack = originalError ? originalError.stack : undefined; + if (newStack && originalStack) { + return newStack + "\n\n" + originalStack; + } + else { + return newStack || originalStack; + } +} +/** + * Calls `joinStacks` lazily, when the `Error.stack` property is accessed. + */ +export function lazyJoinStacks(lazyStack, newError, originalError) { + if (originalError) { + Object.defineProperty(newError, "stack", { + get: () => { + let newStack = lazyStack.get.apply(newError); + return joinStacks({ stack: newStack }, originalError); + }, + enumerable: false, + configurable: true + }); + } + else { + lazyPopStack(newError, lazyStack); + } +} +/** + * Removes Ono from the stack, so that the stack starts at the original error location + */ +function popStack(stack) { + if (stack) { + let lines = stack.split(newline); + // Find the Ono call(s) in the stack, and remove them + let onoStart; + for (let i = 0; i < lines.length; i++) { + let line = lines[i]; + if (onoCall.test(line)) { + if (onoStart === undefined) { + // We found the first Ono call in the stack trace. + // There may be other subsequent Ono calls as well. + onoStart = i; + } + } + else if (onoStart !== undefined) { + // We found the first non-Ono call after one or more Ono calls. + // So remove the Ono call lines from the stack trace + lines.splice(onoStart, i - onoStart); + break; + } + } + if (lines.length > 0) { + return lines.join("\n"); + } + } + // If we get here, then the stack doesn't contain a call to `ono`. + // This may be due to minification or some optimization of the JS engine. + // So just return the stack as-is. + return stack; +} +/** + * Calls `popStack` lazily, when the `Error.stack` property is accessed. + */ +function lazyPopStack(error, lazyStack) { + Object.defineProperty(error, "stack", { + get: () => popStack(lazyStack.get.apply(error)), + enumerable: false, + configurable: true + }); +} +//# sourceMappingURL=stack.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/stack.js.map b/forward_engineering/node_modules/ono/esm/stack.js.map new file mode 100644 index 0000000..22b3a55 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/stack.js.map @@ -0,0 +1 @@ +{"version":3,"file":"stack.js","sourceRoot":"","sources":["../src/stack.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/to-json.d.ts b/forward_engineering/node_modules/ono/esm/to-json.d.ts new file mode 100644 index 0000000..5c06567 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/to-json.d.ts @@ -0,0 +1,11 @@ +import { ErrorLike, ErrorPOJO } from "./types"; +/** + * Custom JSON serializer for Error objects. + * Returns all built-in error properties, as well as extended properties. + */ +export declare function toJSON(this: E): ErrorPOJO & E; +/** + * Returns own, inherited, enumerable, non-enumerable, string, and symbol keys of `obj`. + * Does NOT return members of the base Object prototype, or the specified omitted keys. + */ +export declare function getDeepKeys(obj: object, omit?: Array): Set; diff --git a/forward_engineering/node_modules/ono/esm/to-json.js b/forward_engineering/node_modules/ono/esm/to-json.js new file mode 100644 index 0000000..dd7d027 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/to-json.js @@ -0,0 +1,45 @@ +const nonJsonTypes = ["function", "symbol", "undefined"]; +const protectedProps = ["constructor", "prototype", "__proto__"]; +const objectPrototype = Object.getPrototypeOf({}); +/** + * Custom JSON serializer for Error objects. + * Returns all built-in error properties, as well as extended properties. + */ +export function toJSON() { + // HACK: We have to cast the objects to `any` so we can use symbol indexers. + // see https://github.com/Microsoft/TypeScript/issues/1863 + // tslint:disable: no-any no-unsafe-any + let pojo = {}; + let error = this; + for (let key of getDeepKeys(error)) { + if (typeof key === "string") { + let value = error[key]; + let type = typeof value; + if (!nonJsonTypes.includes(type)) { + pojo[key] = value; + } + } + } + // tslint:enable: no-any no-unsafe-any + return pojo; +} +/** + * Returns own, inherited, enumerable, non-enumerable, string, and symbol keys of `obj`. + * Does NOT return members of the base Object prototype, or the specified omitted keys. + */ +export function getDeepKeys(obj, omit = []) { + let keys = []; + // Crawl the prototype chain, finding all the string and symbol keys + while (obj && obj !== objectPrototype) { + keys = keys.concat(Object.getOwnPropertyNames(obj), Object.getOwnPropertySymbols(obj)); + obj = Object.getPrototypeOf(obj); + } + // De-duplicate the list of keys + let uniqueKeys = new Set(keys); + // Remove any omitted keys + for (let key of omit.concat(protectedProps)) { + uniqueKeys.delete(key); + } + return uniqueKeys; +} +//# sourceMappingURL=to-json.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/to-json.js.map b/forward_engineering/node_modules/ono/esm/to-json.js.map new file mode 100644 index 0000000..c7a1a85 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/to-json.js.map @@ -0,0 +1 @@ +{"version":3,"file":"to-json.js","sourceRoot":"","sources":["../src/to-json.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AACzD,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AACjE,MAAM,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;AAElD;;;GAGG;AACH,MAAM,UAAU,MAAM;IACpB,4EAA4E;IAC5E,0DAA0D;IAC1D,uCAAuC;IACvC,IAAI,IAAI,GAAQ,EAAE,CAAC;IACnB,IAAI,KAAK,GAAG,IAAW,CAAC;IAExB,KAAK,IAAI,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;QAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,IAAI,GAAG,OAAO,KAAK,CAAC;YAExB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACnB;SACF;KACF;IAED,sCAAsC;IACtC,OAAO,IAAqB,CAAC;AAC/B,CAAC;AAGD;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,OAA+B,EAAE;IACxE,IAAI,IAAI,GAA2B,EAAE,CAAC;IAEtC,oEAAoE;IACpE,OAAO,GAAG,IAAI,GAAG,KAAK,eAAe,EAAE;QACrC,IAAI,GAAG,IAAI,CAAC,MAAM,CAChB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAC/B,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAClC,CAAC;QACF,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAW,CAAC;KAC5C;IAED,gCAAgC;IAChC,IAAI,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAE/B,0BAA0B;IAC1B,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;QAC3C,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;KACxB;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/types.d.ts b/forward_engineering/node_modules/ono/esm/types.d.ts new file mode 100644 index 0000000..a2e7df9 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/types.d.ts @@ -0,0 +1,169 @@ +/// +import { inspect } from "util"; +/** + * The default export of the "ono" module. + */ +export interface OnoSingleton extends Ono { + error: Ono; + eval: Ono; + range: Ono; + reference: Ono; + syntax: Ono; + type: Ono; + uri: Ono; +} +/** + * Creates an `Ono` instance for a specifc error type. + */ +export interface OnoConstructor { + (constructor: ErrorLikeConstructor, options?: OnoOptions): Ono; + new (constructor: ErrorLikeConstructor, options?: OnoOptions): Ono; + /** + * Returns an object containing all properties of the given Error object, + * which can be used with `JSON.stringify()`. + */ + toJSON(error: E): ErrorPOJO & E; +} +/** + * An `Ono` is a function that creates errors of a specific type. + */ +export interface Ono { + /** + * The type of Error that this `Ono` function produces. + */ + readonly [Symbol.species]: ErrorLikeConstructor; + /** + * Creates a new error with the message, stack trace, and properties of another error. + * + * @param error - The original error + */ + (error: E): T & E & OnoError; + /** + * Creates a new error with the message, stack trace, and properties of another error, + * as well as aditional properties. + * + * @param error - The original error + * @param props - An object whose properties will be added to the returned error + */ + (error: E, props: P): T & E & P & OnoError; + /** + * Creates a new error with a formatted message and the stack trace and properties of another error. + * + * @param error - The original error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (error: E, message: string, ...params: unknown[]): T & E & OnoError; + /** + * Creates a new error with a formatted message and the stack trace and properties of another error, + * as well as additional properties. + * + * @param error - The original error + * @param props - An object whose properties will be added to the returned error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (error: E, props: P, message: string, ...params: unknown[]): T & E & P & OnoError; + /** + * Creates an error with a formatted message. + * + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ + (message: string, ...params: unknown[]): T & OnoError; + /** + * Creates an error with additional properties. + * + * @param props - An object whose properties will be added to the returned error + */ +

(props: P): T & P & OnoError; + /** + * Creates an error with a formatted message and additional properties. + * + * @param props - An object whose properties will be added to the returned error + * @param message - The new error message, possibly including argument placeholders + * @param params - Optional arguments to replace the corresponding placeholders in the message + */ +

(props: P, message: string, ...params: unknown[]): T & P & OnoError; +} +/** + * All error objects returned by Ono have these properties. + */ +export interface OnoError extends ErrorPOJO { + /** + * Returns a JSON representation of the error, including all built-in error properties, + * as well as properties that were dynamically added. + */ + toJSON(): ErrorPOJO & T; + /** + * Returns a representation of the error for Node's `util.inspect()` method. + * + * @see https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects + */ + [inspect.custom](): ErrorPOJO & T; +} +/** + * An error object that doesn't inherit from the `Error` class, such as `DOMError`, `DOMException`, + * and some third-party error types. + */ +export interface ErrorPOJO { + message?: string; + stack?: string; + name?: string; +} +/** + * Any object that "looks like" an `Error` object. + */ +export declare type ErrorLike = Error | ErrorPOJO; +/** + * A constructor for `ErrorLike` objects. + */ +export declare type ErrorLikeConstructor = ErrorLikeConstructorFunction | ErrorLikeConstructorClass; +/** + * A constructor function for `ErrorLike` objects. + * Constructor functions can be called without the `new` keyword. + * + * @example + * throw TypeError(); + */ +export interface ErrorLikeConstructorFunction { + readonly prototype: T; + (): T; +} +/** + * A constructor class for `ErrorLike` objects. + * Constructor classes must be called with the `new` keyword. + * + * @example + * throw new TypeError(); + */ +export interface ErrorLikeConstructorClass { + readonly prototype: T; + new (...args: unknown[]): T; +} +/** + * Options that determine the behavior of an `Ono` instance. + */ +export interface OnoOptions { + /** + * When `Ono` is used to wrap an error, this setting determines whether the inner error's message + * is appended to the new error message. + * + * Defaults to `true`. + */ + concatMessages?: boolean; + /** + * A function that replaces placeholders like "%s" or "%d" in error messages with values. + * If set to `false`, then error messages will be treated as literals and no placeholder replacement will occur. + * + * Defaults to `utils.inspect()` in Node.js. Defaults to `Array.join()` in browsers. + */ + format?: MessageFormatter | false; +} +/** + * A function that accepts a message template and arguments to replace template parameters. + * + * @example + * format("Hello, %s! You have %d unread messages.", "John", 5); + */ +export declare type MessageFormatter = (message: string, ...args: unknown[]) => string; diff --git a/forward_engineering/node_modules/ono/esm/types.js b/forward_engineering/node_modules/ono/esm/types.js new file mode 100644 index 0000000..e37d5cd --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/types.js @@ -0,0 +1,2 @@ +import { inspect } from "util"; +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/esm/types.js.map b/forward_engineering/node_modules/ono/esm/types.js.map new file mode 100644 index 0000000..1dbee15 --- /dev/null +++ b/forward_engineering/node_modules/ono/esm/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC"} \ No newline at end of file diff --git a/forward_engineering/node_modules/ono/lib/ono.d.ts b/forward_engineering/node_modules/ono/lib/ono.d.ts deleted file mode 100644 index ac0c8c0..0000000 --- a/forward_engineering/node_modules/ono/lib/ono.d.ts +++ /dev/null @@ -1,86 +0,0 @@ -interface ErrorPOJO { - message?: string; - stack?: string; - name?: string; - [key: string]: unknown; -} - -type ErrorLike = Error | ErrorPOJO; - -declare const ono: { - (error: ErrorLike): Error; - (error: ErrorLike, props: object): Error; - (error: ErrorLike, message: string, ...params: any[]): Error; - (error: ErrorLike, props: object, message: string, ...params: any[]): Error; - (message: string, ...params: any[]): Error; - (props: object): Error; - (props: object, message: string, ...params: any[]): Error; - - - error(error: ErrorLike): Error; - error(error: ErrorLike, props: object): Error; - error(error: ErrorLike, message: string, ...params: any[]): Error; - error(error: ErrorLike, props: object, message: string, ...params: any[]): Error; - error(message: string, ...params: any[]): Error; - error(props: object): Error; - error(props: object, message: string, ...params: any[]): Error; - - - eval(error: ErrorLike): EvalError; - eval(error: ErrorLike, props: object): EvalError; - eval(error: ErrorLike, message: string, ...params: any[]): EvalError; - eval(error: ErrorLike, props: object, message: string, ...params: any[]): EvalError; - eval(message: string, ...params: any[]): EvalError; - eval(props: object): EvalError; - eval(props: object, message: string, ...params: any[]): EvalError; - - - range(error: ErrorLike): RangeError; - range(error: ErrorLike, props: object): RangeError; - range(error: ErrorLike, message: string, ...params: any[]): RangeError; - range(error: ErrorLike, props: object, message: string, ...params: any[]): RangeError; - range(message: string, ...params: any[]): RangeError; - range(props: object): RangeError; - range(props: object, message: string, ...params: any[]): RangeError; - - - reference(error: ErrorLike): ReferenceError; - reference(error: ErrorLike, props: object): ReferenceError; - reference(error: ErrorLike, message: string, ...params: any[]): ReferenceError; - reference(error: ErrorLike, props: object, message: string, ...params: any[]): ReferenceError; - reference(message: string, ...params: any[]): ReferenceError; - reference(props: object): ReferenceError; - reference(props: object, message: string, ...params: any[]): ReferenceError; - - - syntax(error: ErrorLike): SyntaxError; - syntax(error: ErrorLike, props: object): SyntaxError; - syntax(error: ErrorLike, message: string, ...params: any[]): SyntaxError; - syntax(error: ErrorLike, props: object, message: string, ...params: any[]): SyntaxError; - syntax(message: string, ...params: any[]): SyntaxError; - syntax(props: object): SyntaxError; - syntax(props: object, message: string, ...params: any[]): SyntaxError; - - - type(error: ErrorLike): TypeError; - type(error: ErrorLike, props: object): TypeError; - type(error: ErrorLike, message: string, ...params: any[]): TypeError; - type(error: ErrorLike, props: object, message: string, ...params: any[]): TypeError; - type(message: string, ...params: any[]): TypeError; - type(props: object): TypeError; - type(props: object, message: string, ...params: any[]): TypeError; - - - uri(error: ErrorLike): URIError; - uri(error: ErrorLike, props: object): URIError; - uri(error: ErrorLike, message: string, ...params: any[]): URIError; - uri(error: ErrorLike, props: object, message: string, ...params: any[]): URIError; - uri(message: string, ...params: any[]): URIError; - uri(props: object): URIError; - uri(props: object, message: string, ...params: any[]): URIError; - - - formatter(message: string, ...params: any[]): string; -} - -export = ono; diff --git a/forward_engineering/node_modules/ono/lib/ono.js b/forward_engineering/node_modules/ono/lib/ono.js deleted file mode 100644 index cc15457..0000000 --- a/forward_engineering/node_modules/ono/lib/ono.js +++ /dev/null @@ -1,301 +0,0 @@ -"use strict"; - -var format = require("format-util"); -var slice = Array.prototype.slice; -var protectedProperties = ["name", "message", "stack"]; -var errorPrototypeProperties = [ - "name", "message", "description", "number", "code", "fileName", "lineNumber", "columnNumber", - "sourceURL", "line", "column", "stack" -]; - -module.exports = create(Error); -module.exports.error = create(Error); -module.exports.eval = create(EvalError); -module.exports.range = create(RangeError); -module.exports.reference = create(ReferenceError); -module.exports.syntax = create(SyntaxError); -module.exports.type = create(TypeError); -module.exports.uri = create(URIError); -module.exports.formatter = format; - -/** - * Creates a new {@link ono} function that creates the given Error class. - * - * @param {Class} Klass - The Error subclass to create - * @returns {ono} - */ -function create (Klass) { - /** - * @param {Error} [err] - The original error, if any - * @param {object} [props] - An object whose properties will be added to the error object - * @param {string} [message] - The error message. May contain {@link util#format} placeholders - * @param {...*} [params] - Parameters that map to the `message` placeholders - * @returns {Error} - */ - return function onoFactory (err, props, message, params) { // eslint-disable-line no-unused-vars - var formatArgs = []; - var formattedMessage = ""; - - // Determine which arguments were actually specified - if (typeof err === "string") { - formatArgs = slice.call(arguments); - err = props = undefined; - } - else if (typeof props === "string") { - formatArgs = slice.call(arguments, 1); - props = undefined; - } - else if (typeof message === "string") { - formatArgs = slice.call(arguments, 2); - } - - // If there are any format arguments, then format the error message - if (formatArgs.length > 0) { - formattedMessage = module.exports.formatter.apply(null, formatArgs); - } - - if (err && err.message) { - // The inner-error's message will be added to the new message - formattedMessage += (formattedMessage ? " \n" : "") + err.message; - } - - // Create the new error - // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace - var newError = new Klass(formattedMessage); - - // Extend the new error with the additional properties - extendError(newError, err); // Copy properties of the original error - extendToJSON(newError); // Replace the original toJSON method - extend(newError, props); // Copy custom properties, possibly including a custom toJSON method - - return newError; - }; -} - -/** - * Extends the targetError with the properties of the source error. - * - * @param {Error} targetError - The error object to extend - * @param {?Error} sourceError - The source error object, if any - */ -function extendError (targetError, sourceError) { - extendStack(targetError, sourceError); - extend(targetError, sourceError); -} - -/** - * JavaScript engines differ in how errors are serialized to JSON - especially when it comes - * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS - * outputs every property of the error. - */ -function extendToJSON (error) { - error.toJSON = errorToJSON; - - // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method - error.inspect = errorToString; -} - -/** - * Extends the target object with the properties of the source object. - * - * @param {object} target - The object to extend - * @param {?source} source - The object whose properties are copied - */ -function extend (target, source) { - if (source && typeof source === "object") { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - // Don't copy "protected" properties, since they have special meaning/behavior - // and are set by the onoFactory function - if (protectedProperties.indexOf(key) >= 0) { - continue; - } - - try { - target[key] = source[key]; - } - catch (e) { - // This property is read-only, so it can't be copied - } - } - } -} - -/** - * Custom JSON serializer for Error objects. - * Returns all built-in error properties, as well as extended properties. - * - * @returns {object} - */ -function errorToJSON () { - var json = {}; - - // Get all the properties of this error - var keys = Object.keys(this); - - // Also include properties from the Error prototype - keys = keys.concat(errorPrototypeProperties); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = this[key]; - var type = typeof value; - if (type !== "undefined" && type !== "function") { - json[key] = value; - } - } - - return json; -} - -/** - * Serializes Error objects as human-readable JSON strings for debugging/logging purposes. - * - * @returns {string} - */ -function errorToString () { - return JSON.stringify(this, null, 2).replace(/\\n/g, "\n"); -} - -/** - * Extend the error stack to include its cause - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function extendStack (targetError, sourceError) { - if (hasLazyStack(targetError)) { - if (sourceError) { - lazyJoinStacks(targetError, sourceError); - } - else { - lazyPopStack(targetError); - } - } - else { - if (sourceError) { - targetError.stack = joinStacks(targetError.stack, sourceError.stack); - } - else { - targetError.stack = popStack(targetError.stack); - } - } -} - -/** - * Appends the original {@link Error#stack} property to the new Error's stack. - * - * @param {string} newStack - * @param {string} originalStack - * @returns {string} - */ -function joinStacks (newStack, originalStack) { - newStack = popStack(newStack); - - if (newStack && originalStack) { - return newStack + "\n\n" + originalStack; - } - else { - return newStack || originalStack; - } -} - -/** - * Removes Ono from the stack, so that the stack starts at the original error location - * - * @param {string} stack - * @returns {string} - */ -function popStack (stack) { - if (stack) { - var lines = stack.split("\n"); - - if (lines.length < 2) { - // The stack only has one line, so there's nothing we can remove - return stack; - } - - // Find the `onoFactory` call in the stack, and remove it - for (var i = 0; i < lines.length; i++) { - var line = lines[i]; - if (line.indexOf("onoFactory") >= 0) { - lines.splice(i, 1); - return lines.join("\n"); - } - } - - // If we get here, then the stack doesn't contain a call to `onoFactory`. - // This may be due to minification or some optimization of the JS engine. - // So just return the stack as-is. - return stack; - } -} - -/** - * Does a one-time determination of whether this JavaScript engine - * supports lazy `Error.stack` properties. - */ -var supportsLazyStack = (function () { - return !!( - // ES5 property descriptors must be supported - Object.getOwnPropertyDescriptor && Object.defineProperty && - - // Chrome on Android doesn't support lazy stacks :( - (typeof navigator === "undefined" || !/Android/.test(navigator.userAgent)) - ); -}()); - -/** - * Does this error have a lazy stack property? - * - * @param {Error} err - * @returns {boolean} - */ -function hasLazyStack (err) { - if (!supportsLazyStack) { - return false; - } - - var descriptor = Object.getOwnPropertyDescriptor(err, "stack"); - if (!descriptor) { - return false; - } - return typeof descriptor.get === "function"; -} - -/** - * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function lazyJoinStacks (targetError, sourceError) { - var targetStack = Object.getOwnPropertyDescriptor(targetError, "stack"); - - Object.defineProperty(targetError, "stack", { - get: function () { - return joinStacks(targetStack.get.apply(targetError), sourceError.stack); - }, - enumerable: false, - configurable: true - }); -} - -/** - * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} error - */ -function lazyPopStack (error) { - var targetStack = Object.getOwnPropertyDescriptor(error, "stack"); - - Object.defineProperty(error, "stack", { - get: function () { - return popStack(targetStack.get.apply(error)); - }, - enumerable: false, - configurable: true - }); -} diff --git a/forward_engineering/node_modules/ono/package.json b/forward_engineering/node_modules/ono/package.json index 3fdae84..92440f6 100644 --- a/forward_engineering/node_modules/ono/package.json +++ b/forward_engineering/node_modules/ono/package.json @@ -1,99 +1,69 @@ { - "_args": [ - [ - { - "raw": "ono@^4.0.11", - "scope": null, - "escapedName": "ono", - "name": "ono", - "rawSpec": "^4.0.11", - "spec": ">=4.0.11 <5.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser" - ] - ], - "_from": "ono@>=4.0.11 <5.0.0", - "_hasShrinkwrap": false, - "_id": "ono@4.0.11", - "_inCache": true, + "_from": "ono@^6.0.0", + "_id": "ono@6.0.1", + "_inBundle": false, + "_integrity": "sha512-5rdYW/106kHqLeG22GE2MHKq+FlsxMERZev9DCzQX1zwkxnFwBivSn5i17a5O/rDmOJOdf4Wyt80UZljzx9+DA==", "_location": "/ono", - "_nodeVersion": "10.11.0", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/ono_4.0.11_1544357760387_0.9877406196156169" - }, - "_npmUser": { - "name": "bigstickcarpet", - "email": "bigstickcarpet@gmail.com" - }, - "_npmVersion": "6.4.1", "_phantomChildren": {}, "_requested": { - "raw": "ono@^4.0.11", - "scope": null, - "escapedName": "ono", + "type": "range", + "registry": true, + "raw": "ono@^6.0.0", "name": "ono", - "rawSpec": "^4.0.11", - "spec": ">=4.0.11 <5.0.0", - "type": "range" + "escapedName": "ono", + "rawSpec": "^6.0.0", + "saveSpec": null, + "fetchSpec": "^6.0.0" }, "_requiredBy": [ "/json-schema-ref-parser", "/swagger-parser" ], - "_resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "_shasum": "c7f4209b3e396e8a44ef43b9cedc7f5d791d221d", - "_shrinkwrap": null, - "_spec": "ono@^4.0.11", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser", + "_resolved": "https://registry.npmjs.org/ono/-/ono-6.0.1.tgz", + "_shasum": "1bc14ffb8af1e5db3f7397f75b88e4a2d64bbd71", + "_spec": "ono@^6.0.0", + "_where": "/home/taras/Dev/Hackolade/OpenApi-fork-3/OpenAPI/forward_engineering/node_modules/swagger-parser", "author": { "name": "James Messinger", "url": "https://jamesmessinger.com" }, + "browser": { + "./cjs/isomorphic.node.js": "./cjs/isomorphic.browser.js", + "./esm/isomorphic.node.js": "./esm/isomorphic.browser.js" + }, "bugs": { "url": "https://github.com/JS-DevTools/ono/issues" }, - "dependencies": { - "format-util": "^1.0.3" - }, + "bundleDependencies": false, + "dependencies": {}, + "deprecated": false, "description": "Throw better errors.", "devDependencies": { + "@babel/polyfill": "^7.7.0", + "@types/node": "^13.1.4", "chai": "^4.2.0", - "coveralls": "^3.0.2", - "eslint": "^5.10.0", - "eslint-config-modular": "^5.0.0", - "karma": "^3.1.3", - "karma-chai": "^0.1.0", - "karma-chrome-launcher": "^2.2.0", + "coveralls": "^3.0.9", + "eslint": "^6.8.0", + "eslint-config-modular": "^7.0.1", + "host-environment": "^1.1.4", + "karma": "^4.4.1", "karma-cli": "^2.0.0", - "karma-coverage": "^1.1.2", - "karma-edge-launcher": "^0.4.2", - "karma-firefox-launcher": "^1.1.0", - "karma-host-environment": "^1.1.6", - "karma-ie-launcher": "^1.0.0", - "karma-mocha": "^1.3.0", - "karma-safari-launcher": "^1.0.0", - "karma-sauce-launcher": "^1.2.0", - "karma-verbose-reporter": "0.0.6", - "mocha": "^5.2.0", + "karma-config": "^1.5.8", + "mocha": "^7.0.0", "npm-check": "^5.9.0", - "nyc": "^13.1.0", - "simplifyify": "^7.0.0", - "typescript": "^3.2.2", - "version-bump-prompt": "^4.2.1" - }, - "directories": {}, - "dist": { - "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", - "shasum": "c7f4209b3e396e8a44ef43b9cedc7f5d791d221d", - "tarball": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "fileCount": 10, - "unpackedSize": 65245, - "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDQeBCRA9TVsSAnZWagAA/BcP/j6wEq7OY/AUFfkUvqiM\nceKLFrK5fzTtvFLUiLqsWRvyGTNCk3tcGfhNULgw6CSVwd1kZeGsKSX7rnE8\njb/7Wgpg099TC7Mlnjh7vm2O2UxbYI6qO1BYbk32Ocp6m6DHqIVZ7CCjYdBO\nzyG9U+PrbmQVwjlGBIeTahL3c540pGbbfdkCPkgN72aa5HwdSZma7LUJN9sw\n1ZFW8A4NsMIKg9rIPwAMgsVq3kZpHgN45H/Pj6aCoHbwCBtrjEm+nSssUpVn\nVQRFUxkvr1CpRvBy0oIz1+CIIrIRiOzEeJZF2ohGa2IXfjB35hNB5srxeAzZ\nbhy404PsB7QbInRoPvhhhloXRcFJnc9KuBig2JaKWBYD9fOlImSHtEtXaaDb\nfOdnkmMIzEObt4jGkBkHdcd/VCaerT3urLraygVe4MsUN+6j+AlD7BQCmiCd\npMi96dRYKqEaqrEXPUaJ6UmbkKU020ID1tCuOzGyC1zMiAXmgipKKffv9rpW\n6yjfL76/y8Pc3YyzqVFwoaB3kapQl9l79U2/MutVGrCGh8RgVCoDb5WsnipP\n1VPVN69YnYRKknVoqtVzmuL6Fl7zteoZ91iVoU3INujHT5YZssC0KPIPM2Be\nLMzJk2MvGcgn+rx7y0DNT/9v2kAGa7ERtIcurzdv2PaCohaRVqHLOjVbRNOT\nPBuY\r\n=W2rQ\r\n-----END PGP SIGNATURE-----\r\n" + "nyc": "^15.0.0", + "shx": "^0.3.2", + "tslint": "^5.20.1", + "tslint-modular": "^1.6.0", + "typescript": "^3.7.4", + "typescript-tslint-plugin": "^0.5.5", + "version-bump-prompt": "^5.0.7" }, - "gitHead": "d631b2baa9f070545b3ec4f32d8b8ecb04af6b9a", - "homepage": "https://jsdevtools.org/ono", + "files": [ + "cjs", + "esm" + ], + "homepage": "https://jstools.dev/ono", "keywords": [ "throw", "error", @@ -102,37 +72,38 @@ "printf", "format", "wrap", - "inner" + "inner", + "original", + "stack", + "properties" ], "license": "MIT", - "main": "lib/ono.js", - "maintainers": [ - { - "name": "bigstickcarpet", - "email": "bigstickcarpet@gmail.com" - } - ], + "main": "cjs/index.js", + "module": "esm/index.js", "name": "ono", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", "repository": { "type": "git", "url": "git+https://github.com/JS-DevTools/ono.git" }, "scripts": { - "build": "simplifyify lib/ono.js --outfile dist/ono.js --standalone ono --bundle --debug --minify", - "bump": "bump --prompt --grep dist/* --tag --push --all", + "build": "npm run build:cjs && npm run build:esm", + "build:cjs": "tsc --module commonjs --outDir cjs", + "build:esm": "tsc", + "bump": "bump --tag --push --all", + "clean": "shx rm -rf .nyc_output coverage cjs esm", "coverage": "npm run coverage:node && npm run coverage:browser", - "coverage:browser": "npm run build -- --coverage && npm run test:browser -- --coverage", - "coverage:node": "nyc --reporter=text --reporter=lcov --report-dir coverage/node mocha", - "lint": "eslint lib test/fixtures test/specs", - "release": "npm run upgrade && npm run build && npm test && npm run bump && npm publish", - "test": "npm run test:node && npm run test:browser && npm run test:typescript && npm run lint", + "coverage:browser": "npm run test:browser -- --coverage", + "coverage:node": "nyc --reporter=text --reporter=lcov --report-dir coverage/node node_modules/mocha/bin/mocha", + "lint": "npm run lint:typescript && npm run lint:javascript", + "lint:javascript": "eslint test ./*.js", + "lint:typescript": "tslint -p tsconfig.json", + "release": "npm run upgrade && npm run clean && npm run build && npm test && npm run bump", + "test": "npm run test:node && npm run test:typescript && npm run test:browser && npm run lint", "test:browser": "karma start --single-run", "test:node": "mocha", - "test:typescript": "tsc --noEmit test/specs/typescript-definition.ts", - "upgrade": "npm-check -u" + "test:typescript": "tsc --noEmit test/specs/typescript.spec.ts", + "upgrade": "npm-check -u && npm audit fix" }, - "typings": "lib/ono.d.ts", - "version": "4.0.11" + "typings": "esm/index.d.ts", + "version": "6.0.1" } diff --git a/forward_engineering/node_modules/openapi-schema-validation/README.md b/forward_engineering/node_modules/openapi-schema-validation/README.md deleted file mode 100644 index b37424f..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/README.md +++ /dev/null @@ -1,75 +0,0 @@ -# Note: This has been deprecated in favor of openapi-schema-validator - -Moving forward you can use [openapi-schema-validator](https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-schema-validator). See [openapi-framework](https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-framework) for an example. - -# openapi-schema-validation [![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coveralls Status][coveralls-image]][coveralls-url] -> Validate openapi documents. - -## For OpenAPI v2.0 (a.k.a. swagger 2.0) and OpenAPI v3.0.0 -#### Document examples and full specs: -* [Official 2.0 docs](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#itemsObject) -* [Official 3.0.0 docs](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md) - -## Highlights - -* Validate openapi documents against openapi schema documents. -* Uses [jsonschema](https://github.com/tdegrunt/jsonschema) under the hood. -* Performant. -* Currently supports type definitions included in the `definitions` property of the -provided openapi document. -* Extensively tested. -* Small footprint. -* Supports openapi 2.0 (a.k.a. swagger 2.0) documents and openapi 3.0.0 - -**Huge thank you to the [gnostic](https://github.com/googleapis/gnostic) project for building up a 3.0.0 JSON schema.** - - -## Example -```javascript -var validateSchema = require('openapi-schema-validation').validate; -console.log(validateSchema(apiDoc, version)); -``` -[see here](https://github.com/tdegrunt/jsonschema#results) for example results. - - -## API -### .validate(apiDoc, version) -* `apiDoc` _object_ is any api document you wish to validate. -* `version` _optional number_ openapi document schema version to use (2 or 3). - * 2 - `swagger-2.0` (default) - * 3 - `openapi-3.0.0` - -## LICENSE -`````` -The MIT License (MIT) - -Copyright (c) 2016 Kogo Software LLC - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -`````` - -[downloads-image]: http://img.shields.io/npm/dm/openapi-schema-validation.svg -[npm-url]: https://npmjs.org/package/openapi-schema-validation -[npm-image]: http://img.shields.io/npm/v/openapi-schema-validation.svg - -[travis-url]: https://travis-ci.org/kogosoftwarellc/open-api -[travis-image]: http://img.shields.io/travis/kogosoftwarellc/open-api.svg - -[coveralls-url]: https://coveralls.io/r/kogosoftwarellc/open-api -[coveralls-image]: http://img.shields.io/coveralls/kogosoftwarellc/open-api/master.svg diff --git a/forward_engineering/node_modules/openapi-schema-validation/index.js b/forward_engineering/node_modules/openapi-schema-validation/index.js deleted file mode 100644 index 628ca28..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/index.js +++ /dev/null @@ -1,29 +0,0 @@ -var loggingKey = require('./package.json').name; -var fs = require('fs'); -var Validator = require('jsonschema').Validator; -var v = new Validator(); -var jsonSchema = require('jsonschema-draft4'); -var swagger2Schema = require('swagger-schema-official/schema.json'); -var swagger3Schema = require('./schema/openapi-3.0.json'); - -v.addSchema(jsonSchema); -v.addSchema(swagger2Schema); -v.addSchema(swagger3Schema); - -module.exports = { - validate: validate -}; - -/** - * Runs specified validator against the provided openapiDocument and returns the results. - * Previously the second param was unused. To maintain backward compatibility, if anything other than a - * Number is passed, the v2 validator will be used. - * - * @param openapiDoc {object} to be validated - * @param version {Number} defaults to 2 if unspecified or invalid type is passed - * @returns {object} results from the validator - */ -function validate(openapiDoc, version) { - version = parseInt(version, 10) || 2; // default to swagger 2.0 validation - return v.validate(openapiDoc, version === 2 ? swagger2Schema : swagger3Schema); -} diff --git a/forward_engineering/node_modules/openapi-schema-validation/package.json b/forward_engineering/node_modules/openapi-schema-validation/package.json deleted file mode 100644 index a235517..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/package.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "_args": [ - [ - { - "raw": "openapi-schema-validation@^0.4.2", - "scope": null, - "escapedName": "openapi-schema-validation", - "name": "openapi-schema-validation", - "rawSpec": "^0.4.2", - "spec": ">=0.4.2 <0.5.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser" - ] - ], - "_from": "openapi-schema-validation@>=0.4.2 <0.5.0", - "_id": "openapi-schema-validation@0.4.2", - "_inCache": true, - "_location": "/openapi-schema-validation", - "_nodeVersion": "8.11.1", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/openapi-schema-validation_0.4.2_1533879737508_0.10475052655531125" - }, - "_npmUser": { - "name": "jsdevel", - "email": "js.developer.undefined@gmail.com" - }, - "_npmVersion": "5.6.0", - "_phantomChildren": {}, - "_requested": { - "raw": "openapi-schema-validation@^0.4.2", - "scope": null, - "escapedName": "openapi-schema-validation", - "name": "openapi-schema-validation", - "rawSpec": "^0.4.2", - "spec": ">=0.4.2 <0.5.0", - "type": "range" - }, - "_requiredBy": [ - "/swagger-parser" - ], - "_resolved": "https://registry.npmjs.org/openapi-schema-validation/-/openapi-schema-validation-0.4.2.tgz", - "_shasum": "895c29021be02e000f71c51f859da52118eb1e21", - "_shrinkwrap": null, - "_spec": "openapi-schema-validation@^0.4.2", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser", - "author": { - "name": "Joseph Spencer" - }, - "bugs": { - "url": "https://github.com/kogosoftwarellc/open-api/issues" - }, - "dependencies": { - "jsonschema": "1.2.4", - "jsonschema-draft4": "^1.0.0", - "swagger-schema-official": "2.0.0-bab6bed" - }, - "description": "Validate openapi documents.", - "devDependencies": {}, - "directories": {}, - "dist": { - "integrity": "sha512-K8LqLpkUf2S04p2Nphq9L+3bGFh/kJypxIG2NVGKX0ffzT4NQI9HirhiY6Iurfej9lCu7y4Ndm4tv+lm86Ck7w==", - "shasum": "895c29021be02e000f71c51f859da52118eb1e21", - "tarball": "https://registry.npmjs.org/openapi-schema-validation/-/openapi-schema-validation-0.4.2.tgz", - "fileCount": 10, - "unpackedSize": 58192, - "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbSW6CRA9TVsSAnZWagAAKdIQAJFY8tFBnmDAP2nQmoR7\nbNU5yNEcY8cBVDegTb+AMr4Q5dIAxLNGhcV0r638XCgVR1nTYLC/prMeUy3H\nbKCCQSws3B2/E2aKewe7VdN0NGf9vLdM4k6h9rlg0uz4xsKprex2jEP8n33u\niDXVi9fT08+n9/IJJ+H0dorWCFDDXMCdWQbAwl3QJBahqSbm/WoPJka3pVxY\nznhLcIn98KiUDWmHUxpoYn5LZK9aZPxB375J5c1+O2sPcPTSYhncs/2nShLC\nA0CWVYSuAj8XGpMed9ZkztaBFCN8G2NqvmZH9TgfBvd1zaxINMKBGAKAJxjr\nU/OrJtiyOHb4RMg1/ygh7exKpl1lJOcXgoUdlIXqN6do/g1SJlmxDJ/WF4ri\ngo2ANVD6fyjWprA9OlO6LiiRGDQo3cASZg8ZmNZNR0B5ZvVuYfCZojmpImsX\nb7xvCkFQ0LB80zmHJewWz6kxog13eHB8/Dht9mC79qTkRQQFpZ1jws9WoK+y\n0XweOZw4YKA6vO+pKCbYVV5E1lA2JP7o2u+/WQENXGr1rbfekmc/ASRRg4Jd\nlKD75kpkC2mtYo0nPniedeShrameh+HI08IL48wyGo1qeqr8x3GSDE+8vVGb\ngURH+Cf3JuEp0s4Zu2d+qCOcDk8g2PibXU0XR4ppKxEQ4Vgtrt6VebEsyyt0\nSn/0\r\n=2d62\r\n-----END PGP SIGNATURE-----\r\n" - }, - "homepage": "https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-schema-validation#readme", - "keywords": [ - "openapi", - "schema", - "validation" - ], - "license": "MIT", - "maintainers": [ - { - "name": "jsdevel", - "email": "js.developer.undefined@gmail.com" - }, - { - "name": "kogo", - "email": "bot@kogosoftwarellc.com" - } - ], - "name": "openapi-schema-validation", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", - "repository": { - "type": "git", - "url": "https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-schema-validation" - }, - "scripts": { - "cover": "istanbul cover _mocha -- ./test/*.js", - "test": "mocha ./test/*.js", - "test-watch": "mocha -w ./test/*.js ./test/**/*.js", - "travis-test": "npm run cover" - }, - "version": "0.4.2" -} diff --git a/forward_engineering/node_modules/openapi-schema-validation/schema/openapi-3.0.json b/forward_engineering/node_modules/openapi-schema-validation/schema/openapi-3.0.json deleted file mode 100644 index c15fc2e..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/schema/openapi-3.0.json +++ /dev/null @@ -1,1248 +0,0 @@ -{ - "title": "A JSON Schema for OpenAPI 3.0.", - "id": "http://openapis.org/v3/schema.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "description": "This is the root document object of the OpenAPI document.", - "required": [ - "openapi", - "info", - "paths" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "openapi": { - "type": "string" - }, - "info": { - "$ref": "#/definitions/info" - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - }, - "paths": { - "$ref": "#/definitions/paths" - }, - "components": { - "$ref": "#/definitions/components" - }, - "security": { - "type": "array", - "items": { - "$ref": "#/definitions/securityRequirement" - }, - "uniqueItems": true - }, - "tags": { - "type": "array", - "items": { - "$ref": "#/definitions/tag" - }, - "uniqueItems": true - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - }, - "definitions": { - "info": { - "type": "object", - "description": "The object provides metadata about the API. The metadata MAY be used by the clients if needed, and MAY be presented in editing or documentation generation tools for convenience.", - "required": [ - "title", - "version" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "title": { - "type": "string" - }, - "description": { - "type": "string" - }, - "termsOfService": { - "type": "string" - }, - "contact": { - "$ref": "#/definitions/contact" - }, - "license": { - "$ref": "#/definitions/license" - }, - "version": { - "type": "string" - } - } - }, - "contact": { - "type": "object", - "description": "Contact information for the exposed API.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "url": { - "type": "string" - }, - "email": { - "type": "string" - } - } - }, - "license": { - "type": "object", - "description": "License information for the exposed API.", - "required": [ - "name" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "server": { - "type": "object", - "description": "An object representing a Server.", - "required": [ - "url" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "url": { - "type": "string" - }, - "description": { - "type": "string" - }, - "variables": { - "$ref": "#/definitions/serverVariables" - } - } - }, - "serverVariable": { - "type": "object", - "description": "An object representing a Server Variable for server URL template substitution.", - "required": [ - "default" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "enum": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - }, - "default": { - "type": "string" - }, - "description": { - "type": "string" - } - } - }, - "components": { - "type": "object", - "description": "Holds a set of reusable objects for different aspects of the OAS. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "schemas": { - "$ref": "#/definitions/schemasOrReferences" - }, - "responses": { - "$ref": "#/definitions/responsesOrReferences" - }, - "parameters": { - "$ref": "#/definitions/parametersOrReferences" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "requestBodies": { - "$ref": "#/definitions/requestBodiesOrReferences" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "securitySchemes": { - "$ref": "#/definitions/securitySchemesOrReferences" - }, - "links": { - "$ref": "#/definitions/linksOrReferences" - }, - "callbacks": { - "$ref": "#/definitions/callbacksOrReferences" - } - } - }, - "paths": { - "type": "object", - "description": "Holds the relative paths to the individual endpoints and their operations. The path is appended to the URL from the `Server Object` in order to construct the full URL. The Paths MAY be empty, due to ACL constraints.", - "additionalProperties": false, - "patternProperties": { - "^/": { - "$ref": "#/definitions/pathItem" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - } - }, - "pathItem": { - "type": "object", - "description": "Describes the operations available on a single path. A Path Item MAY be empty, due to ACL constraints. The path itself is still exposed to the documentation viewer but they will not know which operations and parameters are available.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "$ref": { - "type": "string" - }, - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "get": { - "$ref": "#/definitions/operation" - }, - "put": { - "$ref": "#/definitions/operation" - }, - "post": { - "$ref": "#/definitions/operation" - }, - "delete": { - "$ref": "#/definitions/operation" - }, - "options": { - "$ref": "#/definitions/operation" - }, - "head": { - "$ref": "#/definitions/operation" - }, - "patch": { - "$ref": "#/definitions/operation" - }, - "trace": { - "$ref": "#/definitions/operation" - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - }, - "parameters": { - "type": "array", - "items": { - "$ref": "#/definitions/parameterOrReference" - }, - "uniqueItems": true - } - } - }, - "operation": { - "type": "object", - "description": "Describes a single API operation on a path.", - "required": [ - "responses" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - }, - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "operationId": { - "type": "string" - }, - "parameters": { - "type": "array", - "items": { - "$ref": "#/definitions/parameterOrReference" - }, - "uniqueItems": true - }, - "requestBody": { - "$ref": "#/definitions/requestBodyOrReference" - }, - "responses": { - "$ref": "#/definitions/responses" - }, - "callbacks": { - "$ref": "#/definitions/callbacksOrReferences" - }, - "deprecated": { - "type": "boolean" - }, - "security": { - "type": "array", - "items": { - "$ref": "#/definitions/securityRequirement" - }, - "uniqueItems": true - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - } - } - }, - "externalDocs": { - "type": "object", - "description": "Allows referencing an external resource for extended documentation.", - "required": [ - "url" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "parameter": { - "type": "object", - "description": "Describes a single operation parameter. A unique parameter is defined by a combination of a name and location.", - "required": [ - "name", - "in" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "in": { - "type": "string" - }, - "description": { - "type": "string" - }, - "required": { - "type": "boolean" - }, - "deprecated": { - "type": "boolean" - }, - "allowEmptyValue": { - "type": "boolean" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - }, - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - } - } - }, - "requestBody": { - "type": "object", - "description": "Describes a single request body.", - "required": [ - "content" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - }, - "required": { - "type": "boolean" - } - } - }, - "mediaType": { - "type": "object", - "description": "Each Media Type Object provides schema and examples for the media type identified by its key.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "encoding": { - "$ref": "#/definitions/encodings" - } - } - }, - "encoding": { - "type": "object", - "description": "A single encoding definition applied to a single schema property.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "contentType": { - "type": "string" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - } - } - }, - "responses": { - "type": "object", - "description": "A container for the expected responses of an operation. The container maps a HTTP response code to the expected response. The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known in advance. However, documentation is expected to cover a successful operation response and any known errors. The `default` MAY be used as a default response object for all HTTP codes that are not covered individually by the specification. The `Responses Object` MUST contain at least one response code, and it SHOULD be the response for a successful operation call.", - "additionalProperties": false, - "patternProperties": { - "^([0-9X]{3})$": { - "$ref": "#/definitions/responseOrReference" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "default": { - "$ref": "#/definitions/responseOrReference" - } - } - }, - "response": { - "type": "object", - "description": "Describes a single response from an API Operation, including design-time, static `links` to operations based on the response.", - "required": [ - "description" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - }, - "links": { - "$ref": "#/definitions/linksOrReferences" - } - } - }, - "callback": { - "type": "object", - "description": "A map of possible out-of band callbacks related to the parent operation. Each value in the map is a Path Item Object that describes a set of requests that may be initiated by the API provider and the expected responses. The key value used to identify the callback object is an expression, evaluated at runtime, that identifies a URL to use for the callback operation.", - "additionalProperties": false, - "patternProperties": { - "^": { - "$ref": "#/definitions/pathItem" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - } - }, - "example": { - "type": "object", - "description": "", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "value": { - "$ref": "#/definitions/any" - }, - "externalValue": { - "type": "string" - } - } - }, - "link": { - "type": "object", - "description": "The `Link object` represents a possible design-time link for a response. The presence of a link does not guarantee the caller's ability to successfully invoke it, rather it provides a known relationship and traversal mechanism between responses and other operations. Unlike _dynamic_ links (i.e. links provided **in** the response payload), the OAS linking mechanism does not require link information in the runtime response. For computing links, and providing instructions to execute them, a runtime expression is used for accessing values in an operation and using them as parameters while invoking the linked operation.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "operationRef": { - "type": "string" - }, - "operationId": { - "type": "string" - }, - "parameters": { - "$ref": "#/definitions/anysOrExpressions" - }, - "requestBody": { - "$ref": "#/definitions/anyOrExpression" - }, - "description": { - "type": "string" - }, - "server": { - "$ref": "#/definitions/server" - } - } - }, - "header": { - "type": "object", - "description": "The Header Object follows the structure of the Parameter Object with the following changes: 1. `name` MUST NOT be specified, it is given in the corresponding `headers` map. 1. `in` MUST NOT be specified, it is implicitly in `header`. 1. All traits that are affected by the location MUST be applicable to a location of `header` (for example, `style`).", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "required": { - "type": "boolean" - }, - "deprecated": { - "type": "boolean" - }, - "allowEmptyValue": { - "type": "boolean" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - }, - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - } - } - }, - "tag": { - "type": "object", - "description": "Adds metadata to a single tag that is used by the Operation Object. It is not mandatory to have a Tag Object per tag defined in the Operation Object instances.", - "required": [ - "name" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - } - }, - "examples": { - "type": "object", - "description": "", - "additionalProperties": false - }, - "reference": { - "type": "object", - "description": "A simple object to allow referencing other components in the specification, internally and externally. The Reference Object is defined by JSON Reference and follows the same structure, behavior and rules. For this specification, reference resolution is accomplished as defined by the JSON Reference specification and not by the JSON Schema specification.", - "required": [ - "$ref" - ], - "additionalProperties": false, - "properties": { - "$ref": { - "type": "string" - } - } - }, - "schema": { - "type": "object", - "description": "The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays. This object is an extended subset of the JSON Schema Specification Wright Draft 00. For more information about the properties, see JSON Schema Core and JSON Schema Validation. Unless stated otherwise, the property definitions follow the JSON Schema.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "nullable": { - "type": "boolean" - }, - "discriminator": { - "$ref": "#/definitions/discriminator" - }, - "readOnly": { - "type": "boolean" - }, - "writeOnly": { - "type": "boolean" - }, - "xml": { - "$ref": "#/definitions/xml" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "example": { - "$ref": "#/definitions/any" - }, - "deprecated": { - "type": "boolean" - }, - "title": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/title" - }, - "multipleOf": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf" - }, - "maximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum" - }, - "exclusiveMaximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" - }, - "minimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum" - }, - "exclusiveMinimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" - }, - "maxLength": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxLength" - }, - "minLength": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minLength" - }, - "pattern": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern" - }, - "maxItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxItems" - }, - "minItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minItems" - }, - "uniqueItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems" - }, - "maxProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxProperties" - }, - "minProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minProperties" - }, - "required": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/required" - }, - "enum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/enum" - }, - "type": { - "type": "string" - }, - "allOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "oneOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "anyOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "not": { - "$ref": "#/definitions/schema" - }, - "items": { - "anyOf": [ - { - "$ref": "#/definitions/schemaOrReference" - }, - { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - } - ] - }, - "properties": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schemaOrReference" - } - }, - "additionalProperties": { - "oneOf": [ - { - "$ref": "#/definitions/schemaOrReference" - }, - { - "type": "boolean" - } - ] - }, - "default": { - "$ref": "#/definitions/defaultType" - }, - "description": { - "type": "string" - }, - "format": { - "type": "string" - } - } - }, - "discriminator": { - "type": "object", - "description": "When request bodies or response payloads may be one of a number of different schemas, a `discriminator` object can be used to aid in serialization, deserialization, and validation. The discriminator is a specific object in a schema which is used to inform the consumer of the specification of an alternative schema based on the value associated with it. When using the discriminator, _inline_ schemas will not be considered.", - "required": [ - "propertyName" - ], - "additionalProperties": false, - "properties": { - "propertyName": { - "type": "string" - }, - "mapping": { - "$ref": "#/definitions/strings" - } - } - }, - "xml": { - "type": "object", - "description": "A metadata object that allows for more fine-tuned XML model definitions. When using arrays, XML element names are *not* inferred (for singular/plural forms) and the `name` property SHOULD be used to add that information. See examples for expected behavior.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "prefix": { - "type": "string" - }, - "attribute": { - "type": "boolean" - }, - "wrapped": { - "type": "boolean" - } - } - }, - "securityScheme": { - "type": "object", - "description": "Defines a security scheme that can be used by the operations. Supported schemes are HTTP authentication, an API key (either as a header or as a query parameter), OAuth2's common flows (implicit, password, application and access code) as defined in RFC6749, and OpenID Connect Discovery.", - "required": [ - "type" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "type": { - "type": "string" - }, - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "in": { - "type": "string" - }, - "scheme": { - "type": "string" - }, - "bearerFormat": { - "type": "string" - }, - "flows": { - "$ref": "#/definitions/oauthFlows" - }, - "openIdConnectUrl": { - "type": "string" - } - } - }, - "oauthFlows": { - "type": "object", - "description": "Allows configuration of the supported OAuth Flows.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "implicit": { - "$ref": "#/definitions/oauthFlow" - }, - "password": { - "$ref": "#/definitions/oauthFlow" - }, - "clientCredentials": { - "$ref": "#/definitions/oauthFlow" - }, - "authorizationCode": { - "$ref": "#/definitions/oauthFlow" - } - } - }, - "oauthFlow": { - "type": "object", - "description": "Configuration details for a supported OAuth Flow", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "authorizationUrl": { - "type": "string" - }, - "tokenUrl": { - "type": "string" - }, - "refreshUrl": { - "type": "string" - }, - "scopes": { - "$ref": "#/definitions/strings" - } - } - }, - "securityRequirement": { - "type": "object", - "description": "Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the Security Schemes under the Components Object. Security Requirement Objects that contain multiple schemes require that all schemes MUST be satisfied for a request to be authorized. This enables support for scenarios where multiple query parameters or HTTP headers are required to convey security information. When a list of Security Requirement Objects is defined on the Open API object or Operation Object, only one of Security Requirement Objects in the list needs to be satisfied to authorize the request.", - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9\\.\\-_]+$": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - } - } - }, - "anyOrExpression": { - "oneOf": [ - { - "$ref": "#/definitions/any" - }, - { - "$ref": "#/definitions/expression" - } - ] - }, - "callbackOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/callback" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "exampleOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/example" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "headerOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/header" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "linkOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/link" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "parameterOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/parameter" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "requestBodyOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/requestBody" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "responseOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/response" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "schemaOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/schema" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "securitySchemeOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/securityScheme" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "anysOrExpressions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/anyOrExpression" - } - }, - "callbacksOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/callbackOrReference" - } - }, - "encodings": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/encoding" - } - }, - "examplesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/exampleOrReference" - } - }, - "headersOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/headerOrReference" - } - }, - "linksOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/linkOrReference" - } - }, - "mediaTypes": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/mediaType" - } - }, - "parametersOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/parameterOrReference" - } - }, - "requestBodiesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/requestBodyOrReference" - } - }, - "responsesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/responseOrReference" - } - }, - "schemasOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schemaOrReference" - } - }, - "securitySchemesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/securitySchemeOrReference" - } - }, - "serverVariables": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/serverVariable" - } - }, - "strings": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "object": { - "type": "object", - "additionalProperties": true - }, - "any": { - "additionalProperties": true - }, - "expression": { - "type": "object", - "additionalProperties": true - }, - "specificationExtension": { - "description": "Any property starting with x- is valid.", - "oneOf": [ - { - "type": "null" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "string" - }, - { - "type": "object" - }, - { - "type": "array" - } - ] - }, - "defaultType": { - "oneOf": [ - { - "type": "null" - }, - { - "type": "array" - }, - { - "type": "object" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "string" - } - ] - } - } -} diff --git a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven.js b/forward_engineering/node_modules/openapi-schema-validation/test/data-driven.js deleted file mode 100644 index d1d414b..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven.js +++ /dev/null @@ -1,19 +0,0 @@ -var expect = require('chai').expect; -var glob = require('glob'); -var path = require('path'); -var baseDir = path.resolve(__dirname, 'data-driven'); -var sut = require('../'); - -describe(require('../package.json').name, function() { - describe('.validate()', function() { - glob.sync('*.js', {cwd: baseDir}).forEach(function(fixture) { - var testName = path.basename(fixture, '.js').replace(/-/g, ' '); - fixture = require(path.resolve(baseDir, fixture)); - it('should ' + testName, function() { - var errors = sut.validate(fixture.apiDoc, fixture.validator).errors; - expect(JSON.stringify(errors, null, ' ')) - .to.equal(JSON.stringify(fixture.errors, null, ' ')); - }); - }); - }); -}); diff --git a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v2-documents.js b/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v2-documents.js deleted file mode 100644 index 77caa8c..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v2-documents.js +++ /dev/null @@ -1,22 +0,0 @@ -module.exports = { - // it should default to 2 - validator: null, - apiDoc: { - swagger: '2.0', - info: { - title: 'Some valid API document', - version: '1.0.0' - }, - definitions: { - User: { - properties: { - name: { - type: 'string' - } - } - } - }, - paths: {} - }, - errors: [] -}; diff --git a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v3-documents.js b/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v3-documents.js deleted file mode 100644 index 7c97adb..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/accept-valid-v3-documents.js +++ /dev/null @@ -1,180 +0,0 @@ -module.exports = { - validator: 3, - apiDoc: { - "openapi": "3.0.0", - "info": { - "version": "1.0.0", - "title": "Swagger Petstore", - "license": { - "name": "MIT" - } - }, - "servers": [ - { - "url": "http://petstore.swagger.io/v1" - } - ], - "paths": { - "/pets": { - "get": { - "summary": "List all pets", - "operationId": "listPets", - "tags": [ - "pets" - ], - "parameters": [ - { - "name": "limit", - "in": "query", - "description": "How many items to return at one time (max 100)", - "required": false, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "An paged array of pets", - "headers": { - "x-next": { - "description": "A link to the next page of responses", - "schema": { - "type": "string" - } - } - }, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Pets" - } - } - } - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - }, - "post": { - "summary": "Create a pet", - "operationId": "createPets", - "tags": [ - "pets" - ], - "responses": { - "201": { - "description": "Null response" - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - } - }, - "/pets/{petId}": { - "get": { - "summary": "Info for a specific pet", - "operationId": "showPetById", - "tags": [ - "pets" - ], - "parameters": [ - { - "name": "petId", - "in": "path", - "required": true, - "description": "The id of the pet to retrieve", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Expected response to a valid request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Pets" - } - } - } - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "Pet": { - "required": [ - "id", - "name" - ], - "properties": { - "id": { - "type": "integer", - "format": "int64" - }, - "name": { - "type": "string" - }, - "tag": { - "type": "string" - } - } - }, - "Pets": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Pet" - } - }, - "Error": { - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - } - } - } - } - } - - }, - errors: [] -}; diff --git a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v2-documents.js b/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v2-documents.js deleted file mode 100644 index 0616ed2..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v2-documents.js +++ /dev/null @@ -1,27 +0,0 @@ -module.exports = { - validator: 2, - apiDoc: { - info: { - title: 'Some valid API document', - version: '1.0.0' - }, - paths: {} - }, - errors: [ - { - property: 'instance', - message: 'requires property "swagger"', - schema: 'http://swagger.io/v2/schema.json#', - instance: { - info: { - title: 'Some valid API document', - version: '1.0.0' - }, - paths: {} - }, - name: 'required', - argument: 'swagger', - stack: 'instance requires property "swagger"' - } - ] -}; diff --git a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v3-documents.js b/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v3-documents.js deleted file mode 100644 index 11a3f2c..0000000 --- a/forward_engineering/node_modules/openapi-schema-validation/test/data-driven/fail-invalid-v3-documents.js +++ /dev/null @@ -1,374 +0,0 @@ -module.exports = { - validator: 3, - apiDoc: { - "swagger": "3.0.0", - "info": { - "version": "1.0.0", - "title": "Swagger Petstore", - "license": { - "name": "MIT" - } - }, - "servers": [ - { - "url": "http://petstore.swagger.io/v1" - } - ], - "paths": { - "/pets": { - "get": { - "summary": "List all pets", - "operationId": "listPets", - "tags": [ - "pets" - ], - "parameters": [ - { - "name": "limit", - "in": "query", - "description": "How many items to return at one time (max 100)", - "required": false, - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "An paged array of pets", - "headers": { - "x-next": { - "description": "A link to the next page of responses", - "schema": { - "type": "string" - } - } - }, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Pets" - } - } - } - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - }, - "post": { - "summary": "Create a pet", - "operationId": "createPets", - "tags": [ - "pets" - ], - "responses": { - "201": { - "description": "Null response" - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - } - }, - "/pets/{petId}": { - "get": { - "summary": "Info for a specific pet", - "operationId": "showPetById", - "tags": [ - "pets" - ], - "parameters": [ - { - "name": "petId", - "in": "path", - "required": true, - "description": "The id of the pet to retrieve", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Expected response to a valid request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Pets" - } - } - } - }, - "default": { - "description": "unexpected error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "Pet": { - "required": [ - "id", - "name" - ], - "properties": { - "id": { - "type": "integer", - "format": "int64" - }, - "name": { - "type": "string" - }, - "tag": { - "type": "string" - } - } - }, - "Pets": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Pet" - } - }, - "Error": { - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - } - } - } - } - } - - }, - errors: [{ - "property": "instance", - "message": "requires property \"openapi\"", - "schema": "http://openapis.org/v3/schema.json#", - "instance": { - "swagger": "3.0.0", - "info": {"version": "1.0.0", "title": "Swagger Petstore", "license": {"name": "MIT"}}, - "servers": [{"url": "http://petstore.swagger.io/v1"}], - "paths": { - "/pets": { - "get": { - "summary": "List all pets", - "operationId": "listPets", - "tags": ["pets"], - "parameters": [{ - "name": "limit", - "in": "query", - "description": "How many items to return at one time (max 100)", - "required": false, - "schema": {"type": "integer", "format": "int32"} - }], - "responses": { - "200": { - "description": "An paged array of pets", - "headers": { - "x-next": { - "description": "A link to the next page of responses", - "schema": {"type": "string"} - } - }, - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Pets"}}} - }, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - }, - "post": { - "summary": "Create a pet", - "operationId": "createPets", - "tags": ["pets"], - "responses": { - "201": {"description": "Null response"}, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - } - }, - "/pets/{petId}": { - "get": { - "summary": "Info for a specific pet", - "operationId": "showPetById", - "tags": ["pets"], - "parameters": [{ - "name": "petId", - "in": "path", - "required": true, - "description": "The id of the pet to retrieve", - "schema": {"type": "string"} - }], - "responses": { - "200": { - "description": "Expected response to a valid request", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Pets"}}} - }, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - } - } - }, - "components": { - "schemas": { - "Pet": { - "required": ["id", "name"], - "properties": { - "id": {"type": "integer", "format": "int64"}, - "name": {"type": "string"}, - "tag": {"type": "string"} - } - }, - "Pets": {"type": "array", "items": {"$ref": "#/components/schemas/Pet"}}, - "Error": { - "required": ["code", "message"], - "properties": {"code": {"type": "integer", "format": "int32"}, "message": {"type": "string"}} - } - } - } - }, - "name": "required", - "argument": "openapi", - "stack": "instance requires property \"openapi\"" - }, { - "property": "instance", - "message": "additionalProperty \"swagger\" exists in instance when not allowed", - "schema": "http://openapis.org/v3/schema.json#", - "instance": { - "swagger": "3.0.0", - "info": {"version": "1.0.0", "title": "Swagger Petstore", "license": {"name": "MIT"}}, - "servers": [{"url": "http://petstore.swagger.io/v1"}], - "paths": { - "/pets": { - "get": { - "summary": "List all pets", - "operationId": "listPets", - "tags": ["pets"], - "parameters": [{ - "name": "limit", - "in": "query", - "description": "How many items to return at one time (max 100)", - "required": false, - "schema": {"type": "integer", "format": "int32"} - }], - "responses": { - "200": { - "description": "An paged array of pets", - "headers": { - "x-next": { - "description": "A link to the next page of responses", - "schema": {"type": "string"} - } - }, - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Pets"}}} - }, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - }, - "post": { - "summary": "Create a pet", - "operationId": "createPets", - "tags": ["pets"], - "responses": { - "201": {"description": "Null response"}, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - } - }, - "/pets/{petId}": { - "get": { - "summary": "Info for a specific pet", - "operationId": "showPetById", - "tags": ["pets"], - "parameters": [{ - "name": "petId", - "in": "path", - "required": true, - "description": "The id of the pet to retrieve", - "schema": {"type": "string"} - }], - "responses": { - "200": { - "description": "Expected response to a valid request", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Pets"}}} - }, - "default": { - "description": "unexpected error", - "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} - } - } - } - } - }, - "components": { - "schemas": { - "Pet": { - "required": ["id", "name"], - "properties": { - "id": {"type": "integer", "format": "int64"}, - "name": {"type": "string"}, - "tag": {"type": "string"} - } - }, - "Pets": {"type": "array", "items": {"$ref": "#/components/schemas/Pet"}}, - "Error": { - "required": ["code", "message"], - "properties": {"code": {"type": "integer", "format": "int32"}, "message": {"type": "string"}} - } - } - } - }, - "name": "additionalProperties", - "argument": "swagger", - "stack": "instance additionalProperty \"swagger\" exists in instance when not allowed" - }] -}; diff --git a/forward_engineering/node_modules/openapi-schema-validation/LICENSE b/forward_engineering/node_modules/openapi-schemas/LICENSE similarity index 96% rename from forward_engineering/node_modules/openapi-schema-validation/LICENSE rename to forward_engineering/node_modules/openapi-schemas/LICENSE index 306c5e9..0185ed2 100644 --- a/forward_engineering/node_modules/openapi-schema-validation/LICENSE +++ b/forward_engineering/node_modules/openapi-schemas/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 Kogo Software LLC +Copyright (c) 2019 James Messinger Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/forward_engineering/node_modules/openapi-schemas/README.md b/forward_engineering/node_modules/openapi-schemas/README.md new file mode 100644 index 0000000..7a7fd3b --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/README.md @@ -0,0 +1,105 @@ +# OpenAPI Specification Schemas + +[![Cross-Platform Compatibility](https://apitools.dev/img/badges/os-badges.svg)](https://travis-ci.com/APIDevTools/openapi-schemas) +[![Build Status](https://api.travis-ci.com/APIDevTools/openapi-schemas.svg?branch=master)](https://travis-ci.com/APIDevTools/openapi-schemas) + +[![Coverage Status](https://coveralls.io/repos/github/APIDevTools/openapi-schemas/badge.svg?branch=master)](https://coveralls.io/github/APIDevTools/openapi-schemas) +[![Dependencies](https://david-dm.org/APIDevTools/openapi-schemas.svg)](https://david-dm.org/APIDevTools/openapi-schemas) + +[![npm](https://img.shields.io/npm/v/openapi-schemas.svg)](https://www.npmjs.com/package/openapi-schemas) +[![License](https://img.shields.io/npm/l/openapi-schemas.svg)](LICENSE) + + + +This package contains [**the official JSON Schemas**](https://github.com/OAI/OpenAPI-Specification/tree/master/schemas) for every version of Swagger/OpenAPI Specification: + + - [Swagger 1.2](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/1.2.md) + - [Swagger 2.0](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md) + - [OpenAPI 3.0.x](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md) + +All schemas are kept up-to-date with the latest official definitions via an automated CI/CD job. 🤖📦 + + + +Installation +-------------------------- +You can install `openapi-schemas` via [npm](https://docs.npmjs.com/about-npm/). + +```bash +npm install openapi-schemas +``` + + + +Usage +-------------------------- + +The default export contains all OpenAPI Specification versions: + +```javascript +const openapi = require("openapi-schemas"); + +console.log(openapi.v1); // { $schema, id, properties, definitions, ... } +console.log(openapi.v2); // { $schema, id, properties, definitions, ... } +console.log(openapi.v3); // { $schema, id, properties, definitions, ... } +``` + +Or you can import the specific version(s) that you need: + +```javascript +const { openapiV1, openapiV2, openapiV3 } = require("openapi-schemas"); + +console.log(openapiV1); // { $schema, id, properties, definitions, ... } +console.log(openapiV2); // { $schema, id, properties, definitions, ... } +console.log(openapiV3); // { $schema, id, properties, definitions, ... } +``` + +You can use a JSON Schema validator such as [Z-Schema](https://www.npmjs.com/package/z-schema) or [AJV](https://www.npmjs.com/package/ajv) to validate OpenAPI definitions against the specification. + +```javascript +const { openapiV3 } = require("openapi-schemas"); +const ZSchema = require("z-schema"); + +// Create a ZSchema validator +let validator = new ZSchema(); + +// Validate an OpenAPI definition against the OpenAPI v3.0 specification +validator.validate(openapiDefinition, openapiV3); +``` + + + +Contributing +-------------------------- +Contributions, enhancements, and bug-fixes are welcome! [File an issue](https://github.com/APIDevTools/openapi-schemas/issues) on GitHub and [submit a pull request](https://github.com/APIDevTools/openapi-schemas/pulls). + +#### Building +To build the project locally on your computer: + +1. __Clone this repo__
+`git clone https://github.com/APIDevTools/openapi-schemas.git` + +2. __Install dependencies__
+`npm install` + +3. __Build the code__
+`npm run build` + +4. __Run the tests__
+`npm test` + + + +License +-------------------------- +openapi-schemas is 100% free and open-source, under the [MIT license](LICENSE). Use it however you want. + + + +Big Thanks To +-------------------------- +Thanks to these awesome companies for their support of Open Source developers ❤ + +[![Travis CI](https://apitools.dev/img/badges/travis-ci.svg)](https://travis-ci.com) +[![SauceLabs](https://apitools.dev/img/badges/sauce-labs.svg)](https://saucelabs.com) +[![Coveralls](https://apitools.dev/img/badges/coveralls.svg)](https://coveralls.io) diff --git a/forward_engineering/node_modules/openapi-schemas/lib/index.d.ts b/forward_engineering/node_modules/openapi-schemas/lib/index.d.ts new file mode 100644 index 0000000..af4a287 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/index.d.ts @@ -0,0 +1,23 @@ +import { JsonSchema } from "./json-schema"; +export { JsonSchema }; +/** + * JSON Schema for OpenAPI Specification v1.2 + */ +export declare const openapiV1: JsonSchema; +/** + * JSON Schema for OpenAPI Specification v2.0 + */ +export declare const openapiV2: JsonSchema; +/** + * JSON Schema for OpenAPI Specification v3.0 + */ +export declare const openapiV3: JsonSchema; +/** + * JSON Schemas for every version of the OpenAPI Specification + */ +export declare const openapi: { + v1: JsonSchema; + v2: JsonSchema; + v3: JsonSchema; +}; +export default openapi; diff --git a/forward_engineering/node_modules/openapi-schemas/lib/index.js b/forward_engineering/node_modules/openapi-schemas/lib/index.js new file mode 100644 index 0000000..c83b3da --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/index.js @@ -0,0 +1,30 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +/** + * JSON Schema for OpenAPI Specification v1.2 + */ +exports.openapiV1 = require("../schemas/v1.2/apiDeclaration.json"); +/** + * JSON Schema for OpenAPI Specification v2.0 + */ +exports.openapiV2 = require("../schemas/v2.0/schema.json"); +/** + * JSON Schema for OpenAPI Specification v3.0 + */ +exports.openapiV3 = require("../schemas/v3.0/schema.json"); +/** + * JSON Schemas for every version of the OpenAPI Specification + */ +exports.openapi = { + v1: exports.openapiV1, + v2: exports.openapiV2, + v3: exports.openapiV3, +}; +// Export `openapi` as the default export +// tslint:disable: no-default-export +exports.default = exports.openapi; +// CommonJS default export hack +if (typeof module === "object" && typeof module.exports === "object") { + module.exports = Object.assign(module.exports.default, module.exports); // tslint:disable-line: no-unsafe-any +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/lib/index.js.map b/forward_engineering/node_modules/openapi-schemas/lib/index.js.map new file mode 100644 index 0000000..de339d1 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAIA;;GAEG;AACU,QAAA,SAAS,GAAG,OAAO,CAAC,qCAAqC,CAAe,CAAC;AAEtF;;GAEG;AACU,QAAA,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAe,CAAC;AAE9E;;GAEG;AACU,QAAA,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAe,CAAC;AAE9E;;GAEG;AACU,QAAA,OAAO,GAAG;IACrB,EAAE,EAAE,iBAAS;IACb,EAAE,EAAE,iBAAS;IACb,EAAE,EAAE,iBAAS;CACd,CAAC;AAEF,yCAAyC;AACzC,oCAAoC;AACpC,kBAAe,eAAO,CAAC;AAEvB,+BAA+B;AAC/B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE;IACpE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,qCAAqC;CAC/G"} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/lib/json-schema.d.ts b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.d.ts new file mode 100644 index 0000000..49de757 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.d.ts @@ -0,0 +1,44 @@ +/** + * A JSON Schema 4.0 definition for an OpenAPI Specification + */ +export interface JsonSchema { + id?: string; + $schema?: string; + title?: string; + description?: string; + multipleOf?: number; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + maxLength?: number; + minLength?: number; + pattern?: string; + additionalItems?: boolean | JsonSchema; + items?: JsonSchema | JsonSchema[]; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxProperties?: number; + minProperties?: number; + required?: string[]; + additionalProperties?: boolean | JsonSchema; + definitions?: { + [name: string]: JsonSchema; + }; + properties?: { + [name: string]: JsonSchema; + }; + patternProperties?: { + [name: string]: JsonSchema; + }; + dependencies?: { + [name: string]: JsonSchema | string[]; + }; + enum?: string[]; + type?: string | string[]; + allOf?: JsonSchema[]; + anyOf?: JsonSchema[]; + oneOf?: JsonSchema[]; + not?: JsonSchema; +} diff --git a/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js new file mode 100644 index 0000000..2d8f98d --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=json-schema.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js.map b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js.map new file mode 100644 index 0000000..d826a14 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/lib/json-schema.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/package.json b/forward_engineering/node_modules/openapi-schemas/package.json new file mode 100644 index 0000000..24edd2c --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/package.json @@ -0,0 +1,101 @@ +{ + "_from": "openapi-schemas@^1.0.2", + "_id": "openapi-schemas@1.0.3", + "_inBundle": false, + "_integrity": "sha512-KtMWcK2VtOS+nD8RKSIyScJsj8JrmVWcIX7Kjx4xEHijFYuvMTDON8WfeKOgeSb4uNG6UsqLj5Na7nKbSav9RQ==", + "_location": "/openapi-schemas", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "openapi-schemas@^1.0.2", + "name": "openapi-schemas", + "escapedName": "openapi-schemas", + "rawSpec": "^1.0.2", + "saveSpec": null, + "fetchSpec": "^1.0.2" + }, + "_requiredBy": [ + "/swagger-parser" + ], + "_resolved": "https://registry.npmjs.org/openapi-schemas/-/openapi-schemas-1.0.3.tgz", + "_shasum": "0fa2f19e44ce8a1cdab9c9f616df4babe1aa026b", + "_spec": "openapi-schemas@^1.0.2", + "_where": "/home/taras/Dev/Hackolade/OpenApi-fork-3/OpenAPI/forward_engineering/node_modules/swagger-parser", + "author": { + "name": "James Messinger", + "url": "https://jamesmessinger.com" + }, + "bugs": { + "url": "https://github.com/APIDevTools/openapi-schemas/issues" + }, + "bundleDependencies": false, + "dependencies": {}, + "deprecated": false, + "description": "JSON Schemas for every version of the OpenAPI Specification", + "devDependencies": { + "@types/chai": "^4.2.4", + "@types/command-line-args": "^5.0.0", + "@types/mocha": "^5.2.7", + "@types/node": "^12.11.6", + "chai": "^4.2.0", + "coveralls": "^3.0.7", + "eslint": "^6.5.1", + "eslint-config-modular": "^7.0.1", + "mocha": "^6.2.2", + "npm-check": "^5.9.0", + "nyc": "^14.1.1", + "shx": "^0.3.2", + "tslint": "^5.20.0", + "tslint-modular": "^1.6.0", + "typescript": "^3.6.4", + "typescript-tslint-plugin": "^0.5.4", + "version-bump-prompt": "^5.0.5" + }, + "engines": { + "node": ">=8" + }, + "files": [ + "lib", + "schemas" + ], + "homepage": "https://apitools.dev/openapi-schemas", + "keywords": [ + "openapi", + "open-api", + "swagger", + "oas", + "api", + "rest", + "json", + "specification", + "definition", + "schema" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "openapi-schemas", + "repository": { + "type": "git", + "url": "git+https://github.com/APIDevTools/openapi-schemas.git" + }, + "scripts": { + "build": "npm run build:schemas && npm run build:typescript", + "build:schemas": "npm run clean && npm run clone && npm run copy", + "build:typescript": "tsc", + "bump": "bump --tag --push --all", + "clean": "shx rm -rf .nyc_output coverage lib .tmp schemas", + "clone": "git clone https://github.com/OAI/OpenAPI-Specification.git .tmp", + "copy": "shx cp -r .tmp/schemas schemas", + "coverage": "nyc node_modules/mocha/bin/mocha", + "lint": "npm run lint:typescript && npm run lint:javascript", + "lint:javascript": "eslint test", + "lint:typescript": "tslint -p tsconfig.json", + "release": "npm run upgrade && npm run clean && npm run build && npm test && npm run bump", + "test": "mocha && npm run lint", + "upgrade": "npm-check -u && npm audit fix", + "watch": "tsc --watch" + }, + "types": "lib/index.d.ts", + "version": "1.0.3" +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/README.md b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/README.md new file mode 100644 index 0000000..b443664 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/README.md @@ -0,0 +1,5 @@ +# Swagger Specification JSON Schemas + +The work on the JSON Schema for the Swagger Specification was donated to the community by [Francis Galiegue](https://github.com/fge)! + +Keep in mind that due to some JSON Schema limitations, not all constraints can be described. The missing constraints will be listed here in the future. diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/apiDeclaration.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/apiDeclaration.json new file mode 100644 index 0000000..4823b20 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/apiDeclaration.json @@ -0,0 +1,61 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/apiDeclaration.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "required": [ "swaggerVersion", "basePath", "apis" ], + "properties": { + "swaggerVersion": { "enum": [ "1.2" ] }, + "apiVersion": { "type": "string" }, + "basePath": { + "type": "string", + "format": "uri", + "pattern": "^https?://" + }, + "resourcePath": { + "type": "string", + "format": "uri", + "pattern": "^/" + }, + "apis": { + "type": "array", + "items": { "$ref": "#/definitions/apiObject" } + }, + "models": { + "type": "object", + "additionalProperties": { + "$ref": "modelsObject.json#" + } + }, + "produces": { "$ref": "#/definitions/mimeTypeArray" }, + "consumes": { "$ref": "#/definitions/mimeTypeArray" }, + "authorizations": { "$ref": "authorizationObject.json#" } + }, + "additionalProperties": false, + "definitions": { + "apiObject": { + "type": "object", + "required": [ "path", "operations" ], + "properties": { + "path": { + "type": "string", + "format": "uri-template", + "pattern": "^/" + }, + "description": { "type": "string" }, + "operations": { + "type": "array", + "items": { "$ref": "operationObject.json#" } + } + }, + "additionalProperties": false + }, + "mimeTypeArray": { + "type": "array", + "items": { + "type": "string", + "format": "mime-type" + }, + "uniqueItems": true + } + } +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/authorizationObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/authorizationObject.json new file mode 100644 index 0000000..8264970 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/authorizationObject.json @@ -0,0 +1,59 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/authorizationObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/basicAuth" + }, + { + "$ref": "#/definitions/apiKey" + }, + { + "$ref": "#/definitions/oauth2" + } + ] + }, + "definitions": { + "basicAuth": { + "required": [ "type" ], + "properties": { + "type": { "enum": [ "basicAuth" ] } + }, + "additionalProperties": false + }, + "apiKey": { + "required": [ "type", "passAs", "keyname" ], + "properties": { + "type": { "enum": [ "apiKey" ] }, + "passAs": { "enum": [ "header", "query" ] }, + "keyname": { "type": "string" } + }, + "additionalProperties": false + }, + "oauth2": { + "type": "object", + "required": [ "type", "grantTypes" ], + "properties": { + "type": { "enum": [ "oauth2" ] }, + "scopes": { + "type": "array", + "items": { "$ref": "#/definitions/oauth2Scope" } + }, + "grantTypes": { "$ref": "oauth2GrantType.json#" } + }, + "additionalProperties": false + }, + "oauth2Scope": { + "type": "object", + "required": [ "scope" ], + "properties": { + "scope": { "type": "string" }, + "description": { "type": "string" } + }, + "additionalProperties": false + } + } +} + diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataType.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataType.json new file mode 100644 index 0000000..3e58c3b --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataType.json @@ -0,0 +1,132 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/dataType.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Data type as described by the specification (version 1.2)", + "type": "object", + "oneOf": [ + { "$ref": "#/definitions/refType" }, + { "$ref": "#/definitions/voidType" }, + { "$ref": "#/definitions/primitiveType" }, + { "$ref": "#/definitions/modelType" }, + { "$ref": "#/definitions/arrayType" } + ], + "definitions": { + "refType": { + "required": [ "$ref" ], + "properties": { + "$ref": { "type": "string" } + }, + "additionalProperties": false + }, + "voidType": { + "enum": [ { "type": "void" } ] + }, + "modelType": { + "required": [ "type" ], + "properties": { + "type": { + "type": "string", + "not": { + "enum": [ "boolean", "integer", "number", "string", "array" ] + } + } + }, + "additionalProperties": false + }, + "primitiveType": { + "required": [ "type" ], + "properties": { + "type": { + "enum": [ "boolean", "integer", "number", "string" ] + }, + "format": { "type": "string" }, + "defaultValue": { + "not": { "type": [ "array", "object", "null" ] } + }, + "enum": { + "type": "array", + "items": { "type": "string" }, + "minItems": 1, + "uniqueItems": true + }, + "minimum": { "type": "string" }, + "maximum": { "type": "string" } + }, + "additionalProperties": false, + "dependencies": { + "format": { + "oneOf": [ + { + "properties": { + "type": { "enum": [ "integer" ] }, + "format": { "enum": [ "int32", "int64" ] } + } + }, + { + "properties": { + "type": { "enum": [ "number" ] }, + "format": { "enum": [ "float", "double" ] } + } + }, + { + "properties": { + "type": { "enum": [ "string" ] }, + "format": { + "enum": [ "byte", "date", "date-time" ] + } + } + } + ] + }, + "enum": { + "properties": { + "type": { "enum": [ "string" ] } + } + }, + "minimum": { + "properties": { + "type": { "enum": [ "integer", "number" ] } + } + }, + "maximum": { + "properties": { + "type": { "enum": [ "integer", "number" ] } + } + } + } + }, + "arrayType": { + "required": [ "type", "items" ], + "properties": { + "type": { "enum": [ "array" ] }, + "items": { + "type": "array", + "items": { "$ref": "#/definitions/itemsObject" } + }, + "uniqueItems": { "type": "boolean" } + }, + "additionalProperties": false + }, + "itemsObject": { + "oneOf": [ + { + "$ref": "#/definitions/refType" + }, + { + "allOf": [ + { + "$ref": "#/definitions/primitiveType" + }, + { + "properties": { + "type": {}, + "format": {} + }, + "additionalProperties": false + } + ] + } + ] + } + } +} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataTypeBase.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataTypeBase.json new file mode 100644 index 0000000..8320d6c --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/dataTypeBase.json @@ -0,0 +1,81 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/dataTypeBase.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Data type fields (section 4.3.3)", + "type": "object", + "oneOf": [ + { "required": [ "type" ] }, + { "required": [ "$ref" ] } + ], + "properties": { + "type": { "type": "string" }, + "$ref": { "type": "string" }, + "format": { "type": "string" }, + "defaultValue": { + "not": { "type": [ "array", "object", "null" ] } + }, + "enum": { + "type": "array", + "items": { "type": "string" }, + "uniqueItems": true, + "minItems": 1 + }, + "minimum": { "type": "string" }, + "maximum": { "type": "string" }, + "items": { "$ref": "#/definitions/itemsObject" }, + "uniqueItems": { "type": "boolean" } + }, + "dependencies": { + "format": { + "oneOf": [ + { + "properties": { + "type": { "enum": [ "integer" ] }, + "format": { "enum": [ "int32", "int64" ] } + } + }, + { + "properties": { + "type": { "enum": [ "number" ] }, + "format": { "enum": [ "float", "double" ] } + } + }, + { + "properties": { + "type": { "enum": [ "string" ] }, + "format": { + "enum": [ "byte", "date", "date-time" ] + } + } + } + ] + } + }, + "definitions": { + "itemsObject": { + "oneOf": [ + { + "type": "object", + "required": [ "$ref" ], + "properties": { + "$ref": { "type": "string" } + }, + "additionalProperties": false + }, + { + "allOf": [ + { "$ref": "#" }, + { + "required": [ "type" ], + "properties": { + "type": {}, + "format": {} + }, + "additionalProperties": false + } + ] + } + ] + } + } +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/infoObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/infoObject.json new file mode 100644 index 0000000..f8819fe --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/infoObject.json @@ -0,0 +1,16 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/infoObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "info object (section 5.1.3)", + "type": "object", + "required": [ "title", "description" ], + "properties": { + "title": { "type": "string" }, + "description": { "type": "string" }, + "termsOfServiceUrl": { "type": "string", "format": "uri" }, + "contact": { "type": "string", "format": "email" }, + "license": { "type": "string" }, + "licenseUrl": { "type": "string", "format": "uri" } + }, + "additionalProperties": false +} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/modelsObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/modelsObject.json new file mode 100644 index 0000000..f591b39 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/modelsObject.json @@ -0,0 +1,36 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/modelsObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "required": [ "id", "properties" ], + "properties": { + "id": { "type": "string" }, + "description": { "type": "string" }, + "properties": { + "type": "object", + "additionalProperties": { "$ref": "#/definitions/propertyObject" } + }, + "subTypes": { + "type": "array", + "items": { "type": "string" }, + "uniqueItems": true + }, + "discriminator": { "type": "string" } + }, + "dependencies": { + "subTypes": [ "discriminator" ] + }, + "definitions": { + "propertyObject": { + "allOf": [ + { + "not": { "$ref": "#" } + }, + { + "$ref": "dataTypeBase.json#" + } + ] + } + } +} + diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/oauth2GrantType.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/oauth2GrantType.json new file mode 100644 index 0000000..c9bac6c --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/oauth2GrantType.json @@ -0,0 +1,57 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/oauth2GrantType.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "minProperties": 1, + "properties": { + "implicit": { "$ref": "#/definitions/implicit" }, + "authorization_code": { "$ref": "#/definitions/authorizationCode" } + }, + "definitions": { + "implicit": { + "type": "object", + "required": [ "loginEndpoint" ], + "properties": { + "loginEndpoint": { "$ref": "#/definitions/loginEndpoint" }, + "tokenName": { "type": "string" } + }, + "additionalProperties": false + }, + "authorizationCode": { + "type": "object", + "required": [ "tokenEndpoint", "tokenRequestEndpoint" ], + "properties": { + "tokenEndpoint": { "$ref": "#/definitions/tokenEndpoint" }, + "tokenRequestEndpoint": { "$ref": "#/definitions/tokenRequestEndpoint" } + }, + "additionalProperties": false + }, + "loginEndpoint": { + "type": "object", + "required": [ "url" ], + "properties": { + "url": { "type": "string", "format": "uri" } + }, + "additionalProperties": false + }, + "tokenEndpoint": { + "type": "object", + "required": [ "url" ], + "properties": { + "url": { "type": "string", "format": "uri" }, + "tokenName": { "type": "string" } + }, + "additionalProperties": false + }, + "tokenRequestEndpoint": { + "type": "object", + "required": [ "url" ], + "properties": { + "url": { "type": "string", "format": "uri" }, + "clientIdName": { "type": "string" }, + "clientSecretName": { "type": "string" } + }, + "additionalProperties": false + } + } +} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/operationObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/operationObject.json new file mode 100644 index 0000000..371a6cc --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/operationObject.json @@ -0,0 +1,65 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/operationObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "allOf": [ + { "$ref": "dataTypeBase.json#" }, + { + "required": [ "method", "nickname", "parameters" ], + "properties": { + "method": { "enum": [ "GET", "HEAD", "POST", "PUT", "PATCH", "DELETE", "OPTIONS" ] }, + "summary": { "type": "string", "maxLength": 120 }, + "notes": { "type": "string" }, + "nickname": { + "type": "string", + "pattern": "^[a-zA-Z0-9_]+$" + }, + "authorizations": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "authorizationObject.json#/definitions/oauth2Scope" + } + } + }, + "parameters": { + "type": "array", + "items": { "$ref": "parameterObject.json#" } + }, + "responseMessages": { + "type": "array", + "items": { "$ref": "#/definitions/responseMessageObject"} + }, + "produces": { "$ref": "#/definitions/mimeTypeArray" }, + "consumes": { "$ref": "#/definitions/mimeTypeArray" }, + "deprecated": { "enum": [ "true", "false" ] } + } + } + ], + "definitions": { + "responseMessageObject": { + "type": "object", + "required": [ "code", "message" ], + "properties": { + "code": { "$ref": "#/definitions/rfc2616section10" }, + "message": { "type": "string" }, + "responseModel": { "type": "string" } + } + }, + "rfc2616section10": { + "type": "integer", + "minimum": 100, + "maximum": 600, + "exclusiveMaximum": true + }, + "mimeTypeArray": { + "type": "array", + "items": { + "type": "string", + "format": "mime-type" + }, + "uniqueItems": true + } + } +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/parameterObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/parameterObject.json new file mode 100644 index 0000000..d762eff --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/parameterObject.json @@ -0,0 +1,37 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/parameterObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "allOf": [ + { "$ref": "dataTypeBase.json#" }, + { + "required": [ "paramType", "name" ], + "properties": { + "paramType": { + "enum": [ "path", "query", "body", "header", "form" ] + }, + "name": { "type": "string" }, + "description": { "type": "string" }, + "required": { "type": "boolean" }, + "allowMultiple": { "type": "boolean" } + } + }, + { + "description": "type File requires special paramType and consumes", + "oneOf": [ + { + "properties": { + "type": { "not": { "enum": [ "File" ] } } + } + }, + { + "properties": { + "type": { "enum": [ "File" ] }, + "paramType": { "enum": [ "form" ] }, + "consumes": { "enum": [ "multipart/form-data" ] } + } + } + ] + } + ] +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceListing.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceListing.json new file mode 100644 index 0000000..b5dd17d --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceListing.json @@ -0,0 +1,16 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/resourceListing.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "required": [ "swaggerVersion", "apis" ], + "properties": { + "swaggerVersion": { "enum": [ "1.2" ] }, + "apis": { + "type": "array", + "items": { "$ref": "resourceObject.json#" } + }, + "apiVersion": { "type": "string" }, + "info": { "$ref": "infoObject.json#" }, + "authorizations": { "$ref": "authorizationObject.json#" } + } +} diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceObject.json b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceObject.json new file mode 100644 index 0000000..a88e83f --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v1.2/resourceObject.json @@ -0,0 +1,11 @@ +{ + "id": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/schemas/v1.2/resourceObject.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "type": "object", + "required": [ "path" ], + "properties": { + "path": { "type": "string", "format": "uri" }, + "description": { "type": "string" } + }, + "additionalProperties": false +} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v2.0/README.md b/forward_engineering/node_modules/openapi-schemas/schemas/v2.0/README.md new file mode 100644 index 0000000..47b0c8e --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v2.0/README.md @@ -0,0 +1,13 @@ +# OpenAPI Specification v2.0 JSON Schema + +This is the JSON Schema file for the OpenAPI Specification version 2.0. Download and install it via NPM. + +## Install via NPM + +```shell +npm install --save swagger-schema-official +``` + +## License + +Apache-2.0 diff --git a/forward_engineering/node_modules/swagger-schema-official/schema.json b/forward_engineering/node_modules/openapi-schemas/schemas/v2.0/schema.json similarity index 99% rename from forward_engineering/node_modules/swagger-schema-official/schema.json rename to forward_engineering/node_modules/openapi-schemas/schemas/v2.0/schema.json index e63aef6..a92e18f 100644 --- a/forward_engineering/node_modules/swagger-schema-official/schema.json +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v2.0/schema.json @@ -40,11 +40,19 @@ }, "consumes": { "description": "A list of MIME types accepted by the API.", - "$ref": "#/definitions/mediaTypeList" + "allOf": [ + { + "$ref": "#/definitions/mediaTypeList" + } + ] }, "produces": { "description": "A list of MIME types the API can produce.", - "$ref": "#/definitions/mediaTypeList" + "allOf": [ + { + "$ref": "#/definitions/mediaTypeList" + } + ] }, "paths": { "$ref": "#/definitions/paths" @@ -195,7 +203,7 @@ "additionalProperties": { "$ref": "#/definitions/response" }, - "description": "One or more JSON representations for parameters" + "description": "One or more JSON representations for responses" }, "externalDocs": { "type": "object", @@ -263,11 +271,19 @@ }, "produces": { "description": "A list of MIME types the API can produce.", - "$ref": "#/definitions/mediaTypeList" + "allOf": [ + { + "$ref": "#/definitions/mediaTypeList" + } + ] }, "consumes": { "description": "A list of MIME types the API can consume.", - "$ref": "#/definitions/mediaTypeList" + "allOf": [ + { + "$ref": "#/definitions/mediaTypeList" + } + ] }, "parameters": { "$ref": "#/definitions/parametersList" diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/README.md b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/README.md new file mode 100644 index 0000000..8495627 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/README.md @@ -0,0 +1,16 @@ +OpenAPI 3.0.X JSON Schema +--- + +Here you can find the JSON Schema for validating OpenAPI definitions of versions 3.0.X. + +As a reminder, the JSON Schema is not the source of truth for the Specification. In cases of conflicts between the Specification itself and the JSON Schema, the Specification wins. Also, some Specification constraints cannot be represented with the JSON Schema so it's highly recommended to employ other methods to ensure compliance. + +The iteration version of the JSON Schema can be found in the `id` field. For example, the value of `id: https://spec.openapis.org/oas/3.0/schema/2019-04-02` means this iteration was created on April 2nd, 2019. + +To submit improvements to the schema, modify the schema.yaml file only. + +The TSC will then: +- Run tests on the updated schema +- Update the iteration version +- Convert the schema.yaml to schema.json +- Publish the new version diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.json b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.json new file mode 100644 index 0000000..7180840 --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.json @@ -0,0 +1,1654 @@ +{ + "id": "https://spec.openapis.org/oas/3.0/schema/2019-04-02", + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Validation schema for OpenAPI Specification 3.0.X.", + "type": "object", + "required": [ + "openapi", + "info", + "paths" + ], + "properties": { + "openapi": { + "type": "string", + "pattern": "^3\\.0\\.\\d(-.+)?$" + }, + "info": { + "$ref": "#/definitions/Info" + }, + "externalDocs": { + "$ref": "#/definitions/ExternalDocumentation" + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + } + }, + "security": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRequirement" + } + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "uniqueItems": true + }, + "paths": { + "$ref": "#/definitions/Paths" + }, + "components": { + "$ref": "#/definitions/Components" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "definitions": { + "Reference": { + "type": "object", + "required": [ + "$ref" + ], + "patternProperties": { + "^\\$ref$": { + "type": "string", + "format": "uri-reference" + } + } + }, + "Info": { + "type": "object", + "required": [ + "title", + "version" + ], + "properties": { + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "termsOfService": { + "type": "string", + "format": "uri-reference" + }, + "contact": { + "$ref": "#/definitions/Contact" + }, + "license": { + "$ref": "#/definitions/License" + }, + "version": { + "type": "string" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Contact": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri-reference" + }, + "email": { + "type": "string", + "format": "email" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "License": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri-reference" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Server": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "variables": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ServerVariable" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "ServerVariable": { + "type": "object", + "required": [ + "default" + ], + "properties": { + "enum": { + "type": "array", + "items": { + "type": "string" + } + }, + "default": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Components": { + "type": "object", + "properties": { + "schemas": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + } + }, + "responses": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Response" + } + ] + } + } + }, + "parameters": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Parameter" + } + ] + } + } + }, + "examples": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Example" + } + ] + } + } + }, + "requestBodies": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/RequestBody" + } + ] + } + } + }, + "headers": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Header" + } + ] + } + } + }, + "securitySchemes": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/SecurityScheme" + } + ] + } + } + }, + "links": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Link" + } + ] + } + } + }, + "callbacks": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/Callback" + } + ] + } + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Schema": { + "type": "object", + "properties": { + "title": { + "type": "string" + }, + "multipleOf": { + "type": "number", + "minimum": 0, + "exclusiveMinimum": true + }, + "maximum": { + "type": "number" + }, + "exclusiveMaximum": { + "type": "boolean", + "default": false + }, + "minimum": { + "type": "number" + }, + "exclusiveMinimum": { + "type": "boolean", + "default": false + }, + "maxLength": { + "type": "integer", + "minimum": 0 + }, + "minLength": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "pattern": { + "type": "string", + "format": "regex" + }, + "maxItems": { + "type": "integer", + "minimum": 0 + }, + "minItems": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "uniqueItems": { + "type": "boolean", + "default": false + }, + "maxProperties": { + "type": "integer", + "minimum": 0 + }, + "minProperties": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "required": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + }, + "enum": { + "type": "array", + "items": { + }, + "minItems": 1, + "uniqueItems": false + }, + "type": { + "type": "string", + "enum": [ + "array", + "boolean", + "integer", + "number", + "object", + "string" + ] + }, + "not": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "allOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "oneOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "anyOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "properties": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + }, + { + "type": "boolean" + } + ], + "default": true + }, + "description": { + "type": "string" + }, + "format": { + "type": "string" + }, + "default": { + }, + "nullable": { + "type": "boolean", + "default": false + }, + "discriminator": { + "$ref": "#/definitions/Discriminator" + }, + "readOnly": { + "type": "boolean", + "default": false + }, + "writeOnly": { + "type": "boolean", + "default": false + }, + "example": { + }, + "externalDocs": { + "$ref": "#/definitions/ExternalDocumentation" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "xml": { + "$ref": "#/definitions/XML" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Discriminator": { + "type": "object", + "required": [ + "propertyName" + ], + "properties": { + "propertyName": { + "type": "string" + }, + "mapping": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "XML": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string", + "format": "uri" + }, + "prefix": { + "type": "string" + }, + "attribute": { + "type": "boolean", + "default": false + }, + "wrapped": { + "type": "boolean", + "default": false + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Response": { + "type": "object", + "required": [ + "description" + ], + "properties": { + "description": { + "type": "string" + }, + "headers": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Header" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "content": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MediaType" + } + }, + "links": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Link" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "MediaType": { + "type": "object", + "properties": { + "schema": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "example": { + }, + "examples": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Example" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "encoding": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Encoding" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "allOf": [ + { + "$ref": "#/definitions/ExampleXORExamples" + } + ] + }, + "Example": { + "type": "object", + "properties": { + "summary": { + "type": "string" + }, + "description": { + "type": "string" + }, + "value": { + }, + "externalValue": { + "type": "string", + "format": "uri-reference" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Header": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "required": { + "type": "boolean", + "default": false + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "allowEmptyValue": { + "type": "boolean", + "default": false + }, + "style": { + "type": "string", + "enum": [ + "simple" + ], + "default": "simple" + }, + "explode": { + "type": "boolean" + }, + "allowReserved": { + "type": "boolean", + "default": false + }, + "schema": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "content": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MediaType" + }, + "minProperties": 1, + "maxProperties": 1 + }, + "example": { + }, + "examples": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Example" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "allOf": [ + { + "$ref": "#/definitions/ExampleXORExamples" + }, + { + "$ref": "#/definitions/SchemaXORContent" + } + ] + }, + "Paths": { + "type": "object", + "patternProperties": { + "^\\/": { + "$ref": "#/definitions/PathItem" + }, + "^x-": { + } + }, + "additionalProperties": false + }, + "PathItem": { + "type": "object", + "properties": { + "$ref": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "description": { + "type": "string" + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + } + }, + "parameters": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Parameter" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "uniqueItems": true + } + }, + "patternProperties": { + "^(get|put|post|delete|options|head|patch|trace)$": { + "$ref": "#/definitions/Operation" + }, + "^x-": { + } + }, + "additionalProperties": false + }, + "Operation": { + "type": "object", + "required": [ + "responses" + ], + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "summary": { + "type": "string" + }, + "description": { + "type": "string" + }, + "externalDocs": { + "$ref": "#/definitions/ExternalDocumentation" + }, + "operationId": { + "type": "string" + }, + "parameters": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Parameter" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "uniqueItems": true + }, + "requestBody": { + "oneOf": [ + { + "$ref": "#/definitions/RequestBody" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "responses": { + "$ref": "#/definitions/Responses" + }, + "callbacks": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Callback" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "security": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRequirement" + } + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/Server" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Responses": { + "type": "object", + "properties": { + "default": { + "oneOf": [ + { + "$ref": "#/definitions/Response" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + }, + "patternProperties": { + "^[1-5](?:\\d{2}|XX)$": { + "oneOf": [ + { + "$ref": "#/definitions/Response" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "^x-": { + } + }, + "minProperties": 1, + "additionalProperties": false + }, + "SecurityRequirement": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "Tag": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "externalDocs": { + "$ref": "#/definitions/ExternalDocumentation" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "ExternalDocumentation": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "description": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri-reference" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "ExampleXORExamples": { + "description": "Example and examples are mutually exclusive", + "not": { + "required": [ + "example", + "examples" + ] + } + }, + "SchemaXORContent": { + "description": "Schema and content are mutually exclusive, at least one is required", + "not": { + "required": [ + "schema", + "content" + ] + }, + "oneOf": [ + { + "required": [ + "schema" + ] + }, + { + "required": [ + "content" + ], + "description": "Some properties are not allowed if content is present", + "allOf": [ + { + "not": { + "required": [ + "style" + ] + } + }, + { + "not": { + "required": [ + "explode" + ] + } + }, + { + "not": { + "required": [ + "allowReserved" + ] + } + }, + { + "not": { + "required": [ + "example" + ] + } + }, + { + "not": { + "required": [ + "examples" + ] + } + } + ] + } + ] + }, + "Parameter": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "in": { + "type": "string" + }, + "description": { + "type": "string" + }, + "required": { + "type": "boolean", + "default": false + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "allowEmptyValue": { + "type": "boolean", + "default": false + }, + "style": { + "type": "string" + }, + "explode": { + "type": "boolean" + }, + "allowReserved": { + "type": "boolean", + "default": false + }, + "schema": { + "oneOf": [ + { + "$ref": "#/definitions/Schema" + }, + { + "$ref": "#/definitions/Reference" + } + ] + }, + "content": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MediaType" + }, + "minProperties": 1, + "maxProperties": 1 + }, + "example": { + }, + "examples": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Example" + }, + { + "$ref": "#/definitions/Reference" + } + ] + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "required": [ + "name", + "in" + ], + "allOf": [ + { + "$ref": "#/definitions/ExampleXORExamples" + }, + { + "$ref": "#/definitions/SchemaXORContent" + }, + { + "$ref": "#/definitions/ParameterLocation" + } + ] + }, + "ParameterLocation": { + "description": "Parameter location", + "oneOf": [ + { + "description": "Parameter in path", + "required": [ + "required" + ], + "properties": { + "in": { + "enum": [ + "path" + ] + }, + "style": { + "enum": [ + "matrix", + "label", + "simple" + ], + "default": "simple" + }, + "required": { + "enum": [ + true + ] + } + } + }, + { + "description": "Parameter in query", + "properties": { + "in": { + "enum": [ + "query" + ] + }, + "style": { + "enum": [ + "form", + "spaceDelimited", + "pipeDelimited", + "deepObject" + ], + "default": "form" + } + } + }, + { + "description": "Parameter in header", + "properties": { + "in": { + "enum": [ + "header" + ] + }, + "style": { + "enum": [ + "simple" + ], + "default": "simple" + } + } + }, + { + "description": "Parameter in cookie", + "properties": { + "in": { + "enum": [ + "cookie" + ] + }, + "style": { + "enum": [ + "form" + ], + "default": "form" + } + } + } + ] + }, + "RequestBody": { + "type": "object", + "required": [ + "content" + ], + "properties": { + "description": { + "type": "string" + }, + "content": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MediaType" + } + }, + "required": { + "type": "boolean", + "default": false + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "SecurityScheme": { + "oneOf": [ + { + "$ref": "#/definitions/APIKeySecurityScheme" + }, + { + "$ref": "#/definitions/HTTPSecurityScheme" + }, + { + "$ref": "#/definitions/OAuth2SecurityScheme" + }, + { + "$ref": "#/definitions/OpenIdConnectSecurityScheme" + } + ] + }, + "APIKeySecurityScheme": { + "type": "object", + "required": [ + "type", + "name", + "in" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "apiKey" + ] + }, + "name": { + "type": "string" + }, + "in": { + "type": "string", + "enum": [ + "header", + "query", + "cookie" + ] + }, + "description": { + "type": "string" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "HTTPSecurityScheme": { + "type": "object", + "required": [ + "scheme", + "type" + ], + "properties": { + "scheme": { + "type": "string" + }, + "bearerFormat": { + "type": "string" + }, + "description": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "http" + ] + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "oneOf": [ + { + "description": "Bearer", + "properties": { + "scheme": { + "enum": [ + "bearer" + ] + } + } + }, + { + "description": "Non Bearer", + "not": { + "required": [ + "bearerFormat" + ] + }, + "properties": { + "scheme": { + "not": { + "enum": [ + "bearer" + ] + } + } + } + } + ] + }, + "OAuth2SecurityScheme": { + "type": "object", + "required": [ + "type", + "flows" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "oauth2" + ] + }, + "flows": { + "$ref": "#/definitions/OAuthFlows" + }, + "description": { + "type": "string" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "OpenIdConnectSecurityScheme": { + "type": "object", + "required": [ + "type", + "openIdConnectUrl" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "openIdConnect" + ] + }, + "openIdConnectUrl": { + "type": "string", + "format": "uri-reference" + }, + "description": { + "type": "string" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "OAuthFlows": { + "type": "object", + "properties": { + "implicit": { + "$ref": "#/definitions/ImplicitOAuthFlow" + }, + "password": { + "$ref": "#/definitions/PasswordOAuthFlow" + }, + "clientCredentials": { + "$ref": "#/definitions/ClientCredentialsFlow" + }, + "authorizationCode": { + "$ref": "#/definitions/AuthorizationCodeOAuthFlow" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "ImplicitOAuthFlow": { + "type": "object", + "required": [ + "authorizationUrl", + "scopes" + ], + "properties": { + "authorizationUrl": { + "type": "string", + "format": "uri-reference" + }, + "refreshUrl": { + "type": "string", + "format": "uri-reference" + }, + "scopes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "PasswordOAuthFlow": { + "type": "object", + "required": [ + "tokenUrl" + ], + "properties": { + "tokenUrl": { + "type": "string", + "format": "uri-reference" + }, + "refreshUrl": { + "type": "string", + "format": "uri-reference" + }, + "scopes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "ClientCredentialsFlow": { + "type": "object", + "required": [ + "tokenUrl" + ], + "properties": { + "tokenUrl": { + "type": "string", + "format": "uri-reference" + }, + "refreshUrl": { + "type": "string", + "format": "uri-reference" + }, + "scopes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "AuthorizationCodeOAuthFlow": { + "type": "object", + "required": [ + "authorizationUrl", + "tokenUrl" + ], + "properties": { + "authorizationUrl": { + "type": "string", + "format": "uri-reference" + }, + "tokenUrl": { + "type": "string", + "format": "uri-reference" + }, + "refreshUrl": { + "type": "string", + "format": "uri-reference" + }, + "scopes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false + }, + "Link": { + "type": "object", + "properties": { + "operationId": { + "type": "string" + }, + "operationRef": { + "type": "string", + "format": "uri-reference" + }, + "parameters": { + "type": "object", + "additionalProperties": { + } + }, + "requestBody": { + }, + "description": { + "type": "string" + }, + "server": { + "$ref": "#/definitions/Server" + } + }, + "patternProperties": { + "^x-": { + } + }, + "additionalProperties": false, + "not": { + "description": "Operation Id and Operation Ref are mutually exclusive", + "required": [ + "operationId", + "operationRef" + ] + } + }, + "Callback": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/PathItem" + }, + "patternProperties": { + "^x-": { + } + } + }, + "Encoding": { + "type": "object", + "properties": { + "contentType": { + "type": "string" + }, + "headers": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Header" + } + }, + "style": { + "type": "string", + "enum": [ + "form", + "spaceDelimited", + "pipeDelimited", + "deepObject" + ] + }, + "explode": { + "type": "boolean" + }, + "allowReserved": { + "type": "boolean", + "default": false + } + }, + "additionalProperties": false + } + } +} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.yaml b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.yaml new file mode 100644 index 0000000..13e47ff --- /dev/null +++ b/forward_engineering/node_modules/openapi-schemas/schemas/v3.0/schema.yaml @@ -0,0 +1,1003 @@ +id: https://spec.openapis.org/oas/3.0/schema/2019-04-02 +$schema: http://json-schema.org/draft-04/schema# +description: Validation schema for OpenAPI Specification 3.0.X. +type: object +required: + - openapi + - info + - paths +properties: + openapi: + type: string + pattern: ^3\.0\.\d(-.+)?$ + info: + $ref: '#/definitions/Info' + externalDocs: + $ref: '#/definitions/ExternalDocumentation' + servers: + type: array + items: + $ref: '#/definitions/Server' + security: + type: array + items: + $ref: '#/definitions/SecurityRequirement' + tags: + type: array + items: + $ref: '#/definitions/Tag' + uniqueItems: true + paths: + $ref: '#/definitions/Paths' + components: + $ref: '#/definitions/Components' +patternProperties: + '^x-': {} +additionalProperties: false +definitions: + Reference: + type: object + required: + - $ref + patternProperties: + '^\$ref$': + type: string + format: uri-reference + Info: + type: object + required: + - title + - version + properties: + title: + type: string + description: + type: string + termsOfService: + type: string + format: uri-reference + contact: + $ref: '#/definitions/Contact' + license: + $ref: '#/definitions/License' + version: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + + Contact: + type: object + properties: + name: + type: string + url: + type: string + format: uri-reference + email: + type: string + format: email + patternProperties: + '^x-': {} + additionalProperties: false + + License: + type: object + required: + - name + properties: + name: + type: string + url: + type: string + format: uri-reference + patternProperties: + '^x-': {} + additionalProperties: false + + Server: + type: object + required: + - url + properties: + url: + type: string + description: + type: string + variables: + type: object + additionalProperties: + $ref: '#/definitions/ServerVariable' + patternProperties: + '^x-': {} + additionalProperties: false + + ServerVariable: + type: object + required: + - default + properties: + enum: + type: array + items: + type: string + default: + type: string + description: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + Components: + type: object + properties: + schemas: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + responses: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Response' + parameters: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Parameter' + examples: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Example' + requestBodies: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/RequestBody' + headers: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Header' + securitySchemes: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/SecurityScheme' + links: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Link' + callbacks: + type: object + patternProperties: + '^[a-zA-Z0-9\.\-_]+$': + oneOf: + - $ref: '#/definitions/Reference' + - $ref: '#/definitions/Callback' + patternProperties: + '^x-': {} + additionalProperties: false + + Schema: + type: object + properties: + title: + type: string + multipleOf: + type: number + minimum: 0 + exclusiveMinimum: true + maximum: + type: number + exclusiveMaximum: + type: boolean + default: false + minimum: + type: number + exclusiveMinimum: + type: boolean + default: false + maxLength: + type: integer + minimum: 0 + minLength: + type: integer + minimum: 0 + default: 0 + pattern: + type: string + format: regex + maxItems: + type: integer + minimum: 0 + minItems: + type: integer + minimum: 0 + default: 0 + uniqueItems: + type: boolean + default: false + maxProperties: + type: integer + minimum: 0 + minProperties: + type: integer + minimum: 0 + default: 0 + required: + type: array + items: + type: string + minItems: 1 + uniqueItems: true + enum: + type: array + items: {} + minItems: 1 + uniqueItems: false + type: + type: string + enum: + - array + - boolean + - integer + - number + - object + - string + not: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + allOf: + type: array + items: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + oneOf: + type: array + items: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + anyOf: + type: array + items: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + items: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + properties: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + additionalProperties: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + - type: boolean + default: true + description: + type: string + format: + type: string + default: {} + nullable: + type: boolean + default: false + discriminator: + $ref: '#/definitions/Discriminator' + readOnly: + type: boolean + default: false + writeOnly: + type: boolean + default: false + example: {} + externalDocs: + $ref: '#/definitions/ExternalDocumentation' + deprecated: + type: boolean + default: false + xml: + $ref: '#/definitions/XML' + patternProperties: + '^x-': {} + additionalProperties: false + + Discriminator: + type: object + required: + - propertyName + properties: + propertyName: + type: string + mapping: + type: object + additionalProperties: + type: string + + XML: + type: object + properties: + name: + type: string + namespace: + type: string + format: uri + prefix: + type: string + attribute: + type: boolean + default: false + wrapped: + type: boolean + default: false + patternProperties: + '^x-': {} + additionalProperties: false + + Response: + type: object + required: + - description + properties: + description: + type: string + headers: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Header' + - $ref: '#/definitions/Reference' + content: + type: object + additionalProperties: + $ref: '#/definitions/MediaType' + links: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Link' + - $ref: '#/definitions/Reference' + patternProperties: + '^x-': {} + additionalProperties: false + + MediaType: + type: object + properties: + schema: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + example: {} + examples: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Example' + - $ref: '#/definitions/Reference' + encoding: + type: object + additionalProperties: + $ref: '#/definitions/Encoding' + patternProperties: + '^x-': {} + additionalProperties: false + allOf: + - $ref: '#/definitions/ExampleXORExamples' + + Example: + type: object + properties: + summary: + type: string + description: + type: string + value: {} + externalValue: + type: string + format: uri-reference + patternProperties: + '^x-': {} + additionalProperties: false + + Header: + type: object + properties: + description: + type: string + required: + type: boolean + default: false + deprecated: + type: boolean + default: false + allowEmptyValue: + type: boolean + default: false + style: + type: string + enum: + - simple + default: simple + explode: + type: boolean + allowReserved: + type: boolean + default: false + schema: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + content: + type: object + additionalProperties: + $ref: '#/definitions/MediaType' + minProperties: 1 + maxProperties: 1 + example: {} + examples: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Example' + - $ref: '#/definitions/Reference' + patternProperties: + '^x-': {} + additionalProperties: false + allOf: + - $ref: '#/definitions/ExampleXORExamples' + - $ref: '#/definitions/SchemaXORContent' + + Paths: + type: object + patternProperties: + '^\/': + $ref: '#/definitions/PathItem' + '^x-': {} + additionalProperties: false + + PathItem: + type: object + properties: + $ref: + type: string + summary: + type: string + description: + type: string + servers: + type: array + items: + $ref: '#/definitions/Server' + parameters: + type: array + items: + oneOf: + - $ref: '#/definitions/Parameter' + - $ref: '#/definitions/Reference' + uniqueItems: true + patternProperties: + '^(get|put|post|delete|options|head|patch|trace)$': + $ref: '#/definitions/Operation' + '^x-': {} + additionalProperties: false + + Operation: + type: object + required: + - responses + properties: + tags: + type: array + items: + type: string + summary: + type: string + description: + type: string + externalDocs: + $ref: '#/definitions/ExternalDocumentation' + operationId: + type: string + parameters: + type: array + items: + oneOf: + - $ref: '#/definitions/Parameter' + - $ref: '#/definitions/Reference' + uniqueItems: true + requestBody: + oneOf: + - $ref: '#/definitions/RequestBody' + - $ref: '#/definitions/Reference' + responses: + $ref: '#/definitions/Responses' + callbacks: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Callback' + - $ref: '#/definitions/Reference' + deprecated: + type: boolean + default: false + security: + type: array + items: + $ref: '#/definitions/SecurityRequirement' + servers: + type: array + items: + $ref: '#/definitions/Server' + patternProperties: + '^x-': {} + additionalProperties: false + + Responses: + type: object + properties: + default: + oneOf: + - $ref: '#/definitions/Response' + - $ref: '#/definitions/Reference' + patternProperties: + '^[1-5](?:\d{2}|XX)$': + oneOf: + - $ref: '#/definitions/Response' + - $ref: '#/definitions/Reference' + '^x-': {} + minProperties: 1 + additionalProperties: false + + + SecurityRequirement: + type: object + additionalProperties: + type: array + items: + type: string + + Tag: + type: object + required: + - name + properties: + name: + type: string + description: + type: string + externalDocs: + $ref: '#/definitions/ExternalDocumentation' + patternProperties: + '^x-': {} + additionalProperties: false + + ExternalDocumentation: + type: object + required: + - url + properties: + description: + type: string + url: + type: string + format: uri-reference + patternProperties: + '^x-': {} + additionalProperties: false + + ExampleXORExamples: + description: Example and examples are mutually exclusive + not: + required: [example, examples] + + SchemaXORContent: + description: Schema and content are mutually exclusive, at least one is required + not: + required: [schema, content] + oneOf: + - required: [schema] + - required: [content] + description: Some properties are not allowed if content is present + allOf: + - not: + required: [style] + - not: + required: [explode] + - not: + required: [allowReserved] + - not: + required: [example] + - not: + required: [examples] + + Parameter: + type: object + properties: + name: + type: string + in: + type: string + description: + type: string + required: + type: boolean + default: false + deprecated: + type: boolean + default: false + allowEmptyValue: + type: boolean + default: false + style: + type: string + explode: + type: boolean + allowReserved: + type: boolean + default: false + schema: + oneOf: + - $ref: '#/definitions/Schema' + - $ref: '#/definitions/Reference' + content: + type: object + additionalProperties: + $ref: '#/definitions/MediaType' + minProperties: 1 + maxProperties: 1 + example: {} + examples: + type: object + additionalProperties: + oneOf: + - $ref: '#/definitions/Example' + - $ref: '#/definitions/Reference' + patternProperties: + '^x-': {} + additionalProperties: false + required: + - name + - in + allOf: + - $ref: '#/definitions/ExampleXORExamples' + - $ref: '#/definitions/SchemaXORContent' + - $ref: '#/definitions/ParameterLocation' + + ParameterLocation: + description: Parameter location + oneOf: + - description: Parameter in path + required: + - required + properties: + in: + enum: [path] + style: + enum: [matrix, label, simple] + default: simple + required: + enum: [true] + + - description: Parameter in query + properties: + in: + enum: [query] + style: + enum: [form, spaceDelimited, pipeDelimited, deepObject] + default: form + + - description: Parameter in header + properties: + in: + enum: [header] + style: + enum: [simple] + default: simple + + - description: Parameter in cookie + properties: + in: + enum: [cookie] + style: + enum: [form] + default: form + + RequestBody: + type: object + required: + - content + properties: + description: + type: string + content: + type: object + additionalProperties: + $ref: '#/definitions/MediaType' + required: + type: boolean + default: false + patternProperties: + '^x-': {} + additionalProperties: false + + SecurityScheme: + oneOf: + - $ref: '#/definitions/APIKeySecurityScheme' + - $ref: '#/definitions/HTTPSecurityScheme' + - $ref: '#/definitions/OAuth2SecurityScheme' + - $ref: '#/definitions/OpenIdConnectSecurityScheme' + + APIKeySecurityScheme: + type: object + required: + - type + - name + - in + properties: + type: + type: string + enum: + - apiKey + name: + type: string + in: + type: string + enum: + - header + - query + - cookie + description: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + HTTPSecurityScheme: + type: object + required: + - scheme + - type + properties: + scheme: + type: string + bearerFormat: + type: string + description: + type: string + type: + type: string + enum: + - http + patternProperties: + '^x-': {} + additionalProperties: false + oneOf: + - description: Bearer + properties: + scheme: + enum: [bearer] + + - description: Non Bearer + not: + required: [bearerFormat] + properties: + scheme: + not: + enum: [bearer] + + OAuth2SecurityScheme: + type: object + required: + - type + - flows + properties: + type: + type: string + enum: + - oauth2 + flows: + $ref: '#/definitions/OAuthFlows' + description: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + OpenIdConnectSecurityScheme: + type: object + required: + - type + - openIdConnectUrl + properties: + type: + type: string + enum: + - openIdConnect + openIdConnectUrl: + type: string + format: uri-reference + description: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + OAuthFlows: + type: object + properties: + implicit: + $ref: '#/definitions/ImplicitOAuthFlow' + password: + $ref: '#/definitions/PasswordOAuthFlow' + clientCredentials: + $ref: '#/definitions/ClientCredentialsFlow' + authorizationCode: + $ref: '#/definitions/AuthorizationCodeOAuthFlow' + patternProperties: + '^x-': {} + additionalProperties: false + + ImplicitOAuthFlow: + type: object + required: + - authorizationUrl + - scopes + properties: + authorizationUrl: + type: string + format: uri-reference + refreshUrl: + type: string + format: uri-reference + scopes: + type: object + additionalProperties: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + PasswordOAuthFlow: + type: object + required: + - tokenUrl + properties: + tokenUrl: + type: string + format: uri-reference + refreshUrl: + type: string + format: uri-reference + scopes: + type: object + additionalProperties: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + ClientCredentialsFlow: + type: object + required: + - tokenUrl + properties: + tokenUrl: + type: string + format: uri-reference + refreshUrl: + type: string + format: uri-reference + scopes: + type: object + additionalProperties: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + AuthorizationCodeOAuthFlow: + type: object + required: + - authorizationUrl + - tokenUrl + properties: + authorizationUrl: + type: string + format: uri-reference + tokenUrl: + type: string + format: uri-reference + refreshUrl: + type: string + format: uri-reference + scopes: + type: object + additionalProperties: + type: string + patternProperties: + '^x-': {} + additionalProperties: false + + Link: + type: object + properties: + operationId: + type: string + operationRef: + type: string + format: uri-reference + parameters: + type: object + additionalProperties: {} + requestBody: {} + description: + type: string + server: + $ref: '#/definitions/Server' + patternProperties: + '^x-': {} + additionalProperties: false + not: + description: Operation Id and Operation Ref are mutually exclusive + required: [operationId, operationRef] + + Callback: + type: object + additionalProperties: + $ref: '#/definitions/PathItem' + patternProperties: + '^x-': {} + + Encoding: + type: object + properties: + contentType: + type: string + headers: + type: object + additionalProperties: + $ref: '#/definitions/Header' + style: + type: string + enum: + - form + - spaceDelimited + - pipeDelimited + - deepObject + explode: + type: boolean + allowReserved: + type: boolean + default: false + additionalProperties: false diff --git a/forward_engineering/node_modules/openapi-types/CHANGELOG.md b/forward_engineering/node_modules/openapi-types/CHANGELOG.md new file mode 100644 index 0000000..c168450 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/CHANGELOG.md @@ -0,0 +1,34 @@ +# openapi-types Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## 1.3.5 - 2019-05-13 +### Fixed +- Amended missing usage of PathsObject in OpenAPIV3.Document interface. + +## 1.3.4 - 2019-01-31 +### Fixed +- OpenAPIV3: relax security requirement object types (#327) + +## 1.3.3 - 2019-01-22 +### Fixed +- Allowing to set a property of BaseSchemaObject as a reference to another SchemaObject (#312) + +## 1.3.2 - 2018-10-17 +### Added +- Added `Operation` to `OpenAPI` namespace. + +## 1.3.1 - 2018-10-03 +### Fixed +- Updating .npmignore to publish `dist` + +## 1.3.0 - 2018-10-03 +### Added +- `OpenAPI.Parameter` - Represents a parameter across all OpenAPI versions that have the notion of a parameter. + +## 1.2.0 - 2018-09-29 +### Added +- `OpenAPI.Parameters` - Represents parameters across all OpenAPI versions that have the notion of parameters. +- exporting `OpenAPIV2.Parameters` and `OpenAPIV2.Parameter`. diff --git a/forward_engineering/node_modules/openapi-types/README.md b/forward_engineering/node_modules/openapi-types/README.md new file mode 100644 index 0000000..c4a44b1 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/README.md @@ -0,0 +1,50 @@ +# openapi-types [![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Gitter chat][gitter-image]][gitter-url] +> Types for OpenAPI documents. + +## Usage + +```typescript +import { OpenAPIV2, OpenAPIV3 } from "openapi-types"; + +function processV2(doc: OpenAPIV2.Document) {} + +function processV3(doc: OpenAPIV3.Document) {} +``` + +## LICENSE +`````` +The MIT License (MIT) + +Copyright (c) 2018 Kogo Software LLC + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +`````` + +[downloads-image]: http://img.shields.io/npm/dm/openapi-types.svg +[npm-url]: https://npmjs.org/package/openapi-types +[npm-image]: http://img.shields.io/npm/v/openapi-types.svg + +[travis-url]: https://travis-ci.org/kogosoftwarellc/open-api +[travis-image]: https://api.travis-ci.org/kogosoftwarellc/open-api.svg?branch=master + +[coveralls-url]: https://coveralls.io/r/kogosoftwarellc/open-api +[coveralls-image]: https://coveralls.io/repos/github/kogosoftwarellc/open-api/badge.svg?branch=master + +[gitter-url]: https://gitter.im/kogosoftwarellc/open-api +[gitter-image]: https://badges.gitter.im/kogosoftwarellc/open-api.png diff --git a/forward_engineering/node_modules/openapi-types/dist/index.d.ts b/forward_engineering/node_modules/openapi-types/dist/index.d.ts new file mode 100644 index 0000000..0b43481 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/dist/index.d.ts @@ -0,0 +1,582 @@ +export declare namespace OpenAPI { + type Document = OpenAPIV2.Document | OpenAPIV3.Document; + type Operation = OpenAPIV2.OperationObject | OpenAPIV3.OperationObject; + type Parameter = OpenAPIV3.ReferenceObject | OpenAPIV3.ParameterObject | OpenAPIV2.ReferenceObject | OpenAPIV2.Parameter; + type Parameters = Array | Array; + interface Request { + body?: any; + headers?: object; + params?: object; + query?: object; + } +} +export declare namespace OpenAPIV3 { + interface Document { + openapi: string; + info: InfoObject; + servers?: ServerObject[]; + paths: PathsObject; + components?: ComponentsObject; + security?: SecurityRequirementObject[]; + tags?: TagObject[]; + externalDocs?: ExternalDocumentationObject; + } + interface InfoObject { + title: string; + description?: string; + termsOfService?: string; + contact?: ContactObject; + license?: LicenseObject; + version: string; + } + interface ContactObject { + name?: string; + url?: string; + email?: string; + } + interface LicenseObject { + name: string; + url?: string; + } + interface ServerObject { + url: string; + description?: string; + variables?: { + [variable: string]: ServerVariableObject; + }; + } + interface ServerVariableObject { + enum?: string[]; + default: string; + description?: string; + } + interface PathsObject { + [pattern: string]: PathItemObject; + } + interface PathItemObject { + $ref?: string; + summary?: string; + description?: string; + get?: OperationObject; + put?: OperationObject; + post?: OperationObject; + delete?: OperationObject; + options?: OperationObject; + head?: OperationObject; + patch?: OperationObject; + trace?: OperationObject; + servers?: ServerObject[]; + parameters?: Array; + } + interface OperationObject { + tags?: string[]; + summary?: string; + description?: string; + externalDocs?: ExternalDocumentationObject; + operationId?: string; + parameters?: Array; + requestBody?: ReferenceObject | RequestBodyObject; + responses?: ResponsesObject; + callbacks?: { + [callback: string]: ReferenceObject | CallbackObject; + }; + deprecated?: boolean; + security?: SecurityRequirementObject[]; + servers?: ServerObject[]; + } + interface ExternalDocumentationObject { + description?: string; + url: string; + } + interface ParameterObject extends ParameterBaseObject { + name: string; + in: string; + } + interface HeaderObject extends ParameterBaseObject { + } + interface ParameterBaseObject { + description?: string; + required?: boolean; + deprecated?: boolean; + allowEmptyValue?: boolean; + style?: string; + explode?: boolean; + allowReserved?: boolean; + schema?: ReferenceObject | SchemaObject; + example?: any; + examples?: { + [media: string]: ReferenceObject | ExampleObject; + }; + content?: { + [media: string]: MediaTypeObject; + }; + } + type NonArraySchemaObjectType = 'null' | 'boolean' | 'object' | 'number' | 'string' | 'integer'; + type ArraySchemaObjectType = 'array'; + type SchemaObject = ArraySchemaObject | NonArraySchemaObject; + interface ArraySchemaObject extends BaseSchemaObject { + type: ArraySchemaObjectType; + items: ReferenceObject | SchemaObject; + } + interface NonArraySchemaObject extends BaseSchemaObject { + type: NonArraySchemaObjectType; + } + interface BaseSchemaObject { + title?: string; + description?: string; + format?: string; + default?: any; + multipleOf?: number; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + maxLength?: number; + minLength?: number; + pattern?: string; + additionalProperties?: boolean | ReferenceObject | SchemaObject; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxProperties?: number; + minProperties?: number; + required?: string[]; + enum?: any[]; + properties?: { + [name: string]: ReferenceObject | SchemaObject; + }; + allOf?: Array; + oneOf?: Array; + anyOf?: Array; + not?: ReferenceObject | SchemaObject; + nullable?: boolean; + discriminator?: DiscriminatorObject; + readOnly?: boolean; + writeOnly?: boolean; + xml?: XMLObject; + externalDocs?: ExternalDocumentationObject; + example?: any; + deprecated?: boolean; + } + interface DiscriminatorObject { + propertyName: string; + mapping?: { + [value: string]: string; + }; + } + interface XMLObject { + name?: string; + namespace?: string; + prefix?: string; + attribute?: boolean; + wrapped?: boolean; + } + interface ReferenceObject { + $ref: string; + } + interface ExampleObject { + summary?: string; + description?: string; + value?: any; + externalValue?: string; + } + interface MediaTypeObject { + schema?: ReferenceObject | SchemaObject; + example?: any; + examples?: { + [media: string]: ReferenceObject | ExampleObject; + }; + encoding?: { + [media: string]: EncodingObject; + }; + } + interface EncodingObject { + contentType?: string; + headers?: { + [header: string]: ReferenceObject | HeaderObject; + }; + style?: string; + explode?: boolean; + allowReserved?: boolean; + } + interface RequestBodyObject { + description?: string; + content: { + [media: string]: MediaTypeObject; + }; + required?: boolean; + } + interface ResponsesObject { + [code: string]: ReferenceObject | ResponseObject; + } + interface ResponseObject { + description: string; + headers?: { + [header: string]: ReferenceObject | HeaderObject; + }; + content?: { + [media: string]: MediaTypeObject; + }; + links?: { + [link: string]: ReferenceObject | LinkObject; + }; + } + interface LinkObject { + operationRef?: string; + operationId?: string; + parameters?: { + [parameter: string]: any; + }; + requestBody?: any; + description?: string; + server?: ServerObject; + } + interface CallbackObject { + [url: string]: PathItemObject; + } + interface SecurityRequirementObject { + [name: string]: string[]; + } + interface ComponentsObject { + schemas?: { + [key: string]: ReferenceObject | SchemaObject; + }; + responses?: { + [key: string]: ReferenceObject | ResponseObject; + }; + parameters?: { + [key: string]: ReferenceObject | ParameterObject; + }; + examples?: { + [key: string]: ReferenceObject | ExampleObject; + }; + requestBodies?: { + [key: string]: ReferenceObject | RequestBodyObject; + }; + headers?: { + [key: string]: ReferenceObject | HeaderObject; + }; + securitySchemes?: { + [key: string]: ReferenceObject | SecuritySchemeObject; + }; + links?: { + [key: string]: ReferenceObject | LinkObject; + }; + callbacks?: { + [key: string]: ReferenceObject | CallbackObject; + }; + } + type SecuritySchemeObject = HttpSecurityScheme | ApiKeySecurityScheme | OAuth2SecurityScheme | OpenIdSecurityScheme; + interface HttpSecurityScheme { + type: 'http'; + description?: string; + scheme: string; + bearerFormat?: string; + } + interface ApiKeySecurityScheme { + type: 'apiKey'; + description?: string; + name: string; + in: string; + } + interface OAuth2SecurityScheme { + type: 'oauth2'; + flows: { + implicit?: { + authorizationUrl: string; + refreshUrl?: string; + scopes: { + [scope: string]: string; + }; + }; + password?: { + tokenUrl: string; + refreshUrl?: string; + scopes: { + [scope: string]: string; + }; + }; + clientCredentials?: { + tokenUrl: string; + refreshUrl?: string; + scopes: { + [scope: string]: string; + }; + }; + authorizationCode?: { + authorizationUrl: string; + tokenUrl: string; + refreshUrl?: string; + scopes: { + [scope: string]: string; + }; + }; + }; + } + interface OpenIdSecurityScheme { + type: 'openIdConnect'; + description?: string; + openIdConnectUrl: string; + } + interface TagObject { + name: string; + description?: string; + externalDocs?: ExternalDocumentationObject; + } +} +export declare namespace OpenAPIV2 { + interface Document { + basePath?: string; + consumes?: MimeTypes; + definitions?: DefinitionsObject; + externalDocs?: ExternalDocumentationObject; + host?: string; + info: InfoObject; + parameters?: ParametersDefinitionsObject; + paths: PathsObject; + produces?: MimeTypes; + responses?: ResponsesDefinitionsObject; + schemes?: string[]; + security?: SecurityRequirementObject[]; + securityDefinitions?: SecurityDefinitionsObject; + swagger: string; + tags?: TagObject[]; + } + interface TagObject { + name: string; + description?: string; + externalDocs?: ExternalDocumentationObject; + } + interface SecuritySchemeObjectBase { + type: 'basic' | 'apiKey' | 'oauth2'; + description?: string; + } + interface SecuritySchemeBasic extends SecuritySchemeObjectBase { + type: 'basic'; + } + interface SecuritySchemeApiKey extends SecuritySchemeObjectBase { + type: 'apiKey'; + name: string; + in: string; + } + type SecuritySchemeOauth2 = SecuritySchemeOauth2Implicit | SecuritySchemeOauth2AccessCode | SecuritySchemeOauth2Password | SecuritySchemeOauth2Application; + interface ScopesObject { + [index: string]: any; + } + interface SecuritySchemeOauth2Base extends SecuritySchemeObjectBase { + flow: 'implicit' | 'password' | 'application' | 'accessCode'; + scopes: ScopesObject; + } + interface SecuritySchemeOauth2Implicit extends SecuritySchemeOauth2Base { + flow: 'implicit'; + authorizationUrl: string; + } + interface SecuritySchemeOauth2AccessCode extends SecuritySchemeOauth2Base { + flow: 'accessCode'; + authorizationUrl: string; + tokenUrl: string; + } + interface SecuritySchemeOauth2Password extends SecuritySchemeOauth2Base { + flow: 'password'; + tokenUrl: string; + } + interface SecuritySchemeOauth2Application extends SecuritySchemeOauth2Base { + flow: 'application'; + tokenUrl: string; + } + type SecuritySchemeObject = SecuritySchemeBasic | SecuritySchemeApiKey | SecuritySchemeOauth2; + interface SecurityDefinitionsObject { + [index: string]: SecuritySchemeObject; + } + interface SecurityRequirementObject { + [index: string]: string[]; + } + interface ReferenceObject { + $ref: string; + } + type Response = ResponseObject | ReferenceObject; + interface ResponsesDefinitionsObject { + [index: string]: ResponseObject; + } + type Schema = SchemaObject | ReferenceObject; + interface ResponseObject { + description: string; + schema?: Schema; + headers?: HeadersObject; + examples?: ExampleObject; + } + interface HeadersObject { + [index: string]: HeaderObject; + } + interface HeaderObject extends ItemsObject { + } + interface ExampleObject { + [index: string]: any; + } + interface ResponseObject { + description: string; + schema?: Schema; + headers?: HeadersObject; + examples?: ExampleObject; + } + interface OperationObject { + tags?: string[]; + summary?: string; + description?: string; + externalDocs?: ExternalDocumentationObject; + operationId?: string; + consumes?: MimeTypes; + produces?: MimeTypes; + parameters?: Parameters; + responses: ResponsesObject; + schemes?: string[]; + deprecated?: boolean; + security?: SecurityRequirementObject[]; + [index: string]: any; + } + interface ResponsesObject { + [index: string]: Response | any; + default: Response; + } + type Parameters = Array; + type Parameter = InBodyParameterObject | GeneralParameterObject; + interface InBodyParameterObject extends ParameterObject { + schema: Schema; + } + interface GeneralParameterObject extends ParameterObject, ItemsObject { + allowEmptyValue?: boolean; + } + interface PathItemObject { + $ref?: string; + get?: OperationObject; + put?: OperationObject; + post?: OperationObject; + del?: OperationObject; + delete?: OperationObject; + options?: OperationObject; + head?: OperationObject; + patch?: OperationObject; + parameters?: Parameters; + } + interface PathsObject { + [index: string]: PathItemObject | any; + } + interface ParametersDefinitionsObject { + [index: string]: ParameterObject; + } + interface ParameterObject { + name: string; + in: string; + description?: string; + required?: boolean; + [index: string]: any; + } + type MimeTypes = string[]; + interface DefinitionsObject { + [index: string]: SchemaObject; + } + interface SchemaObject extends IJsonSchema { + [index: string]: any; + discriminator?: string; + readOnly?: boolean; + xml?: XMLObject; + externalDocs?: ExternalDocumentationObject; + example?: any; + default?: any; + items?: ItemsObject; + properties?: { + [name: string]: SchemaObject; + }; + } + interface ExternalDocumentationObject { + [index: string]: any; + description?: string; + url: string; + } + interface ItemsObject { + type: string; + format?: string; + items?: ItemsObject; + collectionFormat?: string; + default?: any; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + maxLength?: number; + minLength?: number; + pattern?: string; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + enum?: any[]; + multipleOf?: number; + $ref?: string; + } + interface XMLObject { + [index: string]: any; + name?: string; + namespace?: string; + prefix?: string; + attribute?: boolean; + wrapped?: boolean; + } + interface InfoObject { + title: string; + description?: string; + termsOfService?: string; + contact?: ContactObject; + license?: LicenseObject; + version: string; + } + interface ContactObject { + name?: string; + url?: string; + email?: string; + } + interface LicenseObject { + name: string; + url?: string; + } +} +export interface IJsonSchema { + id?: string; + $schema?: string; + title?: string; + description?: string; + multipleOf?: number; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + maxLength?: number; + minLength?: number; + pattern?: string; + additionalItems?: boolean | IJsonSchema; + items?: IJsonSchema | IJsonSchema[]; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxProperties?: number; + minProperties?: number; + required?: string[]; + additionalProperties?: boolean | IJsonSchema; + definitions?: { + [name: string]: IJsonSchema; + }; + properties?: { + [name: string]: IJsonSchema; + }; + patternProperties?: { + [name: string]: IJsonSchema; + }; + dependencies?: { + [name: string]: IJsonSchema | string[]; + }; + enum?: any[]; + type?: string | string[]; + allOf?: IJsonSchema[]; + anyOf?: IJsonSchema[]; + oneOf?: IJsonSchema[]; + not?: IJsonSchema; +} diff --git a/forward_engineering/node_modules/openapi-types/dist/index.js b/forward_engineering/node_modules/openapi-types/dist/index.js new file mode 100644 index 0000000..7bfaf33 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/dist/index.js @@ -0,0 +1,3 @@ +"use strict"; +exports.__esModule = true; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-types/dist/index.js.map b/forward_engineering/node_modules/openapi-types/dist/index.js.map new file mode 100644 index 0000000..8067393 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/dist/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/forward_engineering/node_modules/openapi-types/package.json b/forward_engineering/node_modules/openapi-types/package.json new file mode 100644 index 0000000..b92aad3 --- /dev/null +++ b/forward_engineering/node_modules/openapi-types/package.json @@ -0,0 +1,55 @@ +{ + "_from": "openapi-types@^1.3.5", + "_id": "openapi-types@1.3.5", + "_inBundle": false, + "_integrity": "sha512-11oi4zYorsgvg5yBarZplAqbpev5HkuVNPlZaPTknPDzAynq+lnJdXAmruGWP0s+dNYZS7bjM+xrTpJw7184Fg==", + "_location": "/openapi-types", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "openapi-types@^1.3.5", + "name": "openapi-types", + "escapedName": "openapi-types", + "rawSpec": "^1.3.5", + "saveSpec": null, + "fetchSpec": "^1.3.5" + }, + "_requiredBy": [ + "/swagger-parser" + ], + "_resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-1.3.5.tgz", + "_shasum": "6718cfbc857fe6c6f1471f65b32bdebb9c10ce40", + "_spec": "openapi-types@^1.3.5", + "_where": "/home/taras/Dev/Hackolade/OpenApi-fork-3/OpenAPI/forward_engineering/node_modules/swagger-parser", + "author": { + "name": "Joseph Spencer" + }, + "bugs": { + "url": "https://github.com/kogosoftwarellc/open-api/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3Aopenapi-types" + }, + "bundleDependencies": false, + "deprecated": false, + "description": "Types for OpenAPI documents.", + "homepage": "https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-types#readme", + "keywords": [ + "openapi", + "swagger", + "types", + "typescript" + ], + "license": "MIT", + "main": "./dist/index.js", + "name": "openapi-types", + "repository": { + "type": "git", + "url": "https://github.com/kogosoftwarellc/open-api/tree/master/packages/openapi-types" + }, + "scripts": { + "prepare": "tsc", + "test-watch": "tsc", + "travis-test": "tsc" + }, + "types": "./dist/index.d.ts", + "version": "1.3.5" +} diff --git a/forward_engineering/node_modules/swagger-methods/README.md b/forward_engineering/node_modules/swagger-methods/README.md index 5612d99..da8e1de 100644 --- a/forward_engineering/node_modules/swagger-methods/README.md +++ b/forward_engineering/node_modules/swagger-methods/README.md @@ -2,24 +2,22 @@ Swagger Methods ============================ #### HTTP methods that are supported by Swagger 2.0 -[![Cross-Platform Compatibility](https://apidevtools.org/img/os-badges.svg)](https://travis-ci.com/APIDevTools/swagger-methods) - +[![Cross-Platform Compatibility](https://apitools.dev/img/os-badges.svg)](https://travis-ci.com/APIDevTools/swagger-methods) [![Build Status](https://api.travis-ci.com/APIDevTools/swagger-methods.svg)](https://travis-ci.com/APIDevTools/swagger-methods) - [![Coverage Status](https://coveralls.io/repos/github/APIDevTools/swagger-methods/badge.svg?branch=master)](https://coveralls.io/github/APIDevTools/swagger-methods?branch=master) -[![Dependencies](https://david-dm.org/APIDevTools/swagger-methods.svg)](https://david-dm.org/APIDevTools/swagger-methods) [![npm](https://img.shields.io/npm/v/swagger-methods.svg?branch=master)](https://www.npmjs.com/package/swagger-methods) +[![Dependencies](https://david-dm.org/APIDevTools/swagger-methods.svg)](https://david-dm.org/APIDevTools/swagger-methods) [![License](https://img.shields.io/npm/l/swagger-methods.svg)](LICENSE) -This is an array of lower-case HTTP method names that are supported by the [Swagger 2.0 spec](https://github.com/swagger-api/swagger-spec/blob/master/versions/2.0.md). +This is an array of lower-case HTTP method names that are supported by the [Swagger 2.0 spec](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md). This module is [tested](test/index.spec.js) against the [Swagger 2.0 schema](https://www.npmjs.com/package/swagger-schema-official) Installation -------------------------- -Install using [npm](https://docs.npmjs.com/getting-started/what-is-npm): +Install using [npm](https://docs.npmjs.com/about-npm/): ```bash npm install swagger-methods @@ -66,3 +64,11 @@ To build/test the project locally on your computer: License -------------------------- [MIT license](LICENSE). Use it however you want. + +Big Thanks To +-------------------------- +Thanks to these awesome companies for their support of Open Source developers ❤ + +[![Travis CI](https://jstools.dev/img/badges/travis-ci.svg)](https://travis-ci.com) +[![SauceLabs](https://jstools.dev/img/badges/sauce-labs.svg)](https://saucelabs.com) +[![Coveralls](https://jstools.dev/img/badges/coveralls.svg)](https://coveralls.io) diff --git a/forward_engineering/node_modules/swagger-methods/package.json b/forward_engineering/node_modules/swagger-methods/package.json index a6a7272..26fe3ce 100644 --- a/forward_engineering/node_modules/swagger-methods/package.json +++ b/forward_engineering/node_modules/swagger-methods/package.json @@ -1,51 +1,27 @@ { - "_args": [ - [ - { - "raw": "swagger-methods@^1.0.8", - "scope": null, - "escapedName": "swagger-methods", - "name": "swagger-methods", - "rawSpec": "^1.0.8", - "spec": ">=1.0.8 <2.0.0", - "type": "range" - }, - "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser" - ] - ], - "_from": "swagger-methods@>=1.0.8 <2.0.0", - "_hasShrinkwrap": false, - "_id": "swagger-methods@1.0.8", - "_inCache": true, + "_from": "swagger-methods@^2.0.1", + "_id": "swagger-methods@2.0.2", + "_inBundle": false, + "_integrity": "sha512-/RNqvBZkH8+3S/FqBPejHxJxZenaYq3MrpeXnzi06aDIS39Mqf5YCUNb/ZBjsvFFt8h9FxfKs8EXPtcYdfLiRg==", "_location": "/swagger-methods", - "_nodeVersion": "10.15.0", - "_npmOperationalInternal": { - "host": "s3://npm-registry-packages", - "tmp": "tmp/swagger-methods_1.0.8_1546473291246_0.09338589767983008" - }, - "_npmUser": { - "name": "jamesmessinger", - "email": "james.messinger@gmail.com" - }, - "_npmVersion": "6.4.1", "_phantomChildren": {}, "_requested": { - "raw": "swagger-methods@^1.0.8", - "scope": null, - "escapedName": "swagger-methods", + "type": "range", + "registry": true, + "raw": "swagger-methods@^2.0.1", "name": "swagger-methods", - "rawSpec": "^1.0.8", - "spec": ">=1.0.8 <2.0.0", - "type": "range" + "escapedName": "swagger-methods", + "rawSpec": "^2.0.1", + "saveSpec": null, + "fetchSpec": "^2.0.1" }, "_requiredBy": [ "/swagger-parser" ], - "_resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-1.0.8.tgz", - "_shasum": "8baf37ee861d3c72ff7b2faad6d74c60b336e2ed", - "_shrinkwrap": null, - "_spec": "swagger-methods@^1.0.8", - "_where": "/home/taras/Dev/Hackolade/OpenAPI/forward_engineering/node_modules/swagger-parser", + "_resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-2.0.2.tgz", + "_shasum": "5891d5536e54d5ba8e7ae1007acc9170f41c9590", + "_spec": "swagger-methods@^2.0.1", + "_where": "/home/taras/Dev/Hackolade/OpenApi-fork-3/OpenAPI/forward_engineering/node_modules/swagger-parser", "author": { "name": "James Messinger", "url": "https://jamesmessinger.com" @@ -53,30 +29,25 @@ "bugs": { "url": "https://github.com/APIDevTools/swagger-methods/issues" }, + "bundleDependencies": false, "dependencies": {}, + "deprecated": false, "description": "HTTP methods that are supported by Swagger 2.0", "devDependencies": { "chai": "^4.2.0", - "coveralls": "^3.0.2", - "eslint": "^5.11.1", - "eslint-config-modular": "^6.0.0", + "coveralls": "^3.0.7", + "eslint": "^6.5.1", + "eslint-config-modular": "^7.0.1", "methods": "^1.1.2", - "mocha": "^5.2.0", + "mocha": "^6.2.2", "npm-check": "^5.9.0", - "nyc": "^13.1.0", + "nyc": "^14.1.1", "swagger-schema-official": "2.0.0-bab6bed", - "version-bump-prompt": "^4.2.2" - }, - "directories": {}, - "dist": { - "integrity": "sha512-G6baCwuHA+C5jf4FNOrosE4XlmGsdjbOjdBK4yuiDDj/ro9uR4Srj3OR84oQMT8F3qKp00tYNv0YN730oTHPZA==", - "shasum": "8baf37ee861d3c72ff7b2faad6d74c60b336e2ed", - "tarball": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-1.0.8.tgz", - "fileCount": 4, - "unpackedSize": 4467, - "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLU9LCRA9TVsSAnZWagAAQwQP/1lpGOVnkAa3gYHWXCUr\nZXv21m83FiCjBHV4vCe/nG86zVH/H9yv4MfF2PgNeAg/4h3qxy0BoTTj4Wu7\nMem6Hq7ebn4xJy8zer2rCZ5zH3icAddoMNT9PlUqj1sPYp1X1xq641L4eoE8\nkGSqRZJPfqsVYYHMpI/isFTDTjqMZG/vNvdg8WB3+kTuA3cXInD9Y82ABiLP\nBfBbKSawWviLtMe6drCZF6uuYrOhjuUtM2yE245jO4n4vwg0ox9hemFDomOG\nEc2/Ku8GrOzrmtDaffQyKnBAQQoGU7PdCsvbA/6WI2KzXlZHn3ZTbWynMaeQ\nJRpQkve80E6UMca63d5mPXosSbvF4QC2jTV0SzfW8D5mms08gUtSFT1ruEPm\ncFwiWv3u8PGJw3ahlwZHKDtJzNK3DBZJ0/iD7Sp5Y5UGaD7VhICtvCcUJcpk\n1oDI4OBE8aMijGHgL7qbLh+hvZTMdtOQjbQPPL42mCP93B76WPegoNKpEGAU\nJ/58Pkhx9hs8+4JqOTPiZ+a2pbGfmumanHw+KWF3AvL+leuutXaWobaEV4GL\ndRv1by4mh2zg6zJoLfpnZ9xFjYhA4juUGjj24rYbl9VUp7jrrTPwi1QJZXjg\nTAmIHQ1EjG25iQcAbCoBW397eRw8PlqjUXpCd4MHD2JZYI8WUhiCl7Yeei1S\neG3R\r\n=7+ZZ\r\n-----END PGP SIGNATURE-----\r\n" + "version-bump-prompt": "^5.0.5" }, - "gitHead": "b452590dba1274fb8a6dea0e9fbb03f3179a6538", + "files": [ + "lib" + ], "homepage": "https://github.com/APIDevTools/swagger-methods", "keywords": [ "swagger", @@ -85,30 +56,18 @@ ], "license": "MIT", "main": "lib/index.js", - "maintainers": [ - { - "name": "bigstickcarpet", - "email": "bigstickcarpet@gmail.com" - }, - { - "name": "jamesmessinger", - "email": "james.messinger@gmail.com" - } - ], "name": "swagger-methods", - "optionalDependencies": {}, - "readme": "ERROR: No README data found!", "repository": { "type": "git", "url": "git+https://github.com/APIDevTools/swagger-methods.git" }, "scripts": { - "bump": "bump --prompt --tag --push --all", - "coverage": "nyc --reporter=text --reporter=lcov mocha", + "bump": "bump --tag --push --all", + "coverage": "nyc --reporter=text --reporter=lcov node_modules/mocha/bin/mocha", "lint": "eslint lib test", "release": "npm run upgrade && npm test && npm run bump", "test": "mocha && npm run lint", - "upgrade": "npm-check -u" + "upgrade": "npm-check -u && npm audit fix" }, - "version": "1.0.8" + "version": "2.0.2" } diff --git a/forward_engineering/node_modules/swagger-parser/CHANGELOG.md b/forward_engineering/node_modules/swagger-parser/CHANGELOG.md index bd9c5be..02976c2 100644 --- a/forward_engineering/node_modules/swagger-parser/CHANGELOG.md +++ b/forward_engineering/node_modules/swagger-parser/CHANGELOG.md @@ -3,6 +3,32 @@ All notable changes will be documented in this file. Swagger Parser adheres to [Semantic Versioning](http://semver.org/). +## [v8.0.0](https://github.com/APIDevTools/swagger-parser/tree/v8.0.0) (2019-06-22) + +#### Potentially Breaking Changes + +- [The `validate()` function](https://apitools.dev/swagger-parser/docs/swagger-parser.html#validateapi-options-callback) now uses [the official JSON Schemas](https://github.com/OAI/OpenAPI-Specification/tree/master/schemas) for Swagger 2.0 and OpenAPI 3.0 schema validation. We tested this change on [over 1,500 real-world APIs](https://apis.guru/browse-apis/) and there were **no breaking changes**, but we're bumped the major version number just to be safe. + +[Full Changelog](https://github.com/APIDevTools/swagger-parser/compare/v7.0.1...v8.0.0) + + +## [v7.0.0](https://github.com/APIDevTools/swagger-parser/tree/v7.0.0) (2019-06-12) + +#### Breaking Changes + +- Dropped support for Node 6 + +- Updated all code to ES6+ syntax (async/await, template literals, arrow functions, etc.) + +- No longer including a pre-built bundle in the package. such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/) to include Swagger Parser in your app + +#### Other Changes + +- Added [TypeScript definitions](lib/index.d.ts) + +[Full Changelog](https://github.com/APIDevTools/swagger-parser/compare/v6.0.5...v7.0.0) + + ## [v6.0.0](https://github.com/APIDevTools/swagger-parser/tree/v6.0.0) (2018-10-05) - Dropped support for [Bower](https://www.npmjs.com/package/bower), since it has been deprecated @@ -74,7 +100,7 @@ Lots of little bug fixes, and a couple major bug fixes: ## [v3.3.0](https://github.com/APIDevTools/swagger-parser/tree/v3.3.0) (2015-10-02) -Updated to the latest version of [the Official Swagger 2.0 Schema](https://www.npmjs.com/package/swagger-schema-official). The schema [hadn't been updated for six months](https://github.com/swagger-api/swagger-spec/issues/335), so Swagger Parser was missing [several recent changes](https://github.com/swagger-api/swagger-spec/commits/master/schemas/v2.0/schema.json). +Updated to the latest version of [the Official Swagger 2.0 Schema](https://www.npmjs.com/package/swagger-schema-official). The schema [hadn't been updated for six months](https://github.com/OAI/OpenAPI-Specification/issues/335), so Swagger Parser was missing [several recent changes](https://github.com/OAI/OpenAPI-Specification/commits/master/schemas/v2.0/schema.json). [Full Changelog](https://github.com/APIDevTools/swagger-parser/compare/v3.2.0...v3.3.0) @@ -100,7 +126,7 @@ Added a new [`$refs.circular` option](https://github.com/APIDevTools/swagger-par This is a **complete rewrite** of Swagger Parser. Major changes include: **Swagger 2.0 Compliant**
-Previous versions of Swagger Parser were based on early drafts of Swagger 2.0, and were not compliant with [the final version of the spec](https://github.com/swagger-api/swagger-spec/blob/master/versions/2.0.md). Swagger Parser v3.0 is now compliant with the final spec as well as related specs, such as [JSON Reference](https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03) and [JSON Pointer](https://tools.ietf.org/html/rfc6901) +Previous versions of Swagger Parser were based on early drafts of Swagger 2.0, and were not compliant with [the final version of the spec](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md). Swagger Parser v3.0 is now compliant with the final spec as well as related specs, such as [JSON Reference](https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03) and [JSON Pointer](https://tools.ietf.org/html/rfc6901) **All-New API**
The old API only had a single method: `parse()`. But depending on which options you passed it, the method did _much_ more than its name implied. The new API has separate methods to make things a bit more intuitive. The most commonly used will be [`validate()`](https://github.com/APIDevTools/swagger-parser/blob/master/docs/swagger-parser.md#validateapi-options-callback), [`bundle()`](https://github.com/APIDevTools/swagger-parser/blob/master/docs/swagger-parser.md#bundleapi-options-callback), and [`dereference()`](https://github.com/APIDevTools/swagger-parser/blob/master/docs/swagger-parser.md#dereferenceapi-options-callback). The [`parse()`](https://github.com/APIDevTools/swagger-parser/blob/master/docs/swagger-parser.md#parseapi-options-callback) and [`resolve()`](https://github.com/APIDevTools/swagger-parser/blob/master/docs/swagger-parser.md#resolveapi-options-callback) methods are also available, but these are mostly just for internal use by the other methods. diff --git a/forward_engineering/node_modules/swagger-parser/README.md b/forward_engineering/node_modules/swagger-parser/README.md index 43d64a9..5993447 100644 --- a/forward_engineering/node_modules/swagger-parser/README.md +++ b/forward_engineering/node_modules/swagger-parser/README.md @@ -9,20 +9,20 @@ Swagger 2.0 and OpenAPI 3.0 parser/validator [![Dependencies](https://david-dm.org/APIDevTools/swagger-parser.svg)](https://david-dm.org/APIDevTools/swagger-parser) [![License](https://img.shields.io/npm/l/swagger-parser.svg)](LICENSE) -[![OS and Browser Compatibility](https://apidevtools.org/img/badges/ci-badges-with-ie.svg)](https://travis-ci.com/APIDevTools/swagger-parser) +[![OS and Browser Compatibility](https://apitools.dev/img/badges/ci-badges-with-ie.svg)](https://travis-ci.com/APIDevTools/swagger-parser) -[![Online Demo](https://apidevtools.org/swagger-parser/online/img/demo.svg)](https://apidevtools.org/swagger-parser/online/) +[![Online Demo](https://apitools.dev/swagger-parser/online/img/demo.svg)](https://apitools.dev/swagger-parser/online/) Features -------------------------- - Parses Swagger specs in **JSON** or **YAML** format -- Validates against the [Swagger 2.0 schema](https://github.com/swagger-api/swagger-spec/blob/master/schemas/v2.0/schema.json) or [OpenAPI 3.0 Schema](https://github.com/kogosoftwarellc/open-api/blob/master/packages/openapi-schema-validation/schema/openapi-3.0.json) -- [Resolves](https://apidevtools.org/swagger-parser/docs/swagger-parser.html#resolveapi-options-callback) all `$ref` pointers, including external files and URLs -- Can [bundle](https://apidevtools.org/swagger-parser/docs/swagger-parser.html#bundleapi-options-callback) all your Swagger files into a single file that only has _internal_ `$ref` pointers -- Can [dereference](https://apidevtools.org/swagger-parser/docs/swagger-parser.html#dereferenceapi-options-callback) all `$ref` pointers, giving you a normal JavaScript object that's easy to work with -- **[Tested](https://apidevtools.org/swagger-parser/test/)** in Node.js and all modern web browsers on Mac, Windows, and Linux -- Tested on **[over 1,000 real-world APIs](https://apis.guru/browse-apis/)** from Google, Instagram, Spotify, etc. -- Supports [circular references](https://apidevtools.org/swagger-parser/docs/#circular-refs), nested references, back-references, and cross-references +- Validates against the [Swagger 2.0 schema](https://github.com/OAI/OpenAPI-Specification/blob/master/schemas/v2.0/schema.json) or [OpenAPI 3.0 Schema](https://github.com/OAI/OpenAPI-Specification/blob/master/schemas/v3.0/schema.json) +- [Resolves](https://apitools.dev/swagger-parser/docs/swagger-parser.html#resolveapi-options-callback) all `$ref` pointers, including external files and URLs +- Can [bundle](https://apitools.dev/swagger-parser/docs/swagger-parser.html#bundleapi-options-callback) all your Swagger files into a single file that only has _internal_ `$ref` pointers +- Can [dereference](https://apitools.dev/swagger-parser/docs/swagger-parser.html#dereferenceapi-options-callback) all `$ref` pointers, giving you a normal JavaScript object that's easy to work with +- **[Tested](https://travis-ci.com/APIDevTools/swagger-parser)** in Node.js and all modern web browsers on Mac, Windows, and Linux +- Tested on **[over 1,500 real-world APIs](https://apis.guru/browse-apis/)** from Google, Instagram, Spotify, etc. +- Supports [circular references](https://apitools.dev/swagger-parser/docs/#circular-refs), nested references, back-references, and cross-references - Maintains object reference equality — `$ref` pointers to the same value always resolve to the same object instance @@ -36,7 +36,7 @@ Example -------------------------- ```javascript -SwaggerParser.validate(myAPI, function(err, api) { +SwaggerParser.validate(myAPI, (err, api) => { if (err) { console.error(err); } @@ -46,57 +46,59 @@ SwaggerParser.validate(myAPI, function(err, api) { }); ``` -Or use [Promises syntax](http://javascriptplayground.com/blog/2015/02/promises/) instead. The following example is the same as above: +Or use `async`/`await` or [Promise](http://javascriptplayground.com/blog/2015/02/promises/) syntax instead. The following example is the same as above: ```javascript -SwaggerParser.validate(myAPI) - .then(function(api) { - console.log("API name: %s, Version: %s", api.info.title, api.info.version); - }) - .catch(function(err) { - console.error(err); - }); +try { + let api = await SwaggerParser.validate(myAPI); + console.log("API name: %s, Version: %s", api.info.title, api.info.version); +} +catch(err) { + console.error(err); +} ``` -For more detailed examples, please see the [API Documentation](https://apidevtools.org/swagger-parser/docs/) +For more detailed examples, please see the [API Documentation](https://apitools.dev/swagger-parser/docs/) + Installation -------------------------- -#### Node Install using [npm](https://docs.npmjs.com/about-npm/): ```bash npm install swagger-parser ``` -Then require it in your code: + + +Usage +-------------------------- +When using Swagger Parser in Node.js apps, you'll probably want to use **CommonJS** syntax: ```javascript -var SwaggerParser = require('swagger-parser'); +const SwaggerParser = require("swagger-parser"); ``` -#### Web Browsers -Reference [`swagger-parser.js`](dist/swagger-parser.js) or [`swagger-parser.min.js`](dist/swagger-parser.min.js) in your HTML: - -```html - - +When using a transpiler such as [Babel](https://babeljs.io/) or [TypeScript](https://www.typescriptlang.org/), or a bundler such as [Webpack](https://webpack.js.org/) or [Rollup](https://rollupjs.org/), you can use **ECMAScript modules** syntax instead: + +```javascript +import SwaggerParser from "swagger-parser"; ``` + +Browser support +-------------------------- +Swagger Parser supports recent versions of every major web browser. Older browsers may require [Babel](https://babeljs.io/) and/or [polyfills](https://babeljs.io/docs/en/next/babel-polyfill). + +To use Swagger Parser in a browser, you'll need to use a bundling tool such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/). Some bundlers may require a bit of configuration, such as setting `browser: true` in [rollup-plugin-resolve](https://github.com/rollup/rollup-plugin-node-resolve). + + + API Documentation -------------------------- -Full API documentation is available [right here](https://apidevtools.org/swagger-parser/docs/) +Full API documentation is available [right here](https://apitools.dev/swagger-parser/docs/) Contributing @@ -118,9 +120,6 @@ To build/test the project locally on your computer: 4. __Run the tests__
`npm test` -5. __Start the local web server__
-`npm start` (then browse to [http://localhost:8080/test/](http://localhost:8080/test/)) - License -------------------------- @@ -130,6 +129,6 @@ Big Thanks To -------------------------- Thanks to these awesome companies for their support of Open Source developers ❤ -[![Travis CI](https://jsdevtools.org/img/badges/travis-ci.svg)](https://travis-ci.com) -[![SauceLabs](https://jsdevtools.org/img/badges/sauce-labs.svg)](https://saucelabs.com) -[![Coveralls](https://jsdevtools.org/img/badges/coveralls.svg)](https://coveralls.io) +[![Travis CI](https://jstools.dev/img/badges/travis-ci.svg)](https://travis-ci.com) +[![SauceLabs](https://jstools.dev/img/badges/sauce-labs.svg)](https://saucelabs.com) +[![Coveralls](https://jstools.dev/img/badges/coveralls.svg)](https://coveralls.io) diff --git a/forward_engineering/node_modules/swagger-parser/dist/swagger-parser.js b/forward_engineering/node_modules/swagger-parser/dist/swagger-parser.js deleted file mode 100644 index f541c37..0000000 --- a/forward_engineering/node_modules/swagger-parser/dist/swagger-parser.js +++ /dev/null @@ -1,29241 +0,0 @@ -/*! - * Swagger Parser v6.0.5 (January 25th 2019) - * - * https://apidevtools.org/swagger-parser/ - * - * @author James Messinger (https://jamesmessinger.com) - * @license MIT - */ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.SwaggerParser = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 1) { - throw ono.syntax( - "Validation failed. %s has %d body parameters. Only one is allowed.", - operationId, bodyParams.length - ); - } - else if (bodyParams.length > 0 && formParams.length > 0) { - // "body" params and "formData" params are mutually exclusive - throw ono.syntax( - "Validation failed. %s has body parameters and formData parameters. Only one or the other is allowed.", - operationId - ); - } -} - -/** - * Validates path parameters for the given path. - * - * @param {object[]} params - An array of Parameter objects - * @param {string} pathId - A value that uniquely identifies the path - * @param {string} operationId - A value that uniquely identifies the operation - */ -function validatePathParameters (params, pathId, operationId) { - // Find all {placeholders} in the path string - var placeholders = pathId.match(util.swaggerParamRegExp) || []; - - // Check for duplicates - for (var i = 0; i < placeholders.length; i++) { - for (var j = i + 1; j < placeholders.length; j++) { - if (placeholders[i] === placeholders[j]) { - throw ono.syntax( - "Validation failed. %s has multiple path placeholders named %s", operationId, placeholders[i]); - } - } - } - - params - .filter(function (param) { return param.in === "path"; }) - .forEach(function (param) { - if (param.required !== true) { - throw ono.syntax( - 'Validation failed. Path parameters cannot be optional. Set required=true for the "%s" parameter at %s', - param.name, - operationId - ); - } - var match = placeholders.indexOf("{" + param.name + "}"); - if (match === -1) { - throw ono.syntax( - 'Validation failed. %s has a path parameter named "%s", ' + - "but there is no corresponding {%s} in the path string", - operationId, - param.name, - param.name - ); - } - placeholders.splice(match, 1); - }); - - if (placeholders.length > 0) { - throw ono.syntax("Validation failed. %s is missing path parameter(s) for %s", operationId, placeholders); - } -} - -/** - * Validates data types of parameters for the given operation. - * - * @param {object[]} params - An array of Parameter objects - * @param {object} api - The entire Swagger API object - * @param {object} operation - An Operation object, from the Swagger API - * @param {string} operationId - A value that uniquely identifies the operation - */ -function validateParameterTypes (params, api, operation, operationId) { - params.forEach(function (param) { - var parameterId = operationId + "/parameters/" + param.name; - var schema, validTypes; - - switch (param.in) { - case "body": - schema = param.schema; - validTypes = schemaTypes; - break; - case "formData": - schema = param; - validTypes = primitiveTypes.concat("file"); - break; - default: - schema = param; - validTypes = primitiveTypes; - } - - validateSchema(schema, parameterId, validTypes); - validateRequiredPropertiesExist(schema, parameterId); - - if (schema.type === "file") { - // "file" params must consume at least one of these MIME types - var formData = /multipart\/(.*\+)?form-data/; - var urlEncoded = /application\/(.*\+)?x-www-form-urlencoded/; - - var consumes = operation.consumes || api.consumes || []; - - var hasValidMimeType = consumes.some(function (consume) { - return formData.test(consume) || urlEncoded.test(consume); - }); - - if (!hasValidMimeType) { - throw ono.syntax( - "Validation failed. %s has a file parameter, so it must consume multipart/form-data " + - "or application/x-www-form-urlencoded", - operationId - ); - } - } - }); -} - -/** - * Checks the given parameter list for duplicates, and throws an error if found. - * - * @param {object[]} params - An array of Parameter objects - */ -function checkForDuplicates (params) { - for (var i = 0; i < params.length - 1; i++) { - var outer = params[i]; - for (var j = i + 1; j < params.length; j++) { - var inner = params[j]; - if (outer.name === inner.name && outer.in === inner.in) { - throw ono.syntax('Validation failed. Found multiple %s parameters named "%s"', outer.in, outer.name); - } - } - } -} - -/** - * Validates the given response object. - * - * @param {string} code - The HTTP response code (or "default") - * @param {object} response - A Response object, from the Swagger API - * @param {string} responseId - A value that uniquely identifies the response - */ -function validateResponse (code, response, responseId) { - if (code !== "default" && (code < 100 || code > 599)) { - throw ono.syntax("Validation failed. %s has an invalid response code (%s)", responseId, code); - } - - var headers = Object.keys(response.headers || {}); - headers.forEach(function (headerName) { - var header = response.headers[headerName]; - var headerId = responseId + "/headers/" + headerName; - validateSchema(header, headerId, primitiveTypes); - }); - - if (response.schema) { - var validTypes = schemaTypes.concat("file"); - if (validTypes.indexOf(response.schema.type) === -1) { - throw ono.syntax( - "Validation failed. %s has an invalid response schema type (%s)", responseId, response.schema.type); - } - else { - validateSchema(response.schema, responseId + "/schema", validTypes); - } - } -} - -/** - * Validates the given Swagger schema object. - * - * @param {object} schema - A Schema object, from the Swagger API - * @param {string} schemaId - A value that uniquely identifies the schema object - * @param {string[]} validTypes - An array of the allowed schema types - */ -function validateSchema (schema, schemaId, validTypes) { - if (validTypes.indexOf(schema.type) === -1) { - throw ono.syntax( - "Validation failed. %s has an invalid type (%s)", schemaId, schema.type); - } - - if (schema.type === "array" && !schema.items) { - throw ono.syntax('Validation failed. %s is an array, so it must include an "items" schema', schemaId); - } -} - -/** - * Validates that the declared properties of the given Swagger schema object actually exist. - * - * @param {object} schema - A Schema object, from the Swagger API - * @param {string} schemaId - A value that uniquely identifies the schema object - */ -function validateRequiredPropertiesExist (schema, schemaId) { - /** - * Recursively collects all properties of the schema and its ancestors. They are added to the props object. - */ - function collectProperties (schemaObj, props) { - if (schemaObj.properties) { - for (var property in schemaObj.properties) { - if (schemaObj.properties.hasOwnProperty(property)) { - props[property] = schemaObj.properties[property]; - } - } - } - if (schemaObj.allOf) { - schemaObj.allOf.forEach(function (parent) { - collectProperties(parent, props); - }); - } - } - - if (schema.required && Array.isArray(schema.required)) { - var props = {}; - collectProperties(schema, props); - schema.required.forEach(function (requiredProperty) { - if (!props[requiredProperty]) { - throw ono.syntax("Validation failed. Property '%s' listed as required but does not exist in '%s'", - requiredProperty, schemaId); - } - }); - } -} - -},{"../util":3,"ono":122,"swagger-methods":144}],6:[function(require,module,exports){ -'use strict' - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -// Support decoding URL-safe base64 strings, as Node.js does. -// See: https://en.wikipedia.org/wiki/Base64#URL_applications -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function getLens (b64) { - var len = b64.length - - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf('=') - if (validLen === -1) validLen = len - - var placeHoldersLen = validLen === len - ? 0 - : 4 - (validLen % 4) - - return [validLen, placeHoldersLen] -} - -// base64 is 4/3 + up to two characters of the original data -function byteLength (b64) { - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function _byteLength (b64, validLen, placeHoldersLen) { - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function toByteArray (b64) { - var tmp - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - - var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) - - var curByte = 0 - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 - ? validLen - 4 - : validLen - - for (var i = 0; i < len; i += 4) { - tmp = - (revLookup[b64.charCodeAt(i)] << 18) | - (revLookup[b64.charCodeAt(i + 1)] << 12) | - (revLookup[b64.charCodeAt(i + 2)] << 6) | - revLookup[b64.charCodeAt(i + 3)] - arr[curByte++] = (tmp >> 16) & 0xFF - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 2) { - tmp = - (revLookup[b64.charCodeAt(i)] << 2) | - (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 1) { - tmp = - (revLookup[b64.charCodeAt(i)] << 10) | - (revLookup[b64.charCodeAt(i + 1)] << 4) | - (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + - lookup[num >> 12 & 0x3F] + - lookup[num >> 6 & 0x3F] + - lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = - ((uint8[i] << 16) & 0xFF0000) + - ((uint8[i + 1] << 8) & 0xFF00) + - (uint8[i + 2] & 0xFF) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk( - uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) - )) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - parts.push( - lookup[tmp >> 2] + - lookup[(tmp << 4) & 0x3F] + - '==' - ) - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + uint8[len - 1] - parts.push( - lookup[tmp >> 10] + - lookup[(tmp >> 4) & 0x3F] + - lookup[(tmp << 2) & 0x3F] + - '=' - ) - } - - return parts.join('') -} - -},{}],7:[function(require,module,exports){ - -},{}],8:[function(require,module,exports){ -(function (global){ -/*! https://mths.be/punycode v1.4.1 by @mathias */ -;(function(root) { - - /** Detect free variables */ - var freeExports = typeof exports == 'object' && exports && - !exports.nodeType && exports; - var freeModule = typeof module == 'object' && module && - !module.nodeType && module; - var freeGlobal = typeof global == 'object' && global; - if ( - freeGlobal.global === freeGlobal || - freeGlobal.window === freeGlobal || - freeGlobal.self === freeGlobal - ) { - root = freeGlobal; - } - - /** - * The `punycode` object. - * @name punycode - * @type Object - */ - var punycode, - - /** Highest positive signed 32-bit float value */ - maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 - - /** Bootstring parameters */ - base = 36, - tMin = 1, - tMax = 26, - skew = 38, - damp = 700, - initialBias = 72, - initialN = 128, // 0x80 - delimiter = '-', // '\x2D' - - /** Regular expressions */ - regexPunycode = /^xn--/, - regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars - regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators - - /** Error messages */ - errors = { - 'overflow': 'Overflow: input needs wider integers to process', - 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', - 'invalid-input': 'Invalid input' - }, - - /** Convenience shortcuts */ - baseMinusTMin = base - tMin, - floor = Math.floor, - stringFromCharCode = String.fromCharCode, - - /** Temporary variable */ - key; - - /*--------------------------------------------------------------------------*/ - - /** - * A generic error utility function. - * @private - * @param {String} type The error type. - * @returns {Error} Throws a `RangeError` with the applicable error message. - */ - function error(type) { - throw new RangeError(errors[type]); - } - - /** - * A generic `Array#map` utility function. - * @private - * @param {Array} array The array to iterate over. - * @param {Function} callback The function that gets called for every array - * item. - * @returns {Array} A new array of values returned by the callback function. - */ - function map(array, fn) { - var length = array.length; - var result = []; - while (length--) { - result[length] = fn(array[length]); - } - return result; - } - - /** - * A simple `Array#map`-like wrapper to work with domain name strings or email - * addresses. - * @private - * @param {String} domain The domain name or email address. - * @param {Function} callback The function that gets called for every - * character. - * @returns {Array} A new string of characters returned by the callback - * function. - */ - function mapDomain(string, fn) { - var parts = string.split('@'); - var result = ''; - if (parts.length > 1) { - // In email addresses, only the domain name should be punycoded. Leave - // the local part (i.e. everything up to `@`) intact. - result = parts[0] + '@'; - string = parts[1]; - } - // Avoid `split(regex)` for IE8 compatibility. See #17. - string = string.replace(regexSeparators, '\x2E'); - var labels = string.split('.'); - var encoded = map(labels, fn).join('.'); - return result + encoded; - } - - /** - * Creates an array containing the numeric code points of each Unicode - * character in the string. While JavaScript uses UCS-2 internally, - * this function will convert a pair of surrogate halves (each of which - * UCS-2 exposes as separate characters) into a single code point, - * matching UTF-16. - * @see `punycode.ucs2.encode` - * @see - * @memberOf punycode.ucs2 - * @name decode - * @param {String} string The Unicode input string (UCS-2). - * @returns {Array} The new array of code points. - */ - function ucs2decode(string) { - var output = [], - counter = 0, - length = string.length, - value, - extra; - while (counter < length) { - value = string.charCodeAt(counter++); - if (value >= 0xD800 && value <= 0xDBFF && counter < length) { - // high surrogate, and there is a next character - extra = string.charCodeAt(counter++); - if ((extra & 0xFC00) == 0xDC00) { // low surrogate - output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); - } else { - // unmatched surrogate; only append this code unit, in case the next - // code unit is the high surrogate of a surrogate pair - output.push(value); - counter--; - } - } else { - output.push(value); - } - } - return output; - } - - /** - * Creates a string based on an array of numeric code points. - * @see `punycode.ucs2.decode` - * @memberOf punycode.ucs2 - * @name encode - * @param {Array} codePoints The array of numeric code points. - * @returns {String} The new Unicode string (UCS-2). - */ - function ucs2encode(array) { - return map(array, function(value) { - var output = ''; - if (value > 0xFFFF) { - value -= 0x10000; - output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); - value = 0xDC00 | value & 0x3FF; - } - output += stringFromCharCode(value); - return output; - }).join(''); - } - - /** - * Converts a basic code point into a digit/integer. - * @see `digitToBasic()` - * @private - * @param {Number} codePoint The basic numeric code point value. - * @returns {Number} The numeric value of a basic code point (for use in - * representing integers) in the range `0` to `base - 1`, or `base` if - * the code point does not represent a value. - */ - function basicToDigit(codePoint) { - if (codePoint - 48 < 10) { - return codePoint - 22; - } - if (codePoint - 65 < 26) { - return codePoint - 65; - } - if (codePoint - 97 < 26) { - return codePoint - 97; - } - return base; - } - - /** - * Converts a digit/integer into a basic code point. - * @see `basicToDigit()` - * @private - * @param {Number} digit The numeric value of a basic code point. - * @returns {Number} The basic code point whose value (when used for - * representing integers) is `digit`, which needs to be in the range - * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is - * used; else, the lowercase form is used. The behavior is undefined - * if `flag` is non-zero and `digit` has no uppercase form. - */ - function digitToBasic(digit, flag) { - // 0..25 map to ASCII a..z or A..Z - // 26..35 map to ASCII 0..9 - return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); - } - - /** - * Bias adaptation function as per section 3.4 of RFC 3492. - * https://tools.ietf.org/html/rfc3492#section-3.4 - * @private - */ - function adapt(delta, numPoints, firstTime) { - var k = 0; - delta = firstTime ? floor(delta / damp) : delta >> 1; - delta += floor(delta / numPoints); - for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { - delta = floor(delta / baseMinusTMin); - } - return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); - } - - /** - * Converts a Punycode string of ASCII-only symbols to a string of Unicode - * symbols. - * @memberOf punycode - * @param {String} input The Punycode string of ASCII-only symbols. - * @returns {String} The resulting string of Unicode symbols. - */ - function decode(input) { - // Don't use UCS-2 - var output = [], - inputLength = input.length, - out, - i = 0, - n = initialN, - bias = initialBias, - basic, - j, - index, - oldi, - w, - k, - digit, - t, - /** Cached calculation results */ - baseMinusT; - - // Handle the basic code points: let `basic` be the number of input code - // points before the last delimiter, or `0` if there is none, then copy - // the first basic code points to the output. - - basic = input.lastIndexOf(delimiter); - if (basic < 0) { - basic = 0; - } - - for (j = 0; j < basic; ++j) { - // if it's not a basic code point - if (input.charCodeAt(j) >= 0x80) { - error('not-basic'); - } - output.push(input.charCodeAt(j)); - } - - // Main decoding loop: start just after the last delimiter if any basic code - // points were copied; start at the beginning otherwise. - - for (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { - - // `index` is the index of the next character to be consumed. - // Decode a generalized variable-length integer into `delta`, - // which gets added to `i`. The overflow checking is easier - // if we increase `i` as we go, then subtract off its starting - // value at the end to obtain `delta`. - for (oldi = i, w = 1, k = base; /* no condition */; k += base) { - - if (index >= inputLength) { - error('invalid-input'); - } - - digit = basicToDigit(input.charCodeAt(index++)); - - if (digit >= base || digit > floor((maxInt - i) / w)) { - error('overflow'); - } - - i += digit * w; - t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); - - if (digit < t) { - break; - } - - baseMinusT = base - t; - if (w > floor(maxInt / baseMinusT)) { - error('overflow'); - } - - w *= baseMinusT; - - } - - out = output.length + 1; - bias = adapt(i - oldi, out, oldi == 0); - - // `i` was supposed to wrap around from `out` to `0`, - // incrementing `n` each time, so we'll fix that now: - if (floor(i / out) > maxInt - n) { - error('overflow'); - } - - n += floor(i / out); - i %= out; - - // Insert `n` at position `i` of the output - output.splice(i++, 0, n); - - } - - return ucs2encode(output); - } - - /** - * Converts a string of Unicode symbols (e.g. a domain name label) to a - * Punycode string of ASCII-only symbols. - * @memberOf punycode - * @param {String} input The string of Unicode symbols. - * @returns {String} The resulting Punycode string of ASCII-only symbols. - */ - function encode(input) { - var n, - delta, - handledCPCount, - basicLength, - bias, - j, - m, - q, - k, - t, - currentValue, - output = [], - /** `inputLength` will hold the number of code points in `input`. */ - inputLength, - /** Cached calculation results */ - handledCPCountPlusOne, - baseMinusT, - qMinusT; - - // Convert the input in UCS-2 to Unicode - input = ucs2decode(input); - - // Cache the length - inputLength = input.length; - - // Initialize the state - n = initialN; - delta = 0; - bias = initialBias; - - // Handle the basic code points - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue < 0x80) { - output.push(stringFromCharCode(currentValue)); - } - } - - handledCPCount = basicLength = output.length; - - // `handledCPCount` is the number of code points that have been handled; - // `basicLength` is the number of basic code points. - - // Finish the basic string - if it is not empty - with a delimiter - if (basicLength) { - output.push(delimiter); - } - - // Main encoding loop: - while (handledCPCount < inputLength) { - - // All non-basic code points < n have been handled already. Find the next - // larger one: - for (m = maxInt, j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue >= n && currentValue < m) { - m = currentValue; - } - } - - // Increase `delta` enough to advance the decoder's state to , - // but guard against overflow - handledCPCountPlusOne = handledCPCount + 1; - if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { - error('overflow'); - } - - delta += (m - n) * handledCPCountPlusOne; - n = m; - - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - - if (currentValue < n && ++delta > maxInt) { - error('overflow'); - } - - if (currentValue == n) { - // Represent delta as a generalized variable-length integer - for (q = delta, k = base; /* no condition */; k += base) { - t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); - if (q < t) { - break; - } - qMinusT = q - t; - baseMinusT = base - t; - output.push( - stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) - ); - q = floor(qMinusT / baseMinusT); - } - - output.push(stringFromCharCode(digitToBasic(q, 0))); - bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); - delta = 0; - ++handledCPCount; - } - } - - ++delta; - ++n; - - } - return output.join(''); - } - - /** - * Converts a Punycode string representing a domain name or an email address - * to Unicode. Only the Punycoded parts of the input will be converted, i.e. - * it doesn't matter if you call it on a string that has already been - * converted to Unicode. - * @memberOf punycode - * @param {String} input The Punycoded domain name or email address to - * convert to Unicode. - * @returns {String} The Unicode representation of the given Punycode - * string. - */ - function toUnicode(input) { - return mapDomain(input, function(string) { - return regexPunycode.test(string) - ? decode(string.slice(4).toLowerCase()) - : string; - }); - } - - /** - * Converts a Unicode string representing a domain name or an email address to - * Punycode. Only the non-ASCII parts of the domain name will be converted, - * i.e. it doesn't matter if you call it with a domain that's already in - * ASCII. - * @memberOf punycode - * @param {String} input The domain name or email address to convert, as a - * Unicode string. - * @returns {String} The Punycode representation of the given domain name or - * email address. - */ - function toASCII(input) { - return mapDomain(input, function(string) { - return regexNonASCII.test(string) - ? 'xn--' + encode(string) - : string; - }); - } - - /*--------------------------------------------------------------------------*/ - - /** Define the public API */ - punycode = { - /** - * A string representing the current Punycode.js version number. - * @memberOf punycode - * @type String - */ - 'version': '1.4.1', - /** - * An object of methods to convert from JavaScript's internal character - * representation (UCS-2) to Unicode code points, and back. - * @see - * @memberOf punycode - * @type Object - */ - 'ucs2': { - 'decode': ucs2decode, - 'encode': ucs2encode - }, - 'decode': decode, - 'encode': encode, - 'toASCII': toASCII, - 'toUnicode': toUnicode - }; - - /** Expose `punycode` */ - // Some AMD build optimizers, like r.js, check for specific condition patterns - // like the following: - if ( - typeof define == 'function' && - typeof define.amd == 'object' && - define.amd - ) { - define('punycode', function() { - return punycode; - }); - } else if (freeExports && freeModule) { - if (module.exports == freeExports) { - // in Node.js, io.js, or RingoJS v0.8.0+ - freeModule.exports = punycode; - } else { - // in Narwhal or RingoJS v0.7.0- - for (key in punycode) { - punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]); - } - } - } else { - // in Rhino or a web browser - root.punycode = punycode; - } - -}(this)); - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],9:[function(require,module,exports){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -/* eslint-disable no-proto */ - -'use strict' - -var base64 = require('base64-js') -var ieee754 = require('ieee754') - -exports.Buffer = Buffer -exports.SlowBuffer = SlowBuffer -exports.INSPECT_MAX_BYTES = 50 - -var K_MAX_LENGTH = 0x7fffffff -exports.kMaxLength = K_MAX_LENGTH - -/** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Print warning and recommend using `buffer` v4.x which has an Object - * implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * We report that the browser does not support typed arrays if the are not subclassable - * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array` - * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support - * for __proto__ and has a buggy typed array implementation. - */ -Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport() - -if (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' && - typeof console.error === 'function') { - console.error( - 'This browser lacks typed array (Uint8Array) support which is required by ' + - '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.' - ) -} - -function typedArraySupport () { - // Can typed array instances can be augmented? - try { - var arr = new Uint8Array(1) - arr.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } } - return arr.foo() === 42 - } catch (e) { - return false - } -} - -Object.defineProperty(Buffer.prototype, 'parent', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.buffer - } -}) - -Object.defineProperty(Buffer.prototype, 'offset', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined - return this.byteOffset - } -}) - -function createBuffer (length) { - if (length > K_MAX_LENGTH) { - throw new RangeError('The value "' + length + '" is invalid for option "size"') - } - // Return an augmented `Uint8Array` instance - var buf = new Uint8Array(length) - buf.__proto__ = Buffer.prototype - return buf -} - -/** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - -function Buffer (arg, encodingOrOffset, length) { - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new TypeError( - 'The "string" argument must be of type string. Received type number' - ) - } - return allocUnsafe(arg) - } - return from(arg, encodingOrOffset, length) -} - -// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 -if (typeof Symbol !== 'undefined' && Symbol.species != null && - Buffer[Symbol.species] === Buffer) { - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true, - enumerable: false, - writable: false - }) -} - -Buffer.poolSize = 8192 // not used by this implementation - -function from (value, encodingOrOffset, length) { - if (typeof value === 'string') { - return fromString(value, encodingOrOffset) - } - - if (ArrayBuffer.isView(value)) { - return fromArrayLike(value) - } - - if (value == null) { - throw TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) - } - - if (isInstance(value, ArrayBuffer) || - (value && isInstance(value.buffer, ArrayBuffer))) { - return fromArrayBuffer(value, encodingOrOffset, length) - } - - if (typeof value === 'number') { - throw new TypeError( - 'The "value" argument must not be of type number. Received type number' - ) - } - - var valueOf = value.valueOf && value.valueOf() - if (valueOf != null && valueOf !== value) { - return Buffer.from(valueOf, encodingOrOffset, length) - } - - var b = fromObject(value) - if (b) return b - - if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null && - typeof value[Symbol.toPrimitive] === 'function') { - return Buffer.from( - value[Symbol.toPrimitive]('string'), encodingOrOffset, length - ) - } - - throw new TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + (typeof value) - ) -} - -/** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ -Buffer.from = function (value, encodingOrOffset, length) { - return from(value, encodingOrOffset, length) -} - -// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug: -// https://github.com/feross/buffer/pull/148 -Buffer.prototype.__proto__ = Uint8Array.prototype -Buffer.__proto__ = Uint8Array - -function assertSize (size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be of type number') - } else if (size < 0) { - throw new RangeError('The value "' + size + '" is invalid for option "size"') - } -} - -function alloc (size, fill, encoding) { - assertSize(size) - if (size <= 0) { - return createBuffer(size) - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(size).fill(fill, encoding) - : createBuffer(size).fill(fill) - } - return createBuffer(size) -} - -/** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ -Buffer.alloc = function (size, fill, encoding) { - return alloc(size, fill, encoding) -} - -function allocUnsafe (size) { - assertSize(size) - return createBuffer(size < 0 ? 0 : checked(size) | 0) -} - -/** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ -Buffer.allocUnsafe = function (size) { - return allocUnsafe(size) -} -/** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ -Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(size) -} - -function fromString (string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8' - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - - var length = byteLength(string, encoding) | 0 - var buf = createBuffer(length) - - var actual = buf.write(string, encoding) - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - buf = buf.slice(0, actual) - } - - return buf -} - -function fromArrayLike (array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0 - var buf = createBuffer(length) - for (var i = 0; i < length; i += 1) { - buf[i] = array[i] & 255 - } - return buf -} - -function fromArrayBuffer (array, byteOffset, length) { - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('"offset" is outside of buffer bounds') - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('"length" is outside of buffer bounds') - } - - var buf - if (byteOffset === undefined && length === undefined) { - buf = new Uint8Array(array) - } else if (length === undefined) { - buf = new Uint8Array(array, byteOffset) - } else { - buf = new Uint8Array(array, byteOffset, length) - } - - // Return an augmented `Uint8Array` instance - buf.__proto__ = Buffer.prototype - return buf -} - -function fromObject (obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0 - var buf = createBuffer(len) - - if (buf.length === 0) { - return buf - } - - obj.copy(buf, 0, 0, len) - return buf - } - - if (obj.length !== undefined) { - if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) { - return createBuffer(0) - } - return fromArrayLike(obj) - } - - if (obj.type === 'Buffer' && Array.isArray(obj.data)) { - return fromArrayLike(obj.data) - } -} - -function checked (length) { - // Note: cannot use `length < K_MAX_LENGTH` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= K_MAX_LENGTH) { - throw new RangeError('Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes') - } - return length | 0 -} - -function SlowBuffer (length) { - if (+length != length) { // eslint-disable-line eqeqeq - length = 0 - } - return Buffer.alloc(+length) -} - -Buffer.isBuffer = function isBuffer (b) { - return b != null && b._isBuffer === true && - b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false -} - -Buffer.compare = function compare (a, b) { - if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength) - if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength) - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' - ) - } - - if (a === b) return 0 - - var x = a.length - var y = b.length - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i] - y = b[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -Buffer.isEncoding = function isEncoding (encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true - default: - return false - } -} - -Buffer.concat = function concat (list, length) { - if (!Array.isArray(list)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - - if (list.length === 0) { - return Buffer.alloc(0) - } - - var i - if (length === undefined) { - length = 0 - for (i = 0; i < list.length; ++i) { - length += list[i].length - } - } - - var buffer = Buffer.allocUnsafe(length) - var pos = 0 - for (i = 0; i < list.length; ++i) { - var buf = list[i] - if (isInstance(buf, Uint8Array)) { - buf = Buffer.from(buf) - } - if (!Buffer.isBuffer(buf)) { - throw new TypeError('"list" argument must be an Array of Buffers') - } - buf.copy(buffer, pos) - pos += buf.length - } - return buffer -} - -function byteLength (string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length - } - if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) { - return string.byteLength - } - if (typeof string !== 'string') { - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' + - 'Received type ' + typeof string - ) - } - - var len = string.length - var mustMatch = (arguments.length > 2 && arguments[2] === true) - if (!mustMatch && len === 0) return 0 - - // Use a for loop to avoid recursion - var loweredCase = false - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len - case 'utf8': - case 'utf-8': - return utf8ToBytes(string).length - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2 - case 'hex': - return len >>> 1 - case 'base64': - return base64ToBytes(string).length - default: - if (loweredCase) { - return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8 - } - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} -Buffer.byteLength = byteLength - -function slowToString (encoding, start, end) { - var loweredCase = false - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0 - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return '' - } - - if (end === undefined || end > this.length) { - end = this.length - } - - if (end <= 0) { - return '' - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0 - start >>>= 0 - - if (end <= start) { - return '' - } - - if (!encoding) encoding = 'utf8' - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end) - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end) - - case 'ascii': - return asciiSlice(this, start, end) - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end) - - case 'base64': - return base64Slice(this, start, end) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = (encoding + '').toLowerCase() - loweredCase = true - } - } -} - -// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package) -// to detect a Buffer instance. It's not possible to use `instanceof Buffer` -// reliably in a browserify context because there could be multiple different -// copies of the 'buffer' package in use. This method works even for Buffer -// instances that were created from another copy of the `buffer` package. -// See: https://github.com/feross/buffer/issues/154 -Buffer.prototype._isBuffer = true - -function swap (b, n, m) { - var i = b[n] - b[n] = b[m] - b[m] = i -} - -Buffer.prototype.swap16 = function swap16 () { - var len = this.length - if (len % 2 !== 0) { - throw new RangeError('Buffer size must be a multiple of 16-bits') - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1) - } - return this -} - -Buffer.prototype.swap32 = function swap32 () { - var len = this.length - if (len % 4 !== 0) { - throw new RangeError('Buffer size must be a multiple of 32-bits') - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3) - swap(this, i + 1, i + 2) - } - return this -} - -Buffer.prototype.swap64 = function swap64 () { - var len = this.length - if (len % 8 !== 0) { - throw new RangeError('Buffer size must be a multiple of 64-bits') - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7) - swap(this, i + 1, i + 6) - swap(this, i + 2, i + 5) - swap(this, i + 3, i + 4) - } - return this -} - -Buffer.prototype.toString = function toString () { - var length = this.length - if (length === 0) return '' - if (arguments.length === 0) return utf8Slice(this, 0, length) - return slowToString.apply(this, arguments) -} - -Buffer.prototype.toLocaleString = Buffer.prototype.toString - -Buffer.prototype.equals = function equals (b) { - if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') - if (this === b) return true - return Buffer.compare(this, b) === 0 -} - -Buffer.prototype.inspect = function inspect () { - var str = '' - var max = exports.INSPECT_MAX_BYTES - str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim() - if (this.length > max) str += ' ... ' - return '' -} - -Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { - if (isInstance(target, Uint8Array)) { - target = Buffer.from(target, target.offset, target.byteLength) - } - if (!Buffer.isBuffer(target)) { - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. ' + - 'Received type ' + (typeof target) - ) - } - - if (start === undefined) { - start = 0 - } - if (end === undefined) { - end = target ? target.length : 0 - } - if (thisStart === undefined) { - thisStart = 0 - } - if (thisEnd === undefined) { - thisEnd = this.length - } - - if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { - throw new RangeError('out of range index') - } - - if (thisStart >= thisEnd && start >= end) { - return 0 - } - if (thisStart >= thisEnd) { - return -1 - } - if (start >= end) { - return 1 - } - - start >>>= 0 - end >>>= 0 - thisStart >>>= 0 - thisEnd >>>= 0 - - if (this === target) return 0 - - var x = thisEnd - thisStart - var y = end - start - var len = Math.min(x, y) - - var thisCopy = this.slice(thisStart, thisEnd) - var targetCopy = target.slice(start, end) - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i] - y = targetCopy[i] - break - } - } - - if (x < y) return -1 - if (y < x) return 1 - return 0 -} - -// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, -// OR the last index of `val` in `buffer` at offset <= `byteOffset`. -// -// Arguments: -// - buffer - a Buffer to search -// - val - a string, Buffer, or number -// - byteOffset - an index into `buffer`; will be clamped to an int32 -// - encoding - an optional encoding, relevant is val is a string -// - dir - true for indexOf, false for lastIndexOf -function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { - // Empty buffer means no match - if (buffer.length === 0) return -1 - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset - byteOffset = 0 - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000 - } - byteOffset = +byteOffset // Coerce to Number. - if (numberIsNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : (buffer.length - 1) - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset - if (byteOffset >= buffer.length) { - if (dir) return -1 - else byteOffset = buffer.length - 1 - } else if (byteOffset < 0) { - if (dir) byteOffset = 0 - else return -1 - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding) - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1 - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir) - } else if (typeof val === 'number') { - val = val & 0xFF // Search for a byte value [0-255] - if (typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) - } else { - return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) - } - } - return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) - } - - throw new TypeError('val must be string, number or Buffer') -} - -function arrayIndexOf (arr, val, byteOffset, encoding, dir) { - var indexSize = 1 - var arrLength = arr.length - var valLength = val.length - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase() - if (encoding === 'ucs2' || encoding === 'ucs-2' || - encoding === 'utf16le' || encoding === 'utf-16le') { - if (arr.length < 2 || val.length < 2) { - return -1 - } - indexSize = 2 - arrLength /= 2 - valLength /= 2 - byteOffset /= 2 - } - } - - function read (buf, i) { - if (indexSize === 1) { - return buf[i] - } else { - return buf.readUInt16BE(i * indexSize) - } - } - - var i - if (dir) { - var foundIndex = -1 - for (i = byteOffset; i < arrLength; i++) { - if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { - if (foundIndex === -1) foundIndex = i - if (i - foundIndex + 1 === valLength) return foundIndex * indexSize - } else { - if (foundIndex !== -1) i -= i - foundIndex - foundIndex = -1 - } - } - } else { - if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength - for (i = byteOffset; i >= 0; i--) { - var found = true - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false - break - } - } - if (found) return i - } - } - - return -1 -} - -Buffer.prototype.includes = function includes (val, byteOffset, encoding) { - return this.indexOf(val, byteOffset, encoding) !== -1 -} - -Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, true) -} - -Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { - return bidirectionalIndexOf(this, val, byteOffset, encoding, false) -} - -function hexWrite (buf, string, offset, length) { - offset = Number(offset) || 0 - var remaining = buf.length - offset - if (!length) { - length = remaining - } else { - length = Number(length) - if (length > remaining) { - length = remaining - } - } - - var strLen = string.length - - if (length > strLen / 2) { - length = strLen / 2 - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16) - if (numberIsNaN(parsed)) return i - buf[offset + i] = parsed - } - return i -} - -function utf8Write (buf, string, offset, length) { - return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) -} - -function asciiWrite (buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length) -} - -function latin1Write (buf, string, offset, length) { - return asciiWrite(buf, string, offset, length) -} - -function base64Write (buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length) -} - -function ucs2Write (buf, string, offset, length) { - return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) -} - -Buffer.prototype.write = function write (string, offset, length, encoding) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8' - length = this.length - offset = 0 - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset - length = this.length - offset = 0 - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset >>> 0 - if (isFinite(length)) { - length = length >>> 0 - if (encoding === undefined) encoding = 'utf8' - } else { - encoding = length - length = undefined - } - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported' - ) - } - - var remaining = this.length - offset - if (length === undefined || length > remaining) length = remaining - - if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { - throw new RangeError('Attempt to write outside buffer bounds') - } - - if (!encoding) encoding = 'utf8' - - var loweredCase = false - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length) - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length) - - case 'ascii': - return asciiWrite(this, string, offset, length) - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length) - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length) - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length) - - default: - if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) - encoding = ('' + encoding).toLowerCase() - loweredCase = true - } - } -} - -Buffer.prototype.toJSON = function toJSON () { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0) - } -} - -function base64Slice (buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf) - } else { - return base64.fromByteArray(buf.slice(start, end)) - } -} - -function utf8Slice (buf, start, end) { - end = Math.min(buf.length, end) - var res = [] - - var i = start - while (i < end) { - var firstByte = buf[i] - var codePoint = null - var bytesPerSequence = (firstByte > 0xEF) ? 4 - : (firstByte > 0xDF) ? 3 - : (firstByte > 0xBF) ? 2 - : 1 - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte - } - break - case 2: - secondByte = buf[i + 1] - if ((secondByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) - if (tempCodePoint > 0x7F) { - codePoint = tempCodePoint - } - } - break - case 3: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) - if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { - codePoint = tempCodePoint - } - } - break - case 4: - secondByte = buf[i + 1] - thirdByte = buf[i + 2] - fourthByte = buf[i + 3] - if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { - tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) - if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { - codePoint = tempCodePoint - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xFFFD - bytesPerSequence = 1 - } else if (codePoint > 0xFFFF) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000 - res.push(codePoint >>> 10 & 0x3FF | 0xD800) - codePoint = 0xDC00 | codePoint & 0x3FF - } - - res.push(codePoint) - i += bytesPerSequence - } - - return decodeCodePointsArray(res) -} - -// Based on http://stackoverflow.com/a/22747272/680742, the browser with -// the lowest limit is Chrome, with 0x10000 args. -// We go 1 magnitude less, for safety -var MAX_ARGUMENTS_LENGTH = 0x1000 - -function decodeCodePointsArray (codePoints) { - var len = codePoints.length - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints) // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = '' - var i = 0 - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) - ) - } - return res -} - -function asciiSlice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7F) - } - return ret -} - -function latin1Slice (buf, start, end) { - var ret = '' - end = Math.min(buf.length, end) - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]) - } - return ret -} - -function hexSlice (buf, start, end) { - var len = buf.length - - if (!start || start < 0) start = 0 - if (!end || end < 0 || end > len) end = len - - var out = '' - for (var i = start; i < end; ++i) { - out += toHex(buf[i]) - } - return out -} - -function utf16leSlice (buf, start, end) { - var bytes = buf.slice(start, end) - var res = '' - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256)) - } - return res -} - -Buffer.prototype.slice = function slice (start, end) { - var len = this.length - start = ~~start - end = end === undefined ? len : ~~end - - if (start < 0) { - start += len - if (start < 0) start = 0 - } else if (start > len) { - start = len - } - - if (end < 0) { - end += len - if (end < 0) end = 0 - } else if (end > len) { - end = len - } - - if (end < start) end = start - - var newBuf = this.subarray(start, end) - // Return an augmented `Uint8Array` instance - newBuf.__proto__ = Buffer.prototype - return newBuf -} - -/* - * Need to make sure that buffer isn't trying to write out of bounds. - */ -function checkOffset (offset, ext, length) { - if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') - if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') -} - -Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - - return val -} - -Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - checkOffset(offset, byteLength, this.length) - } - - var val = this[offset + --byteLength] - var mul = 1 - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul - } - - return val -} - -Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - return this[offset] -} - -Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return this[offset] | (this[offset + 1] << 8) -} - -Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - return (this[offset] << 8) | this[offset + 1] -} - -Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return ((this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - (this[offset + 3] * 0x1000000) -} - -Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] * 0x1000000) + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) -} - -Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var val = this[offset] - var mul = 1 - var i = 0 - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) checkOffset(offset, byteLength, this.length) - - var i = byteLength - var mul = 1 - var val = this[offset + --i] - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul - } - mul *= 0x80 - - if (val >= mul) val -= Math.pow(2, 8 * byteLength) - - return val -} - -Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 1, this.length) - if (!(this[offset] & 0x80)) return (this[offset]) - return ((0xff - this[offset] + 1) * -1) -} - -Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset] | (this[offset + 1] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 2, this.length) - var val = this[offset + 1] | (this[offset] << 8) - return (val & 0x8000) ? val | 0xFFFF0000 : val -} - -Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset]) | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) -} - -Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - - return (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - (this[offset + 3]) -} - -Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, true, 23, 4) -} - -Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 4, this.length) - return ieee754.read(this, offset, false, 23, 4) -} - -Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, true, 52, 8) -} - -Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { - offset = offset >>> 0 - if (!noAssert) checkOffset(offset, 8, this.length) - return ieee754.read(this, offset, false, 52, 8) -} - -function checkInt (buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') - if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') - if (offset + ext > buf.length) throw new RangeError('Index out of range') -} - -Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var mul = 1 - var i = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - byteLength = byteLength >>> 0 - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1 - checkInt(this, value, offset, byteLength, maxBytes, 0) - } - - var i = byteLength - 1 - var mul = 1 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset + 3] = (value >>> 24) - this[offset + 2] = (value >>> 16) - this[offset + 1] = (value >>> 8) - this[offset] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = 0 - var mul = 1 - var sub = 0 - this[offset] = value & 0xFF - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - var limit = Math.pow(2, (8 * byteLength) - 1) - - checkInt(this, value, offset, byteLength, limit - 1, -limit) - } - - var i = byteLength - 1 - var mul = 1 - var sub = 0 - this[offset + i] = value & 0xFF - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1 - } - this[offset + i] = ((value / mul) >> 0) - sub & 0xFF - } - - return offset + byteLength -} - -Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) - if (value < 0) value = 0xff + value + 1 - this[offset] = (value & 0xff) - return offset + 1 -} - -Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - return offset + 2 -} - -Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) - this[offset] = (value >>> 8) - this[offset + 1] = (value & 0xff) - return offset + 2 -} - -Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - this[offset] = (value & 0xff) - this[offset + 1] = (value >>> 8) - this[offset + 2] = (value >>> 16) - this[offset + 3] = (value >>> 24) - return offset + 4 -} - -Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) - if (value < 0) value = 0xffffffff + value + 1 - this[offset] = (value >>> 24) - this[offset + 1] = (value >>> 16) - this[offset + 2] = (value >>> 8) - this[offset + 3] = (value & 0xff) - return offset + 4 -} - -function checkIEEE754 (buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) throw new RangeError('Index out of range') - if (offset < 0) throw new RangeError('Index out of range') -} - -function writeFloat (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) - } - ieee754.write(buf, value, offset, littleEndian, 23, 4) - return offset + 4 -} - -Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { - return writeFloat(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { - return writeFloat(this, value, offset, false, noAssert) -} - -function writeDouble (buf, value, offset, littleEndian, noAssert) { - value = +value - offset = offset >>> 0 - if (!noAssert) { - checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) - } - ieee754.write(buf, value, offset, littleEndian, 52, 8) - return offset + 8 -} - -Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { - return writeDouble(this, value, offset, true, noAssert) -} - -Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { - return writeDouble(this, value, offset, false, noAssert) -} - -// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) -Buffer.prototype.copy = function copy (target, targetStart, start, end) { - if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer') - if (!start) start = 0 - if (!end && end !== 0) end = this.length - if (targetStart >= target.length) targetStart = target.length - if (!targetStart) targetStart = 0 - if (end > 0 && end < start) end = start - - // Copy 0 bytes; we're done - if (end === start) return 0 - if (target.length === 0 || this.length === 0) return 0 - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds') - } - if (start < 0 || start >= this.length) throw new RangeError('Index out of range') - if (end < 0) throw new RangeError('sourceEnd out of bounds') - - // Are we oob? - if (end > this.length) end = this.length - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start - } - - var len = end - start - - if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') { - // Use built-in when available, missing from IE11 - this.copyWithin(targetStart, start, end) - } else if (this === target && start < targetStart && targetStart < end) { - // descending copy from end - for (var i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start] - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, end), - targetStart - ) - } - - return len -} - -// Usage: -// buffer.fill(number[, offset[, end]]) -// buffer.fill(buffer[, offset[, end]]) -// buffer.fill(string[, offset[, end]][, encoding]) -Buffer.prototype.fill = function fill (val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start - start = 0 - end = this.length - } else if (typeof end === 'string') { - encoding = end - end = this.length - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string') - } - if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding) - } - if (val.length === 1) { - var code = val.charCodeAt(0) - if ((encoding === 'utf8' && code < 128) || - encoding === 'latin1') { - // Fast path: If `val` fits into a single byte, use that numeric value. - val = code - } - } - } else if (typeof val === 'number') { - val = val & 255 - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index') - } - - if (end <= start) { - return this - } - - start = start >>> 0 - end = end === undefined ? this.length : end >>> 0 - - if (!val) val = 0 - - var i - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : Buffer.from(val, encoding) - var len = bytes.length - if (len === 0) { - throw new TypeError('The value "' + val + - '" is invalid for argument "value"') - } - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len] - } - } - - return this -} - -// HELPER FUNCTIONS -// ================ - -var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g - -function base64clean (str) { - // Node takes equal signs as end of the Base64 encoding - str = str.split('=')[0] - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = str.trim().replace(INVALID_BASE64_RE, '') - // Node converts strings with length < 2 to '' - if (str.length < 2) return '' - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '=' - } - return str -} - -function toHex (n) { - if (n < 16) return '0' + n.toString(16) - return n.toString(16) -} - -function utf8ToBytes (string, units) { - units = units || Infinity - var codePoint - var length = string.length - var leadSurrogate = null - var bytes = [] - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i) - - // is surrogate component - if (codePoint > 0xD7FF && codePoint < 0xE000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xDBFF) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - continue - } - - // valid lead - leadSurrogate = codePoint - - continue - } - - // 2 leads in a row - if (codePoint < 0xDC00) { - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - leadSurrogate = codePoint - continue - } - - // valid surrogate pair - codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) - } - - leadSurrogate = null - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break - bytes.push(codePoint) - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break - bytes.push( - codePoint >> 0x6 | 0xC0, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break - bytes.push( - codePoint >> 0xC | 0xE0, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break - bytes.push( - codePoint >> 0x12 | 0xF0, - codePoint >> 0xC & 0x3F | 0x80, - codePoint >> 0x6 & 0x3F | 0x80, - codePoint & 0x3F | 0x80 - ) - } else { - throw new Error('Invalid code point') - } - } - - return bytes -} - -function asciiToBytes (str) { - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xFF) - } - return byteArray -} - -function utf16leToBytes (str, units) { - var c, hi, lo - var byteArray = [] - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break - - c = str.charCodeAt(i) - hi = c >> 8 - lo = c % 256 - byteArray.push(lo) - byteArray.push(hi) - } - - return byteArray -} - -function base64ToBytes (str) { - return base64.toByteArray(base64clean(str)) -} - -function blitBuffer (src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if ((i + offset >= dst.length) || (i >= src.length)) break - dst[i + offset] = src[i] - } - return i -} - -// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass -// the `instanceof` check but they should be treated as of that type. -// See: https://github.com/feross/buffer/issues/166 -function isInstance (obj, type) { - return obj instanceof type || - (obj != null && obj.constructor != null && obj.constructor.name != null && - obj.constructor.name === type.name) -} -function numberIsNaN (obj) { - // For IE11 support - return obj !== obj // eslint-disable-line no-self-compare -} - -},{"base64-js":6,"ieee754":67}],10:[function(require,module,exports){ -module.exports = { - "100": "Continue", - "101": "Switching Protocols", - "102": "Processing", - "200": "OK", - "201": "Created", - "202": "Accepted", - "203": "Non-Authoritative Information", - "204": "No Content", - "205": "Reset Content", - "206": "Partial Content", - "207": "Multi-Status", - "208": "Already Reported", - "226": "IM Used", - "300": "Multiple Choices", - "301": "Moved Permanently", - "302": "Found", - "303": "See Other", - "304": "Not Modified", - "305": "Use Proxy", - "307": "Temporary Redirect", - "308": "Permanent Redirect", - "400": "Bad Request", - "401": "Unauthorized", - "402": "Payment Required", - "403": "Forbidden", - "404": "Not Found", - "405": "Method Not Allowed", - "406": "Not Acceptable", - "407": "Proxy Authentication Required", - "408": "Request Timeout", - "409": "Conflict", - "410": "Gone", - "411": "Length Required", - "412": "Precondition Failed", - "413": "Payload Too Large", - "414": "URI Too Long", - "415": "Unsupported Media Type", - "416": "Range Not Satisfiable", - "417": "Expectation Failed", - "418": "I'm a teapot", - "421": "Misdirected Request", - "422": "Unprocessable Entity", - "423": "Locked", - "424": "Failed Dependency", - "425": "Unordered Collection", - "426": "Upgrade Required", - "428": "Precondition Required", - "429": "Too Many Requests", - "431": "Request Header Fields Too Large", - "451": "Unavailable For Legal Reasons", - "500": "Internal Server Error", - "501": "Not Implemented", - "502": "Bad Gateway", - "503": "Service Unavailable", - "504": "Gateway Timeout", - "505": "HTTP Version Not Supported", - "506": "Variant Also Negotiates", - "507": "Insufficient Storage", - "508": "Loop Detected", - "509": "Bandwidth Limit Exceeded", - "510": "Not Extended", - "511": "Network Authentication Required" -} - -},{}],11:[function(require,module,exports){ -(function (process,global){ -"use strict" - -var next = (global.process && process.nextTick) || global.setImmediate || function (f) { - setTimeout(f, 0) -} - -module.exports = function maybe (cb, promise) { - if (cb) { - promise - .then(function (result) { - next(function () { cb(null, result) }) - }, function (err) { - next(function () { cb(err) }) - }) - return undefined - } - else { - return promise - } -} - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"_process":125}],12:[function(require,module,exports){ -require('../modules/es6.symbol'); -require('../modules/es6.object.to-string'); -module.exports = require('../modules/_core').Symbol; - -},{"../modules/_core":18,"../modules/es6.object.to-string":61,"../modules/es6.symbol":62}],13:[function(require,module,exports){ -module.exports = function (it) { - if (typeof it != 'function') throw TypeError(it + ' is not a function!'); - return it; -}; - -},{}],14:[function(require,module,exports){ -var isObject = require('./_is-object'); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - -},{"./_is-object":34}],15:[function(require,module,exports){ -// false -> Array#indexOf -// true -> Array#includes -var toIObject = require('./_to-iobject'); -var toLength = require('./_to-length'); -var toAbsoluteIndex = require('./_to-absolute-index'); -module.exports = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) if (IS_INCLUDES || index in O) { - if (O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; - -},{"./_to-absolute-index":52,"./_to-iobject":54,"./_to-length":55}],16:[function(require,module,exports){ -// getting tag from 19.1.3.6 Object.prototype.toString() -var cof = require('./_cof'); -var TAG = require('./_wks')('toStringTag'); -// ES3 wrong here -var ARG = cof(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (e) { /* empty */ } -}; - -module.exports = function (it) { - var O, T, B; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T - // builtinTag case - : ARG ? cof(O) - // ES3 arguments fallback - : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; -}; - -},{"./_cof":17,"./_wks":60}],17:[function(require,module,exports){ -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; - -},{}],18:[function(require,module,exports){ -var core = module.exports = { version: '2.6.3' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - -},{}],19:[function(require,module,exports){ -// optional / simple context binding -var aFunction = require('./_a-function'); -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; - -},{"./_a-function":13}],20:[function(require,module,exports){ -// 7.2.1 RequireObjectCoercible(argument) -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; - -},{}],21:[function(require,module,exports){ -// Thank's IE8 for his funny defineProperty -module.exports = !require('./_fails')(function () { - return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; -}); - -},{"./_fails":26}],22:[function(require,module,exports){ -var isObject = require('./_is-object'); -var document = require('./_global').document; -// typeof document.createElement is 'object' in old IE -var is = isObject(document) && isObject(document.createElement); -module.exports = function (it) { - return is ? document.createElement(it) : {}; -}; - -},{"./_global":27,"./_is-object":34}],23:[function(require,module,exports){ -// IE 8- don't enum bug keys -module.exports = ( - 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' -).split(','); - -},{}],24:[function(require,module,exports){ -// all enumerable object keys, includes symbols -var getKeys = require('./_object-keys'); -var gOPS = require('./_object-gops'); -var pIE = require('./_object-pie'); -module.exports = function (it) { - var result = getKeys(it); - var getSymbols = gOPS.f; - if (getSymbols) { - var symbols = getSymbols(it); - var isEnum = pIE.f; - var i = 0; - var key; - while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key); - } return result; -}; - -},{"./_object-gops":43,"./_object-keys":45,"./_object-pie":46}],25:[function(require,module,exports){ -var global = require('./_global'); -var core = require('./_core'); -var hide = require('./_hide'); -var redefine = require('./_redefine'); -var ctx = require('./_ctx'); -var PROTOTYPE = 'prototype'; - -var $export = function (type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; - var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); - var key, own, out, exp; - if (IS_GLOBAL) source = name; - for (key in source) { - // contains in native - own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed - out = (own ? target : source)[key]; - // bind timers to global for call from export context - exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; - // extend global - if (target) redefine(target, key, out, type & $export.U); - // export - if (exports[key] != out) hide(exports, key, exp); - if (IS_PROTO && expProto[key] != out) expProto[key] = out; - } -}; -global.core = core; -// type bitmap -$export.F = 1; // forced -$export.G = 2; // global -$export.S = 4; // static -$export.P = 8; // proto -$export.B = 16; // bind -$export.W = 32; // wrap -$export.U = 64; // safe -$export.R = 128; // real proto method for `library` -module.exports = $export; - -},{"./_core":18,"./_ctx":19,"./_global":27,"./_hide":29,"./_redefine":48}],26:[function(require,module,exports){ -module.exports = function (exec) { - try { - return !!exec(); - } catch (e) { - return true; - } -}; - -},{}],27:[function(require,module,exports){ -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - -},{}],28:[function(require,module,exports){ -var hasOwnProperty = {}.hasOwnProperty; -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; - -},{}],29:[function(require,module,exports){ -var dP = require('./_object-dp'); -var createDesc = require('./_property-desc'); -module.exports = require('./_descriptors') ? function (object, key, value) { - return dP.f(object, key, createDesc(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; - -},{"./_descriptors":21,"./_object-dp":38,"./_property-desc":47}],30:[function(require,module,exports){ -var document = require('./_global').document; -module.exports = document && document.documentElement; - -},{"./_global":27}],31:[function(require,module,exports){ -module.exports = !require('./_descriptors') && !require('./_fails')(function () { - return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7; -}); - -},{"./_descriptors":21,"./_dom-create":22,"./_fails":26}],32:[function(require,module,exports){ -// fallback for non-array-like ES3 and non-enumerable old V8 strings -var cof = require('./_cof'); -// eslint-disable-next-line no-prototype-builtins -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { - return cof(it) == 'String' ? it.split('') : Object(it); -}; - -},{"./_cof":17}],33:[function(require,module,exports){ -// 7.2.2 IsArray(argument) -var cof = require('./_cof'); -module.exports = Array.isArray || function isArray(arg) { - return cof(arg) == 'Array'; -}; - -},{"./_cof":17}],34:[function(require,module,exports){ -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; - -},{}],35:[function(require,module,exports){ -module.exports = false; - -},{}],36:[function(require,module,exports){ -var META = require('./_uid')('meta'); -var isObject = require('./_is-object'); -var has = require('./_has'); -var setDesc = require('./_object-dp').f; -var id = 0; -var isExtensible = Object.isExtensible || function () { - return true; -}; -var FREEZE = !require('./_fails')(function () { - return isExtensible(Object.preventExtensions({})); -}); -var setMeta = function (it) { - setDesc(it, META, { value: { - i: 'O' + ++id, // object ID - w: {} // weak collections IDs - } }); -}; -var fastKey = function (it, create) { - // return primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMeta(it); - // return object ID - } return it[META].i; -}; -var getWeak = function (it, create) { - if (!has(it, META)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMeta(it); - // return hash weak collections IDs - } return it[META].w; -}; -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it); - return it; -}; -var meta = module.exports = { - KEY: META, - NEED: false, - fastKey: fastKey, - getWeak: getWeak, - onFreeze: onFreeze -}; - -},{"./_fails":26,"./_has":28,"./_is-object":34,"./_object-dp":38,"./_uid":57}],37:[function(require,module,exports){ -// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) -var anObject = require('./_an-object'); -var dPs = require('./_object-dps'); -var enumBugKeys = require('./_enum-bug-keys'); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); -var Empty = function () { /* empty */ }; -var PROTOTYPE = 'prototype'; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var createDict = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = require('./_dom-create')('iframe'); - var i = enumBugKeys.length; - var lt = '<'; - var gt = '>'; - var iframeDocument; - iframe.style.display = 'none'; - require('./_html').appendChild(iframe); - iframe.src = 'javascript:'; // eslint-disable-line no-script-url - // createDict = iframe.contentWindow.Object; - // html.removeChild(iframe); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); -}; - -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = createDict(); - return Properties === undefined ? result : dPs(result, Properties); -}; - -},{"./_an-object":14,"./_dom-create":22,"./_enum-bug-keys":23,"./_html":30,"./_object-dps":39,"./_shared-key":50}],38:[function(require,module,exports){ -var anObject = require('./_an-object'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var toPrimitive = require('./_to-primitive'); -var dP = Object.defineProperty; - -exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return dP(O, P, Attributes); - } catch (e) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; - -},{"./_an-object":14,"./_descriptors":21,"./_ie8-dom-define":31,"./_to-primitive":56}],39:[function(require,module,exports){ -var dP = require('./_object-dp'); -var anObject = require('./_an-object'); -var getKeys = require('./_object-keys'); - -module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) dP.f(O, P = keys[i++], Properties[P]); - return O; -}; - -},{"./_an-object":14,"./_descriptors":21,"./_object-dp":38,"./_object-keys":45}],40:[function(require,module,exports){ -var pIE = require('./_object-pie'); -var createDesc = require('./_property-desc'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var has = require('./_has'); -var IE8_DOM_DEFINE = require('./_ie8-dom-define'); -var gOPD = Object.getOwnPropertyDescriptor; - -exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) { - O = toIObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return gOPD(O, P); - } catch (e) { /* empty */ } - if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); -}; - -},{"./_descriptors":21,"./_has":28,"./_ie8-dom-define":31,"./_object-pie":46,"./_property-desc":47,"./_to-iobject":54,"./_to-primitive":56}],41:[function(require,module,exports){ -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -var toIObject = require('./_to-iobject'); -var gOPN = require('./_object-gopn').f; -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return gOPN(it); - } catch (e) { - return windowNames.slice(); - } -}; - -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it)); -}; - -},{"./_object-gopn":42,"./_to-iobject":54}],42:[function(require,module,exports){ -// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) -var $keys = require('./_object-keys-internal'); -var hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype'); - -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return $keys(O, hiddenKeys); -}; - -},{"./_enum-bug-keys":23,"./_object-keys-internal":44}],43:[function(require,module,exports){ -exports.f = Object.getOwnPropertySymbols; - -},{}],44:[function(require,module,exports){ -var has = require('./_has'); -var toIObject = require('./_to-iobject'); -var arrayIndexOf = require('./_array-includes')(false); -var IE_PROTO = require('./_shared-key')('IE_PROTO'); - -module.exports = function (object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; -}; - -},{"./_array-includes":15,"./_has":28,"./_shared-key":50,"./_to-iobject":54}],45:[function(require,module,exports){ -// 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = require('./_object-keys-internal'); -var enumBugKeys = require('./_enum-bug-keys'); - -module.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); -}; - -},{"./_enum-bug-keys":23,"./_object-keys-internal":44}],46:[function(require,module,exports){ -exports.f = {}.propertyIsEnumerable; - -},{}],47:[function(require,module,exports){ -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; - -},{}],48:[function(require,module,exports){ -var global = require('./_global'); -var hide = require('./_hide'); -var has = require('./_has'); -var SRC = require('./_uid')('src'); -var TO_STRING = 'toString'; -var $toString = Function[TO_STRING]; -var TPL = ('' + $toString).split(TO_STRING); - -require('./_core').inspectSource = function (it) { - return $toString.call(it); -}; - -(module.exports = function (O, key, val, safe) { - var isFunction = typeof val == 'function'; - if (isFunction) has(val, 'name') || hide(val, 'name', key); - if (O[key] === val) return; - if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); - if (O === global) { - O[key] = val; - } else if (!safe) { - delete O[key]; - hide(O, key, val); - } else if (O[key]) { - O[key] = val; - } else { - hide(O, key, val); - } -// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative -})(Function.prototype, TO_STRING, function toString() { - return typeof this == 'function' && this[SRC] || $toString.call(this); -}); - -},{"./_core":18,"./_global":27,"./_has":28,"./_hide":29,"./_uid":57}],49:[function(require,module,exports){ -var def = require('./_object-dp').f; -var has = require('./_has'); -var TAG = require('./_wks')('toStringTag'); - -module.exports = function (it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); -}; - -},{"./_has":28,"./_object-dp":38,"./_wks":60}],50:[function(require,module,exports){ -var shared = require('./_shared')('keys'); -var uid = require('./_uid'); -module.exports = function (key) { - return shared[key] || (shared[key] = uid(key)); -}; - -},{"./_shared":51,"./_uid":57}],51:[function(require,module,exports){ -var core = require('./_core'); -var global = require('./_global'); -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || (global[SHARED] = {}); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: core.version, - mode: require('./_library') ? 'pure' : 'global', - copyright: '© 2019 Denis Pushkarev (zloirock.ru)' -}); - -},{"./_core":18,"./_global":27,"./_library":35}],52:[function(require,module,exports){ -var toInteger = require('./_to-integer'); -var max = Math.max; -var min = Math.min; -module.exports = function (index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); -}; - -},{"./_to-integer":53}],53:[function(require,module,exports){ -// 7.1.4 ToInteger -var ceil = Math.ceil; -var floor = Math.floor; -module.exports = function (it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); -}; - -},{}],54:[function(require,module,exports){ -// to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = require('./_iobject'); -var defined = require('./_defined'); -module.exports = function (it) { - return IObject(defined(it)); -}; - -},{"./_defined":20,"./_iobject":32}],55:[function(require,module,exports){ -// 7.1.15 ToLength -var toInteger = require('./_to-integer'); -var min = Math.min; -module.exports = function (it) { - return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 -}; - -},{"./_to-integer":53}],56:[function(require,module,exports){ -// 7.1.1 ToPrimitive(input [, PreferredType]) -var isObject = require('./_is-object'); -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (it, S) { - if (!isObject(it)) return it; - var fn, val; - if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; - if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; - throw TypeError("Can't convert object to primitive value"); -}; - -},{"./_is-object":34}],57:[function(require,module,exports){ -var id = 0; -var px = Math.random(); -module.exports = function (key) { - return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); -}; - -},{}],58:[function(require,module,exports){ -var global = require('./_global'); -var core = require('./_core'); -var LIBRARY = require('./_library'); -var wksExt = require('./_wks-ext'); -var defineProperty = require('./_object-dp').f; -module.exports = function (name) { - var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {}); - if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) }); -}; - -},{"./_core":18,"./_global":27,"./_library":35,"./_object-dp":38,"./_wks-ext":59}],59:[function(require,module,exports){ -exports.f = require('./_wks'); - -},{"./_wks":60}],60:[function(require,module,exports){ -var store = require('./_shared')('wks'); -var uid = require('./_uid'); -var Symbol = require('./_global').Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; - -},{"./_global":27,"./_shared":51,"./_uid":57}],61:[function(require,module,exports){ -'use strict'; -// 19.1.3.6 Object.prototype.toString() -var classof = require('./_classof'); -var test = {}; -test[require('./_wks')('toStringTag')] = 'z'; -if (test + '' != '[object z]') { - require('./_redefine')(Object.prototype, 'toString', function toString() { - return '[object ' + classof(this) + ']'; - }, true); -} - -},{"./_classof":16,"./_redefine":48,"./_wks":60}],62:[function(require,module,exports){ -'use strict'; -// ECMAScript 6 symbols shim -var global = require('./_global'); -var has = require('./_has'); -var DESCRIPTORS = require('./_descriptors'); -var $export = require('./_export'); -var redefine = require('./_redefine'); -var META = require('./_meta').KEY; -var $fails = require('./_fails'); -var shared = require('./_shared'); -var setToStringTag = require('./_set-to-string-tag'); -var uid = require('./_uid'); -var wks = require('./_wks'); -var wksExt = require('./_wks-ext'); -var wksDefine = require('./_wks-define'); -var enumKeys = require('./_enum-keys'); -var isArray = require('./_is-array'); -var anObject = require('./_an-object'); -var isObject = require('./_is-object'); -var toIObject = require('./_to-iobject'); -var toPrimitive = require('./_to-primitive'); -var createDesc = require('./_property-desc'); -var _create = require('./_object-create'); -var gOPNExt = require('./_object-gopn-ext'); -var $GOPD = require('./_object-gopd'); -var $DP = require('./_object-dp'); -var $keys = require('./_object-keys'); -var gOPD = $GOPD.f; -var dP = $DP.f; -var gOPN = gOPNExt.f; -var $Symbol = global.Symbol; -var $JSON = global.JSON; -var _stringify = $JSON && $JSON.stringify; -var PROTOTYPE = 'prototype'; -var HIDDEN = wks('_hidden'); -var TO_PRIMITIVE = wks('toPrimitive'); -var isEnum = {}.propertyIsEnumerable; -var SymbolRegistry = shared('symbol-registry'); -var AllSymbols = shared('symbols'); -var OPSymbols = shared('op-symbols'); -var ObjectProto = Object[PROTOTYPE]; -var USE_NATIVE = typeof $Symbol == 'function'; -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDesc = DESCRIPTORS && $fails(function () { - return _create(dP({}, 'a', { - get: function () { return dP(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (it, key, D) { - var protoDesc = gOPD(ObjectProto, key); - if (protoDesc) delete ObjectProto[key]; - dP(it, key, D); - if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc); -} : dP; - -var wrap = function (tag) { - var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]); - sym._k = tag; - return sym; -}; - -var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return it instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(it, key, D) { - if (it === ObjectProto) $defineProperty(OPSymbols, key, D); - anObject(it); - key = toPrimitive(key, true); - anObject(D); - if (has(AllSymbols, key)) { - if (!D.enumerable) { - if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {})); - it[HIDDEN][key] = true; - } else { - if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false; - D = _create(D, { enumerable: createDesc(0, false) }); - } return setSymbolDesc(it, key, D); - } return dP(it, key, D); -}; -var $defineProperties = function defineProperties(it, P) { - anObject(it); - var keys = enumKeys(P = toIObject(P)); - var i = 0; - var l = keys.length; - var key; - while (l > i) $defineProperty(it, key = keys[i++], P[key]); - return it; -}; -var $create = function create(it, P) { - return P === undefined ? _create(it) : $defineProperties(_create(it), P); -}; -var $propertyIsEnumerable = function propertyIsEnumerable(key) { - var E = isEnum.call(this, key = toPrimitive(key, true)); - if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false; - return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true; -}; -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) { - it = toIObject(it); - key = toPrimitive(key, true); - if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return; - var D = gOPD(it, key); - if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true; - return D; -}; -var $getOwnPropertyNames = function getOwnPropertyNames(it) { - var names = gOPN(toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key); - } return result; -}; -var $getOwnPropertySymbols = function getOwnPropertySymbols(it) { - var IS_OP = it === ObjectProto; - var names = gOPN(IS_OP ? OPSymbols : toIObject(it)); - var result = []; - var i = 0; - var key; - while (names.length > i) { - if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]); - } return result; -}; - -// 19.4.1.1 Symbol([description]) -if (!USE_NATIVE) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); - var tag = uid(arguments.length > 0 ? arguments[0] : undefined); - var $set = function (value) { - if (this === ObjectProto) $set.call(OPSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDesc(this, tag, createDesc(1, value)); - }; - if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); - return wrap(tag); - }; - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return this._k; - }); - - $GOPD.f = $getOwnPropertyDescriptor; - $DP.f = $defineProperty; - require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames; - require('./_object-pie').f = $propertyIsEnumerable; - require('./_object-gops').f = $getOwnPropertySymbols; - - if (DESCRIPTORS && !require('./_library')) { - redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true); - } - - wksExt.f = function (name) { - return wrap(wks(name)); - }; -} - -$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol }); - -for (var es6Symbols = ( - // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 - 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables' -).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]); - -for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]); - -$export($export.S + $export.F * !USE_NATIVE, 'Symbol', { - // 19.4.2.1 Symbol.for(key) - 'for': function (key) { - return has(SymbolRegistry, key += '') - ? SymbolRegistry[key] - : SymbolRegistry[key] = $Symbol(key); - }, - // 19.4.2.5 Symbol.keyFor(sym) - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!'); - for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key; - }, - useSetter: function () { setter = true; }, - useSimple: function () { setter = false; } -}); - -$export($export.S + $export.F * !USE_NATIVE, 'Object', { - // 19.1.2.2 Object.create(O [, Properties]) - create: $create, - // 19.1.2.4 Object.defineProperty(O, P, Attributes) - defineProperty: $defineProperty, - // 19.1.2.3 Object.defineProperties(O, Properties) - defineProperties: $defineProperties, - // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) - getOwnPropertyDescriptor: $getOwnPropertyDescriptor, - // 19.1.2.7 Object.getOwnPropertyNames(O) - getOwnPropertyNames: $getOwnPropertyNames, - // 19.1.2.8 Object.getOwnPropertySymbols(O) - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// 24.3.2 JSON.stringify(value [, replacer [, space]]) -$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () { - var S = $Symbol(); - // MS Edge converts symbol values to JSON as {} - // WebKit converts symbol values to JSON as null - // V8 throws on boxed symbols - return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}'; -})), 'JSON', { - stringify: function stringify(it) { - var args = [it]; - var i = 1; - var replacer, $replacer; - while (arguments.length > i) args.push(arguments[i++]); - $replacer = replacer = args[1]; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return _stringify.apply($JSON, args); - } -}); - -// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint) -$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -// 19.4.3.5 Symbol.prototype[@@toStringTag] -setToStringTag($Symbol, 'Symbol'); -// 20.2.1.9 Math[@@toStringTag] -setToStringTag(Math, 'Math', true); -// 24.3.3 JSON[@@toStringTag] -setToStringTag(global.JSON, 'JSON', true); - -},{"./_an-object":14,"./_descriptors":21,"./_enum-keys":24,"./_export":25,"./_fails":26,"./_global":27,"./_has":28,"./_hide":29,"./_is-array":33,"./_is-object":34,"./_library":35,"./_meta":36,"./_object-create":37,"./_object-dp":38,"./_object-gopd":40,"./_object-gopn":42,"./_object-gopn-ext":41,"./_object-gops":43,"./_object-keys":45,"./_object-pie":46,"./_property-desc":47,"./_redefine":48,"./_set-to-string-tag":49,"./_shared":51,"./_to-iobject":54,"./_to-primitive":56,"./_uid":57,"./_wks":60,"./_wks-define":58,"./_wks-ext":59}],63:[function(require,module,exports){ -(function (Buffer){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// NOTE: These type checking functions intentionally don't use `instanceof` -// because it is fragile and can be easily faked with `Object.create()`. - -function isArray(arg) { - if (Array.isArray) { - return Array.isArray(arg); - } - return objectToString(arg) === '[object Array]'; -} -exports.isArray = isArray; - -function isBoolean(arg) { - return typeof arg === 'boolean'; -} -exports.isBoolean = isBoolean; - -function isNull(arg) { - return arg === null; -} -exports.isNull = isNull; - -function isNullOrUndefined(arg) { - return arg == null; -} -exports.isNullOrUndefined = isNullOrUndefined; - -function isNumber(arg) { - return typeof arg === 'number'; -} -exports.isNumber = isNumber; - -function isString(arg) { - return typeof arg === 'string'; -} -exports.isString = isString; - -function isSymbol(arg) { - return typeof arg === 'symbol'; -} -exports.isSymbol = isSymbol; - -function isUndefined(arg) { - return arg === void 0; -} -exports.isUndefined = isUndefined; - -function isRegExp(re) { - return objectToString(re) === '[object RegExp]'; -} -exports.isRegExp = isRegExp; - -function isObject(arg) { - return typeof arg === 'object' && arg !== null; -} -exports.isObject = isObject; - -function isDate(d) { - return objectToString(d) === '[object Date]'; -} -exports.isDate = isDate; - -function isError(e) { - return (objectToString(e) === '[object Error]' || e instanceof Error); -} -exports.isError = isError; - -function isFunction(arg) { - return typeof arg === 'function'; -} -exports.isFunction = isFunction; - -function isPrimitive(arg) { - return arg === null || - typeof arg === 'boolean' || - typeof arg === 'number' || - typeof arg === 'string' || - typeof arg === 'symbol' || // ES6 symbol - typeof arg === 'undefined'; -} -exports.isPrimitive = isPrimitive; - -exports.isBuffer = Buffer.isBuffer; - -function objectToString(o) { - return Object.prototype.toString.call(o); -} - -}).call(this,{"isBuffer":require("../../is-buffer/index.js")}) - -},{"../../is-buffer/index.js":69}],64:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -var objectCreate = Object.create || objectCreatePolyfill -var objectKeys = Object.keys || objectKeysPolyfill -var bind = Function.prototype.bind || functionBindPolyfill - -function EventEmitter() { - if (!this._events || !Object.prototype.hasOwnProperty.call(this, '_events')) { - this._events = objectCreate(null); - this._eventsCount = 0; - } - - this._maxListeners = this._maxListeners || undefined; -} -module.exports = EventEmitter; - -// Backwards-compat with node 0.10.x -EventEmitter.EventEmitter = EventEmitter; - -EventEmitter.prototype._events = undefined; -EventEmitter.prototype._maxListeners = undefined; - -// By default EventEmitters will print a warning if more than 10 listeners are -// added to it. This is a useful default which helps finding memory leaks. -var defaultMaxListeners = 10; - -var hasDefineProperty; -try { - var o = {}; - if (Object.defineProperty) Object.defineProperty(o, 'x', { value: 0 }); - hasDefineProperty = o.x === 0; -} catch (err) { hasDefineProperty = false } -if (hasDefineProperty) { - Object.defineProperty(EventEmitter, 'defaultMaxListeners', { - enumerable: true, - get: function() { - return defaultMaxListeners; - }, - set: function(arg) { - // check whether the input is a positive number (whose value is zero or - // greater and not a NaN). - if (typeof arg !== 'number' || arg < 0 || arg !== arg) - throw new TypeError('"defaultMaxListeners" must be a positive number'); - defaultMaxListeners = arg; - } - }); -} else { - EventEmitter.defaultMaxListeners = defaultMaxListeners; -} - -// Obviously not all Emitters should be limited to 10. This function allows -// that to be increased. Set to zero for unlimited. -EventEmitter.prototype.setMaxListeners = function setMaxListeners(n) { - if (typeof n !== 'number' || n < 0 || isNaN(n)) - throw new TypeError('"n" argument must be a positive number'); - this._maxListeners = n; - return this; -}; - -function $getMaxListeners(that) { - if (that._maxListeners === undefined) - return EventEmitter.defaultMaxListeners; - return that._maxListeners; -} - -EventEmitter.prototype.getMaxListeners = function getMaxListeners() { - return $getMaxListeners(this); -}; - -// These standalone emit* functions are used to optimize calling of event -// handlers for fast cases because emit() itself often has a variable number of -// arguments and can be deoptimized because of that. These functions always have -// the same number of arguments and thus do not get deoptimized, so the code -// inside them can execute faster. -function emitNone(handler, isFn, self) { - if (isFn) - handler.call(self); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self); - } -} -function emitOne(handler, isFn, self, arg1) { - if (isFn) - handler.call(self, arg1); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1); - } -} -function emitTwo(handler, isFn, self, arg1, arg2) { - if (isFn) - handler.call(self, arg1, arg2); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1, arg2); - } -} -function emitThree(handler, isFn, self, arg1, arg2, arg3) { - if (isFn) - handler.call(self, arg1, arg2, arg3); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].call(self, arg1, arg2, arg3); - } -} - -function emitMany(handler, isFn, self, args) { - if (isFn) - handler.apply(self, args); - else { - var len = handler.length; - var listeners = arrayClone(handler, len); - for (var i = 0; i < len; ++i) - listeners[i].apply(self, args); - } -} - -EventEmitter.prototype.emit = function emit(type) { - var er, handler, len, args, i, events; - var doError = (type === 'error'); - - events = this._events; - if (events) - doError = (doError && events.error == null); - else if (!doError) - return false; - - // If there is no 'error' event listener then throw. - if (doError) { - if (arguments.length > 1) - er = arguments[1]; - if (er instanceof Error) { - throw er; // Unhandled 'error' event - } else { - // At least give some kind of context to the user - var err = new Error('Unhandled "error" event. (' + er + ')'); - err.context = er; - throw err; - } - return false; - } - - handler = events[type]; - - if (!handler) - return false; - - var isFn = typeof handler === 'function'; - len = arguments.length; - switch (len) { - // fast cases - case 1: - emitNone(handler, isFn, this); - break; - case 2: - emitOne(handler, isFn, this, arguments[1]); - break; - case 3: - emitTwo(handler, isFn, this, arguments[1], arguments[2]); - break; - case 4: - emitThree(handler, isFn, this, arguments[1], arguments[2], arguments[3]); - break; - // slower - default: - args = new Array(len - 1); - for (i = 1; i < len; i++) - args[i - 1] = arguments[i]; - emitMany(handler, isFn, this, args); - } - - return true; -}; - -function _addListener(target, type, listener, prepend) { - var m; - var events; - var existing; - - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - - events = target._events; - if (!events) { - events = target._events = objectCreate(null); - target._eventsCount = 0; - } else { - // To avoid recursion in the case that type === "newListener"! Before - // adding it to the listeners, first emit "newListener". - if (events.newListener) { - target.emit('newListener', type, - listener.listener ? listener.listener : listener); - - // Re-assign `events` because a newListener handler could have caused the - // this._events to be assigned to a new object - events = target._events; - } - existing = events[type]; - } - - if (!existing) { - // Optimize the case of one listener. Don't need the extra array object. - existing = events[type] = listener; - ++target._eventsCount; - } else { - if (typeof existing === 'function') { - // Adding the second element, need to change to array. - existing = events[type] = - prepend ? [listener, existing] : [existing, listener]; - } else { - // If we've already got an array, just append. - if (prepend) { - existing.unshift(listener); - } else { - existing.push(listener); - } - } - - // Check for listener leak - if (!existing.warned) { - m = $getMaxListeners(target); - if (m && m > 0 && existing.length > m) { - existing.warned = true; - var w = new Error('Possible EventEmitter memory leak detected. ' + - existing.length + ' "' + String(type) + '" listeners ' + - 'added. Use emitter.setMaxListeners() to ' + - 'increase limit.'); - w.name = 'MaxListenersExceededWarning'; - w.emitter = target; - w.type = type; - w.count = existing.length; - if (typeof console === 'object' && console.warn) { - console.warn('%s: %s', w.name, w.message); - } - } - } - } - - return target; -} - -EventEmitter.prototype.addListener = function addListener(type, listener) { - return _addListener(this, type, listener, false); -}; - -EventEmitter.prototype.on = EventEmitter.prototype.addListener; - -EventEmitter.prototype.prependListener = - function prependListener(type, listener) { - return _addListener(this, type, listener, true); - }; - -function onceWrapper() { - if (!this.fired) { - this.target.removeListener(this.type, this.wrapFn); - this.fired = true; - switch (arguments.length) { - case 0: - return this.listener.call(this.target); - case 1: - return this.listener.call(this.target, arguments[0]); - case 2: - return this.listener.call(this.target, arguments[0], arguments[1]); - case 3: - return this.listener.call(this.target, arguments[0], arguments[1], - arguments[2]); - default: - var args = new Array(arguments.length); - for (var i = 0; i < args.length; ++i) - args[i] = arguments[i]; - this.listener.apply(this.target, args); - } - } -} - -function _onceWrap(target, type, listener) { - var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener }; - var wrapped = bind.call(onceWrapper, state); - wrapped.listener = listener; - state.wrapFn = wrapped; - return wrapped; -} - -EventEmitter.prototype.once = function once(type, listener) { - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - this.on(type, _onceWrap(this, type, listener)); - return this; -}; - -EventEmitter.prototype.prependOnceListener = - function prependOnceListener(type, listener) { - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - this.prependListener(type, _onceWrap(this, type, listener)); - return this; - }; - -// Emits a 'removeListener' event if and only if the listener was removed. -EventEmitter.prototype.removeListener = - function removeListener(type, listener) { - var list, events, position, i, originalListener; - - if (typeof listener !== 'function') - throw new TypeError('"listener" argument must be a function'); - - events = this._events; - if (!events) - return this; - - list = events[type]; - if (!list) - return this; - - if (list === listener || list.listener === listener) { - if (--this._eventsCount === 0) - this._events = objectCreate(null); - else { - delete events[type]; - if (events.removeListener) - this.emit('removeListener', type, list.listener || listener); - } - } else if (typeof list !== 'function') { - position = -1; - - for (i = list.length - 1; i >= 0; i--) { - if (list[i] === listener || list[i].listener === listener) { - originalListener = list[i].listener; - position = i; - break; - } - } - - if (position < 0) - return this; - - if (position === 0) - list.shift(); - else - spliceOne(list, position); - - if (list.length === 1) - events[type] = list[0]; - - if (events.removeListener) - this.emit('removeListener', type, originalListener || listener); - } - - return this; - }; - -EventEmitter.prototype.removeAllListeners = - function removeAllListeners(type) { - var listeners, events, i; - - events = this._events; - if (!events) - return this; - - // not listening for removeListener, no need to emit - if (!events.removeListener) { - if (arguments.length === 0) { - this._events = objectCreate(null); - this._eventsCount = 0; - } else if (events[type]) { - if (--this._eventsCount === 0) - this._events = objectCreate(null); - else - delete events[type]; - } - return this; - } - - // emit removeListener for all listeners on all events - if (arguments.length === 0) { - var keys = objectKeys(events); - var key; - for (i = 0; i < keys.length; ++i) { - key = keys[i]; - if (key === 'removeListener') continue; - this.removeAllListeners(key); - } - this.removeAllListeners('removeListener'); - this._events = objectCreate(null); - this._eventsCount = 0; - return this; - } - - listeners = events[type]; - - if (typeof listeners === 'function') { - this.removeListener(type, listeners); - } else if (listeners) { - // LIFO order - for (i = listeners.length - 1; i >= 0; i--) { - this.removeListener(type, listeners[i]); - } - } - - return this; - }; - -function _listeners(target, type, unwrap) { - var events = target._events; - - if (!events) - return []; - - var evlistener = events[type]; - if (!evlistener) - return []; - - if (typeof evlistener === 'function') - return unwrap ? [evlistener.listener || evlistener] : [evlistener]; - - return unwrap ? unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length); -} - -EventEmitter.prototype.listeners = function listeners(type) { - return _listeners(this, type, true); -}; - -EventEmitter.prototype.rawListeners = function rawListeners(type) { - return _listeners(this, type, false); -}; - -EventEmitter.listenerCount = function(emitter, type) { - if (typeof emitter.listenerCount === 'function') { - return emitter.listenerCount(type); - } else { - return listenerCount.call(emitter, type); - } -}; - -EventEmitter.prototype.listenerCount = listenerCount; -function listenerCount(type) { - var events = this._events; - - if (events) { - var evlistener = events[type]; - - if (typeof evlistener === 'function') { - return 1; - } else if (evlistener) { - return evlistener.length; - } - } - - return 0; -} - -EventEmitter.prototype.eventNames = function eventNames() { - return this._eventsCount > 0 ? Reflect.ownKeys(this._events) : []; -}; - -// About 1.5x faster than the two-arg version of Array#splice(). -function spliceOne(list, index) { - for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) - list[i] = list[k]; - list.pop(); -} - -function arrayClone(arr, n) { - var copy = new Array(n); - for (var i = 0; i < n; ++i) - copy[i] = arr[i]; - return copy; -} - -function unwrapListeners(arr) { - var ret = new Array(arr.length); - for (var i = 0; i < ret.length; ++i) { - ret[i] = arr[i].listener || arr[i]; - } - return ret; -} - -function objectCreatePolyfill(proto) { - var F = function() {}; - F.prototype = proto; - return new F; -} -function objectKeysPolyfill(obj) { - var keys = []; - for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k)) { - keys.push(k); - } - return k; -} -function functionBindPolyfill(context) { - var fn = this; - return function () { - return fn.apply(context, arguments); - }; -} - -},{}],65:[function(require,module,exports){ -function format(fmt) { - var re = /(%?)(%([jds]))/g - , args = Array.prototype.slice.call(arguments, 1); - if(args.length) { - fmt = fmt.replace(re, function(match, escaped, ptn, flag) { - var arg = args.shift(); - switch(flag) { - case 's': - arg = '' + arg; - break; - case 'd': - arg = Number(arg); - break; - case 'j': - arg = JSON.stringify(arg); - break; - } - if(!escaped) { - return arg; - } - args.unshift(arg); - return match; - }) - } - - // arguments remain after formatting - if(args.length) { - fmt += ' ' + args.join(' '); - } - - // update escaped %% values - fmt = fmt.replace(/%{2,2}/g, '%'); - - return '' + fmt; -} - -module.exports = format; - -},{}],66:[function(require,module,exports){ -var http = require('http') -var url = require('url') - -var https = module.exports - -for (var key in http) { - if (http.hasOwnProperty(key)) https[key] = http[key] -} - -https.request = function (params, cb) { - params = validateParams(params) - return http.request.call(this, params, cb) -} - -https.get = function (params, cb) { - params = validateParams(params) - return http.get.call(this, params, cb) -} - -function validateParams (params) { - if (typeof params === 'string') { - params = url.parse(params) - } - if (!params.protocol) { - params.protocol = 'https:' - } - if (params.protocol !== 'https:') { - throw new Error('Protocol "' + params.protocol + '" not supported. Expected "https:"') - } - return params -} - -},{"http":139,"url":148}],67:[function(require,module,exports){ -exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var nBits = -7 - var i = isLE ? (nBytes - 1) : 0 - var d = isLE ? -1 : 1 - var s = buffer[offset + i] - - i += d - - e = s & ((1 << (-nBits)) - 1) - s >>= (-nBits) - nBits += eLen - for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - m = e & ((1 << (-nBits)) - 1) - e >>= (-nBits) - nBits += mLen - for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {} - - if (e === 0) { - e = 1 - eBias - } else if (e === eMax) { - return m ? NaN : ((s ? -1 : 1) * Infinity) - } else { - m = m + Math.pow(2, mLen) - e = e - eBias - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen) -} - -exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c - var eLen = (nBytes * 8) - mLen - 1 - var eMax = (1 << eLen) - 1 - var eBias = eMax >> 1 - var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) - var i = isLE ? 0 : (nBytes - 1) - var d = isLE ? 1 : -1 - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 - - value = Math.abs(value) - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0 - e = eMax - } else { - e = Math.floor(Math.log(value) / Math.LN2) - if (value * (c = Math.pow(2, -e)) < 1) { - e-- - c *= 2 - } - if (e + eBias >= 1) { - value += rt / c - } else { - value += rt * Math.pow(2, 1 - eBias) - } - if (value * c >= 2) { - e++ - c /= 2 - } - - if (e + eBias >= eMax) { - m = 0 - e = eMax - } else if (e + eBias >= 1) { - m = ((value * c) - 1) * Math.pow(2, mLen) - e = e + eBias - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) - e = 0 - } - } - - for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} - - e = (e << mLen) | m - eLen += mLen - for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} - - buffer[offset + i - d] |= s * 128 -} - -},{}],68:[function(require,module,exports){ -if (typeof Object.create === 'function') { - // implementation from standard node.js 'util' module - module.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor - ctor.prototype = Object.create(superCtor.prototype, { - constructor: { - value: ctor, - enumerable: false, - writable: true, - configurable: true - } - }); - }; -} else { - // old school shim for old browsers - module.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor - var TempCtor = function () {} - TempCtor.prototype = superCtor.prototype - ctor.prototype = new TempCtor() - ctor.prototype.constructor = ctor - } -} - -},{}],69:[function(require,module,exports){ -/*! - * Determine if an object is a Buffer - * - * @author Feross Aboukhadijeh - * @license MIT - */ - -// The _isBuffer check is for Safari 5-7 support, because it's missing -// Object.prototype.constructor. Remove this eventually -module.exports = function (obj) { - return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer) -} - -function isBuffer (obj) { - return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj) -} - -// For Node v0.10 support. Remove this eventually. -function isSlowBuffer (obj) { - return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0)) -} - -},{}],70:[function(require,module,exports){ -var toString = {}.toString; - -module.exports = Array.isArray || function (arr) { - return toString.call(arr) == '[object Array]'; -}; - -},{}],71:[function(require,module,exports){ -'use strict'; - - -var yaml = require('./lib/js-yaml.js'); - - -module.exports = yaml; - -},{"./lib/js-yaml.js":72}],72:[function(require,module,exports){ -'use strict'; - - -var loader = require('./js-yaml/loader'); -var dumper = require('./js-yaml/dumper'); - - -function deprecated(name) { - return function () { - throw new Error('Function ' + name + ' is deprecated and cannot be used.'); - }; -} - - -module.exports.Type = require('./js-yaml/type'); -module.exports.Schema = require('./js-yaml/schema'); -module.exports.FAILSAFE_SCHEMA = require('./js-yaml/schema/failsafe'); -module.exports.JSON_SCHEMA = require('./js-yaml/schema/json'); -module.exports.CORE_SCHEMA = require('./js-yaml/schema/core'); -module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe'); -module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full'); -module.exports.load = loader.load; -module.exports.loadAll = loader.loadAll; -module.exports.safeLoad = loader.safeLoad; -module.exports.safeLoadAll = loader.safeLoadAll; -module.exports.dump = dumper.dump; -module.exports.safeDump = dumper.safeDump; -module.exports.YAMLException = require('./js-yaml/exception'); - -// Deprecated schema names from JS-YAML 2.0.x -module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe'); -module.exports.SAFE_SCHEMA = require('./js-yaml/schema/default_safe'); -module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full'); - -// Deprecated functions from JS-YAML 1.x.x -module.exports.scan = deprecated('scan'); -module.exports.parse = deprecated('parse'); -module.exports.compose = deprecated('compose'); -module.exports.addConstructor = deprecated('addConstructor'); - -},{"./js-yaml/dumper":74,"./js-yaml/exception":75,"./js-yaml/loader":76,"./js-yaml/schema":78,"./js-yaml/schema/core":79,"./js-yaml/schema/default_full":80,"./js-yaml/schema/default_safe":81,"./js-yaml/schema/failsafe":82,"./js-yaml/schema/json":83,"./js-yaml/type":84}],73:[function(require,module,exports){ -'use strict'; - - -function isNothing(subject) { - return (typeof subject === 'undefined') || (subject === null); -} - - -function isObject(subject) { - return (typeof subject === 'object') && (subject !== null); -} - - -function toArray(sequence) { - if (Array.isArray(sequence)) return sequence; - else if (isNothing(sequence)) return []; - - return [ sequence ]; -} - - -function extend(target, source) { - var index, length, key, sourceKeys; - - if (source) { - sourceKeys = Object.keys(source); - - for (index = 0, length = sourceKeys.length; index < length; index += 1) { - key = sourceKeys[index]; - target[key] = source[key]; - } - } - - return target; -} - - -function repeat(string, count) { - var result = '', cycle; - - for (cycle = 0; cycle < count; cycle += 1) { - result += string; - } - - return result; -} - - -function isNegativeZero(number) { - return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number); -} - - -module.exports.isNothing = isNothing; -module.exports.isObject = isObject; -module.exports.toArray = toArray; -module.exports.repeat = repeat; -module.exports.isNegativeZero = isNegativeZero; -module.exports.extend = extend; - -},{}],74:[function(require,module,exports){ -'use strict'; - -/*eslint-disable no-use-before-define*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var DEFAULT_FULL_SCHEMA = require('./schema/default_full'); -var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe'); - -var _toString = Object.prototype.toString; -var _hasOwnProperty = Object.prototype.hasOwnProperty; - -var CHAR_TAB = 0x09; /* Tab */ -var CHAR_LINE_FEED = 0x0A; /* LF */ -var CHAR_SPACE = 0x20; /* Space */ -var CHAR_EXCLAMATION = 0x21; /* ! */ -var CHAR_DOUBLE_QUOTE = 0x22; /* " */ -var CHAR_SHARP = 0x23; /* # */ -var CHAR_PERCENT = 0x25; /* % */ -var CHAR_AMPERSAND = 0x26; /* & */ -var CHAR_SINGLE_QUOTE = 0x27; /* ' */ -var CHAR_ASTERISK = 0x2A; /* * */ -var CHAR_COMMA = 0x2C; /* , */ -var CHAR_MINUS = 0x2D; /* - */ -var CHAR_COLON = 0x3A; /* : */ -var CHAR_GREATER_THAN = 0x3E; /* > */ -var CHAR_QUESTION = 0x3F; /* ? */ -var CHAR_COMMERCIAL_AT = 0x40; /* @ */ -var CHAR_LEFT_SQUARE_BRACKET = 0x5B; /* [ */ -var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */ -var CHAR_GRAVE_ACCENT = 0x60; /* ` */ -var CHAR_LEFT_CURLY_BRACKET = 0x7B; /* { */ -var CHAR_VERTICAL_LINE = 0x7C; /* | */ -var CHAR_RIGHT_CURLY_BRACKET = 0x7D; /* } */ - -var ESCAPE_SEQUENCES = {}; - -ESCAPE_SEQUENCES[0x00] = '\\0'; -ESCAPE_SEQUENCES[0x07] = '\\a'; -ESCAPE_SEQUENCES[0x08] = '\\b'; -ESCAPE_SEQUENCES[0x09] = '\\t'; -ESCAPE_SEQUENCES[0x0A] = '\\n'; -ESCAPE_SEQUENCES[0x0B] = '\\v'; -ESCAPE_SEQUENCES[0x0C] = '\\f'; -ESCAPE_SEQUENCES[0x0D] = '\\r'; -ESCAPE_SEQUENCES[0x1B] = '\\e'; -ESCAPE_SEQUENCES[0x22] = '\\"'; -ESCAPE_SEQUENCES[0x5C] = '\\\\'; -ESCAPE_SEQUENCES[0x85] = '\\N'; -ESCAPE_SEQUENCES[0xA0] = '\\_'; -ESCAPE_SEQUENCES[0x2028] = '\\L'; -ESCAPE_SEQUENCES[0x2029] = '\\P'; - -var DEPRECATED_BOOLEANS_SYNTAX = [ - 'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON', - 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' -]; - -function compileStyleMap(schema, map) { - var result, keys, index, length, tag, style, type; - - if (map === null) return {}; - - result = {}; - keys = Object.keys(map); - - for (index = 0, length = keys.length; index < length; index += 1) { - tag = keys[index]; - style = String(map[tag]); - - if (tag.slice(0, 2) === '!!') { - tag = 'tag:yaml.org,2002:' + tag.slice(2); - } - type = schema.compiledTypeMap['fallback'][tag]; - - if (type && _hasOwnProperty.call(type.styleAliases, style)) { - style = type.styleAliases[style]; - } - - result[tag] = style; - } - - return result; -} - -function encodeHex(character) { - var string, handle, length; - - string = character.toString(16).toUpperCase(); - - if (character <= 0xFF) { - handle = 'x'; - length = 2; - } else if (character <= 0xFFFF) { - handle = 'u'; - length = 4; - } else if (character <= 0xFFFFFFFF) { - handle = 'U'; - length = 8; - } else { - throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF'); - } - - return '\\' + handle + common.repeat('0', length - string.length) + string; -} - -function State(options) { - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.indent = Math.max(1, (options['indent'] || 2)); - this.noArrayIndent = options['noArrayIndent'] || false; - this.skipInvalid = options['skipInvalid'] || false; - this.flowLevel = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']); - this.styleMap = compileStyleMap(this.schema, options['styles'] || null); - this.sortKeys = options['sortKeys'] || false; - this.lineWidth = options['lineWidth'] || 80; - this.noRefs = options['noRefs'] || false; - this.noCompatMode = options['noCompatMode'] || false; - this.condenseFlow = options['condenseFlow'] || false; - - this.implicitTypes = this.schema.compiledImplicit; - this.explicitTypes = this.schema.compiledExplicit; - - this.tag = null; - this.result = ''; - - this.duplicates = []; - this.usedDuplicates = null; -} - -// Indents every line in a string. Empty lines (\n only) are not indented. -function indentString(string, spaces) { - var ind = common.repeat(' ', spaces), - position = 0, - next = -1, - result = '', - line, - length = string.length; - - while (position < length) { - next = string.indexOf('\n', position); - if (next === -1) { - line = string.slice(position); - position = length; - } else { - line = string.slice(position, next + 1); - position = next + 1; - } - - if (line.length && line !== '\n') result += ind; - - result += line; - } - - return result; -} - -function generateNextLine(state, level) { - return '\n' + common.repeat(' ', state.indent * level); -} - -function testImplicitResolving(state, str) { - var index, length, type; - - for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { - type = state.implicitTypes[index]; - - if (type.resolve(str)) { - return true; - } - } - - return false; -} - -// [33] s-white ::= s-space | s-tab -function isWhitespace(c) { - return c === CHAR_SPACE || c === CHAR_TAB; -} - -// Returns true if the character can be printed without escaping. -// From YAML 1.2: "any allowed characters known to be non-printable -// should also be escaped. [However,] This isn’t mandatory" -// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029. -function isPrintable(c) { - return (0x00020 <= c && c <= 0x00007E) - || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) - || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */) - || (0x10000 <= c && c <= 0x10FFFF); -} - -// Simplified test for values allowed after the first character in plain style. -function isPlainSafe(c) { - // Uses a subset of nb-char - c-flow-indicator - ":" - "#" - // where nb-char ::= c-printable - b-char - c-byte-order-mark. - return isPrintable(c) && c !== 0xFEFF - // - c-flow-indicator - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // - ":" - "#" - && c !== CHAR_COLON - && c !== CHAR_SHARP; -} - -// Simplified test for values allowed as the first character in plain style. -function isPlainSafeFirst(c) { - // Uses a subset of ns-char - c-indicator - // where ns-char = nb-char - s-white. - return isPrintable(c) && c !== 0xFEFF - && !isWhitespace(c) // - s-white - // - (c-indicator ::= - // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” - && c !== CHAR_MINUS - && c !== CHAR_QUESTION - && c !== CHAR_COLON - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “"” - && c !== CHAR_SHARP - && c !== CHAR_AMPERSAND - && c !== CHAR_ASTERISK - && c !== CHAR_EXCLAMATION - && c !== CHAR_VERTICAL_LINE - && c !== CHAR_GREATER_THAN - && c !== CHAR_SINGLE_QUOTE - && c !== CHAR_DOUBLE_QUOTE - // | “%” | “@” | “`”) - && c !== CHAR_PERCENT - && c !== CHAR_COMMERCIAL_AT - && c !== CHAR_GRAVE_ACCENT; -} - -// Determines whether block indentation indicator is required. -function needIndentIndicator(string) { - var leadingSpaceRe = /^\n* /; - return leadingSpaceRe.test(string); -} - -var STYLE_PLAIN = 1, - STYLE_SINGLE = 2, - STYLE_LITERAL = 3, - STYLE_FOLDED = 4, - STYLE_DOUBLE = 5; - -// Determines which scalar styles are possible and returns the preferred style. -// lineWidth = -1 => no limit. -// Pre-conditions: str.length > 0. -// Post-conditions: -// STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. -// STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). -// STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). -function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { - var i; - var char; - var hasLineBreak = false; - var hasFoldableLine = false; // only checked if shouldTrackWidth - var shouldTrackWidth = lineWidth !== -1; - var previousLineBreak = -1; // count the first line correctly - var plain = isPlainSafeFirst(string.charCodeAt(0)) - && !isWhitespace(string.charCodeAt(string.length - 1)); - - if (singleLineOnly) { - // Case: no block styles. - // Check for disallowed characters to rule out plain and single. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - plain = plain && isPlainSafe(char); - } - } else { - // Case: block styles permitted. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (char === CHAR_LINE_FEED) { - hasLineBreak = true; - // Check if any line can be folded. - if (shouldTrackWidth) { - hasFoldableLine = hasFoldableLine || - // Foldable line = too long, and not more-indented. - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' '); - previousLineBreak = i; - } - } else if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - plain = plain && isPlainSafe(char); - } - // in case the end is missing a \n - hasFoldableLine = hasFoldableLine || (shouldTrackWidth && - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' ')); - } - // Although every style can represent \n without escaping, prefer block styles - // for multiline, since they're more readable and they don't add empty lines. - // Also prefer folding a super-long line. - if (!hasLineBreak && !hasFoldableLine) { - // Strings interpretable as another type have to be quoted; - // e.g. the string 'true' vs. the boolean true. - return plain && !testAmbiguousType(string) - ? STYLE_PLAIN : STYLE_SINGLE; - } - // Edge case: block indentation indicator can only have one digit. - if (indentPerLevel > 9 && needIndentIndicator(string)) { - return STYLE_DOUBLE; - } - // At this point we know block styles are valid. - // Prefer literal style unless we want to fold. - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; -} - -// Note: line breaking/folding is implemented for only the folded style. -// NB. We drop the last trailing newline (if any) of a returned block scalar -// since the dumper adds its own newline. This always works: -// • No ending newline => unaffected; already using strip "-" chomping. -// • Ending newline => removed then restored. -// Importantly, this keeps the "+" chomp indicator from gaining an extra line. -function writeScalar(state, string, level, iskey) { - state.dump = (function () { - if (string.length === 0) { - return "''"; - } - if (!state.noCompatMode && - DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { - return "'" + string + "'"; - } - - var indent = state.indent * Math.max(1, level); // no 0-indent scalars - // As indentation gets deeper, let the width decrease monotonically - // to the lower bound min(state.lineWidth, 40). - // Note that this implies - // state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound. - // state.lineWidth > 40 + state.indent: width decreases until the lower bound. - // This behaves better than a constant minimum width which disallows narrower options, - // or an indent threshold which causes the width to suddenly increase. - var lineWidth = state.lineWidth === -1 - ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); - - // Without knowing if keys are implicit/explicit, assume implicit for safety. - var singleLineOnly = iskey - // No block styles in flow mode. - || (state.flowLevel > -1 && level >= state.flowLevel); - function testAmbiguity(string) { - return testImplicitResolving(state, string); - } - - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { - case STYLE_PLAIN: - return string; - case STYLE_SINGLE: - return "'" + string.replace(/'/g, "''") + "'"; - case STYLE_LITERAL: - return '|' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(string, indent)); - case STYLE_FOLDED: - return '>' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); - case STYLE_DOUBLE: - return '"' + escapeString(string, lineWidth) + '"'; - default: - throw new YAMLException('impossible error: invalid scalar style'); - } - }()); -} - -// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9. -function blockHeader(string, indentPerLevel) { - var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ''; - - // note the special case: the string '\n' counts as a "trailing" empty line. - var clip = string[string.length - 1] === '\n'; - var keep = clip && (string[string.length - 2] === '\n' || string === '\n'); - var chomp = keep ? '+' : (clip ? '' : '-'); - - return indentIndicator + chomp + '\n'; -} - -// (See the note for writeScalar.) -function dropEndingNewline(string) { - return string[string.length - 1] === '\n' ? string.slice(0, -1) : string; -} - -// Note: a long line without a suitable break point will exceed the width limit. -// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0. -function foldString(string, width) { - // In folded style, $k$ consecutive newlines output as $k+1$ newlines— - // unless they're before or after a more-indented line, or at the very - // beginning or end, in which case $k$ maps to $k$. - // Therefore, parse each chunk as newline(s) followed by a content line. - var lineRe = /(\n+)([^\n]*)/g; - - // first line (possibly an empty line) - var result = (function () { - var nextLF = string.indexOf('\n'); - nextLF = nextLF !== -1 ? nextLF : string.length; - lineRe.lastIndex = nextLF; - return foldLine(string.slice(0, nextLF), width); - }()); - // If we haven't reached the first content line yet, don't add an extra \n. - var prevMoreIndented = string[0] === '\n' || string[0] === ' '; - var moreIndented; - - // rest of the lines - var match; - while ((match = lineRe.exec(string))) { - var prefix = match[1], line = match[2]; - moreIndented = (line[0] === ' '); - result += prefix - + (!prevMoreIndented && !moreIndented && line !== '' - ? '\n' : '') - + foldLine(line, width); - prevMoreIndented = moreIndented; - } - - return result; -} - -// Greedy line breaking. -// Picks the longest line under the limit each time, -// otherwise settles for the shortest line over the limit. -// NB. More-indented lines *cannot* be folded, as that would add an extra \n. -function foldLine(line, width) { - if (line === '' || line[0] === ' ') return line; - - // Since a more-indented line adds a \n, breaks can't be followed by a space. - var breakRe = / [^ ]/g; // note: the match index will always be <= length-2. - var match; - // start is an inclusive index. end, curr, and next are exclusive. - var start = 0, end, curr = 0, next = 0; - var result = ''; - - // Invariants: 0 <= start <= length-1. - // 0 <= curr <= next <= max(0, length-2). curr - start <= width. - // Inside the loop: - // A match implies length >= 2, so curr and next are <= length-2. - while ((match = breakRe.exec(line))) { - next = match.index; - // maintain invariant: curr - start <= width - if (next - start > width) { - end = (curr > start) ? curr : next; // derive end <= length-2 - result += '\n' + line.slice(start, end); - // skip the space that was output as \n - start = end + 1; // derive start <= length-1 - } - curr = next; - } - - // By the invariants, start <= length-1, so there is something left over. - // It is either the whole string or a part starting from non-whitespace. - result += '\n'; - // Insert a break if the remainder is too long and there is a break available. - if (line.length - start > width && curr > start) { - result += line.slice(start, curr) + '\n' + line.slice(curr + 1); - } else { - result += line.slice(start); - } - - return result.slice(1); // drop extra \n joiner -} - -// Escapes a double-quoted string. -function escapeString(string) { - var result = ''; - var char, nextChar; - var escapeSeq; - - for (var i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates"). - if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) { - nextChar = string.charCodeAt(i + 1); - if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) { - // Combine the surrogate pair and store it escaped. - result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000); - // Advance index one extra since we already used that char here. - i++; continue; - } - } - escapeSeq = ESCAPE_SEQUENCES[char]; - result += !escapeSeq && isPrintable(char) - ? string[i] - : escapeSeq || encodeHex(char); - } - - return result; -} - -function writeFlowSequence(state, level, object) { - var _result = '', - _tag = state.tag, - index, - length; - - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level, object[index], false, false)) { - if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : ''); - _result += state.dump; - } - } - - state.tag = _tag; - state.dump = '[' + _result + ']'; -} - -function writeBlockSequence(state, level, object, compact) { - var _result = '', - _tag = state.tag, - index, - length; - - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level + 1, object[index], true, true)) { - if (!compact || index !== 0) { - _result += generateNextLine(state, level); - } - - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - _result += '-'; - } else { - _result += '- '; - } - - _result += state.dump; - } - } - - state.tag = _tag; - state.dump = _result || '[]'; // Empty sequence if no valid values. -} - -function writeFlowMapping(state, level, object) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - pairBuffer; - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = state.condenseFlow ? '"' : ''; - - if (index !== 0) pairBuffer += ', '; - - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - - if (!writeNode(state, level, objectKey, false, false)) { - continue; // Skip this pair because of invalid key; - } - - if (state.dump.length > 1024) pairBuffer += '? '; - - pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' '); - - if (!writeNode(state, level, objectValue, false, false)) { - continue; // Skip this pair because of invalid value. - } - - pairBuffer += state.dump; - - // Both key and value are valid. - _result += pairBuffer; - } - - state.tag = _tag; - state.dump = '{' + _result + '}'; -} - -function writeBlockMapping(state, level, object, compact) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - explicitPair, - pairBuffer; - - // Allow sorting keys so that the output file is deterministic - if (state.sortKeys === true) { - // Default sorting - objectKeyList.sort(); - } else if (typeof state.sortKeys === 'function') { - // Custom sort function - objectKeyList.sort(state.sortKeys); - } else if (state.sortKeys) { - // Something is wrong - throw new YAMLException('sortKeys must be a boolean or a function'); - } - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ''; - - if (!compact || index !== 0) { - pairBuffer += generateNextLine(state, level); - } - - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - - if (!writeNode(state, level + 1, objectKey, true, true, true)) { - continue; // Skip this pair because of invalid key. - } - - explicitPair = (state.tag !== null && state.tag !== '?') || - (state.dump && state.dump.length > 1024); - - if (explicitPair) { - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += '?'; - } else { - pairBuffer += '? '; - } - } - - pairBuffer += state.dump; - - if (explicitPair) { - pairBuffer += generateNextLine(state, level); - } - - if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { - continue; // Skip this pair because of invalid value. - } - - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += ':'; - } else { - pairBuffer += ': '; - } - - pairBuffer += state.dump; - - // Both key and value are valid. - _result += pairBuffer; - } - - state.tag = _tag; - state.dump = _result || '{}'; // Empty mapping if no valid pairs. -} - -function detectType(state, object, explicit) { - var _result, typeList, index, length, type, style; - - typeList = explicit ? state.explicitTypes : state.implicitTypes; - - for (index = 0, length = typeList.length; index < length; index += 1) { - type = typeList[index]; - - if ((type.instanceOf || type.predicate) && - (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && - (!type.predicate || type.predicate(object))) { - - state.tag = explicit ? type.tag : '?'; - - if (type.represent) { - style = state.styleMap[type.tag] || type.defaultStyle; - - if (_toString.call(type.represent) === '[object Function]') { - _result = type.represent(object, style); - } else if (_hasOwnProperty.call(type.represent, style)) { - _result = type.represent[style](object, style); - } else { - throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style'); - } - - state.dump = _result; - } - - return true; - } - } - - return false; -} - -// Serializes `object` and writes it to global `result`. -// Returns true on success, or false on invalid object. -// -function writeNode(state, level, object, block, compact, iskey) { - state.tag = null; - state.dump = object; - - if (!detectType(state, object, false)) { - detectType(state, object, true); - } - - var type = _toString.call(state.dump); - - if (block) { - block = (state.flowLevel < 0 || state.flowLevel > level); - } - - var objectOrArray = type === '[object Object]' || type === '[object Array]', - duplicateIndex, - duplicate; - - if (objectOrArray) { - duplicateIndex = state.duplicates.indexOf(object); - duplicate = duplicateIndex !== -1; - } - - if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) { - compact = false; - } - - if (duplicate && state.usedDuplicates[duplicateIndex]) { - state.dump = '*ref_' + duplicateIndex; - } else { - if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { - state.usedDuplicates[duplicateIndex] = true; - } - if (type === '[object Object]') { - if (block && (Object.keys(state.dump).length !== 0)) { - writeBlockMapping(state, level, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowMapping(state, level, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object Array]') { - var arrayLevel = (state.noArrayIndent) ? level - 1 : level; - if (block && (state.dump.length !== 0)) { - writeBlockSequence(state, arrayLevel, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowSequence(state, arrayLevel, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object String]') { - if (state.tag !== '?') { - writeScalar(state, state.dump, level, iskey); - } - } else { - if (state.skipInvalid) return false; - throw new YAMLException('unacceptable kind of an object to dump ' + type); - } - - if (state.tag !== null && state.tag !== '?') { - state.dump = '!<' + state.tag + '> ' + state.dump; - } - } - - return true; -} - -function getDuplicateReferences(object, state) { - var objects = [], - duplicatesIndexes = [], - index, - length; - - inspectNode(object, objects, duplicatesIndexes); - - for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { - state.duplicates.push(objects[duplicatesIndexes[index]]); - } - state.usedDuplicates = new Array(length); -} - -function inspectNode(object, objects, duplicatesIndexes) { - var objectKeyList, - index, - length; - - if (object !== null && typeof object === 'object') { - index = objects.indexOf(object); - if (index !== -1) { - if (duplicatesIndexes.indexOf(index) === -1) { - duplicatesIndexes.push(index); - } - } else { - objects.push(object); - - if (Array.isArray(object)) { - for (index = 0, length = object.length; index < length; index += 1) { - inspectNode(object[index], objects, duplicatesIndexes); - } - } else { - objectKeyList = Object.keys(object); - - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); - } - } - } - } -} - -function dump(input, options) { - options = options || {}; - - var state = new State(options); - - if (!state.noRefs) getDuplicateReferences(input, state); - - if (writeNode(state, 0, input, true, true)) return state.dump + '\n'; - - return ''; -} - -function safeDump(input, options) { - return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} - -module.exports.dump = dump; -module.exports.safeDump = safeDump; - -},{"./common":73,"./exception":75,"./schema/default_full":80,"./schema/default_safe":81}],75:[function(require,module,exports){ -// YAML error class. http://stackoverflow.com/questions/8458984 -// -'use strict'; - -function YAMLException(reason, mark) { - // Super constructor - Error.call(this); - - this.name = 'YAMLException'; - this.reason = reason; - this.mark = mark; - this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : ''); - - // Include stack trace in error object - if (Error.captureStackTrace) { - // Chrome and NodeJS - Error.captureStackTrace(this, this.constructor); - } else { - // FF, IE 10+ and Safari 6+. Fallback for others - this.stack = (new Error()).stack || ''; - } -} - - -// Inherit from Error -YAMLException.prototype = Object.create(Error.prototype); -YAMLException.prototype.constructor = YAMLException; - - -YAMLException.prototype.toString = function toString(compact) { - var result = this.name + ': '; - - result += this.reason || '(unknown reason)'; - - if (!compact && this.mark) { - result += ' ' + this.mark.toString(); - } - - return result; -}; - - -module.exports = YAMLException; - -},{}],76:[function(require,module,exports){ -'use strict'; - -/*eslint-disable max-len,no-use-before-define*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var Mark = require('./mark'); -var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe'); -var DEFAULT_FULL_SCHEMA = require('./schema/default_full'); - - -var _hasOwnProperty = Object.prototype.hasOwnProperty; - - -var CONTEXT_FLOW_IN = 1; -var CONTEXT_FLOW_OUT = 2; -var CONTEXT_BLOCK_IN = 3; -var CONTEXT_BLOCK_OUT = 4; - - -var CHOMPING_CLIP = 1; -var CHOMPING_STRIP = 2; -var CHOMPING_KEEP = 3; - - -var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; -var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; -var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; -var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; -var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; - - -function is_EOL(c) { - return (c === 0x0A/* LF */) || (c === 0x0D/* CR */); -} - -function is_WHITE_SPACE(c) { - return (c === 0x09/* Tab */) || (c === 0x20/* Space */); -} - -function is_WS_OR_EOL(c) { - return (c === 0x09/* Tab */) || - (c === 0x20/* Space */) || - (c === 0x0A/* LF */) || - (c === 0x0D/* CR */); -} - -function is_FLOW_INDICATOR(c) { - return c === 0x2C/* , */ || - c === 0x5B/* [ */ || - c === 0x5D/* ] */ || - c === 0x7B/* { */ || - c === 0x7D/* } */; -} - -function fromHexCode(c) { - var lc; - - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } - - /*eslint-disable no-bitwise*/ - lc = c | 0x20; - - if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) { - return lc - 0x61 + 10; - } - - return -1; -} - -function escapedHexLen(c) { - if (c === 0x78/* x */) { return 2; } - if (c === 0x75/* u */) { return 4; } - if (c === 0x55/* U */) { return 8; } - return 0; -} - -function fromDecimalCode(c) { - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } - - return -1; -} - -function simpleEscapeSequence(c) { - /* eslint-disable indent */ - return (c === 0x30/* 0 */) ? '\x00' : - (c === 0x61/* a */) ? '\x07' : - (c === 0x62/* b */) ? '\x08' : - (c === 0x74/* t */) ? '\x09' : - (c === 0x09/* Tab */) ? '\x09' : - (c === 0x6E/* n */) ? '\x0A' : - (c === 0x76/* v */) ? '\x0B' : - (c === 0x66/* f */) ? '\x0C' : - (c === 0x72/* r */) ? '\x0D' : - (c === 0x65/* e */) ? '\x1B' : - (c === 0x20/* Space */) ? ' ' : - (c === 0x22/* " */) ? '\x22' : - (c === 0x2F/* / */) ? '/' : - (c === 0x5C/* \ */) ? '\x5C' : - (c === 0x4E/* N */) ? '\x85' : - (c === 0x5F/* _ */) ? '\xA0' : - (c === 0x4C/* L */) ? '\u2028' : - (c === 0x50/* P */) ? '\u2029' : ''; -} - -function charFromCodepoint(c) { - if (c <= 0xFFFF) { - return String.fromCharCode(c); - } - // Encode UTF-16 surrogate pair - // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF - return String.fromCharCode( - ((c - 0x010000) >> 10) + 0xD800, - ((c - 0x010000) & 0x03FF) + 0xDC00 - ); -} - -var simpleEscapeCheck = new Array(256); // integer, for fast access -var simpleEscapeMap = new Array(256); -for (var i = 0; i < 256; i++) { - simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; - simpleEscapeMap[i] = simpleEscapeSequence(i); -} - - -function State(input, options) { - this.input = input; - - this.filename = options['filename'] || null; - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.onWarning = options['onWarning'] || null; - this.legacy = options['legacy'] || false; - this.json = options['json'] || false; - this.listener = options['listener'] || null; - - this.implicitTypes = this.schema.compiledImplicit; - this.typeMap = this.schema.compiledTypeMap; - - this.length = input.length; - this.position = 0; - this.line = 0; - this.lineStart = 0; - this.lineIndent = 0; - - this.documents = []; - - /* - this.version; - this.checkLineBreaks; - this.tagMap; - this.anchorMap; - this.tag; - this.anchor; - this.kind; - this.result;*/ - -} - - -function generateError(state, message) { - return new YAMLException( - message, - new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart))); -} - -function throwError(state, message) { - throw generateError(state, message); -} - -function throwWarning(state, message) { - if (state.onWarning) { - state.onWarning.call(null, generateError(state, message)); - } -} - - -var directiveHandlers = { - - YAML: function handleYamlDirective(state, name, args) { - - var match, major, minor; - - if (state.version !== null) { - throwError(state, 'duplication of %YAML directive'); - } - - if (args.length !== 1) { - throwError(state, 'YAML directive accepts exactly one argument'); - } - - match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]); - - if (match === null) { - throwError(state, 'ill-formed argument of the YAML directive'); - } - - major = parseInt(match[1], 10); - minor = parseInt(match[2], 10); - - if (major !== 1) { - throwError(state, 'unacceptable YAML version of the document'); - } - - state.version = args[0]; - state.checkLineBreaks = (minor < 2); - - if (minor !== 1 && minor !== 2) { - throwWarning(state, 'unsupported YAML version of the document'); - } - }, - - TAG: function handleTagDirective(state, name, args) { - - var handle, prefix; - - if (args.length !== 2) { - throwError(state, 'TAG directive accepts exactly two arguments'); - } - - handle = args[0]; - prefix = args[1]; - - if (!PATTERN_TAG_HANDLE.test(handle)) { - throwError(state, 'ill-formed tag handle (first argument) of the TAG directive'); - } - - if (_hasOwnProperty.call(state.tagMap, handle)) { - throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); - } - - if (!PATTERN_TAG_URI.test(prefix)) { - throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive'); - } - - state.tagMap[handle] = prefix; - } -}; - - -function captureSegment(state, start, end, checkJson) { - var _position, _length, _character, _result; - - if (start < end) { - _result = state.input.slice(start, end); - - if (checkJson) { - for (_position = 0, _length = _result.length; _position < _length; _position += 1) { - _character = _result.charCodeAt(_position); - if (!(_character === 0x09 || - (0x20 <= _character && _character <= 0x10FFFF))) { - throwError(state, 'expected valid JSON character'); - } - } - } else if (PATTERN_NON_PRINTABLE.test(_result)) { - throwError(state, 'the stream contains non-printable characters'); - } - - state.result += _result; - } -} - -function mergeMappings(state, destination, source, overridableKeys) { - var sourceKeys, key, index, quantity; - - if (!common.isObject(source)) { - throwError(state, 'cannot merge mappings; the provided source object is unacceptable'); - } - - sourceKeys = Object.keys(source); - - for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { - key = sourceKeys[index]; - - if (!_hasOwnProperty.call(destination, key)) { - destination[key] = source[key]; - overridableKeys[key] = true; - } - } -} - -function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { - var index, quantity; - - keyNode = String(keyNode); - - if (_result === null) { - _result = {}; - } - - if (keyTag === 'tag:yaml.org,2002:merge') { - if (Array.isArray(valueNode)) { - for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { - mergeMappings(state, _result, valueNode[index], overridableKeys); - } - } else { - mergeMappings(state, _result, valueNode, overridableKeys); - } - } else { - if (!state.json && - !_hasOwnProperty.call(overridableKeys, keyNode) && - _hasOwnProperty.call(_result, keyNode)) { - state.line = startLine || state.line; - state.position = startPos || state.position; - throwError(state, 'duplicated mapping key'); - } - _result[keyNode] = valueNode; - delete overridableKeys[keyNode]; - } - - return _result; -} - -function readLineBreak(state) { - var ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x0A/* LF */) { - state.position++; - } else if (ch === 0x0D/* CR */) { - state.position++; - if (state.input.charCodeAt(state.position) === 0x0A/* LF */) { - state.position++; - } - } else { - throwError(state, 'a line break is expected'); - } - - state.line += 1; - state.lineStart = state.position; -} - -function skipSeparationSpace(state, allowComments, checkIndent) { - var lineBreaks = 0, - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (allowComments && ch === 0x23/* # */) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0); - } - - if (is_EOL(ch)) { - readLineBreak(state); - - ch = state.input.charCodeAt(state.position); - lineBreaks++; - state.lineIndent = 0; - - while (ch === 0x20/* Space */) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - } else { - break; - } - } - - if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { - throwWarning(state, 'deficient indentation'); - } - - return lineBreaks; -} - -function testDocumentSeparator(state) { - var _position = state.position, - ch; - - ch = state.input.charCodeAt(_position); - - // Condition state.position === state.lineStart is tested - // in parent on each call, for efficiency. No needs to test here again. - if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) && - ch === state.input.charCodeAt(_position + 1) && - ch === state.input.charCodeAt(_position + 2)) { - - _position += 3; - - ch = state.input.charCodeAt(_position); - - if (ch === 0 || is_WS_OR_EOL(ch)) { - return true; - } - } - - return false; -} - -function writeFoldedLines(state, count) { - if (count === 1) { - state.result += ' '; - } else if (count > 1) { - state.result += common.repeat('\n', count - 1); - } -} - - -function readPlainScalar(state, nodeIndent, withinFlowCollection) { - var preceding, - following, - captureStart, - captureEnd, - hasPendingContent, - _line, - _lineStart, - _lineIndent, - _kind = state.kind, - _result = state.result, - ch; - - ch = state.input.charCodeAt(state.position); - - if (is_WS_OR_EOL(ch) || - is_FLOW_INDICATOR(ch) || - ch === 0x23/* # */ || - ch === 0x26/* & */ || - ch === 0x2A/* * */ || - ch === 0x21/* ! */ || - ch === 0x7C/* | */ || - ch === 0x3E/* > */ || - ch === 0x27/* ' */ || - ch === 0x22/* " */ || - ch === 0x25/* % */ || - ch === 0x40/* @ */ || - ch === 0x60/* ` */) { - return false; - } - - if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - return false; - } - } - - state.kind = 'scalar'; - state.result = ''; - captureStart = captureEnd = state.position; - hasPendingContent = false; - - while (ch !== 0) { - if (ch === 0x3A/* : */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - break; - } - - } else if (ch === 0x23/* # */) { - preceding = state.input.charCodeAt(state.position - 1); - - if (is_WS_OR_EOL(preceding)) { - break; - } - - } else if ((state.position === state.lineStart && testDocumentSeparator(state)) || - withinFlowCollection && is_FLOW_INDICATOR(ch)) { - break; - - } else if (is_EOL(ch)) { - _line = state.line; - _lineStart = state.lineStart; - _lineIndent = state.lineIndent; - skipSeparationSpace(state, false, -1); - - if (state.lineIndent >= nodeIndent) { - hasPendingContent = true; - ch = state.input.charCodeAt(state.position); - continue; - } else { - state.position = captureEnd; - state.line = _line; - state.lineStart = _lineStart; - state.lineIndent = _lineIndent; - break; - } - } - - if (hasPendingContent) { - captureSegment(state, captureStart, captureEnd, false); - writeFoldedLines(state, state.line - _line); - captureStart = captureEnd = state.position; - hasPendingContent = false; - } - - if (!is_WHITE_SPACE(ch)) { - captureEnd = state.position + 1; - } - - ch = state.input.charCodeAt(++state.position); - } - - captureSegment(state, captureStart, captureEnd, false); - - if (state.result) { - return true; - } - - state.kind = _kind; - state.result = _result; - return false; -} - -function readSingleQuotedScalar(state, nodeIndent) { - var ch, - captureStart, captureEnd; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x27/* ' */) { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x27/* ' */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x27/* ' */) { - captureStart = state.position; - state.position++; - captureEnd = state.position; - } else { - return true; - } - - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a single quoted scalar'); - - } else { - state.position++; - captureEnd = state.position; - } - } - - throwError(state, 'unexpected end of the stream within a single quoted scalar'); -} - -function readDoubleQuotedScalar(state, nodeIndent) { - var captureStart, - captureEnd, - hexLength, - hexResult, - tmp, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x22/* " */) { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x22/* " */) { - captureSegment(state, captureStart, state.position, true); - state.position++; - return true; - - } else if (ch === 0x5C/* \ */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - - if (is_EOL(ch)) { - skipSeparationSpace(state, false, nodeIndent); - - // TODO: rework to inline fn with no type cast? - } else if (ch < 256 && simpleEscapeCheck[ch]) { - state.result += simpleEscapeMap[ch]; - state.position++; - - } else if ((tmp = escapedHexLen(ch)) > 0) { - hexLength = tmp; - hexResult = 0; - - for (; hexLength > 0; hexLength--) { - ch = state.input.charCodeAt(++state.position); - - if ((tmp = fromHexCode(ch)) >= 0) { - hexResult = (hexResult << 4) + tmp; - - } else { - throwError(state, 'expected hexadecimal character'); - } - } - - state.result += charFromCodepoint(hexResult); - - state.position++; - - } else { - throwError(state, 'unknown escape sequence'); - } - - captureStart = captureEnd = state.position; - - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a double quoted scalar'); - - } else { - state.position++; - captureEnd = state.position; - } - } - - throwError(state, 'unexpected end of the stream within a double quoted scalar'); -} - -function readFlowCollection(state, nodeIndent) { - var readNext = true, - _line, - _tag = state.tag, - _result, - _anchor = state.anchor, - following, - terminator, - isPair, - isExplicitPair, - isMapping, - overridableKeys = {}, - keyNode, - keyTag, - valueNode, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x5B/* [ */) { - terminator = 0x5D;/* ] */ - isMapping = false; - _result = []; - } else if (ch === 0x7B/* { */) { - terminator = 0x7D;/* } */ - isMapping = true; - _result = {}; - } else { - return false; - } - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(++state.position); - - while (ch !== 0) { - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if (ch === terminator) { - state.position++; - state.tag = _tag; - state.anchor = _anchor; - state.kind = isMapping ? 'mapping' : 'sequence'; - state.result = _result; - return true; - } else if (!readNext) { - throwError(state, 'missed comma between flow collection entries'); - } - - keyTag = keyNode = valueNode = null; - isPair = isExplicitPair = false; - - if (ch === 0x3F/* ? */) { - following = state.input.charCodeAt(state.position + 1); - - if (is_WS_OR_EOL(following)) { - isPair = isExplicitPair = true; - state.position++; - skipSeparationSpace(state, true, nodeIndent); - } - } - - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - keyTag = state.tag; - keyNode = state.result; - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) { - isPair = true; - ch = state.input.charCodeAt(++state.position); - skipSeparationSpace(state, true, nodeIndent); - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - valueNode = state.result; - } - - if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); - } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); - } else { - _result.push(keyNode); - } - - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x2C/* , */) { - readNext = true; - ch = state.input.charCodeAt(++state.position); - } else { - readNext = false; - } - } - - throwError(state, 'unexpected end of the stream within a flow collection'); -} - -function readBlockScalar(state, nodeIndent) { - var captureStart, - folding, - chomping = CHOMPING_CLIP, - didReadContent = false, - detectedIndent = false, - textIndent = nodeIndent, - emptyLines = 0, - atMoreIndented = false, - tmp, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch === 0x7C/* | */) { - folding = false; - } else if (ch === 0x3E/* > */) { - folding = true; - } else { - return false; - } - - state.kind = 'scalar'; - state.result = ''; - - while (ch !== 0) { - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x2B/* + */ || ch === 0x2D/* - */) { - if (CHOMPING_CLIP === chomping) { - chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP; - } else { - throwError(state, 'repeat of a chomping mode identifier'); - } - - } else if ((tmp = fromDecimalCode(ch)) >= 0) { - if (tmp === 0) { - throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one'); - } else if (!detectedIndent) { - textIndent = nodeIndent + tmp - 1; - detectedIndent = true; - } else { - throwError(state, 'repeat of an indentation width identifier'); - } - - } else { - break; - } - } - - if (is_WHITE_SPACE(ch)) { - do { ch = state.input.charCodeAt(++state.position); } - while (is_WHITE_SPACE(ch)); - - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (!is_EOL(ch) && (ch !== 0)); - } - } - - while (ch !== 0) { - readLineBreak(state); - state.lineIndent = 0; - - ch = state.input.charCodeAt(state.position); - - while ((!detectedIndent || state.lineIndent < textIndent) && - (ch === 0x20/* Space */)) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - - if (!detectedIndent && state.lineIndent > textIndent) { - textIndent = state.lineIndent; - } - - if (is_EOL(ch)) { - emptyLines++; - continue; - } - - // End of the scalar. - if (state.lineIndent < textIndent) { - - // Perform the chomping. - if (chomping === CHOMPING_KEEP) { - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } else if (chomping === CHOMPING_CLIP) { - if (didReadContent) { // i.e. only if the scalar is not empty. - state.result += '\n'; - } - } - - // Break this `while` cycle and go to the funciton's epilogue. - break; - } - - // Folded style: use fancy rules to handle line breaks. - if (folding) { - - // Lines starting with white space characters (more-indented lines) are not folded. - if (is_WHITE_SPACE(ch)) { - atMoreIndented = true; - // except for the first content line (cf. Example 8.1) - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - - // End of more-indented block. - } else if (atMoreIndented) { - atMoreIndented = false; - state.result += common.repeat('\n', emptyLines + 1); - - // Just one line break - perceive as the same line. - } else if (emptyLines === 0) { - if (didReadContent) { // i.e. only if we have already read some scalar content. - state.result += ' '; - } - - // Several line breaks - perceive as different lines. - } else { - state.result += common.repeat('\n', emptyLines); - } - - // Literal style: just add exact number of line breaks between content lines. - } else { - // Keep all line breaks except the header line break. - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } - - didReadContent = true; - detectedIndent = true; - emptyLines = 0; - captureStart = state.position; - - while (!is_EOL(ch) && (ch !== 0)) { - ch = state.input.charCodeAt(++state.position); - } - - captureSegment(state, captureStart, state.position, false); - } - - return true; -} - -function readBlockSequence(state, nodeIndent) { - var _line, - _tag = state.tag, - _anchor = state.anchor, - _result = [], - following, - detected = false, - ch; - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - - if (ch !== 0x2D/* - */) { - break; - } - - following = state.input.charCodeAt(state.position + 1); - - if (!is_WS_OR_EOL(following)) { - break; - } - - detected = true; - state.position++; - - if (skipSeparationSpace(state, true, -1)) { - if (state.lineIndent <= nodeIndent) { - _result.push(null); - ch = state.input.charCodeAt(state.position); - continue; - } - } - - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); - _result.push(state.result); - skipSeparationSpace(state, true, -1); - - ch = state.input.charCodeAt(state.position); - - if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { - throwError(state, 'bad indentation of a sequence entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'sequence'; - state.result = _result; - return true; - } - return false; -} - -function readBlockMapping(state, nodeIndent, flowIndent) { - var following, - allowCompact, - _line, - _pos, - _tag = state.tag, - _anchor = state.anchor, - _result = {}, - overridableKeys = {}, - keyTag = null, - keyNode = null, - valueNode = null, - atExplicitKey = false, - detected = false, - ch; - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - - ch = state.input.charCodeAt(state.position); - - while (ch !== 0) { - following = state.input.charCodeAt(state.position + 1); - _line = state.line; // Save the current line. - _pos = state.position; - - // - // Explicit notation case. There are two separate blocks: - // first for the key (denoted by "?") and second for the value (denoted by ":") - // - if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) { - - if (ch === 0x3F/* ? */) { - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } - - detected = true; - atExplicitKey = true; - allowCompact = true; - - } else if (atExplicitKey) { - // i.e. 0x3A/* : */ === character after the explicit key. - atExplicitKey = false; - allowCompact = true; - - } else { - throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line'); - } - - state.position += 1; - ch = following; - - // - // Implicit notation case. Flow-style node as the key first, then ":", and the value. - // - } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - - if (state.line === _line) { - ch = state.input.charCodeAt(state.position); - - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (ch === 0x3A/* : */) { - ch = state.input.charCodeAt(++state.position); - - if (!is_WS_OR_EOL(ch)) { - throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping'); - } - - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } - - detected = true; - atExplicitKey = false; - allowCompact = false; - keyTag = state.tag; - keyNode = state.result; - - } else if (detected) { - throwError(state, 'can not read an implicit mapping pair; a colon is missed'); - - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } - - } else if (detected) { - throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key'); - - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } - - } else { - break; // Reading is done. Go to the epilogue. - } - - // - // Common reading code for both explicit and implicit notations. - // - if (state.line === _line || state.lineIndent > nodeIndent) { - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { - if (atExplicitKey) { - keyNode = state.result; - } else { - valueNode = state.result; - } - } - - if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); - keyTag = keyNode = valueNode = null; - } - - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - } - - if (state.lineIndent > nodeIndent && (ch !== 0)) { - throwError(state, 'bad indentation of a mapping entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - - // - // Epilogue. - // - - // Special case: last mapping's node contains only the key in explicit notation. - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - } - - // Expose the resulting mapping. - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'mapping'; - state.result = _result; - } - - return detected; -} - -function readTagProperty(state) { - var _position, - isVerbatim = false, - isNamed = false, - tagHandle, - tagName, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x21/* ! */) return false; - - if (state.tag !== null) { - throwError(state, 'duplication of a tag property'); - } - - ch = state.input.charCodeAt(++state.position); - - if (ch === 0x3C/* < */) { - isVerbatim = true; - ch = state.input.charCodeAt(++state.position); - - } else if (ch === 0x21/* ! */) { - isNamed = true; - tagHandle = '!!'; - ch = state.input.charCodeAt(++state.position); - - } else { - tagHandle = '!'; - } - - _position = state.position; - - if (isVerbatim) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && ch !== 0x3E/* > */); - - if (state.position < state.length) { - tagName = state.input.slice(_position, state.position); - ch = state.input.charCodeAt(++state.position); - } else { - throwError(state, 'unexpected end of the stream within a verbatim tag'); - } - } else { - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - - if (ch === 0x21/* ! */) { - if (!isNamed) { - tagHandle = state.input.slice(_position - 1, state.position + 1); - - if (!PATTERN_TAG_HANDLE.test(tagHandle)) { - throwError(state, 'named tag handle cannot contain such characters'); - } - - isNamed = true; - _position = state.position + 1; - } else { - throwError(state, 'tag suffix cannot contain exclamation marks'); - } - } - - ch = state.input.charCodeAt(++state.position); - } - - tagName = state.input.slice(_position, state.position); - - if (PATTERN_FLOW_INDICATORS.test(tagName)) { - throwError(state, 'tag suffix cannot contain flow indicator characters'); - } - } - - if (tagName && !PATTERN_TAG_URI.test(tagName)) { - throwError(state, 'tag name cannot contain such characters: ' + tagName); - } - - if (isVerbatim) { - state.tag = tagName; - - } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { - state.tag = state.tagMap[tagHandle] + tagName; - - } else if (tagHandle === '!') { - state.tag = '!' + tagName; - - } else if (tagHandle === '!!') { - state.tag = 'tag:yaml.org,2002:' + tagName; - - } else { - throwError(state, 'undeclared tag handle "' + tagHandle + '"'); - } - - return true; -} - -function readAnchorProperty(state) { - var _position, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x26/* & */) return false; - - if (state.anchor !== null) { - throwError(state, 'duplication of an anchor property'); - } - - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (state.position === _position) { - throwError(state, 'name of an anchor node must contain at least one character'); - } - - state.anchor = state.input.slice(_position, state.position); - return true; -} - -function readAlias(state) { - var _position, alias, - ch; - - ch = state.input.charCodeAt(state.position); - - if (ch !== 0x2A/* * */) return false; - - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (state.position === _position) { - throwError(state, 'name of an alias node must contain at least one character'); - } - - alias = state.input.slice(_position, state.position); - - if (!state.anchorMap.hasOwnProperty(alias)) { - throwError(state, 'unidentified alias "' + alias + '"'); - } - - state.result = state.anchorMap[alias]; - skipSeparationSpace(state, true, -1); - return true; -} - -function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { - var allowBlockStyles, - allowBlockScalars, - allowBlockCollections, - indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } - } - - if (indentStatus === 1) { - while (readTagProperty(state) || readAnchorProperty(state)) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - allowBlockCollections = allowBlockStyles; - - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } else { - allowBlockCollections = false; - } - } - } - - if (allowBlockCollections) { - allowBlockCollections = atNewLine || allowCompact; - } - - if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { - if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { - flowIndent = parentIndent; - } else { - flowIndent = parentIndent + 1; - } - - blockIndent = state.position - state.lineStart; - - if (indentStatus === 1) { - if (allowBlockCollections && - (readBlockSequence(state, blockIndent) || - readBlockMapping(state, blockIndent, flowIndent)) || - readFlowCollection(state, flowIndent)) { - hasContent = true; - } else { - if ((allowBlockScalars && readBlockScalar(state, flowIndent)) || - readSingleQuotedScalar(state, flowIndent) || - readDoubleQuotedScalar(state, flowIndent)) { - hasContent = true; - - } else if (readAlias(state)) { - hasContent = true; - - if (state.tag !== null || state.anchor !== null) { - throwError(state, 'alias node should not have any properties'); - } - - } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { - hasContent = true; - - if (state.tag === null) { - state.tag = '?'; - } - } - - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else if (indentStatus === 0) { - // Special case: block sequences are allowed to have same indentation level as the parent. - // http://www.yaml.org/spec/1.2/spec.html#id2799784 - hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); - } - } - - if (state.tag !== null && state.tag !== '!') { - if (state.tag === '?') { - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; - - // Implicit resolving is not allowed for non-scalar types, and '?' - // non-specific tag is only assigned to plain scalars. So, it isn't - // needed to check for 'kind' conformity. - - if (type.resolve(state.result)) { // `state.result` updated in resolver if matched - state.result = type.construct(state.result); - state.tag = type.tag; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - break; - } - } - } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { - type = state.typeMap[state.kind || 'fallback'][state.tag]; - - if (state.result !== null && type.kind !== state.kind) { - throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); - } - - if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched - throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); - } else { - state.result = type.construct(state.result); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else { - throwError(state, 'unknown tag !<' + state.tag + '>'); - } - } - - if (state.listener !== null) { - state.listener('close', state); - } - return state.tag !== null || state.anchor !== null || hasContent; -} - -function readDocument(state) { - var documentStart = state.position, - _position, - directiveName, - directiveArgs, - hasDirectives = false, - ch; - - state.version = null; - state.checkLineBreaks = state.legacy; - state.tagMap = {}; - state.anchorMap = {}; - - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - skipSeparationSpace(state, true, -1); - - ch = state.input.charCodeAt(state.position); - - if (state.lineIndent > 0 || ch !== 0x25/* % */) { - break; - } - - hasDirectives = true; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - directiveName = state.input.slice(_position, state.position); - directiveArgs = []; - - if (directiveName.length < 1) { - throwError(state, 'directive name must not be less than one character in length'); - } - - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && !is_EOL(ch)); - break; - } - - if (is_EOL(ch)) break; - - _position = state.position; - - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - - directiveArgs.push(state.input.slice(_position, state.position)); - } - - if (ch !== 0) readLineBreak(state); - - if (_hasOwnProperty.call(directiveHandlers, directiveName)) { - directiveHandlers[directiveName](state, directiveName, directiveArgs); - } else { - throwWarning(state, 'unknown document directive "' + directiveName + '"'); - } - } - - skipSeparationSpace(state, true, -1); - - if (state.lineIndent === 0 && - state.input.charCodeAt(state.position) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 1) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 2) === 0x2D/* - */) { - state.position += 3; - skipSeparationSpace(state, true, -1); - - } else if (hasDirectives) { - throwError(state, 'directives end mark is expected'); - } - - composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); - skipSeparationSpace(state, true, -1); - - if (state.checkLineBreaks && - PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { - throwWarning(state, 'non-ASCII line breaks are interpreted as content'); - } - - state.documents.push(state.result); - - if (state.position === state.lineStart && testDocumentSeparator(state)) { - - if (state.input.charCodeAt(state.position) === 0x2E/* . */) { - state.position += 3; - skipSeparationSpace(state, true, -1); - } - return; - } - - if (state.position < (state.length - 1)) { - throwError(state, 'end of the stream or a document separator is expected'); - } else { - return; - } -} - - -function loadDocuments(input, options) { - input = String(input); - options = options || {}; - - if (input.length !== 0) { - - // Add tailing `\n` if not exists - if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ && - input.charCodeAt(input.length - 1) !== 0x0D/* CR */) { - input += '\n'; - } - - // Strip BOM - if (input.charCodeAt(0) === 0xFEFF) { - input = input.slice(1); - } - } - - var state = new State(input, options); - - // Use 0 as string terminator. That significantly simplifies bounds check. - state.input += '\0'; - - while (state.input.charCodeAt(state.position) === 0x20/* Space */) { - state.lineIndent += 1; - state.position += 1; - } - - while (state.position < (state.length - 1)) { - readDocument(state); - } - - return state.documents; -} - - -function loadAll(input, iterator, options) { - var documents = loadDocuments(input, options), index, length; - - if (typeof iterator !== 'function') { - return documents; - } - - for (index = 0, length = documents.length; index < length; index += 1) { - iterator(documents[index]); - } -} - - -function load(input, options) { - var documents = loadDocuments(input, options); - - if (documents.length === 0) { - /*eslint-disable no-undefined*/ - return undefined; - } else if (documents.length === 1) { - return documents[0]; - } - throw new YAMLException('expected a single document in the stream, but found more'); -} - - -function safeLoadAll(input, output, options) { - if (typeof output === 'function') { - loadAll(input, output, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); - } else { - return loadAll(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); - } -} - - -function safeLoad(input, options) { - return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} - - -module.exports.loadAll = loadAll; -module.exports.load = load; -module.exports.safeLoadAll = safeLoadAll; -module.exports.safeLoad = safeLoad; - -},{"./common":73,"./exception":75,"./mark":77,"./schema/default_full":80,"./schema/default_safe":81}],77:[function(require,module,exports){ -'use strict'; - - -var common = require('./common'); - - -function Mark(name, buffer, position, line, column) { - this.name = name; - this.buffer = buffer; - this.position = position; - this.line = line; - this.column = column; -} - - -Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { - var head, start, tail, end, snippet; - - if (!this.buffer) return null; - - indent = indent || 4; - maxLength = maxLength || 75; - - head = ''; - start = this.position; - - while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) { - start -= 1; - if (this.position - start > (maxLength / 2 - 1)) { - head = ' ... '; - start += 5; - break; - } - } - - tail = ''; - end = this.position; - - while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) { - end += 1; - if (end - this.position > (maxLength / 2 - 1)) { - tail = ' ... '; - end -= 5; - break; - } - } - - snippet = this.buffer.slice(start, end); - - return common.repeat(' ', indent) + head + snippet + tail + '\n' + - common.repeat(' ', indent + this.position - start + head.length) + '^'; -}; - - -Mark.prototype.toString = function toString(compact) { - var snippet, where = ''; - - if (this.name) { - where += 'in "' + this.name + '" '; - } - - where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1); - - if (!compact) { - snippet = this.getSnippet(); - - if (snippet) { - where += ':\n' + snippet; - } - } - - return where; -}; - - -module.exports = Mark; - -},{"./common":73}],78:[function(require,module,exports){ -'use strict'; - -/*eslint-disable max-len*/ - -var common = require('./common'); -var YAMLException = require('./exception'); -var Type = require('./type'); - - -function compileList(schema, name, result) { - var exclude = []; - - schema.include.forEach(function (includedSchema) { - result = compileList(includedSchema, name, result); - }); - - schema[name].forEach(function (currentType) { - result.forEach(function (previousType, previousIndex) { - if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { - exclude.push(previousIndex); - } - }); - - result.push(currentType); - }); - - return result.filter(function (type, index) { - return exclude.indexOf(index) === -1; - }); -} - - -function compileMap(/* lists... */) { - var result = { - scalar: {}, - sequence: {}, - mapping: {}, - fallback: {} - }, index, length; - - function collectType(type) { - result[type.kind][type.tag] = result['fallback'][type.tag] = type; - } - - for (index = 0, length = arguments.length; index < length; index += 1) { - arguments[index].forEach(collectType); - } - return result; -} - - -function Schema(definition) { - this.include = definition.include || []; - this.implicit = definition.implicit || []; - this.explicit = definition.explicit || []; - - this.implicit.forEach(function (type) { - if (type.loadKind && type.loadKind !== 'scalar') { - throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); - } - }); - - this.compiledImplicit = compileList(this, 'implicit', []); - this.compiledExplicit = compileList(this, 'explicit', []); - this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); -} - - -Schema.DEFAULT = null; - - -Schema.create = function createSchema() { - var schemas, types; - - switch (arguments.length) { - case 1: - schemas = Schema.DEFAULT; - types = arguments[0]; - break; - - case 2: - schemas = arguments[0]; - types = arguments[1]; - break; - - default: - throw new YAMLException('Wrong number of arguments for Schema.create function'); - } - - schemas = common.toArray(schemas); - types = common.toArray(types); - - if (!schemas.every(function (schema) { return schema instanceof Schema; })) { - throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.'); - } - - if (!types.every(function (type) { return type instanceof Type; })) { - throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); - } - - return new Schema({ - include: schemas, - explicit: types - }); -}; - - -module.exports = Schema; - -},{"./common":73,"./exception":75,"./type":84}],79:[function(require,module,exports){ -// Standard YAML's Core schema. -// http://www.yaml.org/spec/1.2/spec.html#id2804923 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, Core schema has no distinctions from JSON schema is JS-YAML. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./json') - ] -}); - -},{"../schema":78,"./json":83}],80:[function(require,module,exports){ -// JS-YAML's default schema for `load` function. -// It is not described in the YAML specification. -// -// This schema is based on JS-YAML's default safe schema and includes -// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function. -// -// Also this schema is used as default base schema at `Schema.create` function. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = Schema.DEFAULT = new Schema({ - include: [ - require('./default_safe') - ], - explicit: [ - require('../type/js/undefined'), - require('../type/js/regexp'), - require('../type/js/function') - ] -}); - -},{"../schema":78,"../type/js/function":89,"../type/js/regexp":90,"../type/js/undefined":91,"./default_safe":81}],81:[function(require,module,exports){ -// JS-YAML's default schema for `safeLoad` function. -// It is not described in the YAML specification. -// -// This schema is based on standard YAML's Core schema and includes most of -// extra types described at YAML tag repository. (http://yaml.org/type/) - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./core') - ], - implicit: [ - require('../type/timestamp'), - require('../type/merge') - ], - explicit: [ - require('../type/binary'), - require('../type/omap'), - require('../type/pairs'), - require('../type/set') - ] -}); - -},{"../schema":78,"../type/binary":85,"../type/merge":93,"../type/omap":95,"../type/pairs":96,"../type/set":98,"../type/timestamp":100,"./core":79}],82:[function(require,module,exports){ -// Standard YAML's Failsafe schema. -// http://www.yaml.org/spec/1.2/spec.html#id2802346 - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - explicit: [ - require('../type/str'), - require('../type/seq'), - require('../type/map') - ] -}); - -},{"../schema":78,"../type/map":92,"../type/seq":97,"../type/str":99}],83:[function(require,module,exports){ -// Standard YAML's JSON schema. -// http://www.yaml.org/spec/1.2/spec.html#id2803231 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, this schema is not such strict as defined in the YAML specification. -// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. - - -'use strict'; - - -var Schema = require('../schema'); - - -module.exports = new Schema({ - include: [ - require('./failsafe') - ], - implicit: [ - require('../type/null'), - require('../type/bool'), - require('../type/int'), - require('../type/float') - ] -}); - -},{"../schema":78,"../type/bool":86,"../type/float":87,"../type/int":88,"../type/null":94,"./failsafe":82}],84:[function(require,module,exports){ -'use strict'; - -var YAMLException = require('./exception'); - -var TYPE_CONSTRUCTOR_OPTIONS = [ - 'kind', - 'resolve', - 'construct', - 'instanceOf', - 'predicate', - 'represent', - 'defaultStyle', - 'styleAliases' -]; - -var YAML_NODE_KINDS = [ - 'scalar', - 'sequence', - 'mapping' -]; - -function compileStyleAliases(map) { - var result = {}; - - if (map !== null) { - Object.keys(map).forEach(function (style) { - map[style].forEach(function (alias) { - result[String(alias)] = style; - }); - }); - } - - return result; -} - -function Type(tag, options) { - options = options || {}; - - Object.keys(options).forEach(function (name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); - } - }); - - // TODO: Add tag format check. - this.tag = tag; - this.kind = options['kind'] || null; - this.resolve = options['resolve'] || function () { return true; }; - this.construct = options['construct'] || function (data) { return data; }; - this.instanceOf = options['instanceOf'] || null; - this.predicate = options['predicate'] || null; - this.represent = options['represent'] || null; - this.defaultStyle = options['defaultStyle'] || null; - this.styleAliases = compileStyleAliases(options['styleAliases'] || null); - - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); - } -} - -module.exports = Type; - -},{"./exception":75}],85:[function(require,module,exports){ -'use strict'; - -/*eslint-disable no-bitwise*/ - -var NodeBuffer; - -try { - // A trick for browserified version, to not include `Buffer` shim - var _require = require; - NodeBuffer = _require('buffer').Buffer; -} catch (__) {} - -var Type = require('../type'); - - -// [ 64, 65, 66 ] -> [ padding, CR, LF ] -var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; - - -function resolveYamlBinary(data) { - if (data === null) return false; - - var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; - - // Convert one by one. - for (idx = 0; idx < max; idx++) { - code = map.indexOf(data.charAt(idx)); - - // Skip CR/LF - if (code > 64) continue; - - // Fail on illegal characters - if (code < 0) return false; - - bitlen += 6; - } - - // If there are any bits left, source was corrupted - return (bitlen % 8) === 0; -} - -function constructYamlBinary(data) { - var idx, tailbits, - input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan - max = input.length, - map = BASE64_MAP, - bits = 0, - result = []; - - // Collect by 6*4 bits (3 bytes) - - for (idx = 0; idx < max; idx++) { - if ((idx % 4 === 0) && idx) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); - } - - bits = (bits << 6) | map.indexOf(input.charAt(idx)); - } - - // Dump tail - - tailbits = (max % 4) * 6; - - if (tailbits === 0) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); - } else if (tailbits === 18) { - result.push((bits >> 10) & 0xFF); - result.push((bits >> 2) & 0xFF); - } else if (tailbits === 12) { - result.push((bits >> 4) & 0xFF); - } - - // Wrap into Buffer for NodeJS and leave Array for browser - if (NodeBuffer) { - // Support node 6.+ Buffer API when available - return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); - } - - return result; -} - -function representYamlBinary(object /*, style*/) { - var result = '', bits = 0, idx, tail, - max = object.length, - map = BASE64_MAP; - - // Convert every three bytes to 4 ASCII characters. - - for (idx = 0; idx < max; idx++) { - if ((idx % 3 === 0) && idx) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; - } - - bits = (bits << 8) + object[idx]; - } - - // Dump tail - - tail = max % 3; - - if (tail === 0) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; - } else if (tail === 2) { - result += map[(bits >> 10) & 0x3F]; - result += map[(bits >> 4) & 0x3F]; - result += map[(bits << 2) & 0x3F]; - result += map[64]; - } else if (tail === 1) { - result += map[(bits >> 2) & 0x3F]; - result += map[(bits << 4) & 0x3F]; - result += map[64]; - result += map[64]; - } - - return result; -} - -function isBinary(object) { - return NodeBuffer && NodeBuffer.isBuffer(object); -} - -module.exports = new Type('tag:yaml.org,2002:binary', { - kind: 'scalar', - resolve: resolveYamlBinary, - construct: constructYamlBinary, - predicate: isBinary, - represent: representYamlBinary -}); - -},{"../type":84}],86:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlBoolean(data) { - if (data === null) return false; - - var max = data.length; - - return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) || - (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE')); -} - -function constructYamlBoolean(data) { - return data === 'true' || - data === 'True' || - data === 'TRUE'; -} - -function isBoolean(object) { - return Object.prototype.toString.call(object) === '[object Boolean]'; -} - -module.exports = new Type('tag:yaml.org,2002:bool', { - kind: 'scalar', - resolve: resolveYamlBoolean, - construct: constructYamlBoolean, - predicate: isBoolean, - represent: { - lowercase: function (object) { return object ? 'true' : 'false'; }, - uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; }, - camelcase: function (object) { return object ? 'True' : 'False'; } - }, - defaultStyle: 'lowercase' -}); - -},{"../type":84}],87:[function(require,module,exports){ -'use strict'; - -var common = require('../common'); -var Type = require('../type'); - -var YAML_FLOAT_PATTERN = new RegExp( - // 2.5e4, 2.5 and integers - '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + - // .2e4, .2 - // special case, seems not from spec - '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + - // 20:59 - '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' + - // .inf - '|[-+]?\\.(?:inf|Inf|INF)' + - // .nan - '|\\.(?:nan|NaN|NAN))$'); - -function resolveYamlFloat(data) { - if (data === null) return false; - - if (!YAML_FLOAT_PATTERN.test(data) || - // Quick hack to not allow integers end with `_` - // Probably should update regexp & check speed - data[data.length - 1] === '_') { - return false; - } - - return true; -} - -function constructYamlFloat(data) { - var value, sign, base, digits; - - value = data.replace(/_/g, '').toLowerCase(); - sign = value[0] === '-' ? -1 : 1; - digits = []; - - if ('+-'.indexOf(value[0]) >= 0) { - value = value.slice(1); - } - - if (value === '.inf') { - return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; - - } else if (value === '.nan') { - return NaN; - - } else if (value.indexOf(':') >= 0) { - value.split(':').forEach(function (v) { - digits.unshift(parseFloat(v, 10)); - }); - - value = 0.0; - base = 1; - - digits.forEach(function (d) { - value += d * base; - base *= 60; - }); - - return sign * value; - - } - return sign * parseFloat(value, 10); -} - - -var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; - -function representYamlFloat(object, style) { - var res; - - if (isNaN(object)) { - switch (style) { - case 'lowercase': return '.nan'; - case 'uppercase': return '.NAN'; - case 'camelcase': return '.NaN'; - } - } else if (Number.POSITIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '.inf'; - case 'uppercase': return '.INF'; - case 'camelcase': return '.Inf'; - } - } else if (Number.NEGATIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '-.inf'; - case 'uppercase': return '-.INF'; - case 'camelcase': return '-.Inf'; - } - } else if (common.isNegativeZero(object)) { - return '-0.0'; - } - - res = object.toString(10); - - // JS stringifier can build scientific format without dots: 5e-100, - // while YAML requres dot: 5.e-100. Fix it with simple hack - - return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res; -} - -function isFloat(object) { - return (Object.prototype.toString.call(object) === '[object Number]') && - (object % 1 !== 0 || common.isNegativeZero(object)); -} - -module.exports = new Type('tag:yaml.org,2002:float', { - kind: 'scalar', - resolve: resolveYamlFloat, - construct: constructYamlFloat, - predicate: isFloat, - represent: representYamlFloat, - defaultStyle: 'lowercase' -}); - -},{"../common":73,"../type":84}],88:[function(require,module,exports){ -'use strict'; - -var common = require('../common'); -var Type = require('../type'); - -function isHexCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || - ((0x41/* A */ <= c) && (c <= 0x46/* F */)) || - ((0x61/* a */ <= c) && (c <= 0x66/* f */)); -} - -function isOctCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */)); -} - -function isDecCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)); -} - -function resolveYamlInteger(data) { - if (data === null) return false; - - var max = data.length, - index = 0, - hasDigits = false, - ch; - - if (!max) return false; - - ch = data[index]; - - // sign - if (ch === '-' || ch === '+') { - ch = data[++index]; - } - - if (ch === '0') { - // 0 - if (index + 1 === max) return true; - ch = data[++index]; - - // base 2, base 8, base 16 - - if (ch === 'b') { - // base 2 - index++; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch !== '0' && ch !== '1') return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - - if (ch === 'x') { - // base 16 - index++; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isHexCode(data.charCodeAt(index))) return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - // base 8 - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isOctCode(data.charCodeAt(index))) return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } - - // base 10 (except 0) or base 60 - - // value should not start with `_`; - if (ch === '_') return false; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch === ':') break; - if (!isDecCode(data.charCodeAt(index))) { - return false; - } - hasDigits = true; - } - - // Should have digits and should not end with `_` - if (!hasDigits || ch === '_') return false; - - // if !base60 - done; - if (ch !== ':') return true; - - // base60 almost not used, no needs to optimize - return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); -} - -function constructYamlInteger(data) { - var value = data, sign = 1, ch, base, digits = []; - - if (value.indexOf('_') !== -1) { - value = value.replace(/_/g, ''); - } - - ch = value[0]; - - if (ch === '-' || ch === '+') { - if (ch === '-') sign = -1; - value = value.slice(1); - ch = value[0]; - } - - if (value === '0') return 0; - - if (ch === '0') { - if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); - if (value[1] === 'x') return sign * parseInt(value, 16); - return sign * parseInt(value, 8); - } - - if (value.indexOf(':') !== -1) { - value.split(':').forEach(function (v) { - digits.unshift(parseInt(v, 10)); - }); - - value = 0; - base = 1; - - digits.forEach(function (d) { - value += (d * base); - base *= 60; - }); - - return sign * value; - - } - - return sign * parseInt(value, 10); -} - -function isInteger(object) { - return (Object.prototype.toString.call(object)) === '[object Number]' && - (object % 1 === 0 && !common.isNegativeZero(object)); -} - -module.exports = new Type('tag:yaml.org,2002:int', { - kind: 'scalar', - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, - octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); }, - decimal: function (obj) { return obj.toString(10); }, - /* eslint-disable max-len */ - hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } - }, - defaultStyle: 'decimal', - styleAliases: { - binary: [ 2, 'bin' ], - octal: [ 8, 'oct' ], - decimal: [ 10, 'dec' ], - hexadecimal: [ 16, 'hex' ] - } -}); - -},{"../common":73,"../type":84}],89:[function(require,module,exports){ -'use strict'; - -var esprima; - -// Browserified version does not have esprima -// -// 1. For node.js just require module as deps -// 2. For browser try to require mudule via external AMD system. -// If not found - try to fallback to window.esprima. If not -// found too - then fail to parse. -// -try { - // workaround to exclude package from browserify list. - var _require = require; - esprima = _require('esprima'); -} catch (_) { - /*global window */ - if (typeof window !== 'undefined') esprima = window.esprima; -} - -var Type = require('../../type'); - -function resolveJavascriptFunction(data) { - if (data === null) return false; - - try { - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }); - - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { - return false; - } - - return true; - } catch (err) { - return false; - } -} - -function constructJavascriptFunction(data) { - /*jslint evil:true*/ - - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }), - params = [], - body; - - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { - throw new Error('Failed to resolve function'); - } - - ast.body[0].expression.params.forEach(function (param) { - params.push(param.name); - }); - - body = ast.body[0].expression.body.range; - - // Esprima's ranges include the first '{' and the last '}' characters on - // function expressions. So cut them out. - if (ast.body[0].expression.body.type === 'BlockStatement') { - /*eslint-disable no-new-func*/ - return new Function(params, source.slice(body[0] + 1, body[1] - 1)); - } - // ES6 arrow functions can omit the BlockStatement. In that case, just return - // the body. - /*eslint-disable no-new-func*/ - return new Function(params, 'return ' + source.slice(body[0], body[1])); -} - -function representJavascriptFunction(object /*, style*/) { - return object.toString(); -} - -function isFunction(object) { - return Object.prototype.toString.call(object) === '[object Function]'; -} - -module.exports = new Type('tag:yaml.org,2002:js/function', { - kind: 'scalar', - resolve: resolveJavascriptFunction, - construct: constructJavascriptFunction, - predicate: isFunction, - represent: representJavascriptFunction -}); - -},{"../../type":84}],90:[function(require,module,exports){ -'use strict'; - -var Type = require('../../type'); - -function resolveJavascriptRegExp(data) { - if (data === null) return false; - if (data.length === 0) return false; - - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; - - // if regexp starts with '/' it can have modifiers and must be properly closed - // `/foo/gim` - modifiers tail can be maximum 3 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; - - if (modifiers.length > 3) return false; - // if expression starts with /, is should be properly terminated - if (regexp[regexp.length - modifiers.length - 1] !== '/') return false; - } - - return true; -} - -function constructJavascriptRegExp(data) { - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; - - // `/foo/gim` - tail can be maximum 4 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; - regexp = regexp.slice(1, regexp.length - modifiers.length - 1); - } - - return new RegExp(regexp, modifiers); -} - -function representJavascriptRegExp(object /*, style*/) { - var result = '/' + object.source + '/'; - - if (object.global) result += 'g'; - if (object.multiline) result += 'm'; - if (object.ignoreCase) result += 'i'; - - return result; -} - -function isRegExp(object) { - return Object.prototype.toString.call(object) === '[object RegExp]'; -} - -module.exports = new Type('tag:yaml.org,2002:js/regexp', { - kind: 'scalar', - resolve: resolveJavascriptRegExp, - construct: constructJavascriptRegExp, - predicate: isRegExp, - represent: representJavascriptRegExp -}); - -},{"../../type":84}],91:[function(require,module,exports){ -'use strict'; - -var Type = require('../../type'); - -function resolveJavascriptUndefined() { - return true; -} - -function constructJavascriptUndefined() { - /*eslint-disable no-undefined*/ - return undefined; -} - -function representJavascriptUndefined() { - return ''; -} - -function isUndefined(object) { - return typeof object === 'undefined'; -} - -module.exports = new Type('tag:yaml.org,2002:js/undefined', { - kind: 'scalar', - resolve: resolveJavascriptUndefined, - construct: constructJavascriptUndefined, - predicate: isUndefined, - represent: representJavascriptUndefined -}); - -},{"../../type":84}],92:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:map', { - kind: 'mapping', - construct: function (data) { return data !== null ? data : {}; } -}); - -},{"../type":84}],93:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlMerge(data) { - return data === '<<' || data === null; -} - -module.exports = new Type('tag:yaml.org,2002:merge', { - kind: 'scalar', - resolve: resolveYamlMerge -}); - -},{"../type":84}],94:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -function resolveYamlNull(data) { - if (data === null) return true; - - var max = data.length; - - return (max === 1 && data === '~') || - (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); -} - -function constructYamlNull() { - return null; -} - -function isNull(object) { - return object === null; -} - -module.exports = new Type('tag:yaml.org,2002:null', { - kind: 'scalar', - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function () { return '~'; }, - lowercase: function () { return 'null'; }, - uppercase: function () { return 'NULL'; }, - camelcase: function () { return 'Null'; } - }, - defaultStyle: 'lowercase' -}); - -},{"../type":84}],95:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _hasOwnProperty = Object.prototype.hasOwnProperty; -var _toString = Object.prototype.toString; - -function resolveYamlOmap(data) { - if (data === null) return true; - - var objectKeys = [], index, length, pair, pairKey, pairHasKey, - object = data; - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; - - if (_toString.call(pair) !== '[object Object]') return false; - - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) pairHasKey = true; - else return false; - } - } - - if (!pairHasKey) return false; - - if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); - else return false; - } - - return true; -} - -function constructYamlOmap(data) { - return data !== null ? data : []; -} - -module.exports = new Type('tag:yaml.org,2002:omap', { - kind: 'sequence', - resolve: resolveYamlOmap, - construct: constructYamlOmap -}); - -},{"../type":84}],96:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _toString = Object.prototype.toString; - -function resolveYamlPairs(data) { - if (data === null) return true; - - var index, length, pair, keys, result, - object = data; - - result = new Array(object.length); - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - - if (_toString.call(pair) !== '[object Object]') return false; - - keys = Object.keys(pair); - - if (keys.length !== 1) return false; - - result[index] = [ keys[0], pair[keys[0]] ]; - } - - return true; -} - -function constructYamlPairs(data) { - if (data === null) return []; - - var index, length, pair, keys, result, - object = data; - - result = new Array(object.length); - - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - - keys = Object.keys(pair); - - result[index] = [ keys[0], pair[keys[0]] ]; - } - - return result; -} - -module.exports = new Type('tag:yaml.org,2002:pairs', { - kind: 'sequence', - resolve: resolveYamlPairs, - construct: constructYamlPairs -}); - -},{"../type":84}],97:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:seq', { - kind: 'sequence', - construct: function (data) { return data !== null ? data : []; } -}); - -},{"../type":84}],98:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var _hasOwnProperty = Object.prototype.hasOwnProperty; - -function resolveYamlSet(data) { - if (data === null) return true; - - var key, object = data; - - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) return false; - } - } - - return true; -} - -function constructYamlSet(data) { - return data !== null ? data : {}; -} - -module.exports = new Type('tag:yaml.org,2002:set', { - kind: 'mapping', - resolve: resolveYamlSet, - construct: constructYamlSet -}); - -},{"../type":84}],99:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -module.exports = new Type('tag:yaml.org,2002:str', { - kind: 'scalar', - construct: function (data) { return data !== null ? data : ''; } -}); - -},{"../type":84}],100:[function(require,module,exports){ -'use strict'; - -var Type = require('../type'); - -var YAML_DATE_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9])' + // [2] month - '-([0-9][0-9])$'); // [3] day - -var YAML_TIMESTAMP_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9]?)' + // [2] month - '-([0-9][0-9]?)' + // [3] day - '(?:[Tt]|[ \\t]+)' + // ... - '([0-9][0-9]?)' + // [4] hour - ':([0-9][0-9])' + // [5] minute - ':([0-9][0-9])' + // [6] second - '(?:\\.([0-9]*))?' + // [7] fraction - '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour - '(?::([0-9][0-9]))?))?$'); // [11] tz_minute - -function resolveYamlTimestamp(data) { - if (data === null) return false; - if (YAML_DATE_REGEXP.exec(data) !== null) return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; - return false; -} - -function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, - delta = null, tz_hour, tz_minute, date; - - match = YAML_DATE_REGEXP.exec(data); - if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); - - if (match === null) throw new Error('Date resolve error'); - - // match: [1] year [2] month [3] day - - year = +(match[1]); - month = +(match[2]) - 1; // JS month starts with 0 - day = +(match[3]); - - if (!match[4]) { // no hour - return new Date(Date.UTC(year, month, day)); - } - - // match: [4] hour [5] minute [6] second [7] fraction - - hour = +(match[4]); - minute = +(match[5]); - second = +(match[6]); - - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { // milli-seconds - fraction += '0'; - } - fraction = +fraction; - } - - // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute - - if (match[9]) { - tz_hour = +(match[10]); - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds - if (match[9] === '-') delta = -delta; - } - - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - - if (delta) date.setTime(date.getTime() - delta); - - return date; -} - -function representYamlTimestamp(object /*, style*/) { - return object.toISOString(); -} - -module.exports = new Type('tag:yaml.org,2002:timestamp', { - kind: 'scalar', - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp -}); - -},{"../type":84}],101:[function(require,module,exports){ -"use strict"; - -var $Ref = require("./ref"), - Pointer = require("./pointer"), - url = require("./util/url"); - -module.exports = bundle; - -/** - * Bundles all external JSON references into the main JSON schema, thus resulting in a schema that - * only has *internal* references, not any *external* references. - * This method mutates the JSON schema object, adding new references and re-mapping existing ones. - * - * @param {$RefParser} parser - * @param {$RefParserOptions} options - */ -function bundle (parser, options) { - // console.log('Bundling $ref pointers in %s', parser.$refs._root$Ref.path); - - // Build an inventory of all $ref pointers in the JSON Schema - var inventory = []; - crawl(parser, "schema", parser.$refs._root$Ref.path + "#", "#", 0, inventory, parser.$refs, options); - - // Remap all $ref pointers - remap(inventory); -} - -/** - * Recursively crawls the given value, and inventories all JSON references. - * - * @param {object} parent - The object containing the value to crawl. If the value is not an object or array, it will be ignored. - * @param {string} key - The property key of `parent` to be crawled - * @param {string} path - The full path of the property being crawled, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of the property being crawled, from the schema root - * @param {object[]} inventory - An array of already-inventoried $ref pointers - * @param {$Refs} $refs - * @param {$RefParserOptions} options - */ -function crawl (parent, key, path, pathFromRoot, indirections, inventory, $refs, options) { - var obj = key === null ? parent : parent[key]; - - if (obj && typeof obj === "object") { - if ($Ref.isAllowed$Ref(obj)) { - inventory$Ref(parent, key, path, pathFromRoot, indirections, inventory, $refs, options); - } - else { - // Crawl the object in a specific order that's optimized for bundling. - // This is important because it determines how `pathFromRoot` gets built, - // which later determines which keys get dereferenced and which ones get remapped - var keys = Object.keys(obj) - .sort(function (a, b) { - // Most people will expect references to be bundled into the the "definitions" property, - // so we always crawl that property first, if it exists. - if (a === "definitions") { - return -1; - } - else if (b === "definitions") { - return 1; - } - else { - // Otherwise, crawl the keys based on their length. - // This produces the shortest possible bundled references - return a.length - b.length; - } - }); - - keys.forEach(function (key) { - var keyPath = Pointer.join(path, key); - var keyPathFromRoot = Pointer.join(pathFromRoot, key); - var value = obj[key]; - - if ($Ref.isAllowed$Ref(value)) { - inventory$Ref(obj, key, path, keyPathFromRoot, indirections, inventory, $refs, options); - } - else { - crawl(obj, key, keyPath, keyPathFromRoot, indirections, inventory, $refs, options); - } - }); - } - } -} - -/** - * Inventories the given JSON Reference (i.e. records detailed information about it so we can - * optimize all $refs in the schema), and then crawls the resolved value. - * - * @param {object} $refParent - The object that contains a JSON Reference as one of its keys - * @param {string} $refKey - The key in `$refParent` that is a JSON Reference - * @param {string} path - The full path of the JSON Reference at `$refKey`, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of the JSON Reference at `$refKey`, from the schema root - * @param {object[]} inventory - An array of already-inventoried $ref pointers - * @param {$Refs} $refs - * @param {$RefParserOptions} options - */ -function inventory$Ref ($refParent, $refKey, path, pathFromRoot, indirections, inventory, $refs, options) { - var $ref = $refKey === null ? $refParent : $refParent[$refKey]; - var $refPath = url.resolve(path, $ref.$ref); - var pointer = $refs._resolve($refPath, options); - var depth = Pointer.parse(pathFromRoot).length; - var file = url.stripHash(pointer.path); - var hash = url.getHash(pointer.path); - var external = file !== $refs._root$Ref.path; - var extended = $Ref.isExtended$Ref($ref); - indirections += pointer.indirections; - - var existingEntry = findInInventory(inventory, $refParent, $refKey); - if (existingEntry) { - // This $Ref has already been inventoried, so we don't need to process it again - if (depth < existingEntry.depth || indirections < existingEntry.indirections) { - removeFromInventory(inventory, existingEntry); - } - else { - return; - } - } - - inventory.push({ - $ref: $ref, // The JSON Reference (e.g. {$ref: string}) - parent: $refParent, // The object that contains this $ref pointer - key: $refKey, // The key in `parent` that is the $ref pointer - pathFromRoot: pathFromRoot, // The path to the $ref pointer, from the JSON Schema root - depth: depth, // How far from the JSON Schema root is this $ref pointer? - file: file, // The file that the $ref pointer resolves to - hash: hash, // The hash within `file` that the $ref pointer resolves to - value: pointer.value, // The resolved value of the $ref pointer - circular: pointer.circular, // Is this $ref pointer DIRECTLY circular? (i.e. it references itself) - extended: extended, // Does this $ref extend its resolved value? (i.e. it has extra properties, in addition to "$ref") - external: external, // Does this $ref pointer point to a file other than the main JSON Schema file? - indirections: indirections, // The number of indirect references that were traversed to resolve the value - }); - - // Recursively crawl the resolved value - crawl(pointer.value, null, pointer.path, pathFromRoot, indirections + 1, inventory, $refs, options); -} - -/** - * Re-maps every $ref pointer, so that they're all relative to the root of the JSON Schema. - * Each referenced value is dereferenced EXACTLY ONCE. All subsequent references to the same - * value are re-mapped to point to the first reference. - * - * @example: - * { - * first: { $ref: somefile.json#/some/part }, - * second: { $ref: somefile.json#/another/part }, - * third: { $ref: somefile.json }, - * fourth: { $ref: somefile.json#/some/part/sub/part } - * } - * - * In this example, there are four references to the same file, but since the third reference points - * to the ENTIRE file, that's the only one we need to dereference. The other three can just be - * remapped to point inside the third one. - * - * On the other hand, if the third reference DIDN'T exist, then the first and second would both need - * to be dereferenced, since they point to different parts of the file. The fourth reference does NOT - * need to be dereferenced, because it can be remapped to point inside the first one. - * - * @param {object[]} inventory - */ -function remap (inventory) { - // Group & sort all the $ref pointers, so they're in the order that we need to dereference/remap them - inventory.sort(function (a, b) { - if (a.file !== b.file) { - // Group all the $refs that point to the same file - return a.file < b.file ? -1 : +1; - } - else if (a.hash !== b.hash) { - // Group all the $refs that point to the same part of the file - return a.hash < b.hash ? -1 : +1; - } - else if (a.circular !== b.circular) { - // If the $ref points to itself, then sort it higher than other $refs that point to this $ref - return a.circular ? -1 : +1; - } - else if (a.extended !== b.extended) { - // If the $ref extends the resolved value, then sort it lower than other $refs that don't extend the value - return a.extended ? +1 : -1; - } - else if (a.indirections !== b.indirections) { - // Sort direct references higher than indirect references - return a.indirections - b.indirections; - } - else if (a.depth !== b.depth) { - // Sort $refs by how close they are to the JSON Schema root - return a.depth - b.depth; - } - else { - // Determine how far each $ref is from the "definitions" property. - // Most people will expect references to be bundled into the the "definitions" property if possible. - var aDefinitionsIndex = a.pathFromRoot.lastIndexOf("/definitions"); - var bDefinitionsIndex = b.pathFromRoot.lastIndexOf("/definitions"); - - if (aDefinitionsIndex !== bDefinitionsIndex) { - // Give higher priority to the $ref that's closer to the "definitions" property - return bDefinitionsIndex - aDefinitionsIndex; - } - else { - // All else is equal, so use the shorter path, which will produce the shortest possible reference - return a.pathFromRoot.length - b.pathFromRoot.length; - } - } - }); - - var file, hash, pathFromRoot; - inventory.forEach(function (entry) { - // console.log('Re-mapping $ref pointer "%s" at %s', entry.$ref.$ref, entry.pathFromRoot); - - if (!entry.external) { - // This $ref already resolves to the main JSON Schema file - entry.$ref.$ref = entry.hash; - } - else if (entry.file === file && entry.hash === hash) { - // This $ref points to the same value as the prevous $ref, so remap it to the same path - entry.$ref.$ref = pathFromRoot; - } - else if (entry.file === file && entry.hash.indexOf(hash + "/") === 0) { - // This $ref points to a sub-value of the prevous $ref, so remap it beneath that path - entry.$ref.$ref = Pointer.join(pathFromRoot, Pointer.parse(entry.hash.replace(hash, "#"))); - } - else { - // We've moved to a new file or new hash - file = entry.file; - hash = entry.hash; - pathFromRoot = entry.pathFromRoot; - - // This is the first $ref to point to this value, so dereference the value. - // Any other $refs that point to the same value will point to this $ref instead - entry.$ref = entry.parent[entry.key] = $Ref.dereference(entry.$ref, entry.value); - - if (entry.circular) { - // This $ref points to itself - entry.$ref.$ref = entry.pathFromRoot; - } - } - - // console.log(' new value: %s', (entry.$ref && entry.$ref.$ref) ? entry.$ref.$ref : '[object Object]'); - }); -} - -/** - * TODO - */ -function findInInventory (inventory, $refParent, $refKey) { - for (var i = 0; i < inventory.length; i++) { - var existingEntry = inventory[i]; - if (existingEntry.parent === $refParent && existingEntry.key === $refKey) { - return existingEntry; - } - } -} - -function removeFromInventory (inventory, entry) { - var index = inventory.indexOf(entry); - inventory.splice(index, 1); -} - -},{"./pointer":111,"./ref":112,"./util/url":118}],102:[function(require,module,exports){ -"use strict"; - -var $Ref = require("./ref"), - Pointer = require("./pointer"), - ono = require("ono"), - url = require("./util/url"); - -module.exports = dereference; - -/** - * Crawls the JSON schema, finds all JSON references, and dereferences them. - * This method mutates the JSON schema object, replacing JSON references with their resolved value. - * - * @param {$RefParser} parser - * @param {$RefParserOptions} options - */ -function dereference (parser, options) { - // console.log('Dereferencing $ref pointers in %s', parser.$refs._root$Ref.path); - var dereferenced = crawl(parser.schema, parser.$refs._root$Ref.path, "#", [], parser.$refs, options); - parser.$refs.circular = dereferenced.circular; - parser.schema = dereferenced.value; -} - -/** - * Recursively crawls the given value, and dereferences any JSON references. - * - * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored. - * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of `obj` from the schema root - * @param {object[]} parents - An array of the parent objects that have already been dereferenced - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {{value: object, circular: boolean}} - */ -function crawl (obj, path, pathFromRoot, parents, $refs, options) { - var dereferenced; - var result = { - value: obj, - circular: false - }; - - if (obj && typeof obj === "object") { - parents.push(obj); - - if ($Ref.isAllowed$Ref(obj, options)) { - dereferenced = dereference$Ref(obj, path, pathFromRoot, parents, $refs, options); - result.circular = dereferenced.circular; - result.value = dereferenced.value; - } - else { - Object.keys(obj).forEach(function (key) { - var keyPath = Pointer.join(path, key); - var keyPathFromRoot = Pointer.join(pathFromRoot, key); - var value = obj[key]; - var circular = false; - - if ($Ref.isAllowed$Ref(value, options)) { - dereferenced = dereference$Ref(value, keyPath, keyPathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - obj[key] = dereferenced.value; - } - else { - if (parents.indexOf(value) === -1) { - dereferenced = crawl(value, keyPath, keyPathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - obj[key] = dereferenced.value; - } - else { - circular = foundCircularReference(keyPath, $refs, options); - } - } - - // Set the "isCircular" flag if this or any other property is circular - result.circular = result.circular || circular; - }); - } - - parents.pop(); - } - - return result; -} - -/** - * Dereferences the given JSON Reference, and then crawls the resulting value. - * - * @param {{$ref: string}} $ref - The JSON Reference to resolve - * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash - * @param {string} pathFromRoot - The path of `$ref` from the schema root - * @param {object[]} parents - An array of the parent objects that have already been dereferenced - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {{value: object, circular: boolean}} - */ -function dereference$Ref ($ref, path, pathFromRoot, parents, $refs, options) { - // console.log('Dereferencing $ref pointer "%s" at %s', $ref.$ref, path); - - var $refPath = url.resolve(path, $ref.$ref); - var pointer = $refs._resolve($refPath, options); - - // Check for circular references - var directCircular = pointer.circular; - var circular = directCircular || parents.indexOf(pointer.value) !== -1; - circular && foundCircularReference(path, $refs, options); - - // Dereference the JSON reference - var dereferencedValue = $Ref.dereference($ref, pointer.value); - - // Crawl the dereferenced value (unless it's circular) - if (!circular) { - // Determine if the dereferenced value is circular - var dereferenced = crawl(dereferencedValue, pointer.path, pathFromRoot, parents, $refs, options); - circular = dereferenced.circular; - dereferencedValue = dereferenced.value; - } - - if (circular && !directCircular && options.dereference.circular === "ignore") { - // The user has chosen to "ignore" circular references, so don't change the value - dereferencedValue = $ref; - } - - if (directCircular) { - // The pointer is a DIRECT circular reference (i.e. it references itself). - // So replace the $ref path with the absolute path from the JSON Schema root - dereferencedValue.$ref = pathFromRoot; - } - - return { - circular: circular, - value: dereferencedValue - }; -} - -/** - * Called when a circular reference is found. - * It sets the {@link $Refs#circular} flag, and throws an error if options.dereference.circular is false. - * - * @param {string} keyPath - The JSON Reference path of the circular reference - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * @returns {boolean} - always returns true, to indicate that a circular reference was found - */ -function foundCircularReference (keyPath, $refs, options) { - $refs.circular = true; - if (!options.dereference.circular) { - throw ono.reference("Circular $ref pointer found at %s", keyPath); - } - return true; -} - -},{"./pointer":111,"./ref":112,"./util/url":118,"ono":122}],103:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var Options = require("./options"), - $Refs = require("./refs"), - parse = require("./parse"), - normalizeArgs = require("./normalize-args"), - resolveExternal = require("./resolve-external"), - bundle = require("./bundle"), - dereference = require("./dereference"), - url = require("./util/url"), - maybe = require("call-me-maybe"), - ono = require("ono"); - -module.exports = $RefParser; -module.exports.YAML = require("./util/yaml"); - -/** - * This class parses a JSON schema, builds a map of its JSON references and their resolved values, - * and provides methods for traversing, manipulating, and dereferencing those references. - * - * @constructor - */ -function $RefParser () { - /** - * The parsed (and possibly dereferenced) JSON schema object - * - * @type {object} - * @readonly - */ - this.schema = null; - - /** - * The resolved JSON references - * - * @type {$Refs} - * @readonly - */ - this.$refs = new $Refs(); -} - -/** - * Parses the given JSON schema. - * This method does not resolve any JSON references. - * It just reads a single file in JSON or YAML format, and parse it as a JavaScript object. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed - * @param {function} [callback] - An error-first callback. The second parameter is the parsed JSON schema object. - * @returns {Promise} - The returned promise resolves with the parsed JSON schema object. - */ -$RefParser.parse = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); - return instance.parse.apply(instance, arguments); -}; - -/** - * Parses the given JSON schema. - * This method does not resolve any JSON references. - * It just reads a single file in JSON or YAML format, and parse it as a JavaScript object. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed - * @param {function} [callback] - An error-first callback. The second parameter is the parsed JSON schema object. - * @returns {Promise} - The returned promise resolves with the parsed JSON schema object. - */ -$RefParser.prototype.parse = function (path, schema, options, callback) { - var args = normalizeArgs(arguments); - var promise; - - if (!args.path && !args.schema) { - var err = ono("Expected a file path, URL, or object. Got %s", args.path || args.schema); - return maybe(args.callback, Promise.reject(err)); - } - - // Reset everything - this.schema = null; - this.$refs = new $Refs(); - - // If the path is a filesystem path, then convert it to a URL. - // NOTE: According to the JSON Reference spec, these should already be URLs, - // but, in practice, many people use local filesystem paths instead. - // So we're being generous here and doing the conversion automatically. - // This is not intended to be a 100% bulletproof solution. - // If it doesn't work for your use-case, then use a URL instead. - var pathType = "http"; - if (url.isFileSystemPath(args.path)) { - args.path = url.fromFileSystemPath(args.path); - pathType = "file"; - } - - // Resolve the absolute path of the schema - args.path = url.resolve(url.cwd(), args.path); - - if (args.schema && typeof args.schema === "object") { - // A schema object was passed-in. - // So immediately add a new $Ref with the schema object as its value - var $ref = this.$refs._add(args.path); - $ref.value = args.schema; - $ref.pathType = pathType; - promise = Promise.resolve(args.schema); - } - else { - // Parse the schema file/url - promise = parse(args.path, this.$refs, args.options); - } - - var me = this; - return promise - .then(function (result) { - if (!result || typeof result !== "object" || Buffer.isBuffer(result)) { - throw ono.syntax('"%s" is not a valid JSON Schema', me.$refs._root$Ref.path || result); - } - else { - me.schema = result; - return maybe(args.callback, Promise.resolve(me.schema)); - } - }) - .catch(function (e) { - return maybe(args.callback, Promise.reject(e)); - }); -}; - -/** - * Parses the given JSON schema and resolves any JSON references, including references in - * externally-referenced files. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed and resolved - * @param {function} [callback] - * - An error-first callback. The second parameter is a {@link $Refs} object containing the resolved JSON references - * - * @returns {Promise} - * The returned promise resolves with a {@link $Refs} object containing the resolved JSON references - */ -$RefParser.resolve = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); - return instance.resolve.apply(instance, arguments); -}; - -/** - * Parses the given JSON schema and resolves any JSON references, including references in - * externally-referenced files. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed and resolved - * @param {function} [callback] - * - An error-first callback. The second parameter is a {@link $Refs} object containing the resolved JSON references - * - * @returns {Promise} - * The returned promise resolves with a {@link $Refs} object containing the resolved JSON references - */ -$RefParser.prototype.resolve = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.parse(args.path, args.schema, args.options) - .then(function () { - return resolveExternal(me, args.options); - }) - .then(function () { - return maybe(args.callback, Promise.resolve(me.$refs)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); -}; - -/** - * Parses the given JSON schema, resolves any JSON references, and bundles all external references - * into the main JSON schema. This produces a JSON schema that only has *internal* references, - * not any *external* references. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed, resolved, and dereferenced - * @param {function} [callback] - An error-first callback. The second parameter is the bundled JSON schema object - * @returns {Promise} - The returned promise resolves with the bundled JSON schema object. - */ -$RefParser.bundle = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); - return instance.bundle.apply(instance, arguments); -}; - -/** - * Parses the given JSON schema, resolves any JSON references, and bundles all external references - * into the main JSON schema. This produces a JSON schema that only has *internal* references, - * not any *external* references. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed, resolved, and dereferenced - * @param {function} [callback] - An error-first callback. The second parameter is the bundled JSON schema object - * @returns {Promise} - The returned promise resolves with the bundled JSON schema object. - */ -$RefParser.prototype.bundle = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.resolve(args.path, args.schema, args.options) - .then(function () { - bundle(me, args.options); - return maybe(args.callback, Promise.resolve(me.schema)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); -}; - -/** - * Parses the given JSON schema, resolves any JSON references, and dereferences the JSON schema. - * That is, all JSON references are replaced with their resolved values. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed, resolved, and dereferenced - * @param {function} [callback] - An error-first callback. The second parameter is the dereferenced JSON schema object - * @returns {Promise} - The returned promise resolves with the dereferenced JSON schema object. - */ -$RefParser.dereference = function (path, schema, options, callback) { - var Class = this; // eslint-disable-line consistent-this - var instance = new Class(); - return instance.dereference.apply(instance, arguments); -}; - -/** - * Parses the given JSON schema, resolves any JSON references, and dereferences the JSON schema. - * That is, all JSON references are replaced with their resolved values. - * - * @param {string} [path] - The file path or URL of the JSON schema - * @param {object} [schema] - A JSON schema object. This object will be used instead of reading from `path`. - * @param {$RefParserOptions} [options] - Options that determine how the schema is parsed, resolved, and dereferenced - * @param {function} [callback] - An error-first callback. The second parameter is the dereferenced JSON schema object - * @returns {Promise} - The returned promise resolves with the dereferenced JSON schema object. - */ -$RefParser.prototype.dereference = function (path, schema, options, callback) { - var me = this; - var args = normalizeArgs(arguments); - - return this.resolve(args.path, args.schema, args.options) - .then(function () { - dereference(me, args.options); - return maybe(args.callback, Promise.resolve(me.schema)); - }) - .catch(function (err) { - return maybe(args.callback, Promise.reject(err)); - }); -}; - -}).call(this,{"isBuffer":require("../../is-buffer/index.js")}) - -},{"../../is-buffer/index.js":69,"./bundle":101,"./dereference":102,"./normalize-args":104,"./options":105,"./parse":106,"./refs":113,"./resolve-external":114,"./util/url":118,"./util/yaml":119,"call-me-maybe":11,"ono":122}],104:[function(require,module,exports){ -"use strict"; - -var Options = require("./options"); - -module.exports = normalizeArgs; - -/** - * Normalizes the given arguments, accounting for optional args. - * - * @param {Arguments} args - * @returns {object} - */ -function normalizeArgs (args) { - var path, schema, options, callback; - args = Array.prototype.slice.call(args); - - if (typeof args[args.length - 1] === "function") { - // The last parameter is a callback function - callback = args.pop(); - } - - if (typeof args[0] === "string") { - // The first parameter is the path - path = args[0]; - if (typeof args[2] === "object") { - // The second parameter is the schema, and the third parameter is the options - schema = args[1]; - options = args[2]; - } - else { - // The second parameter is the options - schema = undefined; - options = args[1]; - } - } - else { - // The first parameter is the schema - path = ""; - schema = args[0]; - options = args[1]; - } - - if (!(options instanceof Options)) { - options = new Options(options); - } - - return { - path: path, - schema: schema, - options: options, - callback: callback - }; -} - -},{"./options":105}],105:[function(require,module,exports){ -/* eslint lines-around-comment: [2, {beforeBlockComment: false}] */ -"use strict"; - -var jsonParser = require("./parsers/json"), - yamlParser = require("./parsers/yaml"), - textParser = require("./parsers/text"), - binaryParser = require("./parsers/binary"), - fileResolver = require("./resolvers/file"), - httpResolver = require("./resolvers/http"); - -module.exports = $RefParserOptions; - -/** - * Options that determine how JSON schemas are parsed, resolved, and dereferenced. - * - * @param {object|$RefParserOptions} [options] - Overridden options - * @constructor - */ -function $RefParserOptions (options) { - merge(this, $RefParserOptions.defaults); - merge(this, options); -} - -$RefParserOptions.defaults = { - /** - * Determines how different types of files will be parsed. - * - * You can add additional parsers of your own, replace an existing one with - * your own implemenation, or disable any parser by setting it to false. - */ - parse: { - json: jsonParser, - yaml: yamlParser, - text: textParser, - binary: binaryParser, - }, - - /** - * Determines how JSON References will be resolved. - * - * You can add additional resolvers of your own, replace an existing one with - * your own implemenation, or disable any resolver by setting it to false. - */ - resolve: { - file: fileResolver, - http: httpResolver, - - /** - * Determines whether external $ref pointers will be resolved. - * If this option is disabled, then none of above resolvers will be called. - * Instead, external $ref pointers will simply be ignored. - * - * @type {boolean} - */ - external: true, - }, - - /** - * Determines the types of JSON references that are allowed. - */ - dereference: { - /** - * Dereference circular (recursive) JSON references? - * If false, then a {@link ReferenceError} will be thrown if a circular reference is found. - * If "ignore", then circular references will not be dereferenced. - * - * @type {boolean|string} - */ - circular: true - }, -}; - -/** - * Merges the properties of the source object into the target object. - * - * @param {object} target - The object that we're populating - * @param {?object} source - The options that are being merged - * @returns {object} - */ -function merge (target, source) { - if (isMergeable(source)) { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var sourceSetting = source[key]; - var targetSetting = target[key]; - - if (isMergeable(sourceSetting)) { - // It's a nested object, so merge it recursively - target[key] = merge(targetSetting || {}, sourceSetting); - } - else if (sourceSetting !== undefined) { - // It's a scalar value, function, or array. No merging necessary. Just overwrite the target value. - target[key] = sourceSetting; - } - } - } - return target; -} - -/** - * Determines whether the given value can be merged, - * or if it is a scalar value that should just override the target value. - * - * @param {*} val - * @returns {Boolean} - */ -function isMergeable (val) { - return val && - (typeof val === "object") && - !Array.isArray(val) && - !(val instanceof RegExp) && - !(val instanceof Date); -} - -},{"./parsers/binary":107,"./parsers/json":108,"./parsers/text":109,"./parsers/yaml":110,"./resolvers/file":115,"./resolvers/http":116}],106:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var ono = require("ono"), - url = require("./util/url"), - plugins = require("./util/plugins"); - -module.exports = parse; - -/** - * Reads and parses the specified file path or URL. - * - * @param {string} path - This path MUST already be resolved, since `read` doesn't know the resolution context - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves with the parsed file contents, NOT the raw (Buffer) contents. - */ -function parse (path, $refs, options) { - try { - // Remove the URL fragment, if any - path = url.stripHash(path); - - // Add a new $Ref for this file, even though we don't have the value yet. - // This ensures that we don't simultaneously read & parse the same file multiple times - var $ref = $refs._add(path); - - // This "file object" will be passed to all resolvers and parsers. - var file = { - url: path, - extension: url.getExtension(path), - }; - - // Read the file and then parse the data - return readFile(file, options) - .then(function (resolver) { - $ref.pathType = resolver.plugin.name; - file.data = resolver.result; - return parseFile(file, options); - }) - .then(function (parser) { - $ref.value = parser.result; - return parser.result; - }); - } - catch (e) { - return Promise.reject(e); - } -} - -/** - * Reads the given file, using the configured resolver plugins - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves with the raw file contents and the resolver that was used. - */ -function readFile (file, options) { - return new Promise(function (resolve, reject) { - // console.log('Reading %s', file.url); - - // Find the resolvers that can read this file - var resolvers = plugins.all(options.resolve); - resolvers = plugins.filter(resolvers, "canRead", file); - - // Run the resolvers, in order, until one of them succeeds - plugins.sort(resolvers); - plugins.run(resolvers, "read", file) - .then(resolve, onError); - - function onError (err) { - // Throw the original error, if it's one of our own (user-friendly) errors. - // Otherwise, throw a generic, friendly error. - if (err && !(err instanceof SyntaxError)) { - reject(err); - } - else { - reject(ono.syntax('Unable to resolve $ref pointer "%s"', file.url)); - } - } - }); -} - -/** - * Parses the given file's contents, using the configured parser plugins. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves with the parsed file contents and the parser that was used. - */ -function parseFile (file, options) { - return new Promise(function (resolve, reject) { - // console.log('Parsing %s', file.url); - - // Find the parsers that can read this file type. - // If none of the parsers are an exact match for this file, then we'll try ALL of them. - // This handles situations where the file IS a supported type, just with an unknown extension. - var allParsers = plugins.all(options.parse); - var filteredParsers = plugins.filter(allParsers, "canParse", file); - var parsers = filteredParsers.length > 0 ? filteredParsers : allParsers; - - // Run the parsers, in order, until one of them succeeds - plugins.sort(parsers); - plugins.run(parsers, "parse", file) - .then(onParsed, onError); - - function onParsed (parser) { - if (!parser.plugin.allowEmpty && isEmpty(parser.result)) { - reject(ono.syntax('Error parsing "%s" as %s. \nParsed value is empty', file.url, parser.plugin.name)); - } - else { - resolve(parser); - } - } - - function onError (err) { - if (err) { - err = err instanceof Error ? err : new Error(err); - reject(ono.syntax(err, "Error parsing %s", file.url)); - } - else { - reject(ono.syntax("Unable to parse %s", file.url)); - } - } - }); -} - -/** - * Determines whether the parsed value is "empty". - * - * @param {*} value - * @returns {boolean} - */ -function isEmpty (value) { - return value === undefined || - (typeof value === "object" && Object.keys(value).length === 0) || - (typeof value === "string" && value.trim().length === 0) || - (Buffer.isBuffer(value) && value.length === 0); -} - -}).call(this,{"isBuffer":require("../../is-buffer/index.js")}) - -},{"../../is-buffer/index.js":69,"./util/plugins":117,"./util/url":118,"ono":122}],107:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var BINARY_REGEXP = /\.(jpeg|jpg|gif|png|bmp|ico)$/i; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 400, - - /** - * Whether to allow "empty" files (zero bytes). - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that return true will be tried, in order, until one successfully parses the file. - * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case - * every parser will be tried. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {boolean} - */ - canParse: function isBinary (file) { - // Use this parser if the file is a Buffer, and has a known binary extension - return Buffer.isBuffer(file.data) && BINARY_REGEXP.test(file.url); - }, - - /** - * Parses the given data as a Buffer (byte array). - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseBinary (file) { - if (Buffer.isBuffer(file.data)) { - return file.data; - } - else { - // This will reject if data is anything other than a string or typed array - return new Buffer(file.data); - } - } -}; - -}).call(this,require("buffer").Buffer) - -},{"buffer":9}],108:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 100, - - /** - * Whether to allow "empty" files. This includes zero-byte files, as well as empty JSON objects. - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that match will be tried, in order, until one successfully parses the file. - * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case - * every parser will be tried. - * - * @type {RegExp|string[]|function} - */ - canParse: ".json", - - /** - * Parses the given file as JSON - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseJSON (file) { - return new Promise(function (resolve, reject) { - var data = file.data; - if (Buffer.isBuffer(data)) { - data = data.toString(); - } - - if (typeof data === "string") { - if (data.trim().length === 0) { - resolve(undefined); // This mirrors the YAML behavior - } - else { - resolve(JSON.parse(data)); - } - } - else { - // data is already a JavaScript value (object, array, number, null, NaN, etc.) - resolve(data); - } - }); - } -}; - -}).call(this,{"isBuffer":require("../../../is-buffer/index.js")}) - -},{"../../../is-buffer/index.js":69}],109:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var TEXT_REGEXP = /\.(txt|htm|html|md|xml|js|min|map|css|scss|less|svg)$/i; - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 300, - - /** - * Whether to allow "empty" files (zero bytes). - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * The encoding that the text is expected to be in. - * - * @type {string} - */ - encoding: "utf8", - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that return true will be tried, in order, until one successfully parses the file. - * Parsers that return false will be skipped, UNLESS all parsers returned false, in which case - * every parser will be tried. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {boolean} - */ - canParse: function isText (file) { - // Use this parser if the file is a string or Buffer, and has a known text-based extension - return (typeof file.data === "string" || Buffer.isBuffer(file.data)) && TEXT_REGEXP.test(file.url); - }, - - /** - * Parses the given file as text - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseText (file) { - if (typeof file.data === "string") { - return file.data; - } - else if (Buffer.isBuffer(file.data)) { - return file.data.toString(this.encoding); - } - else { - throw new Error("data is not text"); - } - } -}; - -}).call(this,{"isBuffer":require("../../../is-buffer/index.js")}) - -},{"../../../is-buffer/index.js":69}],110:[function(require,module,exports){ -(function (Buffer){ -"use strict"; - -var YAML = require("../util/yaml"); - -module.exports = { - /** - * The order that this parser will run, in relation to other parsers. - * - * @type {number} - */ - order: 200, - - /** - * Whether to allow "empty" files. This includes zero-byte files, as well as empty JSON objects. - * - * @type {boolean} - */ - allowEmpty: true, - - /** - * Determines whether this parser can parse a given file reference. - * Parsers that match will be tried, in order, until one successfully parses the file. - * Parsers that don't match will be skipped, UNLESS none of the parsers match, in which case - * every parser will be tried. - * - * @type {RegExp|string[]|function} - */ - canParse: [".yaml", ".yml", ".json"], // JSON is valid YAML - - /** - * Parses the given file as YAML - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @param {*} file.data - The file contents. This will be whatever data type was returned by the resolver - * @returns {Promise} - */ - parse: function parseYAML (file) { - return new Promise(function (resolve, reject) { - var data = file.data; - if (Buffer.isBuffer(data)) { - data = data.toString(); - } - - if (typeof data === "string") { - resolve(YAML.parse(data)); - } - else { - // data is already a JavaScript value (object, array, number, null, NaN, etc.) - resolve(data); - } - }); - } -}; - -}).call(this,{"isBuffer":require("../../../is-buffer/index.js")}) - -},{"../../../is-buffer/index.js":69,"../util/yaml":119}],111:[function(require,module,exports){ -"use strict"; - -module.exports = Pointer; - -var $Ref = require("./ref"), - url = require("./util/url"), - ono = require("ono"), - slashes = /\//g, - tildes = /~/g, - escapedSlash = /~1/g, - escapedTilde = /~0/g; - -/** - * This class represents a single JSON pointer and its resolved value. - * - * @param {$Ref} $ref - * @param {string} path - * @param {string} [friendlyPath] - The original user-specified path (used for error messages) - * @constructor - */ -function Pointer ($ref, path, friendlyPath) { - /** - * The {@link $Ref} object that contains this {@link Pointer} object. - * @type {$Ref} - */ - this.$ref = $ref; - - /** - * The file path or URL, containing the JSON pointer in the hash. - * This path is relative to the path of the main JSON schema file. - * @type {string} - */ - this.path = path; - - /** - * The original path or URL, used for error messages. - * @type {string} - */ - this.originalPath = friendlyPath || path; - - /** - * The value of the JSON pointer. - * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays). - * @type {?*} - */ - this.value = undefined; - - /** - * Indicates whether the pointer references itself. - * @type {boolean} - */ - this.circular = false; - - /** - * The number of indirect references that were traversed to resolve the value. - * Resolving a single pointer may require resolving multiple $Refs. - * @type {number} - */ - this.indirections = 0; -} - -/** - * Resolves the value of a nested property within the given object. - * - * @param {*} obj - The object that will be crawled - * @param {$RefParserOptions} options - * - * @returns {Pointer} - * Returns a JSON pointer whose {@link Pointer#value} is the resolved value. - * If resolving this value required resolving other JSON references, then - * the {@link Pointer#$ref} and {@link Pointer#path} will reflect the resolution path - * of the resolved value. - */ -Pointer.prototype.resolve = function (obj, options) { - var tokens = Pointer.parse(this.path); - - // Crawl the object, one token at a time - this.value = obj; - for (var i = 0; i < tokens.length; i++) { - if (resolveIf$Ref(this, options)) { - // The $ref path has changed, so append the remaining tokens to the path - this.path = Pointer.join(this.path, tokens.slice(i)); - } - - var token = tokens[i]; - if (this.value[token] === undefined) { - throw ono.syntax('Error resolving $ref pointer "%s". \nToken "%s" does not exist.', this.originalPath, token); - } - else { - this.value = this.value[token]; - } - } - - // Resolve the final value - resolveIf$Ref(this, options); - return this; -}; - -/** - * Sets the value of a nested property within the given object. - * - * @param {*} obj - The object that will be crawled - * @param {*} value - the value to assign - * @param {$RefParserOptions} options - * - * @returns {*} - * Returns the modified object, or an entirely new object if the entire object is overwritten. - */ -Pointer.prototype.set = function (obj, value, options) { - var tokens = Pointer.parse(this.path); - var token; - - if (tokens.length === 0) { - // There are no tokens, replace the entire object with the new value - this.value = value; - return value; - } - - // Crawl the object, one token at a time - this.value = obj; - for (var i = 0; i < tokens.length - 1; i++) { - resolveIf$Ref(this, options); - - token = tokens[i]; - if (this.value && this.value[token] !== undefined) { - // The token exists - this.value = this.value[token]; - } - else { - // The token doesn't exist, so create it - this.value = setValue(this, token, {}); - } - } - - // Set the value of the final token - resolveIf$Ref(this, options); - token = tokens[tokens.length - 1]; - setValue(this, token, value); - - // Return the updated object - return obj; -}; - -/** - * Parses a JSON pointer (or a path containing a JSON pointer in the hash) - * and returns an array of the pointer's tokens. - * (e.g. "schema.json#/definitions/person/name" => ["definitions", "person", "name"]) - * - * The pointer is parsed according to RFC 6901 - * {@link https://tools.ietf.org/html/rfc6901#section-3} - * - * @param {string} path - * @returns {string[]} - */ -Pointer.parse = function (path) { - // Get the JSON pointer from the path's hash - var pointer = url.getHash(path).substr(1); - - // If there's no pointer, then there are no tokens, - // so return an empty array - if (!pointer) { - return []; - } - - // Split into an array - pointer = pointer.split("/"); - - // Decode each part, according to RFC 6901 - for (var i = 0; i < pointer.length; i++) { - pointer[i] = decodeURIComponent(pointer[i].replace(escapedSlash, "/").replace(escapedTilde, "~")); - } - - if (pointer[0] !== "") { - throw ono.syntax('Invalid $ref pointer "%s". Pointers must begin with "#/"', pointer); - } - - return pointer.slice(1); -}; - -/** - * Creates a JSON pointer path, by joining one or more tokens to a base path. - * - * @param {string} base - The base path (e.g. "schema.json#/definitions/person") - * @param {string|string[]} tokens - The token(s) to append (e.g. ["name", "first"]) - * @returns {string} - */ -Pointer.join = function (base, tokens) { - // Ensure that the base path contains a hash - if (base.indexOf("#") === -1) { - base += "#"; - } - - // Append each token to the base path - tokens = Array.isArray(tokens) ? tokens : [tokens]; - for (var i = 0; i < tokens.length; i++) { - var token = tokens[i]; - // Encode the token, according to RFC 6901 - base += "/" + encodeURIComponent(token.replace(tildes, "~0").replace(slashes, "~1")); - } - - return base; -}; - -/** - * If the given pointer's {@link Pointer#value} is a JSON reference, - * then the reference is resolved and {@link Pointer#value} is replaced with the resolved value. - * In addition, {@link Pointer#path} and {@link Pointer#$ref} are updated to reflect the - * resolution path of the new value. - * - * @param {Pointer} pointer - * @param {$RefParserOptions} options - * @returns {boolean} - Returns `true` if the resolution path changed - */ -function resolveIf$Ref (pointer, options) { - // Is the value a JSON reference? (and allowed?) - - if ($Ref.isAllowed$Ref(pointer.value, options)) { - var $refPath = url.resolve(pointer.path, pointer.value.$ref); - - if ($refPath === pointer.path) { - // The value is a reference to itself, so there's nothing to do. - pointer.circular = true; - } - else { - var resolved = pointer.$ref.$refs._resolve($refPath, options); - pointer.indirections += resolved.indirections + 1; - - if ($Ref.isExtended$Ref(pointer.value)) { - // This JSON reference "extends" the resolved value, rather than simply pointing to it. - // So the resolved path does NOT change. Just the value does. - pointer.value = $Ref.dereference(pointer.value, resolved.value); - return false; - } - else { - // Resolve the reference - pointer.$ref = resolved.$ref; - pointer.path = resolved.path; - pointer.value = resolved.value; - } - - return true; - } - } -} - -/** - * Sets the specified token value of the {@link Pointer#value}. - * - * The token is evaluated according to RFC 6901. - * {@link https://tools.ietf.org/html/rfc6901#section-4} - * - * @param {Pointer} pointer - The JSON Pointer whose value will be modified - * @param {string} token - A JSON Pointer token that indicates how to modify `obj` - * @param {*} value - The value to assign - * @returns {*} - Returns the assigned value - */ -function setValue (pointer, token, value) { - if (pointer.value && typeof pointer.value === "object") { - if (token === "-" && Array.isArray(pointer.value)) { - pointer.value.push(value); - } - else { - pointer.value[token] = value; - } - } - else { - throw ono.syntax('Error assigning $ref pointer "%s". \nCannot set "%s" of a non-object.', pointer.path, token); - } - return value; -} - -},{"./ref":112,"./util/url":118,"ono":122}],112:[function(require,module,exports){ -"use strict"; - -module.exports = $Ref; - -var Pointer = require("./pointer"); - -/** - * This class represents a single JSON reference and its resolved value. - * - * @constructor - */ -function $Ref () { - /** - * The file path or URL of the referenced file. - * This path is relative to the path of the main JSON schema file. - * - * This path does NOT contain document fragments (JSON pointers). It always references an ENTIRE file. - * Use methods such as {@link $Ref#get}, {@link $Ref#resolve}, and {@link $Ref#exists} to get - * specific JSON pointers within the file. - * - * @type {string} - */ - this.path = undefined; - - /** - * The resolved value of the JSON reference. - * Can be any JSON type, not just objects. Unknown file types are represented as Buffers (byte arrays). - * @type {?*} - */ - this.value = undefined; - - /** - * The {@link $Refs} object that contains this {@link $Ref} object. - * @type {$Refs} - */ - this.$refs = undefined; - - /** - * Indicates the type of {@link $Ref#path} (e.g. "file", "http", etc.) - * @type {?string} - */ - this.pathType = undefined; -} - -/** - * Determines whether the given JSON reference exists within this {@link $Ref#value}. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @returns {boolean} - */ -$Ref.prototype.exists = function (path, options) { - try { - this.resolve(path, options); - return true; - } - catch (e) { - return false; - } -}; - -/** - * Resolves the given JSON reference within this {@link $Ref#value} and returns the resolved value. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @returns {*} - Returns the resolved value - */ -$Ref.prototype.get = function (path, options) { - return this.resolve(path, options).value; -}; - -/** - * Resolves the given JSON reference within this {@link $Ref#value}. - * - * @param {string} path - The full path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} options - * @param {string} [friendlyPath] - The original user-specified path (used for error messages) - * @returns {Pointer} - */ -$Ref.prototype.resolve = function (path, options, friendlyPath) { - var pointer = new Pointer(this, path, friendlyPath); - return pointer.resolve(this.value, options); -}; - -/** - * Sets the value of a nested property within this {@link $Ref#value}. - * If the property, or any of its parents don't exist, they will be created. - * - * @param {string} path - The full path of the property to set, optionally with a JSON pointer in the hash - * @param {*} value - The value to assign - */ -$Ref.prototype.set = function (path, value) { - var pointer = new Pointer(this, path); - this.value = pointer.set(this.value, value); -}; - -/** - * Determines whether the given value is a JSON reference. - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.is$Ref = function (value) { - return value && typeof value === "object" && typeof value.$ref === "string" && value.$ref.length > 0; -}; - -/** - * Determines whether the given value is an external JSON reference. - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.isExternal$Ref = function (value) { - return $Ref.is$Ref(value) && value.$ref[0] !== "#"; -}; - -/** - * Determines whether the given value is a JSON reference, and whether it is allowed by the options. - * For example, if it references an external file, then options.resolve.external must be true. - * - * @param {*} value - The value to inspect - * @param {$RefParserOptions} options - * @returns {boolean} - */ -$Ref.isAllowed$Ref = function (value, options) { - if ($Ref.is$Ref(value)) { - if (value.$ref.substr(0, 2) === "#/" || value.$ref === "#") { - // It's a JSON Pointer reference, which is always allowed - return true; - } - else if (value.$ref[0] !== "#" && (!options || options.resolve.external)) { - // It's an external reference, which is allowed by the options - return true; - } - } -}; - -/** - * Determines whether the given value is a JSON reference that "extends" its resolved value. - * That is, it has extra properties (in addition to "$ref"), so rather than simply pointing to - * an existing value, this $ref actually creates a NEW value that is a shallow copy of the resolved - * value, plus the extra properties. - * - * @example: - * { - * person: { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * } - * } - * employee: { - * properties: { - * $ref: #/person/properties - * salary: { type: number } - * } - * } - * } - * - * In this example, "employee" is an extended $ref, since it extends "person" with an additional - * property (salary). The result is a NEW value that looks like this: - * - * { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * salary: { type: number } - * } - * } - * - * @param {*} value - The value to inspect - * @returns {boolean} - */ -$Ref.isExtended$Ref = function (value) { - return $Ref.is$Ref(value) && Object.keys(value).length > 1; -}; - -/** - * Returns the resolved value of a JSON Reference. - * If necessary, the resolved value is merged with the JSON Reference to create a new object - * - * @example: - * { - * person: { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * } - * } - * employee: { - * properties: { - * $ref: #/person/properties - * salary: { type: number } - * } - * } - * } - * - * When "person" and "employee" are merged, you end up with the following object: - * - * { - * properties: { - * firstName: { type: string } - * lastName: { type: string } - * salary: { type: number } - * } - * } - * - * @param {object} $ref - The JSON reference object (the one with the "$ref" property) - * @param {*} resolvedValue - The resolved value, which can be any type - * @returns {*} - Returns the dereferenced value - */ -$Ref.dereference = function ($ref, resolvedValue) { - if (resolvedValue && typeof resolvedValue === "object" && $Ref.isExtended$Ref($ref)) { - var merged = {}; - Object.keys($ref).forEach(function (key) { - if (key !== "$ref") { - merged[key] = $ref[key]; - } - }); - Object.keys(resolvedValue).forEach(function (key) { - if (!(key in merged)) { - merged[key] = resolvedValue[key]; - } - }); - return merged; - } - else { - // Completely replace the original reference with the resolved value - return resolvedValue; - } -}; - -},{"./pointer":111}],113:[function(require,module,exports){ -"use strict"; - -var ono = require("ono"), - $Ref = require("./ref"), - url = require("./util/url"); - -module.exports = $Refs; - -/** - * This class is a map of JSON references and their resolved values. - */ -function $Refs () { - /** - * Indicates whether the schema contains any circular references. - * - * @type {boolean} - */ - this.circular = false; - - /** - * A map of paths/urls to {@link $Ref} objects - * - * @type {object} - * @protected - */ - this._$refs = {}; - - /** - * The {@link $Ref} object that is the root of the JSON schema. - * - * @type {$Ref} - * @protected - */ - this._root$Ref = null; -} - -/** - * Returns the paths of all the files/URLs that are referenced by the JSON schema, - * including the schema itself. - * - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {string[]} - */ -$Refs.prototype.paths = function (types) { - var paths = getPaths(this._$refs, arguments); - return paths.map(function (path) { - return path.decoded; - }); -}; - -/** - * Returns the map of JSON references and their resolved values. - * - * @param {...string|string[]} [types] - Only return references of the given types ("file", "http", etc.) - * @returns {object} - */ -$Refs.prototype.values = function (types) { - var $refs = this._$refs; - var paths = getPaths($refs, arguments); - return paths.reduce(function (obj, path) { - obj[path.decoded] = $refs[path.encoded].value; - return obj; - }, {}); -}; - -/** - * Returns a POJO (plain old JavaScript object) for serialization as JSON. - * - * @returns {object} - */ -$Refs.prototype.toJSON = $Refs.prototype.values; - -/** - * Determines whether the given JSON reference exists. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {boolean} - */ -$Refs.prototype.exists = function (path, options) { - try { - this._resolve(path, options); - return true; - } - catch (e) { - return false; - } -}; - -/** - * Resolves the given JSON reference and returns the resolved value. - * - * @param {string} path - The path being resolved, with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {*} - Returns the resolved value - */ -$Refs.prototype.get = function (path, options) { - return this._resolve(path, options).value; -}; - -/** - * Sets the value of a nested property within this {@link $Ref#value}. - * If the property, or any of its parents don't exist, they will be created. - * - * @param {string} path - The path of the property to set, optionally with a JSON pointer in the hash - * @param {*} value - The value to assign - */ -$Refs.prototype.set = function (path, value) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - $ref.set(absPath, value); -}; - -/** - * Creates a new {@link $Ref} object and adds it to this {@link $Refs} object. - * - * @param {string} path - The file path or URL of the referenced file - */ -$Refs.prototype._add = function (path) { - var withoutHash = url.stripHash(path); - - var $ref = new $Ref(); - $ref.path = withoutHash; - $ref.$refs = this; - - this._$refs[withoutHash] = $ref; - this._root$Ref = this._root$Ref || $ref; - - return $ref; -}; - -/** - * Resolves the given JSON reference. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @param {$RefParserOptions} [options] - * @returns {Pointer} - * @protected - */ -$Refs.prototype._resolve = function (path, options) { - var absPath = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(absPath); - var $ref = this._$refs[withoutHash]; - - if (!$ref) { - throw ono('Error resolving $ref pointer "%s". \n"%s" not found.', path, withoutHash); - } - - return $ref.resolve(absPath, options, path); -}; - -/** - * Returns the specified {@link $Ref} object, or undefined. - * - * @param {string} path - The path being resolved, optionally with a JSON pointer in the hash - * @returns {$Ref|undefined} - * @protected - */ -$Refs.prototype._get$Ref = function (path) { - path = url.resolve(this._root$Ref.path, path); - var withoutHash = url.stripHash(path); - return this._$refs[withoutHash]; -}; - -/** - * Returns the encoded and decoded paths keys of the given object. - * - * @param {object} $refs - The object whose keys are URL-encoded paths - * @param {...string|string[]} [types] - Only return paths of the given types ("file", "http", etc.) - * @returns {object[]} - */ -function getPaths ($refs, types) { - var paths = Object.keys($refs); - - // Filter the paths by type - types = Array.isArray(types[0]) ? types[0] : Array.prototype.slice.call(types); - if (types.length > 0 && types[0]) { - paths = paths.filter(function (key) { - return types.indexOf($refs[key].pathType) !== -1; - }); - } - - // Decode local filesystem paths - return paths.map(function (path) { - return { - encoded: path, - decoded: $refs[path].pathType === "file" ? url.toFileSystemPath(path, true) : path - }; - }); -} - -},{"./ref":112,"./util/url":118,"ono":122}],114:[function(require,module,exports){ -"use strict"; - -var $Ref = require("./ref"), - Pointer = require("./pointer"), - parse = require("./parse"), - url = require("./util/url"); - -module.exports = resolveExternal; - -/** - * Crawls the JSON schema, finds all external JSON references, and resolves their values. - * This method does not mutate the JSON schema. The resolved values are added to {@link $RefParser#$refs}. - * - * NOTE: We only care about EXTERNAL references here. INTERNAL references are only relevant when dereferencing. - * - * @param {$RefParser} parser - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves once all JSON references in the schema have been resolved, - * including nested references that are contained in externally-referenced files. - */ -function resolveExternal (parser, options) { - if (!options.resolve.external) { - // Nothing to resolve, so exit early - return Promise.resolve(); - } - - try { - // console.log('Resolving $ref pointers in %s', parser.$refs._root$Ref.path); - var promises = crawl(parser.schema, parser.$refs._root$Ref.path + "#", parser.$refs, options); - return Promise.all(promises); - } - catch (e) { - return Promise.reject(e); - } -} - -/** - * Recursively crawls the given value, and resolves any external JSON references. - * - * @param {*} obj - The value to crawl. If it's not an object or array, it will be ignored. - * @param {string} path - The full path of `obj`, possibly with a JSON Pointer in the hash - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * - * @returns {Promise[]} - * Returns an array of promises. There will be one promise for each JSON reference in `obj`. - * If `obj` does not contain any JSON references, then the array will be empty. - * If any of the JSON references point to files that contain additional JSON references, - * then the corresponding promise will internally reference an array of promises. - */ -function crawl (obj, path, $refs, options) { - var promises = []; - - if (obj && typeof obj === "object") { - if ($Ref.isExternal$Ref(obj)) { - promises.push(resolve$Ref(obj, path, $refs, options)); - } - else { - Object.keys(obj).forEach(function (key) { - var keyPath = Pointer.join(path, key); - var value = obj[key]; - - if ($Ref.isExternal$Ref(value)) { - promises.push(resolve$Ref(value, keyPath, $refs, options)); - } - else { - promises = promises.concat(crawl(value, keyPath, $refs, options)); - } - }); - } - } - - return promises; -} - -/** - * Resolves the given JSON Reference, and then crawls the resulting value. - * - * @param {{$ref: string}} $ref - The JSON Reference to resolve - * @param {string} path - The full path of `$ref`, possibly with a JSON Pointer in the hash - * @param {$Refs} $refs - * @param {$RefParserOptions} options - * - * @returns {Promise} - * The promise resolves once all JSON references in the object have been resolved, - * including nested references that are contained in externally-referenced files. - */ -function resolve$Ref ($ref, path, $refs, options) { - // console.log('Resolving $ref pointer "%s" at %s', $ref.$ref, path); - - var resolvedPath = url.resolve(path, $ref.$ref); - var withoutHash = url.stripHash(resolvedPath); - - // Do we already have this $ref? - $ref = $refs._$refs[withoutHash]; - if ($ref) { - // We've already parsed this $ref, so use the existing value - return Promise.resolve($ref.value); - } - - // Parse the $referenced file/url - return parse(resolvedPath, $refs, options) - .then(function (result) { - // Crawl the parsed value - // console.log('Resolving $ref pointers in %s', withoutHash); - var promises = crawl(result, withoutHash + "#", $refs, options); - return Promise.all(promises); - }); -} - -},{"./parse":106,"./pointer":111,"./ref":112,"./util/url":118}],115:[function(require,module,exports){ -"use strict"; -var fs = require("fs"), - ono = require("ono"), - url = require("../util/url"); - -module.exports = { - /** - * The order that this resolver will run, in relation to other resolvers. - * - * @type {number} - */ - order: 100, - - /** - * Determines whether this resolver can read a given file reference. - * Resolvers that return true will be tried, in order, until one successfully resolves the file. - * Resolvers that return false will not be given a chance to resolve the file. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {boolean} - */ - canRead: function isFile (file) { - return url.isFileSystemPath(file.url); - }, - - /** - * Reads the given file and returns its raw contents as a Buffer. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {Promise} - */ - read: function readFile (file) { - return new Promise(function (resolve, reject) { - var path; - try { - path = url.toFileSystemPath(file.url); - } - catch (err) { - reject(ono.uri(err, "Malformed URI: %s", file.url)); - } - - // console.log('Opening file: %s', path); - - try { - fs.readFile(path, function (err, data) { - if (err) { - reject(ono(err, 'Error opening file "%s"', path)); - } - else { - resolve(data); - } - }); - } - catch (err) { - reject(ono(err, 'Error opening file "%s"', path)); - } - }); - } -}; - -},{"../util/url":118,"fs":7,"ono":122}],116:[function(require,module,exports){ -(function (process,Buffer){ -"use strict"; - -var http = require("http"), - https = require("https"), - ono = require("ono"), - url = require("../util/url"); - -module.exports = { - /** - * The order that this resolver will run, in relation to other resolvers. - * - * @type {number} - */ - order: 200, - - /** - * HTTP headers to send when downloading files. - * - * @example: - * { - * "User-Agent": "JSON Schema $Ref Parser", - * Accept: "application/json" - * } - * - * @type {object} - */ - headers: null, - - /** - * HTTP request timeout (in milliseconds). - * - * @type {number} - */ - timeout: 5000, // 5 seconds - - /** - * The maximum number of HTTP redirects to follow. - * To disable automatic following of redirects, set this to zero. - * - * @type {number} - */ - redirects: 5, - - /** - * The `withCredentials` option of XMLHttpRequest. - * Set this to `true` if you're downloading files from a CORS-enabled server that requires authentication - * - * @type {boolean} - */ - withCredentials: false, - - /** - * Determines whether this resolver can read a given file reference. - * Resolvers that return true will be tried in order, until one successfully resolves the file. - * Resolvers that return false will not be given a chance to resolve the file. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {boolean} - */ - canRead: function isHttp (file) { - return url.isHttp(file.url); - }, - - /** - * Reads the given URL and returns its raw contents as a Buffer. - * - * @param {object} file - An object containing information about the referenced file - * @param {string} file.url - The full URL of the referenced file - * @param {string} file.extension - The lowercased file extension (e.g. ".txt", ".html", etc.) - * @returns {Promise} - */ - read: function readHttp (file) { - var u = url.parse(file.url); - - if (process.browser && !u.protocol) { - // Use the protocol of the current page - u.protocol = url.parse(location.href).protocol; - } - - return download(u, this); - } -}; - -/** - * Downloads the given file. - * - * @param {Url|string} u - The url to download (can be a parsed {@link Url} object) - * @param {object} httpOptions - The `options.resolve.http` object - * @param {number} [redirects] - The redirect URLs that have already been followed - * - * @returns {Promise} - * The promise resolves with the raw downloaded data, or rejects if there is an HTTP error. - */ -function download (u, httpOptions, redirects) { - return new Promise(function (resolve, reject) { - u = url.parse(u); - redirects = redirects || []; - redirects.push(u.href); - - get(u, httpOptions) - .then(function (res) { - if (res.statusCode >= 400) { - throw ono({ status: res.statusCode }, "HTTP ERROR %d", res.statusCode); - } - else if (res.statusCode >= 300) { - if (redirects.length > httpOptions.redirects) { - reject(ono({ status: res.statusCode }, "Error downloading %s. \nToo many redirects: \n %s", - redirects[0], redirects.join(" \n "))); - } - else if (!res.headers.location) { - throw ono({ status: res.statusCode }, "HTTP %d redirect with no location header", res.statusCode); - } - else { - // console.log('HTTP %d redirect %s -> %s', res.statusCode, u.href, res.headers.location); - var redirectTo = url.resolve(u, res.headers.location); - download(redirectTo, httpOptions, redirects).then(resolve, reject); - } - } - else { - resolve(res.body || new Buffer(0)); - } - }) - .catch(function (err) { - reject(ono(err, "Error downloading", u.href)); - }); - }); -} - -/** - * Sends an HTTP GET request. - * - * @param {Url} u - A parsed {@link Url} object - * @param {object} httpOptions - The `options.resolve.http` object - * - * @returns {Promise} - * The promise resolves with the HTTP Response object. - */ -function get (u, httpOptions) { - return new Promise(function (resolve, reject) { - // console.log('GET', u.href); - - var protocol = u.protocol === "https:" ? https : http; - var req = protocol.get({ - hostname: u.hostname, - port: u.port, - path: u.path, - auth: u.auth, - protocol: u.protocol, - headers: httpOptions.headers || {}, - withCredentials: httpOptions.withCredentials - }); - - if (typeof req.setTimeout === "function") { - req.setTimeout(httpOptions.timeout); - } - - req.on("timeout", function () { - req.abort(); - }); - - req.on("error", reject); - - req.once("response", function (res) { - res.body = new Buffer(0); - - res.on("data", function (data) { - res.body = Buffer.concat([res.body, new Buffer(data)]); - }); - - res.on("error", reject); - - res.on("end", function () { - resolve(res); - }); - }); - }); -} - -}).call(this,require('_process'),require("buffer").Buffer) - -},{"../util/url":118,"_process":125,"buffer":9,"http":139,"https":66,"ono":122}],117:[function(require,module,exports){ -"use strict"; - -/** - * Returns the given plugins as an array, rather than an object map. - * All other methods in this module expect an array of plugins rather than an object map. - * - * @param {object} plugins - A map of plugin objects - * @return {object[]} - */ -exports.all = function (plugins) { - return Object.keys(plugins) - .filter(function (key) { - return typeof plugins[key] === "object"; - }) - .map(function (key) { - plugins[key].name = key; - return plugins[key]; - }); -}; - -/** - * Filters the given plugins, returning only the ones return `true` for the given method. - * - * @param {object[]} plugins - An array of plugin objects - * @param {string} method - The name of the filter method to invoke for each plugin - * @param {object} file - A file info object, which will be passed to each method - * @return {object[]} - */ -exports.filter = function (plugins, method, file) { - return plugins - .filter(function (plugin) { - return !!getResult(plugin, method, file); - }); -}; - -/** - * Sorts the given plugins, in place, by their `order` property. - * - * @param {object[]} plugins - An array of plugin objects - * @returns {object[]} - */ -exports.sort = function (plugins) { - plugins.forEach(function (plugin) { - plugin.order = plugin.order || Number.MAX_SAFE_INTEGER; - }); - - return plugins.sort(function (a, b) { return a.order - b.order; }); -}; - -/** - * Runs the specified method of the given plugins, in order, until one of them returns a successful result. - * Each method can return a synchronous value, a Promise, or call an error-first callback. - * If the promise resolves successfully, or the callback is called without an error, then the result - * is immediately returned and no further plugins are called. - * If the promise rejects, or the callback is called with an error, then the next plugin is called. - * If ALL plugins fail, then the last error is thrown. - * - * @param {object[]} plugins - An array of plugin objects - * @param {string} method - The name of the method to invoke for each plugin - * @param {object} file - A file info object, which will be passed to each method - * @returns {Promise} - */ -exports.run = function (plugins, method, file) { - var plugin, lastError, index = 0; - - return new Promise(function (resolve, reject) { - runNextPlugin(); - - function runNextPlugin () { - plugin = plugins[index++]; - if (!plugin) { - // There are no more functions, so re-throw the last error - return reject(lastError); - } - - try { - // console.log(' %s', plugin.name); - var result = getResult(plugin, method, file, callback); - if (result && typeof result.then === "function") { - // A promise was returned - result.then(onSuccess, onError); - } - else if (result !== undefined) { - // A synchronous result was returned - onSuccess(result); - } - // else { the callback will be called } - } - catch (e) { - onError(e); - } - } - - function callback (err, result) { - if (err) { - onError(err); - } - else { - onSuccess(result); - } - } - - function onSuccess (result) { - // console.log(' success'); - resolve({ - plugin: plugin, - result: result - }); - } - - function onError (err) { - // console.log(' %s', err.message || err); - lastError = err; - runNextPlugin(); - } - }); -}; - -/** - * Returns the value of the given property. - * If the property is a function, then the result of the function is returned. - * If the value is a RegExp, then it will be tested against the file URL. - * If the value is an aray, then it will be compared against the file extension. - * - * @param {object} obj - The object whose property/method is called - * @param {string} prop - The name of the property/method to invoke - * @param {object} file - A file info object, which will be passed to the method - * @param {function} [callback] - A callback function, which will be passed to the method - * @returns {*} - */ -function getResult (obj, prop, file, callback) { - var value = obj[prop]; - - if (typeof value === "function") { - return value.apply(obj, [file, callback]); - } - - if (!callback) { - // The synchronous plugin functions (canParse and canRead) - // allow a "shorthand" syntax, where the user can match - // files by RegExp or by file extension. - if (value instanceof RegExp) { - return value.test(file.url); - } - else if (typeof value === "string") { - return value === file.extension; - } - else if (Array.isArray(value)) { - return value.indexOf(file.extension) !== -1; - } - } - - return value; -} - -},{}],118:[function(require,module,exports){ -(function (process){ -"use strict"; - -var isWindows = /^win/.test(process.platform), - forwardSlashPattern = /\//g, - protocolPattern = /^(\w{2,}):\/\//i, - url = module.exports; - -// RegExp patterns to URL-encode special characters in local filesystem paths -var urlEncodePatterns = [ - /\?/g, "%3F", - /\#/g, "%23", -]; - -// RegExp patterns to URL-decode special characters for local filesystem paths -var urlDecodePatterns = [ - /\%23/g, "#", - /\%24/g, "$", - /\%26/g, "&", - /\%2C/g, ",", - /\%40/g, "@" -]; - -exports.parse = require("url").parse; -exports.resolve = require("url").resolve; - -/** - * Returns the current working directory (in Node) or the current page URL (in browsers). - * - * @returns {string} - */ -exports.cwd = function cwd () { - return process.browser ? location.href : process.cwd() + "/"; -}; - -/** - * Returns the protocol of the given URL, or `undefined` if it has no protocol. - * - * @param {string} path - * @returns {?string} - */ -exports.getProtocol = function getProtocol (path) { - var match = protocolPattern.exec(path); - if (match) { - return match[1].toLowerCase(); - } -}; - -/** - * Returns the lowercased file extension of the given URL, - * or an empty string if it has no extension. - * - * @param {string} path - * @returns {string} - */ -exports.getExtension = function getExtension (path) { - var lastDot = path.lastIndexOf("."); - if (lastDot >= 0) { - return path.substr(lastDot).toLowerCase(); - } - return ""; -}; - -/** - * Returns the hash (URL fragment), of the given path. - * If there is no hash, then the root hash ("#") is returned. - * - * @param {string} path - * @returns {string} - */ -exports.getHash = function getHash (path) { - var hashIndex = path.indexOf("#"); - if (hashIndex >= 0) { - return path.substr(hashIndex); - } - return "#"; -}; - -/** - * Removes the hash (URL fragment), if any, from the given path. - * - * @param {string} path - * @returns {string} - */ -exports.stripHash = function stripHash (path) { - var hashIndex = path.indexOf("#"); - if (hashIndex >= 0) { - path = path.substr(0, hashIndex); - } - return path; -}; - -/** - * Determines whether the given path is an HTTP(S) URL. - * - * @param {string} path - * @returns {boolean} - */ -exports.isHttp = function isHttp (path) { - var protocol = url.getProtocol(path); - if (protocol === "http" || protocol === "https") { - return true; - } - else if (protocol === undefined) { - // There is no protocol. If we're running in a browser, then assume it's HTTP. - return process.browser; - } - else { - // It's some other protocol, such as "ftp://", "mongodb://", etc. - return false; - } -}; - -/** - * Determines whether the given path is a filesystem path. - * This includes "file://" URLs. - * - * @param {string} path - * @returns {boolean} - */ -exports.isFileSystemPath = function isFileSystemPath (path) { - if (process.browser) { - // We're running in a browser, so assume that all paths are URLs. - // This way, even relative paths will be treated as URLs rather than as filesystem paths - return false; - } - - var protocol = url.getProtocol(path); - return protocol === undefined || protocol === "file"; -}; - -/** - * Converts a filesystem path to a properly-encoded URL. - * - * This is intended to handle situations where JSON Schema $Ref Parser is called - * with a filesystem path that contains characters which are not allowed in URLs. - * - * @example - * The following filesystem paths would be converted to the following URLs: - * - * <"!@#$%^&*+=?'>.json ==> %3C%22!@%23$%25%5E&*+=%3F\'%3E.json - * C:\\My Documents\\File (1).json ==> C:/My%20Documents/File%20(1).json - * file://Project #42/file.json ==> file://Project%20%2342/file.json - * - * @param {string} path - * @returns {string} - */ -exports.fromFileSystemPath = function fromFileSystemPath (path) { - // Step 1: On Windows, replace backslashes with forward slashes, - // rather than encoding them as "%5C" - if (isWindows) { - path = path.replace(/\\/g, "/"); - } - - // Step 2: `encodeURI` will take care of MOST characters - path = encodeURI(path); - - // Step 3: Manually encode characters that are not encoded by `encodeURI`. - // This includes characters such as "#" and "?", which have special meaning in URLs, - // but are just normal characters in a filesystem path. - for (var i = 0; i < urlEncodePatterns.length; i += 2) { - path = path.replace(urlEncodePatterns[i], urlEncodePatterns[i + 1]); - } - - return path; -}; - -/** - * Converts a URL to a local filesystem path. - * - * @param {string} path - * @param {boolean} [keepFileProtocol] - If true, then "file://" will NOT be stripped - * @returns {string} - */ -exports.toFileSystemPath = function toFileSystemPath (path, keepFileProtocol) { - // Step 1: `decodeURI` will decode characters such as Cyrillic characters, spaces, etc. - path = decodeURI(path); - - // Step 2: Manually decode characters that are not decoded by `decodeURI`. - // This includes characters such as "#" and "?", which have special meaning in URLs, - // but are just normal characters in a filesystem path. - for (var i = 0; i < urlDecodePatterns.length; i += 2) { - path = path.replace(urlDecodePatterns[i], urlDecodePatterns[i + 1]); - } - - // Step 3: If it's a "file://" URL, then format it consistently - // or convert it to a local filesystem path - var isFileUrl = path.substr(0, 7).toLowerCase() === "file://"; - if (isFileUrl) { - // Strip-off the protocol, and the initial "/", if there is one - path = path[7] === "/" ? path.substr(8) : path.substr(7); - - // insert a colon (":") after the drive letter on Windows - if (isWindows && path[1] === "/") { - path = path[0] + ":" + path.substr(1); - } - - if (keepFileProtocol) { - // Return the consistently-formatted "file://" URL - path = "file:///" + path; - } - else { - // Convert the "file://" URL to a local filesystem path. - // On Windows, it will start with something like "C:/". - // On Posix, it will start with "/" - isFileUrl = false; - path = isWindows ? path : "/" + path; - } - } - - // Step 4: Normalize Windows paths (unless it's a "file://" URL) - if (isWindows && !isFileUrl) { - // Replace forward slashes with backslashes - path = path.replace(forwardSlashPattern, "\\"); - - // Capitalize the drive letter - if (path.substr(1, 2) === ":\\") { - path = path[0].toUpperCase() + path.substr(1); - } - } - - return path; -}; - -}).call(this,require('_process')) - -},{"_process":125,"url":148}],119:[function(require,module,exports){ -/* eslint lines-around-comment: [2, {beforeBlockComment: false}] */ -"use strict"; - -var yaml = require("js-yaml"), - ono = require("ono"); - -/** - * Simple YAML parsing functions, similar to {@link JSON.parse} and {@link JSON.stringify} - */ -module.exports = { - /** - * Parses a YAML string and returns the value. - * - * @param {string} text - The YAML string to be parsed - * @param {function} [reviver] - Not currently supported. Provided for consistency with {@link JSON.parse} - * @returns {*} - */ - parse: function yamlParse (text, reviver) { - try { - return yaml.safeLoad(text); - } - catch (e) { - if (e instanceof Error) { - throw e; - } - else { - // https://github.com/nodeca/js-yaml/issues/153 - throw ono(e, e.message); - } - } - }, - - /** - * Converts a JavaScript value to a YAML string. - * - * @param {*} value - The value to convert to YAML - * @param {function|array} replacer - Not currently supported. Provided for consistency with {@link JSON.stringify} - * @param {string|number} space - The number of spaces to use for indentation, or a string containing the number of spaces. - * @returns {string} - */ - stringify: function yamlStringify (value, replacer, space) { - try { - var indent = (typeof space === "string" ? space.length : space) || 2; - return yaml.safeDump(value, { indent: indent }); - } - catch (e) { - if (e instanceof Error) { - throw e; - } - else { - // https://github.com/nodeca/js-yaml/issues/153 - throw ono(e, e.message); - } - } - } -}; - -},{"js-yaml":71,"ono":122}],120:[function(require,module,exports){ -(function (global){ -/** - * lodash (Custom Build) - * Build: `lodash modularize exports="npm" -o ./` - * Copyright jQuery Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */ - -/** Used as the `TypeError` message for "Functions" methods. */ -var FUNC_ERROR_TEXT = 'Expected a function'; - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** Used as references for various `Number` constants. */ -var INFINITY = 1 / 0; - -/** `Object#toString` result references. */ -var funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - symbolTag = '[object Symbol]'; - -/** Used to match property names within property paths. */ -var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, - reIsPlainProp = /^\w*$/, - reLeadingDot = /^\./, - rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; - -/** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ -var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; - -/** Used to match backslashes in property paths. */ -var reEscapeChar = /\\(\\)?/g; - -/** Used to detect host constructors (Safari). */ -var reIsHostCtor = /^\[object .+?Constructor\]$/; - -/** Detect free variable `global` from Node.js. */ -var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - -/** Detect free variable `self`. */ -var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - -/** Used as a reference to the global object. */ -var root = freeGlobal || freeSelf || Function('return this')(); - -/** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function getValue(object, key) { - return object == null ? undefined : object[key]; -} - -/** - * Checks if `value` is a host object in IE < 9. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a host object, else `false`. - */ -function isHostObject(value) { - // Many host objects are `Object` objects that can coerce to strings - // despite having improperly defined `toString` methods. - var result = false; - if (value != null && typeof value.toString != 'function') { - try { - result = !!(value + ''); - } catch (e) {} - } - return result; -} - -/** Used for built-in method references. */ -var arrayProto = Array.prototype, - funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to detect overreaching core-js shims. */ -var coreJsData = root['__core-js_shared__']; - -/** Used to detect methods masquerading as native. */ -var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; -}()); - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var objectToString = objectProto.toString; - -/** Used to detect if a method is native. */ -var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' -); - -/** Built-in value references. */ -var Symbol = root.Symbol, - splice = arrayProto.splice; - -/* Built-in method references that are verified to be native. */ -var Map = getNative(root, 'Map'), - nativeCreate = getNative(Object, 'create'); - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolToString = symbolProto ? symbolProto.toString : undefined; - -/** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Hash(entries) { - var index = -1, - length = entries ? entries.length : 0; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ -function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; -} - -/** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function hashDelete(key) { - return this.has(key) && delete this.__data__[key]; -} - -/** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; -} - -/** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function hashHas(key) { - var data = this.__data__; - return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key); -} - -/** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ -function hashSet(key, value) { - var data = this.__data__; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; -} - -// Add methods to `Hash`. -Hash.prototype.clear = hashClear; -Hash.prototype['delete'] = hashDelete; -Hash.prototype.get = hashGet; -Hash.prototype.has = hashHas; -Hash.prototype.set = hashSet; - -/** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function ListCache(entries) { - var index = -1, - length = entries ? entries.length : 0; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ -function listCacheClear() { - this.__data__ = []; -} - -/** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - return true; -} - -/** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; -} - -/** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; -} - -/** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ -function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; -} - -// Add methods to `ListCache`. -ListCache.prototype.clear = listCacheClear; -ListCache.prototype['delete'] = listCacheDelete; -ListCache.prototype.get = listCacheGet; -ListCache.prototype.has = listCacheHas; -ListCache.prototype.set = listCacheSet; - -/** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function MapCache(entries) { - var index = -1, - length = entries ? entries.length : 0; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ -function mapCacheClear() { - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; -} - -/** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function mapCacheDelete(key) { - return getMapData(this, key)['delete'](key); -} - -/** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function mapCacheGet(key) { - return getMapData(this, key).get(key); -} - -/** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function mapCacheHas(key) { - return getMapData(this, key).has(key); -} - -/** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ -function mapCacheSet(key, value) { - getMapData(this, key).set(key, value); - return this; -} - -// Add methods to `MapCache`. -MapCache.prototype.clear = mapCacheClear; -MapCache.prototype['delete'] = mapCacheDelete; -MapCache.prototype.get = mapCacheGet; -MapCache.prototype.has = mapCacheHas; -MapCache.prototype.set = mapCacheSet; - -/** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; -} - -/** - * The base implementation of `_.get` without support for default values. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @returns {*} Returns the resolved value. - */ -function baseGet(object, path) { - path = isKey(path, object) ? [path] : castPath(path); - - var index = 0, - length = path.length; - - while (object != null && index < length) { - object = object[toKey(path[index++])]; - } - return (index && index == length) ? object : undefined; -} - -/** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ -function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); -} - -/** - * The base implementation of `_.toString` which doesn't convert nullish - * values to empty strings. - * - * @private - * @param {*} value The value to process. - * @returns {string} Returns the string. - */ -function baseToString(value) { - // Exit early for strings to avoid a performance hit in some environments. - if (typeof value == 'string') { - return value; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ''; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; -} - -/** - * Casts `value` to a path array if it's not one. - * - * @private - * @param {*} value The value to inspect. - * @returns {Array} Returns the cast property path array. - */ -function castPath(value) { - return isArray(value) ? value : stringToPath(value); -} - -/** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ -function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; -} - -/** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ -function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; -} - -/** - * Checks if `value` is a property name and not a property path. - * - * @private - * @param {*} value The value to check. - * @param {Object} [object] The object to query keys on. - * @returns {boolean} Returns `true` if `value` is a property name, else `false`. - */ -function isKey(value, object) { - if (isArray(value)) { - return false; - } - var type = typeof value; - if (type == 'number' || type == 'symbol' || type == 'boolean' || - value == null || isSymbol(value)) { - return true; - } - return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || - (object != null && value in Object(object)); -} - -/** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ -function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); -} - -/** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ -function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); -} - -/** - * Converts `string` to a property path array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the property path array. - */ -var stringToPath = memoize(function(string) { - string = toString(string); - - var result = []; - if (reLeadingDot.test(string)) { - result.push(''); - } - string.replace(rePropName, function(match, number, quote, string) { - result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match)); - }); - return result; -}); - -/** - * Converts `value` to a string key if it's not a string or symbol. - * - * @private - * @param {*} value The value to inspect. - * @returns {string|symbol} Returns the key. - */ -function toKey(value) { - if (typeof value == 'string' || isSymbol(value)) { - return value; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; -} - -/** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to process. - * @returns {string} Returns the source code. - */ -function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; -} - -/** - * Creates a function that memoizes the result of `func`. If `resolver` is - * provided, it determines the cache key for storing the result based on the - * arguments provided to the memoized function. By default, the first argument - * provided to the memoized function is used as the map cache key. The `func` - * is invoked with the `this` binding of the memoized function. - * - * **Note:** The cache is exposed as the `cache` property on the memoized - * function. Its creation may be customized by replacing the `_.memoize.Cache` - * constructor with one whose instances implement the - * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) - * method interface of `delete`, `get`, `has`, and `set`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to have its output memoized. - * @param {Function} [resolver] The function to resolve the cache key. - * @returns {Function} Returns the new memoized function. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * var other = { 'c': 3, 'd': 4 }; - * - * var values = _.memoize(_.values); - * values(object); - * // => [1, 2] - * - * values(other); - * // => [3, 4] - * - * object.a = 2; - * values(object); - * // => [1, 2] - * - * // Modify the result cache. - * values.cache.set(object, ['a', 'b']); - * values(object); - * // => ['a', 'b'] - * - * // Replace `_.memoize.Cache`. - * _.memoize.Cache = WeakMap; - */ -function memoize(func, resolver) { - if (typeof func != 'function' || (resolver && typeof resolver != 'function')) { - throw new TypeError(FUNC_ERROR_TEXT); - } - var memoized = function() { - var args = arguments, - key = resolver ? resolver.apply(this, args) : args[0], - cache = memoized.cache; - - if (cache.has(key)) { - return cache.get(key); - } - var result = func.apply(this, args); - memoized.cache = cache.set(key, result); - return result; - }; - memoized.cache = new (memoize.Cache || MapCache); - return memoized; -} - -// Assign cache to `_.memoize`. -memoize.Cache = MapCache; - -/** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ -function eq(value, other) { - return value === other || (value !== value && other !== other); -} - -/** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ -var isArray = Array.isArray; - -/** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ -function isFunction(value) { - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 8-9 which returns 'object' for typed array and other constructors. - var tag = isObject(value) ? objectToString.call(value) : ''; - return tag == funcTag || tag == genTag; -} - -/** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ -function isObject(value) { - var type = typeof value; - return !!value && (type == 'object' || type == 'function'); -} - -/** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ -function isObjectLike(value) { - return !!value && typeof value == 'object'; -} - -/** - * Checks if `value` is classified as a `Symbol` primitive or object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. - * @example - * - * _.isSymbol(Symbol.iterator); - * // => true - * - * _.isSymbol('abc'); - * // => false - */ -function isSymbol(value) { - return typeof value == 'symbol' || - (isObjectLike(value) && objectToString.call(value) == symbolTag); -} - -/** - * Converts `value` to a string. An empty string is returned for `null` - * and `undefined` values. The sign of `-0` is preserved. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to process. - * @returns {string} Returns the string. - * @example - * - * _.toString(null); - * // => '' - * - * _.toString(-0); - * // => '-0' - * - * _.toString([1, 2, 3]); - * // => '1,2,3' - */ -function toString(value) { - return value == null ? '' : baseToString(value); -} - -/** - * Gets the value at `path` of `object`. If the resolved value is - * `undefined`, the `defaultValue` is returned in its place. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.get(object, 'a[0].b.c'); - * // => 3 - * - * _.get(object, ['a', '0', 'b', 'c']); - * // => 3 - * - * _.get(object, 'a.b.c', 'default'); - * // => 'default' - */ -function get(object, path, defaultValue) { - var result = object == null ? undefined : baseGet(object, path); - return result === undefined ? defaultValue : result; -} - -module.exports = get; - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],121:[function(require,module,exports){ -(function (global){ -/** - * Lodash (Custom Build) - * Build: `lodash modularize exports="npm" -o ./` - * Copyright JS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */ - -/** Used as the size to enable large array optimizations. */ -var LARGE_ARRAY_SIZE = 200; - -/** Used to stand-in for `undefined` hash values. */ -var HASH_UNDEFINED = '__lodash_hash_undefined__'; - -/** Used to compose bitmasks for value comparisons. */ -var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - -/** Used as references for various `Number` constants. */ -var MAX_SAFE_INTEGER = 9007199254740991; - -/** `Object#toString` result references. */ -var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - asyncTag = '[object AsyncFunction]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - errorTag = '[object Error]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - mapTag = '[object Map]', - numberTag = '[object Number]', - nullTag = '[object Null]', - objectTag = '[object Object]', - promiseTag = '[object Promise]', - proxyTag = '[object Proxy]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]', - undefinedTag = '[object Undefined]', - weakMapTag = '[object WeakMap]'; - -var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - -/** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ -var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; - -/** Used to detect host constructors (Safari). */ -var reIsHostCtor = /^\[object .+?Constructor\]$/; - -/** Used to detect unsigned integer values. */ -var reIsUint = /^(?:0|[1-9]\d*)$/; - -/** Used to identify `toStringTag` values of typed arrays. */ -var typedArrayTags = {}; -typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = -typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = -typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = -typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = -typedArrayTags[uint32Tag] = true; -typedArrayTags[argsTag] = typedArrayTags[arrayTag] = -typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = -typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = -typedArrayTags[errorTag] = typedArrayTags[funcTag] = -typedArrayTags[mapTag] = typedArrayTags[numberTag] = -typedArrayTags[objectTag] = typedArrayTags[regexpTag] = -typedArrayTags[setTag] = typedArrayTags[stringTag] = -typedArrayTags[weakMapTag] = false; - -/** Detect free variable `global` from Node.js. */ -var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - -/** Detect free variable `self`. */ -var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - -/** Used as a reference to the global object. */ -var root = freeGlobal || freeSelf || Function('return this')(); - -/** Detect free variable `exports`. */ -var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - -/** Detect free variable `module`. */ -var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - -/** Detect the popular CommonJS extension `module.exports`. */ -var moduleExports = freeModule && freeModule.exports === freeExports; - -/** Detect free variable `process` from Node.js. */ -var freeProcess = moduleExports && freeGlobal.process; - -/** Used to access faster Node.js helpers. */ -var nodeUtil = (function() { - try { - return freeProcess && freeProcess.binding && freeProcess.binding('util'); - } catch (e) {} -}()); - -/* Node.js helper references. */ -var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - -/** - * A specialized version of `_.filter` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ -function arrayFilter(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; - } - } - return result; -} - -/** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ -function arrayPush(array, values) { - var index = -1, - length = values.length, - offset = array.length; - - while (++index < length) { - array[offset + index] = values[index]; - } - return array; -} - -/** - * A specialized version of `_.some` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ -function arraySome(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; - } - } - return false; -} - -/** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ -function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; -} - -/** - * The base implementation of `_.unary` without support for storing metadata. - * - * @private - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - */ -function baseUnary(func) { - return function(value) { - return func(value); - }; -} - -/** - * Checks if a `cache` value for `key` exists. - * - * @private - * @param {Object} cache The cache to query. - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function cacheHas(cache, key) { - return cache.has(key); -} - -/** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ -function getValue(object, key) { - return object == null ? undefined : object[key]; -} - -/** - * Converts `map` to its key-value pairs. - * - * @private - * @param {Object} map The map to convert. - * @returns {Array} Returns the key-value pairs. - */ -function mapToArray(map) { - var index = -1, - result = Array(map.size); - - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; -} - -/** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ -function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; -} - -/** - * Converts `set` to an array of its values. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the values. - */ -function setToArray(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = value; - }); - return result; -} - -/** Used for built-in method references. */ -var arrayProto = Array.prototype, - funcProto = Function.prototype, - objectProto = Object.prototype; - -/** Used to detect overreaching core-js shims. */ -var coreJsData = root['__core-js_shared__']; - -/** Used to resolve the decompiled source of functions. */ -var funcToString = funcProto.toString; - -/** Used to check objects for own properties. */ -var hasOwnProperty = objectProto.hasOwnProperty; - -/** Used to detect methods masquerading as native. */ -var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; -}()); - -/** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ -var nativeObjectToString = objectProto.toString; - -/** Used to detect if a method is native. */ -var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' -); - -/** Built-in value references. */ -var Buffer = moduleExports ? root.Buffer : undefined, - Symbol = root.Symbol, - Uint8Array = root.Uint8Array, - propertyIsEnumerable = objectProto.propertyIsEnumerable, - splice = arrayProto.splice, - symToStringTag = Symbol ? Symbol.toStringTag : undefined; - -/* Built-in method references for those with the same name as other `lodash` methods. */ -var nativeGetSymbols = Object.getOwnPropertySymbols, - nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, - nativeKeys = overArg(Object.keys, Object); - -/* Built-in method references that are verified to be native. */ -var DataView = getNative(root, 'DataView'), - Map = getNative(root, 'Map'), - Promise = getNative(root, 'Promise'), - Set = getNative(root, 'Set'), - WeakMap = getNative(root, 'WeakMap'), - nativeCreate = getNative(Object, 'create'); - -/** Used to detect maps, sets, and weakmaps. */ -var dataViewCtorString = toSource(DataView), - mapCtorString = toSource(Map), - promiseCtorString = toSource(Promise), - setCtorString = toSource(Set), - weakMapCtorString = toSource(WeakMap); - -/** Used to convert symbols to primitives and strings. */ -var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; - -/** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Hash(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ -function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; -} - -/** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; -} - -/** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; -} - -/** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function hashHas(key) { - var data = this.__data__; - return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); -} - -/** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ -function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; -} - -// Add methods to `Hash`. -Hash.prototype.clear = hashClear; -Hash.prototype['delete'] = hashDelete; -Hash.prototype.get = hashGet; -Hash.prototype.has = hashHas; -Hash.prototype.set = hashSet; - -/** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function ListCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ -function listCacheClear() { - this.__data__ = []; - this.size = 0; -} - -/** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - --this.size; - return true; -} - -/** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; -} - -/** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; -} - -/** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ -function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; -} - -// Add methods to `ListCache`. -ListCache.prototype.clear = listCacheClear; -ListCache.prototype['delete'] = listCacheDelete; -ListCache.prototype.get = listCacheGet; -ListCache.prototype.has = listCacheHas; -ListCache.prototype.set = listCacheSet; - -/** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function MapCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } -} - -/** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ -function mapCacheClear() { - this.size = 0; - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; -} - -/** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function mapCacheDelete(key) { - var result = getMapData(this, key)['delete'](key); - this.size -= result ? 1 : 0; - return result; -} - -/** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function mapCacheGet(key) { - return getMapData(this, key).get(key); -} - -/** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function mapCacheHas(key) { - return getMapData(this, key).has(key); -} - -/** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ -function mapCacheSet(key, value) { - var data = getMapData(this, key), - size = data.size; - - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; -} - -// Add methods to `MapCache`. -MapCache.prototype.clear = mapCacheClear; -MapCache.prototype['delete'] = mapCacheDelete; -MapCache.prototype.get = mapCacheGet; -MapCache.prototype.has = mapCacheHas; -MapCache.prototype.set = mapCacheSet; - -/** - * - * Creates an array cache object to store unique values. - * - * @private - * @constructor - * @param {Array} [values] The values to cache. - */ -function SetCache(values) { - var index = -1, - length = values == null ? 0 : values.length; - - this.__data__ = new MapCache; - while (++index < length) { - this.add(values[index]); - } -} - -/** - * Adds `value` to the array cache. - * - * @private - * @name add - * @memberOf SetCache - * @alias push - * @param {*} value The value to cache. - * @returns {Object} Returns the cache instance. - */ -function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; -} - -/** - * Checks if `value` is in the array cache. - * - * @private - * @name has - * @memberOf SetCache - * @param {*} value The value to search for. - * @returns {number} Returns `true` if `value` is found, else `false`. - */ -function setCacheHas(value) { - return this.__data__.has(value); -} - -// Add methods to `SetCache`. -SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; -SetCache.prototype.has = setCacheHas; - -/** - * Creates a stack cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ -function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; -} - -/** - * Removes all key-value entries from the stack. - * - * @private - * @name clear - * @memberOf Stack - */ -function stackClear() { - this.__data__ = new ListCache; - this.size = 0; -} - -/** - * Removes `key` and its value from the stack. - * - * @private - * @name delete - * @memberOf Stack - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ -function stackDelete(key) { - var data = this.__data__, - result = data['delete'](key); - - this.size = data.size; - return result; -} - -/** - * Gets the stack value for `key`. - * - * @private - * @name get - * @memberOf Stack - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ -function stackGet(key) { - return this.__data__.get(key); -} - -/** - * Checks if a stack value for `key` exists. - * - * @private - * @name has - * @memberOf Stack - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ -function stackHas(key) { - return this.__data__.has(key); -} - -/** - * Sets the stack `key` to `value`. - * - * @private - * @name set - * @memberOf Stack - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the stack cache instance. - */ -function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { - pairs.push([key, value]); - this.size = ++data.size; - return this; - } - data = this.__data__ = new MapCache(pairs); - } - data.set(key, value); - this.size = data.size; - return this; -} - -// Add methods to `Stack`. -Stack.prototype.clear = stackClear; -Stack.prototype['delete'] = stackDelete; -Stack.prototype.get = stackGet; -Stack.prototype.has = stackHas; -Stack.prototype.set = stackSet; - -/** - * Creates an array of the enumerable property names of the array-like `value`. - * - * @private - * @param {*} value The value to query. - * @param {boolean} inherited Specify returning inherited property names. - * @returns {Array} Returns the array of property names. - */ -function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), - isArg = !isArr && isArguments(value), - isBuff = !isArr && !isArg && isBuffer(value), - isType = !isArr && !isArg && !isBuff && isTypedArray(value), - skipIndexes = isArr || isArg || isBuff || isType, - result = skipIndexes ? baseTimes(value.length, String) : [], - length = result.length; - - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && - !(skipIndexes && ( - // Safari 9 has enumerable `arguments.length` in strict mode. - key == 'length' || - // Node.js 0.10 has enumerable non-index properties on buffers. - (isBuff && (key == 'offset' || key == 'parent')) || - // PhantomJS 2 has enumerable non-index properties on typed arrays. - (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || - // Skip index properties. - isIndex(key, length) - ))) { - result.push(key); - } - } - return result; -} - -/** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ -function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; -} - -/** - * The base implementation of `getAllKeys` and `getAllKeysIn` which uses - * `keysFunc` and `symbolsFunc` to get the enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Function} keysFunc The function to get the keys of `object`. - * @param {Function} symbolsFunc The function to get the symbols of `object`. - * @returns {Array} Returns the array of property names and symbols. - */ -function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); -} - -/** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); -} - -/** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ -function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; -} - -/** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ -function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); -} - -/** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : getTag(object), - othTag = othIsArr ? arrayTag : getTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; - } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack || (stack = new Stack); - return (objIsArr || isTypedArray(object)) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - stack || (stack = new Stack); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - } - } - if (!isSameTag) { - return false; - } - stack || (stack = new Stack); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack); -} - -/** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ -function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); -} - -/** - * The base implementation of `_.isTypedArray` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - */ -function baseIsTypedArray(value) { - return isObjectLike(value) && - isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; -} - -/** - * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ -function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != 'constructor') { - result.push(key); - } - } - return result; -} - -/** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ -function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(array); - if (stacked && stack.get(other)) { - return stacked == other; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; - - stack.set(array, other); - stack.set(other, array); - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, arrValue, index, other, array, stack) - : customizer(arrValue, othValue, index, array, other, stack); - } - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!arraySome(other, function(othValue, othIndex) { - if (!cacheHas(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - stack['delete'](array); - stack['delete'](other); - return result; -} - -/** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - case dataViewTag: - if ((object.byteLength != other.byteLength) || - (object.byteOffset != other.byteOffset)) { - return false; - } - object = object.buffer; - other = other.buffer; - - case arrayBufferTag: - if ((object.byteLength != other.byteLength) || - !equalFunc(new Uint8Array(object), new Uint8Array(other))) { - return false; - } - return true; - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - case mapTag: - var convert = mapToArray; - - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - - if (object.size != other.size && !isPartial) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked) { - return stacked == other; - } - bitmask |= COMPARE_UNORDERED_FLAG; - - // Recursively compare objects (susceptible to call stack limits). - stack.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); - stack['delete'](object); - return result; - - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); - } - } - return false; -} - -/** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ -function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = getAllKeys(object), - objLength = objProps.length, - othProps = getAllKeys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked && stack.get(other)) { - return stacked == other; - } - var result = true; - stack.set(object, other); - stack.set(other, object); - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, objValue, key, other, object, stack) - : customizer(objValue, othValue, key, object, other, stack); - } - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - stack['delete'](object); - stack['delete'](other); - return result; -} - -/** - * Creates an array of own enumerable property names and symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ -function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); -} - -/** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ -function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; -} - -/** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ -function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; -} - -/** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ -function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; -} - -/** - * Creates an array of the own enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ -var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); -}; - -/** - * Gets the `toStringTag` of `value`. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ -var getTag = baseGetTag; - -// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. -if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || - (Map && getTag(new Map) != mapTag) || - (Promise && getTag(Promise.resolve()) != promiseTag) || - (Set && getTag(new Set) != setTag) || - (WeakMap && getTag(new WeakMap) != weakMapTag)) { - getTag = function(value) { - var result = baseGetTag(value), - Ctor = result == objectTag ? value.constructor : undefined, - ctorString = Ctor ? toSource(Ctor) : ''; - - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: return dataViewTag; - case mapCtorString: return mapTag; - case promiseCtorString: return promiseTag; - case setCtorString: return setTag; - case weakMapCtorString: return weakMapTag; - } - } - return result; - }; -} - -/** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ -function isIndex(value, length) { - length = length == null ? MAX_SAFE_INTEGER : length; - return !!length && - (typeof value == 'number' || reIsUint.test(value)) && - (value > -1 && value % 1 == 0 && value < length); -} - -/** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ -function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); -} - -/** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ -function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); -} - -/** - * Checks if `value` is likely a prototype object. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. - */ -function isPrototype(value) { - var Ctor = value && value.constructor, - proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; - - return value === proto; -} - -/** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ -function objectToString(value) { - return nativeObjectToString.call(value); -} - -/** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to convert. - * @returns {string} Returns the source code. - */ -function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; -} - -/** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ -function eq(value, other) { - return value === other || (value !== value && other !== other); -} - -/** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ -var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); -}; - -/** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ -var isArray = Array.isArray; - -/** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ -function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); -} - -/** - * Checks if `value` is a buffer. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. - * @example - * - * _.isBuffer(new Buffer(2)); - * // => true - * - * _.isBuffer(new Uint8Array(2)); - * // => false - */ -var isBuffer = nativeIsBuffer || stubFalse; - -/** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ -function isEqual(value, other) { - return baseIsEqual(value, other); -} - -/** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ -function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; -} - -/** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ -function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; -} - -/** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ -function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); -} - -/** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ -function isObjectLike(value) { - return value != null && typeof value == 'object'; -} - -/** - * Checks if `value` is classified as a typed array. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - * @example - * - * _.isTypedArray(new Uint8Array); - * // => true - * - * _.isTypedArray([]); - * // => false - */ -var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - -/** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ -function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); -} - -/** - * This method returns a new empty array. - * - * @static - * @memberOf _ - * @since 4.13.0 - * @category Util - * @returns {Array} Returns the new empty array. - * @example - * - * var arrays = _.times(2, _.stubArray); - * - * console.log(arrays); - * // => [[], []] - * - * console.log(arrays[0] === arrays[1]); - * // => false - */ -function stubArray() { - return []; -} - -/** - * This method returns `false`. - * - * @static - * @memberOf _ - * @since 4.13.0 - * @category Util - * @returns {boolean} Returns `false`. - * @example - * - * _.times(2, _.stubFalse); - * // => [false, false] - */ -function stubFalse() { - return false; -} - -module.exports = isEqual; - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],122:[function(require,module,exports){ -"use strict"; - -var format = require("format-util"); -var slice = Array.prototype.slice; -var protectedProperties = ["name", "message", "stack"]; -var errorPrototypeProperties = [ - "name", "message", "description", "number", "code", "fileName", "lineNumber", "columnNumber", - "sourceURL", "line", "column", "stack" -]; - -module.exports = create(Error); -module.exports.error = create(Error); -module.exports.eval = create(EvalError); -module.exports.range = create(RangeError); -module.exports.reference = create(ReferenceError); -module.exports.syntax = create(SyntaxError); -module.exports.type = create(TypeError); -module.exports.uri = create(URIError); -module.exports.formatter = format; - -/** - * Creates a new {@link ono} function that creates the given Error class. - * - * @param {Class} Klass - The Error subclass to create - * @returns {ono} - */ -function create (Klass) { - /** - * @param {Error} [err] - The original error, if any - * @param {object} [props] - An object whose properties will be added to the error object - * @param {string} [message] - The error message. May contain {@link util#format} placeholders - * @param {...*} [params] - Parameters that map to the `message` placeholders - * @returns {Error} - */ - return function onoFactory (err, props, message, params) { // eslint-disable-line no-unused-vars - var formatArgs = []; - var formattedMessage = ""; - - // Determine which arguments were actually specified - if (typeof err === "string") { - formatArgs = slice.call(arguments); - err = props = undefined; - } - else if (typeof props === "string") { - formatArgs = slice.call(arguments, 1); - props = undefined; - } - else if (typeof message === "string") { - formatArgs = slice.call(arguments, 2); - } - - // If there are any format arguments, then format the error message - if (formatArgs.length > 0) { - formattedMessage = module.exports.formatter.apply(null, formatArgs); - } - - if (err && err.message) { - // The inner-error's message will be added to the new message - formattedMessage += (formattedMessage ? " \n" : "") + err.message; - } - - // Create the new error - // NOTE: DON'T move this to a separate function! We don't want to pollute the stack trace - var newError = new Klass(formattedMessage); - - // Extend the new error with the additional properties - extendError(newError, err); // Copy properties of the original error - extendToJSON(newError); // Replace the original toJSON method - extend(newError, props); // Copy custom properties, possibly including a custom toJSON method - - return newError; - }; -} - -/** - * Extends the targetError with the properties of the source error. - * - * @param {Error} targetError - The error object to extend - * @param {?Error} sourceError - The source error object, if any - */ -function extendError (targetError, sourceError) { - extendStack(targetError, sourceError); - extend(targetError, sourceError); -} - -/** - * JavaScript engines differ in how errors are serialized to JSON - especially when it comes - * to custom error properties and stack traces. So we add our own toJSON method that ALWAYS - * outputs every property of the error. - */ -function extendToJSON (error) { - error.toJSON = errorToJSON; - - // Also add an inspect() method, for compatibility with Node.js' `util.inspect()` method - error.inspect = errorToString; -} - -/** - * Extends the target object with the properties of the source object. - * - * @param {object} target - The object to extend - * @param {?source} source - The object whose properties are copied - */ -function extend (target, source) { - if (source && typeof source === "object") { - var keys = Object.keys(source); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - // Don't copy "protected" properties, since they have special meaning/behavior - // and are set by the onoFactory function - if (protectedProperties.indexOf(key) >= 0) { - continue; - } - - try { - target[key] = source[key]; - } - catch (e) { - // This property is read-only, so it can't be copied - } - } - } -} - -/** - * Custom JSON serializer for Error objects. - * Returns all built-in error properties, as well as extended properties. - * - * @returns {object} - */ -function errorToJSON () { - var json = {}; - - // Get all the properties of this error - var keys = Object.keys(this); - - // Also include properties from the Error prototype - keys = keys.concat(errorPrototypeProperties); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = this[key]; - var type = typeof value; - if (type !== "undefined" && type !== "function") { - json[key] = value; - } - } - - return json; -} - -/** - * Serializes Error objects as human-readable JSON strings for debugging/logging purposes. - * - * @returns {string} - */ -function errorToString () { - return JSON.stringify(this, null, 2).replace(/\\n/g, "\n"); -} - -/** - * Extend the error stack to include its cause - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function extendStack (targetError, sourceError) { - if (hasLazyStack(targetError)) { - if (sourceError) { - lazyJoinStacks(targetError, sourceError); - } - else { - lazyPopStack(targetError); - } - } - else { - if (sourceError) { - targetError.stack = joinStacks(targetError.stack, sourceError.stack); - } - else { - targetError.stack = popStack(targetError.stack); - } - } -} - -/** - * Appends the original {@link Error#stack} property to the new Error's stack. - * - * @param {string} newStack - * @param {string} originalStack - * @returns {string} - */ -function joinStacks (newStack, originalStack) { - newStack = popStack(newStack); - - if (newStack && originalStack) { - return newStack + "\n\n" + originalStack; - } - else { - return newStack || originalStack; - } -} - -/** - * Removes Ono from the stack, so that the stack starts at the original error location - * - * @param {string} stack - * @returns {string} - */ -function popStack (stack) { - if (stack) { - var lines = stack.split("\n"); - - if (lines.length < 2) { - // The stack only has one line, so there's nothing we can remove - return stack; - } - - // Find the `onoFactory` call in the stack, and remove it - for (var i = 0; i < lines.length; i++) { - var line = lines[i]; - if (line.indexOf("onoFactory") >= 0) { - lines.splice(i, 1); - return lines.join("\n"); - } - } - - // If we get here, then the stack doesn't contain a call to `onoFactory`. - // This may be due to minification or some optimization of the JS engine. - // So just return the stack as-is. - return stack; - } -} - -/** - * Does a one-time determination of whether this JavaScript engine - * supports lazy `Error.stack` properties. - */ -var supportsLazyStack = (function () { - return !!( - // ES5 property descriptors must be supported - Object.getOwnPropertyDescriptor && Object.defineProperty && - - // Chrome on Android doesn't support lazy stacks :( - (typeof navigator === "undefined" || !/Android/.test(navigator.userAgent)) - ); -}()); - -/** - * Does this error have a lazy stack property? - * - * @param {Error} err - * @returns {boolean} - */ -function hasLazyStack (err) { - if (!supportsLazyStack) { - return false; - } - - var descriptor = Object.getOwnPropertyDescriptor(err, "stack"); - if (!descriptor) { - return false; - } - return typeof descriptor.get === "function"; -} - -/** - * Calls {@link joinStacks} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} targetError - * @param {Error} sourceError - */ -function lazyJoinStacks (targetError, sourceError) { - var targetStack = Object.getOwnPropertyDescriptor(targetError, "stack"); - - Object.defineProperty(targetError, "stack", { - get: function () { - return joinStacks(targetStack.get.apply(targetError), sourceError.stack); - }, - enumerable: false, - configurable: true - }); -} - -/** - * Calls {@link popStack} lazily, when the {@link Error#stack} property is accessed. - * - * @param {Error} error - */ -function lazyPopStack (error) { - var targetStack = Object.getOwnPropertyDescriptor(error, "stack"); - - Object.defineProperty(error, "stack", { - get: function () { - return popStack(targetStack.get.apply(error)); - }, - enumerable: false, - configurable: true - }); -} - -},{"format-util":65}],123:[function(require,module,exports){ -module.exports={ - "title": "A JSON Schema for OpenAPI 3.0.", - "id": "http://openapis.org/v3/schema.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "description": "This is the root document object of the OpenAPI document.", - "required": [ - "openapi", - "info", - "paths" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "openapi": { - "type": "string" - }, - "info": { - "$ref": "#/definitions/info" - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - }, - "paths": { - "$ref": "#/definitions/paths" - }, - "components": { - "$ref": "#/definitions/components" - }, - "security": { - "type": "array", - "items": { - "$ref": "#/definitions/securityRequirement" - }, - "uniqueItems": true - }, - "tags": { - "type": "array", - "items": { - "$ref": "#/definitions/tag" - }, - "uniqueItems": true - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - }, - "definitions": { - "info": { - "type": "object", - "description": "The object provides metadata about the API. The metadata MAY be used by the clients if needed, and MAY be presented in editing or documentation generation tools for convenience.", - "required": [ - "title", - "version" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "title": { - "type": "string" - }, - "description": { - "type": "string" - }, - "termsOfService": { - "type": "string" - }, - "contact": { - "$ref": "#/definitions/contact" - }, - "license": { - "$ref": "#/definitions/license" - }, - "version": { - "type": "string" - } - } - }, - "contact": { - "type": "object", - "description": "Contact information for the exposed API.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "url": { - "type": "string" - }, - "email": { - "type": "string" - } - } - }, - "license": { - "type": "object", - "description": "License information for the exposed API.", - "required": [ - "name" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "server": { - "type": "object", - "description": "An object representing a Server.", - "required": [ - "url" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "url": { - "type": "string" - }, - "description": { - "type": "string" - }, - "variables": { - "$ref": "#/definitions/serverVariables" - } - } - }, - "serverVariable": { - "type": "object", - "description": "An object representing a Server Variable for server URL template substitution.", - "required": [ - "default" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "enum": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - }, - "default": { - "type": "string" - }, - "description": { - "type": "string" - } - } - }, - "components": { - "type": "object", - "description": "Holds a set of reusable objects for different aspects of the OAS. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "schemas": { - "$ref": "#/definitions/schemasOrReferences" - }, - "responses": { - "$ref": "#/definitions/responsesOrReferences" - }, - "parameters": { - "$ref": "#/definitions/parametersOrReferences" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "requestBodies": { - "$ref": "#/definitions/requestBodiesOrReferences" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "securitySchemes": { - "$ref": "#/definitions/securitySchemesOrReferences" - }, - "links": { - "$ref": "#/definitions/linksOrReferences" - }, - "callbacks": { - "$ref": "#/definitions/callbacksOrReferences" - } - } - }, - "paths": { - "type": "object", - "description": "Holds the relative paths to the individual endpoints and their operations. The path is appended to the URL from the `Server Object` in order to construct the full URL. The Paths MAY be empty, due to ACL constraints.", - "additionalProperties": false, - "patternProperties": { - "^/": { - "$ref": "#/definitions/pathItem" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - } - }, - "pathItem": { - "type": "object", - "description": "Describes the operations available on a single path. A Path Item MAY be empty, due to ACL constraints. The path itself is still exposed to the documentation viewer but they will not know which operations and parameters are available.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "$ref": { - "type": "string" - }, - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "get": { - "$ref": "#/definitions/operation" - }, - "put": { - "$ref": "#/definitions/operation" - }, - "post": { - "$ref": "#/definitions/operation" - }, - "delete": { - "$ref": "#/definitions/operation" - }, - "options": { - "$ref": "#/definitions/operation" - }, - "head": { - "$ref": "#/definitions/operation" - }, - "patch": { - "$ref": "#/definitions/operation" - }, - "trace": { - "$ref": "#/definitions/operation" - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - }, - "parameters": { - "type": "array", - "items": { - "$ref": "#/definitions/parameterOrReference" - }, - "uniqueItems": true - } - } - }, - "operation": { - "type": "object", - "description": "Describes a single API operation on a path.", - "required": [ - "responses" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - }, - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "operationId": { - "type": "string" - }, - "parameters": { - "type": "array", - "items": { - "$ref": "#/definitions/parameterOrReference" - }, - "uniqueItems": true - }, - "requestBody": { - "$ref": "#/definitions/requestBodyOrReference" - }, - "responses": { - "$ref": "#/definitions/responses" - }, - "callbacks": { - "$ref": "#/definitions/callbacksOrReferences" - }, - "deprecated": { - "type": "boolean" - }, - "security": { - "type": "array", - "items": { - "$ref": "#/definitions/securityRequirement" - }, - "uniqueItems": true - }, - "servers": { - "type": "array", - "items": { - "$ref": "#/definitions/server" - }, - "uniqueItems": true - } - } - }, - "externalDocs": { - "type": "object", - "description": "Allows referencing an external resource for extended documentation.", - "required": [ - "url" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "parameter": { - "type": "object", - "description": "Describes a single operation parameter. A unique parameter is defined by a combination of a name and location.", - "required": [ - "name", - "in" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "in": { - "type": "string" - }, - "description": { - "type": "string" - }, - "required": { - "type": "boolean" - }, - "deprecated": { - "type": "boolean" - }, - "allowEmptyValue": { - "type": "boolean" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - }, - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - } - } - }, - "requestBody": { - "type": "object", - "description": "Describes a single request body.", - "required": [ - "content" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - }, - "required": { - "type": "boolean" - } - } - }, - "mediaType": { - "type": "object", - "description": "Each Media Type Object provides schema and examples for the media type identified by its key.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "encoding": { - "$ref": "#/definitions/encodings" - } - } - }, - "encoding": { - "type": "object", - "description": "A single encoding definition applied to a single schema property.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "contentType": { - "type": "string" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - } - } - }, - "responses": { - "type": "object", - "description": "A container for the expected responses of an operation. The container maps a HTTP response code to the expected response. The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known in advance. However, documentation is expected to cover a successful operation response and any known errors. The `default` MAY be used as a default response object for all HTTP codes that are not covered individually by the specification. The `Responses Object` MUST contain at least one response code, and it SHOULD be the response for a successful operation call.", - "additionalProperties": false, - "patternProperties": { - "^([0-9X]{3})$": { - "$ref": "#/definitions/responseOrReference" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "default": { - "$ref": "#/definitions/responseOrReference" - } - } - }, - "response": { - "type": "object", - "description": "Describes a single response from an API Operation, including design-time, static `links` to operations based on the response.", - "required": [ - "description" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "headers": { - "$ref": "#/definitions/headersOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - }, - "links": { - "$ref": "#/definitions/linksOrReferences" - } - } - }, - "callback": { - "type": "object", - "description": "A map of possible out-of band callbacks related to the parent operation. Each value in the map is a Path Item Object that describes a set of requests that may be initiated by the API provider and the expected responses. The key value used to identify the callback object is an expression, evaluated at runtime, that identifies a URL to use for the callback operation.", - "additionalProperties": false, - "patternProperties": { - "^": { - "$ref": "#/definitions/pathItem" - }, - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - } - }, - "example": { - "type": "object", - "description": "", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "summary": { - "type": "string" - }, - "description": { - "type": "string" - }, - "value": { - "$ref": "#/definitions/any" - }, - "externalValue": { - "type": "string" - } - } - }, - "link": { - "type": "object", - "description": "The `Link object` represents a possible design-time link for a response. The presence of a link does not guarantee the caller's ability to successfully invoke it, rather it provides a known relationship and traversal mechanism between responses and other operations. Unlike _dynamic_ links (i.e. links provided **in** the response payload), the OAS linking mechanism does not require link information in the runtime response. For computing links, and providing instructions to execute them, a runtime expression is used for accessing values in an operation and using them as parameters while invoking the linked operation.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "operationRef": { - "type": "string" - }, - "operationId": { - "type": "string" - }, - "parameters": { - "$ref": "#/definitions/anysOrExpressions" - }, - "requestBody": { - "$ref": "#/definitions/anyOrExpression" - }, - "description": { - "type": "string" - }, - "server": { - "$ref": "#/definitions/server" - } - } - }, - "header": { - "type": "object", - "description": "The Header Object follows the structure of the Parameter Object with the following changes: 1. `name` MUST NOT be specified, it is given in the corresponding `headers` map. 1. `in` MUST NOT be specified, it is implicitly in `header`. 1. All traits that are affected by the location MUST be applicable to a location of `header` (for example, `style`).", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "description": { - "type": "string" - }, - "required": { - "type": "boolean" - }, - "deprecated": { - "type": "boolean" - }, - "allowEmptyValue": { - "type": "boolean" - }, - "style": { - "type": "string" - }, - "explode": { - "type": "boolean" - }, - "allowReserved": { - "type": "boolean" - }, - "schema": { - "$ref": "#/definitions/schemaOrReference" - }, - "example": { - "$ref": "#/definitions/any" - }, - "examples": { - "$ref": "#/definitions/examplesOrReferences" - }, - "content": { - "$ref": "#/definitions/mediaTypes" - } - } - }, - "tag": { - "type": "object", - "description": "Adds metadata to a single tag that is used by the Operation Object. It is not mandatory to have a Tag Object per tag defined in the Operation Object instances.", - "required": [ - "name" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - } - }, - "examples": { - "type": "object", - "description": "", - "additionalProperties": false - }, - "reference": { - "type": "object", - "description": "A simple object to allow referencing other components in the specification, internally and externally. The Reference Object is defined by JSON Reference and follows the same structure, behavior and rules. For this specification, reference resolution is accomplished as defined by the JSON Reference specification and not by the JSON Schema specification.", - "required": [ - "$ref" - ], - "additionalProperties": false, - "properties": { - "$ref": { - "type": "string" - } - } - }, - "schema": { - "type": "object", - "description": "The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays. This object is an extended subset of the JSON Schema Specification Wright Draft 00. For more information about the properties, see JSON Schema Core and JSON Schema Validation. Unless stated otherwise, the property definitions follow the JSON Schema.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "nullable": { - "type": "boolean" - }, - "discriminator": { - "$ref": "#/definitions/discriminator" - }, - "readOnly": { - "type": "boolean" - }, - "writeOnly": { - "type": "boolean" - }, - "xml": { - "$ref": "#/definitions/xml" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "example": { - "$ref": "#/definitions/any" - }, - "deprecated": { - "type": "boolean" - }, - "title": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/title" - }, - "multipleOf": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf" - }, - "maximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum" - }, - "exclusiveMaximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" - }, - "minimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum" - }, - "exclusiveMinimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" - }, - "maxLength": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxLength" - }, - "minLength": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minLength" - }, - "pattern": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern" - }, - "maxItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxItems" - }, - "minItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minItems" - }, - "uniqueItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems" - }, - "maxProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maxProperties" - }, - "minProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minProperties" - }, - "required": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/required" - }, - "enum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/enum" - }, - "type": { - "type": "string" - }, - "allOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "oneOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "anyOf": { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - }, - "not": { - "$ref": "#/definitions/schema" - }, - "items": { - "anyOf": [ - { - "$ref": "#/definitions/schemaOrReference" - }, - { - "type": "array", - "items": { - "$ref": "#/definitions/schemaOrReference" - }, - "minItems": 1 - } - ] - }, - "properties": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schemaOrReference" - } - }, - "additionalProperties": { - "oneOf": [ - { - "$ref": "#/definitions/schemaOrReference" - }, - { - "type": "boolean" - } - ] - }, - "default": { - "$ref": "#/definitions/defaultType" - }, - "description": { - "type": "string" - }, - "format": { - "type": "string" - } - } - }, - "discriminator": { - "type": "object", - "description": "When request bodies or response payloads may be one of a number of different schemas, a `discriminator` object can be used to aid in serialization, deserialization, and validation. The discriminator is a specific object in a schema which is used to inform the consumer of the specification of an alternative schema based on the value associated with it. When using the discriminator, _inline_ schemas will not be considered.", - "required": [ - "propertyName" - ], - "additionalProperties": false, - "properties": { - "propertyName": { - "type": "string" - }, - "mapping": { - "$ref": "#/definitions/strings" - } - } - }, - "xml": { - "type": "object", - "description": "A metadata object that allows for more fine-tuned XML model definitions. When using arrays, XML element names are *not* inferred (for singular/plural forms) and the `name` property SHOULD be used to add that information. See examples for expected behavior.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "prefix": { - "type": "string" - }, - "attribute": { - "type": "boolean" - }, - "wrapped": { - "type": "boolean" - } - } - }, - "securityScheme": { - "type": "object", - "description": "Defines a security scheme that can be used by the operations. Supported schemes are HTTP authentication, an API key (either as a header or as a query parameter), OAuth2's common flows (implicit, password, application and access code) as defined in RFC6749, and OpenID Connect Discovery.", - "required": [ - "type" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "type": { - "type": "string" - }, - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "in": { - "type": "string" - }, - "scheme": { - "type": "string" - }, - "bearerFormat": { - "type": "string" - }, - "flows": { - "$ref": "#/definitions/oauthFlows" - }, - "openIdConnectUrl": { - "type": "string" - } - } - }, - "oauthFlows": { - "type": "object", - "description": "Allows configuration of the supported OAuth Flows.", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "implicit": { - "$ref": "#/definitions/oauthFlow" - }, - "password": { - "$ref": "#/definitions/oauthFlow" - }, - "clientCredentials": { - "$ref": "#/definitions/oauthFlow" - }, - "authorizationCode": { - "$ref": "#/definitions/oauthFlow" - } - } - }, - "oauthFlow": { - "type": "object", - "description": "Configuration details for a supported OAuth Flow", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/specificationExtension" - } - }, - "properties": { - "authorizationUrl": { - "type": "string" - }, - "tokenUrl": { - "type": "string" - }, - "refreshUrl": { - "type": "string" - }, - "scopes": { - "$ref": "#/definitions/strings" - } - } - }, - "securityRequirement": { - "type": "object", - "description": "Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the Security Schemes under the Components Object. Security Requirement Objects that contain multiple schemes require that all schemes MUST be satisfied for a request to be authorized. This enables support for scenarios where multiple query parameters or HTTP headers are required to convey security information. When a list of Security Requirement Objects is defined on the Open API object or Operation Object, only one of Security Requirement Objects in the list needs to be satisfied to authorize the request.", - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9\\.\\-_]+$": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - } - } - }, - "anyOrExpression": { - "oneOf": [ - { - "$ref": "#/definitions/any" - }, - { - "$ref": "#/definitions/expression" - } - ] - }, - "callbackOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/callback" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "exampleOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/example" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "headerOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/header" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "linkOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/link" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "parameterOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/parameter" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "requestBodyOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/requestBody" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "responseOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/response" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "schemaOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/schema" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "securitySchemeOrReference": { - "oneOf": [ - { - "$ref": "#/definitions/securityScheme" - }, - { - "$ref": "#/definitions/reference" - } - ] - }, - "anysOrExpressions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/anyOrExpression" - } - }, - "callbacksOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/callbackOrReference" - } - }, - "encodings": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/encoding" - } - }, - "examplesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/exampleOrReference" - } - }, - "headersOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/headerOrReference" - } - }, - "linksOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/linkOrReference" - } - }, - "mediaTypes": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/mediaType" - } - }, - "parametersOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/parameterOrReference" - } - }, - "requestBodiesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/requestBodyOrReference" - } - }, - "responsesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/responseOrReference" - } - }, - "schemasOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schemaOrReference" - } - }, - "securitySchemesOrReferences": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/securitySchemeOrReference" - } - }, - "serverVariables": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/serverVariable" - } - }, - "strings": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "object": { - "type": "object", - "additionalProperties": true - }, - "any": { - "additionalProperties": true - }, - "expression": { - "type": "object", - "additionalProperties": true - }, - "specificationExtension": { - "description": "Any property starting with x- is valid.", - "oneOf": [ - { - "type": "null" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "string" - }, - { - "type": "object" - }, - { - "type": "array" - } - ] - }, - "defaultType": { - "oneOf": [ - { - "type": "null" - }, - { - "type": "array" - }, - { - "type": "object" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "string" - } - ] - } - } -} - -},{}],124:[function(require,module,exports){ -(function (process){ -'use strict'; - -if (!process.version || - process.version.indexOf('v0.') === 0 || - process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) { - module.exports = { nextTick: nextTick }; -} else { - module.exports = process -} - -function nextTick(fn, arg1, arg2, arg3) { - if (typeof fn !== 'function') { - throw new TypeError('"callback" argument must be a function'); - } - var len = arguments.length; - var args, i; - switch (len) { - case 0: - case 1: - return process.nextTick(fn); - case 2: - return process.nextTick(function afterTickOne() { - fn.call(null, arg1); - }); - case 3: - return process.nextTick(function afterTickTwo() { - fn.call(null, arg1, arg2); - }); - case 4: - return process.nextTick(function afterTickThree() { - fn.call(null, arg1, arg2, arg3); - }); - default: - args = new Array(len - 1); - i = 0; - while (i < args.length) { - args[i++] = arguments[i]; - } - return process.nextTick(function afterTick() { - fn.apply(null, args); - }); - } -} - - -}).call(this,require('_process')) - -},{"_process":125}],125:[function(require,module,exports){ -// shim for using process in browser -var process = module.exports = {}; - -// cached from whatever global is present so that test runners that stub it -// don't break things. But we need to wrap it in a try catch in case it is -// wrapped in strict mode code which doesn't define any globals. It's inside a -// function because try/catches deoptimize in certain engines. - -var cachedSetTimeout; -var cachedClearTimeout; - -function defaultSetTimout() { - throw new Error('setTimeout has not been defined'); -} -function defaultClearTimeout () { - throw new Error('clearTimeout has not been defined'); -} -(function () { - try { - if (typeof setTimeout === 'function') { - cachedSetTimeout = setTimeout; - } else { - cachedSetTimeout = defaultSetTimout; - } - } catch (e) { - cachedSetTimeout = defaultSetTimout; - } - try { - if (typeof clearTimeout === 'function') { - cachedClearTimeout = clearTimeout; - } else { - cachedClearTimeout = defaultClearTimeout; - } - } catch (e) { - cachedClearTimeout = defaultClearTimeout; - } -} ()) -function runTimeout(fun) { - if (cachedSetTimeout === setTimeout) { - //normal enviroments in sane situations - return setTimeout(fun, 0); - } - // if setTimeout wasn't available but was latter defined - if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { - cachedSetTimeout = setTimeout; - return setTimeout(fun, 0); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedSetTimeout(fun, 0); - } catch(e){ - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedSetTimeout.call(null, fun, 0); - } catch(e){ - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error - return cachedSetTimeout.call(this, fun, 0); - } - } - - -} -function runClearTimeout(marker) { - if (cachedClearTimeout === clearTimeout) { - //normal enviroments in sane situations - return clearTimeout(marker); - } - // if clearTimeout wasn't available but was latter defined - if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { - cachedClearTimeout = clearTimeout; - return clearTimeout(marker); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedClearTimeout(marker); - } catch (e){ - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedClearTimeout.call(null, marker); - } catch (e){ - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. - // Some versions of I.E. have different rules for clearTimeout vs setTimeout - return cachedClearTimeout.call(this, marker); - } - } - - - -} -var queue = []; -var draining = false; -var currentQueue; -var queueIndex = -1; - -function cleanUpNextTick() { - if (!draining || !currentQueue) { - return; - } - draining = false; - if (currentQueue.length) { - queue = currentQueue.concat(queue); - } else { - queueIndex = -1; - } - if (queue.length) { - drainQueue(); - } -} - -function drainQueue() { - if (draining) { - return; - } - var timeout = runTimeout(cleanUpNextTick); - draining = true; - - var len = queue.length; - while(len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); - } - } - queueIndex = -1; - len = queue.length; - } - currentQueue = null; - draining = false; - runClearTimeout(timeout); -} - -process.nextTick = function (fun) { - var args = new Array(arguments.length - 1); - if (arguments.length > 1) { - for (var i = 1; i < arguments.length; i++) { - args[i - 1] = arguments[i]; - } - } - queue.push(new Item(fun, args)); - if (queue.length === 1 && !draining) { - runTimeout(drainQueue); - } -}; - -// v8 likes predictible objects -function Item(fun, array) { - this.fun = fun; - this.array = array; -} -Item.prototype.run = function () { - this.fun.apply(null, this.array); -}; -process.title = 'browser'; -process.browser = true; -process.env = {}; -process.argv = []; -process.version = ''; // empty string to avoid regexp issues -process.versions = {}; - -function noop() {} - -process.on = noop; -process.addListener = noop; -process.once = noop; -process.off = noop; -process.removeListener = noop; -process.removeAllListeners = noop; -process.emit = noop; -process.prependListener = noop; -process.prependOnceListener = noop; - -process.listeners = function (name) { return [] } - -process.binding = function (name) { - throw new Error('process.binding is not supported'); -}; - -process.cwd = function () { return '/' }; -process.chdir = function (dir) { - throw new Error('process.chdir is not supported'); -}; -process.umask = function() { return 0; }; - -},{}],126:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -// If obj.hasOwnProperty has been overridden, then calling -// obj.hasOwnProperty(prop) will break. -// See: https://github.com/joyent/node/issues/1707 -function hasOwnProperty(obj, prop) { - return Object.prototype.hasOwnProperty.call(obj, prop); -} - -module.exports = function(qs, sep, eq, options) { - sep = sep || '&'; - eq = eq || '='; - var obj = {}; - - if (typeof qs !== 'string' || qs.length === 0) { - return obj; - } - - var regexp = /\+/g; - qs = qs.split(sep); - - var maxKeys = 1000; - if (options && typeof options.maxKeys === 'number') { - maxKeys = options.maxKeys; - } - - var len = qs.length; - // maxKeys <= 0 means that we should not limit keys count - if (maxKeys > 0 && len > maxKeys) { - len = maxKeys; - } - - for (var i = 0; i < len; ++i) { - var x = qs[i].replace(regexp, '%20'), - idx = x.indexOf(eq), - kstr, vstr, k, v; - - if (idx >= 0) { - kstr = x.substr(0, idx); - vstr = x.substr(idx + 1); - } else { - kstr = x; - vstr = ''; - } - - k = decodeURIComponent(kstr); - v = decodeURIComponent(vstr); - - if (!hasOwnProperty(obj, k)) { - obj[k] = v; - } else if (isArray(obj[k])) { - obj[k].push(v); - } else { - obj[k] = [obj[k], v]; - } - } - - return obj; -}; - -var isArray = Array.isArray || function (xs) { - return Object.prototype.toString.call(xs) === '[object Array]'; -}; - -},{}],127:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -var stringifyPrimitive = function(v) { - switch (typeof v) { - case 'string': - return v; - - case 'boolean': - return v ? 'true' : 'false'; - - case 'number': - return isFinite(v) ? v : ''; - - default: - return ''; - } -}; - -module.exports = function(obj, sep, eq, name) { - sep = sep || '&'; - eq = eq || '='; - if (obj === null) { - obj = undefined; - } - - if (typeof obj === 'object') { - return map(objectKeys(obj), function(k) { - var ks = encodeURIComponent(stringifyPrimitive(k)) + eq; - if (isArray(obj[k])) { - return map(obj[k], function(v) { - return ks + encodeURIComponent(stringifyPrimitive(v)); - }).join(sep); - } else { - return ks + encodeURIComponent(stringifyPrimitive(obj[k])); - } - }).join(sep); - - } - - if (!name) return ''; - return encodeURIComponent(stringifyPrimitive(name)) + eq + - encodeURIComponent(stringifyPrimitive(obj)); -}; - -var isArray = Array.isArray || function (xs) { - return Object.prototype.toString.call(xs) === '[object Array]'; -}; - -function map (xs, f) { - if (xs.map) return xs.map(f); - var res = []; - for (var i = 0; i < xs.length; i++) { - res.push(f(xs[i], i)); - } - return res; -} - -var objectKeys = Object.keys || function (obj) { - var res = []; - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) res.push(key); - } - return res; -}; - -},{}],128:[function(require,module,exports){ -'use strict'; - -exports.decode = exports.parse = require('./decode'); -exports.encode = exports.stringify = require('./encode'); - -},{"./decode":126,"./encode":127}],129:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a duplex stream is just a stream that is both readable and writable. -// Since JS doesn't have multiple prototypal inheritance, this class -// prototypally inherits from Readable, and then parasitically from -// Writable. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -/**/ -var objectKeys = Object.keys || function (obj) { - var keys = []; - for (var key in obj) { - keys.push(key); - }return keys; -}; -/**/ - -module.exports = Duplex; - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -var Readable = require('./_stream_readable'); -var Writable = require('./_stream_writable'); - -util.inherits(Duplex, Readable); - -{ - // avoid scope creep, the keys array can then be collected - var keys = objectKeys(Writable.prototype); - for (var v = 0; v < keys.length; v++) { - var method = keys[v]; - if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; - } -} - -function Duplex(options) { - if (!(this instanceof Duplex)) return new Duplex(options); - - Readable.call(this, options); - Writable.call(this, options); - - if (options && options.readable === false) this.readable = false; - - if (options && options.writable === false) this.writable = false; - - this.allowHalfOpen = true; - if (options && options.allowHalfOpen === false) this.allowHalfOpen = false; - - this.once('end', onend); -} - -Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._writableState.highWaterMark; - } -}); - -// the no-half-open enforcer -function onend() { - // if we allow half-open state, or if the writable side ended, - // then we're ok. - if (this.allowHalfOpen || this._writableState.ended) return; - - // no more data can be written. - // But allow more writes to happen in this tick. - pna.nextTick(onEndNT, this); -} - -function onEndNT(self) { - self.end(); -} - -Object.defineProperty(Duplex.prototype, 'destroyed', { - get: function () { - if (this._readableState === undefined || this._writableState === undefined) { - return false; - } - return this._readableState.destroyed && this._writableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (this._readableState === undefined || this._writableState === undefined) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._readableState.destroyed = value; - this._writableState.destroyed = value; - } -}); - -Duplex.prototype._destroy = function (err, cb) { - this.push(null); - this.end(); - - pna.nextTick(cb, err); -}; -},{"./_stream_readable":131,"./_stream_writable":133,"core-util-is":63,"inherits":68,"process-nextick-args":124}],130:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a passthrough stream. -// basically just the most minimal sort of Transform stream. -// Every written chunk gets output as-is. - -'use strict'; - -module.exports = PassThrough; - -var Transform = require('./_stream_transform'); - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -util.inherits(PassThrough, Transform); - -function PassThrough(options) { - if (!(this instanceof PassThrough)) return new PassThrough(options); - - Transform.call(this, options); -} - -PassThrough.prototype._transform = function (chunk, encoding, cb) { - cb(null, chunk); -}; -},{"./_stream_transform":132,"core-util-is":63,"inherits":68}],131:[function(require,module,exports){ -(function (process,global){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -module.exports = Readable; - -/**/ -var isArray = require('isarray'); -/**/ - -/**/ -var Duplex; -/**/ - -Readable.ReadableState = ReadableState; - -/**/ -var EE = require('events').EventEmitter; - -var EElistenerCount = function (emitter, type) { - return emitter.listeners(type).length; -}; -/**/ - -/**/ -var Stream = require('./internal/streams/stream'); -/**/ - -/**/ - -var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = global.Uint8Array || function () {}; -function _uint8ArrayToBuffer(chunk) { - return Buffer.from(chunk); -} -function _isUint8Array(obj) { - return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; -} - -/**/ - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -/**/ -var debugUtil = require('util'); -var debug = void 0; -if (debugUtil && debugUtil.debuglog) { - debug = debugUtil.debuglog('stream'); -} else { - debug = function () {}; -} -/**/ - -var BufferList = require('./internal/streams/BufferList'); -var destroyImpl = require('./internal/streams/destroy'); -var StringDecoder; - -util.inherits(Readable, Stream); - -var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume']; - -function prependListener(emitter, event, fn) { - // Sadly this is not cacheable as some libraries bundle their own - // event emitter implementation with them. - if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); - - // This is a hack to make sure that our error handler is attached before any - // userland ones. NEVER DO THIS. This is here only because this code needs - // to continue to work with older versions of Node.js that do not include - // the prependListener() method. The goal is to eventually remove this hack. - if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]]; -} - -function ReadableState(options, stream) { - Duplex = Duplex || require('./_stream_duplex'); - - options = options || {}; - - // Duplex streams are both readable and writable, but share - // the same options object. - // However, some cases require setting options to different - // values for the readable and the writable sides of the duplex stream. - // These options can be provided separately as readableXXX and writableXXX. - var isDuplex = stream instanceof Duplex; - - // object stream flag. Used to make read(n) ignore n and to - // make all the buffer merging and length checks go away - this.objectMode = !!options.objectMode; - - if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; - - // the point at which it stops calling _read() to fill the buffer - // Note: 0 is a valid value, means "don't call _read preemptively ever" - var hwm = options.highWaterMark; - var readableHwm = options.readableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - - if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm; - - // cast to ints. - this.highWaterMark = Math.floor(this.highWaterMark); - - // A linked list is used to store data chunks instead of an array because the - // linked list can remove elements from the beginning faster than - // array.shift() - this.buffer = new BufferList(); - this.length = 0; - this.pipes = null; - this.pipesCount = 0; - this.flowing = null; - this.ended = false; - this.endEmitted = false; - this.reading = false; - - // a flag to be able to tell if the event 'readable'/'data' is emitted - // immediately, or on a later tick. We set this to true at first, because - // any actions that shouldn't happen until "later" should generally also - // not happen before the first read call. - this.sync = true; - - // whenever we return null, then we set a flag to say - // that we're awaiting a 'readable' event emission. - this.needReadable = false; - this.emittedReadable = false; - this.readableListening = false; - this.resumeScheduled = false; - - // has it been destroyed - this.destroyed = false; - - // Crypto is kind of old and crusty. Historically, its default string - // encoding is 'binary' so we have to make this configurable. - // Everything else in the universe uses 'utf8', though. - this.defaultEncoding = options.defaultEncoding || 'utf8'; - - // the number of writers that are awaiting a drain event in .pipe()s - this.awaitDrain = 0; - - // if true, a maybeReadMore has been scheduled - this.readingMore = false; - - this.decoder = null; - this.encoding = null; - if (options.encoding) { - if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; - this.decoder = new StringDecoder(options.encoding); - this.encoding = options.encoding; - } -} - -function Readable(options) { - Duplex = Duplex || require('./_stream_duplex'); - - if (!(this instanceof Readable)) return new Readable(options); - - this._readableState = new ReadableState(options, this); - - // legacy - this.readable = true; - - if (options) { - if (typeof options.read === 'function') this._read = options.read; - - if (typeof options.destroy === 'function') this._destroy = options.destroy; - } - - Stream.call(this); -} - -Object.defineProperty(Readable.prototype, 'destroyed', { - get: function () { - if (this._readableState === undefined) { - return false; - } - return this._readableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (!this._readableState) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._readableState.destroyed = value; - } -}); - -Readable.prototype.destroy = destroyImpl.destroy; -Readable.prototype._undestroy = destroyImpl.undestroy; -Readable.prototype._destroy = function (err, cb) { - this.push(null); - cb(err); -}; - -// Manually shove something into the read() buffer. -// This returns true if the highWaterMark has not been hit yet, -// similar to how Writable.write() returns true if you should -// write() some more. -Readable.prototype.push = function (chunk, encoding) { - var state = this._readableState; - var skipChunkCheck; - - if (!state.objectMode) { - if (typeof chunk === 'string') { - encoding = encoding || state.defaultEncoding; - if (encoding !== state.encoding) { - chunk = Buffer.from(chunk, encoding); - encoding = ''; - } - skipChunkCheck = true; - } - } else { - skipChunkCheck = true; - } - - return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); -}; - -// Unshift should *always* be something directly out of read() -Readable.prototype.unshift = function (chunk) { - return readableAddChunk(this, chunk, null, true, false); -}; - -function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { - var state = stream._readableState; - if (chunk === null) { - state.reading = false; - onEofChunk(stream, state); - } else { - var er; - if (!skipChunkCheck) er = chunkInvalid(state, chunk); - if (er) { - stream.emit('error', er); - } else if (state.objectMode || chunk && chunk.length > 0) { - if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) { - chunk = _uint8ArrayToBuffer(chunk); - } - - if (addToFront) { - if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true); - } else if (state.ended) { - stream.emit('error', new Error('stream.push() after EOF')); - } else { - state.reading = false; - if (state.decoder && !encoding) { - chunk = state.decoder.write(chunk); - if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state); - } else { - addChunk(stream, state, chunk, false); - } - } - } else if (!addToFront) { - state.reading = false; - } - } - - return needMoreData(state); -} - -function addChunk(stream, state, chunk, addToFront) { - if (state.flowing && state.length === 0 && !state.sync) { - stream.emit('data', chunk); - stream.read(0); - } else { - // update the buffer info. - state.length += state.objectMode ? 1 : chunk.length; - if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk); - - if (state.needReadable) emitReadable(stream); - } - maybeReadMore(stream, state); -} - -function chunkInvalid(state, chunk) { - var er; - if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { - er = new TypeError('Invalid non-string/buffer chunk'); - } - return er; -} - -// if it's past the high water mark, we can push in some more. -// Also, if we have no data yet, we can stand some -// more bytes. This is to work around cases where hwm=0, -// such as the repl. Also, if the push() triggered a -// readable event, and the user called read(largeNumber) such that -// needReadable was set, then we ought to push more, so that another -// 'readable' event will be triggered. -function needMoreData(state) { - return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); -} - -Readable.prototype.isPaused = function () { - return this._readableState.flowing === false; -}; - -// backwards compatibility. -Readable.prototype.setEncoding = function (enc) { - if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; - this._readableState.decoder = new StringDecoder(enc); - this._readableState.encoding = enc; - return this; -}; - -// Don't raise the hwm > 8MB -var MAX_HWM = 0x800000; -function computeNewHighWaterMark(n) { - if (n >= MAX_HWM) { - n = MAX_HWM; - } else { - // Get the next highest power of 2 to prevent increasing hwm excessively in - // tiny amounts - n--; - n |= n >>> 1; - n |= n >>> 2; - n |= n >>> 4; - n |= n >>> 8; - n |= n >>> 16; - n++; - } - return n; -} - -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function howMuchToRead(n, state) { - if (n <= 0 || state.length === 0 && state.ended) return 0; - if (state.objectMode) return 1; - if (n !== n) { - // Only flow one buffer at a time - if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length; - } - // If we're asking for more than the current hwm, then raise the hwm. - if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); - if (n <= state.length) return n; - // Don't have enough - if (!state.ended) { - state.needReadable = true; - return 0; - } - return state.length; -} - -// you can override either this method, or the async _read(n) below. -Readable.prototype.read = function (n) { - debug('read', n); - n = parseInt(n, 10); - var state = this._readableState; - var nOrig = n; - - if (n !== 0) state.emittedReadable = false; - - // if we're doing read(0) to trigger a readable event, but we - // already have a bunch of data in the buffer, then just trigger - // the 'readable' event and move on. - if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { - debug('read: emitReadable', state.length, state.ended); - if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this); - return null; - } - - n = howMuchToRead(n, state); - - // if we've ended, and we're now clear, then finish it up. - if (n === 0 && state.ended) { - if (state.length === 0) endReadable(this); - return null; - } - - // All the actual chunk generation logic needs to be - // *below* the call to _read. The reason is that in certain - // synthetic stream cases, such as passthrough streams, _read - // may be a completely synchronous operation which may change - // the state of the read buffer, providing enough data when - // before there was *not* enough. - // - // So, the steps are: - // 1. Figure out what the state of things will be after we do - // a read from the buffer. - // - // 2. If that resulting state will trigger a _read, then call _read. - // Note that this may be asynchronous, or synchronous. Yes, it is - // deeply ugly to write APIs this way, but that still doesn't mean - // that the Readable class should behave improperly, as streams are - // designed to be sync/async agnostic. - // Take note if the _read call is sync or async (ie, if the read call - // has returned yet), so that we know whether or not it's safe to emit - // 'readable' etc. - // - // 3. Actually pull the requested chunks out of the buffer and return. - - // if we need a readable event, then we need to do some reading. - var doRead = state.needReadable; - debug('need readable', doRead); - - // if we currently have less than the highWaterMark, then also read some - if (state.length === 0 || state.length - n < state.highWaterMark) { - doRead = true; - debug('length less than watermark', doRead); - } - - // however, if we've ended, then there's no point, and if we're already - // reading, then it's unnecessary. - if (state.ended || state.reading) { - doRead = false; - debug('reading or ended', doRead); - } else if (doRead) { - debug('do read'); - state.reading = true; - state.sync = true; - // if the length is currently zero, then we *need* a readable event. - if (state.length === 0) state.needReadable = true; - // call internal read method - this._read(state.highWaterMark); - state.sync = false; - // If _read pushed data synchronously, then `reading` will be false, - // and we need to re-evaluate how much data we can return to the user. - if (!state.reading) n = howMuchToRead(nOrig, state); - } - - var ret; - if (n > 0) ret = fromList(n, state);else ret = null; - - if (ret === null) { - state.needReadable = true; - n = 0; - } else { - state.length -= n; - } - - if (state.length === 0) { - // If we have nothing in the buffer, then we want to know - // as soon as we *do* get something into the buffer. - if (!state.ended) state.needReadable = true; - - // If we tried to read() past the EOF, then emit end on the next tick. - if (nOrig !== n && state.ended) endReadable(this); - } - - if (ret !== null) this.emit('data', ret); - - return ret; -}; - -function onEofChunk(stream, state) { - if (state.ended) return; - if (state.decoder) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) { - state.buffer.push(chunk); - state.length += state.objectMode ? 1 : chunk.length; - } - } - state.ended = true; - - // emit 'readable' now to make sure it gets picked up. - emitReadable(stream); -} - -// Don't emit readable right away in sync mode, because this can trigger -// another read() call => stack overflow. This way, it might trigger -// a nextTick recursion warning, but that's not so bad. -function emitReadable(stream) { - var state = stream._readableState; - state.needReadable = false; - if (!state.emittedReadable) { - debug('emitReadable', state.flowing); - state.emittedReadable = true; - if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream); - } -} - -function emitReadable_(stream) { - debug('emit readable'); - stream.emit('readable'); - flow(stream); -} - -// at this point, the user has presumably seen the 'readable' event, -// and called read() to consume some data. that may have triggered -// in turn another _read(n) call, in which case reading = true if -// it's in progress. -// However, if we're not ended, or reading, and the length < hwm, -// then go ahead and try to read some more preemptively. -function maybeReadMore(stream, state) { - if (!state.readingMore) { - state.readingMore = true; - pna.nextTick(maybeReadMore_, stream, state); - } -} - -function maybeReadMore_(stream, state) { - var len = state.length; - while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { - debug('maybeReadMore read 0'); - stream.read(0); - if (len === state.length) - // didn't get any data, stop spinning. - break;else len = state.length; - } - state.readingMore = false; -} - -// abstract method. to be overridden in specific implementation classes. -// call cb(er, data) where data is <= n in length. -// for virtual (non-string, non-buffer) streams, "length" is somewhat -// arbitrary, and perhaps not very meaningful. -Readable.prototype._read = function (n) { - this.emit('error', new Error('_read() is not implemented')); -}; - -Readable.prototype.pipe = function (dest, pipeOpts) { - var src = this; - var state = this._readableState; - - switch (state.pipesCount) { - case 0: - state.pipes = dest; - break; - case 1: - state.pipes = [state.pipes, dest]; - break; - default: - state.pipes.push(dest); - break; - } - state.pipesCount += 1; - debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts); - - var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; - - var endFn = doEnd ? onend : unpipe; - if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn); - - dest.on('unpipe', onunpipe); - function onunpipe(readable, unpipeInfo) { - debug('onunpipe'); - if (readable === src) { - if (unpipeInfo && unpipeInfo.hasUnpiped === false) { - unpipeInfo.hasUnpiped = true; - cleanup(); - } - } - } - - function onend() { - debug('onend'); - dest.end(); - } - - // when the dest drains, it reduces the awaitDrain counter - // on the source. This would be more elegant with a .once() - // handler in flow(), but adding and removing repeatedly is - // too slow. - var ondrain = pipeOnDrain(src); - dest.on('drain', ondrain); - - var cleanedUp = false; - function cleanup() { - debug('cleanup'); - // cleanup event handlers once the pipe is broken - dest.removeListener('close', onclose); - dest.removeListener('finish', onfinish); - dest.removeListener('drain', ondrain); - dest.removeListener('error', onerror); - dest.removeListener('unpipe', onunpipe); - src.removeListener('end', onend); - src.removeListener('end', unpipe); - src.removeListener('data', ondata); - - cleanedUp = true; - - // if the reader is waiting for a drain event from this - // specific writer, then it would cause it to never start - // flowing again. - // So, if this is awaiting a drain, then we just call it now. - // If we don't know, then assume that we are waiting for one. - if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); - } - - // If the user pushes more data while we're writing to dest then we'll end up - // in ondata again. However, we only want to increase awaitDrain once because - // dest will only emit one 'drain' event for the multiple writes. - // => Introduce a guard on increasing awaitDrain. - var increasedAwaitDrain = false; - src.on('data', ondata); - function ondata(chunk) { - debug('ondata'); - increasedAwaitDrain = false; - var ret = dest.write(chunk); - if (false === ret && !increasedAwaitDrain) { - // If the user unpiped during `dest.write()`, it is possible - // to get stuck in a permanently paused state if that write - // also returned false. - // => Check whether `dest` is still a piping destination. - if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { - debug('false write response, pause', src._readableState.awaitDrain); - src._readableState.awaitDrain++; - increasedAwaitDrain = true; - } - src.pause(); - } - } - - // if the dest has an error, then stop piping into it. - // however, don't suppress the throwing behavior for this. - function onerror(er) { - debug('onerror', er); - unpipe(); - dest.removeListener('error', onerror); - if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er); - } - - // Make sure our error handler is attached before userland ones. - prependListener(dest, 'error', onerror); - - // Both close and finish should trigger unpipe, but only once. - function onclose() { - dest.removeListener('finish', onfinish); - unpipe(); - } - dest.once('close', onclose); - function onfinish() { - debug('onfinish'); - dest.removeListener('close', onclose); - unpipe(); - } - dest.once('finish', onfinish); - - function unpipe() { - debug('unpipe'); - src.unpipe(dest); - } - - // tell the dest that it's being piped to - dest.emit('pipe', src); - - // start the flow if it hasn't been started already. - if (!state.flowing) { - debug('pipe resume'); - src.resume(); - } - - return dest; -}; - -function pipeOnDrain(src) { - return function () { - var state = src._readableState; - debug('pipeOnDrain', state.awaitDrain); - if (state.awaitDrain) state.awaitDrain--; - if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) { - state.flowing = true; - flow(src); - } - }; -} - -Readable.prototype.unpipe = function (dest) { - var state = this._readableState; - var unpipeInfo = { hasUnpiped: false }; - - // if we're not piping anywhere, then do nothing. - if (state.pipesCount === 0) return this; - - // just one destination. most common case. - if (state.pipesCount === 1) { - // passed in one, but it's not the right one. - if (dest && dest !== state.pipes) return this; - - if (!dest) dest = state.pipes; - - // got a match. - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - if (dest) dest.emit('unpipe', this, unpipeInfo); - return this; - } - - // slow case. multiple pipe destinations. - - if (!dest) { - // remove all. - var dests = state.pipes; - var len = state.pipesCount; - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - - for (var i = 0; i < len; i++) { - dests[i].emit('unpipe', this, unpipeInfo); - }return this; - } - - // try to find the right one. - var index = indexOf(state.pipes, dest); - if (index === -1) return this; - - state.pipes.splice(index, 1); - state.pipesCount -= 1; - if (state.pipesCount === 1) state.pipes = state.pipes[0]; - - dest.emit('unpipe', this, unpipeInfo); - - return this; -}; - -// set up data events if they are asked for -// Ensure readable listeners eventually get something -Readable.prototype.on = function (ev, fn) { - var res = Stream.prototype.on.call(this, ev, fn); - - if (ev === 'data') { - // Start flowing on next tick if stream isn't explicitly paused - if (this._readableState.flowing !== false) this.resume(); - } else if (ev === 'readable') { - var state = this._readableState; - if (!state.endEmitted && !state.readableListening) { - state.readableListening = state.needReadable = true; - state.emittedReadable = false; - if (!state.reading) { - pna.nextTick(nReadingNextTick, this); - } else if (state.length) { - emitReadable(this); - } - } - } - - return res; -}; -Readable.prototype.addListener = Readable.prototype.on; - -function nReadingNextTick(self) { - debug('readable nexttick read 0'); - self.read(0); -} - -// pause() and resume() are remnants of the legacy readable stream API -// If the user uses them, then switch into old mode. -Readable.prototype.resume = function () { - var state = this._readableState; - if (!state.flowing) { - debug('resume'); - state.flowing = true; - resume(this, state); - } - return this; -}; - -function resume(stream, state) { - if (!state.resumeScheduled) { - state.resumeScheduled = true; - pna.nextTick(resume_, stream, state); - } -} - -function resume_(stream, state) { - if (!state.reading) { - debug('resume read 0'); - stream.read(0); - } - - state.resumeScheduled = false; - state.awaitDrain = 0; - stream.emit('resume'); - flow(stream); - if (state.flowing && !state.reading) stream.read(0); -} - -Readable.prototype.pause = function () { - debug('call pause flowing=%j', this._readableState.flowing); - if (false !== this._readableState.flowing) { - debug('pause'); - this._readableState.flowing = false; - this.emit('pause'); - } - return this; -}; - -function flow(stream) { - var state = stream._readableState; - debug('flow', state.flowing); - while (state.flowing && stream.read() !== null) {} -} - -// wrap an old-style stream as the async data source. -// This is *not* part of the readable stream interface. -// It is an ugly unfortunate mess of history. -Readable.prototype.wrap = function (stream) { - var _this = this; - - var state = this._readableState; - var paused = false; - - stream.on('end', function () { - debug('wrapped end'); - if (state.decoder && !state.ended) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) _this.push(chunk); - } - - _this.push(null); - }); - - stream.on('data', function (chunk) { - debug('wrapped data'); - if (state.decoder) chunk = state.decoder.write(chunk); - - // don't skip over falsy values in objectMode - if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return; - - var ret = _this.push(chunk); - if (!ret) { - paused = true; - stream.pause(); - } - }); - - // proxy all the other methods. - // important when wrapping filters and duplexes. - for (var i in stream) { - if (this[i] === undefined && typeof stream[i] === 'function') { - this[i] = function (method) { - return function () { - return stream[method].apply(stream, arguments); - }; - }(i); - } - } - - // proxy certain important events. - for (var n = 0; n < kProxyEvents.length; n++) { - stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); - } - - // when we try to consume some more bytes, simply unpause the - // underlying stream. - this._read = function (n) { - debug('wrapped _read', n); - if (paused) { - paused = false; - stream.resume(); - } - }; - - return this; -}; - -Object.defineProperty(Readable.prototype, 'readableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._readableState.highWaterMark; - } -}); - -// exposed for testing purposes only. -Readable._fromList = fromList; - -// Pluck off n bytes from an array of buffers. -// Length is the combined lengths of all the buffers in the list. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function fromList(n, state) { - // nothing buffered - if (state.length === 0) return null; - - var ret; - if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) { - // read it all, truncate the list - if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length); - state.buffer.clear(); - } else { - // read part of list - ret = fromListPartial(n, state.buffer, state.decoder); - } - - return ret; -} - -// Extracts only enough buffered data to satisfy the amount requested. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function fromListPartial(n, list, hasStrings) { - var ret; - if (n < list.head.data.length) { - // slice is the same for buffers and strings - ret = list.head.data.slice(0, n); - list.head.data = list.head.data.slice(n); - } else if (n === list.head.data.length) { - // first chunk is a perfect match - ret = list.shift(); - } else { - // result spans more than one buffer - ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); - } - return ret; -} - -// Copies a specified amount of characters from the list of buffered data -// chunks. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function copyFromBufferString(n, list) { - var p = list.head; - var c = 1; - var ret = p.data; - n -= ret.length; - while (p = p.next) { - var str = p.data; - var nb = n > str.length ? str.length : n; - if (nb === str.length) ret += str;else ret += str.slice(0, n); - n -= nb; - if (n === 0) { - if (nb === str.length) { - ++c; - if (p.next) list.head = p.next;else list.head = list.tail = null; - } else { - list.head = p; - p.data = str.slice(nb); - } - break; - } - ++c; - } - list.length -= c; - return ret; -} - -// Copies a specified amount of bytes from the list of buffered data chunks. -// This function is designed to be inlinable, so please take care when making -// changes to the function body. -function copyFromBuffer(n, list) { - var ret = Buffer.allocUnsafe(n); - var p = list.head; - var c = 1; - p.data.copy(ret); - n -= p.data.length; - while (p = p.next) { - var buf = p.data; - var nb = n > buf.length ? buf.length : n; - buf.copy(ret, ret.length - n, 0, nb); - n -= nb; - if (n === 0) { - if (nb === buf.length) { - ++c; - if (p.next) list.head = p.next;else list.head = list.tail = null; - } else { - list.head = p; - p.data = buf.slice(nb); - } - break; - } - ++c; - } - list.length -= c; - return ret; -} - -function endReadable(stream) { - var state = stream._readableState; - - // If we get here before consuming all the bytes, then that is a - // bug in node. Should never happen. - if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream'); - - if (!state.endEmitted) { - state.ended = true; - pna.nextTick(endReadableNT, state, stream); - } -} - -function endReadableNT(state, stream) { - // Check that we didn't get one last unshift. - if (!state.endEmitted && state.length === 0) { - state.endEmitted = true; - stream.readable = false; - stream.emit('end'); - } -} - -function indexOf(xs, x) { - for (var i = 0, l = xs.length; i < l; i++) { - if (xs[i] === x) return i; - } - return -1; -} -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./_stream_duplex":129,"./internal/streams/BufferList":134,"./internal/streams/destroy":135,"./internal/streams/stream":136,"_process":125,"core-util-is":63,"events":64,"inherits":68,"isarray":70,"process-nextick-args":124,"safe-buffer":138,"string_decoder/":143,"util":7}],132:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// a transform stream is a readable/writable stream where you do -// something with the data. Sometimes it's called a "filter", -// but that's not a great name for it, since that implies a thing where -// some bits pass through, and others are simply ignored. (That would -// be a valid example of a transform, of course.) -// -// While the output is causally related to the input, it's not a -// necessarily symmetric or synchronous transformation. For example, -// a zlib stream might take multiple plain-text writes(), and then -// emit a single compressed chunk some time in the future. -// -// Here's how this works: -// -// The Transform stream has all the aspects of the readable and writable -// stream classes. When you write(chunk), that calls _write(chunk,cb) -// internally, and returns false if there's a lot of pending writes -// buffered up. When you call read(), that calls _read(n) until -// there's enough pending readable data buffered up. -// -// In a transform stream, the written data is placed in a buffer. When -// _read(n) is called, it transforms the queued up data, calling the -// buffered _write cb's as it consumes chunks. If consuming a single -// written chunk would result in multiple output chunks, then the first -// outputted bit calls the readcb, and subsequent chunks just go into -// the read buffer, and will cause it to emit 'readable' if necessary. -// -// This way, back-pressure is actually determined by the reading side, -// since _read has to be called to start processing a new chunk. However, -// a pathological inflate type of transform can cause excessive buffering -// here. For example, imagine a stream where every byte of input is -// interpreted as an integer from 0-255, and then results in that many -// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in -// 1kb of data being output. In this case, you could write a very small -// amount of input, and end up with a very large amount of output. In -// such a pathological inflating mechanism, there'd be no way to tell -// the system to stop doing the transform. A single 4MB write could -// cause the system to run out of memory. -// -// However, even in such a pathological case, only a single written chunk -// would be consumed, and then the rest would wait (un-transformed) until -// the results of the previous transformed chunk were consumed. - -'use strict'; - -module.exports = Transform; - -var Duplex = require('./_stream_duplex'); - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -util.inherits(Transform, Duplex); - -function afterTransform(er, data) { - var ts = this._transformState; - ts.transforming = false; - - var cb = ts.writecb; - - if (!cb) { - return this.emit('error', new Error('write callback called multiple times')); - } - - ts.writechunk = null; - ts.writecb = null; - - if (data != null) // single equals check for both `null` and `undefined` - this.push(data); - - cb(er); - - var rs = this._readableState; - rs.reading = false; - if (rs.needReadable || rs.length < rs.highWaterMark) { - this._read(rs.highWaterMark); - } -} - -function Transform(options) { - if (!(this instanceof Transform)) return new Transform(options); - - Duplex.call(this, options); - - this._transformState = { - afterTransform: afterTransform.bind(this), - needTransform: false, - transforming: false, - writecb: null, - writechunk: null, - writeencoding: null - }; - - // start out asking for a readable event once data is transformed. - this._readableState.needReadable = true; - - // we have implemented the _read method, and done the other things - // that Readable wants before the first _read call, so unset the - // sync guard flag. - this._readableState.sync = false; - - if (options) { - if (typeof options.transform === 'function') this._transform = options.transform; - - if (typeof options.flush === 'function') this._flush = options.flush; - } - - // When the writable side finishes, then flush out anything remaining. - this.on('prefinish', prefinish); -} - -function prefinish() { - var _this = this; - - if (typeof this._flush === 'function') { - this._flush(function (er, data) { - done(_this, er, data); - }); - } else { - done(this, null, null); - } -} - -Transform.prototype.push = function (chunk, encoding) { - this._transformState.needTransform = false; - return Duplex.prototype.push.call(this, chunk, encoding); -}; - -// This is the part where you do stuff! -// override this function in implementation classes. -// 'chunk' is an input chunk. -// -// Call `push(newChunk)` to pass along transformed output -// to the readable side. You may call 'push' zero or more times. -// -// Call `cb(err)` when you are done with this chunk. If you pass -// an error, then that'll put the hurt on the whole operation. If you -// never call cb(), then you'll never get another chunk. -Transform.prototype._transform = function (chunk, encoding, cb) { - throw new Error('_transform() is not implemented'); -}; - -Transform.prototype._write = function (chunk, encoding, cb) { - var ts = this._transformState; - ts.writecb = cb; - ts.writechunk = chunk; - ts.writeencoding = encoding; - if (!ts.transforming) { - var rs = this._readableState; - if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); - } -}; - -// Doesn't matter what the args are here. -// _transform does all the work. -// That we got here means that the readable side wants more data. -Transform.prototype._read = function (n) { - var ts = this._transformState; - - if (ts.writechunk !== null && ts.writecb && !ts.transforming) { - ts.transforming = true; - this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); - } else { - // mark that we need a transform, so that any data that comes in - // will get processed, now that we've asked for it. - ts.needTransform = true; - } -}; - -Transform.prototype._destroy = function (err, cb) { - var _this2 = this; - - Duplex.prototype._destroy.call(this, err, function (err2) { - cb(err2); - _this2.emit('close'); - }); -}; - -function done(stream, er, data) { - if (er) return stream.emit('error', er); - - if (data != null) // single equals check for both `null` and `undefined` - stream.push(data); - - // if there's nothing in the write buffer, then that means - // that nothing more will ever be provided - if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0'); - - if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming'); - - return stream.push(null); -} -},{"./_stream_duplex":129,"core-util-is":63,"inherits":68}],133:[function(require,module,exports){ -(function (process,global,setImmediate){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -// A bit simpler than readable streams. -// Implement an async ._write(chunk, encoding, cb), and it'll handle all -// the drain event emission and buffering. - -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -module.exports = Writable; - -/* */ -function WriteReq(chunk, encoding, cb) { - this.chunk = chunk; - this.encoding = encoding; - this.callback = cb; - this.next = null; -} - -// It seems a linked list but it is not -// there will be only 2 of these for each stream -function CorkedRequest(state) { - var _this = this; - - this.next = null; - this.entry = null; - this.finish = function () { - onCorkedFinish(_this, state); - }; -} -/* */ - -/**/ -var asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; -/**/ - -/**/ -var Duplex; -/**/ - -Writable.WritableState = WritableState; - -/**/ -var util = require('core-util-is'); -util.inherits = require('inherits'); -/**/ - -/**/ -var internalUtil = { - deprecate: require('util-deprecate') -}; -/**/ - -/**/ -var Stream = require('./internal/streams/stream'); -/**/ - -/**/ - -var Buffer = require('safe-buffer').Buffer; -var OurUint8Array = global.Uint8Array || function () {}; -function _uint8ArrayToBuffer(chunk) { - return Buffer.from(chunk); -} -function _isUint8Array(obj) { - return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; -} - -/**/ - -var destroyImpl = require('./internal/streams/destroy'); - -util.inherits(Writable, Stream); - -function nop() {} - -function WritableState(options, stream) { - Duplex = Duplex || require('./_stream_duplex'); - - options = options || {}; - - // Duplex streams are both readable and writable, but share - // the same options object. - // However, some cases require setting options to different - // values for the readable and the writable sides of the duplex stream. - // These options can be provided separately as readableXXX and writableXXX. - var isDuplex = stream instanceof Duplex; - - // object stream flag to indicate whether or not this stream - // contains buffers or objects. - this.objectMode = !!options.objectMode; - - if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; - - // the point at which write() starts returning false - // Note: 0 is a valid value, means that we always return false if - // the entire buffer is not flushed immediately on write() - var hwm = options.highWaterMark; - var writableHwm = options.writableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - - if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm; - - // cast to ints. - this.highWaterMark = Math.floor(this.highWaterMark); - - // if _final has been called - this.finalCalled = false; - - // drain event flag. - this.needDrain = false; - // at the start of calling end() - this.ending = false; - // when end() has been called, and returned - this.ended = false; - // when 'finish' is emitted - this.finished = false; - - // has it been destroyed - this.destroyed = false; - - // should we decode strings into buffers before passing to _write? - // this is here so that some node-core streams can optimize string - // handling at a lower level. - var noDecode = options.decodeStrings === false; - this.decodeStrings = !noDecode; - - // Crypto is kind of old and crusty. Historically, its default string - // encoding is 'binary' so we have to make this configurable. - // Everything else in the universe uses 'utf8', though. - this.defaultEncoding = options.defaultEncoding || 'utf8'; - - // not an actual buffer we keep track of, but a measurement - // of how much we're waiting to get pushed to some underlying - // socket or file. - this.length = 0; - - // a flag to see when we're in the middle of a write. - this.writing = false; - - // when true all writes will be buffered until .uncork() call - this.corked = 0; - - // a flag to be able to tell if the onwrite cb is called immediately, - // or on a later tick. We set this to true at first, because any - // actions that shouldn't happen until "later" should generally also - // not happen before the first write call. - this.sync = true; - - // a flag to know if we're processing previously buffered items, which - // may call the _write() callback in the same tick, so that we don't - // end up in an overlapped onwrite situation. - this.bufferProcessing = false; - - // the callback that's passed to _write(chunk,cb) - this.onwrite = function (er) { - onwrite(stream, er); - }; - - // the callback that the user supplies to write(chunk,encoding,cb) - this.writecb = null; - - // the amount that is being written when _write is called. - this.writelen = 0; - - this.bufferedRequest = null; - this.lastBufferedRequest = null; - - // number of pending user-supplied write callbacks - // this must be 0 before 'finish' can be emitted - this.pendingcb = 0; - - // emit prefinish if the only thing we're waiting for is _write cbs - // This is relevant for synchronous Transform streams - this.prefinished = false; - - // True if the error was already emitted and should not be thrown again - this.errorEmitted = false; - - // count buffered requests - this.bufferedRequestCount = 0; - - // allocate the first CorkedRequest, there is always - // one allocated and free to use, and we maintain at most two - this.corkedRequestsFree = new CorkedRequest(this); -} - -WritableState.prototype.getBuffer = function getBuffer() { - var current = this.bufferedRequest; - var out = []; - while (current) { - out.push(current); - current = current.next; - } - return out; -}; - -(function () { - try { - Object.defineProperty(WritableState.prototype, 'buffer', { - get: internalUtil.deprecate(function () { - return this.getBuffer(); - }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003') - }); - } catch (_) {} -})(); - -// Test _writableState for inheritance to account for Duplex streams, -// whose prototype chain only points to Readable. -var realHasInstance; -if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') { - realHasInstance = Function.prototype[Symbol.hasInstance]; - Object.defineProperty(Writable, Symbol.hasInstance, { - value: function (object) { - if (realHasInstance.call(this, object)) return true; - if (this !== Writable) return false; - - return object && object._writableState instanceof WritableState; - } - }); -} else { - realHasInstance = function (object) { - return object instanceof this; - }; -} - -function Writable(options) { - Duplex = Duplex || require('./_stream_duplex'); - - // Writable ctor is applied to Duplexes, too. - // `realHasInstance` is necessary because using plain `instanceof` - // would return false, as no `_writableState` property is attached. - - // Trying to use the custom `instanceof` for Writable here will also break the - // Node.js LazyTransform implementation, which has a non-trivial getter for - // `_writableState` that would lead to infinite recursion. - if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) { - return new Writable(options); - } - - this._writableState = new WritableState(options, this); - - // legacy. - this.writable = true; - - if (options) { - if (typeof options.write === 'function') this._write = options.write; - - if (typeof options.writev === 'function') this._writev = options.writev; - - if (typeof options.destroy === 'function') this._destroy = options.destroy; - - if (typeof options.final === 'function') this._final = options.final; - } - - Stream.call(this); -} - -// Otherwise people can pipe Writable streams, which is just wrong. -Writable.prototype.pipe = function () { - this.emit('error', new Error('Cannot pipe, not readable')); -}; - -function writeAfterEnd(stream, cb) { - var er = new Error('write after end'); - // TODO: defer error events consistently everywhere, not just the cb - stream.emit('error', er); - pna.nextTick(cb, er); -} - -// Checks that a user-supplied chunk is valid, especially for the particular -// mode the stream is in. Currently this means that `null` is never accepted -// and undefined/non-string values are only allowed in object mode. -function validChunk(stream, state, chunk, cb) { - var valid = true; - var er = false; - - if (chunk === null) { - er = new TypeError('May not write null values to stream'); - } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { - er = new TypeError('Invalid non-string/buffer chunk'); - } - if (er) { - stream.emit('error', er); - pna.nextTick(cb, er); - valid = false; - } - return valid; -} - -Writable.prototype.write = function (chunk, encoding, cb) { - var state = this._writableState; - var ret = false; - var isBuf = !state.objectMode && _isUint8Array(chunk); - - if (isBuf && !Buffer.isBuffer(chunk)) { - chunk = _uint8ArrayToBuffer(chunk); - } - - if (typeof encoding === 'function') { - cb = encoding; - encoding = null; - } - - if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding; - - if (typeof cb !== 'function') cb = nop; - - if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) { - state.pendingcb++; - ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); - } - - return ret; -}; - -Writable.prototype.cork = function () { - var state = this._writableState; - - state.corked++; -}; - -Writable.prototype.uncork = function () { - var state = this._writableState; - - if (state.corked) { - state.corked--; - - if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); - } -}; - -Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { - // node::ParseEncoding() requires lower case. - if (typeof encoding === 'string') encoding = encoding.toLowerCase(); - if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding); - this._writableState.defaultEncoding = encoding; - return this; -}; - -function decodeChunk(state, chunk, encoding) { - if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') { - chunk = Buffer.from(chunk, encoding); - } - return chunk; -} - -Object.defineProperty(Writable.prototype, 'writableHighWaterMark', { - // making it explicit this property is not enumerable - // because otherwise some prototype manipulation in - // userland will fail - enumerable: false, - get: function () { - return this._writableState.highWaterMark; - } -}); - -// if we're already writing something, then just put this -// in the queue, and wait our turn. Otherwise, call _write -// If we return false, then we need a drain event, so set that flag. -function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { - if (!isBuf) { - var newChunk = decodeChunk(state, chunk, encoding); - if (chunk !== newChunk) { - isBuf = true; - encoding = 'buffer'; - chunk = newChunk; - } - } - var len = state.objectMode ? 1 : chunk.length; - - state.length += len; - - var ret = state.length < state.highWaterMark; - // we must ensure that previous needDrain will not be reset to false. - if (!ret) state.needDrain = true; - - if (state.writing || state.corked) { - var last = state.lastBufferedRequest; - state.lastBufferedRequest = { - chunk: chunk, - encoding: encoding, - isBuf: isBuf, - callback: cb, - next: null - }; - if (last) { - last.next = state.lastBufferedRequest; - } else { - state.bufferedRequest = state.lastBufferedRequest; - } - state.bufferedRequestCount += 1; - } else { - doWrite(stream, state, false, len, chunk, encoding, cb); - } - - return ret; -} - -function doWrite(stream, state, writev, len, chunk, encoding, cb) { - state.writelen = len; - state.writecb = cb; - state.writing = true; - state.sync = true; - if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite); - state.sync = false; -} - -function onwriteError(stream, state, sync, er, cb) { - --state.pendingcb; - - if (sync) { - // defer the callback if we are being called synchronously - // to avoid piling up things on the stack - pna.nextTick(cb, er); - // this can emit finish, and it will always happen - // after error - pna.nextTick(finishMaybe, stream, state); - stream._writableState.errorEmitted = true; - stream.emit('error', er); - } else { - // the caller expect this to happen before if - // it is async - cb(er); - stream._writableState.errorEmitted = true; - stream.emit('error', er); - // this can emit finish, but finish must - // always follow error - finishMaybe(stream, state); - } -} - -function onwriteStateUpdate(state) { - state.writing = false; - state.writecb = null; - state.length -= state.writelen; - state.writelen = 0; -} - -function onwrite(stream, er) { - var state = stream._writableState; - var sync = state.sync; - var cb = state.writecb; - - onwriteStateUpdate(state); - - if (er) onwriteError(stream, state, sync, er, cb);else { - // Check if we're actually ready to finish, but don't emit yet - var finished = needFinish(state); - - if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { - clearBuffer(stream, state); - } - - if (sync) { - /**/ - asyncWrite(afterWrite, stream, state, finished, cb); - /**/ - } else { - afterWrite(stream, state, finished, cb); - } - } -} - -function afterWrite(stream, state, finished, cb) { - if (!finished) onwriteDrain(stream, state); - state.pendingcb--; - cb(); - finishMaybe(stream, state); -} - -// Must force callback to be called on nextTick, so that we don't -// emit 'drain' before the write() consumer gets the 'false' return -// value, and has a chance to attach a 'drain' listener. -function onwriteDrain(stream, state) { - if (state.length === 0 && state.needDrain) { - state.needDrain = false; - stream.emit('drain'); - } -} - -// if there's something in the buffer waiting, then process it -function clearBuffer(stream, state) { - state.bufferProcessing = true; - var entry = state.bufferedRequest; - - if (stream._writev && entry && entry.next) { - // Fast case, write everything using _writev() - var l = state.bufferedRequestCount; - var buffer = new Array(l); - var holder = state.corkedRequestsFree; - holder.entry = entry; - - var count = 0; - var allBuffers = true; - while (entry) { - buffer[count] = entry; - if (!entry.isBuf) allBuffers = false; - entry = entry.next; - count += 1; - } - buffer.allBuffers = allBuffers; - - doWrite(stream, state, true, state.length, buffer, '', holder.finish); - - // doWrite is almost always async, defer these to save a bit of time - // as the hot path ends with doWrite - state.pendingcb++; - state.lastBufferedRequest = null; - if (holder.next) { - state.corkedRequestsFree = holder.next; - holder.next = null; - } else { - state.corkedRequestsFree = new CorkedRequest(state); - } - state.bufferedRequestCount = 0; - } else { - // Slow case, write chunks one-by-one - while (entry) { - var chunk = entry.chunk; - var encoding = entry.encoding; - var cb = entry.callback; - var len = state.objectMode ? 1 : chunk.length; - - doWrite(stream, state, false, len, chunk, encoding, cb); - entry = entry.next; - state.bufferedRequestCount--; - // if we didn't call the onwrite immediately, then - // it means that we need to wait until it does. - // also, that means that the chunk and cb are currently - // being processed, so move the buffer counter past them. - if (state.writing) { - break; - } - } - - if (entry === null) state.lastBufferedRequest = null; - } - - state.bufferedRequest = entry; - state.bufferProcessing = false; -} - -Writable.prototype._write = function (chunk, encoding, cb) { - cb(new Error('_write() is not implemented')); -}; - -Writable.prototype._writev = null; - -Writable.prototype.end = function (chunk, encoding, cb) { - var state = this._writableState; - - if (typeof chunk === 'function') { - cb = chunk; - chunk = null; - encoding = null; - } else if (typeof encoding === 'function') { - cb = encoding; - encoding = null; - } - - if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); - - // .end() fully uncorks - if (state.corked) { - state.corked = 1; - this.uncork(); - } - - // ignore unnecessary end() calls. - if (!state.ending && !state.finished) endWritable(this, state, cb); -}; - -function needFinish(state) { - return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; -} -function callFinal(stream, state) { - stream._final(function (err) { - state.pendingcb--; - if (err) { - stream.emit('error', err); - } - state.prefinished = true; - stream.emit('prefinish'); - finishMaybe(stream, state); - }); -} -function prefinish(stream, state) { - if (!state.prefinished && !state.finalCalled) { - if (typeof stream._final === 'function') { - state.pendingcb++; - state.finalCalled = true; - pna.nextTick(callFinal, stream, state); - } else { - state.prefinished = true; - stream.emit('prefinish'); - } - } -} - -function finishMaybe(stream, state) { - var need = needFinish(state); - if (need) { - prefinish(stream, state); - if (state.pendingcb === 0) { - state.finished = true; - stream.emit('finish'); - } - } - return need; -} - -function endWritable(stream, state, cb) { - state.ending = true; - finishMaybe(stream, state); - if (cb) { - if (state.finished) pna.nextTick(cb);else stream.once('finish', cb); - } - state.ended = true; - stream.writable = false; -} - -function onCorkedFinish(corkReq, state, err) { - var entry = corkReq.entry; - corkReq.entry = null; - while (entry) { - var cb = entry.callback; - state.pendingcb--; - cb(err); - entry = entry.next; - } - if (state.corkedRequestsFree) { - state.corkedRequestsFree.next = corkReq; - } else { - state.corkedRequestsFree = corkReq; - } -} - -Object.defineProperty(Writable.prototype, 'destroyed', { - get: function () { - if (this._writableState === undefined) { - return false; - } - return this._writableState.destroyed; - }, - set: function (value) { - // we ignore the value if the stream - // has not been initialized yet - if (!this._writableState) { - return; - } - - // backward compatibility, the user is explicitly - // managing destroyed - this._writableState.destroyed = value; - } -}); - -Writable.prototype.destroy = destroyImpl.destroy; -Writable.prototype._undestroy = destroyImpl.undestroy; -Writable.prototype._destroy = function (err, cb) { - this.end(); - cb(err); -}; -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("timers").setImmediate) - -},{"./_stream_duplex":129,"./internal/streams/destroy":135,"./internal/streams/stream":136,"_process":125,"core-util-is":63,"inherits":68,"process-nextick-args":124,"safe-buffer":138,"timers":146,"util-deprecate":150}],134:[function(require,module,exports){ -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var Buffer = require('safe-buffer').Buffer; -var util = require('util'); - -function copyBuffer(src, target, offset) { - src.copy(target, offset); -} - -module.exports = function () { - function BufferList() { - _classCallCheck(this, BufferList); - - this.head = null; - this.tail = null; - this.length = 0; - } - - BufferList.prototype.push = function push(v) { - var entry = { data: v, next: null }; - if (this.length > 0) this.tail.next = entry;else this.head = entry; - this.tail = entry; - ++this.length; - }; - - BufferList.prototype.unshift = function unshift(v) { - var entry = { data: v, next: this.head }; - if (this.length === 0) this.tail = entry; - this.head = entry; - ++this.length; - }; - - BufferList.prototype.shift = function shift() { - if (this.length === 0) return; - var ret = this.head.data; - if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next; - --this.length; - return ret; - }; - - BufferList.prototype.clear = function clear() { - this.head = this.tail = null; - this.length = 0; - }; - - BufferList.prototype.join = function join(s) { - if (this.length === 0) return ''; - var p = this.head; - var ret = '' + p.data; - while (p = p.next) { - ret += s + p.data; - }return ret; - }; - - BufferList.prototype.concat = function concat(n) { - if (this.length === 0) return Buffer.alloc(0); - if (this.length === 1) return this.head.data; - var ret = Buffer.allocUnsafe(n >>> 0); - var p = this.head; - var i = 0; - while (p) { - copyBuffer(p.data, ret, i); - i += p.data.length; - p = p.next; - } - return ret; - }; - - return BufferList; -}(); - -if (util && util.inspect && util.inspect.custom) { - module.exports.prototype[util.inspect.custom] = function () { - var obj = util.inspect({ length: this.length }); - return this.constructor.name + ' ' + obj; - }; -} -},{"safe-buffer":138,"util":7}],135:[function(require,module,exports){ -'use strict'; - -/**/ - -var pna = require('process-nextick-args'); -/**/ - -// undocumented cb() API, needed for core, not for public API -function destroy(err, cb) { - var _this = this; - - var readableDestroyed = this._readableState && this._readableState.destroyed; - var writableDestroyed = this._writableState && this._writableState.destroyed; - - if (readableDestroyed || writableDestroyed) { - if (cb) { - cb(err); - } else if (err && (!this._writableState || !this._writableState.errorEmitted)) { - pna.nextTick(emitErrorNT, this, err); - } - return this; - } - - // we set destroyed to true before firing error callbacks in order - // to make it re-entrance safe in case destroy() is called within callbacks - - if (this._readableState) { - this._readableState.destroyed = true; - } - - // if this is a duplex stream mark the writable part as destroyed as well - if (this._writableState) { - this._writableState.destroyed = true; - } - - this._destroy(err || null, function (err) { - if (!cb && err) { - pna.nextTick(emitErrorNT, _this, err); - if (_this._writableState) { - _this._writableState.errorEmitted = true; - } - } else if (cb) { - cb(err); - } - }); - - return this; -} - -function undestroy() { - if (this._readableState) { - this._readableState.destroyed = false; - this._readableState.reading = false; - this._readableState.ended = false; - this._readableState.endEmitted = false; - } - - if (this._writableState) { - this._writableState.destroyed = false; - this._writableState.ended = false; - this._writableState.ending = false; - this._writableState.finished = false; - this._writableState.errorEmitted = false; - } -} - -function emitErrorNT(self, err) { - self.emit('error', err); -} - -module.exports = { - destroy: destroy, - undestroy: undestroy -}; -},{"process-nextick-args":124}],136:[function(require,module,exports){ -module.exports = require('events').EventEmitter; - -},{"events":64}],137:[function(require,module,exports){ -exports = module.exports = require('./lib/_stream_readable.js'); -exports.Stream = exports; -exports.Readable = exports; -exports.Writable = require('./lib/_stream_writable.js'); -exports.Duplex = require('./lib/_stream_duplex.js'); -exports.Transform = require('./lib/_stream_transform.js'); -exports.PassThrough = require('./lib/_stream_passthrough.js'); - -},{"./lib/_stream_duplex.js":129,"./lib/_stream_passthrough.js":130,"./lib/_stream_readable.js":131,"./lib/_stream_transform.js":132,"./lib/_stream_writable.js":133}],138:[function(require,module,exports){ -/* eslint-disable node/no-deprecated-api */ -var buffer = require('buffer') -var Buffer = buffer.Buffer - -// alternative to using Object.keys for old browsers -function copyProps (src, dst) { - for (var key in src) { - dst[key] = src[key] - } -} -if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) { - module.exports = buffer -} else { - // Copy properties from require('buffer') - copyProps(buffer, exports) - exports.Buffer = SafeBuffer -} - -function SafeBuffer (arg, encodingOrOffset, length) { - return Buffer(arg, encodingOrOffset, length) -} - -// Copy static methods from Buffer -copyProps(Buffer, SafeBuffer) - -SafeBuffer.from = function (arg, encodingOrOffset, length) { - if (typeof arg === 'number') { - throw new TypeError('Argument must not be a number') - } - return Buffer(arg, encodingOrOffset, length) -} - -SafeBuffer.alloc = function (size, fill, encoding) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - var buf = Buffer(size) - if (fill !== undefined) { - if (typeof encoding === 'string') { - buf.fill(fill, encoding) - } else { - buf.fill(fill) - } - } else { - buf.fill(0) - } - return buf -} - -SafeBuffer.allocUnsafe = function (size) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - return Buffer(size) -} - -SafeBuffer.allocUnsafeSlow = function (size) { - if (typeof size !== 'number') { - throw new TypeError('Argument must be a number') - } - return buffer.SlowBuffer(size) -} - -},{"buffer":9}],139:[function(require,module,exports){ -(function (global){ -var ClientRequest = require('./lib/request') -var response = require('./lib/response') -var extend = require('xtend') -var statusCodes = require('builtin-status-codes') -var url = require('url') - -var http = exports - -http.request = function (opts, cb) { - if (typeof opts === 'string') - opts = url.parse(opts) - else - opts = extend(opts) - - // Normally, the page is loaded from http or https, so not specifying a protocol - // will result in a (valid) protocol-relative url. However, this won't work if - // the protocol is something else, like 'file:' - var defaultProtocol = global.location.protocol.search(/^https?:$/) === -1 ? 'http:' : '' - - var protocol = opts.protocol || defaultProtocol - var host = opts.hostname || opts.host - var port = opts.port - var path = opts.path || '/' - - // Necessary for IPv6 addresses - if (host && host.indexOf(':') !== -1) - host = '[' + host + ']' - - // This may be a relative url. The browser should always be able to interpret it correctly. - opts.url = (host ? (protocol + '//' + host) : '') + (port ? ':' + port : '') + path - opts.method = (opts.method || 'GET').toUpperCase() - opts.headers = opts.headers || {} - - // Also valid opts.auth, opts.mode - - var req = new ClientRequest(opts) - if (cb) - req.on('response', cb) - return req -} - -http.get = function get (opts, cb) { - var req = http.request(opts, cb) - req.end() - return req -} - -http.ClientRequest = ClientRequest -http.IncomingMessage = response.IncomingMessage - -http.Agent = function () {} -http.Agent.defaultMaxSockets = 4 - -http.globalAgent = new http.Agent() - -http.STATUS_CODES = statusCodes - -http.METHODS = [ - 'CHECKOUT', - 'CONNECT', - 'COPY', - 'DELETE', - 'GET', - 'HEAD', - 'LOCK', - 'M-SEARCH', - 'MERGE', - 'MKACTIVITY', - 'MKCOL', - 'MOVE', - 'NOTIFY', - 'OPTIONS', - 'PATCH', - 'POST', - 'PROPFIND', - 'PROPPATCH', - 'PURGE', - 'PUT', - 'REPORT', - 'SEARCH', - 'SUBSCRIBE', - 'TRACE', - 'UNLOCK', - 'UNSUBSCRIBE' -] -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./lib/request":141,"./lib/response":142,"builtin-status-codes":10,"url":148,"xtend":231}],140:[function(require,module,exports){ -(function (global){ -exports.fetch = isFunction(global.fetch) && isFunction(global.ReadableStream) - -exports.writableStream = isFunction(global.WritableStream) - -exports.abortController = isFunction(global.AbortController) - -exports.blobConstructor = false -try { - new Blob([new ArrayBuffer(1)]) - exports.blobConstructor = true -} catch (e) {} - -// The xhr request to example.com may violate some restrictive CSP configurations, -// so if we're running in a browser that supports `fetch`, avoid calling getXHR() -// and assume support for certain features below. -var xhr -function getXHR () { - // Cache the xhr value - if (xhr !== undefined) return xhr - - if (global.XMLHttpRequest) { - xhr = new global.XMLHttpRequest() - // If XDomainRequest is available (ie only, where xhr might not work - // cross domain), use the page location. Otherwise use example.com - // Note: this doesn't actually make an http request. - try { - xhr.open('GET', global.XDomainRequest ? '/' : 'https://example.com') - } catch(e) { - xhr = null - } - } else { - // Service workers don't have XHR - xhr = null - } - return xhr -} - -function checkTypeSupport (type) { - var xhr = getXHR() - if (!xhr) return false - try { - xhr.responseType = type - return xhr.responseType === type - } catch (e) {} - return false -} - -// For some strange reason, Safari 7.0 reports typeof global.ArrayBuffer === 'object'. -// Safari 7.1 appears to have fixed this bug. -var haveArrayBuffer = typeof global.ArrayBuffer !== 'undefined' -var haveSlice = haveArrayBuffer && isFunction(global.ArrayBuffer.prototype.slice) - -// If fetch is supported, then arraybuffer will be supported too. Skip calling -// checkTypeSupport(), since that calls getXHR(). -exports.arraybuffer = exports.fetch || (haveArrayBuffer && checkTypeSupport('arraybuffer')) - -// These next two tests unavoidably show warnings in Chrome. Since fetch will always -// be used if it's available, just return false for these to avoid the warnings. -exports.msstream = !exports.fetch && haveSlice && checkTypeSupport('ms-stream') -exports.mozchunkedarraybuffer = !exports.fetch && haveArrayBuffer && - checkTypeSupport('moz-chunked-arraybuffer') - -// If fetch is supported, then overrideMimeType will be supported too. Skip calling -// getXHR(). -exports.overrideMimeType = exports.fetch || (getXHR() ? isFunction(getXHR().overrideMimeType) : false) - -exports.vbArray = isFunction(global.VBArray) - -function isFunction (value) { - return typeof value === 'function' -} - -xhr = null // Help gc - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],141:[function(require,module,exports){ -(function (process,global,Buffer){ -var capability = require('./capability') -var inherits = require('inherits') -var response = require('./response') -var stream = require('readable-stream') -var toArrayBuffer = require('to-arraybuffer') - -var IncomingMessage = response.IncomingMessage -var rStates = response.readyStates - -function decideMode (preferBinary, useFetch) { - if (capability.fetch && useFetch) { - return 'fetch' - } else if (capability.mozchunkedarraybuffer) { - return 'moz-chunked-arraybuffer' - } else if (capability.msstream) { - return 'ms-stream' - } else if (capability.arraybuffer && preferBinary) { - return 'arraybuffer' - } else if (capability.vbArray && preferBinary) { - return 'text:vbarray' - } else { - return 'text' - } -} - -var ClientRequest = module.exports = function (opts) { - var self = this - stream.Writable.call(self) - - self._opts = opts - self._body = [] - self._headers = {} - if (opts.auth) - self.setHeader('Authorization', 'Basic ' + new Buffer(opts.auth).toString('base64')) - Object.keys(opts.headers).forEach(function (name) { - self.setHeader(name, opts.headers[name]) - }) - - var preferBinary - var useFetch = true - if (opts.mode === 'disable-fetch' || ('requestTimeout' in opts && !capability.abortController)) { - // If the use of XHR should be preferred. Not typically needed. - useFetch = false - preferBinary = true - } else if (opts.mode === 'prefer-streaming') { - // If streaming is a high priority but binary compatibility and - // the accuracy of the 'content-type' header aren't - preferBinary = false - } else if (opts.mode === 'allow-wrong-content-type') { - // If streaming is more important than preserving the 'content-type' header - preferBinary = !capability.overrideMimeType - } else if (!opts.mode || opts.mode === 'default' || opts.mode === 'prefer-fast') { - // Use binary if text streaming may corrupt data or the content-type header, or for speed - preferBinary = true - } else { - throw new Error('Invalid value for opts.mode') - } - self._mode = decideMode(preferBinary, useFetch) - self._fetchTimer = null - - self.on('finish', function () { - self._onFinish() - }) -} - -inherits(ClientRequest, stream.Writable) - -ClientRequest.prototype.setHeader = function (name, value) { - var self = this - var lowerName = name.toLowerCase() - // This check is not necessary, but it prevents warnings from browsers about setting unsafe - // headers. To be honest I'm not entirely sure hiding these warnings is a good thing, but - // http-browserify did it, so I will too. - if (unsafeHeaders.indexOf(lowerName) !== -1) - return - - self._headers[lowerName] = { - name: name, - value: value - } -} - -ClientRequest.prototype.getHeader = function (name) { - var header = this._headers[name.toLowerCase()] - if (header) - return header.value - return null -} - -ClientRequest.prototype.removeHeader = function (name) { - var self = this - delete self._headers[name.toLowerCase()] -} - -ClientRequest.prototype._onFinish = function () { - var self = this - - if (self._destroyed) - return - var opts = self._opts - - var headersObj = self._headers - var body = null - if (opts.method !== 'GET' && opts.method !== 'HEAD') { - if (capability.arraybuffer) { - body = toArrayBuffer(Buffer.concat(self._body)) - } else if (capability.blobConstructor) { - body = new global.Blob(self._body.map(function (buffer) { - return toArrayBuffer(buffer) - }), { - type: (headersObj['content-type'] || {}).value || '' - }) - } else { - // get utf8 string - body = Buffer.concat(self._body).toString() - } - } - - // create flattened list of headers - var headersList = [] - Object.keys(headersObj).forEach(function (keyName) { - var name = headersObj[keyName].name - var value = headersObj[keyName].value - if (Array.isArray(value)) { - value.forEach(function (v) { - headersList.push([name, v]) - }) - } else { - headersList.push([name, value]) - } - }) - - if (self._mode === 'fetch') { - var signal = null - var fetchTimer = null - if (capability.abortController) { - var controller = new AbortController() - signal = controller.signal - self._fetchAbortController = controller - - if ('requestTimeout' in opts && opts.requestTimeout !== 0) { - self._fetchTimer = global.setTimeout(function () { - self.emit('requestTimeout') - if (self._fetchAbortController) - self._fetchAbortController.abort() - }, opts.requestTimeout) - } - } - - global.fetch(self._opts.url, { - method: self._opts.method, - headers: headersList, - body: body || undefined, - mode: 'cors', - credentials: opts.withCredentials ? 'include' : 'same-origin', - signal: signal - }).then(function (response) { - self._fetchResponse = response - self._connect() - }, function (reason) { - global.clearTimeout(self._fetchTimer) - if (!self._destroyed) - self.emit('error', reason) - }) - } else { - var xhr = self._xhr = new global.XMLHttpRequest() - try { - xhr.open(self._opts.method, self._opts.url, true) - } catch (err) { - process.nextTick(function () { - self.emit('error', err) - }) - return - } - - // Can't set responseType on really old browsers - if ('responseType' in xhr) - xhr.responseType = self._mode.split(':')[0] - - if ('withCredentials' in xhr) - xhr.withCredentials = !!opts.withCredentials - - if (self._mode === 'text' && 'overrideMimeType' in xhr) - xhr.overrideMimeType('text/plain; charset=x-user-defined') - - if ('requestTimeout' in opts) { - xhr.timeout = opts.requestTimeout - xhr.ontimeout = function () { - self.emit('requestTimeout') - } - } - - headersList.forEach(function (header) { - xhr.setRequestHeader(header[0], header[1]) - }) - - self._response = null - xhr.onreadystatechange = function () { - switch (xhr.readyState) { - case rStates.LOADING: - case rStates.DONE: - self._onXHRProgress() - break - } - } - // Necessary for streaming in Firefox, since xhr.response is ONLY defined - // in onprogress, not in onreadystatechange with xhr.readyState = 3 - if (self._mode === 'moz-chunked-arraybuffer') { - xhr.onprogress = function () { - self._onXHRProgress() - } - } - - xhr.onerror = function () { - if (self._destroyed) - return - self.emit('error', new Error('XHR error')) - } - - try { - xhr.send(body) - } catch (err) { - process.nextTick(function () { - self.emit('error', err) - }) - return - } - } -} - -/** - * Checks if xhr.status is readable and non-zero, indicating no error. - * Even though the spec says it should be available in readyState 3, - * accessing it throws an exception in IE8 - */ -function statusValid (xhr) { - try { - var status = xhr.status - return (status !== null && status !== 0) - } catch (e) { - return false - } -} - -ClientRequest.prototype._onXHRProgress = function () { - var self = this - - if (!statusValid(self._xhr) || self._destroyed) - return - - if (!self._response) - self._connect() - - self._response._onXHRProgress() -} - -ClientRequest.prototype._connect = function () { - var self = this - - if (self._destroyed) - return - - self._response = new IncomingMessage(self._xhr, self._fetchResponse, self._mode, self._fetchTimer) - self._response.on('error', function(err) { - self.emit('error', err) - }) - - self.emit('response', self._response) -} - -ClientRequest.prototype._write = function (chunk, encoding, cb) { - var self = this - - self._body.push(chunk) - cb() -} - -ClientRequest.prototype.abort = ClientRequest.prototype.destroy = function () { - var self = this - self._destroyed = true - global.clearTimeout(self._fetchTimer) - if (self._response) - self._response._destroyed = true - if (self._xhr) - self._xhr.abort() - else if (self._fetchAbortController) - self._fetchAbortController.abort() -} - -ClientRequest.prototype.end = function (data, encoding, cb) { - var self = this - if (typeof data === 'function') { - cb = data - data = undefined - } - - stream.Writable.prototype.end.call(self, data, encoding, cb) -} - -ClientRequest.prototype.flushHeaders = function () {} -ClientRequest.prototype.setTimeout = function () {} -ClientRequest.prototype.setNoDelay = function () {} -ClientRequest.prototype.setSocketKeepAlive = function () {} - -// Taken from http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader%28%29-method -var unsafeHeaders = [ - 'accept-charset', - 'accept-encoding', - 'access-control-request-headers', - 'access-control-request-method', - 'connection', - 'content-length', - 'cookie', - 'cookie2', - 'date', - 'dnt', - 'expect', - 'host', - 'keep-alive', - 'origin', - 'referer', - 'te', - 'trailer', - 'transfer-encoding', - 'upgrade', - 'via' -] - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer) - -},{"./capability":140,"./response":142,"_process":125,"buffer":9,"inherits":68,"readable-stream":137,"to-arraybuffer":147}],142:[function(require,module,exports){ -(function (process,global,Buffer){ -var capability = require('./capability') -var inherits = require('inherits') -var stream = require('readable-stream') - -var rStates = exports.readyStates = { - UNSENT: 0, - OPENED: 1, - HEADERS_RECEIVED: 2, - LOADING: 3, - DONE: 4 -} - -var IncomingMessage = exports.IncomingMessage = function (xhr, response, mode, fetchTimer) { - var self = this - stream.Readable.call(self) - - self._mode = mode - self.headers = {} - self.rawHeaders = [] - self.trailers = {} - self.rawTrailers = [] - - // Fake the 'close' event, but only once 'end' fires - self.on('end', function () { - // The nextTick is necessary to prevent the 'request' module from causing an infinite loop - process.nextTick(function () { - self.emit('close') - }) - }) - - if (mode === 'fetch') { - self._fetchResponse = response - - self.url = response.url - self.statusCode = response.status - self.statusMessage = response.statusText - - response.headers.forEach(function (header, key){ - self.headers[key.toLowerCase()] = header - self.rawHeaders.push(key, header) - }) - - if (capability.writableStream) { - var writable = new WritableStream({ - write: function (chunk) { - return new Promise(function (resolve, reject) { - if (self._destroyed) { - reject() - } else if(self.push(new Buffer(chunk))) { - resolve() - } else { - self._resumeFetch = resolve - } - }) - }, - close: function () { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.push(null) - }, - abort: function (err) { - if (!self._destroyed) - self.emit('error', err) - } - }) - - try { - response.body.pipeTo(writable).catch(function (err) { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.emit('error', err) - }) - return - } catch (e) {} // pipeTo method isn't defined. Can't find a better way to feature test this - } - // fallback for when writableStream or pipeTo aren't available - var reader = response.body.getReader() - function read () { - reader.read().then(function (result) { - if (self._destroyed) - return - if (result.done) { - global.clearTimeout(fetchTimer) - self.push(null) - return - } - self.push(new Buffer(result.value)) - read() - }).catch(function (err) { - global.clearTimeout(fetchTimer) - if (!self._destroyed) - self.emit('error', err) - }) - } - read() - } else { - self._xhr = xhr - self._pos = 0 - - self.url = xhr.responseURL - self.statusCode = xhr.status - self.statusMessage = xhr.statusText - var headers = xhr.getAllResponseHeaders().split(/\r?\n/) - headers.forEach(function (header) { - var matches = header.match(/^([^:]+):\s*(.*)/) - if (matches) { - var key = matches[1].toLowerCase() - if (key === 'set-cookie') { - if (self.headers[key] === undefined) { - self.headers[key] = [] - } - self.headers[key].push(matches[2]) - } else if (self.headers[key] !== undefined) { - self.headers[key] += ', ' + matches[2] - } else { - self.headers[key] = matches[2] - } - self.rawHeaders.push(matches[1], matches[2]) - } - }) - - self._charset = 'x-user-defined' - if (!capability.overrideMimeType) { - var mimeType = self.rawHeaders['mime-type'] - if (mimeType) { - var charsetMatch = mimeType.match(/;\s*charset=([^;])(;|$)/) - if (charsetMatch) { - self._charset = charsetMatch[1].toLowerCase() - } - } - if (!self._charset) - self._charset = 'utf-8' // best guess - } - } -} - -inherits(IncomingMessage, stream.Readable) - -IncomingMessage.prototype._read = function () { - var self = this - - var resolve = self._resumeFetch - if (resolve) { - self._resumeFetch = null - resolve() - } -} - -IncomingMessage.prototype._onXHRProgress = function () { - var self = this - - var xhr = self._xhr - - var response = null - switch (self._mode) { - case 'text:vbarray': // For IE9 - if (xhr.readyState !== rStates.DONE) - break - try { - // This fails in IE8 - response = new global.VBArray(xhr.responseBody).toArray() - } catch (e) {} - if (response !== null) { - self.push(new Buffer(response)) - break - } - // Falls through in IE8 - case 'text': - try { // This will fail when readyState = 3 in IE9. Switch mode and wait for readyState = 4 - response = xhr.responseText - } catch (e) { - self._mode = 'text:vbarray' - break - } - if (response.length > self._pos) { - var newData = response.substr(self._pos) - if (self._charset === 'x-user-defined') { - var buffer = new Buffer(newData.length) - for (var i = 0; i < newData.length; i++) - buffer[i] = newData.charCodeAt(i) & 0xff - - self.push(buffer) - } else { - self.push(newData, self._charset) - } - self._pos = response.length - } - break - case 'arraybuffer': - if (xhr.readyState !== rStates.DONE || !xhr.response) - break - response = xhr.response - self.push(new Buffer(new Uint8Array(response))) - break - case 'moz-chunked-arraybuffer': // take whole - response = xhr.response - if (xhr.readyState !== rStates.LOADING || !response) - break - self.push(new Buffer(new Uint8Array(response))) - break - case 'ms-stream': - response = xhr.response - if (xhr.readyState !== rStates.LOADING) - break - var reader = new global.MSStreamReader() - reader.onprogress = function () { - if (reader.result.byteLength > self._pos) { - self.push(new Buffer(new Uint8Array(reader.result.slice(self._pos)))) - self._pos = reader.result.byteLength - } - } - reader.onload = function () { - self.push(null) - } - // reader.onerror = ??? // TODO: this - reader.readAsArrayBuffer(response) - break - } - - // The ms-stream case handles end separately in reader.onload() - if (self._xhr.readyState === rStates.DONE && self._mode !== 'ms-stream') { - self.push(null) - } -} - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer) - -},{"./capability":140,"_process":125,"buffer":9,"inherits":68,"readable-stream":137}],143:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -/**/ - -var Buffer = require('safe-buffer').Buffer; -/**/ - -var isEncoding = Buffer.isEncoding || function (encoding) { - encoding = '' + encoding; - switch (encoding && encoding.toLowerCase()) { - case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw': - return true; - default: - return false; - } -}; - -function _normalizeEncoding(enc) { - if (!enc) return 'utf8'; - var retried; - while (true) { - switch (enc) { - case 'utf8': - case 'utf-8': - return 'utf8'; - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return 'utf16le'; - case 'latin1': - case 'binary': - return 'latin1'; - case 'base64': - case 'ascii': - case 'hex': - return enc; - default: - if (retried) return; // undefined - enc = ('' + enc).toLowerCase(); - retried = true; - } - } -}; - -// Do not cache `Buffer.isEncoding` when checking encoding names as some -// modules monkey-patch it to support additional encodings -function normalizeEncoding(enc) { - var nenc = _normalizeEncoding(enc); - if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc); - return nenc || enc; -} - -// StringDecoder provides an interface for efficiently splitting a series of -// buffers into a series of JS strings without breaking apart multi-byte -// characters. -exports.StringDecoder = StringDecoder; -function StringDecoder(encoding) { - this.encoding = normalizeEncoding(encoding); - var nb; - switch (this.encoding) { - case 'utf16le': - this.text = utf16Text; - this.end = utf16End; - nb = 4; - break; - case 'utf8': - this.fillLast = utf8FillLast; - nb = 4; - break; - case 'base64': - this.text = base64Text; - this.end = base64End; - nb = 3; - break; - default: - this.write = simpleWrite; - this.end = simpleEnd; - return; - } - this.lastNeed = 0; - this.lastTotal = 0; - this.lastChar = Buffer.allocUnsafe(nb); -} - -StringDecoder.prototype.write = function (buf) { - if (buf.length === 0) return ''; - var r; - var i; - if (this.lastNeed) { - r = this.fillLast(buf); - if (r === undefined) return ''; - i = this.lastNeed; - this.lastNeed = 0; - } else { - i = 0; - } - if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i); - return r || ''; -}; - -StringDecoder.prototype.end = utf8End; - -// Returns only complete characters in a Buffer -StringDecoder.prototype.text = utf8Text; - -// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer -StringDecoder.prototype.fillLast = function (buf) { - if (this.lastNeed <= buf.length) { - buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); - return this.lastChar.toString(this.encoding, 0, this.lastTotal); - } - buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); - this.lastNeed -= buf.length; -}; - -// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a -// continuation byte. If an invalid byte is detected, -2 is returned. -function utf8CheckByte(byte) { - if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4; - return byte >> 6 === 0x02 ? -1 : -2; -} - -// Checks at most 3 bytes at the end of a Buffer in order to detect an -// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4) -// needed to complete the UTF-8 character (if applicable) are returned. -function utf8CheckIncomplete(self, buf, i) { - var j = buf.length - 1; - if (j < i) return 0; - var nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) self.lastNeed = nb - 1; - return nb; - } - if (--j < i || nb === -2) return 0; - nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) self.lastNeed = nb - 2; - return nb; - } - if (--j < i || nb === -2) return 0; - nb = utf8CheckByte(buf[j]); - if (nb >= 0) { - if (nb > 0) { - if (nb === 2) nb = 0;else self.lastNeed = nb - 3; - } - return nb; - } - return 0; -} - -// Validates as many continuation bytes for a multi-byte UTF-8 character as -// needed or are available. If we see a non-continuation byte where we expect -// one, we "replace" the validated continuation bytes we've seen so far with -// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding -// behavior. The continuation byte check is included three times in the case -// where all of the continuation bytes for a character exist in the same buffer. -// It is also done this way as a slight performance increase instead of using a -// loop. -function utf8CheckExtraBytes(self, buf, p) { - if ((buf[0] & 0xC0) !== 0x80) { - self.lastNeed = 0; - return '\ufffd'; - } - if (self.lastNeed > 1 && buf.length > 1) { - if ((buf[1] & 0xC0) !== 0x80) { - self.lastNeed = 1; - return '\ufffd'; - } - if (self.lastNeed > 2 && buf.length > 2) { - if ((buf[2] & 0xC0) !== 0x80) { - self.lastNeed = 2; - return '\ufffd'; - } - } - } -} - -// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer. -function utf8FillLast(buf) { - var p = this.lastTotal - this.lastNeed; - var r = utf8CheckExtraBytes(this, buf, p); - if (r !== undefined) return r; - if (this.lastNeed <= buf.length) { - buf.copy(this.lastChar, p, 0, this.lastNeed); - return this.lastChar.toString(this.encoding, 0, this.lastTotal); - } - buf.copy(this.lastChar, p, 0, buf.length); - this.lastNeed -= buf.length; -} - -// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a -// partial character, the character's bytes are buffered until the required -// number of bytes are available. -function utf8Text(buf, i) { - var total = utf8CheckIncomplete(this, buf, i); - if (!this.lastNeed) return buf.toString('utf8', i); - this.lastTotal = total; - var end = buf.length - (total - this.lastNeed); - buf.copy(this.lastChar, 0, end); - return buf.toString('utf8', i, end); -} - -// For UTF-8, a replacement character is added when ending on a partial -// character. -function utf8End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) return r + '\ufffd'; - return r; -} - -// UTF-16LE typically needs two bytes per character, but even if we have an even -// number of bytes available, we need to check if we end on a leading/high -// surrogate. In that case, we need to wait for the next two bytes in order to -// decode the last character properly. -function utf16Text(buf, i) { - if ((buf.length - i) % 2 === 0) { - var r = buf.toString('utf16le', i); - if (r) { - var c = r.charCodeAt(r.length - 1); - if (c >= 0xD800 && c <= 0xDBFF) { - this.lastNeed = 2; - this.lastTotal = 4; - this.lastChar[0] = buf[buf.length - 2]; - this.lastChar[1] = buf[buf.length - 1]; - return r.slice(0, -1); - } - } - return r; - } - this.lastNeed = 1; - this.lastTotal = 2; - this.lastChar[0] = buf[buf.length - 1]; - return buf.toString('utf16le', i, buf.length - 1); -} - -// For UTF-16LE we do not explicitly append special replacement characters if we -// end on a partial character, we simply let v8 handle that. -function utf16End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) { - var end = this.lastTotal - this.lastNeed; - return r + this.lastChar.toString('utf16le', 0, end); - } - return r; -} - -function base64Text(buf, i) { - var n = (buf.length - i) % 3; - if (n === 0) return buf.toString('base64', i); - this.lastNeed = 3 - n; - this.lastTotal = 3; - if (n === 1) { - this.lastChar[0] = buf[buf.length - 1]; - } else { - this.lastChar[0] = buf[buf.length - 2]; - this.lastChar[1] = buf[buf.length - 1]; - } - return buf.toString('base64', i, buf.length - n); -} - -function base64End(buf) { - var r = buf && buf.length ? this.write(buf) : ''; - if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed); - return r; -} - -// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex) -function simpleWrite(buf) { - return buf.toString(this.encoding); -} - -function simpleEnd(buf) { - return buf && buf.length ? this.write(buf) : ''; -} -},{"safe-buffer":138}],144:[function(require,module,exports){ -"use strict"; - -module.exports = [ - "get", "put", "post", "delete", "options", "head", "patch" -]; - -},{}],145:[function(require,module,exports){ -module.exports={ - "title": "A JSON Schema for Swagger 2.0 API.", - "id": "http://swagger.io/v2/schema.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "required": [ - "swagger", - "info", - "paths" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "swagger": { - "type": "string", - "enum": [ - "2.0" - ], - "description": "The Swagger version of this document." - }, - "info": { - "$ref": "#/definitions/info" - }, - "host": { - "type": "string", - "pattern": "^[^{}/ :\\\\]+(?::\\d+)?$", - "description": "The host (name or ip) of the API. Example: 'swagger.io'" - }, - "basePath": { - "type": "string", - "pattern": "^/", - "description": "The base path to the API. Example: '/api'." - }, - "schemes": { - "$ref": "#/definitions/schemesList" - }, - "consumes": { - "description": "A list of MIME types accepted by the API.", - "$ref": "#/definitions/mediaTypeList" - }, - "produces": { - "description": "A list of MIME types the API can produce.", - "$ref": "#/definitions/mediaTypeList" - }, - "paths": { - "$ref": "#/definitions/paths" - }, - "definitions": { - "$ref": "#/definitions/definitions" - }, - "parameters": { - "$ref": "#/definitions/parameterDefinitions" - }, - "responses": { - "$ref": "#/definitions/responseDefinitions" - }, - "security": { - "$ref": "#/definitions/security" - }, - "securityDefinitions": { - "$ref": "#/definitions/securityDefinitions" - }, - "tags": { - "type": "array", - "items": { - "$ref": "#/definitions/tag" - }, - "uniqueItems": true - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - }, - "definitions": { - "info": { - "type": "object", - "description": "General information about the API.", - "required": [ - "version", - "title" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "title": { - "type": "string", - "description": "A unique and precise title of the API." - }, - "version": { - "type": "string", - "description": "A semantic version number of the API." - }, - "description": { - "type": "string", - "description": "A longer description of the API. Should be different from the title. GitHub Flavored Markdown is allowed." - }, - "termsOfService": { - "type": "string", - "description": "The terms of service for the API." - }, - "contact": { - "$ref": "#/definitions/contact" - }, - "license": { - "$ref": "#/definitions/license" - } - } - }, - "contact": { - "type": "object", - "description": "Contact information for the owners of the API.", - "additionalProperties": false, - "properties": { - "name": { - "type": "string", - "description": "The identifying name of the contact person/organization." - }, - "url": { - "type": "string", - "description": "The URL pointing to the contact information.", - "format": "uri" - }, - "email": { - "type": "string", - "description": "The email address of the contact person/organization.", - "format": "email" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "license": { - "type": "object", - "required": [ - "name" - ], - "additionalProperties": false, - "properties": { - "name": { - "type": "string", - "description": "The name of the license type. It's encouraged to use an OSI compatible license." - }, - "url": { - "type": "string", - "description": "The URL pointing to the license.", - "format": "uri" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "paths": { - "type": "object", - "description": "Relative paths to the individual endpoints. They must be relative to the 'basePath'.", - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - }, - "^/": { - "$ref": "#/definitions/pathItem" - } - }, - "additionalProperties": false - }, - "definitions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schema" - }, - "description": "One or more JSON objects describing the schemas being consumed and produced by the API." - }, - "parameterDefinitions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/parameter" - }, - "description": "One or more JSON representations for parameters" - }, - "responseDefinitions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/response" - }, - "description": "One or more JSON representations for parameters" - }, - "externalDocs": { - "type": "object", - "additionalProperties": false, - "description": "information about external documentation", - "required": [ - "url" - ], - "properties": { - "description": { - "type": "string" - }, - "url": { - "type": "string", - "format": "uri" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "examples": { - "type": "object", - "additionalProperties": true - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the HTTP message." - }, - "operation": { - "type": "object", - "required": [ - "responses" - ], - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - }, - "summary": { - "type": "string", - "description": "A brief summary of the operation." - }, - "description": { - "type": "string", - "description": "A longer description of the operation, GitHub Flavored Markdown is allowed." - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "operationId": { - "type": "string", - "description": "A unique identifier of the operation." - }, - "produces": { - "description": "A list of MIME types the API can produce.", - "$ref": "#/definitions/mediaTypeList" - }, - "consumes": { - "description": "A list of MIME types the API can consume.", - "$ref": "#/definitions/mediaTypeList" - }, - "parameters": { - "$ref": "#/definitions/parametersList" - }, - "responses": { - "$ref": "#/definitions/responses" - }, - "schemes": { - "$ref": "#/definitions/schemesList" - }, - "deprecated": { - "type": "boolean", - "default": false - }, - "security": { - "$ref": "#/definitions/security" - } - } - }, - "pathItem": { - "type": "object", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "$ref": { - "type": "string" - }, - "get": { - "$ref": "#/definitions/operation" - }, - "put": { - "$ref": "#/definitions/operation" - }, - "post": { - "$ref": "#/definitions/operation" - }, - "delete": { - "$ref": "#/definitions/operation" - }, - "options": { - "$ref": "#/definitions/operation" - }, - "head": { - "$ref": "#/definitions/operation" - }, - "patch": { - "$ref": "#/definitions/operation" - }, - "parameters": { - "$ref": "#/definitions/parametersList" - } - } - }, - "responses": { - "type": "object", - "description": "Response objects names can either be any valid HTTP status code or 'default'.", - "minProperties": 1, - "additionalProperties": false, - "patternProperties": { - "^([0-9]{3})$|^(default)$": { - "$ref": "#/definitions/responseValue" - }, - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "not": { - "type": "object", - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - } - }, - "responseValue": { - "oneOf": [ - { - "$ref": "#/definitions/response" - }, - { - "$ref": "#/definitions/jsonReference" - } - ] - }, - "response": { - "type": "object", - "required": [ - "description" - ], - "properties": { - "description": { - "type": "string" - }, - "schema": { - "oneOf": [ - { - "$ref": "#/definitions/schema" - }, - { - "$ref": "#/definitions/fileSchema" - } - ] - }, - "headers": { - "$ref": "#/definitions/headers" - }, - "examples": { - "$ref": "#/definitions/examples" - } - }, - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "headers": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/header" - } - }, - "header": { - "type": "object", - "additionalProperties": false, - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "string", - "number", - "integer", - "boolean", - "array" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormat" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "vendorExtension": { - "description": "Any property starting with x- is valid.", - "additionalProperties": true, - "additionalItems": true - }, - "bodyParameter": { - "type": "object", - "required": [ - "name", - "in", - "schema" - ], - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "description": { - "type": "string", - "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "in": { - "type": "string", - "description": "Determines the location of the parameter.", - "enum": [ - "body" - ] - }, - "required": { - "type": "boolean", - "description": "Determines whether or not this parameter is required or optional.", - "default": false - }, - "schema": { - "$ref": "#/definitions/schema" - } - }, - "additionalProperties": false - }, - "headerParameterSubSchema": { - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "required": { - "type": "boolean", - "description": "Determines whether or not this parameter is required or optional.", - "default": false - }, - "in": { - "type": "string", - "description": "Determines the location of the parameter.", - "enum": [ - "header" - ] - }, - "description": { - "type": "string", - "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "type": { - "type": "string", - "enum": [ - "string", - "number", - "boolean", - "integer", - "array" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormat" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - } - } - }, - "queryParameterSubSchema": { - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "required": { - "type": "boolean", - "description": "Determines whether or not this parameter is required or optional.", - "default": false - }, - "in": { - "type": "string", - "description": "Determines the location of the parameter.", - "enum": [ - "query" - ] - }, - "description": { - "type": "string", - "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "allowEmptyValue": { - "type": "boolean", - "default": false, - "description": "allows sending a parameter by name only or with an empty value." - }, - "type": { - "type": "string", - "enum": [ - "string", - "number", - "boolean", - "integer", - "array" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormatWithMulti" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - } - } - }, - "formDataParameterSubSchema": { - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "required": { - "type": "boolean", - "description": "Determines whether or not this parameter is required or optional.", - "default": false - }, - "in": { - "type": "string", - "description": "Determines the location of the parameter.", - "enum": [ - "formData" - ] - }, - "description": { - "type": "string", - "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "allowEmptyValue": { - "type": "boolean", - "default": false, - "description": "allows sending a parameter by name only or with an empty value." - }, - "type": { - "type": "string", - "enum": [ - "string", - "number", - "boolean", - "integer", - "array", - "file" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormatWithMulti" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - } - } - }, - "pathParameterSubSchema": { - "additionalProperties": false, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "required": [ - "required" - ], - "properties": { - "required": { - "type": "boolean", - "enum": [ - true - ], - "description": "Determines whether or not this parameter is required or optional." - }, - "in": { - "type": "string", - "description": "Determines the location of the parameter.", - "enum": [ - "path" - ] - }, - "description": { - "type": "string", - "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." - }, - "name": { - "type": "string", - "description": "The name of the parameter." - }, - "type": { - "type": "string", - "enum": [ - "string", - "number", - "boolean", - "integer", - "array" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormat" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - } - } - }, - "nonBodyParameter": { - "type": "object", - "required": [ - "name", - "in", - "type" - ], - "oneOf": [ - { - "$ref": "#/definitions/headerParameterSubSchema" - }, - { - "$ref": "#/definitions/formDataParameterSubSchema" - }, - { - "$ref": "#/definitions/queryParameterSubSchema" - }, - { - "$ref": "#/definitions/pathParameterSubSchema" - } - ] - }, - "parameter": { - "oneOf": [ - { - "$ref": "#/definitions/bodyParameter" - }, - { - "$ref": "#/definitions/nonBodyParameter" - } - ] - }, - "schema": { - "type": "object", - "description": "A deterministic version of a JSON Schema object.", - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "properties": { - "$ref": { - "type": "string" - }, - "format": { - "type": "string" - }, - "title": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/title" - }, - "description": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/description" - }, - "default": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/default" - }, - "multipleOf": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf" - }, - "maximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum" - }, - "exclusiveMaximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" - }, - "minimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum" - }, - "exclusiveMinimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" - }, - "maxLength": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" - }, - "minLength": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" - }, - "pattern": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern" - }, - "maxItems": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" - }, - "minItems": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" - }, - "uniqueItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems" - }, - "maxProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" - }, - "minProperties": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" - }, - "required": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/stringArray" - }, - "enum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/enum" - }, - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/definitions/schema" - }, - { - "type": "boolean" - } - ], - "default": {} - }, - "type": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/type" - }, - "items": { - "anyOf": [ - { - "$ref": "#/definitions/schema" - }, - { - "type": "array", - "minItems": 1, - "items": { - "$ref": "#/definitions/schema" - } - } - ], - "default": {} - }, - "allOf": { - "type": "array", - "minItems": 1, - "items": { - "$ref": "#/definitions/schema" - } - }, - "properties": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/schema" - }, - "default": {} - }, - "discriminator": { - "type": "string" - }, - "readOnly": { - "type": "boolean", - "default": false - }, - "xml": { - "$ref": "#/definitions/xml" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "example": {} - }, - "additionalProperties": false - }, - "fileSchema": { - "type": "object", - "description": "A deterministic version of a JSON Schema object.", - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - }, - "required": [ - "type" - ], - "properties": { - "format": { - "type": "string" - }, - "title": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/title" - }, - "description": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/description" - }, - "default": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/default" - }, - "required": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/stringArray" - }, - "type": { - "type": "string", - "enum": [ - "file" - ] - }, - "readOnly": { - "type": "boolean", - "default": false - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - }, - "example": {} - }, - "additionalProperties": false - }, - "primitivesItems": { - "type": "object", - "additionalProperties": false, - "properties": { - "type": { - "type": "string", - "enum": [ - "string", - "number", - "integer", - "boolean", - "array" - ] - }, - "format": { - "type": "string" - }, - "items": { - "$ref": "#/definitions/primitivesItems" - }, - "collectionFormat": { - "$ref": "#/definitions/collectionFormat" - }, - "default": { - "$ref": "#/definitions/default" - }, - "maximum": { - "$ref": "#/definitions/maximum" - }, - "exclusiveMaximum": { - "$ref": "#/definitions/exclusiveMaximum" - }, - "minimum": { - "$ref": "#/definitions/minimum" - }, - "exclusiveMinimum": { - "$ref": "#/definitions/exclusiveMinimum" - }, - "maxLength": { - "$ref": "#/definitions/maxLength" - }, - "minLength": { - "$ref": "#/definitions/minLength" - }, - "pattern": { - "$ref": "#/definitions/pattern" - }, - "maxItems": { - "$ref": "#/definitions/maxItems" - }, - "minItems": { - "$ref": "#/definitions/minItems" - }, - "uniqueItems": { - "$ref": "#/definitions/uniqueItems" - }, - "enum": { - "$ref": "#/definitions/enum" - }, - "multipleOf": { - "$ref": "#/definitions/multipleOf" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "security": { - "type": "array", - "items": { - "$ref": "#/definitions/securityRequirement" - }, - "uniqueItems": true - }, - "securityRequirement": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true - } - }, - "xml": { - "type": "object", - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "prefix": { - "type": "string" - }, - "attribute": { - "type": "boolean", - "default": false - }, - "wrapped": { - "type": "boolean", - "default": false - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "tag": { - "type": "object", - "additionalProperties": false, - "required": [ - "name" - ], - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "externalDocs": { - "$ref": "#/definitions/externalDocs" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "securityDefinitions": { - "type": "object", - "additionalProperties": { - "oneOf": [ - { - "$ref": "#/definitions/basicAuthenticationSecurity" - }, - { - "$ref": "#/definitions/apiKeySecurity" - }, - { - "$ref": "#/definitions/oauth2ImplicitSecurity" - }, - { - "$ref": "#/definitions/oauth2PasswordSecurity" - }, - { - "$ref": "#/definitions/oauth2ApplicationSecurity" - }, - { - "$ref": "#/definitions/oauth2AccessCodeSecurity" - } - ] - } - }, - "basicAuthenticationSecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "basic" - ] - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "apiKeySecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type", - "name", - "in" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "apiKey" - ] - }, - "name": { - "type": "string" - }, - "in": { - "type": "string", - "enum": [ - "header", - "query" - ] - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "oauth2ImplicitSecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type", - "flow", - "authorizationUrl" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "oauth2" - ] - }, - "flow": { - "type": "string", - "enum": [ - "implicit" - ] - }, - "scopes": { - "$ref": "#/definitions/oauth2Scopes" - }, - "authorizationUrl": { - "type": "string", - "format": "uri" - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "oauth2PasswordSecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type", - "flow", - "tokenUrl" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "oauth2" - ] - }, - "flow": { - "type": "string", - "enum": [ - "password" - ] - }, - "scopes": { - "$ref": "#/definitions/oauth2Scopes" - }, - "tokenUrl": { - "type": "string", - "format": "uri" - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "oauth2ApplicationSecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type", - "flow", - "tokenUrl" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "oauth2" - ] - }, - "flow": { - "type": "string", - "enum": [ - "application" - ] - }, - "scopes": { - "$ref": "#/definitions/oauth2Scopes" - }, - "tokenUrl": { - "type": "string", - "format": "uri" - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "oauth2AccessCodeSecurity": { - "type": "object", - "additionalProperties": false, - "required": [ - "type", - "flow", - "authorizationUrl", - "tokenUrl" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "oauth2" - ] - }, - "flow": { - "type": "string", - "enum": [ - "accessCode" - ] - }, - "scopes": { - "$ref": "#/definitions/oauth2Scopes" - }, - "authorizationUrl": { - "type": "string", - "format": "uri" - }, - "tokenUrl": { - "type": "string", - "format": "uri" - }, - "description": { - "type": "string" - } - }, - "patternProperties": { - "^x-": { - "$ref": "#/definitions/vendorExtension" - } - } - }, - "oauth2Scopes": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "mediaTypeList": { - "type": "array", - "items": { - "$ref": "#/definitions/mimeType" - }, - "uniqueItems": true - }, - "parametersList": { - "type": "array", - "description": "The parameters needed to send a valid API call.", - "additionalItems": false, - "items": { - "oneOf": [ - { - "$ref": "#/definitions/parameter" - }, - { - "$ref": "#/definitions/jsonReference" - } - ] - }, - "uniqueItems": true - }, - "schemesList": { - "type": "array", - "description": "The transfer protocol of the API.", - "items": { - "type": "string", - "enum": [ - "http", - "https", - "ws", - "wss" - ] - }, - "uniqueItems": true - }, - "collectionFormat": { - "type": "string", - "enum": [ - "csv", - "ssv", - "tsv", - "pipes" - ], - "default": "csv" - }, - "collectionFormatWithMulti": { - "type": "string", - "enum": [ - "csv", - "ssv", - "tsv", - "pipes", - "multi" - ], - "default": "csv" - }, - "title": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/title" - }, - "description": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/description" - }, - "default": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/default" - }, - "multipleOf": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf" - }, - "maximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum" - }, - "exclusiveMaximum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" - }, - "minimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum" - }, - "exclusiveMinimum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" - }, - "maxLength": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" - }, - "minLength": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" - }, - "pattern": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern" - }, - "maxItems": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" - }, - "minItems": { - "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" - }, - "uniqueItems": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems" - }, - "enum": { - "$ref": "http://json-schema.org/draft-04/schema#/properties/enum" - }, - "jsonReference": { - "type": "object", - "required": [ - "$ref" - ], - "additionalProperties": false, - "properties": { - "$ref": { - "type": "string" - } - } - } - } -} -},{}],146:[function(require,module,exports){ -(function (setImmediate,clearImmediate){ -var nextTick = require('process/browser.js').nextTick; -var apply = Function.prototype.apply; -var slice = Array.prototype.slice; -var immediateIds = {}; -var nextImmediateId = 0; - -// DOM APIs, for completeness - -exports.setTimeout = function() { - return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout); -}; -exports.setInterval = function() { - return new Timeout(apply.call(setInterval, window, arguments), clearInterval); -}; -exports.clearTimeout = -exports.clearInterval = function(timeout) { timeout.close(); }; - -function Timeout(id, clearFn) { - this._id = id; - this._clearFn = clearFn; -} -Timeout.prototype.unref = Timeout.prototype.ref = function() {}; -Timeout.prototype.close = function() { - this._clearFn.call(window, this._id); -}; - -// Does not start the time, just sets up the members needed. -exports.enroll = function(item, msecs) { - clearTimeout(item._idleTimeoutId); - item._idleTimeout = msecs; -}; - -exports.unenroll = function(item) { - clearTimeout(item._idleTimeoutId); - item._idleTimeout = -1; -}; - -exports._unrefActive = exports.active = function(item) { - clearTimeout(item._idleTimeoutId); - - var msecs = item._idleTimeout; - if (msecs >= 0) { - item._idleTimeoutId = setTimeout(function onTimeout() { - if (item._onTimeout) - item._onTimeout(); - }, msecs); - } -}; - -// That's not how node.js implements it but the exposed api is the same. -exports.setImmediate = typeof setImmediate === "function" ? setImmediate : function(fn) { - var id = nextImmediateId++; - var args = arguments.length < 2 ? false : slice.call(arguments, 1); - - immediateIds[id] = true; - - nextTick(function onNextTick() { - if (immediateIds[id]) { - // fn.call() is faster so we optimize for the common use-case - // @see http://jsperf.com/call-apply-segu - if (args) { - fn.apply(null, args); - } else { - fn.call(null); - } - // Prevent ids from leaking - exports.clearImmediate(id); - } - }); - - return id; -}; - -exports.clearImmediate = typeof clearImmediate === "function" ? clearImmediate : function(id) { - delete immediateIds[id]; -}; -}).call(this,require("timers").setImmediate,require("timers").clearImmediate) - -},{"process/browser.js":125,"timers":146}],147:[function(require,module,exports){ -var Buffer = require('buffer').Buffer - -module.exports = function (buf) { - // If the buffer is backed by a Uint8Array, a faster version will work - if (buf instanceof Uint8Array) { - // If the buffer isn't a subarray, return the underlying ArrayBuffer - if (buf.byteOffset === 0 && buf.byteLength === buf.buffer.byteLength) { - return buf.buffer - } else if (typeof buf.buffer.slice === 'function') { - // Otherwise we need to get a proper copy - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength) - } - } - - if (Buffer.isBuffer(buf)) { - // This is the slow version that will work with any Buffer - // implementation (even in old browsers) - var arrayCopy = new Uint8Array(buf.length) - var len = buf.length - for (var i = 0; i < len; i++) { - arrayCopy[i] = buf[i] - } - return arrayCopy.buffer - } else { - throw new Error('Argument must be a Buffer') - } -} - -},{"buffer":9}],148:[function(require,module,exports){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -'use strict'; - -var punycode = require('punycode'); -var util = require('./util'); - -exports.parse = urlParse; -exports.resolve = urlResolve; -exports.resolveObject = urlResolveObject; -exports.format = urlFormat; - -exports.Url = Url; - -function Url() { - this.protocol = null; - this.slashes = null; - this.auth = null; - this.host = null; - this.port = null; - this.hostname = null; - this.hash = null; - this.search = null; - this.query = null; - this.pathname = null; - this.path = null; - this.href = null; -} - -// Reference: RFC 3986, RFC 1808, RFC 2396 - -// define these here so at least they only have to be -// compiled once on the first module load. -var protocolPattern = /^([a-z0-9.+-]+:)/i, - portPattern = /:[0-9]*$/, - - // Special case for a simple path URL - simplePathPattern = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/, - - // RFC 2396: characters reserved for delimiting URLs. - // We actually just auto-escape these. - delims = ['<', '>', '"', '`', ' ', '\r', '\n', '\t'], - - // RFC 2396: characters not allowed for various reasons. - unwise = ['{', '}', '|', '\\', '^', '`'].concat(delims), - - // Allowed by RFCs, but cause of XSS attacks. Always escape these. - autoEscape = ['\''].concat(unwise), - // Characters that are never ever allowed in a hostname. - // Note that any invalid chars are also handled, but these - // are the ones that are *expected* to be seen, so we fast-path - // them. - nonHostChars = ['%', '/', '?', ';', '#'].concat(autoEscape), - hostEndingChars = ['/', '?', '#'], - hostnameMaxLen = 255, - hostnamePartPattern = /^[+a-z0-9A-Z_-]{0,63}$/, - hostnamePartStart = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, - // protocols that can allow "unsafe" and "unwise" chars. - unsafeProtocol = { - 'javascript': true, - 'javascript:': true - }, - // protocols that never have a hostname. - hostlessProtocol = { - 'javascript': true, - 'javascript:': true - }, - // protocols that always contain a // bit. - slashedProtocol = { - 'http': true, - 'https': true, - 'ftp': true, - 'gopher': true, - 'file': true, - 'http:': true, - 'https:': true, - 'ftp:': true, - 'gopher:': true, - 'file:': true - }, - querystring = require('querystring'); - -function urlParse(url, parseQueryString, slashesDenoteHost) { - if (url && util.isObject(url) && url instanceof Url) return url; - - var u = new Url; - u.parse(url, parseQueryString, slashesDenoteHost); - return u; -} - -Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) { - if (!util.isString(url)) { - throw new TypeError("Parameter 'url' must be a string, not " + typeof url); - } - - // Copy chrome, IE, opera backslash-handling behavior. - // Back slashes before the query string get converted to forward slashes - // See: https://code.google.com/p/chromium/issues/detail?id=25916 - var queryIndex = url.indexOf('?'), - splitter = - (queryIndex !== -1 && queryIndex < url.indexOf('#')) ? '?' : '#', - uSplit = url.split(splitter), - slashRegex = /\\/g; - uSplit[0] = uSplit[0].replace(slashRegex, '/'); - url = uSplit.join(splitter); - - var rest = url; - - // trim before proceeding. - // This is to support parse stuff like " http://foo.com \n" - rest = rest.trim(); - - if (!slashesDenoteHost && url.split('#').length === 1) { - // Try fast path regexp - var simplePath = simplePathPattern.exec(rest); - if (simplePath) { - this.path = rest; - this.href = rest; - this.pathname = simplePath[1]; - if (simplePath[2]) { - this.search = simplePath[2]; - if (parseQueryString) { - this.query = querystring.parse(this.search.substr(1)); - } else { - this.query = this.search.substr(1); - } - } else if (parseQueryString) { - this.search = ''; - this.query = {}; - } - return this; - } - } - - var proto = protocolPattern.exec(rest); - if (proto) { - proto = proto[0]; - var lowerProto = proto.toLowerCase(); - this.protocol = lowerProto; - rest = rest.substr(proto.length); - } - - // figure out if it's got a host - // user@server is *always* interpreted as a hostname, and url - // resolution will treat //foo/bar as host=foo,path=bar because that's - // how the browser resolves relative URLs. - if (slashesDenoteHost || proto || rest.match(/^\/\/[^@\/]+@[^@\/]+/)) { - var slashes = rest.substr(0, 2) === '//'; - if (slashes && !(proto && hostlessProtocol[proto])) { - rest = rest.substr(2); - this.slashes = true; - } - } - - if (!hostlessProtocol[proto] && - (slashes || (proto && !slashedProtocol[proto]))) { - - // there's a hostname. - // the first instance of /, ?, ;, or # ends the host. - // - // If there is an @ in the hostname, then non-host chars *are* allowed - // to the left of the last @ sign, unless some host-ending character - // comes *before* the @-sign. - // URLs are obnoxious. - // - // ex: - // http://a@b@c/ => user:a@b host:c - // http://a@b?@c => user:a host:c path:/?@c - - // v0.12 TODO(isaacs): This is not quite how Chrome does things. - // Review our test case against browsers more comprehensively. - - // find the first instance of any hostEndingChars - var hostEnd = -1; - for (var i = 0; i < hostEndingChars.length; i++) { - var hec = rest.indexOf(hostEndingChars[i]); - if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) - hostEnd = hec; - } - - // at this point, either we have an explicit point where the - // auth portion cannot go past, or the last @ char is the decider. - var auth, atSign; - if (hostEnd === -1) { - // atSign can be anywhere. - atSign = rest.lastIndexOf('@'); - } else { - // atSign must be in auth portion. - // http://a@b/c@d => host:b auth:a path:/c@d - atSign = rest.lastIndexOf('@', hostEnd); - } - - // Now we have a portion which is definitely the auth. - // Pull that off. - if (atSign !== -1) { - auth = rest.slice(0, atSign); - rest = rest.slice(atSign + 1); - this.auth = decodeURIComponent(auth); - } - - // the host is the remaining to the left of the first non-host char - hostEnd = -1; - for (var i = 0; i < nonHostChars.length; i++) { - var hec = rest.indexOf(nonHostChars[i]); - if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) - hostEnd = hec; - } - // if we still have not hit it, then the entire thing is a host. - if (hostEnd === -1) - hostEnd = rest.length; - - this.host = rest.slice(0, hostEnd); - rest = rest.slice(hostEnd); - - // pull out port. - this.parseHost(); - - // we've indicated that there is a hostname, - // so even if it's empty, it has to be present. - this.hostname = this.hostname || ''; - - // if hostname begins with [ and ends with ] - // assume that it's an IPv6 address. - var ipv6Hostname = this.hostname[0] === '[' && - this.hostname[this.hostname.length - 1] === ']'; - - // validate a little. - if (!ipv6Hostname) { - var hostparts = this.hostname.split(/\./); - for (var i = 0, l = hostparts.length; i < l; i++) { - var part = hostparts[i]; - if (!part) continue; - if (!part.match(hostnamePartPattern)) { - var newpart = ''; - for (var j = 0, k = part.length; j < k; j++) { - if (part.charCodeAt(j) > 127) { - // we replace non-ASCII char with a temporary placeholder - // we need this to make sure size of hostname is not - // broken by replacing non-ASCII by nothing - newpart += 'x'; - } else { - newpart += part[j]; - } - } - // we test again with ASCII char only - if (!newpart.match(hostnamePartPattern)) { - var validParts = hostparts.slice(0, i); - var notHost = hostparts.slice(i + 1); - var bit = part.match(hostnamePartStart); - if (bit) { - validParts.push(bit[1]); - notHost.unshift(bit[2]); - } - if (notHost.length) { - rest = '/' + notHost.join('.') + rest; - } - this.hostname = validParts.join('.'); - break; - } - } - } - } - - if (this.hostname.length > hostnameMaxLen) { - this.hostname = ''; - } else { - // hostnames are always lower case. - this.hostname = this.hostname.toLowerCase(); - } - - if (!ipv6Hostname) { - // IDNA Support: Returns a punycoded representation of "domain". - // It only converts parts of the domain name that - // have non-ASCII characters, i.e. it doesn't matter if - // you call it with a domain that already is ASCII-only. - this.hostname = punycode.toASCII(this.hostname); - } - - var p = this.port ? ':' + this.port : ''; - var h = this.hostname || ''; - this.host = h + p; - this.href += this.host; - - // strip [ and ] from the hostname - // the host field still retains them, though - if (ipv6Hostname) { - this.hostname = this.hostname.substr(1, this.hostname.length - 2); - if (rest[0] !== '/') { - rest = '/' + rest; - } - } - } - - // now rest is set to the post-host stuff. - // chop off any delim chars. - if (!unsafeProtocol[lowerProto]) { - - // First, make 100% sure that any "autoEscape" chars get - // escaped, even if encodeURIComponent doesn't think they - // need to be. - for (var i = 0, l = autoEscape.length; i < l; i++) { - var ae = autoEscape[i]; - if (rest.indexOf(ae) === -1) - continue; - var esc = encodeURIComponent(ae); - if (esc === ae) { - esc = escape(ae); - } - rest = rest.split(ae).join(esc); - } - } - - - // chop off from the tail first. - var hash = rest.indexOf('#'); - if (hash !== -1) { - // got a fragment string. - this.hash = rest.substr(hash); - rest = rest.slice(0, hash); - } - var qm = rest.indexOf('?'); - if (qm !== -1) { - this.search = rest.substr(qm); - this.query = rest.substr(qm + 1); - if (parseQueryString) { - this.query = querystring.parse(this.query); - } - rest = rest.slice(0, qm); - } else if (parseQueryString) { - // no query string, but parseQueryString still requested - this.search = ''; - this.query = {}; - } - if (rest) this.pathname = rest; - if (slashedProtocol[lowerProto] && - this.hostname && !this.pathname) { - this.pathname = '/'; - } - - //to support http.request - if (this.pathname || this.search) { - var p = this.pathname || ''; - var s = this.search || ''; - this.path = p + s; - } - - // finally, reconstruct the href based on what has been validated. - this.href = this.format(); - return this; -}; - -// format a parsed object into a url string -function urlFormat(obj) { - // ensure it's an object, and not a string url. - // If it's an obj, this is a no-op. - // this way, you can call url_format() on strings - // to clean up potentially wonky urls. - if (util.isString(obj)) obj = urlParse(obj); - if (!(obj instanceof Url)) return Url.prototype.format.call(obj); - return obj.format(); -} - -Url.prototype.format = function() { - var auth = this.auth || ''; - if (auth) { - auth = encodeURIComponent(auth); - auth = auth.replace(/%3A/i, ':'); - auth += '@'; - } - - var protocol = this.protocol || '', - pathname = this.pathname || '', - hash = this.hash || '', - host = false, - query = ''; - - if (this.host) { - host = auth + this.host; - } else if (this.hostname) { - host = auth + (this.hostname.indexOf(':') === -1 ? - this.hostname : - '[' + this.hostname + ']'); - if (this.port) { - host += ':' + this.port; - } - } - - if (this.query && - util.isObject(this.query) && - Object.keys(this.query).length) { - query = querystring.stringify(this.query); - } - - var search = this.search || (query && ('?' + query)) || ''; - - if (protocol && protocol.substr(-1) !== ':') protocol += ':'; - - // only the slashedProtocols get the //. Not mailto:, xmpp:, etc. - // unless they had them to begin with. - if (this.slashes || - (!protocol || slashedProtocol[protocol]) && host !== false) { - host = '//' + (host || ''); - if (pathname && pathname.charAt(0) !== '/') pathname = '/' + pathname; - } else if (!host) { - host = ''; - } - - if (hash && hash.charAt(0) !== '#') hash = '#' + hash; - if (search && search.charAt(0) !== '?') search = '?' + search; - - pathname = pathname.replace(/[?#]/g, function(match) { - return encodeURIComponent(match); - }); - search = search.replace('#', '%23'); - - return protocol + host + pathname + search + hash; -}; - -function urlResolve(source, relative) { - return urlParse(source, false, true).resolve(relative); -} - -Url.prototype.resolve = function(relative) { - return this.resolveObject(urlParse(relative, false, true)).format(); -}; - -function urlResolveObject(source, relative) { - if (!source) return relative; - return urlParse(source, false, true).resolveObject(relative); -} - -Url.prototype.resolveObject = function(relative) { - if (util.isString(relative)) { - var rel = new Url(); - rel.parse(relative, false, true); - relative = rel; - } - - var result = new Url(); - var tkeys = Object.keys(this); - for (var tk = 0; tk < tkeys.length; tk++) { - var tkey = tkeys[tk]; - result[tkey] = this[tkey]; - } - - // hash is always overridden, no matter what. - // even href="" will remove it. - result.hash = relative.hash; - - // if the relative url is empty, then there's nothing left to do here. - if (relative.href === '') { - result.href = result.format(); - return result; - } - - // hrefs like //foo/bar always cut to the protocol. - if (relative.slashes && !relative.protocol) { - // take everything except the protocol from relative - var rkeys = Object.keys(relative); - for (var rk = 0; rk < rkeys.length; rk++) { - var rkey = rkeys[rk]; - if (rkey !== 'protocol') - result[rkey] = relative[rkey]; - } - - //urlParse appends trailing / to urls like http://www.example.com - if (slashedProtocol[result.protocol] && - result.hostname && !result.pathname) { - result.path = result.pathname = '/'; - } - - result.href = result.format(); - return result; - } - - if (relative.protocol && relative.protocol !== result.protocol) { - // if it's a known url protocol, then changing - // the protocol does weird things - // first, if it's not file:, then we MUST have a host, - // and if there was a path - // to begin with, then we MUST have a path. - // if it is file:, then the host is dropped, - // because that's known to be hostless. - // anything else is assumed to be absolute. - if (!slashedProtocol[relative.protocol]) { - var keys = Object.keys(relative); - for (var v = 0; v < keys.length; v++) { - var k = keys[v]; - result[k] = relative[k]; - } - result.href = result.format(); - return result; - } - - result.protocol = relative.protocol; - if (!relative.host && !hostlessProtocol[relative.protocol]) { - var relPath = (relative.pathname || '').split('/'); - while (relPath.length && !(relative.host = relPath.shift())); - if (!relative.host) relative.host = ''; - if (!relative.hostname) relative.hostname = ''; - if (relPath[0] !== '') relPath.unshift(''); - if (relPath.length < 2) relPath.unshift(''); - result.pathname = relPath.join('/'); - } else { - result.pathname = relative.pathname; - } - result.search = relative.search; - result.query = relative.query; - result.host = relative.host || ''; - result.auth = relative.auth; - result.hostname = relative.hostname || relative.host; - result.port = relative.port; - // to support http.request - if (result.pathname || result.search) { - var p = result.pathname || ''; - var s = result.search || ''; - result.path = p + s; - } - result.slashes = result.slashes || relative.slashes; - result.href = result.format(); - return result; - } - - var isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/'), - isRelAbs = ( - relative.host || - relative.pathname && relative.pathname.charAt(0) === '/' - ), - mustEndAbs = (isRelAbs || isSourceAbs || - (result.host && relative.pathname)), - removeAllDots = mustEndAbs, - srcPath = result.pathname && result.pathname.split('/') || [], - relPath = relative.pathname && relative.pathname.split('/') || [], - psychotic = result.protocol && !slashedProtocol[result.protocol]; - - // if the url is a non-slashed url, then relative - // links like ../.. should be able - // to crawl up to the hostname, as well. This is strange. - // result.protocol has already been set by now. - // Later on, put the first path part into the host field. - if (psychotic) { - result.hostname = ''; - result.port = null; - if (result.host) { - if (srcPath[0] === '') srcPath[0] = result.host; - else srcPath.unshift(result.host); - } - result.host = ''; - if (relative.protocol) { - relative.hostname = null; - relative.port = null; - if (relative.host) { - if (relPath[0] === '') relPath[0] = relative.host; - else relPath.unshift(relative.host); - } - relative.host = null; - } - mustEndAbs = mustEndAbs && (relPath[0] === '' || srcPath[0] === ''); - } - - if (isRelAbs) { - // it's absolute. - result.host = (relative.host || relative.host === '') ? - relative.host : result.host; - result.hostname = (relative.hostname || relative.hostname === '') ? - relative.hostname : result.hostname; - result.search = relative.search; - result.query = relative.query; - srcPath = relPath; - // fall through to the dot-handling below. - } else if (relPath.length) { - // it's relative - // throw away the existing file, and take the new path instead. - if (!srcPath) srcPath = []; - srcPath.pop(); - srcPath = srcPath.concat(relPath); - result.search = relative.search; - result.query = relative.query; - } else if (!util.isNullOrUndefined(relative.search)) { - // just pull out the search. - // like href='?foo'. - // Put this after the other two cases because it simplifies the booleans - if (psychotic) { - result.hostname = result.host = srcPath.shift(); - //occationaly the auth can get stuck only in host - //this especially happens in cases like - //url.resolveObject('mailto:local1@domain1', 'local2@domain2') - var authInHost = result.host && result.host.indexOf('@') > 0 ? - result.host.split('@') : false; - if (authInHost) { - result.auth = authInHost.shift(); - result.host = result.hostname = authInHost.shift(); - } - } - result.search = relative.search; - result.query = relative.query; - //to support http.request - if (!util.isNull(result.pathname) || !util.isNull(result.search)) { - result.path = (result.pathname ? result.pathname : '') + - (result.search ? result.search : ''); - } - result.href = result.format(); - return result; - } - - if (!srcPath.length) { - // no path at all. easy. - // we've already handled the other stuff above. - result.pathname = null; - //to support http.request - if (result.search) { - result.path = '/' + result.search; - } else { - result.path = null; - } - result.href = result.format(); - return result; - } - - // if a url ENDs in . or .., then it must get a trailing slash. - // however, if it ends in anything else non-slashy, - // then it must NOT get a trailing slash. - var last = srcPath.slice(-1)[0]; - var hasTrailingSlash = ( - (result.host || relative.host || srcPath.length > 1) && - (last === '.' || last === '..') || last === ''); - - // strip single dots, resolve double dots to parent dir - // if the path tries to go above the root, `up` ends up > 0 - var up = 0; - for (var i = srcPath.length; i >= 0; i--) { - last = srcPath[i]; - if (last === '.') { - srcPath.splice(i, 1); - } else if (last === '..') { - srcPath.splice(i, 1); - up++; - } else if (up) { - srcPath.splice(i, 1); - up--; - } - } - - // if the path is allowed to go above the root, restore leading ..s - if (!mustEndAbs && !removeAllDots) { - for (; up--; up) { - srcPath.unshift('..'); - } - } - - if (mustEndAbs && srcPath[0] !== '' && - (!srcPath[0] || srcPath[0].charAt(0) !== '/')) { - srcPath.unshift(''); - } - - if (hasTrailingSlash && (srcPath.join('/').substr(-1) !== '/')) { - srcPath.push(''); - } - - var isAbsolute = srcPath[0] === '' || - (srcPath[0] && srcPath[0].charAt(0) === '/'); - - // put the host back - if (psychotic) { - result.hostname = result.host = isAbsolute ? '' : - srcPath.length ? srcPath.shift() : ''; - //occationaly the auth can get stuck only in host - //this especially happens in cases like - //url.resolveObject('mailto:local1@domain1', 'local2@domain2') - var authInHost = result.host && result.host.indexOf('@') > 0 ? - result.host.split('@') : false; - if (authInHost) { - result.auth = authInHost.shift(); - result.host = result.hostname = authInHost.shift(); - } - } - - mustEndAbs = mustEndAbs || (result.host && srcPath.length); - - if (mustEndAbs && !isAbsolute) { - srcPath.unshift(''); - } - - if (!srcPath.length) { - result.pathname = null; - result.path = null; - } else { - result.pathname = srcPath.join('/'); - } - - //to support request.http - if (!util.isNull(result.pathname) || !util.isNull(result.search)) { - result.path = (result.pathname ? result.pathname : '') + - (result.search ? result.search : ''); - } - result.auth = relative.auth || result.auth; - result.slashes = result.slashes || relative.slashes; - result.href = result.format(); - return result; -}; - -Url.prototype.parseHost = function() { - var host = this.host; - var port = portPattern.exec(host); - if (port) { - port = port[0]; - if (port !== ':') { - this.port = port.substr(1); - } - host = host.substr(0, host.length - port.length); - } - if (host) this.hostname = host; -}; - -},{"./util":149,"punycode":8,"querystring":128}],149:[function(require,module,exports){ -'use strict'; - -module.exports = { - isString: function(arg) { - return typeof(arg) === 'string'; - }, - isObject: function(arg) { - return typeof(arg) === 'object' && arg !== null; - }, - isNull: function(arg) { - return arg === null; - }, - isNullOrUndefined: function(arg) { - return arg == null; - } -}; - -},{}],150:[function(require,module,exports){ -(function (global){ - -/** - * Module exports. - */ - -module.exports = deprecate; - -/** - * Mark that a method should not be used. - * Returns a modified function which warns once by default. - * - * If `localStorage.noDeprecation = true` is set, then it is a no-op. - * - * If `localStorage.throwDeprecation = true` is set, then deprecated functions - * will throw an Error when invoked. - * - * If `localStorage.traceDeprecation = true` is set, then deprecated functions - * will invoke `console.trace()` instead of `console.error()`. - * - * @param {Function} fn - the function to deprecate - * @param {String} msg - the string to print to the console when `fn` is invoked - * @returns {Function} a new "deprecated" version of `fn` - * @api public - */ - -function deprecate (fn, msg) { - if (config('noDeprecation')) { - return fn; - } - - var warned = false; - function deprecated() { - if (!warned) { - if (config('throwDeprecation')) { - throw new Error(msg); - } else if (config('traceDeprecation')) { - console.trace(msg); - } else { - console.warn(msg); - } - warned = true; - } - return fn.apply(this, arguments); - } - - return deprecated; -} - -/** - * Checks `localStorage` for boolean values for the given `name`. - * - * @param {String} name - * @returns {Boolean} - * @api private - */ - -function config (name) { - // accessing global.localStorage can trigger a DOMException in sandboxed iframes - try { - if (!global.localStorage) return false; - } catch (_) { - return false; - } - var val = global.localStorage[name]; - if (null == val) return false; - return String(val).toLowerCase() === 'true'; -} - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],151:[function(require,module,exports){ -module.exports = function isBuffer(arg) { - return arg && typeof arg === 'object' - && typeof arg.copy === 'function' - && typeof arg.fill === 'function' - && typeof arg.readUInt8 === 'function'; -} -},{}],152:[function(require,module,exports){ -(function (process,global){ -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - -var formatRegExp = /%[sdj%]/g; -exports.format = function(f) { - if (!isString(f)) { - var objects = []; - for (var i = 0; i < arguments.length; i++) { - objects.push(inspect(arguments[i])); - } - return objects.join(' '); - } - - var i = 1; - var args = arguments; - var len = args.length; - var str = String(f).replace(formatRegExp, function(x) { - if (x === '%%') return '%'; - if (i >= len) return x; - switch (x) { - case '%s': return String(args[i++]); - case '%d': return Number(args[i++]); - case '%j': - try { - return JSON.stringify(args[i++]); - } catch (_) { - return '[Circular]'; - } - default: - return x; - } - }); - for (var x = args[i]; i < len; x = args[++i]) { - if (isNull(x) || !isObject(x)) { - str += ' ' + x; - } else { - str += ' ' + inspect(x); - } - } - return str; -}; - - -// Mark that a method should not be used. -// Returns a modified function which warns once by default. -// If --no-deprecation is set, then it is a no-op. -exports.deprecate = function(fn, msg) { - // Allow for deprecating things in the process of starting up. - if (isUndefined(global.process)) { - return function() { - return exports.deprecate(fn, msg).apply(this, arguments); - }; - } - - if (process.noDeprecation === true) { - return fn; - } - - var warned = false; - function deprecated() { - if (!warned) { - if (process.throwDeprecation) { - throw new Error(msg); - } else if (process.traceDeprecation) { - console.trace(msg); - } else { - console.error(msg); - } - warned = true; - } - return fn.apply(this, arguments); - } - - return deprecated; -}; - - -var debugs = {}; -var debugEnviron; -exports.debuglog = function(set) { - if (isUndefined(debugEnviron)) - debugEnviron = process.env.NODE_DEBUG || ''; - set = set.toUpperCase(); - if (!debugs[set]) { - if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) { - var pid = process.pid; - debugs[set] = function() { - var msg = exports.format.apply(exports, arguments); - console.error('%s %d: %s', set, pid, msg); - }; - } else { - debugs[set] = function() {}; - } - } - return debugs[set]; -}; - - -/** - * Echos the value of a value. Trys to print the value out - * in the best way possible given the different types. - * - * @param {Object} obj The object to print out. - * @param {Object} opts Optional options object that alters the output. - */ -/* legacy: obj, showHidden, depth, colors*/ -function inspect(obj, opts) { - // default options - var ctx = { - seen: [], - stylize: stylizeNoColor - }; - // legacy... - if (arguments.length >= 3) ctx.depth = arguments[2]; - if (arguments.length >= 4) ctx.colors = arguments[3]; - if (isBoolean(opts)) { - // legacy... - ctx.showHidden = opts; - } else if (opts) { - // got an "options" object - exports._extend(ctx, opts); - } - // set default options - if (isUndefined(ctx.showHidden)) ctx.showHidden = false; - if (isUndefined(ctx.depth)) ctx.depth = 2; - if (isUndefined(ctx.colors)) ctx.colors = false; - if (isUndefined(ctx.customInspect)) ctx.customInspect = true; - if (ctx.colors) ctx.stylize = stylizeWithColor; - return formatValue(ctx, obj, ctx.depth); -} -exports.inspect = inspect; - - -// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics -inspect.colors = { - 'bold' : [1, 22], - 'italic' : [3, 23], - 'underline' : [4, 24], - 'inverse' : [7, 27], - 'white' : [37, 39], - 'grey' : [90, 39], - 'black' : [30, 39], - 'blue' : [34, 39], - 'cyan' : [36, 39], - 'green' : [32, 39], - 'magenta' : [35, 39], - 'red' : [31, 39], - 'yellow' : [33, 39] -}; - -// Don't use 'blue' not visible on cmd.exe -inspect.styles = { - 'special': 'cyan', - 'number': 'yellow', - 'boolean': 'yellow', - 'undefined': 'grey', - 'null': 'bold', - 'string': 'green', - 'date': 'magenta', - // "name": intentionally not styling - 'regexp': 'red' -}; - - -function stylizeWithColor(str, styleType) { - var style = inspect.styles[styleType]; - - if (style) { - return '\u001b[' + inspect.colors[style][0] + 'm' + str + - '\u001b[' + inspect.colors[style][1] + 'm'; - } else { - return str; - } -} - - -function stylizeNoColor(str, styleType) { - return str; -} - - -function arrayToHash(array) { - var hash = {}; - - array.forEach(function(val, idx) { - hash[val] = true; - }); - - return hash; -} - - -function formatValue(ctx, value, recurseTimes) { - // Provide a hook for user-specified inspect functions. - // Check that value is an object with an inspect function on it - if (ctx.customInspect && - value && - isFunction(value.inspect) && - // Filter out the util module, it's inspect function is special - value.inspect !== exports.inspect && - // Also filter out any prototype objects using the circular check. - !(value.constructor && value.constructor.prototype === value)) { - var ret = value.inspect(recurseTimes, ctx); - if (!isString(ret)) { - ret = formatValue(ctx, ret, recurseTimes); - } - return ret; - } - - // Primitive types cannot have properties - var primitive = formatPrimitive(ctx, value); - if (primitive) { - return primitive; - } - - // Look up the keys of the object. - var keys = Object.keys(value); - var visibleKeys = arrayToHash(keys); - - if (ctx.showHidden) { - keys = Object.getOwnPropertyNames(value); - } - - // IE doesn't make error fields non-enumerable - // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx - if (isError(value) - && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) { - return formatError(value); - } - - // Some type of object without properties can be shortcutted. - if (keys.length === 0) { - if (isFunction(value)) { - var name = value.name ? ': ' + value.name : ''; - return ctx.stylize('[Function' + name + ']', 'special'); - } - if (isRegExp(value)) { - return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); - } - if (isDate(value)) { - return ctx.stylize(Date.prototype.toString.call(value), 'date'); - } - if (isError(value)) { - return formatError(value); - } - } - - var base = '', array = false, braces = ['{', '}']; - - // Make Array say that they are Array - if (isArray(value)) { - array = true; - braces = ['[', ']']; - } - - // Make functions say that they are functions - if (isFunction(value)) { - var n = value.name ? ': ' + value.name : ''; - base = ' [Function' + n + ']'; - } - - // Make RegExps say that they are RegExps - if (isRegExp(value)) { - base = ' ' + RegExp.prototype.toString.call(value); - } - - // Make dates with properties first say the date - if (isDate(value)) { - base = ' ' + Date.prototype.toUTCString.call(value); - } - - // Make error with message first say the error - if (isError(value)) { - base = ' ' + formatError(value); - } - - if (keys.length === 0 && (!array || value.length == 0)) { - return braces[0] + base + braces[1]; - } - - if (recurseTimes < 0) { - if (isRegExp(value)) { - return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); - } else { - return ctx.stylize('[Object]', 'special'); - } - } - - ctx.seen.push(value); - - var output; - if (array) { - output = formatArray(ctx, value, recurseTimes, visibleKeys, keys); - } else { - output = keys.map(function(key) { - return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array); - }); - } - - ctx.seen.pop(); - - return reduceToSingleString(output, base, braces); -} - - -function formatPrimitive(ctx, value) { - if (isUndefined(value)) - return ctx.stylize('undefined', 'undefined'); - if (isString(value)) { - var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '') - .replace(/'/g, "\\'") - .replace(/\\"/g, '"') + '\''; - return ctx.stylize(simple, 'string'); - } - if (isNumber(value)) - return ctx.stylize('' + value, 'number'); - if (isBoolean(value)) - return ctx.stylize('' + value, 'boolean'); - // For some reason typeof null is "object", so special case here. - if (isNull(value)) - return ctx.stylize('null', 'null'); -} - - -function formatError(value) { - return '[' + Error.prototype.toString.call(value) + ']'; -} - - -function formatArray(ctx, value, recurseTimes, visibleKeys, keys) { - var output = []; - for (var i = 0, l = value.length; i < l; ++i) { - if (hasOwnProperty(value, String(i))) { - output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, - String(i), true)); - } else { - output.push(''); - } - } - keys.forEach(function(key) { - if (!key.match(/^\d+$/)) { - output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, - key, true)); - } - }); - return output; -} - - -function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) { - var name, str, desc; - desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] }; - if (desc.get) { - if (desc.set) { - str = ctx.stylize('[Getter/Setter]', 'special'); - } else { - str = ctx.stylize('[Getter]', 'special'); - } - } else { - if (desc.set) { - str = ctx.stylize('[Setter]', 'special'); - } - } - if (!hasOwnProperty(visibleKeys, key)) { - name = '[' + key + ']'; - } - if (!str) { - if (ctx.seen.indexOf(desc.value) < 0) { - if (isNull(recurseTimes)) { - str = formatValue(ctx, desc.value, null); - } else { - str = formatValue(ctx, desc.value, recurseTimes - 1); - } - if (str.indexOf('\n') > -1) { - if (array) { - str = str.split('\n').map(function(line) { - return ' ' + line; - }).join('\n').substr(2); - } else { - str = '\n' + str.split('\n').map(function(line) { - return ' ' + line; - }).join('\n'); - } - } - } else { - str = ctx.stylize('[Circular]', 'special'); - } - } - if (isUndefined(name)) { - if (array && key.match(/^\d+$/)) { - return str; - } - name = JSON.stringify('' + key); - if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { - name = name.substr(1, name.length - 2); - name = ctx.stylize(name, 'name'); - } else { - name = name.replace(/'/g, "\\'") - .replace(/\\"/g, '"') - .replace(/(^"|"$)/g, "'"); - name = ctx.stylize(name, 'string'); - } - } - - return name + ': ' + str; -} - - -function reduceToSingleString(output, base, braces) { - var numLinesEst = 0; - var length = output.reduce(function(prev, cur) { - numLinesEst++; - if (cur.indexOf('\n') >= 0) numLinesEst++; - return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1; - }, 0); - - if (length > 60) { - return braces[0] + - (base === '' ? '' : base + '\n ') + - ' ' + - output.join(',\n ') + - ' ' + - braces[1]; - } - - return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; -} - - -// NOTE: These type checking functions intentionally don't use `instanceof` -// because it is fragile and can be easily faked with `Object.create()`. -function isArray(ar) { - return Array.isArray(ar); -} -exports.isArray = isArray; - -function isBoolean(arg) { - return typeof arg === 'boolean'; -} -exports.isBoolean = isBoolean; - -function isNull(arg) { - return arg === null; -} -exports.isNull = isNull; - -function isNullOrUndefined(arg) { - return arg == null; -} -exports.isNullOrUndefined = isNullOrUndefined; - -function isNumber(arg) { - return typeof arg === 'number'; -} -exports.isNumber = isNumber; - -function isString(arg) { - return typeof arg === 'string'; -} -exports.isString = isString; - -function isSymbol(arg) { - return typeof arg === 'symbol'; -} -exports.isSymbol = isSymbol; - -function isUndefined(arg) { - return arg === void 0; -} -exports.isUndefined = isUndefined; - -function isRegExp(re) { - return isObject(re) && objectToString(re) === '[object RegExp]'; -} -exports.isRegExp = isRegExp; - -function isObject(arg) { - return typeof arg === 'object' && arg !== null; -} -exports.isObject = isObject; - -function isDate(d) { - return isObject(d) && objectToString(d) === '[object Date]'; -} -exports.isDate = isDate; - -function isError(e) { - return isObject(e) && - (objectToString(e) === '[object Error]' || e instanceof Error); -} -exports.isError = isError; - -function isFunction(arg) { - return typeof arg === 'function'; -} -exports.isFunction = isFunction; - -function isPrimitive(arg) { - return arg === null || - typeof arg === 'boolean' || - typeof arg === 'number' || - typeof arg === 'string' || - typeof arg === 'symbol' || // ES6 symbol - typeof arg === 'undefined'; -} -exports.isPrimitive = isPrimitive; - -exports.isBuffer = require('./support/isBuffer'); - -function objectToString(o) { - return Object.prototype.toString.call(o); -} - - -function pad(n) { - return n < 10 ? '0' + n.toString(10) : n.toString(10); -} - - -var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', - 'Oct', 'Nov', 'Dec']; - -// 26 Feb 16:19:34 -function timestamp() { - var d = new Date(); - var time = [pad(d.getHours()), - pad(d.getMinutes()), - pad(d.getSeconds())].join(':'); - return [d.getDate(), months[d.getMonth()], time].join(' '); -} - - -// log is just a thin wrapper to console.log that prepends a timestamp -exports.log = function() { - console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments)); -}; - - -/** - * Inherit the prototype methods from one constructor into another. - * - * The Function.prototype.inherits from lang.js rewritten as a standalone - * function (not on Function.prototype). NOTE: If this file is to be loaded - * during bootstrapping this function needs to be rewritten using some native - * functions as prototype setup using normal JavaScript does not work as - * expected during bootstrapping (see mirror.js in r114903). - * - * @param {function} ctor Constructor function which needs to inherit the - * prototype. - * @param {function} superCtor Constructor function to inherit prototype from. - */ -exports.inherits = require('inherits'); - -exports._extend = function(origin, add) { - // Don't do anything if add isn't an object - if (!add || !isObject(add)) return origin; - - var keys = Object.keys(add); - var i = keys.length; - while (i--) { - origin[keys[i]] = add[keys[i]]; - } - return origin; -}; - -function hasOwnProperty(obj, prop) { - return Object.prototype.hasOwnProperty.call(obj, prop); -} - -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./support/isBuffer":151,"_process":125,"inherits":68}],153:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _toDate = _interopRequireDefault(require("./lib/toDate")); - -var _toFloat = _interopRequireDefault(require("./lib/toFloat")); - -var _toInt = _interopRequireDefault(require("./lib/toInt")); - -var _toBoolean = _interopRequireDefault(require("./lib/toBoolean")); - -var _equals = _interopRequireDefault(require("./lib/equals")); - -var _contains = _interopRequireDefault(require("./lib/contains")); - -var _matches = _interopRequireDefault(require("./lib/matches")); - -var _isEmail = _interopRequireDefault(require("./lib/isEmail")); - -var _isURL = _interopRequireDefault(require("./lib/isURL")); - -var _isMACAddress = _interopRequireDefault(require("./lib/isMACAddress")); - -var _isIP = _interopRequireDefault(require("./lib/isIP")); - -var _isIPRange = _interopRequireDefault(require("./lib/isIPRange")); - -var _isFQDN = _interopRequireDefault(require("./lib/isFQDN")); - -var _isBoolean = _interopRequireDefault(require("./lib/isBoolean")); - -var _isAlpha = _interopRequireWildcard(require("./lib/isAlpha")); - -var _isAlphanumeric = _interopRequireWildcard(require("./lib/isAlphanumeric")); - -var _isNumeric = _interopRequireDefault(require("./lib/isNumeric")); - -var _isPort = _interopRequireDefault(require("./lib/isPort")); - -var _isLowercase = _interopRequireDefault(require("./lib/isLowercase")); - -var _isUppercase = _interopRequireDefault(require("./lib/isUppercase")); - -var _isAscii = _interopRequireDefault(require("./lib/isAscii")); - -var _isFullWidth = _interopRequireDefault(require("./lib/isFullWidth")); - -var _isHalfWidth = _interopRequireDefault(require("./lib/isHalfWidth")); - -var _isVariableWidth = _interopRequireDefault(require("./lib/isVariableWidth")); - -var _isMultibyte = _interopRequireDefault(require("./lib/isMultibyte")); - -var _isSurrogatePair = _interopRequireDefault(require("./lib/isSurrogatePair")); - -var _isInt = _interopRequireDefault(require("./lib/isInt")); - -var _isFloat = _interopRequireWildcard(require("./lib/isFloat")); - -var _isDecimal = _interopRequireDefault(require("./lib/isDecimal")); - -var _isHexadecimal = _interopRequireDefault(require("./lib/isHexadecimal")); - -var _isDivisibleBy = _interopRequireDefault(require("./lib/isDivisibleBy")); - -var _isHexColor = _interopRequireDefault(require("./lib/isHexColor")); - -var _isISRC = _interopRequireDefault(require("./lib/isISRC")); - -var _isMD = _interopRequireDefault(require("./lib/isMD5")); - -var _isHash = _interopRequireDefault(require("./lib/isHash")); - -var _isJWT = _interopRequireDefault(require("./lib/isJWT")); - -var _isJSON = _interopRequireDefault(require("./lib/isJSON")); - -var _isEmpty = _interopRequireDefault(require("./lib/isEmpty")); - -var _isLength = _interopRequireDefault(require("./lib/isLength")); - -var _isByteLength = _interopRequireDefault(require("./lib/isByteLength")); - -var _isUUID = _interopRequireDefault(require("./lib/isUUID")); - -var _isMongoId = _interopRequireDefault(require("./lib/isMongoId")); - -var _isAfter = _interopRequireDefault(require("./lib/isAfter")); - -var _isBefore = _interopRequireDefault(require("./lib/isBefore")); - -var _isIn = _interopRequireDefault(require("./lib/isIn")); - -var _isCreditCard = _interopRequireDefault(require("./lib/isCreditCard")); - -var _isIdentityCard = _interopRequireDefault(require("./lib/isIdentityCard")); - -var _isISIN = _interopRequireDefault(require("./lib/isISIN")); - -var _isISBN = _interopRequireDefault(require("./lib/isISBN")); - -var _isISSN = _interopRequireDefault(require("./lib/isISSN")); - -var _isMobilePhone = _interopRequireWildcard(require("./lib/isMobilePhone")); - -var _isCurrency = _interopRequireDefault(require("./lib/isCurrency")); - -var _isISO = _interopRequireDefault(require("./lib/isISO8601")); - -var _isRFC = _interopRequireDefault(require("./lib/isRFC3339")); - -var _isISO31661Alpha = _interopRequireDefault(require("./lib/isISO31661Alpha2")); - -var _isISO31661Alpha2 = _interopRequireDefault(require("./lib/isISO31661Alpha3")); - -var _isBase = _interopRequireDefault(require("./lib/isBase64")); - -var _isDataURI = _interopRequireDefault(require("./lib/isDataURI")); - -var _isMagnetURI = _interopRequireDefault(require("./lib/isMagnetURI")); - -var _isMimeType = _interopRequireDefault(require("./lib/isMimeType")); - -var _isLatLong = _interopRequireDefault(require("./lib/isLatLong")); - -var _isPostalCode = _interopRequireWildcard(require("./lib/isPostalCode")); - -var _ltrim = _interopRequireDefault(require("./lib/ltrim")); - -var _rtrim = _interopRequireDefault(require("./lib/rtrim")); - -var _trim = _interopRequireDefault(require("./lib/trim")); - -var _escape = _interopRequireDefault(require("./lib/escape")); - -var _unescape = _interopRequireDefault(require("./lib/unescape")); - -var _stripLow = _interopRequireDefault(require("./lib/stripLow")); - -var _whitelist = _interopRequireDefault(require("./lib/whitelist")); - -var _blacklist = _interopRequireDefault(require("./lib/blacklist")); - -var _isWhitelisted = _interopRequireDefault(require("./lib/isWhitelisted")); - -var _normalizeEmail = _interopRequireDefault(require("./lib/normalizeEmail")); - -var _toString = _interopRequireDefault(require("./lib/util/toString")); - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var version = '10.11.0'; -var validator = { - version: version, - toDate: _toDate.default, - toFloat: _toFloat.default, - toInt: _toInt.default, - toBoolean: _toBoolean.default, - equals: _equals.default, - contains: _contains.default, - matches: _matches.default, - isEmail: _isEmail.default, - isURL: _isURL.default, - isMACAddress: _isMACAddress.default, - isIP: _isIP.default, - isIPRange: _isIPRange.default, - isFQDN: _isFQDN.default, - isBoolean: _isBoolean.default, - isAlpha: _isAlpha.default, - isAlphaLocales: _isAlpha.locales, - isAlphanumeric: _isAlphanumeric.default, - isAlphanumericLocales: _isAlphanumeric.locales, - isNumeric: _isNumeric.default, - isPort: _isPort.default, - isLowercase: _isLowercase.default, - isUppercase: _isUppercase.default, - isAscii: _isAscii.default, - isFullWidth: _isFullWidth.default, - isHalfWidth: _isHalfWidth.default, - isVariableWidth: _isVariableWidth.default, - isMultibyte: _isMultibyte.default, - isSurrogatePair: _isSurrogatePair.default, - isInt: _isInt.default, - isFloat: _isFloat.default, - isFloatLocales: _isFloat.locales, - isDecimal: _isDecimal.default, - isHexadecimal: _isHexadecimal.default, - isDivisibleBy: _isDivisibleBy.default, - isHexColor: _isHexColor.default, - isISRC: _isISRC.default, - isMD5: _isMD.default, - isHash: _isHash.default, - isJWT: _isJWT.default, - isJSON: _isJSON.default, - isEmpty: _isEmpty.default, - isLength: _isLength.default, - isByteLength: _isByteLength.default, - isUUID: _isUUID.default, - isMongoId: _isMongoId.default, - isAfter: _isAfter.default, - isBefore: _isBefore.default, - isIn: _isIn.default, - isCreditCard: _isCreditCard.default, - isIdentityCard: _isIdentityCard.default, - isISIN: _isISIN.default, - isISBN: _isISBN.default, - isISSN: _isISSN.default, - isMobilePhone: _isMobilePhone.default, - isMobilePhoneLocales: _isMobilePhone.locales, - isPostalCode: _isPostalCode.default, - isPostalCodeLocales: _isPostalCode.locales, - isCurrency: _isCurrency.default, - isISO8601: _isISO.default, - isRFC3339: _isRFC.default, - isISO31661Alpha2: _isISO31661Alpha.default, - isISO31661Alpha3: _isISO31661Alpha2.default, - isBase64: _isBase.default, - isDataURI: _isDataURI.default, - isMagnetURI: _isMagnetURI.default, - isMimeType: _isMimeType.default, - isLatLong: _isLatLong.default, - ltrim: _ltrim.default, - rtrim: _rtrim.default, - trim: _trim.default, - escape: _escape.default, - unescape: _unescape.default, - stripLow: _stripLow.default, - whitelist: _whitelist.default, - blacklist: _blacklist.default, - isWhitelisted: _isWhitelisted.default, - normalizeEmail: _normalizeEmail.default, - toString: _toString.default -}; -var _default = validator; -exports.default = _default; -module.exports = exports.default; -module.exports.default = exports.default; -},{"./lib/blacklist":155,"./lib/contains":156,"./lib/equals":157,"./lib/escape":158,"./lib/isAfter":159,"./lib/isAlpha":160,"./lib/isAlphanumeric":161,"./lib/isAscii":162,"./lib/isBase64":163,"./lib/isBefore":164,"./lib/isBoolean":165,"./lib/isByteLength":166,"./lib/isCreditCard":167,"./lib/isCurrency":168,"./lib/isDataURI":169,"./lib/isDecimal":170,"./lib/isDivisibleBy":171,"./lib/isEmail":172,"./lib/isEmpty":173,"./lib/isFQDN":174,"./lib/isFloat":175,"./lib/isFullWidth":176,"./lib/isHalfWidth":177,"./lib/isHash":178,"./lib/isHexColor":179,"./lib/isHexadecimal":180,"./lib/isIP":181,"./lib/isIPRange":182,"./lib/isISBN":183,"./lib/isISIN":184,"./lib/isISO31661Alpha2":185,"./lib/isISO31661Alpha3":186,"./lib/isISO8601":187,"./lib/isISRC":188,"./lib/isISSN":189,"./lib/isIdentityCard":190,"./lib/isIn":191,"./lib/isInt":192,"./lib/isJSON":193,"./lib/isJWT":194,"./lib/isLatLong":195,"./lib/isLength":196,"./lib/isLowercase":197,"./lib/isMACAddress":198,"./lib/isMD5":199,"./lib/isMagnetURI":200,"./lib/isMimeType":201,"./lib/isMobilePhone":202,"./lib/isMongoId":203,"./lib/isMultibyte":204,"./lib/isNumeric":205,"./lib/isPort":206,"./lib/isPostalCode":207,"./lib/isRFC3339":208,"./lib/isSurrogatePair":209,"./lib/isURL":210,"./lib/isUUID":211,"./lib/isUppercase":212,"./lib/isVariableWidth":213,"./lib/isWhitelisted":214,"./lib/ltrim":215,"./lib/matches":216,"./lib/normalizeEmail":217,"./lib/rtrim":218,"./lib/stripLow":219,"./lib/toBoolean":220,"./lib/toDate":221,"./lib/toFloat":222,"./lib/toInt":223,"./lib/trim":224,"./lib/unescape":225,"./lib/util/toString":229,"./lib/whitelist":230}],154:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.commaDecimal = exports.dotDecimal = exports.arabicLocales = exports.englishLocales = exports.decimal = exports.alphanumeric = exports.alpha = void 0; -var alpha = { - 'en-US': /^[A-Z]+$/i, - 'bg-BG': /^[А-Я]+$/i, - 'cs-CZ': /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i, - 'da-DK': /^[A-ZÆØÅ]+$/i, - 'de-DE': /^[A-ZÄÖÜß]+$/i, - 'el-GR': /^[Α-ω]+$/i, - 'es-ES': /^[A-ZÁÉÍÑÓÚÜ]+$/i, - 'fr-FR': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i, - 'it-IT': /^[A-ZÀÉÈÌÎÓÒÙ]+$/i, - 'nb-NO': /^[A-ZÆØÅ]+$/i, - 'nl-NL': /^[A-ZÁÉËÏÓÖÜÚ]+$/i, - 'nn-NO': /^[A-ZÆØÅ]+$/i, - 'hu-HU': /^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i, - 'pl-PL': /^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i, - 'pt-PT': /^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i, - 'ru-RU': /^[А-ЯЁ]+$/i, - 'sl-SI': /^[A-ZČĆĐŠŽ]+$/i, - 'sk-SK': /^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i, - 'sr-RS@latin': /^[A-ZČĆŽŠĐ]+$/i, - 'sr-RS': /^[А-ЯЂЈЉЊЋЏ]+$/i, - 'sv-SE': /^[A-ZÅÄÖ]+$/i, - 'tr-TR': /^[A-ZÇĞİıÖŞÜ]+$/i, - 'uk-UA': /^[А-ЩЬЮЯЄIЇҐі]+$/i, - 'ku-IQ': /^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i, - ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/ -}; -exports.alpha = alpha; -var alphanumeric = { - 'en-US': /^[0-9A-Z]+$/i, - 'bg-BG': /^[0-9А-Я]+$/i, - 'cs-CZ': /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i, - 'da-DK': /^[0-9A-ZÆØÅ]+$/i, - 'de-DE': /^[0-9A-ZÄÖÜß]+$/i, - 'el-GR': /^[0-9Α-ω]+$/i, - 'es-ES': /^[0-9A-ZÁÉÍÑÓÚÜ]+$/i, - 'fr-FR': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i, - 'it-IT': /^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i, - 'hu-HU': /^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i, - 'nb-NO': /^[0-9A-ZÆØÅ]+$/i, - 'nl-NL': /^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i, - 'nn-NO': /^[0-9A-ZÆØÅ]+$/i, - 'pl-PL': /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i, - 'pt-PT': /^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i, - 'ru-RU': /^[0-9А-ЯЁ]+$/i, - 'sl-SI': /^[0-9A-ZČĆĐŠŽ]+$/i, - 'sk-SK': /^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i, - 'sr-RS@latin': /^[0-9A-ZČĆŽŠĐ]+$/i, - 'sr-RS': /^[0-9А-ЯЂЈЉЊЋЏ]+$/i, - 'sv-SE': /^[0-9A-ZÅÄÖ]+$/i, - 'tr-TR': /^[0-9A-ZÇĞİıÖŞÜ]+$/i, - 'uk-UA': /^[0-9А-ЩЬЮЯЄIЇҐі]+$/i, - 'ku-IQ': /^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i, - ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/ -}; -exports.alphanumeric = alphanumeric; -var decimal = { - 'en-US': '.', - ar: '٫' -}; -exports.decimal = decimal; -var englishLocales = ['AU', 'GB', 'HK', 'IN', 'NZ', 'ZA', 'ZM']; -exports.englishLocales = englishLocales; - -for (var locale, i = 0; i < englishLocales.length; i++) { - locale = "en-".concat(englishLocales[i]); - alpha[locale] = alpha['en-US']; - alphanumeric[locale] = alphanumeric['en-US']; - decimal[locale] = decimal['en-US']; -} // Source: http://www.localeplanet.com/java/ - - -var arabicLocales = ['AE', 'BH', 'DZ', 'EG', 'IQ', 'JO', 'KW', 'LB', 'LY', 'MA', 'QM', 'QA', 'SA', 'SD', 'SY', 'TN', 'YE']; -exports.arabicLocales = arabicLocales; - -for (var _locale, _i = 0; _i < arabicLocales.length; _i++) { - _locale = "ar-".concat(arabicLocales[_i]); - alpha[_locale] = alpha.ar; - alphanumeric[_locale] = alphanumeric.ar; - decimal[_locale] = decimal.ar; -} // Source: https://en.wikipedia.org/wiki/Decimal_mark - - -var dotDecimal = []; -exports.dotDecimal = dotDecimal; -var commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'es-ES', 'fr-FR', 'it-IT', 'ku-IQ', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'sl-SI', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA']; -exports.commaDecimal = commaDecimal; - -for (var _i2 = 0; _i2 < dotDecimal.length; _i2++) { - decimal[dotDecimal[_i2]] = decimal['en-US']; -} - -for (var _i3 = 0; _i3 < commaDecimal.length; _i3++) { - decimal[commaDecimal[_i3]] = ','; -} - -alpha['pt-BR'] = alpha['pt-PT']; -alphanumeric['pt-BR'] = alphanumeric['pt-PT']; -decimal['pt-BR'] = decimal['pt-PT']; // see #862 - -alpha['pl-Pl'] = alpha['pl-PL']; -alphanumeric['pl-Pl'] = alphanumeric['pl-PL']; -decimal['pl-Pl'] = decimal['pl-PL']; -},{}],155:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = blacklist; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function blacklist(str, chars) { - (0, _assertString.default)(str); - return str.replace(new RegExp("[".concat(chars, "]+"), 'g'), ''); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],156:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = contains; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _toString = _interopRequireDefault(require("./util/toString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function contains(str, elem) { - (0, _assertString.default)(str); - return str.indexOf((0, _toString.default)(elem)) >= 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/toString":229}],157:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = equals; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function equals(str, comparison) { - (0, _assertString.default)(str); - return str === comparison; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],158:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = escape; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function escape(str) { - (0, _assertString.default)(str); - return str.replace(/&/g, '&').replace(/"/g, '"').replace(/'/g, ''').replace(//g, '>').replace(/\//g, '/').replace(/\\/g, '\').replace(/`/g, '`'); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],159:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isAfter; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _toDate = _interopRequireDefault(require("./toDate")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isAfter(str) { - var date = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : String(new Date()); - (0, _assertString.default)(str); - var comparison = (0, _toDate.default)(date); - var original = (0, _toDate.default)(str); - return !!(original && comparison && original > comparison); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./toDate":221,"./util/assertString":226}],160:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isAlpha; -exports.locales = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _alpha = require("./alpha"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isAlpha(str) { - var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US'; - (0, _assertString.default)(str); - - if (locale in _alpha.alpha) { - return _alpha.alpha[locale].test(str); - } - - throw new Error("Invalid locale '".concat(locale, "'")); -} - -var locales = Object.keys(_alpha.alpha); -exports.locales = locales; -},{"./alpha":154,"./util/assertString":226}],161:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isAlphanumeric; -exports.locales = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _alpha = require("./alpha"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isAlphanumeric(str) { - var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en-US'; - (0, _assertString.default)(str); - - if (locale in _alpha.alphanumeric) { - return _alpha.alphanumeric[locale].test(str); - } - - throw new Error("Invalid locale '".concat(locale, "'")); -} - -var locales = Object.keys(_alpha.alphanumeric); -exports.locales = locales; -},{"./alpha":154,"./util/assertString":226}],162:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isAscii; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable no-control-regex */ -var ascii = /^[\x00-\x7F]+$/; -/* eslint-enable no-control-regex */ - -function isAscii(str) { - (0, _assertString.default)(str); - return ascii.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],163:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isBase64; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var notBase64 = /[^A-Z0-9+\/=]/i; - -function isBase64(str) { - (0, _assertString.default)(str); - var len = str.length; - - if (!len || len % 4 !== 0 || notBase64.test(str)) { - return false; - } - - var firstPaddingChar = str.indexOf('='); - return firstPaddingChar === -1 || firstPaddingChar === len - 1 || firstPaddingChar === len - 2 && str[len - 1] === '='; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],164:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isBefore; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _toDate = _interopRequireDefault(require("./toDate")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isBefore(str) { - var date = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : String(new Date()); - (0, _assertString.default)(str); - var comparison = (0, _toDate.default)(date); - var original = (0, _toDate.default)(str); - return !!(original && comparison && original < comparison); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./toDate":221,"./util/assertString":226}],165:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isBoolean; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isBoolean(str) { - (0, _assertString.default)(str); - return ['true', 'false', '1', '0'].indexOf(str) >= 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],166:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isByteLength; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -/* eslint-disable prefer-rest-params */ -function isByteLength(str, options) { - (0, _assertString.default)(str); - var min; - var max; - - if (_typeof(options) === 'object') { - min = options.min || 0; - max = options.max; - } else { - // backwards compatibility: isByteLength(str, min [, max]) - min = arguments[1]; - max = arguments[2]; - } - - var len = encodeURI(str).split(/%..|./).length - 1; - return len >= min && (typeof max === 'undefined' || len <= max); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],167:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isCreditCard; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable max-len */ -var creditCard = /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14})$/; -/* eslint-enable max-len */ - -function isCreditCard(str) { - (0, _assertString.default)(str); - var sanitized = str.replace(/[- ]+/g, ''); - - if (!creditCard.test(sanitized)) { - return false; - } - - var sum = 0; - var digit; - var tmpNum; - var shouldDouble; - - for (var i = sanitized.length - 1; i >= 0; i--) { - digit = sanitized.substring(i, i + 1); - tmpNum = parseInt(digit, 10); - - if (shouldDouble) { - tmpNum *= 2; - - if (tmpNum >= 10) { - sum += tmpNum % 10 + 1; - } else { - sum += tmpNum; - } - } else { - sum += tmpNum; - } - - shouldDouble = !shouldDouble; - } - - return !!(sum % 10 === 0 ? sanitized : false); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],168:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isCurrency; - -var _merge = _interopRequireDefault(require("./util/merge")); - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function currencyRegex(options) { - var decimal_digits = "\\d{".concat(options.digits_after_decimal[0], "}"); - options.digits_after_decimal.forEach(function (digit, index) { - if (index !== 0) decimal_digits = "".concat(decimal_digits, "|\\d{").concat(digit, "}"); - }); - var symbol = "(\\".concat(options.symbol.replace(/\./g, '\\.'), ")").concat(options.require_symbol ? '' : '?'), - negative = '-?', - whole_dollar_amount_without_sep = '[1-9]\\d*', - whole_dollar_amount_with_sep = "[1-9]\\d{0,2}(\\".concat(options.thousands_separator, "\\d{3})*"), - valid_whole_dollar_amounts = ['0', whole_dollar_amount_without_sep, whole_dollar_amount_with_sep], - whole_dollar_amount = "(".concat(valid_whole_dollar_amounts.join('|'), ")?"), - decimal_amount = "(\\".concat(options.decimal_separator, "(").concat(decimal_digits, "))").concat(options.require_decimal ? '' : '?'); - var pattern = whole_dollar_amount + (options.allow_decimal || options.require_decimal ? decimal_amount : ''); // default is negative sign before symbol, but there are two other options (besides parens) - - if (options.allow_negatives && !options.parens_for_negatives) { - if (options.negative_sign_after_digits) { - pattern += negative; - } else if (options.negative_sign_before_digits) { - pattern = negative + pattern; - } - } // South African Rand, for example, uses R 123 (space) and R-123 (no space) - - - if (options.allow_negative_sign_placeholder) { - pattern = "( (?!\\-))?".concat(pattern); - } else if (options.allow_space_after_symbol) { - pattern = " ?".concat(pattern); - } else if (options.allow_space_after_digits) { - pattern += '( (?!$))?'; - } - - if (options.symbol_after_digits) { - pattern += symbol; - } else { - pattern = symbol + pattern; - } - - if (options.allow_negatives) { - if (options.parens_for_negatives) { - pattern = "(\\(".concat(pattern, "\\)|").concat(pattern, ")"); - } else if (!(options.negative_sign_before_digits || options.negative_sign_after_digits)) { - pattern = negative + pattern; - } - } // ensure there's a dollar and/or decimal amount, and that - // it doesn't start with a space or a negative sign followed by a space - - - return new RegExp("^(?!-? )(?=.*\\d)".concat(pattern, "$")); -} - -var default_currency_options = { - symbol: '$', - require_symbol: false, - allow_space_after_symbol: false, - symbol_after_digits: false, - allow_negatives: true, - parens_for_negatives: false, - negative_sign_before_digits: false, - negative_sign_after_digits: false, - allow_negative_sign_placeholder: false, - thousands_separator: ',', - decimal_separator: '.', - allow_decimal: true, - require_decimal: false, - digits_after_decimal: [2], - allow_space_after_digits: false -}; - -function isCurrency(str, options) { - (0, _assertString.default)(str); - options = (0, _merge.default)(options, default_currency_options); - return currencyRegex(options).test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/merge":228}],169:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isDataURI; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var validMediaType = /^[a-z]+\/[a-z0-9\-\+]+$/i; -var validAttribute = /^[a-z\-]+=[a-z0-9\-]+$/i; -var validData = /^[a-z0-9!\$&'\(\)\*\+,;=\-\._~:@\/\?%\s]*$/i; - -function isDataURI(str) { - (0, _assertString.default)(str); - var data = str.split(','); - - if (data.length < 2) { - return false; - } - - var attributes = data.shift().trim().split(';'); - var schemeAndMediaType = attributes.shift(); - - if (schemeAndMediaType.substr(0, 5) !== 'data:') { - return false; - } - - var mediaType = schemeAndMediaType.substr(5); - - if (mediaType !== '' && !validMediaType.test(mediaType)) { - return false; - } - - for (var i = 0; i < attributes.length; i++) { - if (i === attributes.length - 1 && attributes[i].toLowerCase() === 'base64') {// ok - } else if (!validAttribute.test(attributes[i])) { - return false; - } - } - - for (var _i = 0; _i < data.length; _i++) { - if (!validData.test(data[_i])) { - return false; - } - } - - return true; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],170:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isDecimal; - -var _merge = _interopRequireDefault(require("./util/merge")); - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _includes = _interopRequireDefault(require("./util/includes")); - -var _alpha = require("./alpha"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function decimalRegExp(options) { - var regExp = new RegExp("^[-+]?([0-9]+)?(\\".concat(_alpha.decimal[options.locale], "[0-9]{").concat(options.decimal_digits, "})").concat(options.force_decimal ? '' : '?', "$")); - return regExp; -} - -var default_decimal_options = { - force_decimal: false, - decimal_digits: '1,', - locale: 'en-US' -}; -var blacklist = ['', '-', '+']; - -function isDecimal(str, options) { - (0, _assertString.default)(str); - options = (0, _merge.default)(options, default_decimal_options); - - if (options.locale in _alpha.decimal) { - return !(0, _includes.default)(blacklist, str.replace(/ /g, '')) && decimalRegExp(options).test(str); - } - - throw new Error("Invalid locale '".concat(options.locale, "'")); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./alpha":154,"./util/assertString":226,"./util/includes":227,"./util/merge":228}],171:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isDivisibleBy; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _toFloat = _interopRequireDefault(require("./toFloat")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isDivisibleBy(str, num) { - (0, _assertString.default)(str); - return (0, _toFloat.default)(str) % parseInt(num, 10) === 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./toFloat":222,"./util/assertString":226}],172:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isEmail; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _merge = _interopRequireDefault(require("./util/merge")); - -var _isByteLength = _interopRequireDefault(require("./isByteLength")); - -var _isFQDN = _interopRequireDefault(require("./isFQDN")); - -var _isIP = _interopRequireDefault(require("./isIP")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var default_email_options = { - allow_display_name: false, - require_display_name: false, - allow_utf8_local_part: true, - require_tld: true -}; -/* eslint-disable max-len */ - -/* eslint-disable no-control-regex */ - -var displayName = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\,\.\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\s]*<(.+)>$/i; -var emailUserPart = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i; -var gmailUserPart = /^[a-z\d]+$/; -var quotedEmailUser = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i; -var emailUserUtf8Part = /^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i; -var quotedEmailUserUtf8 = /^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i; -/* eslint-enable max-len */ - -/* eslint-enable no-control-regex */ - -function isEmail(str, options) { - (0, _assertString.default)(str); - options = (0, _merge.default)(options, default_email_options); - - if (options.require_display_name || options.allow_display_name) { - var display_email = str.match(displayName); - - if (display_email) { - str = display_email[1]; - } else if (options.require_display_name) { - return false; - } - } - - var parts = str.split('@'); - var domain = parts.pop(); - var user = parts.join('@'); - var lower_domain = domain.toLowerCase(); - - if (options.domain_specific_validation && (lower_domain === 'gmail.com' || lower_domain === 'googlemail.com')) { - /* - Previously we removed dots for gmail addresses before validating. - This was removed because it allows `multiple..dots@gmail.com` - to be reported as valid, but it is not. - Gmail only normalizes single dots, removing them from here is pointless, - should be done in normalizeEmail - */ - user = user.toLowerCase(); // Removing sub-address from username before gmail validation - - var username = user.split('+')[0]; // Dots are not included in gmail length restriction - - if (!(0, _isByteLength.default)(username.replace('.', ''), { - min: 6, - max: 30 - })) { - return false; - } - - var _user_parts = username.split('.'); - - for (var i = 0; i < _user_parts.length; i++) { - if (!gmailUserPart.test(_user_parts[i])) { - return false; - } - } - } - - if (!(0, _isByteLength.default)(user, { - max: 64 - }) || !(0, _isByteLength.default)(domain, { - max: 254 - })) { - return false; - } - - if (!(0, _isFQDN.default)(domain, { - require_tld: options.require_tld - })) { - if (!options.allow_ip_domain) { - return false; - } - - if (!(0, _isIP.default)(domain)) { - if (!domain.startsWith('[') || !domain.endsWith(']')) { - return false; - } - - var noBracketdomain = domain.substr(1, domain.length - 2); - - if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) { - return false; - } - } - } - - if (user[0] === '"') { - user = user.slice(1, user.length - 1); - return options.allow_utf8_local_part ? quotedEmailUserUtf8.test(user) : quotedEmailUser.test(user); - } - - var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart; - var user_parts = user.split('.'); - - for (var _i = 0; _i < user_parts.length; _i++) { - if (!pattern.test(user_parts[_i])) { - return false; - } - } - - return true; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isByteLength":166,"./isFQDN":174,"./isIP":181,"./util/assertString":226,"./util/merge":228}],173:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isEmpty; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _merge = _interopRequireDefault(require("./util/merge")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var default_is_empty_options = { - ignore_whitespace: false -}; - -function isEmpty(str, options) { - (0, _assertString.default)(str); - options = (0, _merge.default)(options, default_is_empty_options); - return (options.ignore_whitespace ? str.trim().length : str.length) === 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/merge":228}],174:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isFQDN; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _merge = _interopRequireDefault(require("./util/merge")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var default_fqdn_options = { - require_tld: true, - allow_underscores: false, - allow_trailing_dot: false -}; - -function isFQDN(str, options) { - (0, _assertString.default)(str); - options = (0, _merge.default)(options, default_fqdn_options); - /* Remove the optional trailing dot before checking validity */ - - if (options.allow_trailing_dot && str[str.length - 1] === '.') { - str = str.substring(0, str.length - 1); - } - - var parts = str.split('.'); - - for (var i = 0; i < parts.length; i++) { - if (parts[i].length > 63) { - return false; - } - } - - if (options.require_tld) { - var tld = parts.pop(); - - if (!parts.length || !/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) { - return false; - } // disallow spaces - - - if (/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(tld)) { - return false; - } - } - - for (var part, _i = 0; _i < parts.length; _i++) { - part = parts[_i]; - - if (options.allow_underscores) { - part = part.replace(/_/g, ''); - } - - if (!/^[a-z\u00a1-\uffff0-9-]+$/i.test(part)) { - return false; - } // disallow full-width chars - - - if (/[\uff01-\uff5e]/.test(part)) { - return false; - } - - if (part[0] === '-' || part[part.length - 1] === '-') { - return false; - } - } - - return true; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/merge":228}],175:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isFloat; -exports.locales = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _alpha = require("./alpha"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isFloat(str, options) { - (0, _assertString.default)(str); - options = options || {}; - var float = new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(options.locale ? _alpha.decimal[options.locale] : '.', "[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$")); - - if (str === '' || str === '.' || str === '-' || str === '+') { - return false; - } - - var value = parseFloat(str.replace(',', '.')); - return float.test(str) && (!options.hasOwnProperty('min') || value >= options.min) && (!options.hasOwnProperty('max') || value <= options.max) && (!options.hasOwnProperty('lt') || value < options.lt) && (!options.hasOwnProperty('gt') || value > options.gt); -} - -var locales = Object.keys(_alpha.decimal); -exports.locales = locales; -},{"./alpha":154,"./util/assertString":226}],176:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isFullWidth; -exports.fullWidth = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var fullWidth = /[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/; -exports.fullWidth = fullWidth; - -function isFullWidth(str) { - (0, _assertString.default)(str); - return fullWidth.test(str); -} -},{"./util/assertString":226}],177:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isHalfWidth; -exports.halfWidth = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var halfWidth = /[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/; -exports.halfWidth = halfWidth; - -function isHalfWidth(str) { - (0, _assertString.default)(str); - return halfWidth.test(str); -} -},{"./util/assertString":226}],178:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isHash; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var lengths = { - md5: 32, - md4: 32, - sha1: 40, - sha256: 64, - sha384: 96, - sha512: 128, - ripemd128: 32, - ripemd160: 40, - tiger128: 32, - tiger160: 40, - tiger192: 48, - crc32: 8, - crc32b: 8 -}; - -function isHash(str, algorithm) { - (0, _assertString.default)(str); - var hash = new RegExp("^[a-f0-9]{".concat(lengths[algorithm], "}$")); - return hash.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],179:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isHexColor; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var hexcolor = /^#?([0-9A-F]{3}|[0-9A-F]{6})$/i; - -function isHexColor(str) { - (0, _assertString.default)(str); - return hexcolor.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],180:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isHexadecimal; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var hexadecimal = /^[0-9A-F]+$/i; - -function isHexadecimal(str) { - (0, _assertString.default)(str); - return hexadecimal.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],181:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isIP; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var ipv4Maybe = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/; -var ipv6Block = /^[0-9A-F]{1,4}$/i; - -function isIP(str) { - var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; - (0, _assertString.default)(str); - version = String(version); - - if (!version) { - return isIP(str, 4) || isIP(str, 6); - } else if (version === '4') { - if (!ipv4Maybe.test(str)) { - return false; - } - - var parts = str.split('.').sort(function (a, b) { - return a - b; - }); - return parts[3] <= 255; - } else if (version === '6') { - var blocks = str.split(':'); - var foundOmissionBlock = false; // marker to indicate :: - // At least some OS accept the last 32 bits of an IPv6 address - // (i.e. 2 of the blocks) in IPv4 notation, and RFC 3493 says - // that '::ffff:a.b.c.d' is valid for IPv4-mapped IPv6 addresses, - // and '::a.b.c.d' is deprecated, but also valid. - - var foundIPv4TransitionBlock = isIP(blocks[blocks.length - 1], 4); - var expectedNumberOfBlocks = foundIPv4TransitionBlock ? 7 : 8; - - if (blocks.length > expectedNumberOfBlocks) { - return false; - } // initial or final :: - - - if (str === '::') { - return true; - } else if (str.substr(0, 2) === '::') { - blocks.shift(); - blocks.shift(); - foundOmissionBlock = true; - } else if (str.substr(str.length - 2) === '::') { - blocks.pop(); - blocks.pop(); - foundOmissionBlock = true; - } - - for (var i = 0; i < blocks.length; ++i) { - // test for a :: which can not be at the string start/end - // since those cases have been handled above - if (blocks[i] === '' && i > 0 && i < blocks.length - 1) { - if (foundOmissionBlock) { - return false; // multiple :: in address - } - - foundOmissionBlock = true; - } else if (foundIPv4TransitionBlock && i === blocks.length - 1) {// it has been checked before that the last - // block is a valid IPv4 address - } else if (!ipv6Block.test(blocks[i])) { - return false; - } - } - - if (foundOmissionBlock) { - return blocks.length >= 1; - } - - return blocks.length === expectedNumberOfBlocks; - } - - return false; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],182:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isIPRange; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _isIP = _interopRequireDefault(require("./isIP")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var subnetMaybe = /^\d{1,2}$/; - -function isIPRange(str) { - (0, _assertString.default)(str); - var parts = str.split('/'); // parts[0] -> ip, parts[1] -> subnet - - if (parts.length !== 2) { - return false; - } - - if (!subnetMaybe.test(parts[1])) { - return false; - } // Disallow preceding 0 i.e. 01, 02, ... - - - if (parts[1].length > 1 && parts[1].startsWith('0')) { - return false; - } - - return (0, _isIP.default)(parts[0], 4) && parts[1] <= 32 && parts[1] >= 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isIP":181,"./util/assertString":226}],183:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISBN; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var isbn10Maybe = /^(?:[0-9]{9}X|[0-9]{10})$/; -var isbn13Maybe = /^(?:[0-9]{13})$/; -var factor = [1, 3]; - -function isISBN(str) { - var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; - (0, _assertString.default)(str); - version = String(version); - - if (!version) { - return isISBN(str, 10) || isISBN(str, 13); - } - - var sanitized = str.replace(/[\s-]+/g, ''); - var checksum = 0; - var i; - - if (version === '10') { - if (!isbn10Maybe.test(sanitized)) { - return false; - } - - for (i = 0; i < 9; i++) { - checksum += (i + 1) * sanitized.charAt(i); - } - - if (sanitized.charAt(9) === 'X') { - checksum += 10 * 10; - } else { - checksum += 10 * sanitized.charAt(9); - } - - if (checksum % 11 === 0) { - return !!sanitized; - } - } else if (version === '13') { - if (!isbn13Maybe.test(sanitized)) { - return false; - } - - for (i = 0; i < 12; i++) { - checksum += factor[i % 2] * sanitized.charAt(i); - } - - if (sanitized.charAt(12) - (10 - checksum % 10) % 10 === 0) { - return !!sanitized; - } - } - - return false; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],184:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISIN; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var isin = /^[A-Z]{2}[0-9A-Z]{9}[0-9]$/; - -function isISIN(str) { - (0, _assertString.default)(str); - - if (!isin.test(str)) { - return false; - } - - var checksumStr = str.replace(/[A-Z]/g, function (character) { - return parseInt(character, 36); - }); - var sum = 0; - var digit; - var tmpNum; - var shouldDouble = true; - - for (var i = checksumStr.length - 2; i >= 0; i--) { - digit = checksumStr.substring(i, i + 1); - tmpNum = parseInt(digit, 10); - - if (shouldDouble) { - tmpNum *= 2; - - if (tmpNum >= 10) { - sum += tmpNum + 1; - } else { - sum += tmpNum; - } - } else { - sum += tmpNum; - } - - shouldDouble = !shouldDouble; - } - - return parseInt(str.substr(str.length - 1), 10) === (10000 - sum) % 10; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],185:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISO31661Alpha2; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _includes = _interopRequireDefault(require("./util/includes")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// from https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 -var validISO31661Alpha2CountriesCodes = ['AD', 'AE', 'AF', 'AG', 'AI', 'AL', 'AM', 'AO', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AW', 'AX', 'AZ', 'BA', 'BB', 'BD', 'BE', 'BF', 'BG', 'BH', 'BI', 'BJ', 'BL', 'BM', 'BN', 'BO', 'BQ', 'BR', 'BS', 'BT', 'BV', 'BW', 'BY', 'BZ', 'CA', 'CC', 'CD', 'CF', 'CG', 'CH', 'CI', 'CK', 'CL', 'CM', 'CN', 'CO', 'CR', 'CU', 'CV', 'CW', 'CX', 'CY', 'CZ', 'DE', 'DJ', 'DK', 'DM', 'DO', 'DZ', 'EC', 'EE', 'EG', 'EH', 'ER', 'ES', 'ET', 'FI', 'FJ', 'FK', 'FM', 'FO', 'FR', 'GA', 'GB', 'GD', 'GE', 'GF', 'GG', 'GH', 'GI', 'GL', 'GM', 'GN', 'GP', 'GQ', 'GR', 'GS', 'GT', 'GU', 'GW', 'GY', 'HK', 'HM', 'HN', 'HR', 'HT', 'HU', 'ID', 'IE', 'IL', 'IM', 'IN', 'IO', 'IQ', 'IR', 'IS', 'IT', 'JE', 'JM', 'JO', 'JP', 'KE', 'KG', 'KH', 'KI', 'KM', 'KN', 'KP', 'KR', 'KW', 'KY', 'KZ', 'LA', 'LB', 'LC', 'LI', 'LK', 'LR', 'LS', 'LT', 'LU', 'LV', 'LY', 'MA', 'MC', 'MD', 'ME', 'MF', 'MG', 'MH', 'MK', 'ML', 'MM', 'MN', 'MO', 'MP', 'MQ', 'MR', 'MS', 'MT', 'MU', 'MV', 'MW', 'MX', 'MY', 'MZ', 'NA', 'NC', 'NE', 'NF', 'NG', 'NI', 'NL', 'NO', 'NP', 'NR', 'NU', 'NZ', 'OM', 'PA', 'PE', 'PF', 'PG', 'PH', 'PK', 'PL', 'PM', 'PN', 'PR', 'PS', 'PT', 'PW', 'PY', 'QA', 'RE', 'RO', 'RS', 'RU', 'RW', 'SA', 'SB', 'SC', 'SD', 'SE', 'SG', 'SH', 'SI', 'SJ', 'SK', 'SL', 'SM', 'SN', 'SO', 'SR', 'SS', 'ST', 'SV', 'SX', 'SY', 'SZ', 'TC', 'TD', 'TF', 'TG', 'TH', 'TJ', 'TK', 'TL', 'TM', 'TN', 'TO', 'TR', 'TT', 'TV', 'TW', 'TZ', 'UA', 'UG', 'UM', 'US', 'UY', 'UZ', 'VA', 'VC', 'VE', 'VG', 'VI', 'VN', 'VU', 'WF', 'WS', 'YE', 'YT', 'ZA', 'ZM', 'ZW']; - -function isISO31661Alpha2(str) { - (0, _assertString.default)(str); - return (0, _includes.default)(validISO31661Alpha2CountriesCodes, str.toUpperCase()); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/includes":227}],186:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISO31661Alpha3; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _includes = _interopRequireDefault(require("./util/includes")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// from https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3 -var validISO31661Alpha3CountriesCodes = ['AFG', 'ALA', 'ALB', 'DZA', 'ASM', 'AND', 'AGO', 'AIA', 'ATA', 'ATG', 'ARG', 'ARM', 'ABW', 'AUS', 'AUT', 'AZE', 'BHS', 'BHR', 'BGD', 'BRB', 'BLR', 'BEL', 'BLZ', 'BEN', 'BMU', 'BTN', 'BOL', 'BES', 'BIH', 'BWA', 'BVT', 'BRA', 'IOT', 'BRN', 'BGR', 'BFA', 'BDI', 'KHM', 'CMR', 'CAN', 'CPV', 'CYM', 'CAF', 'TCD', 'CHL', 'CHN', 'CXR', 'CCK', 'COL', 'COM', 'COG', 'COD', 'COK', 'CRI', 'CIV', 'HRV', 'CUB', 'CUW', 'CYP', 'CZE', 'DNK', 'DJI', 'DMA', 'DOM', 'ECU', 'EGY', 'SLV', 'GNQ', 'ERI', 'EST', 'ETH', 'FLK', 'FRO', 'FJI', 'FIN', 'FRA', 'GUF', 'PYF', 'ATF', 'GAB', 'GMB', 'GEO', 'DEU', 'GHA', 'GIB', 'GRC', 'GRL', 'GRD', 'GLP', 'GUM', 'GTM', 'GGY', 'GIN', 'GNB', 'GUY', 'HTI', 'HMD', 'VAT', 'HND', 'HKG', 'HUN', 'ISL', 'IND', 'IDN', 'IRN', 'IRQ', 'IRL', 'IMN', 'ISR', 'ITA', 'JAM', 'JPN', 'JEY', 'JOR', 'KAZ', 'KEN', 'KIR', 'PRK', 'KOR', 'KWT', 'KGZ', 'LAO', 'LVA', 'LBN', 'LSO', 'LBR', 'LBY', 'LIE', 'LTU', 'LUX', 'MAC', 'MKD', 'MDG', 'MWI', 'MYS', 'MDV', 'MLI', 'MLT', 'MHL', 'MTQ', 'MRT', 'MUS', 'MYT', 'MEX', 'FSM', 'MDA', 'MCO', 'MNG', 'MNE', 'MSR', 'MAR', 'MOZ', 'MMR', 'NAM', 'NRU', 'NPL', 'NLD', 'NCL', 'NZL', 'NIC', 'NER', 'NGA', 'NIU', 'NFK', 'MNP', 'NOR', 'OMN', 'PAK', 'PLW', 'PSE', 'PAN', 'PNG', 'PRY', 'PER', 'PHL', 'PCN', 'POL', 'PRT', 'PRI', 'QAT', 'REU', 'ROU', 'RUS', 'RWA', 'BLM', 'SHN', 'KNA', 'LCA', 'MAF', 'SPM', 'VCT', 'WSM', 'SMR', 'STP', 'SAU', 'SEN', 'SRB', 'SYC', 'SLE', 'SGP', 'SXM', 'SVK', 'SVN', 'SLB', 'SOM', 'ZAF', 'SGS', 'SSD', 'ESP', 'LKA', 'SDN', 'SUR', 'SJM', 'SWZ', 'SWE', 'CHE', 'SYR', 'TWN', 'TJK', 'TZA', 'THA', 'TLS', 'TGO', 'TKL', 'TON', 'TTO', 'TUN', 'TUR', 'TKM', 'TCA', 'TUV', 'UGA', 'UKR', 'ARE', 'GBR', 'USA', 'UMI', 'URY', 'UZB', 'VUT', 'VEN', 'VNM', 'VGB', 'VIR', 'WLF', 'ESH', 'YEM', 'ZMB', 'ZWE']; - -function isISO31661Alpha3(str) { - (0, _assertString.default)(str); - return (0, _includes.default)(validISO31661Alpha3CountriesCodes, str.toUpperCase()); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/includes":227}],187:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISO8601; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable max-len */ -// from http://goo.gl/0ejHHW -var iso8601 = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/; -/* eslint-enable max-len */ - -var isValidDate = function isValidDate(str) { - // str must have passed the ISO8601 check - // this check is meant to catch invalid dates - // like 2009-02-31 - // first check for ordinal dates - var ordinalMatch = str.match(/^(\d{4})-?(\d{3})([ T]{1}\.*|$)/); - - if (ordinalMatch) { - var oYear = Number(ordinalMatch[1]); - var oDay = Number(ordinalMatch[2]); // if is leap year - - if (oYear % 4 === 0 && oYear % 100 !== 0) return oDay <= 366; - return oDay <= 365; - } - - var match = str.match(/(\d{4})-?(\d{0,2})-?(\d*)/).map(Number); - var year = match[1]; - var month = match[2]; - var day = match[3]; - var monthString = month ? "0".concat(month).slice(-2) : month; - var dayString = day ? "0".concat(day).slice(-2) : day; // create a date object and compare - - var d = new Date("".concat(year, "-").concat(monthString || '01', "-").concat(dayString || '01')); - if (isNaN(d.getUTCFullYear())) return false; - - if (month && day) { - return d.getUTCFullYear() === year && d.getUTCMonth() + 1 === month && d.getUTCDate() === day; - } - - return true; -}; - -function isISO8601(str, options) { - (0, _assertString.default)(str); - var check = iso8601.test(str); - if (!options) return check; - if (check && options.strict) return isValidDate(str); - return check; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],188:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISRC; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// see http://isrc.ifpi.org/en/isrc-standard/code-syntax -var isrc = /^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/; - -function isISRC(str) { - (0, _assertString.default)(str); - return isrc.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],189:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isISSN; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var issn = '^\\d{4}-?\\d{3}[\\dX]$'; - -function isISSN(str) { - var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - (0, _assertString.default)(str); - var testIssn = issn; - testIssn = options.require_hyphen ? testIssn.replace('?', '') : testIssn; - testIssn = options.case_sensitive ? new RegExp(testIssn) : new RegExp(testIssn, 'i'); - - if (!testIssn.test(str)) { - return false; - } - - var digits = str.replace('-', '').toUpperCase(); - var checksum = 0; - - for (var i = 0; i < digits.length; i++) { - var digit = digits[i]; - checksum += (digit === 'X' ? 10 : +digit) * (8 - i); - } - - return checksum % 11 === 0; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],190:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isIdentityCard; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var validators = { - ES: function ES(str) { - (0, _assertString.default)(str); - var DNI = /^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/; - var charsValue = { - X: 0, - Y: 1, - Z: 2 - }; - var controlDigits = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E']; // sanitize user input - - var sanitized = str.trim().toUpperCase(); // validate the data structure - - if (!DNI.test(sanitized)) { - return false; - } // validate the control digit - - - var number = sanitized.slice(0, -1).replace(/[X,Y,Z]/g, function (char) { - return charsValue[char]; - }); - return sanitized.endsWith(controlDigits[number % 23]); - } -}; - -function isIdentityCard(str) { - var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'any'; - (0, _assertString.default)(str); - - if (locale in validators) { - return validators[locale](str); - } else if (locale === 'any') { - for (var key in validators) { - if (validators.hasOwnProperty(key)) { - var validator = validators[key]; - - if (validator(str)) { - return true; - } - } - } - - return false; - } - - throw new Error("Invalid locale '".concat(locale, "'")); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],191:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isIn; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _toString = _interopRequireDefault(require("./util/toString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function isIn(str, options) { - (0, _assertString.default)(str); - var i; - - if (Object.prototype.toString.call(options) === '[object Array]') { - var array = []; - - for (i in options) { - if ({}.hasOwnProperty.call(options, i)) { - array[i] = (0, _toString.default)(options[i]); - } - } - - return array.indexOf(str) >= 0; - } else if (_typeof(options) === 'object') { - return options.hasOwnProperty(str); - } else if (options && typeof options.indexOf === 'function') { - return options.indexOf(str) >= 0; - } - - return false; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226,"./util/toString":229}],192:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isInt; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var int = /^(?:[-+]?(?:0|[1-9][0-9]*))$/; -var intLeadingZeroes = /^[-+]?[0-9]+$/; - -function isInt(str, options) { - (0, _assertString.default)(str); - options = options || {}; // Get the regex to use for testing, based on whether - // leading zeroes are allowed or not. - - var regex = options.hasOwnProperty('allow_leading_zeroes') && !options.allow_leading_zeroes ? int : intLeadingZeroes; // Check min/max/lt/gt - - var minCheckPassed = !options.hasOwnProperty('min') || str >= options.min; - var maxCheckPassed = !options.hasOwnProperty('max') || str <= options.max; - var ltCheckPassed = !options.hasOwnProperty('lt') || str < options.lt; - var gtCheckPassed = !options.hasOwnProperty('gt') || str > options.gt; - return regex.test(str) && minCheckPassed && maxCheckPassed && ltCheckPassed && gtCheckPassed; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],193:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isJSON; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function isJSON(str) { - (0, _assertString.default)(str); - - try { - var obj = JSON.parse(str); - return !!obj && _typeof(obj) === 'object'; - } catch (e) { - /* ignore */ - } - - return false; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],194:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isJWT; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var jwt = /^([A-Za-z0-9\-_~+\/]+[=]{0,2})\.([A-Za-z0-9\-_~+\/]+[=]{0,2})(?:\.([A-Za-z0-9\-_~+\/]+[=]{0,2}))?$/; - -function isJWT(str) { - (0, _assertString.default)(str); - return jwt.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],195:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = _default; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var lat = /^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/; -var long = /^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/; - -function _default(str) { - (0, _assertString.default)(str); - if (!str.includes(',')) return false; - var pair = str.split(','); - return lat.test(pair[0]) && long.test(pair[1]); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],196:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isLength; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -/* eslint-disable prefer-rest-params */ -function isLength(str, options) { - (0, _assertString.default)(str); - var min; - var max; - - if (_typeof(options) === 'object') { - min = options.min || 0; - max = options.max; - } else { - // backwards compatibility: isLength(str, min [, max]) - min = arguments[1]; - max = arguments[2]; - } - - var surrogatePairs = str.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g) || []; - var len = str.length - surrogatePairs.length; - return len >= min && (typeof max === 'undefined' || len <= max); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],197:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isLowercase; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isLowercase(str) { - (0, _assertString.default)(str); - return str === str.toLowerCase(); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],198:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMACAddress; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var macAddress = /^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$/; -var macAddressNoColons = /^([0-9a-fA-F]){12}$/; - -function isMACAddress(str, options) { - (0, _assertString.default)(str); - - if (options && options.no_colons) { - return macAddressNoColons.test(str); - } - - return macAddress.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],199:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMD5; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var md5 = /^[a-f0-9]{32}$/; - -function isMD5(str) { - (0, _assertString.default)(str); - return md5.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],200:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMagnetURI; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var magnetURI = /^magnet:\?xt=urn:[a-z0-9]+:[a-z0-9]{32,40}&dn=.+&tr=.+$/i; - -function isMagnetURI(url) { - (0, _assertString.default)(url); - return magnetURI.test(url.trim()); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],201:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMimeType; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* - Checks if the provided string matches to a correct Media type format (MIME type) - - This function only checks is the string format follows the - etablished rules by the according RFC specifications. - This function supports 'charset' in textual media types - (https://tools.ietf.org/html/rfc6657). - - This function does not check against all the media types listed - by the IANA (https://www.iana.org/assignments/media-types/media-types.xhtml) - because of lightness purposes : it would require to include - all these MIME types in this librairy, which would weigh it - significantly. This kind of effort maybe is not worth for the use that - this function has in this entire librairy. - - More informations in the RFC specifications : - - https://tools.ietf.org/html/rfc2045 - - https://tools.ietf.org/html/rfc2046 - - https://tools.ietf.org/html/rfc7231#section-3.1.1.1 - - https://tools.ietf.org/html/rfc7231#section-3.1.1.5 -*/ -// Match simple MIME types -// NB : -// Subtype length must not exceed 100 characters. -// This rule does not comply to the RFC specs (what is the max length ?). -var mimeTypeSimple = /^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+]{1,100}$/i; // eslint-disable-line max-len -// Handle "charset" in "text/*" - -var mimeTypeText = /^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i; // eslint-disable-line max-len -// Handle "boundary" in "multipart/*" - -var mimeTypeMultipart = /^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i; // eslint-disable-line max-len - -function isMimeType(str) { - (0, _assertString.default)(str); - return mimeTypeSimple.test(str) || mimeTypeText.test(str) || mimeTypeMultipart.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],202:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMobilePhone; -exports.locales = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable max-len */ -var phones = { - 'ar-AE': /^((\+?971)|0)?5[024568]\d{7}$/, - 'ar-DZ': /^(\+?213|0)(5|6|7)\d{8}$/, - 'ar-EG': /^((\+?20)|0)?1[012]\d{8}$/, - 'ar-IQ': /^(\+?964|0)?7[0-9]\d{8}$/, - 'ar-JO': /^(\+?962|0)?7[789]\d{7}$/, - 'ar-KW': /^(\+?965)[569]\d{7}$/, - 'ar-SA': /^(!?(\+?966)|0)?5\d{8}$/, - 'ar-SY': /^(!?(\+?963)|0)?9\d{8}$/, - 'ar-TN': /^(\+?216)?[2459]\d{7}$/, - 'be-BY': /^(\+?375)?(24|25|29|33|44)\d{7}$/, - 'bg-BG': /^(\+?359|0)?8[789]\d{7}$/, - 'bn-BD': /\+?(88)?0?1[356789][0-9]{8}\b/, - 'cs-CZ': /^(\+?420)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/, - 'da-DK': /^(\+?45)?\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2}$/, - 'de-DE': /^(\+49)?0?1(5[0-25-9]\d|6([23]|0\d?)|7([0-57-9]|6\d))\d{7}$/, - 'el-GR': /^(\+?30|0)?(69\d{8})$/, - 'en-AU': /^(\+?61|0)4\d{8}$/, - 'en-GB': /^(\+?44|0)7\d{9}$/, - 'en-GH': /^(\+233|0)(20|50|24|54|27|57|26|56|23|28)\d{7}$/, - 'en-HK': /^(\+?852\-?)?[456789]\d{3}\-?\d{4}$/, - 'en-IE': /^(\+?353|0)8[356789]\d{7}$/, - 'en-IN': /^(\+?91|0)?[6789]\d{9}$/, - 'en-KE': /^(\+?254|0)?[7]\d{8}$/, - 'en-MU': /^(\+?230|0)?\d{8}$/, - 'en-NG': /^(\+?234|0)?[789]\d{9}$/, - 'en-NZ': /^(\+?64|0)[28]\d{7,9}$/, - 'en-PK': /^((\+92)|(0092))-{0,1}\d{3}-{0,1}\d{7}$|^\d{11}$|^\d{4}-\d{7}$/, - 'en-RW': /^(\+?250|0)?[7]\d{8}$/, - 'en-SG': /^(\+65)?[89]\d{7}$/, - 'en-TZ': /^(\+?255|0)?[67]\d{8}$/, - 'en-UG': /^(\+?256|0)?[7]\d{8}$/, - 'en-US': /^((\+1|1)?( |-)?)?(\([2-9][0-9]{2}\)|[2-9][0-9]{2})( |-)?([2-9][0-9]{2}( |-)?[0-9]{4})$/, - 'en-ZA': /^(\+?27|0)\d{9}$/, - 'en-ZM': /^(\+?26)?09[567]\d{7}$/, - 'es-ES': /^(\+?34)?(6\d{1}|7[1234])\d{7}$/, - 'es-MX': /^(\+?52)?(1|01)?\d{10,11}$/, - 'es-UY': /^(\+598|0)9[1-9][\d]{6}$/, - 'et-EE': /^(\+?372)?\s?(5|8[1-4])\s?([0-9]\s?){6,7}$/, - 'fa-IR': /^(\+?98[\-\s]?|0)9[0-39]\d[\-\s]?\d{3}[\-\s]?\d{4}$/, - 'fi-FI': /^(\+?358|0)\s?(4(0|1|2|4|5|6)?|50)\s?(\d\s?){4,8}\d$/, - 'fo-FO': /^(\+?298)?\s?\d{2}\s?\d{2}\s?\d{2}$/, - 'fr-FR': /^(\+?33|0)[67]\d{8}$/, - 'he-IL': /^(\+972|0)([23489]|5[012345689]|77)[1-9]\d{6}$/, - 'hu-HU': /^(\+?36)(20|30|70)\d{7}$/, - 'id-ID': /^(\+?62|0)8(1[123456789]|2[1238]|3[1238]|5[12356789]|7[78]|9[56789]|8[123456789])([\s?|\d]{5,11})$/, - 'it-IT': /^(\+?39)?\s?3\d{2} ?\d{6,7}$/, - 'ja-JP': /^(\+?81|0)[789]0[ \-]?[1-9]\d{2}[ \-]?\d{5}$/, - 'kk-KZ': /^(\+?7|8)?7\d{9}$/, - 'kl-GL': /^(\+?299)?\s?\d{2}\s?\d{2}\s?\d{2}$/, - 'ko-KR': /^((\+?82)[ \-]?)?0?1([0|1|6|7|8|9]{1})[ \-]?\d{3,4}[ \-]?\d{4}$/, - 'lt-LT': /^(\+370|8)\d{8}$/, - 'ms-MY': /^(\+?6?01){1}(([0145]{1}(\-|\s)?\d{7,8})|([236789]{1}(\s|\-)?\d{7}))$/, - 'nb-NO': /^(\+?47)?[49]\d{7}$/, - 'nl-BE': /^(\+?32|0)4?\d{8}$/, - 'nn-NO': /^(\+?47)?[49]\d{7}$/, - 'pl-PL': /^(\+?48)? ?[5-8]\d ?\d{3} ?\d{2} ?\d{2}$/, - 'pt-BR': /(?=^(\+?5{2}\-?|0)[1-9]{2}\-?\d{4}\-?\d{4}$)(^(\+?5{2}\-?|0)[1-9]{2}\-?[6-9]{1}\d{3}\-?\d{4}$)|(^(\+?5{2}\-?|0)[1-9]{2}\-?9[6-9]{1}\d{3}\-?\d{4}$)/, - 'pt-PT': /^(\+?351)?9[1236]\d{7}$/, - 'ro-RO': /^(\+?4?0)\s?7\d{2}(\/|\s|\.|\-)?\d{3}(\s|\.|\-)?\d{3}$/, - 'ru-RU': /^(\+?7|8)?9\d{9}$/, - 'sl-SI': /^(\+386\s?|0)(\d{1}\s?\d{3}\s?\d{2}\s?\d{2}|\d{2}\s?\d{3}\s?\d{3})$/, - 'sk-SK': /^(\+?421)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/, - 'sr-RS': /^(\+3816|06)[- \d]{5,9}$/, - 'sv-SE': /^(\+?46|0)[\s\-]?7[\s\-]?[02369]([\s\-]?\d){7}$/, - 'th-TH': /^(\+66|66|0)\d{9}$/, - 'tr-TR': /^(\+?90|0)?5\d{9}$/, - 'uk-UA': /^(\+?38|8)?0\d{9}$/, - 'vi-VN': /^(\+?84|0)((3([2-9]))|(5([689]))|(7([0|6-9]))|(8([1-5]))|(9([0-9])))([0-9]{7})$/, - 'zh-CN': /^((\+|00)86)?1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$/, - 'zh-TW': /^(\+?886\-?|0)?9\d{8}$/ -}; -/* eslint-enable max-len */ -// aliases - -phones['en-CA'] = phones['en-US']; -phones['fr-BE'] = phones['nl-BE']; -phones['zh-HK'] = phones['en-HK']; - -function isMobilePhone(str, locale, options) { - (0, _assertString.default)(str); - - if (options && options.strictMode && !str.startsWith('+')) { - return false; - } - - if (Array.isArray(locale)) { - return locale.some(function (key) { - if (phones.hasOwnProperty(key)) { - var phone = phones[key]; - - if (phone.test(str)) { - return true; - } - } - - return false; - }); - } else if (locale in phones) { - return phones[locale].test(str); // alias falsey locale as 'any' - } else if (!locale || locale === 'any') { - for (var key in phones) { - if (phones.hasOwnProperty(key)) { - var phone = phones[key]; - - if (phone.test(str)) { - return true; - } - } - } - - return false; - } - - throw new Error("Invalid locale '".concat(locale, "'")); -} - -var locales = Object.keys(phones); -exports.locales = locales; -},{"./util/assertString":226}],203:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMongoId; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _isHexadecimal = _interopRequireDefault(require("./isHexadecimal")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isMongoId(str) { - (0, _assertString.default)(str); - return (0, _isHexadecimal.default)(str) && str.length === 24; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isHexadecimal":180,"./util/assertString":226}],204:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isMultibyte; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable no-control-regex */ -var multibyte = /[^\x00-\x7F]/; -/* eslint-enable no-control-regex */ - -function isMultibyte(str) { - (0, _assertString.default)(str); - return multibyte.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],205:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isNumeric; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var numeric = /^[+-]?([0-9]*[.])?[0-9]+$/; -var numericNoSymbols = /^[0-9]+$/; - -function isNumeric(str, options) { - (0, _assertString.default)(str); - - if (options && options.no_symbols) { - return numericNoSymbols.test(str); - } - - return numeric.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],206:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isPort; - -var _isInt = _interopRequireDefault(require("./isInt")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isPort(str) { - return (0, _isInt.default)(str, { - min: 0, - max: 65535 - }); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isInt":192}],207:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = _default; -exports.locales = void 0; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// common patterns -var threeDigit = /^\d{3}$/; -var fourDigit = /^\d{4}$/; -var fiveDigit = /^\d{5}$/; -var sixDigit = /^\d{6}$/; -var patterns = { - AD: /^AD\d{3}$/, - AT: fourDigit, - AU: fourDigit, - BE: fourDigit, - BG: fourDigit, - CA: /^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i, - CH: fourDigit, - CZ: /^\d{3}\s?\d{2}$/, - DE: fiveDigit, - DK: fourDigit, - DZ: fiveDigit, - EE: fiveDigit, - ES: fiveDigit, - FI: fiveDigit, - FR: /^\d{2}\s?\d{3}$/, - GB: /^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i, - GR: /^\d{3}\s?\d{2}$/, - HR: /^([1-5]\d{4}$)/, - HU: fourDigit, - IL: fiveDigit, - IN: sixDigit, - IS: threeDigit, - IT: fiveDigit, - JP: /^\d{3}\-\d{4}$/, - KE: fiveDigit, - LI: /^(948[5-9]|949[0-7])$/, - LT: /^LT\-\d{5}$/, - LU: fourDigit, - LV: /^LV\-\d{4}$/, - MX: fiveDigit, - NL: /^\d{4}\s?[a-z]{2}$/i, - NO: fourDigit, - PL: /^\d{2}\-\d{3}$/, - PT: /^\d{4}\-\d{3}?$/, - RO: sixDigit, - RU: sixDigit, - SA: fiveDigit, - SE: /^\d{3}\s?\d{2}$/, - SI: fourDigit, - SK: /^\d{3}\s?\d{2}$/, - TN: fourDigit, - TW: /^\d{3}(\d{2})?$/, - UA: fiveDigit, - US: /^\d{5}(-\d{4})?$/, - ZA: fourDigit, - ZM: fiveDigit -}; -var locales = Object.keys(patterns); -exports.locales = locales; - -function _default(str, locale) { - (0, _assertString.default)(str); - - if (locale in patterns) { - return patterns[locale].test(str); - } else if (locale === 'any') { - for (var key in patterns) { - if (patterns.hasOwnProperty(key)) { - var pattern = patterns[key]; - - if (pattern.test(str)) { - return true; - } - } - } - - return false; - } - - throw new Error("Invalid locale '".concat(locale, "'")); -} -},{"./util/assertString":226}],208:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isRFC3339; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* Based on https://tools.ietf.org/html/rfc3339#section-5.6 */ -var dateFullYear = /[0-9]{4}/; -var dateMonth = /(0[1-9]|1[0-2])/; -var dateMDay = /([12]\d|0[1-9]|3[01])/; -var timeHour = /([01][0-9]|2[0-3])/; -var timeMinute = /[0-5][0-9]/; -var timeSecond = /([0-5][0-9]|60)/; -var timeSecFrac = /(\.[0-9]+)?/; -var timeNumOffset = new RegExp("[-+]".concat(timeHour.source, ":").concat(timeMinute.source)); -var timeOffset = new RegExp("([zZ]|".concat(timeNumOffset.source, ")")); -var partialTime = new RegExp("".concat(timeHour.source, ":").concat(timeMinute.source, ":").concat(timeSecond.source).concat(timeSecFrac.source)); -var fullDate = new RegExp("".concat(dateFullYear.source, "-").concat(dateMonth.source, "-").concat(dateMDay.source)); -var fullTime = new RegExp("".concat(partialTime.source).concat(timeOffset.source)); -var rfc3339 = new RegExp("".concat(fullDate.source, "[ tT]").concat(fullTime.source)); - -function isRFC3339(str) { - (0, _assertString.default)(str); - return rfc3339.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],209:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isSurrogatePair; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var surrogatePair = /[\uD800-\uDBFF][\uDC00-\uDFFF]/; - -function isSurrogatePair(str) { - (0, _assertString.default)(str); - return surrogatePair.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],210:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isURL; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _isFQDN = _interopRequireDefault(require("./isFQDN")); - -var _isIP = _interopRequireDefault(require("./isIP")); - -var _merge = _interopRequireDefault(require("./util/merge")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var default_url_options = { - protocols: ['http', 'https', 'ftp'], - require_tld: true, - require_protocol: false, - require_host: true, - require_valid_protocol: true, - allow_underscores: false, - allow_trailing_dot: false, - allow_protocol_relative_urls: false -}; -var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/; - -function isRegExp(obj) { - return Object.prototype.toString.call(obj) === '[object RegExp]'; -} - -function checkHost(host, matches) { - for (var i = 0; i < matches.length; i++) { - var match = matches[i]; - - if (host === match || isRegExp(match) && match.test(host)) { - return true; - } - } - - return false; -} - -function isURL(url, options) { - (0, _assertString.default)(url); - - if (!url || url.length >= 2083 || /[\s<>]/.test(url)) { - return false; - } - - if (url.indexOf('mailto:') === 0) { - return false; - } - - options = (0, _merge.default)(options, default_url_options); - var protocol, auth, host, hostname, port, port_str, split, ipv6; - split = url.split('#'); - url = split.shift(); - split = url.split('?'); - url = split.shift(); - split = url.split('://'); - - if (split.length > 1) { - protocol = split.shift().toLowerCase(); - - if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) { - return false; - } - } else if (options.require_protocol) { - return false; - } else if (url.substr(0, 2) === '//') { - if (!options.allow_protocol_relative_urls) { - return false; - } - - split[0] = url.substr(2); - } - - url = split.join('://'); - - if (url === '') { - return false; - } - - split = url.split('/'); - url = split.shift(); - - if (url === '' && !options.require_host) { - return true; - } - - split = url.split('@'); - - if (split.length > 1) { - if (options.disallow_auth) { - return false; - } - - auth = split.shift(); - - if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) { - return false; - } - } - - hostname = split.join('@'); - port_str = null; - ipv6 = null; - var ipv6_match = hostname.match(wrapped_ipv6); - - if (ipv6_match) { - host = ''; - ipv6 = ipv6_match[1]; - port_str = ipv6_match[2] || null; - } else { - split = hostname.split(':'); - host = split.shift(); - - if (split.length) { - port_str = split.join(':'); - } - } - - if (port_str !== null) { - port = parseInt(port_str, 10); - - if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) { - return false; - } - } - - if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) { - return false; - } - - host = host || ipv6; - - if (options.host_whitelist && !checkHost(host, options.host_whitelist)) { - return false; - } - - if (options.host_blacklist && checkHost(host, options.host_blacklist)) { - return false; - } - - return true; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isFQDN":174,"./isIP":181,"./util/assertString":226,"./util/merge":228}],211:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isUUID; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var uuid = { - 3: /^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i, - 4: /^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, - 5: /^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, - all: /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i -}; - -function isUUID(str) { - var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'all'; - (0, _assertString.default)(str); - var pattern = uuid[version]; - return pattern && pattern.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],212:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isUppercase; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isUppercase(str) { - (0, _assertString.default)(str); - return str === str.toUpperCase(); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],213:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isVariableWidth; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _isFullWidth = require("./isFullWidth"); - -var _isHalfWidth = require("./isHalfWidth"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isVariableWidth(str) { - (0, _assertString.default)(str); - return _isFullWidth.fullWidth.test(str) && _isHalfWidth.halfWidth.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./isFullWidth":176,"./isHalfWidth":177,"./util/assertString":226}],214:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isWhitelisted; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isWhitelisted(str, chars) { - (0, _assertString.default)(str); - - for (var i = str.length - 1; i >= 0; i--) { - if (chars.indexOf(str[i]) === -1) { - return false; - } - } - - return true; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],215:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = ltrim; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function ltrim(str, chars) { - (0, _assertString.default)(str); - var pattern = chars ? new RegExp("^[".concat(chars, "]+"), 'g') : /^\s+/g; - return str.replace(pattern, ''); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],216:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = matches; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function matches(str, pattern, modifiers) { - (0, _assertString.default)(str); - - if (Object.prototype.toString.call(pattern) !== '[object RegExp]') { - pattern = new RegExp(pattern, modifiers); - } - - return pattern.test(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],217:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = normalizeEmail; - -var _merge = _interopRequireDefault(require("./util/merge")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var default_normalize_email_options = { - // The following options apply to all email addresses - // Lowercases the local part of the email address. - // Please note this may violate RFC 5321 as per http://stackoverflow.com/a/9808332/192024). - // The domain is always lowercased, as per RFC 1035 - all_lowercase: true, - // The following conversions are specific to GMail - // Lowercases the local part of the GMail address (known to be case-insensitive) - gmail_lowercase: true, - // Removes dots from the local part of the email address, as that's ignored by GMail - gmail_remove_dots: true, - // Removes the subaddress (e.g. "+foo") from the email address - gmail_remove_subaddress: true, - // Conversts the googlemail.com domain to gmail.com - gmail_convert_googlemaildotcom: true, - // The following conversions are specific to Outlook.com / Windows Live / Hotmail - // Lowercases the local part of the Outlook.com address (known to be case-insensitive) - outlookdotcom_lowercase: true, - // Removes the subaddress (e.g. "+foo") from the email address - outlookdotcom_remove_subaddress: true, - // The following conversions are specific to Yahoo - // Lowercases the local part of the Yahoo address (known to be case-insensitive) - yahoo_lowercase: true, - // Removes the subaddress (e.g. "-foo") from the email address - yahoo_remove_subaddress: true, - // The following conversions are specific to Yandex - // Lowercases the local part of the Yandex address (known to be case-insensitive) - yandex_lowercase: true, - // The following conversions are specific to iCloud - // Lowercases the local part of the iCloud address (known to be case-insensitive) - icloud_lowercase: true, - // Removes the subaddress (e.g. "+foo") from the email address - icloud_remove_subaddress: true -}; // List of domains used by iCloud - -var icloud_domains = ['icloud.com', 'me.com']; // List of domains used by Outlook.com and its predecessors -// This list is likely incomplete. -// Partial reference: -// https://blogs.office.com/2013/04/17/outlook-com-gets-two-step-verification-sign-in-by-alias-and-new-international-domains/ - -var outlookdotcom_domains = ['hotmail.at', 'hotmail.be', 'hotmail.ca', 'hotmail.cl', 'hotmail.co.il', 'hotmail.co.nz', 'hotmail.co.th', 'hotmail.co.uk', 'hotmail.com', 'hotmail.com.ar', 'hotmail.com.au', 'hotmail.com.br', 'hotmail.com.gr', 'hotmail.com.mx', 'hotmail.com.pe', 'hotmail.com.tr', 'hotmail.com.vn', 'hotmail.cz', 'hotmail.de', 'hotmail.dk', 'hotmail.es', 'hotmail.fr', 'hotmail.hu', 'hotmail.id', 'hotmail.ie', 'hotmail.in', 'hotmail.it', 'hotmail.jp', 'hotmail.kr', 'hotmail.lv', 'hotmail.my', 'hotmail.ph', 'hotmail.pt', 'hotmail.sa', 'hotmail.sg', 'hotmail.sk', 'live.be', 'live.co.uk', 'live.com', 'live.com.ar', 'live.com.mx', 'live.de', 'live.es', 'live.eu', 'live.fr', 'live.it', 'live.nl', 'msn.com', 'outlook.at', 'outlook.be', 'outlook.cl', 'outlook.co.il', 'outlook.co.nz', 'outlook.co.th', 'outlook.com', 'outlook.com.ar', 'outlook.com.au', 'outlook.com.br', 'outlook.com.gr', 'outlook.com.pe', 'outlook.com.tr', 'outlook.com.vn', 'outlook.cz', 'outlook.de', 'outlook.dk', 'outlook.es', 'outlook.fr', 'outlook.hu', 'outlook.id', 'outlook.ie', 'outlook.in', 'outlook.it', 'outlook.jp', 'outlook.kr', 'outlook.lv', 'outlook.my', 'outlook.ph', 'outlook.pt', 'outlook.sa', 'outlook.sg', 'outlook.sk', 'passport.com']; // List of domains used by Yahoo Mail -// This list is likely incomplete - -var yahoo_domains = ['rocketmail.com', 'yahoo.ca', 'yahoo.co.uk', 'yahoo.com', 'yahoo.de', 'yahoo.fr', 'yahoo.in', 'yahoo.it', 'ymail.com']; // List of domains used by yandex.ru - -var yandex_domains = ['yandex.ru', 'yandex.ua', 'yandex.kz', 'yandex.com', 'yandex.by', 'ya.ru']; // replace single dots, but not multiple consecutive dots - -function dotsReplacer(match) { - if (match.length > 1) { - return match; - } - - return ''; -} - -function normalizeEmail(email, options) { - options = (0, _merge.default)(options, default_normalize_email_options); - var raw_parts = email.split('@'); - var domain = raw_parts.pop(); - var user = raw_parts.join('@'); - var parts = [user, domain]; // The domain is always lowercased, as it's case-insensitive per RFC 1035 - - parts[1] = parts[1].toLowerCase(); - - if (parts[1] === 'gmail.com' || parts[1] === 'googlemail.com') { - // Address is GMail - if (options.gmail_remove_subaddress) { - parts[0] = parts[0].split('+')[0]; - } - - if (options.gmail_remove_dots) { - // this does not replace consecutive dots like example..email@gmail.com - parts[0] = parts[0].replace(/\.+/g, dotsReplacer); - } - - if (!parts[0].length) { - return false; - } - - if (options.all_lowercase || options.gmail_lowercase) { - parts[0] = parts[0].toLowerCase(); - } - - parts[1] = options.gmail_convert_googlemaildotcom ? 'gmail.com' : parts[1]; - } else if (icloud_domains.indexOf(parts[1]) >= 0) { - // Address is iCloud - if (options.icloud_remove_subaddress) { - parts[0] = parts[0].split('+')[0]; - } - - if (!parts[0].length) { - return false; - } - - if (options.all_lowercase || options.icloud_lowercase) { - parts[0] = parts[0].toLowerCase(); - } - } else if (outlookdotcom_domains.indexOf(parts[1]) >= 0) { - // Address is Outlook.com - if (options.outlookdotcom_remove_subaddress) { - parts[0] = parts[0].split('+')[0]; - } - - if (!parts[0].length) { - return false; - } - - if (options.all_lowercase || options.outlookdotcom_lowercase) { - parts[0] = parts[0].toLowerCase(); - } - } else if (yahoo_domains.indexOf(parts[1]) >= 0) { - // Address is Yahoo - if (options.yahoo_remove_subaddress) { - var components = parts[0].split('-'); - parts[0] = components.length > 1 ? components.slice(0, -1).join('-') : components[0]; - } - - if (!parts[0].length) { - return false; - } - - if (options.all_lowercase || options.yahoo_lowercase) { - parts[0] = parts[0].toLowerCase(); - } - } else if (yandex_domains.indexOf(parts[1]) >= 0) { - if (options.all_lowercase || options.yandex_lowercase) { - parts[0] = parts[0].toLowerCase(); - } - - parts[1] = 'yandex.ru'; // all yandex domains are equal, 1st preffered - } else if (options.all_lowercase) { - // Any other address - parts[0] = parts[0].toLowerCase(); - } - - return parts.join('@'); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/merge":228}],218:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = rtrim; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function rtrim(str, chars) { - (0, _assertString.default)(str); - var pattern = chars ? new RegExp("[".concat(chars, "]")) : /\s/; - var idx = str.length - 1; - - for (; idx >= 0 && pattern.test(str[idx]); idx--) { - ; - } - - return idx < str.length ? str.substr(0, idx + 1) : str; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],219:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = stripLow; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -var _blacklist = _interopRequireDefault(require("./blacklist")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function stripLow(str, keep_new_lines) { - (0, _assertString.default)(str); - var chars = keep_new_lines ? '\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F' : '\\x00-\\x1F\\x7F'; - return (0, _blacklist.default)(str, chars); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./blacklist":155,"./util/assertString":226}],220:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = toBoolean; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function toBoolean(str, strict) { - (0, _assertString.default)(str); - - if (strict) { - return str === '1' || str === 'true'; - } - - return str !== '0' && str !== 'false' && str !== ''; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],221:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = toDate; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function toDate(date) { - (0, _assertString.default)(date); - date = Date.parse(date); - return !isNaN(date) ? new Date(date) : null; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],222:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = toFloat; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function toFloat(str) { - (0, _assertString.default)(str); - return parseFloat(str); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],223:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = toInt; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function toInt(str, radix) { - (0, _assertString.default)(str); - return parseInt(str, radix || 10); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],224:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = trim; - -var _rtrim = _interopRequireDefault(require("./rtrim")); - -var _ltrim = _interopRequireDefault(require("./ltrim")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function trim(str, chars) { - return (0, _rtrim.default)((0, _ltrim.default)(str, chars), chars); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./ltrim":215,"./rtrim":218}],225:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = unescape; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function unescape(str) { - (0, _assertString.default)(str); - return str.replace(/&/g, '&').replace(/"/g, '"').replace(/'/g, "'").replace(/</g, '<').replace(/>/g, '>').replace(///g, '/').replace(/\/g, '\\').replace(/`/g, '`'); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],226:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = assertString; - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function assertString(input) { - var isString = typeof input === 'string' || input instanceof String; - - if (!isString) { - var invalidType; - - if (input === null) { - invalidType = 'null'; - } else { - invalidType = _typeof(input); - - if (invalidType === 'object' && input.constructor && input.constructor.hasOwnProperty('name')) { - invalidType = input.constructor.name; - } else { - invalidType = "a ".concat(invalidType); - } - } - - throw new TypeError("Expected string but received ".concat(invalidType, ".")); - } -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{}],227:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var includes = function includes(arr, val) { - return arr.some(function (arrVal) { - return val === arrVal; - }); -}; - -var _default = includes; -exports.default = _default; -module.exports = exports.default; -module.exports.default = exports.default; -},{}],228:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = merge; - -function merge() { - var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var defaults = arguments.length > 1 ? arguments[1] : undefined; - - for (var key in defaults) { - if (typeof obj[key] === 'undefined') { - obj[key] = defaults[key]; - } - } - - return obj; -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{}],229:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = toString; - -function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function toString(input) { - if (_typeof(input) === 'object' && input !== null) { - if (typeof input.toString === 'function') { - input = input.toString(); - } else { - input = '[object Object]'; - } - } else if (input === null || typeof input === 'undefined' || isNaN(input) && !input.length) { - input = ''; - } - - return String(input); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{}],230:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = whitelist; - -var _assertString = _interopRequireDefault(require("./util/assertString")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function whitelist(str, chars) { - (0, _assertString.default)(str); - return str.replace(new RegExp("[^".concat(chars, "]+"), 'g'), ''); -} - -module.exports = exports.default; -module.exports.default = exports.default; -},{"./util/assertString":226}],231:[function(require,module,exports){ -module.exports = extend - -var hasOwnProperty = Object.prototype.hasOwnProperty; - -function extend() { - var target = {} - - for (var i = 0; i < arguments.length; i++) { - var source = arguments[i] - - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - target[key] = source[key] - } - } - } - - return target -} - -},{}],232:[function(require,module,exports){ -"use strict"; - -module.exports = { - - INVALID_TYPE: "Expected type {0} but found type {1}", - INVALID_FORMAT: "Object didn't pass validation for format {0}: {1}", - ENUM_MISMATCH: "No enum match for: {0}", - ENUM_CASE_MISMATCH: "Enum does not match case for: {0}", - ANY_OF_MISSING: "Data does not match any schemas from 'anyOf'", - ONE_OF_MISSING: "Data does not match any schemas from 'oneOf'", - ONE_OF_MULTIPLE: "Data is valid against more than one schema from 'oneOf'", - NOT_PASSED: "Data matches schema from 'not'", - - // Array errors - ARRAY_LENGTH_SHORT: "Array is too short ({0}), minimum {1}", - ARRAY_LENGTH_LONG: "Array is too long ({0}), maximum {1}", - ARRAY_UNIQUE: "Array items are not unique (indexes {0} and {1})", - ARRAY_ADDITIONAL_ITEMS: "Additional items not allowed", - - // Numeric errors - MULTIPLE_OF: "Value {0} is not a multiple of {1}", - MINIMUM: "Value {0} is less than minimum {1}", - MINIMUM_EXCLUSIVE: "Value {0} is equal or less than exclusive minimum {1}", - MAXIMUM: "Value {0} is greater than maximum {1}", - MAXIMUM_EXCLUSIVE: "Value {0} is equal or greater than exclusive maximum {1}", - - // Object errors - OBJECT_PROPERTIES_MINIMUM: "Too few properties defined ({0}), minimum {1}", - OBJECT_PROPERTIES_MAXIMUM: "Too many properties defined ({0}), maximum {1}", - OBJECT_MISSING_REQUIRED_PROPERTY: "Missing required property: {0}", - OBJECT_ADDITIONAL_PROPERTIES: "Additional properties not allowed: {0}", - OBJECT_DEPENDENCY_KEY: "Dependency failed - key must exist: {0} (due to key: {1})", - - // String errors - MIN_LENGTH: "String is too short ({0} chars), minimum {1}", - MAX_LENGTH: "String is too long ({0} chars), maximum {1}", - PATTERN: "String does not match pattern {0}: {1}", - - // Schema validation errors - KEYWORD_TYPE_EXPECTED: "Keyword '{0}' is expected to be of type '{1}'", - KEYWORD_UNDEFINED_STRICT: "Keyword '{0}' must be defined in strict mode", - KEYWORD_UNEXPECTED: "Keyword '{0}' is not expected to appear in the schema", - KEYWORD_MUST_BE: "Keyword '{0}' must be {1}", - KEYWORD_DEPENDENCY: "Keyword '{0}' requires keyword '{1}'", - KEYWORD_PATTERN: "Keyword '{0}' is not a valid RegExp pattern: {1}", - KEYWORD_VALUE_TYPE: "Each element of keyword '{0}' array must be a '{1}'", - UNKNOWN_FORMAT: "There is no validation function for format '{0}'", - CUSTOM_MODE_FORCE_PROPERTIES: "{0} must define at least one property if present", - - // Remote errors - REF_UNRESOLVED: "Reference has not been resolved during compilation: {0}", - UNRESOLVABLE_REFERENCE: "Reference could not be resolved: {0}", - SCHEMA_NOT_REACHABLE: "Validator was not able to read schema with uri: {0}", - SCHEMA_TYPE_EXPECTED: "Schema is expected to be of type 'object'", - SCHEMA_NOT_AN_OBJECT: "Schema is not an object: {0}", - ASYNC_TIMEOUT: "{0} asynchronous task(s) have timed out after {1} ms", - PARENT_SCHEMA_VALIDATION_FAILED: "Schema failed to validate against its parent schema, see inner errors for details.", - REMOTE_NOT_VALID: "Remote reference didn't compile successfully: {0}" - -}; - -},{}],233:[function(require,module,exports){ -/*jshint maxlen: false*/ - -var validator = require("validator"); - -var FormatValidators = { - "date": function (date) { - if (typeof date !== "string") { - return true; - } - // full-date from http://tools.ietf.org/html/rfc3339#section-5.6 - var matches = /^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(date); - if (matches === null) { - return false; - } - // var year = matches[1]; - // var month = matches[2]; - // var day = matches[3]; - if (matches[2] < "01" || matches[2] > "12" || matches[3] < "01" || matches[3] > "31") { - return false; - } - return true; - }, - "date-time": function (dateTime) { - if (typeof dateTime !== "string") { - return true; - } - // date-time from http://tools.ietf.org/html/rfc3339#section-5.6 - var s = dateTime.toLowerCase().split("t"); - if (!FormatValidators.date(s[0])) { - return false; - } - var matches = /^([0-9]{2}):([0-9]{2}):([0-9]{2})(.[0-9]+)?(z|([+-][0-9]{2}:[0-9]{2}))$/.exec(s[1]); - if (matches === null) { - return false; - } - // var hour = matches[1]; - // var minute = matches[2]; - // var second = matches[3]; - // var fraction = matches[4]; - // var timezone = matches[5]; - if (matches[1] > "23" || matches[2] > "59" || matches[3] > "59") { - return false; - } - return true; - }, - "email": function (email) { - if (typeof email !== "string") { - return true; - } - return validator.isEmail(email, { "require_tld": true }); - }, - "hostname": function (hostname) { - if (typeof hostname !== "string") { - return true; - } - /* - http://json-schema.org/latest/json-schema-validation.html#anchor114 - A string instance is valid against this attribute if it is a valid - representation for an Internet host name, as defined by RFC 1034, section 3.1 [RFC1034]. - - http://tools.ietf.org/html/rfc1034#section-3.5 - - ::= any one of the ten digits 0 through 9 - var digit = /[0-9]/; - - ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case - var letter = /[a-zA-Z]/; - - ::= | - var letDig = /[0-9a-zA-Z]/; - - ::= | "-" - var letDigHyp = /[-0-9a-zA-Z]/; - - ::= | - var ldhStr = /[-0-9a-zA-Z]+/; - -