diff options
author | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
commit | bbff7403fbf46f9ad92240ac213df8d30ef31b64 (patch) | |
tree | c58400ec5124da1c7d56b01aea83309f80a56c3b /node_modules/espurify | |
parent | 003fb34971cf63466184351b4db5f7c67df4f444 (diff) | |
download | wallet-core-bbff7403fbf46f9ad92240ac213df8d30ef31b64.tar.xz |
update packages
Diffstat (limited to 'node_modules/espurify')
-rw-r--r-- | node_modules/espurify/CHANGELOG.md | 16 | ||||
-rw-r--r-- | node_modules/espurify/MIT-LICENSE.txt | 2 | ||||
-rw-r--r-- | node_modules/espurify/README.md | 1 | ||||
-rw-r--r-- | node_modules/espurify/build/espurify.js | 1711 | ||||
-rw-r--r-- | node_modules/espurify/index.js | 6 | ||||
-rw-r--r-- | node_modules/espurify/lib/ast-properties.js | 132 | ||||
-rw-r--r-- | node_modules/espurify/lib/clone-ast.js | 113 | ||||
-rw-r--r-- | node_modules/espurify/lib/create-whitelist.js | 18 | ||||
-rw-r--r-- | node_modules/espurify/package.json | 26 |
9 files changed, 1508 insertions, 517 deletions
diff --git a/node_modules/espurify/CHANGELOG.md b/node_modules/espurify/CHANGELOG.md index ef726cfea..9102cc5fc 100644 --- a/node_modules/espurify/CHANGELOG.md +++ b/node_modules/espurify/CHANGELOG.md @@ -1,3 +1,19 @@ +### [1.8.1](https://github.com/estools/espurify/releases/tag/v1.8.1) (2018-07-10) + + +#### Bug Fixes + +* [Deal with circular references in AST](https://github.com/estools/espurify/pull/11) + + +## [1.8.0](https://github.com/estools/espurify/releases/tag/v1.8.0) (2018-05-10) + + +#### Features + +* [Support ES2018 (i.e. async iteration statement: `for-await-of`)](https://github.com/estools/espurify/pull/10) + + ## [1.7.0](https://github.com/estools/espurify/releases/tag/v1.7.0) (2017-02-24) diff --git a/node_modules/espurify/MIT-LICENSE.txt b/node_modules/espurify/MIT-LICENSE.txt index 67bb2dc52..f269d2557 100644 --- a/node_modules/espurify/MIT-LICENSE.txt +++ b/node_modules/espurify/MIT-LICENSE.txt @@ -1,4 +1,4 @@ -Copyright (c) 2014-2017 Takuto Wada, https://github.com/estools/espurify +Copyright (c) 2014-2018 Takuto Wada, https://github.com/estools/espurify Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff --git a/node_modules/espurify/README.md b/node_modules/espurify/README.md index ae06a028c..df40085ad 100644 --- a/node_modules/espurify/README.md +++ b/node_modules/espurify/README.md @@ -6,6 +6,7 @@ Clone new AST without extra properties [![Build Status](https://travis-ci.org/estools/espurify.svg?branch=master)](https://travis-ci.org/estools/espurify) [![NPM version](https://badge.fury.io/js/espurify.svg)](https://badge.fury.io/js/espurify) [![License](https://img.shields.io/badge/license-MIT-brightgreen.svg)](https://github.com/estools/espurify/blob/master/MIT-LICENSE.txt) +[![Code Style](https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg)](https://github.com/Flet/semistandard) API diff --git a/node_modules/espurify/build/espurify.js b/node_modules/espurify/build/espurify.js index c2c965ada..68616bb26 100644 --- a/node_modules/espurify/build/espurify.js +++ b/node_modules/espurify/build/espurify.js @@ -6,23 +6,22 @@ * license: MIT (http://opensource.org/licenses/MIT) * author: Takuto Wada <takuto.wada@gmail.com> * homepage: https://github.com/estools/espurify - * version: 1.7.0 + * version: 1.8.1 * * core-js: * license: MIT (http://opensource.org/licenses/MIT) - * maintainers: zloirock <zloirock@zloirock.ru> * homepage: https://github.com/zloirock/core-js#readme - * version: 2.4.1 + * version: 2.5.7 * * This header is generated by licensify (https://github.com/twada/licensify) */ -(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.espurify = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw (f.code="MODULE_NOT_FOUND", f)}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){ +(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.espurify = 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<t.length;i++)o(t[i]);return o}return r})()({1:[function(_dereq_,module,exports){ /** * espurify - Clone new AST without extra properties - * + * * https://github.com/estools/espurify * - * Copyright (c) 2014-2017 Takuto Wada + * Copyright (c) 2014-2018 Takuto Wada * Licensed under the MIT license. * https://github.com/estools/espurify/blob/master/MIT-LICENSE.txt */ @@ -32,7 +31,7 @@ var createWhitelist = _dereq_('./lib/create-whitelist'); var cloneWithWhitelist = _dereq_('./lib/clone-ast'); function createCloneFunction (options) { - return cloneWithWhitelist(createWhitelist(options)); + return cloneWithWhitelist(createWhitelist(options)); } var espurify = createCloneFunction(); @@ -42,72 +41,72 @@ module.exports = espurify; },{"./lib/clone-ast":3,"./lib/create-whitelist":4}],2:[function(_dereq_,module,exports){ module.exports = { - ArrayExpression: ['type', 'elements'], - ArrayPattern: ['type', 'elements'], - ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'], - AssignmentExpression: ['type', 'operator', 'left', 'right'], - AssignmentPattern: ['type', 'left', 'right'], - AwaitExpression: ['type', 'argument'], - BinaryExpression: ['type', 'operator', 'left', 'right'], - BlockStatement: ['type', 'body'], - BreakStatement: ['type', 'label'], - CallExpression: ['type', 'callee', 'arguments'], - CatchClause: ['type', 'param', 'guard', 'body'], - ClassBody: ['type', 'body'], - ClassDeclaration: ['type', 'id', 'superClass', 'body'], - ClassExpression: ['type', 'id', 'superClass', 'body'], - ConditionalExpression: ['type', 'test', 'consequent', 'alternate'], - ContinueStatement: ['type', 'label'], - DebuggerStatement: ['type'], - DoWhileStatement: ['type', 'body', 'test'], - EmptyStatement: ['type'], - ExportAllDeclaration: ['type', 'source'], - ExportDefaultDeclaration: ['type', 'declaration'], - ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'], - ExportSpecifier: ['type', 'exported', 'local'], - ExpressionStatement: ['type', 'expression'], - ForInStatement: ['type', 'left', 'right', 'body'], - ForOfStatement: ['type', 'left', 'right', 'body'], - ForStatement: ['type', 'init', 'test', 'update', 'body'], - FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'], - FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'], - Identifier: ['type', 'name'], - IfStatement: ['type', 'test', 'consequent', 'alternate'], - ImportDeclaration: ['type', 'specifiers', 'source'], - ImportDefaultSpecifier: ['type', 'local'], - ImportNamespaceSpecifier: ['type', 'local'], - ImportSpecifier: ['type', 'imported', 'local'], - LabeledStatement: ['type', 'label', 'body'], - Literal: ['type', 'value', 'regex'], - LogicalExpression: ['type', 'operator', 'left', 'right'], - MemberExpression: ['type', 'object', 'property', 'computed'], - MetaProperty: ['type', 'meta', 'property'], - MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'], - NewExpression: ['type', 'callee', 'arguments'], - ObjectExpression: ['type', 'properties'], - ObjectPattern: ['type', 'properties'], - Program: ['type', 'body', 'sourceType'], - Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'], - RestElement: ['type', 'argument'], - ReturnStatement: ['type', 'argument'], - SequenceExpression: ['type', 'expressions'], - SpreadElement: ['type', 'argument'], - Super: ['type'], - SwitchCase: ['type', 'test', 'consequent'], - SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'], - TaggedTemplateExpression: ['type', 'tag', 'quasi'], - TemplateElement: ['type', 'tail', 'value'], - TemplateLiteral: ['type', 'quasis', 'expressions'], - ThisExpression: ['type'], - ThrowStatement: ['type', 'argument'], - TryStatement: ['type', 'block', 'handler', 'finalizer'], - UnaryExpression: ['type', 'operator', 'prefix', 'argument'], - UpdateExpression: ['type', 'operator', 'argument', 'prefix'], - VariableDeclaration: ['type', 'declarations', 'kind'], - VariableDeclarator: ['type', 'id', 'init'], - WhileStatement: ['type', 'test', 'body'], - WithStatement: ['type', 'object', 'body'], - YieldExpression: ['type', 'argument', 'delegate'] + ArrayExpression: ['type', 'elements'], + ArrayPattern: ['type', 'elements'], + ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'], + AssignmentExpression: ['type', 'operator', 'left', 'right'], + AssignmentPattern: ['type', 'left', 'right'], + AwaitExpression: ['type', 'argument'], + BinaryExpression: ['type', 'operator', 'left', 'right'], + BlockStatement: ['type', 'body'], + BreakStatement: ['type', 'label'], + CallExpression: ['type', 'callee', 'arguments'], + CatchClause: ['type', 'param', 'guard', 'body'], + ClassBody: ['type', 'body'], + ClassDeclaration: ['type', 'id', 'superClass', 'body'], + ClassExpression: ['type', 'id', 'superClass', 'body'], + ConditionalExpression: ['type', 'test', 'consequent', 'alternate'], + ContinueStatement: ['type', 'label'], + DebuggerStatement: ['type'], + DoWhileStatement: ['type', 'body', 'test'], + EmptyStatement: ['type'], + ExportAllDeclaration: ['type', 'source'], + ExportDefaultDeclaration: ['type', 'declaration'], + ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'], + ExportSpecifier: ['type', 'exported', 'local'], + ExpressionStatement: ['type', 'expression'], + ForInStatement: ['type', 'left', 'right', 'body'], + ForOfStatement: ['type', 'left', 'right', 'body', 'await'], + ForStatement: ['type', 'init', 'test', 'update', 'body'], + FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'], + FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'], + Identifier: ['type', 'name'], + IfStatement: ['type', 'test', 'consequent', 'alternate'], + ImportDeclaration: ['type', 'specifiers', 'source'], + ImportDefaultSpecifier: ['type', 'local'], + ImportNamespaceSpecifier: ['type', 'local'], + ImportSpecifier: ['type', 'imported', 'local'], + LabeledStatement: ['type', 'label', 'body'], + Literal: ['type', 'value', 'regex'], + LogicalExpression: ['type', 'operator', 'left', 'right'], + MemberExpression: ['type', 'object', 'property', 'computed'], + MetaProperty: ['type', 'meta', 'property'], + MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'], + NewExpression: ['type', 'callee', 'arguments'], + ObjectExpression: ['type', 'properties'], + ObjectPattern: ['type', 'properties'], + Program: ['type', 'body', 'sourceType'], + Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'], + RestElement: ['type', 'argument'], + ReturnStatement: ['type', 'argument'], + SequenceExpression: ['type', 'expressions'], + SpreadElement: ['type', 'argument'], + Super: ['type'], + SwitchCase: ['type', 'test', 'consequent'], + SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'], + TaggedTemplateExpression: ['type', 'tag', 'quasi'], + TemplateElement: ['type', 'tail', 'value'], + TemplateLiteral: ['type', 'quasis', 'expressions'], + ThisExpression: ['type'], + ThrowStatement: ['type', 'argument'], + TryStatement: ['type', 'block', 'handler', 'finalizer'], + UnaryExpression: ['type', 'operator', 'prefix', 'argument'], + UpdateExpression: ['type', 'operator', 'argument', 'prefix'], + VariableDeclaration: ['type', 'declarations', 'kind'], + VariableDeclarator: ['type', 'id', 'init'], + WhileStatement: ['type', 'test', 'body'], + WithStatement: ['type', 'object', 'body'], + YieldExpression: ['type', 'argument', 'delegate'] }; },{}],3:[function(_dereq_,module,exports){ @@ -116,72 +115,87 @@ module.exports = { var isArray = _dereq_('core-js/library/fn/array/is-array'); var objectKeys = _dereq_('core-js/library/fn/object/keys'); var indexOf = _dereq_('core-js/library/fn/array/index-of'); +var Map = _dereq_('core-js/library/fn/map'); var reduce = _dereq_('core-js/library/fn/array/reduce'); module.exports = function cloneWithWhitelist (astWhiteList) { - var whitelist = reduce(objectKeys(astWhiteList), function (props, key) { - var propNames = astWhiteList[key]; - var prepend = (indexOf(propNames, 'type') === -1) ? ['type'] : []; - props[key] = prepend.concat(propNames); - return props; - }, {}); - - function cloneNodeOrObject (obj) { - var props = obj.type ? whitelist[obj.type] : null; - if (props) { - return cloneNode(obj, props); - } else { - return cloneObject(obj); - } + var whitelist = reduce(objectKeys(astWhiteList), function (props, key) { + var propNames = astWhiteList[key]; + var prepend = (indexOf(propNames, 'type') === -1) ? ['type'] : []; + props[key] = prepend.concat(propNames || []); + return props; + }, {}); + + function cloneNodeOrObject (obj, seen) { + var props = obj.type ? whitelist[obj.type] : null; + if (props) { + return cloneNode(obj, props, seen); + } else { + return cloneObject(obj, seen); } + } - function cloneArray (ary) { - var i = ary.length, clone = []; - while (i--) { - clone[i] = cloneOf(ary[i]); - } - return clone; + function cloneArray (ary, seen) { + var i = ary.length; + var clone = []; + while (i--) { + clone[i] = cloneOf(ary[i], seen); } + return clone; + } - function cloneNode (node, props) { - var i, len, key, clone = {}; - for (i = 0, len = props.length; i < len; i += 1) { - key = props[i]; - if (node.hasOwnProperty(key)) { - clone[key] = cloneOf(node[key]); - } - } - return clone; + function cloneNode (node, props, seen) { + var i, len, key; + var clone = {}; + for (i = 0, len = props.length; i < len; i += 1) { + key = props[i]; + if (node.hasOwnProperty(key)) { + clone[key] = cloneOf(node[key], seen); + } } + return clone; + } - function cloneObject (obj) { - var props = objectKeys(obj); - var i, len, key, clone = {}; - for (i = 0, len = props.length; i < len; i += 1) { - key = props[i]; - clone[key] = cloneOf(obj[key]); - } - return clone; + function cloneObject (obj, seen) { + var props = objectKeys(obj); + var i, len, key, value; + var clone = {}; + for (i = 0, len = props.length; i < len; i += 1) { + key = props[i]; + value = obj[key]; + if (seen.has(value)) { + continue; + } + clone[key] = cloneOf(value, seen); } + return clone; + } - function cloneOf (val) { - if (typeof val === 'object' && val !== null) { - if (val instanceof RegExp) { - return new RegExp(val); - } else if (isArray(val)) { - return cloneArray(val); - } else { - return cloneNodeOrObject(val); - } - } else { - return val; - } + function cloneOf (val, seen) { + if (typeof val === 'object' && val !== null) { + seen.set(val, true); + if (val instanceof RegExp) { + return new RegExp(val); + } else if (isArray(val)) { + return cloneArray(val, seen); + } else { + return cloneNodeOrObject(val, seen); + } + } else { + return val; } + } + + function cloneRoot (obj) { + var seen = new Map(); + seen.set(obj, true); + return cloneNodeOrObject(obj, seen); + } - return cloneNodeOrObject; + return cloneRoot; }; -},{"core-js/library/fn/array/index-of":5,"core-js/library/fn/array/is-array":6,"core-js/library/fn/array/reduce":7,"core-js/library/fn/object/keys":9}],4:[function(_dereq_,module,exports){ +},{"core-js/library/fn/array/index-of":5,"core-js/library/fn/array/is-array":6,"core-js/library/fn/array/reduce":7,"core-js/library/fn/map":8,"core-js/library/fn/object/keys":10}],4:[function(_dereq_,module,exports){ 'use strict'; var defaultProps = _dereq_('./ast-properties'); @@ -189,171 +203,534 @@ var objectKeys = _dereq_('core-js/library/fn/object/keys'); var assign = _dereq_('core-js/library/fn/object/assign'); module.exports = function createWhitelist (options) { - var opts = assign({}, options); - var typeName, i, len; - var keys = objectKeys(defaultProps); - var result = {}; - for (i = 0, len = keys.length; i < len; i += 1) { - typeName = keys[i]; - result[typeName] = defaultProps[typeName].concat(opts.extra); - } - return result; + var opts = assign({}, options); + var typeName, i, len; + var keys = objectKeys(defaultProps); + var result = {}; + for (i = 0, len = keys.length; i < len; i += 1) { + typeName = keys[i]; + result[typeName] = defaultProps[typeName].concat(opts.extra || []); + } + return result; }; -},{"./ast-properties":2,"core-js/library/fn/object/assign":8,"core-js/library/fn/object/keys":9}],5:[function(_dereq_,module,exports){ +},{"./ast-properties":2,"core-js/library/fn/object/assign":9,"core-js/library/fn/object/keys":10}],5:[function(_dereq_,module,exports){ _dereq_('../../modules/es6.array.index-of'); module.exports = _dereq_('../../modules/_core').Array.indexOf; -},{"../../modules/_core":15,"../../modules/es6.array.index-of":48}],6:[function(_dereq_,module,exports){ + +},{"../../modules/_core":26,"../../modules/es6.array.index-of":82}],6:[function(_dereq_,module,exports){ _dereq_('../../modules/es6.array.is-array'); module.exports = _dereq_('../../modules/_core').Array.isArray; -},{"../../modules/_core":15,"../../modules/es6.array.is-array":49}],7:[function(_dereq_,module,exports){ + +},{"../../modules/_core":26,"../../modules/es6.array.is-array":83}],7:[function(_dereq_,module,exports){ _dereq_('../../modules/es6.array.reduce'); module.exports = _dereq_('../../modules/_core').Array.reduce; -},{"../../modules/_core":15,"../../modules/es6.array.reduce":50}],8:[function(_dereq_,module,exports){ + +},{"../../modules/_core":26,"../../modules/es6.array.reduce":85}],8:[function(_dereq_,module,exports){ +_dereq_('../modules/es6.object.to-string'); +_dereq_('../modules/es6.string.iterator'); +_dereq_('../modules/web.dom.iterable'); +_dereq_('../modules/es6.map'); +_dereq_('../modules/es7.map.to-json'); +_dereq_('../modules/es7.map.of'); +_dereq_('../modules/es7.map.from'); +module.exports = _dereq_('../modules/_core').Map; + +},{"../modules/_core":26,"../modules/es6.map":86,"../modules/es6.object.to-string":89,"../modules/es6.string.iterator":90,"../modules/es7.map.from":91,"../modules/es7.map.of":92,"../modules/es7.map.to-json":93,"../modules/web.dom.iterable":94}],9:[function(_dereq_,module,exports){ _dereq_('../../modules/es6.object.assign'); module.exports = _dereq_('../../modules/_core').Object.assign; -},{"../../modules/_core":15,"../../modules/es6.object.assign":51}],9:[function(_dereq_,module,exports){ + +},{"../../modules/_core":26,"../../modules/es6.object.assign":87}],10:[function(_dereq_,module,exports){ _dereq_('../../modules/es6.object.keys'); module.exports = _dereq_('../../modules/_core').Object.keys; -},{"../../modules/_core":15,"../../modules/es6.object.keys":52}],10:[function(_dereq_,module,exports){ -module.exports = function(it){ - if(typeof it != 'function')throw TypeError(it + ' is not a function!'); + +},{"../../modules/_core":26,"../../modules/es6.object.keys":88}],11:[function(_dereq_,module,exports){ +module.exports = function (it) { + if (typeof it != 'function') throw TypeError(it + ' is not a function!'); return it; }; -},{}],11:[function(_dereq_,module,exports){ + +},{}],12:[function(_dereq_,module,exports){ +module.exports = function () { /* empty */ }; + +},{}],13:[function(_dereq_,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; +}; + +},{}],14:[function(_dereq_,module,exports){ var isObject = _dereq_('./_is-object'); -module.exports = function(it){ - if(!isObject(it))throw TypeError(it + ' is not an object!'); +module.exports = function (it) { + if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; -},{"./_is-object":29}],12:[function(_dereq_,module,exports){ + +},{"./_is-object":43}],15:[function(_dereq_,module,exports){ +var forOf = _dereq_('./_for-of'); + +module.exports = function (iter, ITERATOR) { + var result = []; + forOf(iter, false, result.push, result, ITERATOR); + return result; +}; + +},{"./_for-of":34}],16:[function(_dereq_,module,exports){ // false -> Array#indexOf // true -> Array#includes -var toIObject = _dereq_('./_to-iobject') - , toLength = _dereq_('./_to-length') - , toIndex = _dereq_('./_to-index'); -module.exports = function(IS_INCLUDES){ - return function($this, el, fromIndex){ - var O = toIObject($this) - , length = toLength(O.length) - , index = toIndex(fromIndex, length) - , value; +var toIObject = _dereq_('./_to-iobject'); +var toLength = _dereq_('./_to-length'); +var toAbsoluteIndex = _dereq_('./_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 - if(IS_INCLUDES && el != el)while(length > index){ + // eslint-disable-next-line no-self-compare + if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; - if(value != value)return true; - // Array#toIndex 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; + // 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-index":41,"./_to-iobject":43,"./_to-length":44}],13:[function(_dereq_,module,exports){ -var aFunction = _dereq_('./_a-function') - , toObject = _dereq_('./_to-object') - , IObject = _dereq_('./_iobject') - , toLength = _dereq_('./_to-length'); -module.exports = function(that, callbackfn, aLen, memo, isRight){ +},{"./_to-absolute-index":72,"./_to-iobject":74,"./_to-length":75}],17:[function(_dereq_,module,exports){ +// 0 -> Array#forEach +// 1 -> Array#map +// 2 -> Array#filter +// 3 -> Array#some +// 4 -> Array#every +// 5 -> Array#find +// 6 -> Array#findIndex +var ctx = _dereq_('./_ctx'); +var IObject = _dereq_('./_iobject'); +var toObject = _dereq_('./_to-object'); +var toLength = _dereq_('./_to-length'); +var asc = _dereq_('./_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; + }; +}; + +},{"./_array-species-create":20,"./_ctx":27,"./_iobject":40,"./_to-length":75,"./_to-object":76}],18:[function(_dereq_,module,exports){ +var aFunction = _dereq_('./_a-function'); +var toObject = _dereq_('./_to-object'); +var IObject = _dereq_('./_iobject'); +var toLength = _dereq_('./_to-length'); + +module.exports = function (that, callbackfn, aLen, memo, isRight) { aFunction(callbackfn); - var O = toObject(that) - , self = IObject(O) - , length = toLength(O.length) - , index = isRight ? length - 1 : 0 - , i = isRight ? -1 : 1; - if(aLen < 2)for(;;){ - if(index in self){ + 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){ + 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){ + for (;isRight ? index >= 0 : length > index; index += i) if (index in self) { memo = callbackfn(memo, self[index], index, O); } return memo; }; -},{"./_a-function":10,"./_iobject":27,"./_to-length":44,"./_to-object":45}],14:[function(_dereq_,module,exports){ + +},{"./_a-function":11,"./_iobject":40,"./_to-length":75,"./_to-object":76}],19:[function(_dereq_,module,exports){ +var isObject = _dereq_('./_is-object'); +var isArray = _dereq_('./_is-array'); +var SPECIES = _dereq_('./_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; +}; + +},{"./_is-array":42,"./_is-object":43,"./_wks":80}],20:[function(_dereq_,module,exports){ +// 9.4.2.3 ArraySpeciesCreate(originalArray, length) +var speciesConstructor = _dereq_('./_array-species-constructor'); + +module.exports = function (original, length) { + return new (speciesConstructor(original))(length); +}; + +},{"./_array-species-constructor":19}],21:[function(_dereq_,module,exports){ +// getting tag from 19.1.3.6 Object.prototype.toString() +var cof = _dereq_('./_cof'); +var TAG = _dereq_('./_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":22,"./_wks":80}],22:[function(_dereq_,module,exports){ var toString = {}.toString; -module.exports = function(it){ +module.exports = function (it) { return toString.call(it).slice(8, -1); }; -},{}],15:[function(_dereq_,module,exports){ -var core = module.exports = {version: '2.4.0'}; -if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef -},{}],16:[function(_dereq_,module,exports){ + +},{}],23:[function(_dereq_,module,exports){ +'use strict'; +var dP = _dereq_('./_object-dp').f; +var create = _dereq_('./_object-create'); +var redefineAll = _dereq_('./_redefine-all'); +var ctx = _dereq_('./_ctx'); +var anInstance = _dereq_('./_an-instance'); +var forOf = _dereq_('./_for-of'); +var $iterDefine = _dereq_('./_iter-define'); +var step = _dereq_('./_iter-step'); +var setSpecies = _dereq_('./_set-species'); +var DESCRIPTORS = _dereq_('./_descriptors'); +var fastKey = _dereq_('./_meta').fastKey; +var validate = _dereq_('./_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); + } +}; + +},{"./_an-instance":13,"./_ctx":27,"./_descriptors":29,"./_for-of":34,"./_iter-define":46,"./_iter-step":47,"./_meta":50,"./_object-create":52,"./_object-dp":53,"./_redefine-all":62,"./_set-species":66,"./_validate-collection":79}],24:[function(_dereq_,module,exports){ +// https://github.com/DavidBruant/Map-Set.prototype.toJSON +var classof = _dereq_('./_classof'); +var from = _dereq_('./_array-from-iterable'); +module.exports = function (NAME) { + return function toJSON() { + if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic"); + return from(this); + }; +}; + +},{"./_array-from-iterable":15,"./_classof":21}],25:[function(_dereq_,module,exports){ +'use strict'; +var global = _dereq_('./_global'); +var $export = _dereq_('./_export'); +var meta = _dereq_('./_meta'); +var fails = _dereq_('./_fails'); +var hide = _dereq_('./_hide'); +var redefineAll = _dereq_('./_redefine-all'); +var forOf = _dereq_('./_for-of'); +var anInstance = _dereq_('./_an-instance'); +var isObject = _dereq_('./_is-object'); +var setToStringTag = _dereq_('./_set-to-string-tag'); +var dP = _dereq_('./_object-dp').f; +var each = _dereq_('./_array-methods')(0); +var DESCRIPTORS = _dereq_('./_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; +}; + +},{"./_an-instance":13,"./_array-methods":17,"./_descriptors":29,"./_export":32,"./_fails":33,"./_for-of":34,"./_global":35,"./_hide":37,"./_is-object":43,"./_meta":50,"./_object-dp":53,"./_redefine-all":62,"./_set-to-string-tag":67}],26:[function(_dereq_,module,exports){ +var core = module.exports = { version: '2.5.7' }; +if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef + +},{}],27:[function(_dereq_,module,exports){ // optional / simple context binding var aFunction = _dereq_('./_a-function'); -module.exports = function(fn, that, length){ +module.exports = function (fn, that, length) { aFunction(fn); - if(that === undefined)return fn; - switch(length){ - case 1: return function(a){ + if (that === undefined) return fn; + switch (length) { + case 1: return function (a) { return fn.call(that, a); }; - case 2: return function(a, b){ + case 2: return function (a, b) { return fn.call(that, a, b); }; - case 3: return function(a, b, c){ + case 3: return function (a, b, c) { return fn.call(that, a, b, c); }; } - return function(/* ...args */){ + return function (/* ...args */) { return fn.apply(that, arguments); }; }; -},{"./_a-function":10}],17:[function(_dereq_,module,exports){ + +},{"./_a-function":11}],28:[function(_dereq_,module,exports){ // 7.2.1 RequireObjectCoercible(argument) -module.exports = function(it){ - if(it == undefined)throw TypeError("Can't call method on " + it); +module.exports = function (it) { + if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; -},{}],18:[function(_dereq_,module,exports){ + +},{}],29:[function(_dereq_,module,exports){ // Thank's IE8 for his funny defineProperty -module.exports = !_dereq_('./_fails')(function(){ - return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7; +module.exports = !_dereq_('./_fails')(function () { + return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); -},{"./_fails":22}],19:[function(_dereq_,module,exports){ -var isObject = _dereq_('./_is-object') - , document = _dereq_('./_global').document - // in old IE typeof document.createElement is 'object' - , is = isObject(document) && isObject(document.createElement); -module.exports = function(it){ + +},{"./_fails":33}],30:[function(_dereq_,module,exports){ +var isObject = _dereq_('./_is-object'); +var document = _dereq_('./_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":23,"./_is-object":29}],20:[function(_dereq_,module,exports){ + +},{"./_global":35,"./_is-object":43}],31:[function(_dereq_,module,exports){ // IE 8- don't enum bug keys module.exports = ( 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' ).split(','); -},{}],21:[function(_dereq_,module,exports){ -var global = _dereq_('./_global') - , core = _dereq_('./_core') - , ctx = _dereq_('./_ctx') - , hide = _dereq_('./_hide') - , PROTOTYPE = 'prototype'; - -var $export = function(type, name, source){ - var IS_FORCED = type & $export.F - , IS_GLOBAL = type & $export.G - , IS_STATIC = type & $export.S - , IS_PROTO = type & $export.P - , IS_BIND = type & $export.B - , IS_WRAP = type & $export.W - , exports = IS_GLOBAL ? core : core[name] || (core[name] = {}) - , expProto = exports[PROTOTYPE] - , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE] - , key, own, out; - if(IS_GLOBAL)source = name; - for(key in source){ + +},{}],32:[function(_dereq_,module,exports){ +var global = _dereq_('./_global'); +var core = _dereq_('./_core'); +var ctx = _dereq_('./_ctx'); +var hide = _dereq_('./_hide'); +var has = _dereq_('./_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 && key in exports)continue; + if (own && has(exports, key)) continue; // export native or passed out = own ? target[key] : source[key]; // prevent global pollution for namespaces @@ -361,11 +738,11 @@ var $export = function(type, name, source){ // 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; + : 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); @@ -376,10 +753,10 @@ var $export = function(type, name, source){ // 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){ + 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); + if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); } } }; @@ -391,277 +768,845 @@ $export.P = 8; // proto $export.B = 16; // bind $export.W = 32; // wrap $export.U = 64; // safe -$export.R = 128; // real proto method for `library` +$export.R = 128; // real proto method for `library` module.exports = $export; -},{"./_core":15,"./_ctx":16,"./_global":23,"./_hide":25}],22:[function(_dereq_,module,exports){ -module.exports = function(exec){ + +},{"./_core":26,"./_ctx":27,"./_global":35,"./_has":36,"./_hide":37}],33:[function(_dereq_,module,exports){ +module.exports = function (exec) { try { return !!exec(); - } catch(e){ + } catch (e) { return true; } }; -},{}],23:[function(_dereq_,module,exports){ + +},{}],34:[function(_dereq_,module,exports){ +var ctx = _dereq_('./_ctx'); +var call = _dereq_('./_iter-call'); +var isArrayIter = _dereq_('./_is-array-iter'); +var anObject = _dereq_('./_an-object'); +var toLength = _dereq_('./_to-length'); +var getIterFn = _dereq_('./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; + +},{"./_an-object":14,"./_ctx":27,"./_is-array-iter":41,"./_iter-call":44,"./_to-length":75,"./core.get-iterator-method":81}],35:[function(_dereq_,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 : Function('return this')(); -if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef -},{}],24:[function(_dereq_,module,exports){ + ? 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 + +},{}],36:[function(_dereq_,module,exports){ var hasOwnProperty = {}.hasOwnProperty; -module.exports = function(it, key){ +module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; -},{}],25:[function(_dereq_,module,exports){ -var dP = _dereq_('./_object-dp') - , createDesc = _dereq_('./_property-desc'); -module.exports = _dereq_('./_descriptors') ? function(object, key, value){ + +},{}],37:[function(_dereq_,module,exports){ +var dP = _dereq_('./_object-dp'); +var createDesc = _dereq_('./_property-desc'); +module.exports = _dereq_('./_descriptors') ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); -} : function(object, key, value){ +} : function (object, key, value) { object[key] = value; return object; }; -},{"./_descriptors":18,"./_object-dp":31,"./_property-desc":37}],26:[function(_dereq_,module,exports){ -module.exports = !_dereq_('./_descriptors') && !_dereq_('./_fails')(function(){ - return Object.defineProperty(_dereq_('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7; + +},{"./_descriptors":29,"./_object-dp":53,"./_property-desc":61}],38:[function(_dereq_,module,exports){ +var document = _dereq_('./_global').document; +module.exports = document && document.documentElement; + +},{"./_global":35}],39:[function(_dereq_,module,exports){ +module.exports = !_dereq_('./_descriptors') && !_dereq_('./_fails')(function () { + return Object.defineProperty(_dereq_('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7; }); -},{"./_descriptors":18,"./_dom-create":19,"./_fails":22}],27:[function(_dereq_,module,exports){ + +},{"./_descriptors":29,"./_dom-create":30,"./_fails":33}],40:[function(_dereq_,module,exports){ // fallback for non-array-like ES3 and non-enumerable old V8 strings var cof = _dereq_('./_cof'); -module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){ +// 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":14}],28:[function(_dereq_,module,exports){ + +},{"./_cof":22}],41:[function(_dereq_,module,exports){ +// check on default Array iterator +var Iterators = _dereq_('./_iterators'); +var ITERATOR = _dereq_('./_wks')('iterator'); +var ArrayProto = Array.prototype; + +module.exports = function (it) { + return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it); +}; + +},{"./_iterators":48,"./_wks":80}],42:[function(_dereq_,module,exports){ // 7.2.2 IsArray(argument) var cof = _dereq_('./_cof'); -module.exports = Array.isArray || function isArray(arg){ +module.exports = Array.isArray || function isArray(arg) { return cof(arg) == 'Array'; }; -},{"./_cof":14}],29:[function(_dereq_,module,exports){ -module.exports = function(it){ + +},{"./_cof":22}],43:[function(_dereq_,module,exports){ +module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; -},{}],30:[function(_dereq_,module,exports){ + +},{}],44:[function(_dereq_,module,exports){ +// call something on iterator step with safe closing on error +var anObject = _dereq_('./_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; + } +}; + +},{"./_an-object":14}],45:[function(_dereq_,module,exports){ +'use strict'; +var create = _dereq_('./_object-create'); +var descriptor = _dereq_('./_property-desc'); +var setToStringTag = _dereq_('./_set-to-string-tag'); +var IteratorPrototype = {}; + +// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() +_dereq_('./_hide')(IteratorPrototype, _dereq_('./_wks')('iterator'), function () { return this; }); + +module.exports = function (Constructor, NAME, next) { + Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); + setToStringTag(Constructor, NAME + ' Iterator'); +}; + +},{"./_hide":37,"./_object-create":52,"./_property-desc":61,"./_set-to-string-tag":67,"./_wks":80}],46:[function(_dereq_,module,exports){ +'use strict'; +var LIBRARY = _dereq_('./_library'); +var $export = _dereq_('./_export'); +var redefine = _dereq_('./_redefine'); +var hide = _dereq_('./_hide'); +var Iterators = _dereq_('./_iterators'); +var $iterCreate = _dereq_('./_iter-create'); +var setToStringTag = _dereq_('./_set-to-string-tag'); +var getPrototypeOf = _dereq_('./_object-gpo'); +var ITERATOR = _dereq_('./_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; +}; + +},{"./_export":32,"./_hide":37,"./_iter-create":45,"./_iterators":48,"./_library":49,"./_object-gpo":56,"./_redefine":63,"./_set-to-string-tag":67,"./_wks":80}],47:[function(_dereq_,module,exports){ +module.exports = function (done, value) { + return { value: value, done: !!done }; +}; + +},{}],48:[function(_dereq_,module,exports){ +module.exports = {}; + +},{}],49:[function(_dereq_,module,exports){ +module.exports = true; + +},{}],50:[function(_dereq_,module,exports){ +var META = _dereq_('./_uid')('meta'); +var isObject = _dereq_('./_is-object'); +var has = _dereq_('./_has'); +var setDesc = _dereq_('./_object-dp').f; +var id = 0; +var isExtensible = Object.isExtensible || function () { + return true; +}; +var FREEZE = !_dereq_('./_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":33,"./_has":36,"./_is-object":43,"./_object-dp":53,"./_uid":78}],51:[function(_dereq_,module,exports){ 'use strict'; // 19.1.2.1 Object.assign(target, source, ...) -var getKeys = _dereq_('./_object-keys') - , gOPS = _dereq_('./_object-gops') - , pIE = _dereq_('./_object-pie') - , toObject = _dereq_('./_to-object') - , IObject = _dereq_('./_iobject') - , $assign = Object.assign; +var getKeys = _dereq_('./_object-keys'); +var gOPS = _dereq_('./_object-gops'); +var pIE = _dereq_('./_object-pie'); +var toObject = _dereq_('./_to-object'); +var IObject = _dereq_('./_iobject'); +var $assign = Object.assign; // should work with symbols and should have deterministic property order (V8 bug) -module.exports = !$assign || _dereq_('./_fails')(function(){ - var A = {} - , B = {} - , S = Symbol() - , K = 'abcdefghijklmnopqrst'; +module.exports = !$assign || _dereq_('./_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; }); + 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) - , aLen = arguments.length - , index = 1 - , getSymbols = gOPS.f - , isEnum = pIE.f; - while(aLen > index){ - var S = IObject(arguments[index++]) - , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S) - , length = keys.length - , j = 0 - , key; - while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key]; +}) ? 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) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; } return T; } : $assign; -},{"./_fails":22,"./_iobject":27,"./_object-gops":32,"./_object-keys":34,"./_object-pie":35,"./_to-object":45}],31:[function(_dereq_,module,exports){ -var anObject = _dereq_('./_an-object') - , IE8_DOM_DEFINE = _dereq_('./_ie8-dom-define') - , toPrimitive = _dereq_('./_to-primitive') - , dP = Object.defineProperty; -exports.f = _dereq_('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes){ +},{"./_fails":33,"./_iobject":40,"./_object-gops":55,"./_object-keys":58,"./_object-pie":59,"./_to-object":76}],52:[function(_dereq_,module,exports){ +// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) +var anObject = _dereq_('./_an-object'); +var dPs = _dereq_('./_object-dps'); +var enumBugKeys = _dereq_('./_enum-bug-keys'); +var IE_PROTO = _dereq_('./_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 = _dereq_('./_dom-create')('iframe'); + var i = enumBugKeys.length; + var lt = '<'; + var gt = '>'; + var iframeDocument; + iframe.style.display = 'none'; + _dereq_('./_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":30,"./_enum-bug-keys":31,"./_html":38,"./_object-dps":54,"./_shared-key":68}],53:[function(_dereq_,module,exports){ +var anObject = _dereq_('./_an-object'); +var IE8_DOM_DEFINE = _dereq_('./_ie8-dom-define'); +var toPrimitive = _dereq_('./_to-primitive'); +var dP = Object.defineProperty; + +exports.f = _dereq_('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); - if(IE8_DOM_DEFINE)try { + 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; + } 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":11,"./_descriptors":18,"./_ie8-dom-define":26,"./_to-primitive":46}],32:[function(_dereq_,module,exports){ + +},{"./_an-object":14,"./_descriptors":29,"./_ie8-dom-define":39,"./_to-primitive":77}],54:[function(_dereq_,module,exports){ +var dP = _dereq_('./_object-dp'); +var anObject = _dereq_('./_an-object'); +var getKeys = _dereq_('./_object-keys'); + +module.exports = _dereq_('./_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":29,"./_object-dp":53,"./_object-keys":58}],55:[function(_dereq_,module,exports){ exports.f = Object.getOwnPropertySymbols; -},{}],33:[function(_dereq_,module,exports){ -var has = _dereq_('./_has') - , toIObject = _dereq_('./_to-iobject') - , arrayIndexOf = _dereq_('./_array-includes')(false) - , IE_PROTO = _dereq_('./_shared-key')('IE_PROTO'); - -module.exports = function(object, names){ - var O = toIObject(object) - , i = 0 - , result = [] - , key; - for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key); + +},{}],56:[function(_dereq_,module,exports){ +// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) +var has = _dereq_('./_has'); +var toObject = _dereq_('./_to-object'); +var IE_PROTO = _dereq_('./_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; +}; + +},{"./_has":36,"./_shared-key":68,"./_to-object":76}],57:[function(_dereq_,module,exports){ +var has = _dereq_('./_has'); +var toIObject = _dereq_('./_to-iobject'); +var arrayIndexOf = _dereq_('./_array-includes')(false); +var IE_PROTO = _dereq_('./_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++])){ + while (names.length > i) if (has(O, key = names[i++])) { ~arrayIndexOf(result, key) || result.push(key); } return result; }; -},{"./_array-includes":12,"./_has":24,"./_shared-key":38,"./_to-iobject":43}],34:[function(_dereq_,module,exports){ + +},{"./_array-includes":16,"./_has":36,"./_shared-key":68,"./_to-iobject":74}],58:[function(_dereq_,module,exports){ // 19.1.2.14 / 15.2.3.14 Object.keys(O) -var $keys = _dereq_('./_object-keys-internal') - , enumBugKeys = _dereq_('./_enum-bug-keys'); +var $keys = _dereq_('./_object-keys-internal'); +var enumBugKeys = _dereq_('./_enum-bug-keys'); -module.exports = Object.keys || function keys(O){ +module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); }; -},{"./_enum-bug-keys":20,"./_object-keys-internal":33}],35:[function(_dereq_,module,exports){ + +},{"./_enum-bug-keys":31,"./_object-keys-internal":57}],59:[function(_dereq_,module,exports){ exports.f = {}.propertyIsEnumerable; -},{}],36:[function(_dereq_,module,exports){ + +},{}],60:[function(_dereq_,module,exports){ // most Object methods by ES6 should accept primitives -var $export = _dereq_('./_export') - , core = _dereq_('./_core') - , fails = _dereq_('./_fails'); -module.exports = function(KEY, exec){ - var fn = (core.Object || {})[KEY] || Object[KEY] - , exp = {}; +var $export = _dereq_('./_export'); +var core = _dereq_('./_core'); +var fails = _dereq_('./_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); + $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); }; -},{"./_core":15,"./_export":21,"./_fails":22}],37:[function(_dereq_,module,exports){ -module.exports = function(bitmap, value){ + +},{"./_core":26,"./_export":32,"./_fails":33}],61:[function(_dereq_,module,exports){ +module.exports = function (bitmap, value) { return { - enumerable : !(bitmap & 1), + enumerable: !(bitmap & 1), configurable: !(bitmap & 2), - writable : !(bitmap & 4), - value : value + writable: !(bitmap & 4), + value: value }; }; -},{}],38:[function(_dereq_,module,exports){ -var shared = _dereq_('./_shared')('keys') - , uid = _dereq_('./_uid'); -module.exports = function(key){ - return shared[key] || (shared[key] = uid(key)); + +},{}],62:[function(_dereq_,module,exports){ +var hide = _dereq_('./_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; +}; + +},{"./_hide":37}],63:[function(_dereq_,module,exports){ +module.exports = _dereq_('./_hide'); + +},{"./_hide":37}],64:[function(_dereq_,module,exports){ +'use strict'; +// https://tc39.github.io/proposal-setmap-offrom/ +var $export = _dereq_('./_export'); +var aFunction = _dereq_('./_a-function'); +var ctx = _dereq_('./_ctx'); +var forOf = _dereq_('./_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); + } }); +}; + +},{"./_a-function":11,"./_ctx":27,"./_export":32,"./_for-of":34}],65:[function(_dereq_,module,exports){ +'use strict'; +// https://tc39.github.io/proposal-setmap-offrom/ +var $export = _dereq_('./_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); + } }); +}; + +},{"./_export":32}],66:[function(_dereq_,module,exports){ +'use strict'; +var global = _dereq_('./_global'); +var core = _dereq_('./_core'); +var dP = _dereq_('./_object-dp'); +var DESCRIPTORS = _dereq_('./_descriptors'); +var SPECIES = _dereq_('./_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; } + }); +}; + +},{"./_core":26,"./_descriptors":29,"./_global":35,"./_object-dp":53,"./_wks":80}],67:[function(_dereq_,module,exports){ +var def = _dereq_('./_object-dp').f; +var has = _dereq_('./_has'); +var TAG = _dereq_('./_wks')('toStringTag'); + +module.exports = function (it, tag, stat) { + if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); }; -},{"./_shared":39,"./_uid":47}],39:[function(_dereq_,module,exports){ -var global = _dereq_('./_global') - , SHARED = '__core-js_shared__' - , store = global[SHARED] || (global[SHARED] = {}); -module.exports = function(key){ - return store[key] || (store[key] = {}); + +},{"./_has":36,"./_object-dp":53,"./_wks":80}],68:[function(_dereq_,module,exports){ +var shared = _dereq_('./_shared')('keys'); +var uid = _dereq_('./_uid'); +module.exports = function (key) { + return shared[key] || (shared[key] = uid(key)); }; -},{"./_global":23}],40:[function(_dereq_,module,exports){ + +},{"./_shared":69,"./_uid":78}],69:[function(_dereq_,module,exports){ +var core = _dereq_('./_core'); +var global = _dereq_('./_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: _dereq_('./_library') ? 'pure' : 'global', + copyright: '© 2018 Denis Pushkarev (zloirock.ru)' +}); + +},{"./_core":26,"./_global":35,"./_library":49}],70:[function(_dereq_,module,exports){ +'use strict'; var fails = _dereq_('./_fails'); -module.exports = function(method, arg){ - return !!method && fails(function(){ - arg ? method.call(null, function(){}, 1) : method.call(null); +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); }); }; -},{"./_fails":22}],41:[function(_dereq_,module,exports){ -var toInteger = _dereq_('./_to-integer') - , max = Math.max - , min = Math.min; -module.exports = function(index, length){ + +},{"./_fails":33}],71:[function(_dereq_,module,exports){ +var toInteger = _dereq_('./_to-integer'); +var defined = _dereq_('./_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; + }; +}; + +},{"./_defined":28,"./_to-integer":73}],72:[function(_dereq_,module,exports){ +var toInteger = _dereq_('./_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":42}],42:[function(_dereq_,module,exports){ + +},{"./_to-integer":73}],73:[function(_dereq_,module,exports){ // 7.1.4 ToInteger -var ceil = Math.ceil - , floor = Math.floor; -module.exports = function(it){ +var ceil = Math.ceil; +var floor = Math.floor; +module.exports = function (it) { return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); }; -},{}],43:[function(_dereq_,module,exports){ + +},{}],74:[function(_dereq_,module,exports){ // to indexed object, toObject with fallback for non-array-like ES3 strings -var IObject = _dereq_('./_iobject') - , defined = _dereq_('./_defined'); -module.exports = function(it){ +var IObject = _dereq_('./_iobject'); +var defined = _dereq_('./_defined'); +module.exports = function (it) { return IObject(defined(it)); }; -},{"./_defined":17,"./_iobject":27}],44:[function(_dereq_,module,exports){ + +},{"./_defined":28,"./_iobject":40}],75:[function(_dereq_,module,exports){ // 7.1.15 ToLength -var toInteger = _dereq_('./_to-integer') - , min = Math.min; -module.exports = function(it){ +var toInteger = _dereq_('./_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":42}],45:[function(_dereq_,module,exports){ + +},{"./_to-integer":73}],76:[function(_dereq_,module,exports){ // 7.1.13 ToObject(argument) var defined = _dereq_('./_defined'); -module.exports = function(it){ +module.exports = function (it) { return Object(defined(it)); }; -},{"./_defined":17}],46:[function(_dereq_,module,exports){ + +},{"./_defined":28}],77:[function(_dereq_,module,exports){ // 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = _dereq_('./_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; +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; + 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":29}],47:[function(_dereq_,module,exports){ -var id = 0 - , px = Math.random(); -module.exports = function(key){ + +},{"./_is-object":43}],78:[function(_dereq_,module,exports){ +var id = 0; +var px = Math.random(); +module.exports = function (key) { return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); }; -},{}],48:[function(_dereq_,module,exports){ + +},{}],79:[function(_dereq_,module,exports){ +var isObject = _dereq_('./_is-object'); +module.exports = function (it, TYPE) { + if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!'); + return it; +}; + +},{"./_is-object":43}],80:[function(_dereq_,module,exports){ +var store = _dereq_('./_shared')('wks'); +var uid = _dereq_('./_uid'); +var Symbol = _dereq_('./_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":35,"./_shared":69,"./_uid":78}],81:[function(_dereq_,module,exports){ +var classof = _dereq_('./_classof'); +var ITERATOR = _dereq_('./_wks')('iterator'); +var Iterators = _dereq_('./_iterators'); +module.exports = _dereq_('./_core').getIteratorMethod = function (it) { + if (it != undefined) return it[ITERATOR] + || it['@@iterator'] + || Iterators[classof(it)]; +}; + +},{"./_classof":21,"./_core":26,"./_iterators":48,"./_wks":80}],82:[function(_dereq_,module,exports){ 'use strict'; -var $export = _dereq_('./_export') - , $indexOf = _dereq_('./_array-includes')(false) - , $native = [].indexOf - , NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; +var $export = _dereq_('./_export'); +var $indexOf = _dereq_('./_array-includes')(false); +var $native = [].indexOf; +var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0; $export($export.P + $export.F * (NEGATIVE_ZERO || !_dereq_('./_strict-method')($native)), 'Array', { // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex]) - indexOf: function indexOf(searchElement /*, fromIndex = 0 */){ + indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { return NEGATIVE_ZERO // convert -0 to +0 ? $native.apply(this, arguments) || 0 : $indexOf(this, searchElement, arguments[1]); } }); -},{"./_array-includes":12,"./_export":21,"./_strict-method":40}],49:[function(_dereq_,module,exports){ + +},{"./_array-includes":16,"./_export":32,"./_strict-method":70}],83:[function(_dereq_,module,exports){ // 22.1.2.2 / 15.4.3.2 Array.isArray(arg) var $export = _dereq_('./_export'); -$export($export.S, 'Array', {isArray: _dereq_('./_is-array')}); -},{"./_export":21,"./_is-array":28}],50:[function(_dereq_,module,exports){ +$export($export.S, 'Array', { isArray: _dereq_('./_is-array') }); + +},{"./_export":32,"./_is-array":42}],84:[function(_dereq_,module,exports){ +'use strict'; +var addToUnscopables = _dereq_('./_add-to-unscopables'); +var step = _dereq_('./_iter-step'); +var Iterators = _dereq_('./_iterators'); +var toIObject = _dereq_('./_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 = _dereq_('./_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'); + +},{"./_add-to-unscopables":12,"./_iter-define":46,"./_iter-step":47,"./_iterators":48,"./_to-iobject":74}],85:[function(_dereq_,module,exports){ 'use strict'; -var $export = _dereq_('./_export') - , $reduce = _dereq_('./_array-reduce'); +var $export = _dereq_('./_export'); +var $reduce = _dereq_('./_array-reduce'); $export($export.P + $export.F * !_dereq_('./_strict-method')([].reduce, true), 'Array', { // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) - reduce: function reduce(callbackfn /* , initialValue */){ + reduce: function reduce(callbackfn /* , initialValue */) { return $reduce(this, callbackfn, arguments.length, arguments[1], false); } }); -},{"./_array-reduce":13,"./_export":21,"./_strict-method":40}],51:[function(_dereq_,module,exports){ + +},{"./_array-reduce":18,"./_export":32,"./_strict-method":70}],86:[function(_dereq_,module,exports){ +'use strict'; +var strong = _dereq_('./_collection-strong'); +var validate = _dereq_('./_validate-collection'); +var MAP = 'Map'; + +// 23.1 Map Objects +module.exports = _dereq_('./_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); + +},{"./_collection":25,"./_collection-strong":23,"./_validate-collection":79}],87:[function(_dereq_,module,exports){ // 19.1.3.1 Object.assign(target, source) var $export = _dereq_('./_export'); -$export($export.S + $export.F, 'Object', {assign: _dereq_('./_object-assign')}); -},{"./_export":21,"./_object-assign":30}],52:[function(_dereq_,module,exports){ +$export($export.S + $export.F, 'Object', { assign: _dereq_('./_object-assign') }); + +},{"./_export":32,"./_object-assign":51}],88:[function(_dereq_,module,exports){ // 19.1.2.14 Object.keys(O) -var toObject = _dereq_('./_to-object') - , $keys = _dereq_('./_object-keys'); +var toObject = _dereq_('./_to-object'); +var $keys = _dereq_('./_object-keys'); -_dereq_('./_object-sap')('keys', function(){ - return function keys(it){ +_dereq_('./_object-sap')('keys', function () { + return function keys(it) { return $keys(toObject(it)); }; }); -},{"./_object-keys":34,"./_object-sap":36,"./_to-object":45}]},{},[1])(1) + +},{"./_object-keys":58,"./_object-sap":60,"./_to-object":76}],89:[function(_dereq_,module,exports){ + +},{}],90:[function(_dereq_,module,exports){ +'use strict'; +var $at = _dereq_('./_string-at')(true); + +// 21.1.3.27 String.prototype[@@iterator]() +_dereq_('./_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 }; +}); + +},{"./_iter-define":46,"./_string-at":71}],91:[function(_dereq_,module,exports){ +// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from +_dereq_('./_set-collection-from')('Map'); + +},{"./_set-collection-from":64}],92:[function(_dereq_,module,exports){ +// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of +_dereq_('./_set-collection-of')('Map'); + +},{"./_set-collection-of":65}],93:[function(_dereq_,module,exports){ +// https://github.com/DavidBruant/Map-Set.prototype.toJSON +var $export = _dereq_('./_export'); + +$export($export.P + $export.R, 'Map', { toJSON: _dereq_('./_collection-to-json')('Map') }); + +},{"./_collection-to-json":24,"./_export":32}],94:[function(_dereq_,module,exports){ +_dereq_('./es6.array.iterator'); +var global = _dereq_('./_global'); +var hide = _dereq_('./_hide'); +var Iterators = _dereq_('./_iterators'); +var TO_STRING_TAG = _dereq_('./_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; +} + +},{"./_global":35,"./_hide":37,"./_iterators":48,"./_wks":80,"./es6.array.iterator":84}]},{},[1])(1) }); + diff --git a/node_modules/espurify/index.js b/node_modules/espurify/index.js index ed28ec635..8930dcc71 100644 --- a/node_modules/espurify/index.js +++ b/node_modules/espurify/index.js @@ -1,9 +1,9 @@ /** * espurify - Clone new AST without extra properties - * + * * https://github.com/estools/espurify * - * Copyright (c) 2014-2017 Takuto Wada + * Copyright (c) 2014-2018 Takuto Wada * Licensed under the MIT license. * https://github.com/estools/espurify/blob/master/MIT-LICENSE.txt */ @@ -13,7 +13,7 @@ var createWhitelist = require('./lib/create-whitelist'); var cloneWithWhitelist = require('./lib/clone-ast'); function createCloneFunction (options) { - return cloneWithWhitelist(createWhitelist(options)); + return cloneWithWhitelist(createWhitelist(options)); } var espurify = createCloneFunction(); diff --git a/node_modules/espurify/lib/ast-properties.js b/node_modules/espurify/lib/ast-properties.js index 37267b973..db22925d1 100644 --- a/node_modules/espurify/lib/ast-properties.js +++ b/node_modules/espurify/lib/ast-properties.js @@ -1,68 +1,68 @@ module.exports = { - ArrayExpression: ['type', 'elements'], - ArrayPattern: ['type', 'elements'], - ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'], - AssignmentExpression: ['type', 'operator', 'left', 'right'], - AssignmentPattern: ['type', 'left', 'right'], - AwaitExpression: ['type', 'argument'], - BinaryExpression: ['type', 'operator', 'left', 'right'], - BlockStatement: ['type', 'body'], - BreakStatement: ['type', 'label'], - CallExpression: ['type', 'callee', 'arguments'], - CatchClause: ['type', 'param', 'guard', 'body'], - ClassBody: ['type', 'body'], - ClassDeclaration: ['type', 'id', 'superClass', 'body'], - ClassExpression: ['type', 'id', 'superClass', 'body'], - ConditionalExpression: ['type', 'test', 'consequent', 'alternate'], - ContinueStatement: ['type', 'label'], - DebuggerStatement: ['type'], - DoWhileStatement: ['type', 'body', 'test'], - EmptyStatement: ['type'], - ExportAllDeclaration: ['type', 'source'], - ExportDefaultDeclaration: ['type', 'declaration'], - ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'], - ExportSpecifier: ['type', 'exported', 'local'], - ExpressionStatement: ['type', 'expression'], - ForInStatement: ['type', 'left', 'right', 'body'], - ForOfStatement: ['type', 'left', 'right', 'body'], - ForStatement: ['type', 'init', 'test', 'update', 'body'], - FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'], - FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'], - Identifier: ['type', 'name'], - IfStatement: ['type', 'test', 'consequent', 'alternate'], - ImportDeclaration: ['type', 'specifiers', 'source'], - ImportDefaultSpecifier: ['type', 'local'], - ImportNamespaceSpecifier: ['type', 'local'], - ImportSpecifier: ['type', 'imported', 'local'], - LabeledStatement: ['type', 'label', 'body'], - Literal: ['type', 'value', 'regex'], - LogicalExpression: ['type', 'operator', 'left', 'right'], - MemberExpression: ['type', 'object', 'property', 'computed'], - MetaProperty: ['type', 'meta', 'property'], - MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'], - NewExpression: ['type', 'callee', 'arguments'], - ObjectExpression: ['type', 'properties'], - ObjectPattern: ['type', 'properties'], - Program: ['type', 'body', 'sourceType'], - Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'], - RestElement: ['type', 'argument'], - ReturnStatement: ['type', 'argument'], - SequenceExpression: ['type', 'expressions'], - SpreadElement: ['type', 'argument'], - Super: ['type'], - SwitchCase: ['type', 'test', 'consequent'], - SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'], - TaggedTemplateExpression: ['type', 'tag', 'quasi'], - TemplateElement: ['type', 'tail', 'value'], - TemplateLiteral: ['type', 'quasis', 'expressions'], - ThisExpression: ['type'], - ThrowStatement: ['type', 'argument'], - TryStatement: ['type', 'block', 'handler', 'finalizer'], - UnaryExpression: ['type', 'operator', 'prefix', 'argument'], - UpdateExpression: ['type', 'operator', 'argument', 'prefix'], - VariableDeclaration: ['type', 'declarations', 'kind'], - VariableDeclarator: ['type', 'id', 'init'], - WhileStatement: ['type', 'test', 'body'], - WithStatement: ['type', 'object', 'body'], - YieldExpression: ['type', 'argument', 'delegate'] + ArrayExpression: ['type', 'elements'], + ArrayPattern: ['type', 'elements'], + ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'], + AssignmentExpression: ['type', 'operator', 'left', 'right'], + AssignmentPattern: ['type', 'left', 'right'], + AwaitExpression: ['type', 'argument'], + BinaryExpression: ['type', 'operator', 'left', 'right'], + BlockStatement: ['type', 'body'], + BreakStatement: ['type', 'label'], + CallExpression: ['type', 'callee', 'arguments'], + CatchClause: ['type', 'param', 'guard', 'body'], + ClassBody: ['type', 'body'], + ClassDeclaration: ['type', 'id', 'superClass', 'body'], + ClassExpression: ['type', 'id', 'superClass', 'body'], + ConditionalExpression: ['type', 'test', 'consequent', 'alternate'], + ContinueStatement: ['type', 'label'], + DebuggerStatement: ['type'], + DoWhileStatement: ['type', 'body', 'test'], + EmptyStatement: ['type'], + ExportAllDeclaration: ['type', 'source'], + ExportDefaultDeclaration: ['type', 'declaration'], + ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'], + ExportSpecifier: ['type', 'exported', 'local'], + ExpressionStatement: ['type', 'expression'], + ForInStatement: ['type', 'left', 'right', 'body'], + ForOfStatement: ['type', 'left', 'right', 'body', 'await'], + ForStatement: ['type', 'init', 'test', 'update', 'body'], + FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'], + FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'], + Identifier: ['type', 'name'], + IfStatement: ['type', 'test', 'consequent', 'alternate'], + ImportDeclaration: ['type', 'specifiers', 'source'], + ImportDefaultSpecifier: ['type', 'local'], + ImportNamespaceSpecifier: ['type', 'local'], + ImportSpecifier: ['type', 'imported', 'local'], + LabeledStatement: ['type', 'label', 'body'], + Literal: ['type', 'value', 'regex'], + LogicalExpression: ['type', 'operator', 'left', 'right'], + MemberExpression: ['type', 'object', 'property', 'computed'], + MetaProperty: ['type', 'meta', 'property'], + MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'], + NewExpression: ['type', 'callee', 'arguments'], + ObjectExpression: ['type', 'properties'], + ObjectPattern: ['type', 'properties'], + Program: ['type', 'body', 'sourceType'], + Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'], + RestElement: ['type', 'argument'], + ReturnStatement: ['type', 'argument'], + SequenceExpression: ['type', 'expressions'], + SpreadElement: ['type', 'argument'], + Super: ['type'], + SwitchCase: ['type', 'test', 'consequent'], + SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'], + TaggedTemplateExpression: ['type', 'tag', 'quasi'], + TemplateElement: ['type', 'tail', 'value'], + TemplateLiteral: ['type', 'quasis', 'expressions'], + ThisExpression: ['type'], + ThrowStatement: ['type', 'argument'], + TryStatement: ['type', 'block', 'handler', 'finalizer'], + UnaryExpression: ['type', 'operator', 'prefix', 'argument'], + UpdateExpression: ['type', 'operator', 'argument', 'prefix'], + VariableDeclaration: ['type', 'declarations', 'kind'], + VariableDeclarator: ['type', 'id', 'init'], + WhileStatement: ['type', 'test', 'body'], + WithStatement: ['type', 'object', 'body'], + YieldExpression: ['type', 'argument', 'delegate'] }; diff --git a/node_modules/espurify/lib/clone-ast.js b/node_modules/espurify/lib/clone-ast.js index f748b885d..f6804e716 100644 --- a/node_modules/espurify/lib/clone-ast.js +++ b/node_modules/espurify/lib/clone-ast.js @@ -3,67 +3,82 @@ var isArray = require('core-js/library/fn/array/is-array'); var objectKeys = require('core-js/library/fn/object/keys'); var indexOf = require('core-js/library/fn/array/index-of'); +var Map = require('core-js/library/fn/map'); var reduce = require('core-js/library/fn/array/reduce'); module.exports = function cloneWithWhitelist (astWhiteList) { - var whitelist = reduce(objectKeys(astWhiteList), function (props, key) { - var propNames = astWhiteList[key]; - var prepend = (indexOf(propNames, 'type') === -1) ? ['type'] : []; - props[key] = prepend.concat(propNames); - return props; - }, {}); + var whitelist = reduce(objectKeys(astWhiteList), function (props, key) { + var propNames = astWhiteList[key]; + var prepend = (indexOf(propNames, 'type') === -1) ? ['type'] : []; + props[key] = prepend.concat(propNames || []); + return props; + }, {}); - function cloneNodeOrObject (obj) { - var props = obj.type ? whitelist[obj.type] : null; - if (props) { - return cloneNode(obj, props); - } else { - return cloneObject(obj); - } + function cloneNodeOrObject (obj, seen) { + var props = obj.type ? whitelist[obj.type] : null; + if (props) { + return cloneNode(obj, props, seen); + } else { + return cloneObject(obj, seen); } + } - function cloneArray (ary) { - var i = ary.length, clone = []; - while (i--) { - clone[i] = cloneOf(ary[i]); - } - return clone; + function cloneArray (ary, seen) { + var i = ary.length; + var clone = []; + while (i--) { + clone[i] = cloneOf(ary[i], seen); } + return clone; + } - function cloneNode (node, props) { - var i, len, key, clone = {}; - for (i = 0, len = props.length; i < len; i += 1) { - key = props[i]; - if (node.hasOwnProperty(key)) { - clone[key] = cloneOf(node[key]); - } - } - return clone; + function cloneNode (node, props, seen) { + var i, len, key; + var clone = {}; + for (i = 0, len = props.length; i < len; i += 1) { + key = props[i]; + if (node.hasOwnProperty(key)) { + clone[key] = cloneOf(node[key], seen); + } } + return clone; + } - function cloneObject (obj) { - var props = objectKeys(obj); - var i, len, key, clone = {}; - for (i = 0, len = props.length; i < len; i += 1) { - key = props[i]; - clone[key] = cloneOf(obj[key]); - } - return clone; + function cloneObject (obj, seen) { + var props = objectKeys(obj); + var i, len, key, value; + var clone = {}; + for (i = 0, len = props.length; i < len; i += 1) { + key = props[i]; + value = obj[key]; + if (seen.has(value)) { + continue; + } + clone[key] = cloneOf(value, seen); } + return clone; + } - function cloneOf (val) { - if (typeof val === 'object' && val !== null) { - if (val instanceof RegExp) { - return new RegExp(val); - } else if (isArray(val)) { - return cloneArray(val); - } else { - return cloneNodeOrObject(val); - } - } else { - return val; - } + function cloneOf (val, seen) { + if (typeof val === 'object' && val !== null) { + seen.set(val, true); + if (val instanceof RegExp) { + return new RegExp(val); + } else if (isArray(val)) { + return cloneArray(val, seen); + } else { + return cloneNodeOrObject(val, seen); + } + } else { + return val; } + } - return cloneNodeOrObject; + function cloneRoot (obj) { + var seen = new Map(); + seen.set(obj, true); + return cloneNodeOrObject(obj, seen); + } + + return cloneRoot; }; diff --git a/node_modules/espurify/lib/create-whitelist.js b/node_modules/espurify/lib/create-whitelist.js index b1dbc16a0..84e25997a 100644 --- a/node_modules/espurify/lib/create-whitelist.js +++ b/node_modules/espurify/lib/create-whitelist.js @@ -5,13 +5,13 @@ var objectKeys = require('core-js/library/fn/object/keys'); var assign = require('core-js/library/fn/object/assign'); module.exports = function createWhitelist (options) { - var opts = assign({}, options); - var typeName, i, len; - var keys = objectKeys(defaultProps); - var result = {}; - for (i = 0, len = keys.length; i < len; i += 1) { - typeName = keys[i]; - result[typeName] = defaultProps[typeName].concat(opts.extra); - } - return result; + var opts = assign({}, options); + var typeName, i, len; + var keys = objectKeys(defaultProps); + var result = {}; + for (i = 0, len = keys.length; i < len; i += 1) { + typeName = keys[i]; + result[typeName] = defaultProps[typeName].concat(opts.extra || []); + } + return result; }; diff --git a/node_modules/espurify/package.json b/node_modules/espurify/package.json index 0858b3eba..d17f1c381 100644 --- a/node_modules/espurify/package.json +++ b/node_modules/espurify/package.json @@ -1,7 +1,7 @@ { "name": "espurify", "description": "Clone new AST without extra properties", - "version": "1.7.0", + "version": "1.8.1", "author": { "name": "Takuto Wada", "email": "takuto.wada@gmail.com", @@ -12,17 +12,18 @@ "core-js": "^2.0.0" }, "devDependencies": { - "acorn": "^4.0.11", + "acorn": "^5.0.0", "babel-types": "^6.3.20", "babylon": "^6.3.20", "browserify": "^13.0.0", "derequire": "^2.0.2", "dereserve": "^1.0.0", - "esprima": "^2.6.0", + "esprima": "^4.0.0", "estraverse": "^4.1.0", - "jshint": "^2.8.0", "licensify": "^3.1.0", - "mocha": "^2.3.2" + "mocha": "^5.0.0", + "semistandard": "^12.0.0", + "snazzy": "^7.0.0" }, "files": [ "CHANGELOG.md", @@ -50,7 +51,20 @@ "preversion": "npm test", "version": "npm run dist && git add -A build", "dist": "browserify index.js --plugin licensify --standalone espurify | dereserve | derequire > ./build/espurify.js", - "lint": "jshint index.js", + "lint": "semistandard --verbose index.js lib test | snazzy", + "fmt": "semistandard --fix index.js lib test", "test": "npm run lint && mocha test" + }, + "semistandard": { + "ignore": [ + "/build/", + "/bench/", + "**/*.jsx" + ], + "globals": [ + "describe", + "beforeEach", + "it" + ] } } |