zhang song 6 жил өмнө
parent
commit
53825737ed
100 өөрчлөгдсөн 5514 нэмэгдсэн , 3982 устгасан
  1. 1 0
      .gitignore
  2. 1 1
      dist/index.html
  3. 3 1
      node_modules/array-includes/.eslintrc
  4. 0 176
      node_modules/array-includes/.jscs.json
  5. 0 1
      node_modules/array-includes/.npmignore
  6. 6 176
      node_modules/array-includes/.travis.yml
  7. 18 0
      node_modules/array-includes/CHANGELOG.md
  8. 11 20
      node_modules/array-includes/README.md
  9. 16 14
      node_modules/array-includes/implementation.js
  10. 5 4
      node_modules/array-includes/index.js
  11. 34 39
      node_modules/array-includes/package.json
  12. 4 1
      node_modules/array-includes/test/.eslintrc
  13. 2 2
      node_modules/array-includes/test/index.js
  14. 3 3
      node_modules/array-includes/test/shimmed.js
  15. 6 2
      node_modules/array-includes/test/tests.js
  16. 8 3
      node_modules/axios/CHANGELOG.md
  17. 1 1
      node_modules/axios/README.md
  18. 29 99
      node_modules/axios/dist/axios.js
  19. 0 0
      node_modules/axios/dist/axios.map
  20. 0 1
      node_modules/axios/dist/axios.min.js
  21. 0 0
      node_modules/axios/dist/axios.min.map
  22. 1 0
      node_modules/axios/lib/adapters/http.js
  23. 4 22
      node_modules/axios/lib/adapters/xhr.js
  24. 0 36
      node_modules/axios/lib/helpers/btoa.js
  25. 17 20
      node_modules/axios/package.json
  26. 1 1
      node_modules/bonjour/node_modules/array-flatten/array-flatten.d.ts
  27. 16 20
      node_modules/bonjour/node_modules/array-flatten/package.json
  28. 22 0
      node_modules/compressible/HISTORY.md
  29. 9 10
      node_modules/compressible/README.md
  30. 26 29
      node_modules/compressible/package.json
  31. 20 0
      node_modules/compression/HISTORY.md
  32. 3 3
      node_modules/compression/README.md
  33. 13 2
      node_modules/compression/index.js
  34. 0 7
      node_modules/compression/node_modules/safe-buffer/.travis.yml
  35. 0 21
      node_modules/compression/node_modules/safe-buffer/LICENSE
  36. 0 584
      node_modules/compression/node_modules/safe-buffer/README.md
  37. 0 62
      node_modules/compression/node_modules/safe-buffer/index.js
  38. 0 66
      node_modules/compression/node_modules/safe-buffer/package.json
  39. 0 101
      node_modules/compression/node_modules/safe-buffer/test.js
  40. 28 31
      node_modules/compression/package.json
  41. 3 0
      node_modules/connect-history-api-fallback/CHANGELOG.md
  42. 12 1
      node_modules/connect-history-api-fallback/lib/index.js
  43. 15 19
      node_modules/connect-history-api-fallback/package.json
  44. 1 0
      node_modules/define-properties/.eslintrc
  45. 49 5
      node_modules/define-properties/.jscs.json
  46. 0 2
      node_modules/define-properties/.npmignore
  47. 199 26
      node_modules/define-properties/.travis.yml
  48. 9 0
      node_modules/define-properties/CHANGELOG.md
  49. 14 12
      node_modules/define-properties/index.js
  50. 30 31
      node_modules/define-properties/package.json
  51. 1 2
      node_modules/define-properties/test/index.js
  52. 8 1
      node_modules/detect-node/Readme.md
  53. 1 5
      node_modules/detect-node/index.js
  54. 15 18
      node_modules/detect-node/package.json
  55. 57 4
      node_modules/es-abstract/.eslintrc
  56. 0 176
      node_modules/es-abstract/.jscs.json
  57. 6 7
      node_modules/es-abstract/.nycrc
  58. 21 196
      node_modules/es-abstract/.travis.yml
  59. 125 0
      node_modules/es-abstract/CHANGELOG.md
  60. 8 4
      node_modules/es-abstract/README.md
  61. 110 650
      node_modules/es-abstract/es2015.js
  62. 115 12
      node_modules/es-abstract/es2016.js
  63. 116 21
      node_modules/es-abstract/es2017.js
  64. 44 231
      node_modules/es-abstract/es5.js
  65. 14 4
      node_modules/es-abstract/helpers/assign.js
  66. 2 0
      node_modules/es-abstract/helpers/isFinite.js
  67. 2 0
      node_modules/es-abstract/helpers/isNaN.js
  68. 2 0
      node_modules/es-abstract/helpers/isPrimitive.js
  69. 2 0
      node_modules/es-abstract/helpers/mod.js
  70. 2 0
      node_modules/es-abstract/helpers/sign.js
  71. 5 1
      node_modules/es-abstract/index.js
  72. 113 72
      node_modules/es-abstract/operations/2015.js
  73. 272 73
      node_modules/es-abstract/operations/2016.js
  74. 320 74
      node_modules/es-abstract/operations/2017.js
  75. 0 10
      node_modules/es-abstract/operations/es5.js
  76. 56 41
      node_modules/es-abstract/package.json
  77. 0 11
      node_modules/es-abstract/test/.eslintrc
  78. 4 2
      node_modules/es-abstract/test/diffOps.js
  79. 3 3
      node_modules/es-abstract/test/es2015.js
  80. 0 3
      node_modules/es-abstract/test/es2016.js
  81. 0 3
      node_modules/es-abstract/test/es2017.js
  82. 481 112
      node_modules/es-abstract/test/es5.js
  83. 73 5
      node_modules/es-abstract/test/helpers/values.js
  84. 5 1
      node_modules/es-abstract/test/index.js
  85. 2706 197
      node_modules/es-abstract/test/tests.js
  86. 13 4
      node_modules/es-to-primitive/.eslintrc
  87. 0 155
      node_modules/es-to-primitive/.jscs.json
  88. 0 28
      node_modules/es-to-primitive/.npmignore
  89. 12 67
      node_modules/es-to-primitive/.travis.yml
  90. 20 0
      node_modules/es-to-primitive/CHANGELOG.md
  91. 2 6
      node_modules/es-to-primitive/README.md
  92. 14 6
      node_modules/es-to-primitive/es5.js
  93. 1 72
      node_modules/es-to-primitive/es6.js
  94. 2 0
      node_modules/es-to-primitive/helpers/isPrimitive.js
  95. 6 3
      node_modules/es-to-primitive/index.js
  96. 43 36
      node_modules/es-to-primitive/package.json
  97. 41 3
      node_modules/es-to-primitive/test/es5.js
  98. 26 6
      node_modules/es-to-primitive/test/es6.js
  99. 4 1
      node_modules/es-to-primitive/test/index.js
  100. 1 1
      node_modules/eventemitter3/README.md

+ 1 - 0
.gitignore

@@ -1 +1,2 @@
 # Created by .ignore support plugin (hsz.mobi)
 # Created by .ignore support plugin (hsz.mobi)
+/node_modules/

+ 1 - 1
dist/index.html

@@ -1,4 +1,4 @@
-<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>经销商管理系统</title><link rel="shortcut icon" href=https://dealer.jetour.com.cn/favicon.ico><link href=./static/css/app.f4c19dac3f0011afe7c14f876ac800ea.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.e6b663e54a83ee863b4a.js></script><script type=text/javascript src=./static/js/app.10ac916f1fe1a96799f8.js></script></body><script src="http://pv.sohu.com/cityjson?ie=utf-8"></script><script type=text/javascript>sessionStorage.setItem('ip', returnCitySN["cip"]);</script><script>var _hmt = _hmt || [];
+<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>经销商管理系统</title><link rel="shortcut icon" href=https://dealer.jetour.com.cn/favicon.ico><link href=./static/css/app.78c102a52d1558e63ca3a35cbf457a8c.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.e6b663e54a83ee863b4a.js></script><script type=text/javascript src=./static/js/app.1587739b56832ac08c9d.js></script></body><script src="http://pv.sohu.com/cityjson?ie=utf-8"></script><script type=text/javascript>sessionStorage.setItem('ip', returnCitySN["cip"]);</script><script>var _hmt = _hmt || [];
     (function() {
     (function() {
       var hm = document.createElement("script");
       var hm = document.createElement("script");
       hm.src = "https://hm.baidu.com/hm.js?95c45f55b7586b2c20d8c8b813693103";
       hm.src = "https://hm.baidu.com/hm.js?95c45f55b7586b2c20d8c8b813693103";

+ 3 - 1
node_modules/array-includes/.eslintrc

@@ -4,9 +4,11 @@
 	"extends": "@ljharb",
 	"extends": "@ljharb",
 
 
 	"rules": {
 	"rules": {
+		"func-names": 0,
 		"id-length": [2, { "min": 1, "max": 26 }],
 		"id-length": [2, { "min": 1, "max": 26 }],
 		"max-statements": [2, 14],
 		"max-statements": [2, 14],
-		"new-cap": [2, { capIsNewExceptions: ["ToObject", "ToInteger", "ToLength", "SameValueZero", "RequireObjectCoercible"] }],
+		"max-lines-per-function": 0,
+		"new-cap": [2, { capIsNewExceptions: ["GetIntrinsic", "ToObject", "ToInteger", "ToLength", "SameValueZero", "RequireObjectCoercible"] }],
 		"no-magic-numbers": [0],
 		"no-magic-numbers": [0],
 		"no-useless-call": [1]
 		"no-useless-call": [1]
 	}
 	}

+ 0 - 176
node_modules/array-includes/.jscs.json

@@ -1,176 +0,0 @@
-{
-	"es3": true,
-
-	"additionalRules": [],
-
-	"requireSemicolons": true,
-
-	"disallowMultipleSpaces": true,
-
-	"disallowIdentifierNames": [],
-
-	"requireCurlyBraces": {
-		"allExcept": [],
-		"keywords": ["if", "else", "for", "while", "do", "try", "catch"]
-	},
-
-	"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
-
-	"disallowSpaceAfterKeywords": [],
-
-	"disallowSpaceBeforeComma": true,
-	"disallowSpaceAfterComma": false,
-	"disallowSpaceBeforeSemicolon": true,
-
-	"disallowNodeTypes": [
-		"DebuggerStatement",
-		"ForInStatement",
-		"LabeledStatement",
-		"SwitchCase",
-		"SwitchStatement",
-		"WithStatement"
-	],
-
-	"requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
-
-	"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
-	"requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true },
-	"requireSpacesInFunctionDeclaration": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInFunctionDeclaration": { "beforeOpeningRoundBrace": true },
-
-	"requireSpaceBetweenArguments": true,
-
-	"disallowSpacesInsideParentheses": true,
-
-	"disallowSpacesInsideArrayBrackets": true,
-
-	"disallowQuotedKeysInObjects": { "allExcept": ["reserved"] },
-
-	"disallowSpaceAfterObjectKeys": true,
-
-	"requireCommaBeforeLineBreak": true,
-
-	"disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
-	"requireSpaceAfterPrefixUnaryOperators": [],
-
-	"disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
-	"requireSpaceBeforePostfixUnaryOperators": [],
-
-	"disallowSpaceBeforeBinaryOperators": [],
-	"requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-
-	"requireSpaceAfterBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-	"disallowSpaceAfterBinaryOperators": [],
-
-	"disallowImplicitTypeConversion": ["binary", "string"],
-
-	"disallowKeywords": ["with", "eval"],
-
-	"requireKeywordsOnNewLine": [],
-	"disallowKeywordsOnNewLine": ["else"],
-
-	"requireLineFeedAtFileEnd": true,
-
-	"disallowTrailingWhitespace": true,
-
-	"disallowTrailingComma": true,
-
-	"excludeFiles": ["node_modules/**", "vendor/**"],
-
-	"disallowMultipleLineStrings": true,
-
-	"requireDotNotation": { "allExcept": ["keywords"] },
-
-	"requireParenthesesAroundIIFE": true,
-
-	"validateLineBreaks": "LF",
-
-	"validateQuoteMarks": {
-		"escape": true,
-		"mark": "'"
-	},
-
-	"disallowOperatorBeforeLineBreak": [],
-
-	"requireSpaceBeforeKeywords": [
-		"do",
-		"for",
-		"if",
-		"else",
-		"switch",
-		"case",
-		"try",
-		"catch",
-		"finally",
-		"while",
-		"with",
-		"return"
-	],
-
-	"validateAlignedFunctionParameters": {
-		"lineBreakAfterOpeningBraces": true,
-		"lineBreakBeforeClosingBraces": true
-	},
-
-	"requirePaddingNewLinesBeforeExport": true,
-
-	"validateNewlineAfterArrayElements": {
-		"maximum": 3
-	},
-
-	"requirePaddingNewLinesAfterUseStrict": true,
-
-	"disallowArrowFunctions": true,
-
-	"disallowMultiLineTernary": true,
-
-	"validateOrderInObjectKeys": false,
-
-	"disallowIdenticalDestructuringNames": true,
-
-	"disallowNestedTernaries": { "maxLevel": 1 },
-
-	"requireSpaceAfterComma": { "allExcept": ["trailing"] },
-	"requireAlignedMultilineParams": false,
-
-	"requireSpacesInGenerator": {
-		"afterStar": true
-	},
-
-	"disallowSpacesInGenerator": {
-		"beforeStar": true
-	},
-
-	"disallowVar": false,
-
-	"requireArrayDestructuring": false,
-
-	"requireEnhancedObjectLiterals": false,
-
-	"requireObjectDestructuring": false,
-
-	"requireEarlyReturn": false,
-
-	"requireCapitalizedConstructorsNew": {
-		"allExcept": ["Function", "String", "Object", "Symbol", "Number", "Date", "RegExp", "Error", "Boolean", "Array"]
-	},
-
-	"requireImportAlphabetized": false,
-
-    "requireSpaceBeforeObjectValues": true,
-    "requireSpaceBeforeDestructuredValues": true,
-
-	"disallowSpacesInsideTemplateStringPlaceholders": true,
-
-    "disallowArrayDestructuringReturn": false,
-
-    "requireNewlineBeforeSingleStatementsInIf": false,
-
-	"disallowUnusedVariables": true,
-
-	"requireSpacesInsideImportedObjectBraces": true,
-
-	"requireUseStrict": true
-}
-

+ 0 - 1
node_modules/array-includes/.npmignore

@@ -1 +0,0 @@
-node_modules

+ 6 - 176
node_modules/array-includes/.travis.yml

@@ -1,182 +1,12 @@
+version: ~> 1.0
 language: node_js
 language: node_js
 os:
 os:
  - linux
  - linux
-node_js:
-  - "7.9"
-  - "6.10"
-  - "5.12"
-  - "4.8"
-  - "iojs-v3.3"
-  - "iojs-v2.5"
-  - "iojs-v1.8"
-  - "0.12"
-  - "0.10"
-  - "0.8"
-before_install:
-  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then npm install -g npm@1.3 ; elif [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then case "$(npm --version)" in 1.*) npm install -g npm@1.4.28 ;; 2.*) npm install -g npm@2 ;; esac ; fi'
-  - 'if [ "${TRAVIS_NODE_VERSION}" != "0.6" ] && [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then npm install -g npm; fi'
-install:
-  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ]; then nvm install 0.8 && npm install -g npm@1.3 && npm install -g npm@1.4.28 && npm install -g npm@2 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;'
-script:
-  - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi'
-  - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi'
-  - 'if [ -n "${COVERAGE-}" ]; then npm run coverage ; fi'
-  - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi'
-sudo: false
-env:
-  - TEST=true
+import:
+ - ljharb/travis-ci:node/all.yml
+ - ljharb/travis-ci:node/pretest.yml
+ - ljharb/travis-ci:node/posttest.yml
+ - ljharb/travis-ci:node/coverage.yml
 matrix:
 matrix:
-  fast_finish: true
-  include:
-    - node_js: "node"
-      env: PRETEST=true
-    - node_js: "node"
-      env: POSTTEST=true
-    - node_js: "4"
-      env: COVERAGE=true
-    - node_js: "7.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.11"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.10"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.11"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.4"
-      env: TEST=true ALLOW_FAILURE=true
-    ##- node_js: "7"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "6"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "5"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "4"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "iojs"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "0.12"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "0.10"
-      #env: TEST=true
-      #os: osx
-    #- node_js: "0.8"
-      #env: TEST=true
-      #os: osx
   allow_failures:
   allow_failures:
-    - os: osx
-    - env: TEST=true ALLOW_FAILURE=true
     - env: COVERAGE=true
     - env: COVERAGE=true

+ 18 - 0
node_modules/array-includes/CHANGELOG.md

@@ -1,3 +1,21 @@
+3.1.0 / 2019-12-11
+=================
+  * [New] add `auto` entry point
+  * [Refactor] use split-up `es-abstract` (68% bundle size decrease)
+  * [readme] fix repo URLs, remove testling, fix readme parsing
+  * [Deps] update `es-abstract`, `define-properties`
+  * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `evalmd`, `covert`, `functions-have-names`, `replace`, `semver`, `tape`, `@es-shims/api`, `function-bind`
+  * [meta] add `funding` field, FUNDING.yml
+  * [meta] Only apps should have lockfiles
+  * [Tests] add more `fromIndex` tests
+  * [Tests] use shared travis-ci configs
+  * [Tests] use `npx aud` instead of `nsp` or `npm audit` with hoops
+  * [Tests] remove `jscs`
+  * [Tests] use `functions-have-names`
+  * [Tests] use `npm audit` instead of `nsp`
+  * [Tests] remove `jscs`
+  * [actions] add automatic rebasing / merge commit blocking
+
 3.0.3 / 2017-04-18
 3.0.3 / 2017-04-18
 =================
 =================
   * [Fix] ensure that `shim.js` actually shims when the polyfill differs from native
   * [Fix] ensure that `shim.js` actually shims when the polyfill differs from native

+ 11 - 20
node_modules/array-includes/README.md

@@ -1,4 +1,4 @@
-#array-includes <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
+# array-includes <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
 
 
 [![Build Status][travis-svg]][travis-url]
 [![Build Status][travis-svg]][travis-url]
 [![dependency status][deps-svg]][deps-url]
 [![dependency status][deps-svg]][deps-url]
@@ -8,8 +8,6 @@
 
 
 [![npm badge][npm-badge-png]][package-url]
 [![npm badge][npm-badge-png]][package-url]
 
 
-[![browser support][testling-svg]][testling-url]
-
 An ES7/ES2016 spec-compliant `Array.prototype.includes` shim/polyfill/replacement that works as far down as ES3.
 An ES7/ES2016 spec-compliant `Array.prototype.includes` shim/polyfill/replacement that works as far down as ES3.
 
 
 This package implements the [es-shim API](https://github.com/es-shims/api) interface. It works in an ES3-supported environment and complies with the proposed [spec](http://www.ecma-international.org/ecma-262/6.0/).
 This package implements the [es-shim API](https://github.com/es-shims/api) interface. It works in an ES3-supported environment and complies with the proposed [spec](http://www.ecma-international.org/ecma-262/6.0/).
@@ -28,6 +26,7 @@ Basic usage: **includes(array, value[, fromIndex=0])**
 
 
 ```js
 ```js
 var includes = require('array-includes');
 var includes = require('array-includes');
+var assert = require('assert');
 var arr = [ 'one', 'two' ];
 var arr = [ 'one', 'two' ];
 
 
 includes(arr, 'one'); // true
 includes(arr, 'one'); // true
@@ -40,8 +39,6 @@ includes(arr, 'one', 1); // false
 ## Example
 ## Example
 
 
 ```js
 ```js
-var includes = require('array-includes');
-var assert = require('assert');
 var arr = [
 var arr = [
 	1,
 	1,
 	'foo',
 	'foo',
@@ -63,39 +60,33 @@ assert.equal(includes(arr, 'foo', 2), false);
 ```
 ```
 
 
 ```js
 ```js
-var includes = require('array-includes');
-var assert = require('assert');
 /* when Array#includes is not present */
 /* when Array#includes is not present */
 delete Array.prototype.includes;
 delete Array.prototype.includes;
 var shimmedIncludes = includes.shim();
 var shimmedIncludes = includes.shim();
 
 
 assert.equal(shimmedIncludes, includes.getPolyfill());
 assert.equal(shimmedIncludes, includes.getPolyfill());
-assert.deepEqual(arr.includes('foo', 1), includes(arr, 'foo', 1));
+assert.equal(arr.includes('foo', 1), includes(arr, 'foo', 1));
 ```
 ```
 
 
 ```js
 ```js
-var includes = require('array-includes');
-var assert = require('assert');
 /* when Array#includes is present */
 /* when Array#includes is present */
 var shimmedIncludes = includes.shim();
 var shimmedIncludes = includes.shim();
 
 
 assert.equal(shimmedIncludes, Array.prototype.includes);
 assert.equal(shimmedIncludes, Array.prototype.includes);
-assert.deepEqual(arr.includes(1, 'foo'), includes(arr, 1, 'foo'));
+assert.equal(arr.includes(1, 'foo'), includes(arr, 1, 'foo'));
 ```
 ```
 
 
 ## Tests
 ## Tests
 Simply clone the repo, `npm install`, and run `npm test`
 Simply clone the repo, `npm install`, and run `npm test`
 
 
 [package-url]: https://npmjs.org/package/array-includes
 [package-url]: https://npmjs.org/package/array-includes
-[npm-version-svg]: http://versionbadg.es/ljharb/array-includes.svg
-[travis-svg]: https://travis-ci.org/ljharb/array-includes.svg
-[travis-url]: https://travis-ci.org/ljharb/array-includes
-[deps-svg]: https://david-dm.org/ljharb/array-includes.svg
-[deps-url]: https://david-dm.org/ljharb/array-includes
-[dev-deps-svg]: https://david-dm.org/ljharb/array-includes/dev-status.svg
-[dev-deps-url]: https://david-dm.org/ljharb/array-includes#info=devDependencies
-[testling-svg]: https://ci.testling.com/ljharb/array-includes.png
-[testling-url]: https://ci.testling.com/ljharb/array-includes
+[npm-version-svg]: http://versionbadg.es/es-shims/array-includes.svg
+[travis-svg]: https://travis-ci.org/es-shims/array-includes.svg
+[travis-url]: https://travis-ci.org/es-shims/array-includes
+[deps-svg]: https://david-dm.org/es-shims/array-includes.svg
+[deps-url]: https://david-dm.org/es-shims/array-includes
+[dev-deps-svg]: https://david-dm.org/es-shims/array-includes/dev-status.svg
+[dev-deps-url]: https://david-dm.org/es-shims/array-includes#info=devDependencies
 [npm-badge-png]: https://nodei.co/npm/array-includes.png?downloads=true&stars=true
 [npm-badge-png]: https://nodei.co/npm/array-includes.png?downloads=true&stars=true
 [license-image]: http://img.shields.io/npm/l/array-includes.svg
 [license-image]: http://img.shields.io/npm/l/array-includes.svg
 [license-url]: LICENSE
 [license-url]: LICENSE

+ 16 - 14
node_modules/array-includes/implementation.js

@@ -1,28 +1,30 @@
 'use strict';
 'use strict';
 
 
-var ES = require('es-abstract/es6');
-var $isNaN = Number.isNaN || function isNaN(a) {
-	return a !== a;
-};
-var $isFinite = Number.isFinite || function isFinite(n) {
-	return typeof n === 'number' && global.isFinite(n);
-};
-var indexOf = Array.prototype.indexOf;
+var ToInteger = require('es-abstract/2018/ToInteger');
+var ToLength = require('es-abstract/2018/ToLength');
+var ToObject = require('es-abstract/2018/ToObject');
+var SameValueZero = require('es-abstract/2018/SameValueZero');
+var $isNaN = require('es-abstract/helpers/isNaN');
+var $isFinite = require('es-abstract/helpers/isFinite');
+var GetIntrinsic = require('es-abstract/GetIntrinsic');
+var callBind = require('es-abstract/helpers/callBind');
+
+var $indexOf = callBind.apply(GetIntrinsic('%Array.prototype.indexOf%'));
 
 
 module.exports = function includes(searchElement) {
 module.exports = function includes(searchElement) {
-	var fromIndex = arguments.length > 1 ? ES.ToInteger(arguments[1]) : 0;
-	if (indexOf && !$isNaN(searchElement) && $isFinite(fromIndex) && typeof searchElement !== 'undefined') {
-		return indexOf.apply(this, arguments) > -1;
+	var fromIndex = arguments.length > 1 ? ToInteger(arguments[1]) : 0;
+	if ($indexOf && !$isNaN(searchElement) && $isFinite(fromIndex) && typeof searchElement !== 'undefined') {
+		return $indexOf(this, arguments) > -1;
 	}
 	}
 
 
-	var O = ES.ToObject(this);
-	var length = ES.ToLength(O.length);
+	var O = ToObject(this);
+	var length = ToLength(O.length);
 	if (length === 0) {
 	if (length === 0) {
 		return false;
 		return false;
 	}
 	}
 	var k = fromIndex >= 0 ? fromIndex : Math.max(0, length + fromIndex);
 	var k = fromIndex >= 0 ? fromIndex : Math.max(0, length + fromIndex);
 	while (k < length) {
 	while (k < length) {
-		if (ES.SameValueZero(searchElement, O[k])) {
+		if (SameValueZero(searchElement, O[k])) {
 			return true;
 			return true;
 		}
 		}
 		k += 1;
 		k += 1;

+ 5 - 4
node_modules/array-includes/index.js

@@ -1,20 +1,21 @@
 'use strict';
 'use strict';
 
 
 var define = require('define-properties');
 var define = require('define-properties');
-var ES = require('es-abstract/es6');
+var RequireObjectCoercible = require('es-abstract/2018/RequireObjectCoercible');
+var callBound = require('es-abstract/helpers/callBound');
 
 
 var implementation = require('./implementation');
 var implementation = require('./implementation');
 var getPolyfill = require('./polyfill');
 var getPolyfill = require('./polyfill');
 var polyfill = getPolyfill();
 var polyfill = getPolyfill();
 var shim = require('./shim');
 var shim = require('./shim');
 
 
-var slice = Array.prototype.slice;
+var $slice = callBound('Array.prototype.slice');
 
 
 /* eslint-disable no-unused-vars */
 /* eslint-disable no-unused-vars */
 var boundIncludesShim = function includes(array, searchElement) {
 var boundIncludesShim = function includes(array, searchElement) {
 /* eslint-enable no-unused-vars */
 /* eslint-enable no-unused-vars */
-	ES.RequireObjectCoercible(array);
-	return polyfill.apply(array, slice.call(arguments, 1));
+	RequireObjectCoercible(array);
+	return polyfill.apply(array, $slice(arguments, 1));
 };
 };
 define(boundIncludesShim, {
 define(boundIncludesShim, {
 	getPolyfill: getPolyfill,
 	getPolyfill: getPolyfill,

+ 34 - 39
node_modules/array-includes/package.json

@@ -1,41 +1,36 @@
 {
 {
-  "_args": [
-    [
-      "array-includes@3.0.3",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "array-includes@3.0.3",
-  "_id": "array-includes@3.0.3",
+  "_from": "array-includes@^3.0.3",
+  "_id": "array-includes@3.1.0",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=",
+  "_integrity": "sha512-ONOEQoKrvXPKk7Su92Co0YMqYO32FfqJTzkKU9u2UpIXyYZIzLSvpdg4AwvSw4mSUW0czu6inK+zby6Oj6gDjQ==",
   "_location": "/array-includes",
   "_location": "/array-includes",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "array-includes@3.0.3",
+    "raw": "array-includes@^3.0.3",
     "name": "array-includes",
     "name": "array-includes",
     "escapedName": "array-includes",
     "escapedName": "array-includes",
-    "rawSpec": "3.0.3",
+    "rawSpec": "^3.0.3",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "3.0.3"
+    "fetchSpec": "^3.0.3"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/webpack-dev-server"
     "/webpack-dev-server"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz",
-  "_spec": "3.0.3",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.0.tgz",
+  "_shasum": "48a929ef4c6bb1fa6dc4a92c9b023a261b0ca404",
+  "_spec": "array-includes@^3.0.3",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\webpack-dev-server",
   "author": {
   "author": {
     "name": "Jordan Harband",
     "name": "Jordan Harband",
     "email": "ljharb@gmail.com",
     "email": "ljharb@gmail.com",
     "url": "http://ljharb.codes"
     "url": "http://ljharb.codes"
   },
   },
   "bugs": {
   "bugs": {
-    "url": "https://github.com/ljharb/array-includes/issues"
+    "url": "https://github.com/es-shims/array-includes/issues"
   },
   },
+  "bundleDependencies": false,
   "contributors": [
   "contributors": [
     {
     {
       "name": "Jordan Harband",
       "name": "Jordan Harband",
@@ -44,29 +39,32 @@
     }
     }
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "define-properties": "^1.1.2",
-    "es-abstract": "^1.7.0"
+    "define-properties": "^1.1.3",
+    "es-abstract": "^1.17.0-next.0"
   },
   },
+  "deprecated": false,
   "description": "An ES7/ES2016 spec-compliant `Array.prototype.includes` shim/polyfill/replacement that works as far down as ES3.",
   "description": "An ES7/ES2016 spec-compliant `Array.prototype.includes` shim/polyfill/replacement that works as far down as ES3.",
   "devDependencies": {
   "devDependencies": {
-    "@es-shims/api": "^1.2.0",
-    "@ljharb/eslint-config": "^11.0.0",
-    "covert": "^1.1.0",
-    "eslint": "^3.19.0",
-    "evalmd": "^0.0.17",
+    "@es-shims/api": "^2.1.2",
+    "@ljharb/eslint-config": "^15.0.2",
+    "covert": "^1.1.1",
+    "eslint": "^6.7.2",
+    "evalmd": "0.0.19",
     "foreach": "^2.0.5",
     "foreach": "^2.0.5",
-    "function-bind": "^1.1.0",
+    "function-bind": "^1.1.1",
+    "functions-have-names": "^1.2.0",
     "indexof": "^0.0.1",
     "indexof": "^0.0.1",
-    "jscs": "^3.0.7",
-    "nsp": "^2.6.3",
-    "replace": "^0.3.0",
-    "semver": "^5.3.0",
-    "tape": "^4.6.3"
+    "replace": "^1.1.1",
+    "semver": "^6.3.0",
+    "tape": "^4.11.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.4"
     "node": ">= 0.4"
   },
   },
-  "homepage": "https://github.com/ljharb/array-includes#readme",
+  "funding": {
+    "url": "https://github.com/sponsors/ljharb"
+  },
+  "homepage": "https://github.com/es-shims/array-includes#readme",
   "keywords": [
   "keywords": [
     "Array.prototype.includes",
     "Array.prototype.includes",
     "includes",
     "includes",
@@ -83,17 +81,14 @@
   "name": "array-includes",
   "name": "array-includes",
   "repository": {
   "repository": {
     "type": "git",
     "type": "git",
-    "url": "git://github.com/ljharb/array-includes.git"
+    "url": "git://github.com/es-shims/array-includes.git"
   },
   },
   "scripts": {
   "scripts": {
     "coverage": "covert test/*.js",
     "coverage": "covert test/*.js",
     "coverage:quiet": "covert test/*.js --quiet",
     "coverage:quiet": "covert test/*.js --quiet",
-    "eslint": "eslint test/*.js *.js",
-    "jscs": "jscs test/*.js *.js",
-    "lint": "npm run --silent jscs && npm run --silent eslint",
-    "posttest": "npm run --silent security",
+    "lint": "eslint .",
+    "posttest": "npx aud",
     "pretest": "npm run --silent lint && evalmd README.md",
     "pretest": "npm run --silent lint && evalmd README.md",
-    "security": "nsp check",
     "test": "npm run --silent tests-only",
     "test": "npm run --silent tests-only",
     "test:module": "node test/index.js",
     "test:module": "node test/index.js",
     "test:shimmed": "node test/shimmed.js",
     "test:shimmed": "node test/shimmed.js",
@@ -120,5 +115,5 @@
       "android-browser/4.2"
       "android-browser/4.2"
     ]
     ]
   },
   },
-  "version": "3.0.3"
+  "version": "3.1.0"
 }
 }

+ 4 - 1
node_modules/array-includes/test/.eslintrc

@@ -3,6 +3,9 @@
 		"max-nested-callbacks": [2, 3],
 		"max-nested-callbacks": [2, 3],
 		"max-statements-per-line": [2, { "max": 2 }],
 		"max-statements-per-line": [2, { "max": 2 }],
 		"no-invalid-this": [1],
 		"no-invalid-this": [1],
-		"sort-keys": [0]
+		"sort-keys": 0,
+		"array-bracket-newline": 0,
+		"array-element-newline": 0,
+		"object-curly-newline": 0,
 	}
 	}
 }
 }

+ 2 - 2
node_modules/array-includes/test/index.js

@@ -6,8 +6,8 @@ var runTests = require('./tests');
 
 
 test('as a function', function (t) {
 test('as a function', function (t) {
 	t.test('bad array/this value', function (st) {
 	t.test('bad array/this value', function (st) {
-		st.throws(includes.bind(null, undefined, 'a'), TypeError, 'undefined is not an object');
-		st.throws(includes.bind(null, null, 'a'), TypeError, 'null is not an object');
+		st['throws'](includes.bind(null, undefined, 'a'), TypeError, 'undefined is not an object');
+		st['throws'](includes.bind(null, null, 'a'), TypeError, 'null is not an object');
 		st.end();
 		st.end();
 	});
 	});
 
 

+ 3 - 3
node_modules/array-includes/test/shimmed.js

@@ -6,7 +6,7 @@ var test = require('tape');
 var defineProperties = require('define-properties');
 var defineProperties = require('define-properties');
 var bind = require('function-bind');
 var bind = require('function-bind');
 var isEnumerable = Object.prototype.propertyIsEnumerable;
 var isEnumerable = Object.prototype.propertyIsEnumerable;
-var functionsHaveNames = function f() {}.name === 'f';
+var functionsHaveNames = require('functions-have-names')();
 
 
 var runTests = require('./tests');
 var runTests = require('./tests');
 
 
@@ -25,8 +25,8 @@ test('shimmed', function (t) {
 	var supportsStrictMode = (function () { return typeof this === 'undefined'; }());
 	var supportsStrictMode = (function () { return typeof this === 'undefined'; }());
 
 
 	t.test('bad array/this value', { skip: !supportsStrictMode }, function (st) {
 	t.test('bad array/this value', { skip: !supportsStrictMode }, function (st) {
-		st.throws(function () { return Array.prototype.includes.call(undefined, 'a'); }, TypeError, 'undefined is not an object');
-		st.throws(function () { return Array.prototype.includes.call(null, 'a'); }, TypeError, 'null is not an object');
+		st['throws'](function () { return Array.prototype.includes.call(undefined, 'a'); }, TypeError, 'undefined is not an object');
+		st['throws'](function () { return Array.prototype.includes.call(null, 'a'); }, TypeError, 'null is not an object');
 		st.end();
 		st.end();
 	});
 	});
 
 

+ 6 - 2
node_modules/array-includes/test/tests.js

@@ -20,12 +20,12 @@ module.exports = function (includes, t) {
 
 
 	t.test('exceptions', function (et) {
 	t.test('exceptions', function (et) {
 		et.test('fromIndex conversion', function (st) {
 		et.test('fromIndex conversion', function (st) {
-			st.throws(includes.bind(null, [0], 0, thrower), RangeError, 'fromIndex conversion throws');
+			st['throws'](includes.bind(null, [0], 0, thrower), RangeError, 'fromIndex conversion throws');
 			st.end();
 			st.end();
 		});
 		});
 
 
 		et.test('ToLength', function (st) {
 		et.test('ToLength', function (st) {
-			st.throws(includes.bind(null, { length: thrower, 0: true }, true), RangeError, 'ToLength conversion throws');
+			st['throws'](includes.bind(null, { length: thrower, 0: true }, true), RangeError, 'ToLength conversion throws');
 			st.end();
 			st.end();
 		});
 		});
 
 
@@ -44,6 +44,10 @@ module.exports = function (includes, t) {
 	t.test('fromIndex', function (ft) {
 	t.test('fromIndex', function (ft) {
 		ft.equal(true, includes([1], 1, NaN), 'NaN fromIndex -> 0 fromIndex');
 		ft.equal(true, includes([1], 1, NaN), 'NaN fromIndex -> 0 fromIndex');
 
 
+		ft.equal(true, includes([0, 1, 2], 1, 0), 'starting from 0 finds index 1');
+		ft.equal(true, includes([0, 1, 2], 1, 1), 'starting from 1 finds index 1');
+		ft.equal(false, includes([0, 1, 2], 1, 2), 'starting from 2 does not find index 1');
+
 		ft.test('number coercion', function (st) {
 		ft.test('number coercion', function (st) {
 			st.equal(false, includes(['a', 'b', 'c'], 'a', numberish), 'does not find "a" with object fromIndex coercing to 2');
 			st.equal(false, includes(['a', 'b', 'c'], 'a', numberish), 'does not find "a" with object fromIndex coercing to 2');
 			st.equal(false, includes(['a', 'b', 'c'], 'a', '2'), 'does not find "a" with string fromIndex coercing to 2');
 			st.equal(false, includes(['a', 'b', 'c'], 'a', '2'), 'does not find "a" with string fromIndex coercing to 2');

+ 8 - 3
node_modules/axios/CHANGELOG.md

@@ -1,16 +1,21 @@
 # Changelog
 # Changelog
 
 
+### 0.18.1 (May 31, 2019)
+
+Security Fix:
+
+- Destroy stream on exceeding maxContentLength (fixes [#1098](https://github.com/axios/axios/issues/1098)) ([#1485](https://github.com/axios/axios/pull/1485)) - Gadzhi Gadzhiev
+
 ### 0.18.0 (Feb 19, 2018)
 ### 0.18.0 (Feb 19, 2018)
 
 
 - Adding support for UNIX Sockets when running with Node.js ([#1070](https://github.com/axios/axios/pull/1070))
 - Adding support for UNIX Sockets when running with Node.js ([#1070](https://github.com/axios/axios/pull/1070))
 - Fixing typings ([#1177](https://github.com/axios/axios/pull/1177)):
 - Fixing typings ([#1177](https://github.com/axios/axios/pull/1177)):
-    - AxiosRequestConfig.proxy: allows type false
-    - AxiosProxyConfig: added auth field
+  - AxiosRequestConfig.proxy: allows type false
+  - AxiosProxyConfig: added auth field
 - Adding function signature in AxiosInstance interface so AxiosInstance can be invoked ([#1192](https://github.com/axios/axios/pull/1192), [#1254](https://github.com/axios/axios/pull/1254))
 - Adding function signature in AxiosInstance interface so AxiosInstance can be invoked ([#1192](https://github.com/axios/axios/pull/1192), [#1254](https://github.com/axios/axios/pull/1254))
 - Allowing maxContentLength to pass through to redirected calls as maxBodyLength in follow-redirects config ([#1287](https://github.com/axios/axios/pull/1287))
 - Allowing maxContentLength to pass through to redirected calls as maxBodyLength in follow-redirects config ([#1287](https://github.com/axios/axios/pull/1287))
 - Fixing configuration when using an instance - method can now be set ([#1342](https://github.com/axios/axios/pull/1342))
 - Fixing configuration when using an instance - method can now be set ([#1342](https://github.com/axios/axios/pull/1342))
 
 
-
 ### 0.17.1 (Nov 11, 2017)
 ### 0.17.1 (Nov 11, 2017)
 
 
 - Fixing issue with web workers ([#1160](https://github.com/axios/axios/pull/1160))
 - Fixing issue with web workers ([#1160](https://github.com/axios/axios/pull/1160))

+ 1 - 1
node_modules/axios/README.md

@@ -24,7 +24,7 @@ Promise based HTTP client for the browser and node.js
 
 
 ![Chrome](https://raw.github.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png) | ![Firefox](https://raw.github.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/master/src/safari/safari_48x48.png) | ![Opera](https://raw.github.com/alrra/browser-logos/master/src/opera/opera_48x48.png) | ![Edge](https://raw.github.com/alrra/browser-logos/master/src/edge/edge_48x48.png) | ![IE](https://raw.github.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png) |
 ![Chrome](https://raw.github.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png) | ![Firefox](https://raw.github.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/master/src/safari/safari_48x48.png) | ![Opera](https://raw.github.com/alrra/browser-logos/master/src/opera/opera_48x48.png) | ![Edge](https://raw.github.com/alrra/browser-logos/master/src/edge/edge_48x48.png) | ![IE](https://raw.github.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png) |
 --- | --- | --- | --- | --- | --- |
 --- | --- | --- | --- | --- | --- |
-Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | 8+ ✔ |
+Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | 11 ✔ |
 
 
 [![Browser Matrix](https://saucelabs.com/open_sauce/build_matrix/axios.svg)](https://saucelabs.com/u/axios)
 [![Browser Matrix](https://saucelabs.com/open_sauce/build_matrix/axios.svg)](https://saucelabs.com/u/axios)
 
 

+ 29 - 99
node_modules/axios/dist/axios.js

@@ -1,4 +1,4 @@
-/* axios v0.18.0 | (c) 2018 by Matt Zabriskie */
+/* axios v0.18.1 | (c) 2019 by Matt Zabriskie */
 (function webpackUniversalModuleDefinition(root, factory) {
 (function webpackUniversalModuleDefinition(root, factory) {
 	if(typeof exports === 'object' && typeof module === 'object')
 	if(typeof exports === 'object' && typeof module === 'object')
 		module.exports = factory();
 		module.exports = factory();
@@ -99,15 +99,15 @@ return /******/ (function(modules) { // webpackBootstrap
 	};
 	};
 	
 	
 	// Expose Cancel & CancelToken
 	// Expose Cancel & CancelToken
-	axios.Cancel = __webpack_require__(23);
-	axios.CancelToken = __webpack_require__(24);
-	axios.isCancel = __webpack_require__(20);
+	axios.Cancel = __webpack_require__(22);
+	axios.CancelToken = __webpack_require__(23);
+	axios.isCancel = __webpack_require__(19);
 	
 	
 	// Expose all/spread
 	// Expose all/spread
 	axios.all = function all(promises) {
 	axios.all = function all(promises) {
 	  return Promise.all(promises);
 	  return Promise.all(promises);
 	};
 	};
-	axios.spread = __webpack_require__(25);
+	axios.spread = __webpack_require__(24);
 	
 	
 	module.exports = axios;
 	module.exports = axios;
 	
 	
@@ -452,19 +452,9 @@ return /******/ (function(modules) { // webpackBootstrap
 	 * @license  MIT
 	 * @license  MIT
 	 */
 	 */
 	
 	
-	// The _isBuffer check is for Safari 5-7 support, because it's missing
-	// Object.prototype.constructor. Remove this eventually
-	module.exports = function (obj) {
-	  return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)
-	}
-	
-	function isBuffer (obj) {
-	  return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)
-	}
-	
-	// For Node v0.10 support. Remove this eventually.
-	function isSlowBuffer (obj) {
-	  return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))
+	module.exports = function isBuffer (obj) {
+	  return obj != null && obj.constructor != null &&
+	    typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)
 	}
 	}
 
 
 
 
@@ -476,8 +466,8 @@ return /******/ (function(modules) { // webpackBootstrap
 	
 	
 	var defaults = __webpack_require__(6);
 	var defaults = __webpack_require__(6);
 	var utils = __webpack_require__(2);
 	var utils = __webpack_require__(2);
-	var InterceptorManager = __webpack_require__(17);
-	var dispatchRequest = __webpack_require__(18);
+	var InterceptorManager = __webpack_require__(16);
+	var dispatchRequest = __webpack_require__(17);
 	
 	
 	/**
 	/**
 	 * Create a new instance of Axios
 	 * Create a new instance of Axios
@@ -685,7 +675,6 @@ return /******/ (function(modules) { // webpackBootstrap
 	var parseHeaders = __webpack_require__(13);
 	var parseHeaders = __webpack_require__(13);
 	var isURLSameOrigin = __webpack_require__(14);
 	var isURLSameOrigin = __webpack_require__(14);
 	var createError = __webpack_require__(10);
 	var createError = __webpack_require__(10);
-	var btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(15);
 	
 	
 	module.exports = function xhrAdapter(config) {
 	module.exports = function xhrAdapter(config) {
 	  return new Promise(function dispatchXhrRequest(resolve, reject) {
 	  return new Promise(function dispatchXhrRequest(resolve, reject) {
@@ -697,22 +686,6 @@ return /******/ (function(modules) { // webpackBootstrap
 	    }
 	    }
 	
 	
 	    var request = new XMLHttpRequest();
 	    var request = new XMLHttpRequest();
-	    var loadEvent = 'onreadystatechange';
-	    var xDomain = false;
-	
-	    // For IE 8/9 CORS support
-	    // Only supports POST and GET calls and doesn't returns the response headers.
-	    // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.
-	    if (("production") !== 'test' &&
-	        typeof window !== 'undefined' &&
-	        window.XDomainRequest && !('withCredentials' in request) &&
-	        !isURLSameOrigin(config.url)) {
-	      request = new window.XDomainRequest();
-	      loadEvent = 'onload';
-	      xDomain = true;
-	      request.onprogress = function handleProgress() {};
-	      request.ontimeout = function handleTimeout() {};
-	    }
 	
 	
 	    // HTTP basic authentication
 	    // HTTP basic authentication
 	    if (config.auth) {
 	    if (config.auth) {
@@ -727,8 +700,8 @@ return /******/ (function(modules) { // webpackBootstrap
 	    request.timeout = config.timeout;
 	    request.timeout = config.timeout;
 	
 	
 	    // Listen for ready state
 	    // Listen for ready state
-	    request[loadEvent] = function handleLoad() {
-	      if (!request || (request.readyState !== 4 && !xDomain)) {
+	    request.onreadystatechange = function handleLoad() {
+	      if (!request || request.readyState !== 4) {
 	        return;
 	        return;
 	      }
 	      }
 	
 	
@@ -745,9 +718,8 @@ return /******/ (function(modules) { // webpackBootstrap
 	      var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
 	      var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
 	      var response = {
 	      var response = {
 	        data: responseData,
 	        data: responseData,
-	        // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)
-	        status: request.status === 1223 ? 204 : request.status,
-	        statusText: request.status === 1223 ? 'No Content' : request.statusText,
+	        status: request.status,
+	        statusText: request.statusText,
 	        headers: responseHeaders,
 	        headers: responseHeaders,
 	        config: config,
 	        config: config,
 	        request: request
 	        request: request
@@ -782,7 +754,7 @@ return /******/ (function(modules) { // webpackBootstrap
 	    // This is only done if running in a standard browser environment.
 	    // This is only done if running in a standard browser environment.
 	    // Specifically not if we're in a web worker, or react-native.
 	    // Specifically not if we're in a web worker, or react-native.
 	    if (utils.isStandardBrowserEnv()) {
 	    if (utils.isStandardBrowserEnv()) {
-	      var cookies = __webpack_require__(16);
+	      var cookies = __webpack_require__(15);
 	
 	
 	      // Add xsrf header
 	      // Add xsrf header
 	      var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?
 	      var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?
@@ -1149,48 +1121,6 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 /***/ }),
 /***/ }),
 /* 15 */
 /* 15 */
-/***/ (function(module, exports) {
-
-	'use strict';
-	
-	// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js
-	
-	var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
-	
-	function E() {
-	  this.message = 'String contains an invalid character';
-	}
-	E.prototype = new Error;
-	E.prototype.code = 5;
-	E.prototype.name = 'InvalidCharacterError';
-	
-	function btoa(input) {
-	  var str = String(input);
-	  var output = '';
-	  for (
-	    // initialize result and counter
-	    var block, charCode, idx = 0, map = chars;
-	    // if the next str index does not exist:
-	    //   change the mapping table to "="
-	    //   check if d has no fractional digits
-	    str.charAt(idx | 0) || (map = '=', idx % 1);
-	    // "8 - idx % 1 * 8" generates the sequence 2, 4, 6, 8
-	    output += map.charAt(63 & block >> 8 - idx % 1 * 8)
-	  ) {
-	    charCode = str.charCodeAt(idx += 3 / 4);
-	    if (charCode > 0xFF) {
-	      throw new E();
-	    }
-	    block = block << 8 | charCode;
-	  }
-	  return output;
-	}
-	
-	module.exports = btoa;
-
-
-/***/ }),
-/* 16 */
 /***/ (function(module, exports, __webpack_require__) {
 /***/ (function(module, exports, __webpack_require__) {
 
 
 	'use strict';
 	'use strict';
@@ -1249,7 +1179,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 17 */
+/* 16 */
 /***/ (function(module, exports, __webpack_require__) {
 /***/ (function(module, exports, __webpack_require__) {
 
 
 	'use strict';
 	'use strict';
@@ -1307,17 +1237,17 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 18 */
+/* 17 */
 /***/ (function(module, exports, __webpack_require__) {
 /***/ (function(module, exports, __webpack_require__) {
 
 
 	'use strict';
 	'use strict';
 	
 	
 	var utils = __webpack_require__(2);
 	var utils = __webpack_require__(2);
-	var transformData = __webpack_require__(19);
-	var isCancel = __webpack_require__(20);
+	var transformData = __webpack_require__(18);
+	var isCancel = __webpack_require__(19);
 	var defaults = __webpack_require__(6);
 	var defaults = __webpack_require__(6);
-	var isAbsoluteURL = __webpack_require__(21);
-	var combineURLs = __webpack_require__(22);
+	var isAbsoluteURL = __webpack_require__(20);
+	var combineURLs = __webpack_require__(21);
 	
 	
 	/**
 	/**
 	 * Throws a `Cancel` if cancellation has been requested.
 	 * Throws a `Cancel` if cancellation has been requested.
@@ -1399,7 +1329,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 19 */
+/* 18 */
 /***/ (function(module, exports, __webpack_require__) {
 /***/ (function(module, exports, __webpack_require__) {
 
 
 	'use strict';
 	'use strict';
@@ -1425,7 +1355,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 20 */
+/* 19 */
 /***/ (function(module, exports) {
 /***/ (function(module, exports) {
 
 
 	'use strict';
 	'use strict';
@@ -1436,7 +1366,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 21 */
+/* 20 */
 /***/ (function(module, exports) {
 /***/ (function(module, exports) {
 
 
 	'use strict';
 	'use strict';
@@ -1456,7 +1386,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 22 */
+/* 21 */
 /***/ (function(module, exports) {
 /***/ (function(module, exports) {
 
 
 	'use strict';
 	'use strict';
@@ -1476,7 +1406,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 23 */
+/* 22 */
 /***/ (function(module, exports) {
 /***/ (function(module, exports) {
 
 
 	'use strict';
 	'use strict';
@@ -1501,12 +1431,12 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 24 */
+/* 23 */
 /***/ (function(module, exports, __webpack_require__) {
 /***/ (function(module, exports, __webpack_require__) {
 
 
 	'use strict';
 	'use strict';
 	
 	
-	var Cancel = __webpack_require__(23);
+	var Cancel = __webpack_require__(22);
 	
 	
 	/**
 	/**
 	 * A `CancelToken` is an object that can be used to request cancellation of an operation.
 	 * A `CancelToken` is an object that can be used to request cancellation of an operation.
@@ -1564,7 +1494,7 @@ return /******/ (function(modules) { // webpackBootstrap
 
 
 
 
 /***/ }),
 /***/ }),
-/* 25 */
+/* 24 */
 /***/ (function(module, exports) {
 /***/ (function(module, exports) {
 
 
 	'use strict';
 	'use strict';

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
node_modules/axios/dist/axios.map


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 1
node_modules/axios/dist/axios.min.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
node_modules/axios/dist/axios.min.map


+ 1 - 0
node_modules/axios/lib/adapters/http.js

@@ -181,6 +181,7 @@ module.exports = function httpAdapter(config) {
 
 
           // make sure the content length is not over the maxContentLength if specified
           // make sure the content length is not over the maxContentLength if specified
           if (config.maxContentLength > -1 && Buffer.concat(responseBuffer).length > config.maxContentLength) {
           if (config.maxContentLength > -1 && Buffer.concat(responseBuffer).length > config.maxContentLength) {
+            stream.destroy();
             reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',
             reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',
               config, null, lastRequest));
               config, null, lastRequest));
           }
           }

+ 4 - 22
node_modules/axios/lib/adapters/xhr.js

@@ -6,7 +6,6 @@ var buildURL = require('./../helpers/buildURL');
 var parseHeaders = require('./../helpers/parseHeaders');
 var parseHeaders = require('./../helpers/parseHeaders');
 var isURLSameOrigin = require('./../helpers/isURLSameOrigin');
 var isURLSameOrigin = require('./../helpers/isURLSameOrigin');
 var createError = require('../core/createError');
 var createError = require('../core/createError');
-var btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || require('./../helpers/btoa');
 
 
 module.exports = function xhrAdapter(config) {
 module.exports = function xhrAdapter(config) {
   return new Promise(function dispatchXhrRequest(resolve, reject) {
   return new Promise(function dispatchXhrRequest(resolve, reject) {
@@ -18,22 +17,6 @@ module.exports = function xhrAdapter(config) {
     }
     }
 
 
     var request = new XMLHttpRequest();
     var request = new XMLHttpRequest();
-    var loadEvent = 'onreadystatechange';
-    var xDomain = false;
-
-    // For IE 8/9 CORS support
-    // Only supports POST and GET calls and doesn't returns the response headers.
-    // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.
-    if (process.env.NODE_ENV !== 'test' &&
-        typeof window !== 'undefined' &&
-        window.XDomainRequest && !('withCredentials' in request) &&
-        !isURLSameOrigin(config.url)) {
-      request = new window.XDomainRequest();
-      loadEvent = 'onload';
-      xDomain = true;
-      request.onprogress = function handleProgress() {};
-      request.ontimeout = function handleTimeout() {};
-    }
 
 
     // HTTP basic authentication
     // HTTP basic authentication
     if (config.auth) {
     if (config.auth) {
@@ -48,8 +31,8 @@ module.exports = function xhrAdapter(config) {
     request.timeout = config.timeout;
     request.timeout = config.timeout;
 
 
     // Listen for ready state
     // Listen for ready state
-    request[loadEvent] = function handleLoad() {
-      if (!request || (request.readyState !== 4 && !xDomain)) {
+    request.onreadystatechange = function handleLoad() {
+      if (!request || request.readyState !== 4) {
         return;
         return;
       }
       }
 
 
@@ -66,9 +49,8 @@ module.exports = function xhrAdapter(config) {
       var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
       var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
       var response = {
       var response = {
         data: responseData,
         data: responseData,
-        // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)
-        status: request.status === 1223 ? 204 : request.status,
-        statusText: request.status === 1223 ? 'No Content' : request.statusText,
+        status: request.status,
+        statusText: request.statusText,
         headers: responseHeaders,
         headers: responseHeaders,
         config: config,
         config: config,
         request: request
         request: request

+ 0 - 36
node_modules/axios/lib/helpers/btoa.js

@@ -1,36 +0,0 @@
-'use strict';
-
-// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js
-
-var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
-
-function E() {
-  this.message = 'String contains an invalid character';
-}
-E.prototype = new Error;
-E.prototype.code = 5;
-E.prototype.name = 'InvalidCharacterError';
-
-function btoa(input) {
-  var str = String(input);
-  var output = '';
-  for (
-    // initialize result and counter
-    var block, charCode, idx = 0, map = chars;
-    // if the next str index does not exist:
-    //   change the mapping table to "="
-    //   check if d has no fractional digits
-    str.charAt(idx | 0) || (map = '=', idx % 1);
-    // "8 - idx % 1 * 8" generates the sequence 2, 4, 6, 8
-    output += map.charAt(63 & block >> 8 - idx % 1 * 8)
-  ) {
-    charCode = str.charCodeAt(idx += 3 / 4);
-    if (charCode > 0xFF) {
-      throw new E();
-    }
-    block = block << 8 | charCode;
-  }
-  return output;
-}
-
-module.exports = btoa;

+ 17 - 20
node_modules/axios/package.json

@@ -1,33 +1,28 @@
 {
 {
-  "_args": [
-    [
-      "axios@0.18.0",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "axios@0.18.0",
-  "_id": "axios@0.18.0",
+  "_from": "axios@0.18.1",
+  "_id": "axios@0.18.1",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=",
+  "_integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==",
   "_location": "/axios",
   "_location": "/axios",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
     "type": "version",
     "type": "version",
     "registry": true,
     "registry": true,
-    "raw": "axios@0.18.0",
+    "raw": "axios@0.18.1",
     "name": "axios",
     "name": "axios",
     "escapedName": "axios",
     "escapedName": "axios",
-    "rawSpec": "0.18.0",
+    "rawSpec": "0.18.1",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "0.18.0"
+    "fetchSpec": "0.18.1"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
-    "#DEV:/"
+    "#DEV:/",
+    "#USER"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/axios/-/axios-0.18.0.tgz",
-  "_spec": "0.18.0",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz",
+  "_shasum": "ff3f0de2e7b5d180e757ad98000f1081b87bcea3",
+  "_spec": "axios@0.18.1",
+  "_where": "D:\\workSpace\\dealer_front",
   "author": {
   "author": {
     "name": "Matt Zabriskie"
     "name": "Matt Zabriskie"
   },
   },
@@ -37,6 +32,7 @@
   "bugs": {
   "bugs": {
     "url": "https://github.com/axios/axios/issues"
     "url": "https://github.com/axios/axios/issues"
   },
   },
+  "bundleDependencies": false,
   "bundlesize": [
   "bundlesize": [
     {
     {
       "path": "./dist/axios.min.js",
       "path": "./dist/axios.min.js",
@@ -44,9 +40,10 @@
     }
     }
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "follow-redirects": "^1.3.0",
-    "is-buffer": "^1.1.5"
+    "follow-redirects": "1.5.10",
+    "is-buffer": "^2.0.2"
   },
   },
+  "deprecated": false,
   "description": "Promise based HTTP client for the browser and node.js",
   "description": "Promise based HTTP client for the browser and node.js",
   "devDependencies": {
   "devDependencies": {
     "bundlesize": "^0.5.7",
     "bundlesize": "^0.5.7",
@@ -110,5 +107,5 @@
     "version": "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json"
     "version": "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json"
   },
   },
   "typings": "./index.d.ts",
   "typings": "./index.d.ts",
-  "version": "0.18.0"
+  "version": "0.18.1"
 }
 }

+ 1 - 1
node_modules/bonjour/node_modules/array-flatten/array-flatten.d.ts

@@ -1,7 +1,7 @@
 declare function flatten <T> (array: flatten.NestedArray<T>): T[];
 declare function flatten <T> (array: flatten.NestedArray<T>): T[];
 
 
 declare namespace flatten {
 declare namespace flatten {
-  export interface NestedArray <T> extends Array<T | NestedArray<T>> {}
+  export interface NestedArray <T> extends ReadonlyArray<T | NestedArray<T>> {}
 
 
   export interface NestedList <T> {
   export interface NestedList <T> {
     [index: number]: T | NestedList<T>;
     [index: number]: T | NestedList<T>;

+ 16 - 20
node_modules/bonjour/node_modules/array-flatten/package.json

@@ -1,33 +1,27 @@
 {
 {
-  "_args": [
-    [
-      "array-flatten@2.1.1",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "array-flatten@2.1.1",
-  "_id": "array-flatten@2.1.1",
+  "_from": "array-flatten@^2.1.0",
+  "_id": "array-flatten@2.1.2",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=",
+  "_integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
   "_location": "/bonjour/array-flatten",
   "_location": "/bonjour/array-flatten",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "array-flatten@2.1.1",
+    "raw": "array-flatten@^2.1.0",
     "name": "array-flatten",
     "name": "array-flatten",
     "escapedName": "array-flatten",
     "escapedName": "array-flatten",
-    "rawSpec": "2.1.1",
+    "rawSpec": "^2.1.0",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "2.1.1"
+    "fetchSpec": "^2.1.0"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/bonjour"
     "/bonjour"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz",
-  "_spec": "2.1.1",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
+  "_shasum": "24ef80a28c1a893617e2149b0c6d0d788293b099",
+  "_spec": "array-flatten@^2.1.0",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\bonjour",
   "author": {
   "author": {
     "name": "Blake Embrey",
     "name": "Blake Embrey",
     "email": "hello@blakeembrey.com",
     "email": "hello@blakeembrey.com",
@@ -36,12 +30,14 @@
   "bugs": {
   "bugs": {
     "url": "https://github.com/blakeembrey/array-flatten/issues"
     "url": "https://github.com/blakeembrey/array-flatten/issues"
   },
   },
+  "bundleDependencies": false,
+  "deprecated": false,
   "description": "Flatten nested arrays",
   "description": "Flatten nested arrays",
   "devDependencies": {
   "devDependencies": {
-    "benchmarked": "^0.2.5",
+    "benchmarked": "^2.0.0",
     "istanbul": "^0.4.0",
     "istanbul": "^0.4.0",
     "mocha": "^3.1.2",
     "mocha": "^3.1.2",
-    "standard": "^8.5.0"
+    "standard": "^10.0.0"
   },
   },
   "files": [
   "files": [
     "array-flatten.js",
     "array-flatten.js",
@@ -72,5 +68,5 @@
     "test-spec": "mocha -R spec --bail"
     "test-spec": "mocha -R spec --bail"
   },
   },
   "typings": "array-flatten.d.ts",
   "typings": "array-flatten.d.ts",
-  "version": "2.1.1"
+  "version": "2.1.2"
 }
 }

+ 22 - 0
node_modules/compressible/HISTORY.md

@@ -1,3 +1,25 @@
+2.0.17 / 2019-04-24
+===================
+
+  * deps: mime-db@'>= 1.40.0 < 2'
+
+2.0.16 / 2019-02-18
+===================
+
+  * deps: mime-db@'>= 1.38.0 < 2'
+    - Mark `text/less` as compressible
+
+2.0.15 / 2018-09-17
+===================
+
+  * deps: mime-db@'>= 1.36.0 < 2'
+
+2.0.14 / 2018-06-05
+===================
+
+  * deps: mime-db@'>= 1.34.0 < 2'
+    - Mark all XML-derived types as compressible
+
 2.0.13 / 2018-02-17
 2.0.13 / 2018-02-17
 ===================
 ===================
 
 

+ 9 - 10
node_modules/compressible/README.md

@@ -1,7 +1,7 @@
 # compressible
 # compressible
 
 
-[![NPM Version][npm-image]][npm-url]
-[![NPM Downloads][downloads-image]][downloads-url]
+[![NPM Version][npm-version-image]][npm-url]
+[![NPM Downloads][npm-downloads-image]][npm-url]
 [![Node.js Version][node-version-image]][node-version-url]
 [![Node.js Version][node-version-image]][node-version-url]
 [![Build Status][travis-image]][travis-url]
 [![Build Status][travis-image]][travis-url]
 [![Test Coverage][coveralls-image]][coveralls-url]
 [![Test Coverage][coveralls-image]][coveralls-url]
@@ -50,13 +50,12 @@ compressible('image/png') // => false
 
 
 [MIT](LICENSE)
 [MIT](LICENSE)
 
 
-[npm-image]: https://img.shields.io/npm/v/compressible.svg
+[coveralls-image]: https://badgen.net/coveralls/c/github/jshttp/compressible/master
+[coveralls-url]: https://coveralls.io/r/jshttp/compressible?branch=master
+[node-version-image]: https://badgen.net/npm/node/compressible
+[node-version-url]: https://nodejs.org/en/download
+[npm-downloads-image]: https://badgen.net/npm/dm/compressible
 [npm-url]: https://npmjs.org/package/compressible
 [npm-url]: https://npmjs.org/package/compressible
-[node-version-image]: https://img.shields.io/node/v/compressible.svg
-[node-version-url]: https://nodejs.org/en/download/
-[travis-image]: https://img.shields.io/travis/jshttp/compressible/master.svg
+[npm-version-image]: https://badgen.net/npm/v/compressible
+[travis-image]: https://badgen.net/travis/jshttp/compressible/master
 [travis-url]: https://travis-ci.org/jshttp/compressible
 [travis-url]: https://travis-ci.org/jshttp/compressible
-[coveralls-image]: https://img.shields.io/coveralls/jshttp/compressible/master.svg
-[coveralls-url]: https://coveralls.io/r/jshttp/compressible?branch=master
-[downloads-image]: https://img.shields.io/npm/dm/compressible.svg
-[downloads-url]: https://npmjs.org/package/compressible

+ 26 - 29
node_modules/compressible/package.json

@@ -1,36 +1,31 @@
 {
 {
-  "_args": [
-    [
-      "compressible@2.0.13",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "compressible@2.0.13",
-  "_id": "compressible@2.0.13",
+  "_from": "compressible@~2.0.16",
+  "_id": "compressible@2.0.17",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-DRAgq5JLL9tNYnmHXH1tq6a6p6k=",
+  "_integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==",
   "_location": "/compressible",
   "_location": "/compressible",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "compressible@2.0.13",
+    "raw": "compressible@~2.0.16",
     "name": "compressible",
     "name": "compressible",
     "escapedName": "compressible",
     "escapedName": "compressible",
-    "rawSpec": "2.0.13",
+    "rawSpec": "~2.0.16",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "2.0.13"
+    "fetchSpec": "~2.0.16"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/compression"
     "/compression"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.13.tgz",
-  "_spec": "2.0.13",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz",
+  "_shasum": "6e8c108a16ad58384a977f3a482ca20bff2f38c1",
+  "_spec": "compressible@~2.0.16",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\compression",
   "bugs": {
   "bugs": {
     "url": "https://github.com/jshttp/compressible/issues"
     "url": "https://github.com/jshttp/compressible/issues"
   },
   },
+  "bundleDependencies": false,
   "contributors": [
   "contributors": [
     {
     {
       "name": "Douglas Christopher Wilson",
       "name": "Douglas Christopher Wilson",
@@ -48,19 +43,20 @@
     }
     }
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "mime-db": ">= 1.33.0 < 2"
+    "mime-db": ">= 1.40.0 < 2"
   },
   },
+  "deprecated": false,
   "description": "Compressible Content-Type / mime checking",
   "description": "Compressible Content-Type / mime checking",
   "devDependencies": {
   "devDependencies": {
-    "eslint": "3.19.0",
-    "eslint-config-standard": "10.2.1",
-    "eslint-plugin-import": "2.8.0",
-    "eslint-plugin-markdown": "1.0.0-beta.6",
-    "eslint-plugin-node": "5.2.1",
-    "eslint-plugin-promise": "3.6.0",
-    "eslint-plugin-standard": "3.0.1",
-    "mocha": "~1.21.5",
-    "nyc": "11.3.0"
+    "eslint": "5.15.2",
+    "eslint-config-standard": "12.0.0",
+    "eslint-plugin-import": "2.16.0",
+    "eslint-plugin-markdown": "1.0.0",
+    "eslint-plugin-node": "8.0.1",
+    "eslint-plugin-promise": "4.0.1",
+    "eslint-plugin-standard": "4.0.0",
+    "mocha": "6.1.4",
+    "nyc": "14.0.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.6"
     "node": ">= 0.6"
@@ -88,7 +84,8 @@
     "lint": "eslint --plugin markdown --ext js,md .",
     "lint": "eslint --plugin markdown --ext js,md .",
     "test": "mocha --reporter spec --bail --check-leaks test/",
     "test": "mocha --reporter spec --bail --check-leaks test/",
     "test-cov": "nyc --reporter=html --reporter=text npm test",
     "test-cov": "nyc --reporter=html --reporter=text npm test",
-    "test-travis": "nyc --reporter=text npm test"
+    "test-travis": "nyc --reporter=text npm test",
+    "version": "node scripts/version-history.js && git add HISTORY.md"
   },
   },
-  "version": "2.0.13"
+  "version": "2.0.17"
 }
 }

+ 20 - 0
node_modules/compression/HISTORY.md

@@ -1,3 +1,23 @@
+1.7.4 / 2019-03-18
+==================
+
+  * deps: compressible@~2.0.16
+    - Mark `text/less` as compressible
+    - deps: mime-db@'>= 1.38.0 < 2'
+  * deps: on-headers@~1.0.2
+    - Fix `res.writeHead` patch missing return value
+  * perf: prevent unnecessary buffer copy
+
+1.7.3 / 2018-07-15
+==================
+
+  * deps: accepts@~1.3.5
+    - deps: mime-types@~2.1.18
+  * deps: compressible@~2.0.14
+    - Mark all XML-derived types as compressible
+    - deps: mime-db@'>= 1.34.0 < 2'
+  * deps: safe-buffer@5.1.2
+
 1.7.2 / 2018-02-18
 1.7.2 / 2018-02-18
 ==================
 ==================
 
 

+ 3 - 3
node_modules/compression/README.md

@@ -126,8 +126,8 @@ is not set appropriately.
 ##### threshold
 ##### threshold
 
 
 The byte threshold for the response body size before compression is considered
 The byte threshold for the response body size before compression is considered
-for the response, defaults to `1kb`. This is a number of bytes, any string
-accepted by the [bytes](https://www.npmjs.com/package/bytes) module, or `false`.
+for the response, defaults to `1kb`. This is a number of bytes or any string
+accepted by the [bytes](https://www.npmjs.com/package/bytes) module.
 
 
 **Note** this is only an advisory setting; if the response size cannot be determined
 **Note** this is only an advisory setting; if the response size cannot be determined
 at the time the response headers are written, then it is assumed the response is
 at the time the response headers are written, then it is assumed the response is
@@ -151,7 +151,7 @@ var compression = require('compression')
 var express = require('express')
 var express = require('express')
 
 
 var app = express()
 var app = express()
-app.use(compression({filter: shouldCompress}))
+app.use(compression({ filter: shouldCompress }))
 
 
 function shouldCompress (req, res) {
 function shouldCompress (req, res) {
   if (req.headers['x-no-compression']) {
   if (req.headers['x-no-compression']) {

+ 13 - 2
node_modules/compression/index.js

@@ -85,7 +85,7 @@ function compression (options) {
       }
       }
 
 
       return stream
       return stream
-        ? stream.write(Buffer.from(chunk, encoding))
+        ? stream.write(toBuffer(chunk, encoding))
         : _write.call(this, chunk, encoding)
         : _write.call(this, chunk, encoding)
     }
     }
 
 
@@ -112,7 +112,7 @@ function compression (options) {
 
 
       // write Buffer for Node.js 0.8
       // write Buffer for Node.js 0.8
       return chunk
       return chunk
-        ? stream.end(Buffer.from(chunk, encoding))
+        ? stream.end(toBuffer(chunk, encoding))
         : stream.end()
         : stream.end()
     }
     }
 
 
@@ -275,3 +275,14 @@ function shouldTransform (req, res) {
   return !cacheControl ||
   return !cacheControl ||
     !cacheControlNoTransformRegExp.test(cacheControl)
     !cacheControlNoTransformRegExp.test(cacheControl)
 }
 }
+
+/**
+ * Coerce arguments to Buffer
+ * @private
+ */
+
+function toBuffer (chunk, encoding) {
+  return !Buffer.isBuffer(chunk)
+    ? Buffer.from(chunk, encoding)
+    : chunk
+}

+ 0 - 7
node_modules/compression/node_modules/safe-buffer/.travis.yml

@@ -1,7 +0,0 @@
-language: node_js
-node_js:
-  - 'node'
-  - '5'
-  - '4'
-  - '0.12'
-  - '0.10'

+ 0 - 21
node_modules/compression/node_modules/safe-buffer/LICENSE

@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Feross Aboukhadijeh
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.

+ 0 - 584
node_modules/compression/node_modules/safe-buffer/README.md

@@ -1,584 +0,0 @@
-# safe-buffer [![travis][travis-image]][travis-url] [![npm][npm-image]][npm-url] [![downloads][downloads-image]][downloads-url] [![javascript style guide][standard-image]][standard-url]
-
-[travis-image]: https://img.shields.io/travis/feross/safe-buffer/master.svg
-[travis-url]: https://travis-ci.org/feross/safe-buffer
-[npm-image]: https://img.shields.io/npm/v/safe-buffer.svg
-[npm-url]: https://npmjs.org/package/safe-buffer
-[downloads-image]: https://img.shields.io/npm/dm/safe-buffer.svg
-[downloads-url]: https://npmjs.org/package/safe-buffer
-[standard-image]: https://img.shields.io/badge/code_style-standard-brightgreen.svg
-[standard-url]: https://standardjs.com
-
-#### Safer Node.js Buffer API
-
-**Use the new Node.js Buffer APIs (`Buffer.from`, `Buffer.alloc`,
-`Buffer.allocUnsafe`, `Buffer.allocUnsafeSlow`) in all versions of Node.js.**
-
-**Uses the built-in implementation when available.**
-
-## install
-
-```
-npm install safe-buffer
-```
-
-## usage
-
-The goal of this package is to provide a safe replacement for the node.js `Buffer`.
-
-It's a drop-in replacement for `Buffer`. You can use it by adding one `require` line to
-the top of your node.js modules:
-
-```js
-var Buffer = require('safe-buffer').Buffer
-
-// Existing buffer code will continue to work without issues:
-
-new Buffer('hey', 'utf8')
-new Buffer([1, 2, 3], 'utf8')
-new Buffer(obj)
-new Buffer(16) // create an uninitialized buffer (potentially unsafe)
-
-// But you can use these new explicit APIs to make clear what you want:
-
-Buffer.from('hey', 'utf8') // convert from many types to a Buffer
-Buffer.alloc(16) // create a zero-filled buffer (safe)
-Buffer.allocUnsafe(16) // create an uninitialized buffer (potentially unsafe)
-```
-
-## api
-
-### Class Method: Buffer.from(array)
-<!-- YAML
-added: v3.0.0
--->
-
-* `array` {Array}
-
-Allocates a new `Buffer` using an `array` of octets.
-
-```js
-const buf = Buffer.from([0x62,0x75,0x66,0x66,0x65,0x72]);
-  // creates a new Buffer containing ASCII bytes
-  // ['b','u','f','f','e','r']
-```
-
-A `TypeError` will be thrown if `array` is not an `Array`.
-
-### Class Method: Buffer.from(arrayBuffer[, byteOffset[, length]])
-<!-- YAML
-added: v5.10.0
--->
-
-* `arrayBuffer` {ArrayBuffer} The `.buffer` property of a `TypedArray` or
-  a `new ArrayBuffer()`
-* `byteOffset` {Number} Default: `0`
-* `length` {Number} Default: `arrayBuffer.length - byteOffset`
-
-When passed a reference to the `.buffer` property of a `TypedArray` instance,
-the newly created `Buffer` will share the same allocated memory as the
-TypedArray.
-
-```js
-const arr = new Uint16Array(2);
-arr[0] = 5000;
-arr[1] = 4000;
-
-const buf = Buffer.from(arr.buffer); // shares the memory with arr;
-
-console.log(buf);
-  // Prints: <Buffer 88 13 a0 0f>
-
-// changing the TypedArray changes the Buffer also
-arr[1] = 6000;
-
-console.log(buf);
-  // Prints: <Buffer 88 13 70 17>
-```
-
-The optional `byteOffset` and `length` arguments specify a memory range within
-the `arrayBuffer` that will be shared by the `Buffer`.
-
-```js
-const ab = new ArrayBuffer(10);
-const buf = Buffer.from(ab, 0, 2);
-console.log(buf.length);
-  // Prints: 2
-```
-
-A `TypeError` will be thrown if `arrayBuffer` is not an `ArrayBuffer`.
-
-### Class Method: Buffer.from(buffer)
-<!-- YAML
-added: v3.0.0
--->
-
-* `buffer` {Buffer}
-
-Copies the passed `buffer` data onto a new `Buffer` instance.
-
-```js
-const buf1 = Buffer.from('buffer');
-const buf2 = Buffer.from(buf1);
-
-buf1[0] = 0x61;
-console.log(buf1.toString());
-  // 'auffer'
-console.log(buf2.toString());
-  // 'buffer' (copy is not changed)
-```
-
-A `TypeError` will be thrown if `buffer` is not a `Buffer`.
-
-### Class Method: Buffer.from(str[, encoding])
-<!-- YAML
-added: v5.10.0
--->
-
-* `str` {String} String to encode.
-* `encoding` {String} Encoding to use, Default: `'utf8'`
-
-Creates a new `Buffer` containing the given JavaScript string `str`. If
-provided, the `encoding` parameter identifies the character encoding.
-If not provided, `encoding` defaults to `'utf8'`.
-
-```js
-const buf1 = Buffer.from('this is a tést');
-console.log(buf1.toString());
-  // prints: this is a tést
-console.log(buf1.toString('ascii'));
-  // prints: this is a tC)st
-
-const buf2 = Buffer.from('7468697320697320612074c3a97374', 'hex');
-console.log(buf2.toString());
-  // prints: this is a tést
-```
-
-A `TypeError` will be thrown if `str` is not a string.
-
-### Class Method: Buffer.alloc(size[, fill[, encoding]])
-<!-- YAML
-added: v5.10.0
--->
-
-* `size` {Number}
-* `fill` {Value} Default: `undefined`
-* `encoding` {String} Default: `utf8`
-
-Allocates a new `Buffer` of `size` bytes. If `fill` is `undefined`, the
-`Buffer` will be *zero-filled*.
-
-```js
-const buf = Buffer.alloc(5);
-console.log(buf);
-  // <Buffer 00 00 00 00 00>
-```
-
-The `size` must be less than or equal to the value of
-`require('buffer').kMaxLength` (on 64-bit architectures, `kMaxLength` is
-`(2^31)-1`). Otherwise, a [`RangeError`][] is thrown. A zero-length Buffer will
-be created if a `size` less than or equal to 0 is specified.
-
-If `fill` is specified, the allocated `Buffer` will be initialized by calling
-`buf.fill(fill)`. See [`buf.fill()`][] for more information.
-
-```js
-const buf = Buffer.alloc(5, 'a');
-console.log(buf);
-  // <Buffer 61 61 61 61 61>
-```
-
-If both `fill` and `encoding` are specified, the allocated `Buffer` will be
-initialized by calling `buf.fill(fill, encoding)`. For example:
-
-```js
-const buf = Buffer.alloc(11, 'aGVsbG8gd29ybGQ=', 'base64');
-console.log(buf);
-  // <Buffer 68 65 6c 6c 6f 20 77 6f 72 6c 64>
-```
-
-Calling `Buffer.alloc(size)` can be significantly slower than the alternative
-`Buffer.allocUnsafe(size)` but ensures that the newly created `Buffer` instance
-contents will *never contain sensitive data*.
-
-A `TypeError` will be thrown if `size` is not a number.
-
-### Class Method: Buffer.allocUnsafe(size)
-<!-- YAML
-added: v5.10.0
--->
-
-* `size` {Number}
-
-Allocates a new *non-zero-filled* `Buffer` of `size` bytes.  The `size` must
-be less than or equal to the value of `require('buffer').kMaxLength` (on 64-bit
-architectures, `kMaxLength` is `(2^31)-1`). Otherwise, a [`RangeError`][] is
-thrown. A zero-length Buffer will be created if a `size` less than or equal to
-0 is specified.
-
-The underlying memory for `Buffer` instances created in this way is *not
-initialized*. The contents of the newly created `Buffer` are unknown and
-*may contain sensitive data*. Use [`buf.fill(0)`][] to initialize such
-`Buffer` instances to zeroes.
-
-```js
-const buf = Buffer.allocUnsafe(5);
-console.log(buf);
-  // <Buffer 78 e0 82 02 01>
-  // (octets will be different, every time)
-buf.fill(0);
-console.log(buf);
-  // <Buffer 00 00 00 00 00>
-```
-
-A `TypeError` will be thrown if `size` is not a number.
-
-Note that the `Buffer` module pre-allocates an internal `Buffer` instance of
-size `Buffer.poolSize` that is used as a pool for the fast allocation of new
-`Buffer` instances created using `Buffer.allocUnsafe(size)` (and the deprecated
-`new Buffer(size)` constructor) only when `size` is less than or equal to
-`Buffer.poolSize >> 1` (floor of `Buffer.poolSize` divided by two). The default
-value of `Buffer.poolSize` is `8192` but can be modified.
-
-Use of this pre-allocated internal memory pool is a key difference between
-calling `Buffer.alloc(size, fill)` vs. `Buffer.allocUnsafe(size).fill(fill)`.
-Specifically, `Buffer.alloc(size, fill)` will *never* use the internal Buffer
-pool, while `Buffer.allocUnsafe(size).fill(fill)` *will* use the internal
-Buffer pool if `size` is less than or equal to half `Buffer.poolSize`. The
-difference is subtle but can be important when an application requires the
-additional performance that `Buffer.allocUnsafe(size)` provides.
-
-### Class Method: Buffer.allocUnsafeSlow(size)
-<!-- YAML
-added: v5.10.0
--->
-
-* `size` {Number}
-
-Allocates a new *non-zero-filled* and non-pooled `Buffer` of `size` bytes.  The
-`size` must be less than or equal to the value of
-`require('buffer').kMaxLength` (on 64-bit architectures, `kMaxLength` is
-`(2^31)-1`). Otherwise, a [`RangeError`][] is thrown. A zero-length Buffer will
-be created if a `size` less than or equal to 0 is specified.
-
-The underlying memory for `Buffer` instances created in this way is *not
-initialized*. The contents of the newly created `Buffer` are unknown and
-*may contain sensitive data*. Use [`buf.fill(0)`][] to initialize such
-`Buffer` instances to zeroes.
-
-When using `Buffer.allocUnsafe()` to allocate new `Buffer` instances,
-allocations under 4KB are, by default, sliced from a single pre-allocated
-`Buffer`. This allows applications to avoid the garbage collection overhead of
-creating many individually allocated Buffers. This approach improves both
-performance and memory usage by eliminating the need to track and cleanup as
-many `Persistent` objects.
-
-However, in the case where a developer may need to retain a small chunk of
-memory from a pool for an indeterminate amount of time, it may be appropriate
-to create an un-pooled Buffer instance using `Buffer.allocUnsafeSlow()` then
-copy out the relevant bits.
-
-```js
-// need to keep around a few small chunks of memory
-const store = [];
-
-socket.on('readable', () => {
-  const data = socket.read();
-  // allocate for retained data
-  const sb = Buffer.allocUnsafeSlow(10);
-  // copy the data into the new allocation
-  data.copy(sb, 0, 0, 10);
-  store.push(sb);
-});
-```
-
-Use of `Buffer.allocUnsafeSlow()` should be used only as a last resort *after*
-a developer has observed undue memory retention in their applications.
-
-A `TypeError` will be thrown if `size` is not a number.
-
-### All the Rest
-
-The rest of the `Buffer` API is exactly the same as in node.js.
-[See the docs](https://nodejs.org/api/buffer.html).
-
-
-## Related links
-
-- [Node.js issue: Buffer(number) is unsafe](https://github.com/nodejs/node/issues/4660)
-- [Node.js Enhancement Proposal: Buffer.from/Buffer.alloc/Buffer.zalloc/Buffer() soft-deprecate](https://github.com/nodejs/node-eps/pull/4)
-
-## Why is `Buffer` unsafe?
-
-Today, the node.js `Buffer` constructor is overloaded to handle many different argument
-types like `String`, `Array`, `Object`, `TypedArrayView` (`Uint8Array`, etc.),
-`ArrayBuffer`, and also `Number`.
-
-The API is optimized for convenience: you can throw any type at it, and it will try to do
-what you want.
-
-Because the Buffer constructor is so powerful, you often see code like this:
-
-```js
-// Convert UTF-8 strings to hex
-function toHex (str) {
-  return new Buffer(str).toString('hex')
-}
-```
-
-***But what happens if `toHex` is called with a `Number` argument?***
-
-### Remote Memory Disclosure
-
-If an attacker can make your program call the `Buffer` constructor with a `Number`
-argument, then they can make it allocate uninitialized memory from the node.js process.
-This could potentially disclose TLS private keys, user data, or database passwords.
-
-When the `Buffer` constructor is passed a `Number` argument, it returns an
-**UNINITIALIZED** block of memory of the specified `size`. When you create a `Buffer` like
-this, you **MUST** overwrite the contents before returning it to the user.
-
-From the [node.js docs](https://nodejs.org/api/buffer.html#buffer_new_buffer_size):
-
-> `new Buffer(size)`
->
-> - `size` Number
->
-> The underlying memory for `Buffer` instances created in this way is not initialized.
-> **The contents of a newly created `Buffer` are unknown and could contain sensitive
-> data.** Use `buf.fill(0)` to initialize a Buffer to zeroes.
-
-(Emphasis our own.)
-
-Whenever the programmer intended to create an uninitialized `Buffer` you often see code
-like this:
-
-```js
-var buf = new Buffer(16)
-
-// Immediately overwrite the uninitialized buffer with data from another buffer
-for (var i = 0; i < buf.length; i++) {
-  buf[i] = otherBuf[i]
-}
-```
-
-
-### Would this ever be a problem in real code?
-
-Yes. It's surprisingly common to forget to check the type of your variables in a
-dynamically-typed language like JavaScript.
-
-Usually the consequences of assuming the wrong type is that your program crashes with an
-uncaught exception. But the failure mode for forgetting to check the type of arguments to
-the `Buffer` constructor is more catastrophic.
-
-Here's an example of a vulnerable service that takes a JSON payload and converts it to
-hex:
-
-```js
-// Take a JSON payload {str: "some string"} and convert it to hex
-var server = http.createServer(function (req, res) {
-  var data = ''
-  req.setEncoding('utf8')
-  req.on('data', function (chunk) {
-    data += chunk
-  })
-  req.on('end', function () {
-    var body = JSON.parse(data)
-    res.end(new Buffer(body.str).toString('hex'))
-  })
-})
-
-server.listen(8080)
-```
-
-In this example, an http client just has to send:
-
-```json
-{
-  "str": 1000
-}
-```
-
-and it will get back 1,000 bytes of uninitialized memory from the server.
-
-This is a very serious bug. It's similar in severity to the
-[the Heartbleed bug](http://heartbleed.com/) that allowed disclosure of OpenSSL process
-memory by remote attackers.
-
-
-### Which real-world packages were vulnerable?
-
-#### [`bittorrent-dht`](https://www.npmjs.com/package/bittorrent-dht)
-
-[Mathias Buus](https://github.com/mafintosh) and I
-([Feross Aboukhadijeh](http://feross.org/)) found this issue in one of our own packages,
-[`bittorrent-dht`](https://www.npmjs.com/package/bittorrent-dht). The bug would allow
-anyone on the internet to send a series of messages to a user of `bittorrent-dht` and get
-them to reveal 20 bytes at a time of uninitialized memory from the node.js process.
-
-Here's
-[the commit](https://github.com/feross/bittorrent-dht/commit/6c7da04025d5633699800a99ec3fbadf70ad35b8)
-that fixed it. We released a new fixed version, created a
-[Node Security Project disclosure](https://nodesecurity.io/advisories/68), and deprecated all
-vulnerable versions on npm so users will get a warning to upgrade to a newer version.
-
-#### [`ws`](https://www.npmjs.com/package/ws)
-
-That got us wondering if there were other vulnerable packages. Sure enough, within a short
-period of time, we found the same issue in [`ws`](https://www.npmjs.com/package/ws), the
-most popular WebSocket implementation in node.js.
-
-If certain APIs were called with `Number` parameters instead of `String` or `Buffer` as
-expected, then uninitialized server memory would be disclosed to the remote peer.
-
-These were the vulnerable methods:
-
-```js
-socket.send(number)
-socket.ping(number)
-socket.pong(number)
-```
-
-Here's a vulnerable socket server with some echo functionality:
-
-```js
-server.on('connection', function (socket) {
-  socket.on('message', function (message) {
-    message = JSON.parse(message)
-    if (message.type === 'echo') {
-      socket.send(message.data) // send back the user's message
-    }
-  })
-})
-```
-
-`socket.send(number)` called on the server, will disclose server memory.
-
-Here's [the release](https://github.com/websockets/ws/releases/tag/1.0.1) where the issue
-was fixed, with a more detailed explanation. Props to
-[Arnout Kazemier](https://github.com/3rd-Eden) for the quick fix. Here's the
-[Node Security Project disclosure](https://nodesecurity.io/advisories/67).
-
-
-### What's the solution?
-
-It's important that node.js offers a fast way to get memory otherwise performance-critical
-applications would needlessly get a lot slower.
-
-But we need a better way to *signal our intent* as programmers. **When we want
-uninitialized memory, we should request it explicitly.**
-
-Sensitive functionality should not be packed into a developer-friendly API that loosely
-accepts many different types. This type of API encourages the lazy practice of passing
-variables in without checking the type very carefully.
-
-#### A new API: `Buffer.allocUnsafe(number)`
-
-The functionality of creating buffers with uninitialized memory should be part of another
-API. We propose `Buffer.allocUnsafe(number)`. This way, it's not part of an API that
-frequently gets user input of all sorts of different types passed into it.
-
-```js
-var buf = Buffer.allocUnsafe(16) // careful, uninitialized memory!
-
-// Immediately overwrite the uninitialized buffer with data from another buffer
-for (var i = 0; i < buf.length; i++) {
-  buf[i] = otherBuf[i]
-}
-```
-
-
-### How do we fix node.js core?
-
-We sent [a PR to node.js core](https://github.com/nodejs/node/pull/4514) (merged as
-`semver-major`) which defends against one case:
-
-```js
-var str = 16
-new Buffer(str, 'utf8')
-```
-
-In this situation, it's implied that the programmer intended the first argument to be a
-string, since they passed an encoding as a second argument. Today, node.js will allocate
-uninitialized memory in the case of `new Buffer(number, encoding)`, which is probably not
-what the programmer intended.
-
-But this is only a partial solution, since if the programmer does `new Buffer(variable)`
-(without an `encoding` parameter) there's no way to know what they intended. If `variable`
-is sometimes a number, then uninitialized memory will sometimes be returned.
-
-### What's the real long-term fix?
-
-We could deprecate and remove `new Buffer(number)` and use `Buffer.allocUnsafe(number)` when
-we need uninitialized memory. But that would break 1000s of packages.
-
-~~We believe the best solution is to:~~
-
-~~1. Change `new Buffer(number)` to return safe, zeroed-out memory~~
-
-~~2. Create a new API for creating uninitialized Buffers. We propose: `Buffer.allocUnsafe(number)`~~
-
-#### Update
-
-We now support adding three new APIs:
-
-- `Buffer.from(value)` - convert from any type to a buffer
-- `Buffer.alloc(size)` - create a zero-filled buffer
-- `Buffer.allocUnsafe(size)` - create an uninitialized buffer with given size
-
-This solves the core problem that affected `ws` and `bittorrent-dht` which is
-`Buffer(variable)` getting tricked into taking a number argument.
-
-This way, existing code continues working and the impact on the npm ecosystem will be
-minimal. Over time, npm maintainers can migrate performance-critical code to use
-`Buffer.allocUnsafe(number)` instead of `new Buffer(number)`.
-
-
-### Conclusion
-
-We think there's a serious design issue with the `Buffer` API as it exists today. It
-promotes insecure software by putting high-risk functionality into a convenient API
-with friendly "developer ergonomics".
-
-This wasn't merely a theoretical exercise because we found the issue in some of the
-most popular npm packages.
-
-Fortunately, there's an easy fix that can be applied today. Use `safe-buffer` in place of
-`buffer`.
-
-```js
-var Buffer = require('safe-buffer').Buffer
-```
-
-Eventually, we hope that node.js core can switch to this new, safer behavior. We believe
-the impact on the ecosystem would be minimal since it's not a breaking change.
-Well-maintained, popular packages would be updated to use `Buffer.alloc` quickly, while
-older, insecure packages would magically become safe from this attack vector.
-
-
-## links
-
-- [Node.js PR: buffer: throw if both length and enc are passed](https://github.com/nodejs/node/pull/4514)
-- [Node Security Project disclosure for `ws`](https://nodesecurity.io/advisories/67)
-- [Node Security Project disclosure for`bittorrent-dht`](https://nodesecurity.io/advisories/68)
-
-
-## credit
-
-The original issues in `bittorrent-dht`
-([disclosure](https://nodesecurity.io/advisories/68)) and
-`ws` ([disclosure](https://nodesecurity.io/advisories/67)) were discovered by
-[Mathias Buus](https://github.com/mafintosh) and
-[Feross Aboukhadijeh](http://feross.org/).
-
-Thanks to [Adam Baldwin](https://github.com/evilpacket) for helping disclose these issues
-and for his work running the [Node Security Project](https://nodesecurity.io/).
-
-Thanks to [John Hiesey](https://github.com/jhiesey) for proofreading this README and
-auditing the code.
-
-
-## license
-
-MIT. Copyright (C) [Feross Aboukhadijeh](http://feross.org)

+ 0 - 62
node_modules/compression/node_modules/safe-buffer/index.js

@@ -1,62 +0,0 @@
-/* eslint-disable node/no-deprecated-api */
-var buffer = require('buffer')
-var Buffer = buffer.Buffer
-
-// alternative to using Object.keys for old browsers
-function copyProps (src, dst) {
-  for (var key in src) {
-    dst[key] = src[key]
-  }
-}
-if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
-  module.exports = buffer
-} else {
-  // Copy properties from require('buffer')
-  copyProps(buffer, exports)
-  exports.Buffer = SafeBuffer
-}
-
-function SafeBuffer (arg, encodingOrOffset, length) {
-  return Buffer(arg, encodingOrOffset, length)
-}
-
-// Copy static methods from Buffer
-copyProps(Buffer, SafeBuffer)
-
-SafeBuffer.from = function (arg, encodingOrOffset, length) {
-  if (typeof arg === 'number') {
-    throw new TypeError('Argument must not be a number')
-  }
-  return Buffer(arg, encodingOrOffset, length)
-}
-
-SafeBuffer.alloc = function (size, fill, encoding) {
-  if (typeof size !== 'number') {
-    throw new TypeError('Argument must be a number')
-  }
-  var buf = Buffer(size)
-  if (fill !== undefined) {
-    if (typeof encoding === 'string') {
-      buf.fill(fill, encoding)
-    } else {
-      buf.fill(fill)
-    }
-  } else {
-    buf.fill(0)
-  }
-  return buf
-}
-
-SafeBuffer.allocUnsafe = function (size) {
-  if (typeof size !== 'number') {
-    throw new TypeError('Argument must be a number')
-  }
-  return Buffer(size)
-}
-
-SafeBuffer.allocUnsafeSlow = function (size) {
-  if (typeof size !== 'number') {
-    throw new TypeError('Argument must be a number')
-  }
-  return buffer.SlowBuffer(size)
-}

+ 0 - 66
node_modules/compression/node_modules/safe-buffer/package.json

@@ -1,66 +0,0 @@
-{
-  "_args": [
-    [
-      "safe-buffer@5.1.1",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "safe-buffer@5.1.1",
-  "_id": "safe-buffer@5.1.1",
-  "_inBundle": false,
-  "_integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
-  "_location": "/compression/safe-buffer",
-  "_phantomChildren": {},
-  "_requested": {
-    "type": "version",
-    "registry": true,
-    "raw": "safe-buffer@5.1.1",
-    "name": "safe-buffer",
-    "escapedName": "safe-buffer",
-    "rawSpec": "5.1.1",
-    "saveSpec": null,
-    "fetchSpec": "5.1.1"
-  },
-  "_requiredBy": [
-    "/compression"
-  ],
-  "_resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
-  "_spec": "5.1.1",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
-  "author": {
-    "name": "Feross Aboukhadijeh",
-    "email": "feross@feross.org",
-    "url": "http://feross.org"
-  },
-  "bugs": {
-    "url": "https://github.com/feross/safe-buffer/issues"
-  },
-  "description": "Safer Node.js Buffer API",
-  "devDependencies": {
-    "standard": "*",
-    "tape": "^4.0.0",
-    "zuul": "^3.0.0"
-  },
-  "homepage": "https://github.com/feross/safe-buffer",
-  "keywords": [
-    "buffer",
-    "buffer allocate",
-    "node security",
-    "safe",
-    "safe-buffer",
-    "security",
-    "uninitialized"
-  ],
-  "license": "MIT",
-  "main": "index.js",
-  "name": "safe-buffer",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/feross/safe-buffer.git"
-  },
-  "scripts": {
-    "test": "standard && tape test.js"
-  },
-  "version": "5.1.1"
-}

+ 0 - 101
node_modules/compression/node_modules/safe-buffer/test.js

@@ -1,101 +0,0 @@
-/* eslint-disable node/no-deprecated-api */
-
-var test = require('tape')
-var SafeBuffer = require('./').Buffer
-
-test('new SafeBuffer(value) works just like Buffer', function (t) {
-  t.deepEqual(new SafeBuffer('hey'), new Buffer('hey'))
-  t.deepEqual(new SafeBuffer('hey', 'utf8'), new Buffer('hey', 'utf8'))
-  t.deepEqual(new SafeBuffer('686579', 'hex'), new Buffer('686579', 'hex'))
-  t.deepEqual(new SafeBuffer([1, 2, 3]), new Buffer([1, 2, 3]))
-  t.deepEqual(new SafeBuffer(new Uint8Array([1, 2, 3])), new Buffer(new Uint8Array([1, 2, 3])))
-
-  t.equal(typeof SafeBuffer.isBuffer, 'function')
-  t.equal(SafeBuffer.isBuffer(new SafeBuffer('hey')), true)
-  t.equal(Buffer.isBuffer(new SafeBuffer('hey')), true)
-  t.notOk(SafeBuffer.isBuffer({}))
-
-  t.end()
-})
-
-test('SafeBuffer.from(value) converts to a Buffer', function (t) {
-  t.deepEqual(SafeBuffer.from('hey'), new Buffer('hey'))
-  t.deepEqual(SafeBuffer.from('hey', 'utf8'), new Buffer('hey', 'utf8'))
-  t.deepEqual(SafeBuffer.from('686579', 'hex'), new Buffer('686579', 'hex'))
-  t.deepEqual(SafeBuffer.from([1, 2, 3]), new Buffer([1, 2, 3]))
-  t.deepEqual(SafeBuffer.from(new Uint8Array([1, 2, 3])), new Buffer(new Uint8Array([1, 2, 3])))
-
-  t.end()
-})
-
-test('SafeBuffer.alloc(number) returns zeroed-out memory', function (t) {
-  for (var i = 0; i < 10; i++) {
-    var expected1 = new Buffer(1000)
-    expected1.fill(0)
-    t.deepEqual(SafeBuffer.alloc(1000), expected1)
-
-    var expected2 = new Buffer(1000 * 1000)
-    expected2.fill(0)
-    t.deepEqual(SafeBuffer.alloc(1000 * 1000), expected2)
-  }
-  t.end()
-})
-
-test('SafeBuffer.allocUnsafe(number)', function (t) {
-  var buf = SafeBuffer.allocUnsafe(100) // unitialized memory
-  t.equal(buf.length, 100)
-  t.equal(SafeBuffer.isBuffer(buf), true)
-  t.equal(Buffer.isBuffer(buf), true)
-  t.end()
-})
-
-test('SafeBuffer.from() throws with number types', function (t) {
-  t.plan(5)
-  t.throws(function () {
-    SafeBuffer.from(0)
-  })
-  t.throws(function () {
-    SafeBuffer.from(-1)
-  })
-  t.throws(function () {
-    SafeBuffer.from(NaN)
-  })
-  t.throws(function () {
-    SafeBuffer.from(Infinity)
-  })
-  t.throws(function () {
-    SafeBuffer.from(99)
-  })
-})
-
-test('SafeBuffer.allocUnsafe() throws with non-number types', function (t) {
-  t.plan(4)
-  t.throws(function () {
-    SafeBuffer.allocUnsafe('hey')
-  })
-  t.throws(function () {
-    SafeBuffer.allocUnsafe('hey', 'utf8')
-  })
-  t.throws(function () {
-    SafeBuffer.allocUnsafe([1, 2, 3])
-  })
-  t.throws(function () {
-    SafeBuffer.allocUnsafe({})
-  })
-})
-
-test('SafeBuffer.alloc() throws with non-number types', function (t) {
-  t.plan(4)
-  t.throws(function () {
-    SafeBuffer.alloc('hey')
-  })
-  t.throws(function () {
-    SafeBuffer.alloc('hey', 'utf8')
-  })
-  t.throws(function () {
-    SafeBuffer.alloc([1, 2, 3])
-  })
-  t.throws(function () {
-    SafeBuffer.alloc({})
-  })
-})

+ 28 - 31
node_modules/compression/package.json

@@ -1,36 +1,31 @@
 {
 {
-  "_args": [
-    [
-      "compression@1.7.2",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "compression@1.7.2",
-  "_id": "compression@1.7.2",
+  "_from": "compression@^1.7.3",
+  "_id": "compression@1.7.4",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-qv+81qr4VLROuygDU9WtFlH1mmk=",
+  "_integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
   "_location": "/compression",
   "_location": "/compression",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "compression@1.7.2",
+    "raw": "compression@^1.7.3",
     "name": "compression",
     "name": "compression",
     "escapedName": "compression",
     "escapedName": "compression",
-    "rawSpec": "1.7.2",
+    "rawSpec": "^1.7.3",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "1.7.2"
+    "fetchSpec": "^1.7.3"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/webpack-dev-server"
     "/webpack-dev-server"
   ],
   ],
-  "_resolved": "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz",
-  "_spec": "1.7.2",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
+  "_shasum": "95523eff170ca57c29a0ca41e6fe131f41e5bb8f",
+  "_spec": "compression@^1.7.3",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\webpack-dev-server",
   "bugs": {
   "bugs": {
     "url": "https://github.com/expressjs/compression/issues"
     "url": "https://github.com/expressjs/compression/issues"
   },
   },
+  "bundleDependencies": false,
   "contributors": [
   "contributors": [
     {
     {
       "name": "Douglas Christopher Wilson",
       "name": "Douglas Christopher Wilson",
@@ -43,26 +38,28 @@
     }
     }
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "accepts": "~1.3.4",
+    "accepts": "~1.3.5",
     "bytes": "3.0.0",
     "bytes": "3.0.0",
-    "compressible": "~2.0.13",
+    "compressible": "~2.0.16",
     "debug": "2.6.9",
     "debug": "2.6.9",
-    "on-headers": "~1.0.1",
-    "safe-buffer": "5.1.1",
+    "on-headers": "~1.0.2",
+    "safe-buffer": "5.1.2",
     "vary": "~1.1.2"
     "vary": "~1.1.2"
   },
   },
+  "deprecated": false,
   "description": "Node.js compression middleware",
   "description": "Node.js compression middleware",
   "devDependencies": {
   "devDependencies": {
-    "eslint": "4.18.0",
-    "eslint-config-standard": "11.0.0",
-    "eslint-plugin-import": "2.8.0",
-    "eslint-plugin-markdown": "1.0.0-beta.6",
-    "eslint-plugin-node": "6.0.0",
-    "eslint-plugin-promise": "3.6.0",
-    "eslint-plugin-standard": "3.0.1",
+    "after": "0.8.2",
+    "eslint": "5.15.1",
+    "eslint-config-standard": "12.0.0",
+    "eslint-plugin-import": "2.16.0",
+    "eslint-plugin-markdown": "1.0.0",
+    "eslint-plugin-node": "7.0.1",
+    "eslint-plugin-promise": "4.0.1",
+    "eslint-plugin-standard": "4.0.0",
     "istanbul": "0.4.5",
     "istanbul": "0.4.5",
-    "mocha": "2.5.3",
-    "supertest": "1.1.0"
+    "mocha": "6.0.2",
+    "supertest": "4.0.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.8.0"
     "node": ">= 0.8.0"
@@ -85,5 +82,5 @@
     "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --check-leaks --reporter dot",
     "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --check-leaks --reporter dot",
     "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --check-leaks --reporter spec"
     "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --check-leaks --reporter spec"
   },
   },
-  "version": "1.7.2"
+  "version": "1.7.4"
 }
 }

+ 3 - 0
node_modules/connect-history-api-fallback/CHANGELOG.md

@@ -1,5 +1,8 @@
 # Changelog
 # Changelog
 
 
+## v1.6.0
+ - Recommend absolute paths for rewrite targets. Contributed by @helfi92.
+
 ## v1.5.0
 ## v1.5.0
  - Expose the HTTP request object in rewrite rules. Contributed by @VladShcherbin.
  - Expose the HTTP request object in rewrite rules. Contributed by @VladShcherbin.
 
 

+ 12 - 1
node_modules/connect-history-api-fallback/lib/index.js

@@ -50,6 +50,17 @@ exports = module.exports = function historyApiFallback(options) {
       var match = parsedUrl.pathname.match(rewrite.from);
       var match = parsedUrl.pathname.match(rewrite.from);
       if (match !== null) {
       if (match !== null) {
         rewriteTarget = evaluateRewriteRule(parsedUrl, match, rewrite.to, req);
         rewriteTarget = evaluateRewriteRule(parsedUrl, match, rewrite.to, req);
+
+        if(rewriteTarget.charAt(0) !== '/') {
+          logger(
+            'We recommend using an absolute path for the rewrite target.',
+            'Received a non-absolute rewrite target',
+            rewriteTarget,
+            'for URL',
+            req.url
+          );
+        }
+
         logger('Rewriting', req.method, req.url, 'to', rewriteTarget);
         logger('Rewriting', req.method, req.url, 'to', rewriteTarget);
         req.url = rewriteTarget;
         req.url = rewriteTarget;
         return next();
         return next();
@@ -79,7 +90,7 @@ function evaluateRewriteRule(parsedUrl, match, rule, req) {
   if (typeof rule === 'string') {
   if (typeof rule === 'string') {
     return rule;
     return rule;
   } else if (typeof rule !== 'function') {
   } else if (typeof rule !== 'function') {
-    throw new Error('Rewrite rule can only be of type string of function.');
+    throw new Error('Rewrite rule can only be of type string or function.');
   }
   }
 
 
   return rule({
   return rule({

+ 15 - 19
node_modules/connect-history-api-fallback/package.json

@@ -1,33 +1,27 @@
 {
 {
-  "_args": [
-    [
-      "connect-history-api-fallback@1.5.0",
-      "C:\\Users\\Administrator\\Desktop\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "connect-history-api-fallback@1.5.0",
-  "_id": "connect-history-api-fallback@1.5.0",
+  "_from": "connect-history-api-fallback@^1.3.0",
+  "_id": "connect-history-api-fallback@1.6.0",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=",
+  "_integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
   "_location": "/connect-history-api-fallback",
   "_location": "/connect-history-api-fallback",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "connect-history-api-fallback@1.5.0",
+    "raw": "connect-history-api-fallback@^1.3.0",
     "name": "connect-history-api-fallback",
     "name": "connect-history-api-fallback",
     "escapedName": "connect-history-api-fallback",
     "escapedName": "connect-history-api-fallback",
-    "rawSpec": "1.5.0",
+    "rawSpec": "^1.3.0",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "1.5.0"
+    "fetchSpec": "^1.3.0"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/webpack-dev-server"
     "/webpack-dev-server"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz",
-  "_spec": "1.5.0",
-  "_where": "C:\\Users\\Administrator\\Desktop\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
+  "_shasum": "8b32089359308d111115d81cad3fceab888f97bc",
+  "_spec": "connect-history-api-fallback@^1.3.0",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\webpack-dev-server",
   "author": {
   "author": {
     "name": "Ben Ripkens",
     "name": "Ben Ripkens",
     "email": "bripkens.dev@gmail.com",
     "email": "bripkens.dev@gmail.com",
@@ -36,6 +30,7 @@
   "bugs": {
   "bugs": {
     "url": "https://github.com/bripkens/connect-history-api-fallback/issues"
     "url": "https://github.com/bripkens/connect-history-api-fallback/issues"
   },
   },
+  "bundleDependencies": false,
   "contributors": [
   "contributors": [
     {
     {
       "name": "Craig Myles",
       "name": "Craig Myles",
@@ -43,10 +38,11 @@
       "url": "http://www.craigmyles.com"
       "url": "http://www.craigmyles.com"
     }
     }
   ],
   ],
+  "deprecated": false,
   "description": "Provides a fallback for non-existing directories so that the HTML 5 history API can be used.",
   "description": "Provides a fallback for non-existing directories so that the HTML 5 history API can be used.",
   "devDependencies": {
   "devDependencies": {
     "eslint": "^0.18.0",
     "eslint": "^0.18.0",
-    "nodeunit": "^0.9.1",
+    "nodeunit": "^0.11.3",
     "sinon": "^1.14.1"
     "sinon": "^1.14.1"
   },
   },
   "engines": {
   "engines": {
@@ -73,5 +69,5 @@
   "scripts": {
   "scripts": {
     "test": "eslint lib/index.js test/index_test.js && nodeunit test/index_test.js"
     "test": "eslint lib/index.js test/index_test.js && nodeunit test/index_test.js"
   },
   },
-  "version": "1.5.0"
+  "version": "1.6.0"
 }
 }

+ 1 - 0
node_modules/define-properties/.eslintrc

@@ -5,6 +5,7 @@
 
 
 	"rules": {
 	"rules": {
 		"id-length": [2, { "min": 1, "max": 35 }],
 		"id-length": [2, { "min": 1, "max": 35 }],
+		"max-lines-per-function": [2, 100],
 		"max-params": [2, 4],
 		"max-params": [2, 4],
 		"max-statements": [2, 13]
 		"max-statements": [2, 13]
 	}
 	}

+ 49 - 5
node_modules/define-properties/.jscs.json

@@ -9,13 +9,17 @@
 
 
 	"disallowIdentifierNames": [],
 	"disallowIdentifierNames": [],
 
 
-	"requireCurlyBraces": ["if", "else", "for", "while", "do", "try", "catch"],
+	"requireCurlyBraces": {
+		"allExcept": [],
+		"keywords": ["if", "else", "for", "while", "do", "try", "catch"]
+	},
 
 
 	"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
 	"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
 
 
 	"disallowSpaceAfterKeywords": [],
 	"disallowSpaceAfterKeywords": [],
 
 
 	"disallowSpaceBeforeComma": true,
 	"disallowSpaceBeforeComma": true,
+	"disallowSpaceAfterComma": false,
 	"disallowSpaceBeforeSemicolon": true,
 	"disallowSpaceBeforeSemicolon": true,
 
 
 	"disallowNodeTypes": [
 	"disallowNodeTypes": [
@@ -26,7 +30,7 @@
 		"WithStatement"
 		"WithStatement"
 	],
 	],
 
 
-	"requireObjectKeysOnNewLine": false,
+	"requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
 
 
 	"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
 	"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
 	"requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
 	"requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
@@ -40,7 +44,7 @@
 
 
 	"disallowSpacesInsideArrayBrackets": true,
 	"disallowSpacesInsideArrayBrackets": true,
 
 
-	"disallowQuotedKeysInObjects": "allButReserved",
+	"disallowQuotedKeysInObjects": { "allExcept": ["reserved"] },
 
 
 	"disallowSpaceAfterObjectKeys": true,
 	"disallowSpaceAfterObjectKeys": true,
 
 
@@ -75,7 +79,7 @@
 
 
 	"disallowMultipleLineStrings": true,
 	"disallowMultipleLineStrings": true,
 
 
-	"requireDotNotation": true,
+	"requireDotNotation": { "allExcept": ["keywords"] },
 
 
 	"requireParenthesesAroundIIFE": true,
 	"requireParenthesesAroundIIFE": true,
 
 
@@ -126,6 +130,46 @@
 
 
 	"disallowNestedTernaries": { "maxLevel": 1 },
 	"disallowNestedTernaries": { "maxLevel": 1 },
 
 
-	"requireSpaceAfterComma": true
+	"requireSpaceAfterComma": { "allExcept": ["trailing"] },
+	"requireAlignedMultilineParams": false,
+
+	"requireSpacesInGenerator": {
+		"afterStar": true
+	},
+
+	"disallowSpacesInGenerator": {
+		"beforeStar": true
+	},
+
+	"disallowVar": false,
+
+	"requireArrayDestructuring": false,
+
+	"requireEnhancedObjectLiterals": false,
+
+	"requireObjectDestructuring": false,
+
+	"requireEarlyReturn": false,
+
+	"requireCapitalizedConstructorsNew": {
+		"allExcept": ["Function", "String", "Object", "Symbol", "Number", "Date", "RegExp", "Error", "Boolean", "Array"]
+	},
+
+	"requireImportAlphabetized": false,
+
+	"requireSpaceBeforeObjectValues": true,
+	"requireSpaceBeforeDestructuredValues": true,
+
+	"disallowSpacesInsideTemplateStringPlaceholders": true,
+
+	"disallowArrayDestructuringReturn": false,
+
+	"requireNewlineBeforeSingleStatementsInIf": false,
+
+	"disallowUnusedVariables": true,
+
+	"requireSpacesInsideImportedObjectBraces": true,
+
+	"requireUseStrict": true
 }
 }
 
 

+ 0 - 2
node_modules/define-properties/.npmignore

@@ -1,2 +0,0 @@
-test/*
-

+ 199 - 26
node_modules/define-properties/.travis.yml

@@ -1,60 +1,233 @@
 language: node_js
 language: node_js
+os:
+ - linux
 node_js:
 node_js:
-  - "4.2"
-  - "4.1"
-  - "4.0"
+  - "10.8"
+  - "9.11"
+  - "8.11"
+  - "7.10"
+  - "6.14"
+  - "5.12"
+  - "4.9"
   - "iojs-v3.3"
   - "iojs-v3.3"
-  - "iojs-v3.2"
-  - "iojs-v3.1"
-  - "iojs-v3.0"
   - "iojs-v2.5"
   - "iojs-v2.5"
-  - "iojs-v2.4"
-  - "iojs-v2.3"
-  - "iojs-v2.2"
-  - "iojs-v2.1"
-  - "iojs-v2.0"
   - "iojs-v1.8"
   - "iojs-v1.8"
-  - "iojs-v1.7"
-  - "iojs-v1.6"
-  - "iojs-v1.5"
-  - "iojs-v1.4"
-  - "iojs-v1.3"
-  - "iojs-v1.2"
-  - "iojs-v1.1"
-  - "iojs-v1.0"
   - "0.12"
   - "0.12"
-  - "0.11"
   - "0.10"
   - "0.10"
-  - "0.9"
   - "0.8"
   - "0.8"
-  - "0.6"
-  - "0.4"
 before_install:
 before_install:
-  - '[ "${TRAVIS_NODE_VERSION}" = "0.6" ] || npm install -g npm@1.4.28 && npm install -g npm'
+  - 'case "${TRAVIS_NODE_VERSION}" in 0.*) export NPM_CONFIG_STRICT_SSL=false ;; esac'
+  - 'nvm install-latest-npm'
+install:
+  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ] || [ "${TRAVIS_NODE_VERSION}" = "0.9" ]; then nvm install --latest-npm 0.8 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;'
+script:
+  - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi'
+  - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi'
+  - 'if [ -n "${COVERAGE-}" ]; then npm run coverage ; fi'
+  - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi'
 sudo: false
 sudo: false
+env:
+  - TEST=true
 matrix:
 matrix:
   fast_finish: true
   fast_finish: true
-  allow_failures:
+  include:
+    - node_js: "lts/*"
+      env: PRETEST=true
+    - node_js: "lts/*"
+      env: POSTTEST=true
+    - node_js: "4"
+      env: COVERAGE=true
+    - node_js: "10.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "10.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "9.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "8.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "7.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.13"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.12"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.11"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "6.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.11"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.10"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.9"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.2"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.1"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "5.0"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.8"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.7"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.6"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.5"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.4"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.3"
+      env: TEST=true ALLOW_FAILURE=true
+    - node_js: "4.2"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "4.1"
     - node_js: "4.1"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "4.0"
     - node_js: "4.0"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v3.2"
     - node_js: "iojs-v3.2"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v3.1"
     - node_js: "iojs-v3.1"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v3.0"
     - node_js: "iojs-v3.0"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v2.4"
     - node_js: "iojs-v2.4"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v2.3"
     - node_js: "iojs-v2.3"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v2.2"
     - node_js: "iojs-v2.2"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v2.1"
     - node_js: "iojs-v2.1"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v2.0"
     - node_js: "iojs-v2.0"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.7"
     - node_js: "iojs-v1.7"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.6"
     - node_js: "iojs-v1.6"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.5"
     - node_js: "iojs-v1.5"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.4"
     - node_js: "iojs-v1.4"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.3"
     - node_js: "iojs-v1.3"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.2"
     - node_js: "iojs-v1.2"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.1"
     - node_js: "iojs-v1.1"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "iojs-v1.0"
     - node_js: "iojs-v1.0"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "0.11"
     - node_js: "0.11"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "0.9"
     - node_js: "0.9"
-    - node_js: "0.8"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "0.6"
     - node_js: "0.6"
+      env: TEST=true ALLOW_FAILURE=true
     - node_js: "0.4"
     - node_js: "0.4"
+      env: TEST=true ALLOW_FAILURE=true
+  allow_failures:
+    - os: osx
+    - env: TEST=true ALLOW_FAILURE=true
+    - env: COVERAGE=true

+ 9 - 0
node_modules/define-properties/CHANGELOG.md

@@ -1,3 +1,12 @@
+1.1.3 / 2018-08-14
+=================
+ * [Refactor] use a for loop instead of `foreach` to make for smaller bundle sizes
+ * [Robustness] cache `Array.prototype.concat` and `Object.defineProperty`
+ * [Deps] update `object-keys`
+ * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `nsp`, `tape`, `jscs`; remove unused eccheck script + dep
+ * [Tests] use pretest/posttest for linting/security
+ * [Tests] fix npm upgrades on older nodes
+
 1.1.2 / 2015-10-14
 1.1.2 / 2015-10-14
 =================
 =================
  * [Docs] Switch from vb.teelaun.ch to versionbadg.es for the npm version badge SVG
  * [Docs] Switch from vb.teelaun.ch to versionbadg.es for the npm version badge SVG

+ 14 - 12
node_modules/define-properties/index.js

@@ -1,10 +1,11 @@
 'use strict';
 'use strict';
 
 
 var keys = require('object-keys');
 var keys = require('object-keys');
-var foreach = require('foreach');
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol';
+var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
 
 
 var toStr = Object.prototype.toString;
 var toStr = Object.prototype.toString;
+var concat = Array.prototype.concat;
+var origDefineProperty = Object.defineProperty;
 
 
 var isFunction = function (fn) {
 var isFunction = function (fn) {
 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
@@ -13,23 +14,24 @@ var isFunction = function (fn) {
 var arePropertyDescriptorsSupported = function () {
 var arePropertyDescriptorsSupported = function () {
 	var obj = {};
 	var obj = {};
 	try {
 	try {
-		Object.defineProperty(obj, 'x', { enumerable: false, value: obj });
-        /* eslint-disable no-unused-vars, no-restricted-syntax */
-        for (var _ in obj) { return false; }
-        /* eslint-enable no-unused-vars, no-restricted-syntax */
+		origDefineProperty(obj, 'x', { enumerable: false, value: obj });
+		// eslint-disable-next-line no-unused-vars, no-restricted-syntax
+		for (var _ in obj) { // jscs:ignore disallowUnusedVariables
+			return false;
+		}
 		return obj.x === obj;
 		return obj.x === obj;
 	} catch (e) { /* this is IE 8. */
 	} catch (e) { /* this is IE 8. */
 		return false;
 		return false;
 	}
 	}
 };
 };
-var supportsDescriptors = Object.defineProperty && arePropertyDescriptorsSupported();
+var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
 
 
 var defineProperty = function (object, name, value, predicate) {
 var defineProperty = function (object, name, value, predicate) {
 	if (name in object && (!isFunction(predicate) || !predicate())) {
 	if (name in object && (!isFunction(predicate) || !predicate())) {
 		return;
 		return;
 	}
 	}
 	if (supportsDescriptors) {
 	if (supportsDescriptors) {
-		Object.defineProperty(object, name, {
+		origDefineProperty(object, name, {
 			configurable: true,
 			configurable: true,
 			enumerable: false,
 			enumerable: false,
 			value: value,
 			value: value,
@@ -44,11 +46,11 @@ var defineProperties = function (object, map) {
 	var predicates = arguments.length > 2 ? arguments[2] : {};
 	var predicates = arguments.length > 2 ? arguments[2] : {};
 	var props = keys(map);
 	var props = keys(map);
 	if (hasSymbols) {
 	if (hasSymbols) {
-		props = props.concat(Object.getOwnPropertySymbols(map));
+		props = concat.call(props, Object.getOwnPropertySymbols(map));
+	}
+	for (var i = 0; i < props.length; i += 1) {
+		defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
 	}
 	}
-	foreach(props, function (name) {
-		defineProperty(object, name, map[name], predicates[name]);
-	});
 };
 };
 
 
 defineProperties.supportsDescriptors = !!supportsDescriptors;
 defineProperties.supportsDescriptors = !!supportsDescriptors;

+ 30 - 31
node_modules/define-properties/package.json

@@ -1,52 +1,49 @@
 {
 {
-  "_args": [
-    [
-      "define-properties@1.1.2",
-      "D:\\projects\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "define-properties@1.1.2",
-  "_id": "define-properties@1.1.2",
+  "_from": "define-properties@^1.1.3",
+  "_id": "define-properties@1.1.3",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=",
+  "_integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
   "_location": "/define-properties",
   "_location": "/define-properties",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "define-properties@1.1.2",
+    "raw": "define-properties@^1.1.3",
     "name": "define-properties",
     "name": "define-properties",
     "escapedName": "define-properties",
     "escapedName": "define-properties",
-    "rawSpec": "1.1.2",
+    "rawSpec": "^1.1.3",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "1.1.2"
+    "fetchSpec": "^1.1.3"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
-    "/array-includes"
+    "/array-includes",
+    "/object.assign",
+    "/string.prototype.trimleft",
+    "/string.prototype.trimright"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz",
-  "_spec": "1.1.2",
-  "_where": "D:\\projects\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
+  "_shasum": "cf88da6cbee26fe6db7094f61d870cbd84cee9f1",
+  "_spec": "define-properties@^1.1.3",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\array-includes",
   "author": {
   "author": {
     "name": "Jordan Harband"
     "name": "Jordan Harband"
   },
   },
   "bugs": {
   "bugs": {
     "url": "https://github.com/ljharb/define-properties/issues"
     "url": "https://github.com/ljharb/define-properties/issues"
   },
   },
+  "bundleDependencies": false,
   "dependencies": {
   "dependencies": {
-    "foreach": "^2.0.5",
-    "object-keys": "^1.0.8"
+    "object-keys": "^1.0.12"
   },
   },
+  "deprecated": false,
   "description": "Define multiple non-enumerable properties at once. Uses `Object.defineProperty` when available; falls back to standard assignment in older engines.",
   "description": "Define multiple non-enumerable properties at once. Uses `Object.defineProperty` when available; falls back to standard assignment in older engines.",
   "devDependencies": {
   "devDependencies": {
-    "@ljharb/eslint-config": "^1.3.0",
+    "@ljharb/eslint-config": "^13.0.0",
     "covert": "^1.1.0",
     "covert": "^1.1.0",
-    "editorconfig-tools": "^0.1.1",
-    "eslint": "^1.6.0",
-    "jscs": "^2.3.1",
-    "nsp": "^1.1.0",
-    "tape": "^4.2.1"
+    "eslint": "^5.3.0",
+    "jscs": "^3.0.7",
+    "nsp": "^3.2.1",
+    "tape": "^4.9.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.4"
     "node": ">= 0.4"
@@ -71,12 +68,14 @@
   "scripts": {
   "scripts": {
     "coverage": "covert test/*.js",
     "coverage": "covert test/*.js",
     "coverage-quiet": "covert test/*.js --quiet",
     "coverage-quiet": "covert test/*.js --quiet",
-    "eccheck": "editorconfig-tools check *.js **/*.js > /dev/null",
     "eslint": "eslint test/*.js *.js",
     "eslint": "eslint test/*.js *.js",
     "jscs": "jscs test/*.js *.js",
     "jscs": "jscs test/*.js *.js",
-    "lint": "npm run jscs && npm run eslint",
-    "security": "nsp package",
-    "test": "npm run lint && node test/index.js && npm run security"
+    "lint": "npm run --silent jscs && npm run --silent eslint",
+    "posttest": "npm run --silent security",
+    "pretest": "npm run --silent lint",
+    "security": "nsp check",
+    "test": "npm run --silent tests-only",
+    "tests-only": "node test/index.js"
   },
   },
   "testling": {
   "testling": {
     "files": "test/index.js",
     "files": "test/index.js",
@@ -96,5 +95,5 @@
       "android-browser/4.2"
       "android-browser/4.2"
     ]
     ]
   },
   },
-  "version": "1.1.2"
+  "version": "1.1.3"
 }
 }

+ 1 - 2
node_modules/define-properties/test/index.js

@@ -15,10 +15,9 @@ var arePropertyDescriptorsSupported = function () {
 };
 };
 var descriptorsSupported = !!Object.defineProperty && arePropertyDescriptorsSupported();
 var descriptorsSupported = !!Object.defineProperty && arePropertyDescriptorsSupported();
 
 
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol';
+var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
 
 
 test('defineProperties', function (dt) {
 test('defineProperties', function (dt) {
-
 	dt.test('with descriptor support', { skip: !descriptorsSupported }, function (t) {
 	dt.test('with descriptor support', { skip: !descriptorsSupported }, function (t) {
 		var getDescriptor = function (value) {
 		var getDescriptor = function (value) {
 			return {
 			return {

+ 8 - 1
node_modules/detect-node/Readme.md

@@ -1,4 +1,11 @@
-Usage:
+### Install
+
+```shell
+npm install --save detect-node
+```
+
+### Usage:
+
 ```js
 ```js
 var isNode = require('detect-node');
 var isNode = require('detect-node');
 
 

+ 1 - 5
node_modules/detect-node/index.js

@@ -1,6 +1,2 @@
-module.exports = false;
-
 // Only Node.JS has a process variable that is of [[Class]] process
 // Only Node.JS has a process variable that is of [[Class]] process
-try {
- module.exports = Object.prototype.toString.call(global.process) === '[object process]' 
-} catch(e) {}
+module.exports = Object.prototype.toString.call(typeof process !== 'undefined' ? process : 0) === '[object process]';

+ 15 - 18
node_modules/detect-node/package.json

@@ -1,39 +1,36 @@
 {
 {
-  "_args": [
-    [
-      "detect-node@2.0.3",
-      "D:\\projects\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "detect-node@2.0.3",
-  "_id": "detect-node@2.0.3",
+  "_from": "detect-node@^2.0.4",
+  "_id": "detect-node@2.0.4",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=",
+  "_integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==",
   "_location": "/detect-node",
   "_location": "/detect-node",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "detect-node@2.0.3",
+    "raw": "detect-node@^2.0.4",
     "name": "detect-node",
     "name": "detect-node",
     "escapedName": "detect-node",
     "escapedName": "detect-node",
-    "rawSpec": "2.0.3",
+    "rawSpec": "^2.0.4",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "2.0.3"
+    "fetchSpec": "^2.0.4"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/spdy-transport"
     "/spdy-transport"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.3.tgz",
-  "_spec": "2.0.3",
-  "_where": "D:\\projects\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz",
+  "_shasum": "014ee8f8f669c5c58023da64b8179c083a28c46c",
+  "_spec": "detect-node@^2.0.4",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\spdy-transport",
   "author": {
   "author": {
     "name": "Ilya Kantor"
     "name": "Ilya Kantor"
   },
   },
+  "browser": "browser.js",
   "bugs": {
   "bugs": {
     "url": "https://github.com/iliakan/detect-node/issues"
     "url": "https://github.com/iliakan/detect-node/issues"
   },
   },
+  "bundleDependencies": false,
+  "deprecated": false,
   "description": "Detect Node.JS (as opposite to browser environment) (reliable)",
   "description": "Detect Node.JS (as opposite to browser environment) (reliable)",
   "homepage": "https://github.com/iliakan/detect-node",
   "homepage": "https://github.com/iliakan/detect-node",
   "keywords": [
   "keywords": [
@@ -50,5 +47,5 @@
   "scripts": {
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1"
     "test": "echo \"Error: no test specified\" && exit 1"
   },
   },
-  "version": "2.0.3"
+  "version": "2.0.4"
 }
 }

+ 57 - 4
node_modules/es-abstract/.eslintrc

@@ -3,20 +3,73 @@
 
 
 	"extends": "@ljharb",
 	"extends": "@ljharb",
 
 
+	"env": {
+		"es6": true,
+	},
+
 	"rules": {
 	"rules": {
+		"arrow-parens": [2, "always"],
 		"array-bracket-newline": 0,
 		"array-bracket-newline": 0,
 		"array-element-newline": 0,
 		"array-element-newline": 0,
 		"complexity": 0,
 		"complexity": 0,
 		"eqeqeq": [2, "allow-null"],
 		"eqeqeq": [2, "allow-null"],
 		"func-name-matching": 0,
 		"func-name-matching": 0,
-		"id-length": [2, { "min": 1, "max": 30 }],
-		"max-lines": [2, 700],
+		"id-length": [2, { "min": 1, "max": 40 }],
 		"max-params": [2, 4],
 		"max-params": [2, 4],
 		"max-statements": [2, 24],
 		"max-statements": [2, 24],
 		"max-statements-per-line": [2, { "max": 2 }],
 		"max-statements-per-line": [2, { "max": 2 }],
+		"multiline-comment-style": 0,
 		"no-magic-numbers": 0,
 		"no-magic-numbers": 0,
 		"new-cap": 0,
 		"new-cap": 0,
 		"no-extra-parens": 1,
 		"no-extra-parens": 1,
-		"sort-keys": 0
-	}
+		"operator-linebreak": [2, "before"],
+		"sort-keys": 0,
+	},
+
+	"overrides": [
+		{
+			"files": "./*/{Date,Month}FromTime.js",
+			"rules": {
+				"max-statements": [2, 30],
+			},
+		},
+		{
+			"files": "operations/*",
+			"rules": {
+				"max-lines": 0,
+			},
+		},
+		{
+			"files": "operations/*.js",
+			"parserOptions": {
+				"ecmaVersion": 2018,
+			},
+			"rules": {
+				"no-console": 0,
+				"no-multi-str": 0,
+			},
+		},
+		{
+			"files": "operations/getOps.js",
+			"rules": {
+				"no-console": 0,
+				"no-process-exit": 0,
+			},
+		},
+		{
+			"files": "test/**",
+			"rules": {
+				"id-length": 0,
+				"max-lines": 0,
+				"max-lines-per-function": 0,
+				"max-statements-per-line": [2, { "max": 3 }],
+				"max-nested-callbacks": [2, 4],
+				"max-statements": 0,
+				"no-implicit-coercion": 0,
+				"no-invalid-this": 1,
+				"object-curly-newline": 0,
+				"prefer-regex-literals": 0,
+			},
+		},
+	],
 }
 }

+ 0 - 176
node_modules/es-abstract/.jscs.json

@@ -1,176 +0,0 @@
-{
-	"es3": true,
-
-	"additionalRules": [],
-
-	"requireSemicolons": true,
-
-	"disallowMultipleSpaces": true,
-
-	"disallowIdentifierNames": [],
-
-	"requireCurlyBraces": {
-		"allExcept": [],
-		"keywords": ["if", "else", "for", "while", "do", "try", "catch"]
-	},
-
-	"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
-
-	"disallowSpaceAfterKeywords": [],
-
-	"disallowSpaceBeforeComma": true,
-	"disallowSpaceAfterComma": false,
-	"disallowSpaceBeforeSemicolon": true,
-
-	"disallowNodeTypes": [
-		"DebuggerStatement",
-		"ForInStatement",
-		"LabeledStatement",
-		"SwitchCase",
-		"SwitchStatement",
-		"WithStatement"
-	],
-
-	"requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
-
-	"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
-	"requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true },
-	"requireSpacesInFunctionDeclaration": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInFunctionDeclaration": { "beforeOpeningRoundBrace": true },
-
-	"requireSpaceBetweenArguments": true,
-
-	"disallowSpacesInsideParentheses": true,
-
-	"disallowSpacesInsideArrayBrackets": true,
-
-	"disallowQuotedKeysInObjects": { "allExcept": ["reserved"] },
-
-	"disallowSpaceAfterObjectKeys": true,
-
-	"requireCommaBeforeLineBreak": true,
-
-	"disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
-	"requireSpaceAfterPrefixUnaryOperators": [],
-
-	"disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
-	"requireSpaceBeforePostfixUnaryOperators": [],
-
-	"disallowSpaceBeforeBinaryOperators": [],
-	"requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-
-	"requireSpaceAfterBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-	"disallowSpaceAfterBinaryOperators": [],
-
-	"disallowImplicitTypeConversion": ["binary", "string"],
-
-	"disallowKeywords": ["with", "eval"],
-
-	"requireKeywordsOnNewLine": [],
-	"disallowKeywordsOnNewLine": ["else"],
-
-	"requireLineFeedAtFileEnd": true,
-
-	"disallowTrailingWhitespace": true,
-
-	"disallowTrailingComma": true,
-
-	"excludeFiles": ["node_modules/**", "vendor/**"],
-
-	"disallowMultipleLineStrings": true,
-
-	"requireDotNotation": { "allExcept": ["keywords"] },
-
-	"requireParenthesesAroundIIFE": true,
-
-	"validateLineBreaks": "LF",
-
-	"validateQuoteMarks": {
-		"escape": true,
-		"mark": "'"
-	},
-
-	"disallowOperatorBeforeLineBreak": [],
-
-	"requireSpaceBeforeKeywords": [
-		"do",
-		"for",
-		"if",
-		"else",
-		"switch",
-		"case",
-		"try",
-		"catch",
-		"finally",
-		"while",
-		"with",
-		"return"
-	],
-
-	"validateAlignedFunctionParameters": {
-		"lineBreakAfterOpeningBraces": true,
-		"lineBreakBeforeClosingBraces": true
-	},
-
-	"requirePaddingNewLinesBeforeExport": true,
-
-	"validateNewlineAfterArrayElements": {
-		"maximum": 9
-	},
-
-	"requirePaddingNewLinesAfterUseStrict": true,
-
-	"disallowArrowFunctions": true,
-
-	"disallowMultiLineTernary": true,
-
-	"validateOrderInObjectKeys": false,
-
-	"disallowIdenticalDestructuringNames": true,
-
-	"disallowNestedTernaries": { "maxLevel": 1 },
-
-	"requireSpaceAfterComma": { "allExcept": ["trailing"] },
-	"requireAlignedMultilineParams": false,
-
-	"requireSpacesInGenerator": {
-		"afterStar": true
-	},
-
-	"disallowSpacesInGenerator": {
-		"beforeStar": true
-	},
-
-	"disallowVar": false,
-
-	"requireArrayDestructuring": false,
-
-	"requireEnhancedObjectLiterals": false,
-
-	"requireObjectDestructuring": false,
-
-	"requireEarlyReturn": false,
-
-	"requireCapitalizedConstructorsNew": {
-		"allExcept": ["Function", "String", "Object", "Symbol", "Number", "Date", "RegExp", "Error", "Boolean", "Array"]
-	},
-
-	"requireImportAlphabetized": false,
-
-	"requireSpaceBeforeObjectValues": true,
-	"requireSpaceBeforeDestructuredValues": true,
-
-	"disallowSpacesInsideTemplateStringPlaceholders": true,
-
-	"disallowArrayDestructuringReturn": false,
-
-	"requireNewlineBeforeSingleStatementsInIf": false,
-
-	"disallowUnusedVariables": true,
-
-	"requireSpacesInsideImportedObjectBraces": true,
-
-	"requireUseStrict": true
-}
-

+ 6 - 7
node_modules/es-abstract/.nycrc

@@ -1,15 +1,14 @@
 {
 {
 	"all": true,
 	"all": true,
-	"check": true,
+	"check-coverage": false,
 	"reporter": ["text-summary", "text", "html", "json"],
 	"reporter": ["text-summary", "text", "html", "json"],
-	"lines": 98,
-	"statements": 97,
-	"functions": 93,
-	"branches": 94,
+	"lines": 86,
+	"statements": 85.93,
+	"functions": 82.43,
+	"branches": 76.06,
 	"exclude": [
 	"exclude": [
 		"coverage",
 		"coverage",
 		"operations",
 		"operations",
 		"test"
 		"test"
-	],
-	"xreport-coverage": "nyc report --reporter=lcov > coverage.lcov && codecov"
+	]
 }
 }

+ 21 - 196
node_modules/es-abstract/.travis.yml

@@ -1,207 +1,32 @@
+version: ~> 1.0
 language: node_js
 language: node_js
 os:
 os:
  - linux
  - linux
-node_js:
-  - "9.8"
-  - "8.10"
-  - "7.10"
-  - "6.13"
-  - "5.12"
-  - "4.8"
-  - "iojs-v3.3"
-  - "iojs-v2.5"
-  - "iojs-v1.8"
-  - "0.12"
-  - "0.10"
-  - "0.8"
-  - "0.6"
-before_install:
-  - 'nvm install-latest-npm'
-install:
-  - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ] || [ "${TRAVIS_NODE_VERSION}" = "0.9" ]; then nvm install --latest-npm 0.8 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;'
+cache:
+  directories:
+    - "$HOME/.npm"
+    - "$(nvm cache dir)"
+    - "$(nvm_version_path $(nvm_version_remote 0.4))"
+    - "$(nvm_version_path $(nvm_version_remote 0.6))"
+    - "$(nvm_version_path $(nvm_version_remote 0.10))"
+import:
+ - ljharb/travis-ci:node/all.yml
+ - ljharb/travis-ci:node/pretest.yml
+ - ljharb/travis-ci:node/posttest.yml
 script:
 script:
-  - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi'
-  - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi'
   - 'if [ -n "${COVERAGE-}" ]; then npm run coverage && bash <(curl -s https://codecov.io/bash) -f coverage/*.json; fi'
   - 'if [ -n "${COVERAGE-}" ]; then npm run coverage && bash <(curl -s https://codecov.io/bash) -f coverage/*.json; fi'
-  - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi'
-sudo: false
-env:
-  - TEST=true
 matrix:
 matrix:
-  fast_finish: true
   include:
   include:
-    - node_js: "lts/*"
-      env: PRETEST=true
-    - node_js: "lts/*"
-      env: POSTTEST=true
-    - node_js: "0.8"
-      env: COVERAGE=true
-    - node_js: "0.12"
+    - node_js: "8"
       env: COVERAGE=true
       env: COVERAGE=true
     - node_js: "4"
     - node_js: "4"
       env: COVERAGE=true
       env: COVERAGE=true
-    - node_js: "8"
+    - node_js: "0.12"
+      env: COVERAGE=true
+    - node_js: "0.8"
       env: COVERAGE=true
       env: COVERAGE=true
-    - node_js: "9.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "9.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "8.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "7.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.12"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.11"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.10"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "6.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.11"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.10"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.8"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "5.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "4.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v3.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v2.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.7"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.6"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.5"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.4"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.3"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.2"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.1"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "iojs-v1.0"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.11"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.9"
-      env: TEST=true ALLOW_FAILURE=true
-    - node_js: "0.4"
-      env: TEST=true ALLOW_FAILURE=true
-  allow_failures:
-    - os: osx
-    - env: TEST=true ALLOW_FAILURE=true
+  exclude:
+    - node_js: "0.12"
+      env: TEST=true
+    - node_js: "0.8"
+      env: TEST=true

+ 125 - 0
node_modules/es-abstract/CHANGELOG.md

@@ -1,3 +1,128 @@
+1.17.0-next.1 / 2019-12-11
+=================
+  * [Fix] `object.assign` is a runtime dep
+  * [meta] only run spackle script in publish (#78)
+
+1.17.0-next.0 / 2019-12-11
+=================
+  * [New] Split up each operation into its own file
+
+1.16.3 / 2019-12-04
+=================
+  * [Fix] `GetIntrinsic`: when given a path to a getter, return the actual getter
+  * [Dev Deps] update `eslint`
+
+1.16.2 / 2019-11-24
+=================
+  * [Fix] IE 6-7 lack JSON
+  * [Fix] IE 6-8 strings can’t use array slice, they need string slice
+  * [Dev Deps] update `eslint`
+
+1.16.1 / 2019-11-24
+=================
+  * [Fix] `GetIntrinsics`: turns out IE 8 throws when `Object.getOwnPropertyDescriptor(arguments);`, and does not throw on `callee` anyways
+  * [Deps] update `es-to-primitive`, `has-symbols`, `object-inspect`
+  * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`
+  * [meta] re-include year files inside `operations`
+  * [meta] add `funding` field
+  * [actions] add Automatic Rebase github action
+  * [Tests] use shared travis-ci config
+  * [Tests] disable `check-coverage`, and let codecov do it
+
+1.16.0 / 2019-10-18
+=================
+  * [New] `ES2015+`: add `SetFunctionName`
+  * [New] `ES2015+`: add `GetPrototypeFromConstructor`, with caveats
+  * [New] `ES2015+`: add `CreateListFromArrayLike`
+  * [New] `ES2016+`: add `OrdinarySetPrototypeOf`
+  * [New] `ES2016+`: add `OrdinaryGetPrototypeOf`
+  * [New] add `getSymbolDescription` and `getInferredName` helpers
+  * [Fix] `GetIterator`: add fallback for pre-Symbol environments, tests
+  * [Dev Deps] update `object.fromentries`
+  * [Tests] add `node` `v12.2`
+
+1.15.0 / 2019-10-02
+=================
+  * [New] `ES2018`+: add `DateString`, `TimeString`
+  * [New] `ES2015`+: add `ToDateString`
+  * [New] `ES5`+: add `msFromTime`, `SecFromTime`, `MinFromTime`, `HourFromTime`, `TimeWithinDay`, `Day`, `DayFromYear`, `TimeFromYear`, `YearFromTime`, `WeekDay`, `DaysInYear`, `InLeapYear`, `DayWithinYear`, `MonthFromTime`, `DateFromTime`, `MakeDay`, `MakeDate`, `MakeTime`, `TimeClip`, `modulo`
+  * [New] add `regexTester` helper
+  * [New] add `callBound` helper
+  * [New] add ES2020’s intrinsic dot notation
+  * [New] add `isPrefixOf` helper
+  * [New] add `maxSafeInteger` helper
+  * [Deps] update `string.prototype.trimleft`, `string.prototype.trimright`
+  * [Dev Deps] update `eslint`
+  * [Tests] on `node` `v12.11`
+  * [meta] npmignore operations scripts; add "deltas"
+
+1.14.2 / 2019-09-08
+=================
+  * [Fix] `ES2016`: `IterableToArrayLike`: add proper fallback for strings, pre-Symbols
+  * [Tests] on `node` `v12.10`
+
+1.14.1 / 2019-09-03
+=================
+  * [meta] republish with some extra files removed
+
+1.14.0 / 2019-09-02
+=================
+  * [New] add ES2019
+  * [New] `ES2017+`: add `IterableToList`
+  * [New] `ES2016`: add `IterableToArrayLike`
+  * [New] `ES2015+`: add `ArrayCreate`, `ArraySetLength`, `OrdinaryDefineOwnProperty`, `OrdinaryGetOwnProperty`, `OrdinaryHasProperty`, `CreateHTML`, `GetOwnPropertyKeys`, `InstanceofOperator`, `SymbolDescriptiveString`, `GetSubstitution`, `ValidateAndApplyPropertyDescriptor`, `IsPromise`, `OrdinaryHasInstance`, `TestIntegrityLevel`, `SetIntegrityLevel`
+  * [New] add `callBind` helper, and use it
+  * [New] add helpers: `isPropertyDescriptor`, `every`
+  * [New] ES5+: add `Abstract Relational Comparison`
+  * [New] ES5+: add `Abstract Equality Comparison`, `Strict Equality Comparison`
+  * [Fix] `ES2015+`: `GetIterator`: only require native Symbols when `method` is omitted
+  * [Fix] `ES2015`: `Call`: error message now properly displays Symbols using `object-inspect`
+  * [Fix] `ES2015+`: `ValidateAndApplyPropertyDescriptor`: use ES2017 logic to bypass spec bugs
+  * [Fix] `ES2015+`: `CreateDataProperty`, `DefinePropertyOrThrow`, `ValidateAndApplyPropertyDescriptor`: add fallbacks for ES3
+  * [Fix] `ES2015+`: `FromPropertyDescriptor`: no longer requires a fully complete Property Descriptor
+  * [Fix] `ES5`: `IsPropertyDescriptor`: call into `IsDataDescriptor` and `IsAccessorDescriptor`
+  * [Refactor] use `has-symbols` for Symbol detection
+  * [Fix] `helpers/assertRecord`: remove `console.log`
+  * [Deps] update `object-keys`
+  * [readme] add security note
+  * [meta] change http URLs to https
+  * [meta] linter cleanup
+  * [meta] fix getOps script
+  * [meta] add FUNDING.yml
+  * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`, `semver`, `replace`, `cheerio`, `tape`
+  * [Tests] up to `node` `v12.9`, `v11.15`, `v10.16`, `v8.16`, `v6.17`
+  * [Tests] temporarily allow node 0.6 to fail; segfaulting in travis
+  * [Tests] use the values helper more in es5 tests
+  * [Tests] fix linting to apply to all files
+  * [Tests] run `npx aud` only on prod deps
+  * [Tests] add v.descriptors helpers
+  * [Tests] use `npx aud` instead of `npm audit` with hoops
+  * [Tests] use `eclint` instead of `editorconfig-tools`
+  * [Tests] some intrinsic cleanup
+  * [Tests] migrate es5 tests to use values helper
+  * [Tests] add some missing ES2015 ops
+
+1.13.0 / 2019-01-02
+=================
+  * [New] add ES2018
+  * [New] add ES2015/ES2016: EnumerableOwnNames; ES2017: EnumerableOwnProperties
+  * [New] `ES2015+`: add `thisBooleanValue`, `thisNumberValue`, `thisStringValue`, `thisTimeValue`
+  * [New] `ES2015+`: add `DefinePropertyOrThrow`, `DeletePropertyOrThrow`, `CreateMethodProperty`
+  * [New] add `assertRecord` helper
+  * [Deps] update `is-callable`, `has`, `object-keys`, `es-to-primitive`
+  * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `semver`, `safe-publish-latest`, `replace`
+  * [Tests] use `npm audit` instead of `nsp`
+  * [Tests] remove `jscs`
+  * [Tests] up to `node` `v11.6`, `v10.15`, `v8.15`, `v6.16`
+  * [Tests] move descriptor factories to `values` helper
+  * [Tests] add `getOps` to programmatically fetch abstract operation names
+
+1.12.0 / 2018-05-31
+=================
+  * [New] add `GetIntrinsic` entry point
+  * [New] `ES2015`+: add `ObjectCreate`
+  * [Robustness]: `ES2015+`: ensure `Math.{abs,floor}` and `Function.call` are cached
+
 1.11.0 / 2018-03-21
 1.11.0 / 2018-03-21
 =================
 =================
   * [New] `ES2015+`: add iterator abstract ops
   * [New] `ES2015+`: add iterator abstract ops

+ 8 - 4
node_modules/es-abstract/README.md

@@ -12,7 +12,7 @@
 
 
 ECMAScript spec abstract operations.
 ECMAScript spec abstract operations.
 When different versions of the spec conflict, the default export will be the latest version of the abstract operation.
 When different versions of the spec conflict, the default export will be the latest version of the abstract operation.
-All abstract operations will also be available under an `es5`/`es2015`/`es2016` entry point, and exported property, if you require a specific version.
+All abstract operations will also be available under an `es5`/`es2015`/`es2016`/`es2017`/`es2018`/`es2019` entry point, and exported property, if you require a specific version.
 
 
 ## Example
 ## Example
 
 
@@ -27,6 +27,10 @@ assert(!ES.isCallable(/a/g));
 ## Tests
 ## Tests
 Simply clone the repo, `npm install`, and run `npm test`
 Simply clone the repo, `npm install`, and run `npm test`
 
 
+## Security
+
+Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
+
 [package-url]: https://npmjs.org/package/es-abstract
 [package-url]: https://npmjs.org/package/es-abstract
 [npm-version-svg]: http://versionbadg.es/ljharb/es-abstract.svg
 [npm-version-svg]: http://versionbadg.es/ljharb/es-abstract.svg
 [travis-svg]: https://travis-ci.org/ljharb/es-abstract.svg
 [travis-svg]: https://travis-ci.org/ljharb/es-abstract.svg
@@ -38,7 +42,7 @@ Simply clone the repo, `npm install`, and run `npm test`
 [testling-svg]: https://ci.testling.com/ljharb/es-abstract.png
 [testling-svg]: https://ci.testling.com/ljharb/es-abstract.png
 [testling-url]: https://ci.testling.com/ljharb/es-abstract
 [testling-url]: https://ci.testling.com/ljharb/es-abstract
 [npm-badge-png]: https://nodei.co/npm/es-abstract.png?downloads=true&stars=true
 [npm-badge-png]: https://nodei.co/npm/es-abstract.png?downloads=true&stars=true
-[license-image]: http://img.shields.io/npm/l/es-abstract.svg
+[license-image]: https://img.shields.io/npm/l/es-abstract.svg
 [license-url]: LICENSE
 [license-url]: LICENSE
-[downloads-image]: http://img.shields.io/npm/dm/es-abstract.svg
-[downloads-url]: http://npm-stat.com/charts.html?package=es-abstract
+[downloads-image]: https://img.shields.io/npm/dm/es-abstract.svg
+[downloads-url]: https://npm-stat.com/charts.html?package=es-abstract

+ 110 - 650
node_modules/es-abstract/es2015.js

@@ -1,655 +1,115 @@
 'use strict';
 'use strict';
 
 
-var has = require('has');
-var toPrimitive = require('es-to-primitive/es6');
-
-var toStr = Object.prototype.toString;
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
-var SymbolIterator = hasSymbols ? Symbol.iterator : null;
-
-var $isNaN = require('./helpers/isNaN');
-var $isFinite = require('./helpers/isFinite');
-var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || Math.pow(2, 53) - 1;
-
-var assign = require('./helpers/assign');
-var sign = require('./helpers/sign');
-var mod = require('./helpers/mod');
-var isPrimitive = require('./helpers/isPrimitive');
-var parseInteger = parseInt;
-var bind = require('function-bind');
-var arraySlice = bind.call(Function.call, Array.prototype.slice);
-var strSlice = bind.call(Function.call, String.prototype.slice);
-var isBinary = bind.call(Function.call, RegExp.prototype.test, /^0b[01]+$/i);
-var isOctal = bind.call(Function.call, RegExp.prototype.test, /^0o[0-7]+$/i);
-var regexExec = bind.call(Function.call, RegExp.prototype.exec);
-var nonWS = ['\u0085', '\u200b', '\ufffe'].join('');
-var nonWSregex = new RegExp('[' + nonWS + ']', 'g');
-var hasNonWS = bind.call(Function.call, RegExp.prototype.test, nonWSregex);
-var invalidHexLiteral = /^[-+]0x[0-9a-f]+$/i;
-var isInvalidHexLiteral = bind.call(Function.call, RegExp.prototype.test, invalidHexLiteral);
-
-// whitespace from: http://es5.github.io/#x15.5.4.20
-// implementation from https://github.com/es-shims/es5-shim/blob/v3.4.0/es5-shim.js#L1304-L1324
-var ws = [
-	'\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003',
-	'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028',
-	'\u2029\uFEFF'
-].join('');
-var trimRegex = new RegExp('(^[' + ws + ']+)|([' + ws + ']+$)', 'g');
-var replace = bind.call(Function.call, String.prototype.replace);
-var trim = function (value) {
-	return replace(value, trimRegex, '');
+/* eslint global-require: 0 */
+// https://www.ecma-international.org/ecma-262/6.0/#sec-abstract-operations
+var ES6 = {
+	'Abstract Equality Comparison': require('./2015/AbstractEqualityComparison'),
+	'Abstract Relational Comparison': require('./2015/AbstractRelationalComparison'),
+	'Strict Equality Comparison': require('./2015/StrictEqualityComparison'),
+	AdvanceStringIndex: require('./2015/AdvanceStringIndex'),
+	ArrayCreate: require('./2015/ArrayCreate'),
+	ArraySetLength: require('./2015/ArraySetLength'),
+	ArraySpeciesCreate: require('./2015/ArraySpeciesCreate'),
+	Call: require('./2015/Call'),
+	CanonicalNumericIndexString: require('./2015/CanonicalNumericIndexString'),
+	CompletePropertyDescriptor: require('./2015/CompletePropertyDescriptor'),
+	CreateDataProperty: require('./2015/CreateDataProperty'),
+	CreateDataPropertyOrThrow: require('./2015/CreateDataPropertyOrThrow'),
+	CreateHTML: require('./2015/CreateHTML'),
+	CreateIterResultObject: require('./2015/CreateIterResultObject'),
+	CreateListFromArrayLike: require('./2015/CreateListFromArrayLike'),
+	CreateMethodProperty: require('./2015/CreateMethodProperty'),
+	DateFromTime: require('./2015/DateFromTime'),
+	Day: require('./2015/Day'),
+	DayFromYear: require('./2015/DayFromYear'),
+	DaysInYear: require('./2015/DaysInYear'),
+	DayWithinYear: require('./2015/DayWithinYear'),
+	DefinePropertyOrThrow: require('./2015/DefinePropertyOrThrow'),
+	DeletePropertyOrThrow: require('./2015/DeletePropertyOrThrow'),
+	EnumerableOwnNames: require('./2015/EnumerableOwnNames'),
+	FromPropertyDescriptor: require('./2015/FromPropertyDescriptor'),
+	Get: require('./2015/Get'),
+	GetIterator: require('./2015/GetIterator'),
+	GetMethod: require('./2015/GetMethod'),
+	GetOwnPropertyKeys: require('./2015/GetOwnPropertyKeys'),
+	GetPrototypeFromConstructor: require('./2015/GetPrototypeFromConstructor'),
+	GetSubstitution: require('./2015/GetSubstitution'),
+	GetV: require('./2015/GetV'),
+	HasOwnProperty: require('./2015/HasOwnProperty'),
+	HasProperty: require('./2015/HasProperty'),
+	HourFromTime: require('./2015/HourFromTime'),
+	InLeapYear: require('./2015/InLeapYear'),
+	InstanceofOperator: require('./2015/InstanceofOperator'),
+	Invoke: require('./2015/Invoke'),
+	IsAccessorDescriptor: require('./2015/IsAccessorDescriptor'),
+	IsArray: require('./2015/IsArray'),
+	IsCallable: require('./2015/IsCallable'),
+	IsConcatSpreadable: require('./2015/IsConcatSpreadable'),
+	IsConstructor: require('./2015/IsConstructor'),
+	IsDataDescriptor: require('./2015/IsDataDescriptor'),
+	IsExtensible: require('./2015/IsExtensible'),
+	IsGenericDescriptor: require('./2015/IsGenericDescriptor'),
+	IsInteger: require('./2015/IsInteger'),
+	IsPromise: require('./2015/IsPromise'),
+	IsPropertyDescriptor: require('./2015/IsPropertyDescriptor'),
+	IsPropertyKey: require('./2015/IsPropertyKey'),
+	IsRegExp: require('./2015/IsRegExp'),
+	IteratorClose: require('./2015/IteratorClose'),
+	IteratorComplete: require('./2015/IteratorComplete'),
+	IteratorNext: require('./2015/IteratorNext'),
+	IteratorStep: require('./2015/IteratorStep'),
+	IteratorValue: require('./2015/IteratorValue'),
+	MakeDate: require('./2015/MakeDate'),
+	MakeDay: require('./2015/MakeDay'),
+	MakeTime: require('./2015/MakeTime'),
+	MinFromTime: require('./2015/MinFromTime'),
+	modulo: require('./2015/modulo'),
+	MonthFromTime: require('./2015/MonthFromTime'),
+	msFromTime: require('./2015/msFromTime'),
+	ObjectCreate: require('./2015/ObjectCreate'),
+	OrdinaryDefineOwnProperty: require('./2015/OrdinaryDefineOwnProperty'),
+	OrdinaryGetOwnProperty: require('./2015/OrdinaryGetOwnProperty'),
+	OrdinaryHasInstance: require('./2015/OrdinaryHasInstance'),
+	OrdinaryHasProperty: require('./2015/OrdinaryHasProperty'),
+	RegExpExec: require('./2015/RegExpExec'),
+	RequireObjectCoercible: require('./2015/RequireObjectCoercible'),
+	SameValue: require('./2015/SameValue'),
+	SameValueZero: require('./2015/SameValueZero'),
+	SecFromTime: require('./2015/SecFromTime'),
+	Set: require('./2015/Set'),
+	SetFunctionName: require('./2015/SetFunctionName'),
+	SetIntegrityLevel: require('./2015/SetIntegrityLevel'),
+	SpeciesConstructor: require('./2015/SpeciesConstructor'),
+	SymbolDescriptiveString: require('./2015/SymbolDescriptiveString'),
+	TestIntegrityLevel: require('./2015/TestIntegrityLevel'),
+	thisBooleanValue: require('./2015/thisBooleanValue'),
+	thisNumberValue: require('./2015/thisNumberValue'),
+	thisStringValue: require('./2015/thisStringValue'),
+	thisTimeValue: require('./2015/thisTimeValue'),
+	TimeClip: require('./2015/TimeClip'),
+	TimeFromYear: require('./2015/TimeFromYear'),
+	TimeWithinDay: require('./2015/TimeWithinDay'),
+	ToBoolean: require('./2015/ToBoolean'),
+	ToDateString: require('./2015/ToDateString'),
+	ToInt16: require('./2015/ToInt16'),
+	ToInt32: require('./2015/ToInt32'),
+	ToInt8: require('./2015/ToInt8'),
+	ToInteger: require('./2015/ToInteger'),
+	ToLength: require('./2015/ToLength'),
+	ToNumber: require('./2015/ToNumber'),
+	ToObject: require('./2015/ToObject'),
+	ToPrimitive: require('./2015/ToPrimitive'),
+	ToPropertyDescriptor: require('./2015/ToPropertyDescriptor'),
+	ToPropertyKey: require('./2015/ToPropertyKey'),
+	ToString: require('./2015/ToString'),
+	ToUint16: require('./2015/ToUint16'),
+	ToUint32: require('./2015/ToUint32'),
+	ToUint8: require('./2015/ToUint8'),
+	ToUint8Clamp: require('./2015/ToUint8Clamp'),
+	Type: require('./2015/Type'),
+	ValidateAndApplyPropertyDescriptor: require('./2015/ValidateAndApplyPropertyDescriptor'),
+	WeekDay: require('./2015/WeekDay'),
+	YearFromTime: require('./2015/YearFromTime')
 };
 };
 
 
-var ES5 = require('./es5');
-
-var hasRegExpMatcher = require('is-regex');
-
-// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-abstract-operations
-var ES6 = assign(assign({}, ES5), {
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-call-f-v-args
-	Call: function Call(F, V) {
-		var args = arguments.length > 2 ? arguments[2] : [];
-		if (!this.IsCallable(F)) {
-			throw new TypeError(F + ' is not a function');
-		}
-		return F.apply(V, args);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toprimitive
-	ToPrimitive: toPrimitive,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toboolean
-	// ToBoolean: ES5.ToBoolean,
-
-	// http://www.ecma-international.org/ecma-262/6.0/#sec-tonumber
-	ToNumber: function ToNumber(argument) {
-		var value = isPrimitive(argument) ? argument : toPrimitive(argument, Number);
-		if (typeof value === 'symbol') {
-			throw new TypeError('Cannot convert a Symbol value to a number');
-		}
-		if (typeof value === 'string') {
-			if (isBinary(value)) {
-				return this.ToNumber(parseInteger(strSlice(value, 2), 2));
-			} else if (isOctal(value)) {
-				return this.ToNumber(parseInteger(strSlice(value, 2), 8));
-			} else if (hasNonWS(value) || isInvalidHexLiteral(value)) {
-				return NaN;
-			} else {
-				var trimmed = trim(value);
-				if (trimmed !== value) {
-					return this.ToNumber(trimmed);
-				}
-			}
-		}
-		return Number(value);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tointeger
-	// ToInteger: ES5.ToNumber,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint32
-	// ToInt32: ES5.ToInt32,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint32
-	// ToUint32: ES5.ToUint32,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint16
-	ToInt16: function ToInt16(argument) {
-		var int16bit = this.ToUint16(argument);
-		return int16bit >= 0x8000 ? int16bit - 0x10000 : int16bit;
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint16
-	// ToUint16: ES5.ToUint16,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint8
-	ToInt8: function ToInt8(argument) {
-		var int8bit = this.ToUint8(argument);
-		return int8bit >= 0x80 ? int8bit - 0x100 : int8bit;
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8
-	ToUint8: function ToUint8(argument) {
-		var number = this.ToNumber(argument);
-		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
-		var posInt = sign(number) * Math.floor(Math.abs(number));
-		return mod(posInt, 0x100);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8clamp
-	ToUint8Clamp: function ToUint8Clamp(argument) {
-		var number = this.ToNumber(argument);
-		if ($isNaN(number) || number <= 0) { return 0; }
-		if (number >= 0xFF) { return 0xFF; }
-		var f = Math.floor(argument);
-		if (f + 0.5 < number) { return f + 1; }
-		if (number < f + 0.5) { return f; }
-		if (f % 2 !== 0) { return f + 1; }
-		return f;
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tostring
-	ToString: function ToString(argument) {
-		if (typeof argument === 'symbol') {
-			throw new TypeError('Cannot convert a Symbol value to a string');
-		}
-		return String(argument);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toobject
-	ToObject: function ToObject(value) {
-		this.RequireObjectCoercible(value);
-		return Object(value);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-topropertykey
-	ToPropertyKey: function ToPropertyKey(argument) {
-		var key = this.ToPrimitive(argument, String);
-		return typeof key === 'symbol' ? key : this.ToString(key);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
-	ToLength: function ToLength(argument) {
-		var len = this.ToInteger(argument);
-		if (len <= 0) { return 0; } // includes converting -0 to +0
-		if (len > MAX_SAFE_INTEGER) { return MAX_SAFE_INTEGER; }
-		return len;
-	},
-
-	// http://www.ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring
-	CanonicalNumericIndexString: function CanonicalNumericIndexString(argument) {
-		if (toStr.call(argument) !== '[object String]') {
-			throw new TypeError('must be a string');
-		}
-		if (argument === '-0') { return -0; }
-		var n = this.ToNumber(argument);
-		if (this.SameValue(this.ToString(n), argument)) { return n; }
-		return void 0;
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-requireobjectcoercible
-	RequireObjectCoercible: ES5.CheckObjectCoercible,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isarray
-	IsArray: Array.isArray || function IsArray(argument) {
-		return toStr.call(argument) === '[object Array]';
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-iscallable
-	// IsCallable: ES5.IsCallable,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isconstructor
-	IsConstructor: function IsConstructor(argument) {
-		return typeof argument === 'function' && !!argument.prototype; // unfortunately there's no way to truly check this without try/catch `new argument`
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isextensible-o
-	IsExtensible: function IsExtensible(obj) {
-		if (!Object.preventExtensions) { return true; }
-		if (isPrimitive(obj)) {
-			return false;
-		}
-		return Object.isExtensible(obj);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isinteger
-	IsInteger: function IsInteger(argument) {
-		if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) {
-			return false;
-		}
-		var abs = Math.abs(argument);
-		return Math.floor(abs) === abs;
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-ispropertykey
-	IsPropertyKey: function IsPropertyKey(argument) {
-		return typeof argument === 'string' || typeof argument === 'symbol';
-	},
-
-	// http://www.ecma-international.org/ecma-262/6.0/#sec-isregexp
-	IsRegExp: function IsRegExp(argument) {
-		if (!argument || typeof argument !== 'object') {
-			return false;
-		}
-		if (hasSymbols) {
-			var isRegExp = argument[Symbol.match];
-			if (typeof isRegExp !== 'undefined') {
-				return ES5.ToBoolean(isRegExp);
-			}
-		}
-		return hasRegExpMatcher(argument);
-	},
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevalue
-	// SameValue: ES5.SameValue,
-
-	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero
-	SameValueZero: function SameValueZero(x, y) {
-		return (x === y) || ($isNaN(x) && $isNaN(y));
-	},
-
-	/**
-	 * 7.3.2 GetV (V, P)
-	 * 1. Assert: IsPropertyKey(P) is true.
-	 * 2. Let O be ToObject(V).
-	 * 3. ReturnIfAbrupt(O).
-	 * 4. Return O.[[Get]](P, V).
-	 */
-	GetV: function GetV(V, P) {
-		// 7.3.2.1
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('Assertion failed: IsPropertyKey(P) is not true');
-		}
-
-		// 7.3.2.2-3
-		var O = this.ToObject(V);
-
-		// 7.3.2.4
-		return O[P];
-	},
-
-	/**
-	 * 7.3.9 - http://www.ecma-international.org/ecma-262/6.0/#sec-getmethod
-	 * 1. Assert: IsPropertyKey(P) is true.
-	 * 2. Let func be GetV(O, P).
-	 * 3. ReturnIfAbrupt(func).
-	 * 4. If func is either undefined or null, return undefined.
-	 * 5. If IsCallable(func) is false, throw a TypeError exception.
-	 * 6. Return func.
-	 */
-	GetMethod: function GetMethod(O, P) {
-		// 7.3.9.1
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('Assertion failed: IsPropertyKey(P) is not true');
-		}
-
-		// 7.3.9.2
-		var func = this.GetV(O, P);
-
-		// 7.3.9.4
-		if (func == null) {
-			return void 0;
-		}
-
-		// 7.3.9.5
-		if (!this.IsCallable(func)) {
-			throw new TypeError(P + 'is not a function');
-		}
-
-		// 7.3.9.6
-		return func;
-	},
-
-	/**
-	 * 7.3.1 Get (O, P) - http://www.ecma-international.org/ecma-262/6.0/#sec-get-o-p
-	 * 1. Assert: Type(O) is Object.
-	 * 2. Assert: IsPropertyKey(P) is true.
-	 * 3. Return O.[[Get]](P, O).
-	 */
-	Get: function Get(O, P) {
-		// 7.3.1.1
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(O) is not Object');
-		}
-		// 7.3.1.2
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('Assertion failed: IsPropertyKey(P) is not true');
-		}
-		// 7.3.1.3
-		return O[P];
-	},
-
-	Type: function Type(x) {
-		if (typeof x === 'symbol') {
-			return 'Symbol';
-		}
-		return ES5.Type(x);
-	},
-
-	// http://www.ecma-international.org/ecma-262/6.0/#sec-speciesconstructor
-	SpeciesConstructor: function SpeciesConstructor(O, defaultConstructor) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(O) is not Object');
-		}
-		var C = O.constructor;
-		if (typeof C === 'undefined') {
-			return defaultConstructor;
-		}
-		if (this.Type(C) !== 'Object') {
-			throw new TypeError('O.constructor is not an Object');
-		}
-		var S = hasSymbols && Symbol.species ? C[Symbol.species] : void 0;
-		if (S == null) {
-			return defaultConstructor;
-		}
-		if (this.IsConstructor(S)) {
-			return S;
-		}
-		throw new TypeError('no constructor found');
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor
-	CompletePropertyDescriptor: function CompletePropertyDescriptor(Desc) {
-		if (!this.IsPropertyDescriptor(Desc)) {
-			throw new TypeError('Desc must be a Property Descriptor');
-		}
-
-		if (this.IsGenericDescriptor(Desc) || this.IsDataDescriptor(Desc)) {
-			if (!has(Desc, '[[Value]]')) {
-				Desc['[[Value]]'] = void 0;
-			}
-			if (!has(Desc, '[[Writable]]')) {
-				Desc['[[Writable]]'] = false;
-			}
-		} else {
-			if (!has(Desc, '[[Get]]')) {
-				Desc['[[Get]]'] = void 0;
-			}
-			if (!has(Desc, '[[Set]]')) {
-				Desc['[[Set]]'] = void 0;
-			}
-		}
-		if (!has(Desc, '[[Enumerable]]')) {
-			Desc['[[Enumerable]]'] = false;
-		}
-		if (!has(Desc, '[[Configurable]]')) {
-			Desc['[[Configurable]]'] = false;
-		}
-		return Desc;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw
-	Set: function Set(O, P, V, Throw) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('O must be an Object');
-		}
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('P must be a Property Key');
-		}
-		if (this.Type(Throw) !== 'Boolean') {
-			throw new TypeError('Throw must be a Boolean');
-		}
-		if (Throw) {
-			O[P] = V;
-			return true;
-		} else {
-			try {
-				O[P] = V;
-			} catch (e) {
-				return false;
-			}
-		}
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-hasownproperty
-	HasOwnProperty: function HasOwnProperty(O, P) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('O must be an Object');
-		}
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('P must be a Property Key');
-		}
-		return has(O, P);
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-hasproperty
-	HasProperty: function HasProperty(O, P) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('O must be an Object');
-		}
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('P must be a Property Key');
-		}
-		return P in O;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable
-	IsConcatSpreadable: function IsConcatSpreadable(O) {
-		if (this.Type(O) !== 'Object') {
-			return false;
-		}
-		if (hasSymbols && typeof Symbol.isConcatSpreadable === 'symbol') {
-			var spreadable = this.Get(O, Symbol.isConcatSpreadable);
-			if (typeof spreadable !== 'undefined') {
-				return this.ToBoolean(spreadable);
-			}
-		}
-		return this.IsArray(O);
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-invoke
-	Invoke: function Invoke(O, P) {
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('P must be a Property Key');
-		}
-		var argumentsList = arraySlice(arguments, 2);
-		var func = this.GetV(O, P);
-		return this.Call(func, O, argumentsList);
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-getiterator
-	GetIterator: function GetIterator(obj, method) {
-		if (!hasSymbols) {
-			throw new SyntaxError('ES.GetIterator depends on native iterator support.');
-		}
-
-		var actualMethod = method;
-		if (arguments.length < 2) {
-			actualMethod = this.GetMethod(obj, SymbolIterator);
-		}
-		var iterator = this.Call(actualMethod, obj);
-		if (this.Type(iterator) !== 'Object') {
-			throw new TypeError('iterator must return an object');
-		}
-
-		return iterator;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-iteratornext
-	IteratorNext: function IteratorNext(iterator, value) {
-		var result = this.Invoke(iterator, 'next', arguments.length < 2 ? [] : [value]);
-		if (this.Type(result) !== 'Object') {
-			throw new TypeError('iterator next must return an object');
-		}
-		return result;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete
-	IteratorComplete: function IteratorComplete(iterResult) {
-		if (this.Type(iterResult) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(iterResult) is not Object');
-		}
-		return this.ToBoolean(this.Get(iterResult, 'done'));
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue
-	IteratorValue: function IteratorValue(iterResult) {
-		if (this.Type(iterResult) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(iterResult) is not Object');
-		}
-		return this.Get(iterResult, 'value');
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-iteratorstep
-	IteratorStep: function IteratorStep(iterator) {
-		var result = this.IteratorNext(iterator);
-		var done = this.IteratorComplete(result);
-		return done === true ? false : result;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-iteratorclose
-	IteratorClose: function IteratorClose(iterator, completion) {
-		if (this.Type(iterator) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(iterator) is not Object');
-		}
-		if (!this.IsCallable(completion)) {
-			throw new TypeError('Assertion failed: completion is not a thunk for a Completion Record');
-		}
-		var completionThunk = completion;
-
-		var iteratorReturn = this.GetMethod(iterator, 'return');
-
-		if (typeof iteratorReturn === 'undefined') {
-			return completionThunk();
-		}
-
-		var completionRecord;
-		try {
-			var innerResult = this.Call(iteratorReturn, iterator, []);
-		} catch (e) {
-			// if we hit here, then "e" is the innerResult completion that needs re-throwing
-
-			// if the completion is of type "throw", this will throw.
-			completionRecord = completionThunk();
-			completionThunk = null; // ensure it's not called twice.
-
-			// if not, then return the innerResult completion
-			throw e;
-		}
-		completionRecord = completionThunk(); // if innerResult worked, then throw if the completion does
-		completionThunk = null; // ensure it's not called twice.
-
-		if (this.Type(innerResult) !== 'Object') {
-			throw new TypeError('iterator .return must return an object');
-		}
-
-		return completionRecord;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject
-	CreateIterResultObject: function CreateIterResultObject(value, done) {
-		if (this.Type(done) !== 'Boolean') {
-			throw new TypeError('Assertion failed: Type(done) is not Boolean');
-		}
-		return {
-			value: value,
-			done: done
-		};
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-regexpexec
-	RegExpExec: function RegExpExec(R, S) {
-		if (this.Type(R) !== 'Object') {
-			throw new TypeError('R must be an Object');
-		}
-		if (this.Type(S) !== 'String') {
-			throw new TypeError('S must be a String');
-		}
-		var exec = this.Get(R, 'exec');
-		if (this.IsCallable(exec)) {
-			var result = this.Call(exec, R, [S]);
-			if (result === null || this.Type(result) === 'Object') {
-				return result;
-			}
-			throw new TypeError('"exec" method must return `null` or an Object');
-		}
-		return regexExec(R, S);
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate
-	ArraySpeciesCreate: function ArraySpeciesCreate(originalArray, length) {
-		if (!this.IsInteger(length) || length < 0) {
-			throw new TypeError('Assertion failed: length must be an integer >= 0');
-		}
-		var len = length === 0 ? 0 : length;
-		var C;
-		var isArray = this.IsArray(originalArray);
-		if (isArray) {
-			C = this.Get(originalArray, 'constructor');
-			// TODO: figure out how to make a cross-realm normal Array, a same-realm Array
-			// if (this.IsConstructor(C)) {
-			// 	if C is another realm's Array, C = undefined
-			// 	Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(Array))) === null ?
-			// }
-			if (this.Type(C) === 'Object' && hasSymbols && Symbol.species) {
-				C = this.Get(C, Symbol.species);
-				if (C === null) {
-					C = void 0;
-				}
-			}
-		}
-		if (typeof C === 'undefined') {
-			return Array(len);
-		}
-		if (!this.IsConstructor(C)) {
-			throw new TypeError('C must be a constructor');
-		}
-		return new C(len); // this.Construct(C, len);
-	},
-
-	CreateDataProperty: function CreateDataProperty(O, P, V) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(O) is not Object');
-		}
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('Assertion failed: IsPropertyKey(P) is not true');
-		}
-		var oldDesc = Object.getOwnPropertyDescriptor(O, P);
-		var extensible = oldDesc || (typeof Object.isExtensible !== 'function' || Object.isExtensible(O));
-		var immutable = oldDesc && (!oldDesc.writable || !oldDesc.configurable);
-		if (immutable || !extensible) {
-			return false;
-		}
-		var newDesc = {
-			configurable: true,
-			enumerable: true,
-			value: V,
-			writable: true
-		};
-		Object.defineProperty(O, P, newDesc);
-		return true;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow
-	CreateDataPropertyOrThrow: function CreateDataPropertyOrThrow(O, P, V) {
-		if (this.Type(O) !== 'Object') {
-			throw new TypeError('Assertion failed: Type(O) is not Object');
-		}
-		if (!this.IsPropertyKey(P)) {
-			throw new TypeError('Assertion failed: IsPropertyKey(P) is not true');
-		}
-		var success = this.CreateDataProperty(O, P, V);
-		if (!success) {
-			throw new TypeError('unable to create data property');
-		}
-		return success;
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-advancestringindex
-	AdvanceStringIndex: function AdvanceStringIndex(S, index, unicode) {
-		if (this.Type(S) !== 'String') {
-			throw new TypeError('Assertion failed: Type(S) is not String');
-		}
-		if (!this.IsInteger(index)) {
-			throw new TypeError('Assertion failed: length must be an integer >= 0 and <= (2**53 - 1)');
-		}
-		if (index < 0 || index > MAX_SAFE_INTEGER) {
-			throw new RangeError('Assertion failed: length must be an integer >= 0 and <= (2**53 - 1)');
-		}
-		if (this.Type(unicode) !== 'Boolean') {
-			throw new TypeError('Assertion failed: Type(unicode) is not Boolean');
-		}
-		if (!unicode) {
-			return index + 1;
-		}
-		var length = S.length;
-		if ((index + 1) >= length) {
-			return index + 1;
-		}
-		var first = S.charCodeAt(index);
-		if (first < 0xD800 || first > 0xDBFF) {
-			return index + 1;
-		}
-		var second = S.charCodeAt(index + 1);
-		if (second < 0xDC00 || second > 0xDFFF) {
-			return index + 1;
-		}
-		return index + 2;
-	}
-});
-
-delete ES6.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible
-
 module.exports = ES6;
 module.exports = ES6;

+ 115 - 12
node_modules/es-abstract/es2016.js

@@ -1,16 +1,119 @@
 'use strict';
 'use strict';
 
 
-var ES2015 = require('./es2015');
-var assign = require('./helpers/assign');
-
-var ES2016 = assign(assign({}, ES2015), {
-	// https://github.com/tc39/ecma262/pull/60
-	SameValueNonNumber: function SameValueNonNumber(x, y) {
-		if (typeof x === 'number' || typeof x !== typeof y) {
-			throw new TypeError('SameValueNonNumber requires two non-number values of the same type.');
-		}
-		return this.SameValue(x, y);
-	}
-});
+/* eslint global-require: 0 */
+// https://www.ecma-international.org/ecma-262/7.0/#sec-abstract-operations
+var ES2016 = {
+	'Abstract Equality Comparison': require('./2016/AbstractEqualityComparison'),
+	'Abstract Relational Comparison': require('./2016/AbstractRelationalComparison'),
+	'Strict Equality Comparison': require('./2016/StrictEqualityComparison'),
+	AdvanceStringIndex: require('./2016/AdvanceStringIndex'),
+	ArrayCreate: require('./2016/ArrayCreate'),
+	ArraySetLength: require('./2016/ArraySetLength'),
+	ArraySpeciesCreate: require('./2016/ArraySpeciesCreate'),
+	Call: require('./2016/Call'),
+	CanonicalNumericIndexString: require('./2016/CanonicalNumericIndexString'),
+	CompletePropertyDescriptor: require('./2016/CompletePropertyDescriptor'),
+	CreateDataProperty: require('./2016/CreateDataProperty'),
+	CreateDataPropertyOrThrow: require('./2016/CreateDataPropertyOrThrow'),
+	CreateHTML: require('./2016/CreateHTML'),
+	CreateIterResultObject: require('./2016/CreateIterResultObject'),
+	CreateListFromArrayLike: require('./2016/CreateListFromArrayLike'),
+	CreateMethodProperty: require('./2016/CreateMethodProperty'),
+	DateFromTime: require('./2016/DateFromTime'),
+	Day: require('./2016/Day'),
+	DayFromYear: require('./2016/DayFromYear'),
+	DaysInYear: require('./2016/DaysInYear'),
+	DayWithinYear: require('./2016/DayWithinYear'),
+	DefinePropertyOrThrow: require('./2016/DefinePropertyOrThrow'),
+	DeletePropertyOrThrow: require('./2016/DeletePropertyOrThrow'),
+	EnumerableOwnNames: require('./2016/EnumerableOwnNames'),
+	FromPropertyDescriptor: require('./2016/FromPropertyDescriptor'),
+	Get: require('./2016/Get'),
+	GetIterator: require('./2016/GetIterator'),
+	GetMethod: require('./2016/GetMethod'),
+	GetOwnPropertyKeys: require('./2016/GetOwnPropertyKeys'),
+	GetPrototypeFromConstructor: require('./2016/GetPrototypeFromConstructor'),
+	GetSubstitution: require('./2016/GetSubstitution'),
+	GetV: require('./2016/GetV'),
+	HasOwnProperty: require('./2016/HasOwnProperty'),
+	HasProperty: require('./2016/HasProperty'),
+	HourFromTime: require('./2016/HourFromTime'),
+	InLeapYear: require('./2016/InLeapYear'),
+	InstanceofOperator: require('./2016/InstanceofOperator'),
+	Invoke: require('./2016/Invoke'),
+	IsAccessorDescriptor: require('./2016/IsAccessorDescriptor'),
+	IsArray: require('./2016/IsArray'),
+	IsCallable: require('./2016/IsCallable'),
+	IsConcatSpreadable: require('./2016/IsConcatSpreadable'),
+	IsConstructor: require('./2016/IsConstructor'),
+	IsDataDescriptor: require('./2016/IsDataDescriptor'),
+	IsExtensible: require('./2016/IsExtensible'),
+	IsGenericDescriptor: require('./2016/IsGenericDescriptor'),
+	IsInteger: require('./2016/IsInteger'),
+	IsPromise: require('./2016/IsPromise'),
+	IsPropertyDescriptor: require('./2016/IsPropertyDescriptor'),
+	IsPropertyKey: require('./2016/IsPropertyKey'),
+	IsRegExp: require('./2016/IsRegExp'),
+	IterableToArrayLike: require('./2016/IterableToArrayLike'),
+	IteratorClose: require('./2016/IteratorClose'),
+	IteratorComplete: require('./2016/IteratorComplete'),
+	IteratorNext: require('./2016/IteratorNext'),
+	IteratorStep: require('./2016/IteratorStep'),
+	IteratorValue: require('./2016/IteratorValue'),
+	MakeDate: require('./2016/MakeDate'),
+	MakeDay: require('./2016/MakeDay'),
+	MakeTime: require('./2016/MakeTime'),
+	MinFromTime: require('./2016/MinFromTime'),
+	modulo: require('./2016/modulo'),
+	MonthFromTime: require('./2016/MonthFromTime'),
+	msFromTime: require('./2016/msFromTime'),
+	ObjectCreate: require('./2016/ObjectCreate'),
+	OrdinaryDefineOwnProperty: require('./2016/OrdinaryDefineOwnProperty'),
+	OrdinaryGetOwnProperty: require('./2016/OrdinaryGetOwnProperty'),
+	OrdinaryGetPrototypeOf: require('./2016/OrdinaryGetPrototypeOf'),
+	OrdinarySetPrototypeOf: require('./2016/OrdinarySetPrototypeOf'),
+	OrdinaryHasInstance: require('./2016/OrdinaryHasInstance'),
+	OrdinaryHasProperty: require('./2016/OrdinaryHasProperty'),
+	RegExpExec: require('./2016/RegExpExec'),
+	RequireObjectCoercible: require('./2016/RequireObjectCoercible'),
+	SameValue: require('./2016/SameValue'),
+	SameValueNonNumber: require('./2016/SameValueNonNumber'),
+	SameValueZero: require('./2016/SameValueZero'),
+	SecFromTime: require('./2016/SecFromTime'),
+	Set: require('./2016/Set'),
+	SetFunctionName: require('./2016/SetFunctionName'),
+	SetIntegrityLevel: require('./2016/SetIntegrityLevel'),
+	SpeciesConstructor: require('./2016/SpeciesConstructor'),
+	SymbolDescriptiveString: require('./2016/SymbolDescriptiveString'),
+	TestIntegrityLevel: require('./2016/TestIntegrityLevel'),
+	thisBooleanValue: require('./2016/thisBooleanValue'),
+	thisNumberValue: require('./2016/thisNumberValue'),
+	thisStringValue: require('./2016/thisStringValue'),
+	thisTimeValue: require('./2016/thisTimeValue'),
+	TimeClip: require('./2016/TimeClip'),
+	TimeFromYear: require('./2016/TimeFromYear'),
+	TimeWithinDay: require('./2016/TimeWithinDay'),
+	ToBoolean: require('./2016/ToBoolean'),
+	ToDateString: require('./2016/ToDateString'),
+	ToInt16: require('./2016/ToInt16'),
+	ToInt32: require('./2016/ToInt32'),
+	ToInt8: require('./2016/ToInt8'),
+	ToInteger: require('./2016/ToInteger'),
+	ToLength: require('./2016/ToLength'),
+	ToNumber: require('./2016/ToNumber'),
+	ToObject: require('./2016/ToObject'),
+	ToPrimitive: require('./2016/ToPrimitive'),
+	ToPropertyDescriptor: require('./2016/ToPropertyDescriptor'),
+	ToPropertyKey: require('./2016/ToPropertyKey'),
+	ToString: require('./2016/ToString'),
+	ToUint16: require('./2016/ToUint16'),
+	ToUint32: require('./2016/ToUint32'),
+	ToUint8: require('./2016/ToUint8'),
+	ToUint8Clamp: require('./2016/ToUint8Clamp'),
+	Type: require('./2016/Type'),
+	ValidateAndApplyPropertyDescriptor: require('./2016/ValidateAndApplyPropertyDescriptor'),
+	WeekDay: require('./2016/WeekDay'),
+	YearFromTime: require('./2016/YearFromTime')
+};
 
 
 module.exports = ES2016;
 module.exports = ES2016;

+ 116 - 21
node_modules/es-abstract/es2017.js

@@ -1,25 +1,120 @@
 'use strict';
 'use strict';
 
 
-var ES2016 = require('./es2016');
-var assign = require('./helpers/assign');
-
-var ES2017 = assign(assign({}, ES2016), {
-	ToIndex: function ToIndex(value) {
-		if (typeof value === 'undefined') {
-			return 0;
-		}
-		var integerIndex = this.ToInteger(value);
-		if (integerIndex < 0) {
-			throw new RangeError('index must be >= 0');
-		}
-		var index = this.ToLength(integerIndex);
-		if (!this.SameValueZero(integerIndex, index)) {
-			throw new RangeError('index must be >= 0 and < 2 ** 53 - 1');
-		}
-		return index;
-	}
-});
-
-delete ES2017.EnumerableOwnNames; // replaced with EnumerableOwnProperties
+/* eslint global-require: 0 */
+// https://www.ecma-international.org/ecma-262/8.0/#sec-abstract-operations
+var ES2017 = {
+	'Abstract Equality Comparison': require('./2017/AbstractEqualityComparison'),
+	'Abstract Relational Comparison': require('./2017/AbstractRelationalComparison'),
+	'Strict Equality Comparison': require('./2017/StrictEqualityComparison'),
+	AdvanceStringIndex: require('./2017/AdvanceStringIndex'),
+	ArrayCreate: require('./2017/ArrayCreate'),
+	ArraySetLength: require('./2017/ArraySetLength'),
+	ArraySpeciesCreate: require('./2017/ArraySpeciesCreate'),
+	Call: require('./2017/Call'),
+	CanonicalNumericIndexString: require('./2017/CanonicalNumericIndexString'),
+	CompletePropertyDescriptor: require('./2017/CompletePropertyDescriptor'),
+	CreateDataProperty: require('./2017/CreateDataProperty'),
+	CreateDataPropertyOrThrow: require('./2017/CreateDataPropertyOrThrow'),
+	CreateHTML: require('./2017/CreateHTML'),
+	CreateIterResultObject: require('./2017/CreateIterResultObject'),
+	CreateListFromArrayLike: require('./2017/CreateListFromArrayLike'),
+	CreateMethodProperty: require('./2017/CreateMethodProperty'),
+	DateFromTime: require('./2017/DateFromTime'),
+	Day: require('./2017/Day'),
+	DayFromYear: require('./2017/DayFromYear'),
+	DaysInYear: require('./2017/DaysInYear'),
+	DayWithinYear: require('./2017/DayWithinYear'),
+	DefinePropertyOrThrow: require('./2017/DefinePropertyOrThrow'),
+	DeletePropertyOrThrow: require('./2017/DeletePropertyOrThrow'),
+	EnumerableOwnProperties: require('./2017/EnumerableOwnProperties'),
+	FromPropertyDescriptor: require('./2017/FromPropertyDescriptor'),
+	Get: require('./2017/Get'),
+	GetIterator: require('./2017/GetIterator'),
+	GetMethod: require('./2017/GetMethod'),
+	GetOwnPropertyKeys: require('./2017/GetOwnPropertyKeys'),
+	GetPrototypeFromConstructor: require('./2017/GetPrototypeFromConstructor'),
+	GetSubstitution: require('./2017/GetSubstitution'),
+	GetV: require('./2017/GetV'),
+	HasOwnProperty: require('./2017/HasOwnProperty'),
+	HasProperty: require('./2017/HasProperty'),
+	HourFromTime: require('./2017/HourFromTime'),
+	InLeapYear: require('./2017/InLeapYear'),
+	InstanceofOperator: require('./2017/InstanceofOperator'),
+	Invoke: require('./2017/Invoke'),
+	IsAccessorDescriptor: require('./2017/IsAccessorDescriptor'),
+	IsArray: require('./2017/IsArray'),
+	IsCallable: require('./2017/IsCallable'),
+	IsConcatSpreadable: require('./2017/IsConcatSpreadable'),
+	IsConstructor: require('./2017/IsConstructor'),
+	IsDataDescriptor: require('./2017/IsDataDescriptor'),
+	IsExtensible: require('./2017/IsExtensible'),
+	IsGenericDescriptor: require('./2017/IsGenericDescriptor'),
+	IsInteger: require('./2017/IsInteger'),
+	IsPromise: require('./2017/IsPromise'),
+	IsPropertyDescriptor: require('./2017/IsPropertyDescriptor'),
+	IsPropertyKey: require('./2017/IsPropertyKey'),
+	IsRegExp: require('./2017/IsRegExp'),
+	IterableToList: require('./2017/IterableToList'),
+	IteratorClose: require('./2017/IteratorClose'),
+	IteratorComplete: require('./2017/IteratorComplete'),
+	IteratorNext: require('./2017/IteratorNext'),
+	IteratorStep: require('./2017/IteratorStep'),
+	IteratorValue: require('./2017/IteratorValue'),
+	MakeDate: require('./2017/MakeDate'),
+	MakeDay: require('./2017/MakeDay'),
+	MakeTime: require('./2017/MakeTime'),
+	MinFromTime: require('./2017/MinFromTime'),
+	modulo: require('./2017/modulo'),
+	MonthFromTime: require('./2017/MonthFromTime'),
+	msFromTime: require('./2017/msFromTime'),
+	ObjectCreate: require('./2017/ObjectCreate'),
+	OrdinaryDefineOwnProperty: require('./2017/OrdinaryDefineOwnProperty'),
+	OrdinaryGetOwnProperty: require('./2017/OrdinaryGetOwnProperty'),
+	OrdinarySetPrototypeOf: require('./2017/OrdinarySetPrototypeOf'),
+	OrdinaryGetPrototypeOf: require('./2017/OrdinaryGetPrototypeOf'),
+	OrdinaryHasInstance: require('./2017/OrdinaryHasInstance'),
+	OrdinaryHasProperty: require('./2017/OrdinaryHasProperty'),
+	RegExpExec: require('./2017/RegExpExec'),
+	RequireObjectCoercible: require('./2017/RequireObjectCoercible'),
+	SameValue: require('./2017/SameValue'),
+	SameValueNonNumber: require('./2017/SameValueNonNumber'),
+	SameValueZero: require('./2017/SameValueZero'),
+	SecFromTime: require('./2017/SecFromTime'),
+	Set: require('./2017/Set'),
+	SetFunctionName: require('./2017/SetFunctionName'),
+	SetIntegrityLevel: require('./2017/SetIntegrityLevel'),
+	SpeciesConstructor: require('./2017/SpeciesConstructor'),
+	SymbolDescriptiveString: require('./2017/SymbolDescriptiveString'),
+	TestIntegrityLevel: require('./2017/TestIntegrityLevel'),
+	thisBooleanValue: require('./2017/thisBooleanValue'),
+	thisNumberValue: require('./2017/thisNumberValue'),
+	thisStringValue: require('./2017/thisStringValue'),
+	thisTimeValue: require('./2017/thisTimeValue'),
+	TimeClip: require('./2017/TimeClip'),
+	TimeFromYear: require('./2017/TimeFromYear'),
+	TimeWithinDay: require('./2017/TimeWithinDay'),
+	ToBoolean: require('./2017/ToBoolean'),
+	ToDateString: require('./2017/ToDateString'),
+	ToIndex: require('./2017/ToIndex'),
+	ToInt16: require('./2017/ToInt16'),
+	ToInt32: require('./2017/ToInt32'),
+	ToInt8: require('./2017/ToInt8'),
+	ToInteger: require('./2017/ToInteger'),
+	ToLength: require('./2017/ToLength'),
+	ToNumber: require('./2017/ToNumber'),
+	ToObject: require('./2017/ToObject'),
+	ToPrimitive: require('./2017/ToPrimitive'),
+	ToPropertyDescriptor: require('./2017/ToPropertyDescriptor'),
+	ToPropertyKey: require('./2017/ToPropertyKey'),
+	ToString: require('./2017/ToString'),
+	ToUint16: require('./2017/ToUint16'),
+	ToUint32: require('./2017/ToUint32'),
+	ToUint8: require('./2017/ToUint8'),
+	ToUint8Clamp: require('./2017/ToUint8Clamp'),
+	Type: require('./2017/Type'),
+	ValidateAndApplyPropertyDescriptor: require('./2017/ValidateAndApplyPropertyDescriptor'),
+	WeekDay: require('./2017/WeekDay'),
+	YearFromTime: require('./2017/YearFromTime')
+};
 
 
 module.exports = ES2017;
 module.exports = ES2017;

+ 44 - 231
node_modules/es-abstract/es5.js

@@ -1,236 +1,49 @@
 'use strict';
 'use strict';
 
 
-var $isNaN = require('./helpers/isNaN');
-var $isFinite = require('./helpers/isFinite');
-
-var sign = require('./helpers/sign');
-var mod = require('./helpers/mod');
-
-var IsCallable = require('is-callable');
-var toPrimitive = require('es-to-primitive/es5');
-
-var has = require('has');
+/* eslint global-require: 0 */
 
 
 // https://es5.github.io/#x9
 // https://es5.github.io/#x9
-var ES5 = {
-	ToPrimitive: toPrimitive,
-
-	ToBoolean: function ToBoolean(value) {
-		return !!value;
-	},
-	ToNumber: function ToNumber(value) {
-		return Number(value);
-	},
-	ToInteger: function ToInteger(value) {
-		var number = this.ToNumber(value);
-		if ($isNaN(number)) { return 0; }
-		if (number === 0 || !$isFinite(number)) { return number; }
-		return sign(number) * Math.floor(Math.abs(number));
-	},
-	ToInt32: function ToInt32(x) {
-		return this.ToNumber(x) >> 0;
-	},
-	ToUint32: function ToUint32(x) {
-		return this.ToNumber(x) >>> 0;
-	},
-	ToUint16: function ToUint16(value) {
-		var number = this.ToNumber(value);
-		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
-		var posInt = sign(number) * Math.floor(Math.abs(number));
-		return mod(posInt, 0x10000);
-	},
-	ToString: function ToString(value) {
-		return String(value);
-	},
-	ToObject: function ToObject(value) {
-		this.CheckObjectCoercible(value);
-		return Object(value);
-	},
-	CheckObjectCoercible: function CheckObjectCoercible(value, optMessage) {
-		/* jshint eqnull:true */
-		if (value == null) {
-			throw new TypeError(optMessage || 'Cannot call method on ' + value);
-		}
-		return value;
-	},
-	IsCallable: IsCallable,
-	SameValue: function SameValue(x, y) {
-		if (x === y) { // 0 === -0, but they are not identical.
-			if (x === 0) { return 1 / x === 1 / y; }
-			return true;
-		}
-		return $isNaN(x) && $isNaN(y);
-	},
-
-	// http://www.ecma-international.org/ecma-262/5.1/#sec-8
-	Type: function Type(x) {
-		if (x === null) {
-			return 'Null';
-		}
-		if (typeof x === 'undefined') {
-			return 'Undefined';
-		}
-		if (typeof x === 'function' || typeof x === 'object') {
-			return 'Object';
-		}
-		if (typeof x === 'number') {
-			return 'Number';
-		}
-		if (typeof x === 'boolean') {
-			return 'Boolean';
-		}
-		if (typeof x === 'string') {
-			return 'String';
-		}
-	},
-
-	// http://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
-	IsPropertyDescriptor: function IsPropertyDescriptor(Desc) {
-		if (this.Type(Desc) !== 'Object') {
-			return false;
-		}
-		var allowed = {
-			'[[Configurable]]': true,
-			'[[Enumerable]]': true,
-			'[[Get]]': true,
-			'[[Set]]': true,
-			'[[Value]]': true,
-			'[[Writable]]': true
-		};
-		// jscs:disable
-		for (var key in Desc) { // eslint-disable-line
-			if (has(Desc, key) && !allowed[key]) {
-				return false;
-			}
-		}
-		// jscs:enable
-		var isData = has(Desc, '[[Value]]');
-		var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
-		if (isData && IsAccessor) {
-			throw new TypeError('Property Descriptors may not be both accessor and data descriptors');
-		}
-		return true;
-	},
-
-	// http://ecma-international.org/ecma-262/5.1/#sec-8.10.1
-	IsAccessorDescriptor: function IsAccessorDescriptor(Desc) {
-		if (typeof Desc === 'undefined') {
-			return false;
-		}
-
-		if (!this.IsPropertyDescriptor(Desc)) {
-			throw new TypeError('Desc must be a Property Descriptor');
-		}
-
-		if (!has(Desc, '[[Get]]') && !has(Desc, '[[Set]]')) {
-			return false;
-		}
-
-		return true;
-	},
-
-	// http://ecma-international.org/ecma-262/5.1/#sec-8.10.2
-	IsDataDescriptor: function IsDataDescriptor(Desc) {
-		if (typeof Desc === 'undefined') {
-			return false;
-		}
-
-		if (!this.IsPropertyDescriptor(Desc)) {
-			throw new TypeError('Desc must be a Property Descriptor');
-		}
-
-		if (!has(Desc, '[[Value]]') && !has(Desc, '[[Writable]]')) {
-			return false;
-		}
-
-		return true;
-	},
-
-	// http://ecma-international.org/ecma-262/5.1/#sec-8.10.3
-	IsGenericDescriptor: function IsGenericDescriptor(Desc) {
-		if (typeof Desc === 'undefined') {
-			return false;
-		}
-
-		if (!this.IsPropertyDescriptor(Desc)) {
-			throw new TypeError('Desc must be a Property Descriptor');
-		}
-
-		if (!this.IsAccessorDescriptor(Desc) && !this.IsDataDescriptor(Desc)) {
-			return true;
-		}
-
-		return false;
-	},
-
-	// http://ecma-international.org/ecma-262/5.1/#sec-8.10.4
-	FromPropertyDescriptor: function FromPropertyDescriptor(Desc) {
-		if (typeof Desc === 'undefined') {
-			return Desc;
-		}
-
-		if (!this.IsPropertyDescriptor(Desc)) {
-			throw new TypeError('Desc must be a Property Descriptor');
-		}
-
-		if (this.IsDataDescriptor(Desc)) {
-			return {
-				value: Desc['[[Value]]'],
-				writable: !!Desc['[[Writable]]'],
-				enumerable: !!Desc['[[Enumerable]]'],
-				configurable: !!Desc['[[Configurable]]']
-			};
-		} else if (this.IsAccessorDescriptor(Desc)) {
-			return {
-				get: Desc['[[Get]]'],
-				set: Desc['[[Set]]'],
-				enumerable: !!Desc['[[Enumerable]]'],
-				configurable: !!Desc['[[Configurable]]']
-			};
-		} else {
-			throw new TypeError('FromPropertyDescriptor must be called with a fully populated Property Descriptor');
-		}
-	},
-
-	// http://ecma-international.org/ecma-262/5.1/#sec-8.10.5
-	ToPropertyDescriptor: function ToPropertyDescriptor(Obj) {
-		if (this.Type(Obj) !== 'Object') {
-			throw new TypeError('ToPropertyDescriptor requires an object');
-		}
-
-		var desc = {};
-		if (has(Obj, 'enumerable')) {
-			desc['[[Enumerable]]'] = this.ToBoolean(Obj.enumerable);
-		}
-		if (has(Obj, 'configurable')) {
-			desc['[[Configurable]]'] = this.ToBoolean(Obj.configurable);
-		}
-		if (has(Obj, 'value')) {
-			desc['[[Value]]'] = Obj.value;
-		}
-		if (has(Obj, 'writable')) {
-			desc['[[Writable]]'] = this.ToBoolean(Obj.writable);
-		}
-		if (has(Obj, 'get')) {
-			var getter = Obj.get;
-			if (typeof getter !== 'undefined' && !this.IsCallable(getter)) {
-				throw new TypeError('getter must be a function');
-			}
-			desc['[[Get]]'] = getter;
-		}
-		if (has(Obj, 'set')) {
-			var setter = Obj.set;
-			if (typeof setter !== 'undefined' && !this.IsCallable(setter)) {
-				throw new TypeError('setter must be a function');
-			}
-			desc['[[Set]]'] = setter;
-		}
-
-		if ((has(desc, '[[Get]]') || has(desc, '[[Set]]')) && (has(desc, '[[Value]]') || has(desc, '[[Writable]]'))) {
-			throw new TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
-		}
-		return desc;
-	}
+module.exports = {
+	'Abstract Equality Comparison': require('./5/AbstractEqualityComparison'),
+	'Abstract Relational Comparison': require('./5/AbstractRelationalComparison'),
+	'Strict Equality Comparison': require('./5/StrictEqualityComparison'),
+	CheckObjectCoercible: require('./5/CheckObjectCoercible'),
+	DateFromTime: require('./5/DateFromTime'),
+	Day: require('./5/Day'),
+	DayFromYear: require('./5/DayFromYear'),
+	DaysInYear: require('./5/DaysInYear'),
+	DayWithinYear: require('./5/DayWithinYear'),
+	FromPropertyDescriptor: require('./5/FromPropertyDescriptor'),
+	HourFromTime: require('./5/HourFromTime'),
+	InLeapYear: require('./5/InLeapYear'),
+	IsAccessorDescriptor: require('./5/IsAccessorDescriptor'),
+	IsCallable: require('./5/IsCallable'),
+	IsDataDescriptor: require('./5/IsDataDescriptor'),
+	IsGenericDescriptor: require('./5/IsGenericDescriptor'),
+	IsPropertyDescriptor: require('./5/IsPropertyDescriptor'),
+	MakeDate: require('./5/MakeDate'),
+	MakeDay: require('./5/MakeDay'),
+	MakeTime: require('./5/MakeTime'),
+	MinFromTime: require('./5/MinFromTime'),
+	modulo: require('./5/modulo'),
+	MonthFromTime: require('./5/MonthFromTime'),
+	msFromTime: require('./5/msFromTime'),
+	SameValue: require('./5/SameValue'),
+	SecFromTime: require('./5/SecFromTime'),
+	TimeClip: require('./5/TimeClip'),
+	TimeFromYear: require('./5/TimeFromYear'),
+	TimeWithinDay: require('./5/TimeWithinDay'),
+	ToBoolean: require('./5/ToBoolean'),
+	ToInt32: require('./5/ToInt32'),
+	ToInteger: require('./5/ToInteger'),
+	ToNumber: require('./5/ToNumber'),
+	ToObject: require('./5/ToObject'),
+	ToPrimitive: require('./5/ToPrimitive'),
+	ToPropertyDescriptor: require('./5/ToPropertyDescriptor'),
+	ToString: require('./5/ToString'),
+	ToUint16: require('./5/ToUint16'),
+	ToUint32: require('./5/ToUint32'),
+	Type: require('./5/Type'),
+	WeekDay: require('./5/WeekDay'),
+	YearFromTime: require('./5/YearFromTime')
 };
 };
-
-module.exports = ES5;

+ 14 - 4
node_modules/es-abstract/helpers/assign.js

@@ -1,10 +1,20 @@
-var has = Object.prototype.hasOwnProperty;
+'use strict';
+
+var GetIntrinsic = require('../GetIntrinsic');
+
+var has = require('has');
+
+var $assign = GetIntrinsic('%Object%').assign;
+
 module.exports = function assign(target, source) {
 module.exports = function assign(target, source) {
-	if (Object.assign) {
-		return Object.assign(target, source);
+	if ($assign) {
+		return $assign(target, source);
 	}
 	}
+
+	// eslint-disable-next-line no-restricted-syntax
 	for (var key in source) {
 	for (var key in source) {
-		if (has.call(source, key)) {
+		if (has(source, key)) {
+			// eslint-disable-next-line no-param-reassign
 			target[key] = source[key];
 			target[key] = source[key];
 		}
 		}
 	}
 	}

+ 2 - 0
node_modules/es-abstract/helpers/isFinite.js

@@ -1,3 +1,5 @@
+'use strict';
+
 var $isNaN = Number.isNaN || function (a) { return a !== a; };
 var $isNaN = Number.isNaN || function (a) { return a !== a; };
 
 
 module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };
 module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };

+ 2 - 0
node_modules/es-abstract/helpers/isNaN.js

@@ -1,3 +1,5 @@
+'use strict';
+
 module.exports = Number.isNaN || function isNaN(a) {
 module.exports = Number.isNaN || function isNaN(a) {
 	return a !== a;
 	return a !== a;
 };
 };

+ 2 - 0
node_modules/es-abstract/helpers/isPrimitive.js

@@ -1,3 +1,5 @@
+'use strict';
+
 module.exports = function isPrimitive(value) {
 module.exports = function isPrimitive(value) {
 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
 };
 };

+ 2 - 0
node_modules/es-abstract/helpers/mod.js

@@ -1,3 +1,5 @@
+'use strict';
+
 module.exports = function mod(number, modulo) {
 module.exports = function mod(number, modulo) {
 	var remain = number % modulo;
 	var remain = number % modulo;
 	return Math.floor(remain >= 0 ? remain : remain + modulo);
 	return Math.floor(remain >= 0 ? remain : remain + modulo);

+ 2 - 0
node_modules/es-abstract/helpers/sign.js

@@ -1,3 +1,5 @@
+'use strict';
+
 module.exports = function sign(number) {
 module.exports = function sign(number) {
 	return number >= 0 ? 1 : -1;
 	return number >= 0 ? 1 : -1;
 };
 };

+ 5 - 1
node_modules/es-abstract/index.js

@@ -6,6 +6,8 @@ var ES5 = require('./es5');
 var ES2015 = require('./es2015');
 var ES2015 = require('./es2015');
 var ES2016 = require('./es2016');
 var ES2016 = require('./es2016');
 var ES2017 = require('./es2017');
 var ES2017 = require('./es2017');
+var ES2018 = require('./es2018');
+var ES2019 = require('./es2019');
 
 
 var ES = {
 var ES = {
 	ES5: ES5,
 	ES5: ES5,
@@ -13,7 +15,9 @@ var ES = {
 	ES2015: ES2015,
 	ES2015: ES2015,
 	ES7: ES2016,
 	ES7: ES2016,
 	ES2016: ES2016,
 	ES2016: ES2016,
-	ES2017: ES2017
+	ES2017: ES2017,
+	ES2018: ES2018,
+	ES2019: ES2019
 };
 };
 assign(ES, ES5);
 assign(ES, ES5);
 delete ES.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible
 delete ES.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible

+ 113 - 72
node_modules/es-abstract/operations/2015.js

@@ -1,76 +1,117 @@
 'use strict';
 'use strict';
 
 
 module.exports = {
 module.exports = {
-	IsPropertyDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type',
-	IsAccessorDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-isaccessordescriptor',
-	IsDataDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-isdatadescriptor',
-	IsGenericDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-isgenericdescriptor',
-	FromPropertyDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-frompropertydescriptor',
-	ToPropertyDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-topropertydescriptor',
-	CompletePropertyDescriptor: 'http://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor',
-	ToPrimitive: 'http://ecma-international.org/ecma-262/6.0/#sec-toprimitive',
-	ToBoolean: 'http://ecma-international.org/ecma-262/6.0/#sec-toboolean',
-	ToNumber: 'http://ecma-international.org/ecma-262/6.0/#sec-tonumber',
-	ToInteger: 'http://ecma-international.org/ecma-262/6.0/#sec-tointeger',
-	ToInt32: 'http://ecma-international.org/ecma-262/6.0/#sec-toint32',
-	ToUint32: 'http://ecma-international.org/ecma-262/6.0/#sec-touint32',
-	ToInt16: 'http://ecma-international.org/ecma-262/6.0/#sec-toint16',
-	ToUint16: 'http://ecma-international.org/ecma-262/6.0/#sec-touint16',
-	ToInt8: 'http://ecma-international.org/ecma-262/6.0/#sec-toint8',
-	ToUint8: 'http://ecma-international.org/ecma-262/6.0/#sec-touint8',
-	ToUint8Clamp: 'http://ecma-international.org/ecma-262/6.0/#sec-touint8clamp',
-	ToString: 'http://ecma-international.org/ecma-262/6.0/#sec-tostring',
-	ToObject: 'http://ecma-international.org/ecma-262/6.0/#sec-toobject',
-	ToPropertyKey: 'http://ecma-international.org/ecma-262/6.0/#sec-topropertykey',
-	ToLength: 'http://ecma-international.org/ecma-262/6.0/#sec-tolength',
-	CanonicalNumericIndexString: 'http://ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring',
-	RequireObjectCoercible: 'http://ecma-international.org/ecma-262/6.0/#sec-requireobjectcoercible',
-	IsArray: 'http://ecma-international.org/ecma-262/6.0/#sec-isarray',
-	IsCallable: 'http://ecma-international.org/ecma-262/6.0/#sec-iscallable',
-	IsConstructor: 'http://ecma-international.org/ecma-262/6.0/#sec-isconstructor',
-	IsExtensible: 'http://ecma-international.org/ecma-262/6.0/#sec-isextensible-o',
-	IsInteger: 'http://ecma-international.org/ecma-262/6.0/#sec-isinteger',
-	IsPropertyKey: 'http://ecma-international.org/ecma-262/6.0/#sec-ispropertykey',
-	IsRegExp: 'http://ecma-international.org/ecma-262/6.0/#sec-isregexp',
-	SameValue: 'http://ecma-international.org/ecma-262/6.0/#sec-samevalue',
-	SameValueZero: 'http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero',
-	Get: 'http://ecma-international.org/ecma-262/6.0/#sec-get-o-p',
-	GetV: 'http://ecma-international.org/ecma-262/6.0/#sec-getv',
-	Set: 'http://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw',
-	CreateDataProperty: 'http://ecma-international.org/ecma-262/6.0/#sec-createdataproperty',
-	CreateMethodProperty: 'http://ecma-international.org/ecma-262/6.0/#sec-createmethodproperty',
-	CreateDataPropertyOrThrow: 'http://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow',
-	DefinePropertyOrThrow: 'http://ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow',
-	DeletePropertyOrThrow: 'http://ecma-international.org/ecma-262/6.0/#sec-deletepropertyorthrow',
-	GetMethod: 'http://ecma-international.org/ecma-262/6.0/#sec-getmethod',
-	HasProperty: 'http://ecma-international.org/ecma-262/6.0/#sec-hasproperty',
-	HasOwnProperty: 'http://ecma-international.org/ecma-262/6.0/#sec-hasownproperty',
-	Call: 'http://ecma-international.org/ecma-262/6.0/#sec-call',
-	Construct: 'http://ecma-international.org/ecma-262/6.0/#sec-construct',
-	SetIntegrityLevel: 'http://ecma-international.org/ecma-262/6.0/#sec-setintegritylevel',
-	TestIntegrityLevel: 'http://ecma-international.org/ecma-262/6.0/#sec-testintegritylevel',
-	CreateArrayFromList: 'http://ecma-international.org/ecma-262/6.0/#sec-createarrayfromlist',
-	CreateListFromArrayLike: 'http://ecma-international.org/ecma-262/6.0/#sec-createlistfromarraylike',
-	Invoke: 'http://ecma-international.org/ecma-262/6.0/#sec-invoke',
-	OrdinaryHasInstance: 'http://ecma-international.org/ecma-262/6.0/#sec-ordinaryhasinstance',
-	SpeciesConstructor: 'http://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor',
-	EnumerableOwnNames: 'http://ecma-international.org/ecma-262/6.0/#sec-enumerableownnames',
-	GetIterator: 'http://ecma-international.org/ecma-262/6.0/#sec-getiterator',
-	IteratorNext: 'http://ecma-international.org/ecma-262/6.0/#sec-iteratornext',
-	IteratorComplete: 'http://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete',
-	IteratorValue: 'http://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue',
-	IteratorStep: 'http://ecma-international.org/ecma-262/6.0/#sec-iteratorstep',
-	IteratorClose: 'http://ecma-international.org/ecma-262/6.0/#sec-iteratorclose',
-	CreateIterResultObject: 'http://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject',
-	CreateListIterator: 'http://ecma-international.org/ecma-262/6.0/#sec-createlistiterator',
-	Type: 'http://ecma-international.org/ecma-262/6.0/#sec-ecmascript-language-types',
-	thisNumberValue: 'http://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-number-prototype-object',
-	thisTimeValue: 'http://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-date-prototype-object',
-	thisStringValue: 'http://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-string-prototype-object',
-	RegExpExec: 'http://ecma-international.org/ecma-262/6.0/#sec-regexpexec',
-	RegExpBuiltinExec: 'http://ecma-international.org/ecma-262/6.0/#sec-regexpbuiltinexec',
-	IsConcatSpreadable: 'http://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable',
-	IsPromise: 'http://ecma-international.org/ecma-262/6.0/#sec-ispromise',
-	ArraySpeciesCreate: 'http://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate',
-	AdvanceStringIndex: 'http://ecma-international.org/ecma-262/6.0/#sec-advancestringindex'
+	IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type', // not actually an abstract op
+
+	'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/6.0/#sec-abstract-equality-comparison',
+	'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/6.0/#sec-abstract-relational-comparison',
+	'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/6.0/#sec-strict-equality-comparison',
+	AdvanceStringIndex: 'https://ecma-international.org/ecma-262/6.0/#sec-advancestringindex',
+	ArrayCreate: 'https://ecma-international.org/ecma-262/6.0/#sec-arraycreate',
+	ArraySetLength: 'https://ecma-international.org/ecma-262/6.0/#sec-arraysetlength',
+	ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate',
+	Call: 'https://ecma-international.org/ecma-262/6.0/#sec-call',
+	CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring',
+	CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor',
+	Construct: 'https://ecma-international.org/ecma-262/6.0/#sec-construct',
+	CreateArrayFromList: 'https://ecma-international.org/ecma-262/6.0/#sec-createarrayfromlist',
+	CreateDataProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-createdataproperty',
+	CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow',
+	CreateHTML: 'https://ecma-international.org/ecma-262/6.0/#sec-createhtml',
+	CreateIterResultObject: 'https://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject',
+	CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/6.0/#sec-createlistfromarraylike',
+	CreateListIterator: 'https://ecma-international.org/ecma-262/6.0/#sec-createlistiterator',
+	CreateMethodProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-createmethodproperty',
+	DateFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-date-number',
+	Day: 'https://ecma-international.org/ecma-262/6.0/#sec-day-number-and-time-within-day',
+	DayFromYear: 'https://ecma-international.org/ecma-262/6.0/#sec-year-number',
+	DaysInYear: 'https://ecma-international.org/ecma-262/6.0/#sec-year-number',
+	DayWithinYear: 'https://ecma-international.org/ecma-262/6.0/#sec-month-number',
+	DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow',
+	DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/6.0/#sec-deletepropertyorthrow',
+	EnumerableOwnNames: 'https://ecma-international.org/ecma-262/6.0/#sec-enumerableownnames',
+	FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-frompropertydescriptor',
+	Get: 'https://ecma-international.org/ecma-262/6.0/#sec-get-o-p',
+	GetIterator: 'https://ecma-international.org/ecma-262/6.0/#sec-getiterator',
+	GetMethod: 'https://ecma-international.org/ecma-262/6.0/#sec-getmethod',
+	GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/6.0/#sec-getownpropertykeys',
+	GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/6.0/#sec-getprototypefromconstructor',
+	GetSubstitution: 'https://ecma-international.org/ecma-262/6.0/#sec-getsubstitution',
+	GetV: 'https://ecma-international.org/ecma-262/6.0/#sec-getv',
+	HasOwnProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-hasownproperty',
+	HasProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-hasproperty',
+	HourFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-hours-minutes-second-and-milliseconds',
+	InLeapYear: 'https://ecma-international.org/ecma-262/6.0/#sec-year-number',
+	InstanceofOperator: 'https://ecma-international.org/ecma-262/6.0/#sec-instanceofoperator',
+	Invoke: 'https://ecma-international.org/ecma-262/6.0/#sec-invoke',
+	IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isaccessordescriptor',
+	IsArray: 'https://ecma-international.org/ecma-262/6.0/#sec-isarray',
+	IsCallable: 'https://ecma-international.org/ecma-262/6.0/#sec-iscallable',
+	IsConcatSpreadable: 'https://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable',
+	IsConstructor: 'https://ecma-international.org/ecma-262/6.0/#sec-isconstructor',
+	IsDataDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isdatadescriptor',
+	IsExtensible: 'https://ecma-international.org/ecma-262/6.0/#sec-isextensible-o',
+	IsGenericDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-isgenericdescriptor',
+	IsInteger: 'https://ecma-international.org/ecma-262/6.0/#sec-isinteger',
+	IsPromise: 'https://ecma-international.org/ecma-262/6.0/#sec-ispromise',
+	IsPropertyKey: 'https://ecma-international.org/ecma-262/6.0/#sec-ispropertykey',
+	IsRegExp: 'https://ecma-international.org/ecma-262/6.0/#sec-isregexp',
+	IteratorClose: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorclose',
+	IteratorComplete: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete',
+	IteratorNext: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratornext',
+	IteratorStep: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorstep',
+	IteratorValue: 'https://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue',
+	MakeDate: 'https://ecma-international.org/ecma-262/6.0/#sec-makedate',
+	MakeDay: 'https://ecma-international.org/ecma-262/6.0/#sec-makeday',
+	MakeTime: 'https://ecma-international.org/ecma-262/6.0/#sec-maketime',
+	MinFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-hours-minutes-second-and-milliseconds',
+	modulo: 'https://ecma-international.org/ecma-262/6.0/#sec-algorithm-conventions',
+	MonthFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-month-number',
+	msFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-hours-minutes-second-and-milliseconds',
+	NormalCompletion: 'https://ecma-international.org/ecma-262/6.0/#sec-normalcompletion',
+	ObjectCreate: 'https://ecma-international.org/ecma-262/6.0/#sec-objectcreate',
+	OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-ordinarydefineownproperty',
+	OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-ordinarygetownproperty',
+	OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/6.0/#sec-ordinaryhasinstance',
+	OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/6.0/#sec-ordinaryhasproperty',
+	RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/6.0/#sec-regexpbuiltinexec',
+	RegExpExec: 'https://ecma-international.org/ecma-262/6.0/#sec-regexpexec',
+	RequireObjectCoercible: 'https://ecma-international.org/ecma-262/6.0/#sec-requireobjectcoercible',
+	SameValue: 'https://ecma-international.org/ecma-262/6.0/#sec-samevalue',
+	SameValueZero: 'https://ecma-international.org/ecma-262/6.0/#sec-samevaluezero',
+	SecFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-hours-minutes-second-and-milliseconds',
+	Set: 'https://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw',
+	SetFunctionName: 'https://ecma-international.org/ecma-262/6.0/#sec-setfunctionname',
+	SetIntegrityLevel: 'https://ecma-international.org/ecma-262/6.0/#sec-setintegritylevel',
+	SpeciesConstructor: 'https://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor',
+	SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/6.0/#sec-symboldescriptivestring',
+	TestIntegrityLevel: 'https://ecma-international.org/ecma-262/6.0/#sec-testintegritylevel',
+	thisBooleanValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-boolean-prototype-object',
+	thisNumberValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-number-prototype-object',
+	thisStringValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-string-prototype-object',
+	thisTimeValue: 'https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-date-prototype-object',
+	TimeClip: 'https://ecma-international.org/ecma-262/6.0/#sec-timeclip',
+	TimeFromYear: 'https://ecma-international.org/ecma-262/6.0/#sec-year-number',
+	TimeWithinDay: 'https://ecma-international.org/ecma-262/6.0/#sec-day-number-and-time-within-day',
+	ToBoolean: 'https://ecma-international.org/ecma-262/6.0/#sec-toboolean',
+	ToDateString: 'https://ecma-international.org/ecma-262/6.0/#sec-todatestring',
+	ToInt16: 'https://ecma-international.org/ecma-262/6.0/#sec-toint16',
+	ToInt32: 'https://ecma-international.org/ecma-262/6.0/#sec-toint32',
+	ToInt8: 'https://ecma-international.org/ecma-262/6.0/#sec-toint8',
+	ToInteger: 'https://ecma-international.org/ecma-262/6.0/#sec-tointeger',
+	ToLength: 'https://ecma-international.org/ecma-262/6.0/#sec-tolength',
+	ToNumber: 'https://ecma-international.org/ecma-262/6.0/#sec-tonumber',
+	ToObject: 'https://ecma-international.org/ecma-262/6.0/#sec-toobject',
+	ToPrimitive: 'https://ecma-international.org/ecma-262/6.0/#sec-toprimitive',
+	ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-topropertydescriptor',
+	ToPropertyKey: 'https://ecma-international.org/ecma-262/6.0/#sec-topropertykey',
+	ToString: 'https://ecma-international.org/ecma-262/6.0/#sec-tostring',
+	ToUint16: 'https://ecma-international.org/ecma-262/6.0/#sec-touint16',
+	ToUint32: 'https://ecma-international.org/ecma-262/6.0/#sec-touint32',
+	ToUint8: 'https://ecma-international.org/ecma-262/6.0/#sec-touint8',
+	ToUint8Clamp: 'https://ecma-international.org/ecma-262/6.0/#sec-touint8clamp',
+	Type: 'https://ecma-international.org/ecma-262/6.0/#sec-ecmascript-language-types',
+	ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-validateandapplypropertydescriptor',
+	WeekDay: 'https://ecma-international.org/ecma-262/6.0/#sec-week-day',
+	YearFromTime: 'https://ecma-international.org/ecma-262/6.0/#sec-year-number'
 };
 };

+ 272 - 73
node_modules/es-abstract/operations/2016.js

@@ -1,77 +1,276 @@
 'use strict';
 'use strict';
 
 
 module.exports = {
 module.exports = {
-	IsPropertyDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-property-descriptor-specification-type',
-	IsAccessorDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-isaccessordescriptor',
-	IsDataDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-isdatadescriptor',
-	IsGenericDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-isgenericdescriptor',
-	FromPropertyDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-frompropertydescriptor',
-	ToPropertyDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-topropertydescriptor',
-	CompletePropertyDescriptor: 'http://ecma-international.org/ecma-262/7.0/#sec-completepropertydescriptor',
-	ToPrimitive: 'http://ecma-international.org/ecma-262/7.0/#sec-toprimitive',
-	ToBoolean: 'http://ecma-international.org/ecma-262/7.0/#sec-toboolean',
-	ToNumber: 'http://ecma-international.org/ecma-262/7.0/#sec-tonumber',
-	ToInteger: 'http://ecma-international.org/ecma-262/7.0/#sec-tointeger',
-	ToInt32: 'http://ecma-international.org/ecma-262/7.0/#sec-toint32',
-	ToUint32: 'http://ecma-international.org/ecma-262/7.0/#sec-touint32',
-	ToInt16: 'http://ecma-international.org/ecma-262/7.0/#sec-toint16',
-	ToUint16: 'http://ecma-international.org/ecma-262/7.0/#sec-touint16',
-	ToInt8: 'http://ecma-international.org/ecma-262/7.0/#sec-toint8',
-	ToUint8: 'http://ecma-international.org/ecma-262/7.0/#sec-touint8',
-	ToUint8Clamp: 'http://ecma-international.org/ecma-262/7.0/#sec-touint8clamp',
-	ToString: 'http://ecma-international.org/ecma-262/7.0/#sec-tostring',
-	ToObject: 'http://ecma-international.org/ecma-262/7.0/#sec-toobject',
-	ToPropertyKey: 'http://ecma-international.org/ecma-262/7.0/#sec-topropertykey',
-	ToLength: 'http://ecma-international.org/ecma-262/7.0/#sec-tolength',
-	CanonicalNumericIndexString: 'http://ecma-international.org/ecma-262/7.0/#sec-canonicalnumericindexstring',
-	RequireObjectCoercible: 'http://ecma-international.org/ecma-262/7.0/#sec-requireobjectcoercible',
-	IsArray: 'http://ecma-international.org/ecma-262/7.0/#sec-isarray',
-	IsCallable: 'http://ecma-international.org/ecma-262/7.0/#sec-iscallable',
-	IsConstructor: 'http://ecma-international.org/ecma-262/7.0/#sec-isconstructor',
-	IsExtensible: 'http://ecma-international.org/ecma-262/7.0/#sec-isextensible-o',
-	IsInteger: 'http://ecma-international.org/ecma-262/7.0/#sec-isinteger',
-	IsPropertyKey: 'http://ecma-international.org/ecma-262/7.0/#sec-ispropertykey',
-	IsRegExp: 'http://ecma-international.org/ecma-262/7.0/#sec-isregexp',
-	SameValue: 'http://ecma-international.org/ecma-262/7.0/#sec-samevalue',
-	SameValueZero: 'http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero',
-	SameValueNonNumber: 'http://ecma-international.org/ecma-262/7.0/#sec-samevaluenonnumber',
-	Get: 'http://ecma-international.org/ecma-262/7.0/#sec-get-o-p',
-	GetV: 'http://ecma-international.org/ecma-262/7.0/#sec-getv',
-	Set: 'http://ecma-international.org/ecma-262/7.0/#sec-set-o-p-v-throw',
-	CreateDataProperty: 'http://ecma-international.org/ecma-262/7.0/#sec-createdataproperty',
-	CreateMethodProperty: 'http://ecma-international.org/ecma-262/7.0/#sec-createmethodproperty',
-	CreateDataPropertyOrThrow: 'http://ecma-international.org/ecma-262/7.0/#sec-createdatapropertyorthrow',
-	DefinePropertyOrThrow: 'http://ecma-international.org/ecma-262/7.0/#sec-definepropertyorthrow',
-	DeletePropertyOrThrow: 'http://ecma-international.org/ecma-262/7.0/#sec-deletepropertyorthrow',
-	GetMethod: 'http://ecma-international.org/ecma-262/7.0/#sec-getmethod',
-	HasProperty: 'http://ecma-international.org/ecma-262/7.0/#sec-hasproperty',
-	HasOwnProperty: 'http://ecma-international.org/ecma-262/7.0/#sec-hasownproperty',
-	Call: 'http://ecma-international.org/ecma-262/7.0/#sec-call',
-	Construct: 'http://ecma-international.org/ecma-262/7.0/#sec-construct',
-	SetIntegrityLevel: 'http://ecma-international.org/ecma-262/7.0/#sec-setintegritylevel',
-	TestIntegrityLevel: 'http://ecma-international.org/ecma-262/7.0/#sec-testintegritylevel',
-	CreateArrayFromList: 'http://ecma-international.org/ecma-262/7.0/#sec-createarrayfromlist',
-	CreateListFromArrayLike: 'http://ecma-international.org/ecma-262/7.0/#sec-createlistfromarraylike',
-	Invoke: 'http://ecma-international.org/ecma-262/7.0/#sec-invoke',
-	OrdinaryHasInstance: 'http://ecma-international.org/ecma-262/7.0/#sec-ordinaryhasinstance',
-	SpeciesConstructor: 'http://ecma-international.org/ecma-262/7.0/#sec-speciesconstructor',
-	EnumerableOwnNames: 'http://ecma-international.org/ecma-262/7.0/#sec-enumerableownnames',
-	GetIterator: 'http://ecma-international.org/ecma-262/7.0/#sec-getiterator',
-	IteratorNext: 'http://ecma-international.org/ecma-262/7.0/#sec-iteratornext',
-	IteratorComplete: 'http://ecma-international.org/ecma-262/7.0/#sec-iteratorcomplete',
-	IteratorValue: 'http://ecma-international.org/ecma-262/7.0/#sec-iteratorvalue',
-	IteratorStep: 'http://ecma-international.org/ecma-262/7.0/#sec-iteratorstep',
-	IteratorClose: 'http://ecma-international.org/ecma-262/7.0/#sec-iteratorclose',
-	CreateIterResultObject: 'http://ecma-international.org/ecma-262/7.0/#sec-createiterresultobject',
-	CreateListIterator: 'http://ecma-international.org/ecma-262/7.0/#sec-createlistiterator',
-	Type: 'http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types',
-	thisNumberValue: 'http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-number-prototype-object',
-	thisTimeValue: 'http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-date-prototype-object',
-	thisStringValue: 'http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-string-prototype-object',
-	RegExpExec: 'http://ecma-international.org/ecma-262/7.0/#sec-regexpexec',
-	RegExpBuiltinExec: 'http://ecma-international.org/ecma-262/7.0/#sec-regexpbuiltinexec',
-	IsConcatSpreadable: 'http://ecma-international.org/ecma-262/7.0/#sec-isconcatspreadable',
-	IsPromise: 'http://ecma-international.org/ecma-262/7.0/#sec-ispromise',
-	ArraySpeciesCreate: 'http://ecma-international.org/ecma-262/7.0/#sec-arrayspeciescreate',
-	AdvanceStringIndex: 'http://ecma-international.org/ecma-262/6.0/#sec-advancestringindex'
+	IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type', // not actually an abstract op
+
+	abs: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
+	'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-abstract-equality-comparison',
+	'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-abstract-relational-comparison',
+	AddRestrictedFunctionProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-addrestrictedfunctionproperties',
+	AdvanceStringIndex: 'https://ecma-international.org/ecma-262/7.0/#sec-advancestringindex',
+	AllocateArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatearraybuffer',
+	AllocateTypedArray: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatetypedarray',
+	AllocateTypedArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-allocatetypedarraybuffer',
+	ArrayCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-arraycreate',
+	ArraySetLength: 'https://ecma-international.org/ecma-262/7.0/#sec-arraysetlength',
+	ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-arrayspeciescreate',
+	BlockDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-blockdeclarationinstantiation',
+	BoundFunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-boundfunctioncreate',
+	Call: 'https://ecma-international.org/ecma-262/7.0/#sec-call',
+	Canonicalize: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-canonicalize-ch',
+	CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/7.0/#sec-canonicalnumericindexstring',
+	CharacterRange: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-characterrange-abstract-operation',
+	CharacterRangeOrUnion: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-characterrangeorunion-abstract-operation',
+	CharacterSetMatcher: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-charactersetmatcher-abstract-operation',
+	CloneArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-clonearraybuffer',
+	CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-completepropertydescriptor',
+	Completion: 'https://ecma-international.org/ecma-262/7.0/#sec-completion-record-specification-type',
+	Construct: 'https://ecma-international.org/ecma-262/7.0/#sec-construct',
+	CopyDataBlockBytes: 'https://ecma-international.org/ecma-262/7.0/#sec-copydatablockbytes',
+	CreateArrayFromList: 'https://ecma-international.org/ecma-262/7.0/#sec-createarrayfromlist',
+	CreateArrayIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createarrayiterator',
+	CreateBuiltinFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-createbuiltinfunction',
+	CreateByteDataBlock: 'https://ecma-international.org/ecma-262/7.0/#sec-createbytedatablock',
+	CreateDataProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-createdataproperty',
+	CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-createdatapropertyorthrow',
+	CreateDynamicFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-createdynamicfunction',
+	CreateHTML: 'https://ecma-international.org/ecma-262/7.0/#sec-createhtml',
+	CreateIntrinsics: 'https://ecma-international.org/ecma-262/7.0/#sec-createintrinsics',
+	CreateIterResultObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createiterresultobject',
+	CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/7.0/#sec-createlistfromarraylike',
+	CreateListIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createlistiterator',
+	CreateMapIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createmapiterator',
+	CreateMappedArgumentsObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createmappedargumentsobject',
+	CreateMethodProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-createmethodproperty',
+	CreatePerIterationEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-createperiterationenvironment',
+	CreateRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-createrealm',
+	CreateResolvingFunctions: 'https://ecma-international.org/ecma-262/7.0/#sec-createresolvingfunctions',
+	CreateSetIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createsetiterator',
+	CreateStringIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-createstringiterator',
+	CreateUnmappedArgumentsObject: 'https://ecma-international.org/ecma-262/7.0/#sec-createunmappedargumentsobject',
+	DateFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-date-number',
+	Day: 'https://ecma-international.org/ecma-262/7.0/#sec-day-number-and-time-within-day',
+	DayFromYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
+	DaysInYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
+	DayWithinYear: 'https://ecma-international.org/ecma-262/7.0/#sec-month-number',
+	Decode: 'https://ecma-international.org/ecma-262/7.0/#sec-decode',
+	DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-definepropertyorthrow',
+	DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/7.0/#sec-deletepropertyorthrow',
+	DetachArrayBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-detacharraybuffer',
+	Encode: 'https://ecma-international.org/ecma-262/7.0/#sec-encode',
+	EnqueueJob: 'https://ecma-international.org/ecma-262/7.0/#sec-enqueuejob',
+	EnumerableOwnNames: 'https://ecma-international.org/ecma-262/7.0/#sec-enumerableownnames',
+	EnumerateObjectProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-enumerate-object-properties',
+	EscapeRegExpPattern: 'https://ecma-international.org/ecma-262/7.0/#sec-escaperegexppattern',
+	EvalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-evaldeclarationinstantiation',
+	EvaluateCall: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatecall',
+	EvaluateDirectCall: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatedirectcall',
+	EvaluateNew: 'https://ecma-international.org/ecma-262/7.0/#sec-evaluatenew',
+	floor: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
+	ForBodyEvaluation: 'https://ecma-international.org/ecma-262/7.0/#sec-forbodyevaluation',
+	'ForIn/OfBodyEvaluation': 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset',
+	'ForIn/OfHeadEvaluation': 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-forin-div-ofheadevaluation-tdznames-expr-iterationkind',
+	FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-frompropertydescriptor',
+	FulfillPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-fulfillpromise',
+	FunctionAllocate: 'https://ecma-international.org/ecma-262/7.0/#sec-functionallocate',
+	FunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-functioncreate',
+	FunctionDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-functiondeclarationinstantiation',
+	FunctionInitialize: 'https://ecma-international.org/ecma-262/7.0/#sec-functioninitialize',
+	GeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorfunctioncreate',
+	GeneratorResume: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorresume',
+	GeneratorResumeAbrupt: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorresumeabrupt',
+	GeneratorStart: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorstart',
+	GeneratorValidate: 'https://ecma-international.org/ecma-262/7.0/#sec-generatorvalidate',
+	GeneratorYield: 'https://ecma-international.org/ecma-262/7.0/#sec-generatoryield',
+	Get: 'https://ecma-international.org/ecma-262/7.0/#sec-get-o-p',
+	GetActiveScriptOrModule: 'https://ecma-international.org/ecma-262/7.0/#sec-getactivescriptormodule',
+	GetFunctionRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-getfunctionrealm',
+	GetGlobalObject: 'https://ecma-international.org/ecma-262/7.0/#sec-getglobalobject',
+	GetIdentifierReference: 'https://ecma-international.org/ecma-262/7.0/#sec-getidentifierreference',
+	GetIterator: 'https://ecma-international.org/ecma-262/7.0/#sec-getiterator',
+	GetMethod: 'https://ecma-international.org/ecma-262/7.0/#sec-getmethod',
+	GetModuleNamespace: 'https://ecma-international.org/ecma-262/7.0/#sec-getmodulenamespace',
+	GetNewTarget: 'https://ecma-international.org/ecma-262/7.0/#sec-getnewtarget',
+	GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/7.0/#sec-getownpropertykeys',
+	GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-getprototypefromconstructor',
+	GetSubstitution: 'https://ecma-international.org/ecma-262/7.0/#sec-getsubstitution',
+	GetSuperConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-getsuperconstructor',
+	GetTemplateObject: 'https://ecma-international.org/ecma-262/7.0/#sec-gettemplateobject',
+	GetThisEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-getthisenvironment',
+	GetThisValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getthisvalue',
+	GetV: 'https://ecma-international.org/ecma-262/7.0/#sec-getv',
+	GetValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getvalue',
+	GetValueFromBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-getvaluefrombuffer',
+	GetViewValue: 'https://ecma-international.org/ecma-262/7.0/#sec-getviewvalue',
+	GlobalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/7.0/#sec-globaldeclarationinstantiation',
+	HasOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-hasownproperty',
+	HasProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-hasproperty',
+	HostPromiseRejectionTracker: 'https://ecma-international.org/ecma-262/7.0/#sec-host-promise-rejection-tracker',
+	HostReportErrors: 'https://ecma-international.org/ecma-262/7.0/#sec-host-report-errors',
+	HostResolveImportedModule: 'https://ecma-international.org/ecma-262/7.0/#sec-hostresolveimportedmodule',
+	HourFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
+	IfAbruptRejectPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-ifabruptrejectpromise',
+	ImportedLocalNames: 'https://ecma-international.org/ecma-262/7.0/#sec-importedlocalnames',
+	InitializeBoundName: 'https://ecma-international.org/ecma-262/7.0/#sec-initializeboundname',
+	InitializeHostDefinedRealm: 'https://ecma-international.org/ecma-262/7.0/#sec-initializehostdefinedrealm',
+	InitializeReferencedBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-initializereferencedbinding',
+	InLeapYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
+	InstanceofOperator: 'https://ecma-international.org/ecma-262/7.0/#sec-instanceofoperator',
+	IntegerIndexedElementGet: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedelementget',
+	IntegerIndexedElementSet: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedelementset',
+	IntegerIndexedObjectCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-integerindexedobjectcreate',
+	InternalizeJSONProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-internalizejsonproperty',
+	Invoke: 'https://ecma-international.org/ecma-262/7.0/#sec-invoke',
+	IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isaccessordescriptor',
+	IsAnonymousFunctionDefinition: 'https://ecma-international.org/ecma-262/7.0/#sec-isanonymousfunctiondefinition',
+	IsArray: 'https://ecma-international.org/ecma-262/7.0/#sec-isarray',
+	IsCallable: 'https://ecma-international.org/ecma-262/7.0/#sec-iscallable',
+	IsCompatiblePropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-iscompatiblepropertydescriptor',
+	IsConcatSpreadable: 'https://ecma-international.org/ecma-262/7.0/#sec-isconcatspreadable',
+	IsConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-isconstructor',
+	IsDataDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isdatadescriptor',
+	IsDetachedBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-isdetachedbuffer',
+	IsExtensible: 'https://ecma-international.org/ecma-262/7.0/#sec-isextensible-o',
+	IsGenericDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-isgenericdescriptor',
+	IsInTailPosition: 'https://ecma-international.org/ecma-262/7.0/#sec-isintailposition',
+	IsInteger: 'https://ecma-international.org/ecma-262/7.0/#sec-isinteger',
+	IsLabelledFunction: 'https://ecma-international.org/ecma-262/7.0/#sec-islabelledfunction',
+	IsPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-ispromise',
+	IsPropertyKey: 'https://ecma-international.org/ecma-262/7.0/#sec-ispropertykey',
+	IsRegExp: 'https://ecma-international.org/ecma-262/7.0/#sec-isregexp',
+	IsWordChar: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-iswordchar-abstract-operation',
+	IterableToArrayLike: 'https://ecma-international.org/ecma-262/7.0/#sec-iterabletoarraylike',
+	IteratorClose: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorclose',
+	IteratorComplete: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorcomplete',
+	IteratorNext: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratornext',
+	IteratorStep: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorstep',
+	IteratorValue: 'https://ecma-international.org/ecma-262/7.0/#sec-iteratorvalue',
+	LocalTime: 'https://ecma-international.org/ecma-262/7.0/#sec-localtime',
+	LoopContinues: 'https://ecma-international.org/ecma-262/7.0/#sec-loopcontinues',
+	MakeArgGetter: 'https://ecma-international.org/ecma-262/7.0/#sec-makearggetter',
+	MakeArgSetter: 'https://ecma-international.org/ecma-262/7.0/#sec-makeargsetter',
+	MakeClassConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-makeclassconstructor',
+	MakeConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-makeconstructor',
+	MakeDate: 'https://ecma-international.org/ecma-262/7.0/#sec-makedate',
+	MakeDay: 'https://ecma-international.org/ecma-262/7.0/#sec-makeday',
+	MakeMethod: 'https://ecma-international.org/ecma-262/7.0/#sec-makemethod',
+	MakeSuperPropertyReference: 'https://ecma-international.org/ecma-262/7.0/#sec-makesuperpropertyreference',
+	MakeTime: 'https://ecma-international.org/ecma-262/7.0/#sec-maketime',
+	max: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
+	min: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
+	MinFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
+	ModuleNamespaceCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-modulenamespacecreate',
+	modulo: 'https://ecma-international.org/ecma-262/7.0/#sec-algorithm-conventions',
+	MonthFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-month-number',
+	msFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
+	NewDeclarativeEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newdeclarativeenvironment',
+	NewFunctionEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newfunctionenvironment',
+	NewGlobalEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newglobalenvironment',
+	NewModuleEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newmoduleenvironment',
+	NewObjectEnvironment: 'https://ecma-international.org/ecma-262/7.0/#sec-newobjectenvironment',
+	NewPromiseCapability: 'https://ecma-international.org/ecma-262/7.0/#sec-newpromisecapability',
+	NextJob: 'https://ecma-international.org/ecma-262/7.0/#sec-nextjob-result',
+	NormalCompletion: 'https://ecma-international.org/ecma-262/7.0/#sec-normalcompletion',
+	ObjectCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-objectcreate',
+	ObjectDefineProperties: 'https://ecma-international.org/ecma-262/7.0/#sec-objectdefineproperties',
+	OrdinaryCallBindThis: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycallbindthis',
+	OrdinaryCallEvaluateBody: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycallevaluatebody',
+	OrdinaryCreateFromConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarycreatefromconstructor',
+	OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarydefineownproperty',
+	OrdinaryDelete: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarydelete',
+	OrdinaryGet: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryget',
+	OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarygetownproperty',
+	OrdinaryGetPrototypeOf: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarygetprototypeof',
+	OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryhasinstance',
+	OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryhasproperty',
+	OrdinaryIsExtensible: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryisextensible',
+	OrdinaryOwnPropertyKeys: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryownpropertykeys',
+	OrdinaryPreventExtensions: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarypreventextensions',
+	OrdinarySet: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinaryset',
+	OrdinarySetPrototypeOf: 'https://ecma-international.org/ecma-262/7.0/#sec-ordinarysetprototypeof',
+	ParseModule: 'https://ecma-international.org/ecma-262/7.0/#sec-parsemodule',
+	ParseScript: 'https://ecma-international.org/ecma-262/7.0/#sec-parse-script',
+	PerformEval: 'https://ecma-international.org/ecma-262/7.0/#sec-performeval',
+	PerformPromiseAll: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromiseall',
+	PerformPromiseRace: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromiserace',
+	PerformPromiseThen: 'https://ecma-international.org/ecma-262/7.0/#sec-performpromisethen',
+	PrepareForOrdinaryCall: 'https://ecma-international.org/ecma-262/7.0/#sec-prepareforordinarycall',
+	PrepareForTailCall: 'https://ecma-international.org/ecma-262/7.0/#sec-preparefortailcall',
+	PromiseReactionJob: 'https://ecma-international.org/ecma-262/7.0/#sec-promisereactionjob',
+	PromiseResolveThenableJob: 'https://ecma-international.org/ecma-262/7.0/#sec-promiseresolvethenablejob',
+	ProxyCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-proxycreate',
+	PutValue: 'https://ecma-international.org/ecma-262/7.0/#sec-putvalue',
+	QuoteJSONString: 'https://ecma-international.org/ecma-262/7.0/#sec-quotejsonstring',
+	RegExpAlloc: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpalloc',
+	RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpbuiltinexec',
+	RegExpCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpcreate',
+	RegExpExec: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpexec',
+	RegExpInitialize: 'https://ecma-international.org/ecma-262/7.0/#sec-regexpinitialize',
+	RejectPromise: 'https://ecma-international.org/ecma-262/7.0/#sec-rejectpromise',
+	RepeatMatcher: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-repeatmatcher-abstract-operation',
+	RequireObjectCoercible: 'https://ecma-international.org/ecma-262/7.0/#sec-requireobjectcoercible',
+	ResolveBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-resolvebinding',
+	ResolveThisBinding: 'https://ecma-international.org/ecma-262/7.0/#sec-resolvethisbinding',
+	ReturnIfAbrupt: 'https://ecma-international.org/ecma-262/7.0/#sec-returnifabrupt',
+	SameValue: 'https://ecma-international.org/ecma-262/7.0/#sec-samevalue',
+	SameValueNonNumber: 'https://ecma-international.org/ecma-262/7.0/#sec-samevaluenonnumber',
+	SameValueZero: 'https://ecma-international.org/ecma-262/7.0/#sec-samevaluezero',
+	ScriptEvaluation: 'https://ecma-international.org/ecma-262/7.0/#sec-runtime-semantics-scriptevaluation',
+	ScriptEvaluationJob: 'https://ecma-international.org/ecma-262/7.0/#sec-scriptevaluationjob',
+	SecFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-hours-minutes-second-and-milliseconds',
+	SerializeJSONArray: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonarray',
+	SerializeJSONObject: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonobject',
+	SerializeJSONProperty: 'https://ecma-international.org/ecma-262/7.0/#sec-serializejsonproperty',
+	Set: 'https://ecma-international.org/ecma-262/7.0/#sec-set-o-p-v-throw',
+	SetDefaultGlobalBindings: 'https://ecma-international.org/ecma-262/7.0/#sec-setdefaultglobalbindings',
+	SetFunctionName: 'https://ecma-international.org/ecma-262/7.0/#sec-setfunctionname',
+	SetIntegrityLevel: 'https://ecma-international.org/ecma-262/7.0/#sec-setintegritylevel',
+	SetRealmGlobalObject: 'https://ecma-international.org/ecma-262/7.0/#sec-setrealmglobalobject',
+	SetValueInBuffer: 'https://ecma-international.org/ecma-262/7.0/#sec-setvalueinbuffer',
+	SetViewValue: 'https://ecma-international.org/ecma-262/7.0/#sec-setviewvalue',
+	SortCompare: 'https://ecma-international.org/ecma-262/7.0/#sec-sortcompare',
+	SpeciesConstructor: 'https://ecma-international.org/ecma-262/7.0/#sec-speciesconstructor',
+	SplitMatch: 'https://ecma-international.org/ecma-262/7.0/#sec-splitmatch',
+	'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/7.0/#sec-strict-equality-comparison',
+	StringCreate: 'https://ecma-international.org/ecma-262/7.0/#sec-stringcreate',
+	SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/7.0/#sec-symboldescriptivestring',
+	TestIntegrityLevel: 'https://ecma-international.org/ecma-262/7.0/#sec-testintegritylevel',
+	thisBooleanValue: 'https://ecma-international.org/ecma-262/7.0/#sec-thisbooleanvalue',
+	thisNumberValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-number-prototype-object',
+	thisStringValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-string-prototype-object',
+	thisTimeValue: 'https://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-date-prototype-object',
+	TimeClip: 'https://ecma-international.org/ecma-262/7.0/#sec-timeclip',
+	TimeFromYear: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number',
+	TimeWithinDay: 'https://ecma-international.org/ecma-262/7.0/#sec-day-number-and-time-within-day',
+	ToBoolean: 'https://ecma-international.org/ecma-262/7.0/#sec-toboolean',
+	ToDateString: 'https://ecma-international.org/ecma-262/7.0/#sec-todatestring',
+	ToInt16: 'https://ecma-international.org/ecma-262/7.0/#sec-toint16',
+	ToInt32: 'https://ecma-international.org/ecma-262/7.0/#sec-toint32',
+	ToInt8: 'https://ecma-international.org/ecma-262/7.0/#sec-toint8',
+	ToInteger: 'https://ecma-international.org/ecma-262/7.0/#sec-tointeger',
+	ToLength: 'https://ecma-international.org/ecma-262/7.0/#sec-tolength',
+	ToNumber: 'https://ecma-international.org/ecma-262/7.0/#sec-tonumber',
+	ToObject: 'https://ecma-international.org/ecma-262/7.0/#sec-toobject',
+	TopLevelModuleEvaluationJob: 'https://ecma-international.org/ecma-262/7.0/#sec-toplevelmoduleevaluationjob',
+	ToPrimitive: 'https://ecma-international.org/ecma-262/7.0/#sec-toprimitive',
+	ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-topropertydescriptor',
+	ToPropertyKey: 'https://ecma-international.org/ecma-262/7.0/#sec-topropertykey',
+	ToString: 'https://ecma-international.org/ecma-262/7.0/#sec-tostring',
+	'ToString Applied to the Number Type': 'https://ecma-international.org/ecma-262/7.0/#sec-tostring-applied-to-the-number-type',
+	ToUint16: 'https://ecma-international.org/ecma-262/7.0/#sec-touint16',
+	ToUint32: 'https://ecma-international.org/ecma-262/7.0/#sec-touint32',
+	ToUint8: 'https://ecma-international.org/ecma-262/7.0/#sec-touint8',
+	ToUint8Clamp: 'https://ecma-international.org/ecma-262/7.0/#sec-touint8clamp',
+	TriggerPromiseReactions: 'https://ecma-international.org/ecma-262/7.0/#sec-triggerpromisereactions',
+	Type: 'https://ecma-international.org/ecma-262/7.0/#sec-ecmascript-data-types-and-values',
+	TypedArrayCreate: 'https://ecma-international.org/ecma-262/7.0/#typedarray-create',
+	TypedArraySpeciesCreate: 'https://ecma-international.org/ecma-262/7.0/#typedarray-species-create',
+	UpdateEmpty: 'https://ecma-international.org/ecma-262/7.0/#sec-updateempty',
+	UTC: 'https://ecma-international.org/ecma-262/7.0/#sec-utc-t',
+	UTF16Decode: 'https://ecma-international.org/ecma-262/7.0/#sec-utf16decode',
+	UTF16Encoding: 'https://ecma-international.org/ecma-262/7.0/#sec-utf16encoding',
+	ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/7.0/#sec-validateandapplypropertydescriptor',
+	ValidateTypedArray: 'https://ecma-international.org/ecma-262/7.0/#sec-validatetypedarray',
+	WeekDay: 'https://ecma-international.org/ecma-262/7.0/#sec-week-day',
+	YearFromTime: 'https://ecma-international.org/ecma-262/7.0/#sec-year-number'
 };
 };

+ 320 - 74
node_modules/es-abstract/operations/2017.js

@@ -1,78 +1,324 @@
 'use strict';
 'use strict';
 
 
 module.exports = {
 module.exports = {
-	IsPropertyDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-property-descriptor-specification-type',
-	IsAccessorDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-isaccessordescriptor',
-	IsDataDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-isdatadescriptor',
-	IsGenericDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-isgenericdescriptor',
-	FromPropertyDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-frompropertydescriptor',
-	ToPropertyDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-topropertydescriptor',
-	CompletePropertyDescriptor: 'http://ecma-international.org/ecma-262/8.0/#sec-completepropertydescriptor',
-	ToPrimitive: 'http://ecma-international.org/ecma-262/8.0/#sec-toprimitive',
-	ToBoolean: 'http://ecma-international.org/ecma-262/8.0/#sec-toboolean',
-	ToNumber: 'http://ecma-international.org/ecma-262/8.0/#sec-tonumber',
-	ToInteger: 'http://ecma-international.org/ecma-262/8.0/#sec-tointeger',
-	ToInt32: 'http://ecma-international.org/ecma-262/8.0/#sec-toint32',
-	ToUint32: 'http://ecma-international.org/ecma-262/8.0/#sec-touint32',
-	ToInt16: 'http://ecma-international.org/ecma-262/8.0/#sec-toint16',
-	ToUint16: 'http://ecma-international.org/ecma-262/8.0/#sec-touint16',
-	ToInt8: 'http://ecma-international.org/ecma-262/8.0/#sec-toint8',
-	ToUint8: 'http://ecma-international.org/ecma-262/8.0/#sec-touint8',
-	ToUint8Clamp: 'http://ecma-international.org/ecma-262/8.0/#sec-touint8clamp',
-	ToString: 'http://ecma-international.org/ecma-262/8.0/#sec-tostring',
-	ToObject: 'http://ecma-international.org/ecma-262/8.0/#sec-toobject',
-	ToPropertyKey: 'http://ecma-international.org/ecma-262/8.0/#sec-topropertykey',
-	ToLength: 'http://ecma-international.org/ecma-262/8.0/#sec-tolength',
-	CanonicalNumericIndexString: 'http://ecma-international.org/ecma-262/8.0/#sec-canonicalnumericindexstring',
-	ToIndex: 'http://ecma-international.org/ecma-262/8.0/#sec-toindex',
-	RequireObjectCoercible: 'http://ecma-international.org/ecma-262/8.0/#sec-requireobjectcoercible',
-	IsArray: 'http://ecma-international.org/ecma-262/8.0/#sec-isarray',
-	IsCallable: 'http://ecma-international.org/ecma-262/8.0/#sec-iscallable',
-	IsConstructor: 'http://ecma-international.org/ecma-262/8.0/#sec-isconstructor',
-	IsExtensible: 'http://ecma-international.org/ecma-262/8.0/#sec-isextensible-o',
-	IsInteger: 'http://ecma-international.org/ecma-262/8.0/#sec-isinteger',
-	IsPropertyKey: 'http://ecma-international.org/ecma-262/8.0/#sec-ispropertykey',
-	IsRegExp: 'http://ecma-international.org/ecma-262/8.0/#sec-isregexp',
-	SameValue: 'http://ecma-international.org/ecma-262/8.0/#sec-samevalue',
-	SameValueZero: 'http://ecma-international.org/ecma-262/8.0/#sec-samevaluezero',
-	SameValueNonNumber: 'http://ecma-international.org/ecma-262/8.0/#sec-samevaluenonnumber',
-	Get: 'http://ecma-international.org/ecma-262/8.0/#sec-get-o-p',
-	GetV: 'http://ecma-international.org/ecma-262/8.0/#sec-getv',
-	Set: 'http://ecma-international.org/ecma-262/8.0/#sec-set-o-p-v-throw',
-	CreateDataProperty: 'http://ecma-international.org/ecma-262/8.0/#sec-createdataproperty',
-	CreateMethodProperty: 'http://ecma-international.org/ecma-262/8.0/#sec-createmethodproperty',
-	CreateDataPropertyOrThrow: 'http://ecma-international.org/ecma-262/8.0/#sec-createdatapropertyorthrow',
-	DefinePropertyOrThrow: 'http://ecma-international.org/ecma-262/8.0/#sec-definepropertyorthrow',
-	DeletePropertyOrThrow: 'http://ecma-international.org/ecma-262/8.0/#sec-deletepropertyorthrow',
-	GetMethod: 'http://ecma-international.org/ecma-262/8.0/#sec-getmethod',
-	HasProperty: 'http://ecma-international.org/ecma-262/8.0/#sec-hasproperty',
-	HasOwnProperty: 'http://ecma-international.org/ecma-262/8.0/#sec-hasownproperty',
-	Call: 'http://ecma-international.org/ecma-262/8.0/#sec-call',
-	Construct: 'http://ecma-international.org/ecma-262/8.0/#sec-construct',
-	SetIntegrityLevel: 'http://ecma-international.org/ecma-262/8.0/#sec-setintegritylevel',
-	TestIntegrityLevel: 'http://ecma-international.org/ecma-262/8.0/#sec-testintegritylevel',
-	CreateArrayFromList: 'http://ecma-international.org/ecma-262/8.0/#sec-createarrayfromlist',
-	CreateListFromArrayLike: 'http://ecma-international.org/ecma-262/8.0/#sec-createlistfromarraylike',
-	Invoke: 'http://ecma-international.org/ecma-262/8.0/#sec-invoke',
-	OrdinaryHasInstance: 'http://ecma-international.org/ecma-262/8.0/#sec-ordinaryhasinstance',
-	SpeciesConstructor: 'http://ecma-international.org/ecma-262/8.0/#sec-speciesconstructor',
-	EnumerableOwnProperties: 'http://ecma-international.org/ecma-262/8.0/#sec-enumerableownproperties',
-	GetIterator: 'http://ecma-international.org/ecma-262/8.0/#sec-getiterator',
-	IteratorNext: 'http://ecma-international.org/ecma-262/8.0/#sec-iteratornext',
-	IteratorComplete: 'http://ecma-international.org/ecma-262/8.0/#sec-iteratorcomplete',
-	IteratorValue: 'http://ecma-international.org/ecma-262/8.0/#sec-iteratorvalue',
-	IteratorStep: 'http://ecma-international.org/ecma-262/8.0/#sec-iteratorstep',
-	IteratorClose: 'http://ecma-international.org/ecma-262/8.0/#sec-iteratorclose',
-	CreateIterResultObject: 'http://ecma-international.org/ecma-262/8.0/#sec-createiterresultobject',
-	CreateListIterator: 'http://ecma-international.org/ecma-262/8.0/#sec-createlistiterator',
-	Type: 'http://ecma-international.org/ecma-262/8.0/#sec-ecmascript-language-types',
-	thisNumberValue: 'http://ecma-international.org/ecma-262/8.0/#sec-properties-of-the-number-prototype-object',
-	thisTimeValue: 'http://ecma-international.org/ecma-262/8.0/#sec-properties-of-the-date-prototype-object',
-	thisStringValue: 'http://ecma-international.org/ecma-262/8.0/#sec-properties-of-the-string-prototype-object',
-	RegExpExec: 'http://ecma-international.org/ecma-262/8.0/#sec-regexpexec',
-	RegExpBuiltinExec: 'http://ecma-international.org/ecma-262/8.0/#sec-regexpbuiltinexec',
-	IsConcatSpreadable: 'http://ecma-international.org/ecma-262/8.0/#sec-isconcatspreadable',
-	IsPromise: 'http://ecma-international.org/ecma-262/8.0/#sec-ispromise',
-	ArraySpeciesCreate: 'http://ecma-international.org/ecma-262/8.0/#sec-arrayspeciescreate',
-	AdvanceStringIndex: 'http://ecma-international.org/ecma-262/6.0/#sec-advancestringindex'
+	IsPropertyDescriptor: 'https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type', // not actually an abstract op
+
+	abs: 'https://ecma-international.org/ecma-262/8.0/#eqn-abs',
+	'Abstract Equality Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-abstract-equality-comparison',
+	'Abstract Relational Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-abstract-relational-comparison',
+	AddRestrictedFunctionProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-addrestrictedfunctionproperties',
+	AddWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-addwaiter',
+	AdvanceStringIndex: 'https://ecma-international.org/ecma-262/8.0/#sec-advancestringindex',
+	'agent-order': 'https://ecma-international.org/ecma-262/8.0/#sec-agent-order',
+	AgentCanSuspend: 'https://ecma-international.org/ecma-262/8.0/#sec-agentcansuspend',
+	AgentSignifier: 'https://ecma-international.org/ecma-262/8.0/#sec-agentsignifier',
+	AllocateArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatearraybuffer',
+	AllocateSharedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatesharedarraybuffer',
+	AllocateTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatetypedarray',
+	AllocateTypedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-allocatetypedarraybuffer',
+	ArrayCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-arraycreate',
+	ArraySetLength: 'https://ecma-international.org/ecma-262/8.0/#sec-arraysetlength',
+	ArraySpeciesCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-arrayspeciescreate',
+	AsyncFunctionAwait: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-await',
+	AsyncFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-create',
+	AsyncFunctionStart: 'https://ecma-international.org/ecma-262/8.0/#sec-async-functions-abstract-operations-async-function-start',
+	AtomicLoad: 'https://ecma-international.org/ecma-262/8.0/#sec-atomicload',
+	AtomicReadModifyWrite: 'https://ecma-international.org/ecma-262/8.0/#sec-atomicreadmodifywrite',
+	BlockDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-blockdeclarationinstantiation',
+	BoundFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-boundfunctioncreate',
+	Call: 'https://ecma-international.org/ecma-262/8.0/#sec-call',
+	Canonicalize: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-canonicalize-ch',
+	CanonicalNumericIndexString: 'https://ecma-international.org/ecma-262/8.0/#sec-canonicalnumericindexstring',
+	CharacterRange: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-characterrange-abstract-operation',
+	CharacterRangeOrUnion: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-characterrangeorunion-abstract-operation',
+	CharacterSetMatcher: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-charactersetmatcher-abstract-operation',
+	CloneArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-clonearraybuffer',
+	CompletePropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-completepropertydescriptor',
+	Completion: 'https://ecma-international.org/ecma-262/8.0/#sec-completion-record-specification-type',
+	ComposeWriteEventBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-composewriteeventbytes',
+	Construct: 'https://ecma-international.org/ecma-262/8.0/#sec-construct',
+	CopyDataBlockBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-copydatablockbytes',
+	CreateArrayFromList: 'https://ecma-international.org/ecma-262/8.0/#sec-createarrayfromlist',
+	CreateArrayIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createarrayiterator',
+	CreateBuiltinFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-createbuiltinfunction',
+	CreateByteDataBlock: 'https://ecma-international.org/ecma-262/8.0/#sec-createbytedatablock',
+	CreateDataProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-createdataproperty',
+	CreateDataPropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-createdatapropertyorthrow',
+	CreateDynamicFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-createdynamicfunction',
+	CreateHTML: 'https://ecma-international.org/ecma-262/8.0/#sec-createhtml',
+	CreateIntrinsics: 'https://ecma-international.org/ecma-262/8.0/#sec-createintrinsics',
+	CreateIterResultObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createiterresultobject',
+	CreateListFromArrayLike: 'https://ecma-international.org/ecma-262/8.0/#sec-createlistfromarraylike',
+	CreateListIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createlistiterator',
+	CreateMapIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createmapiterator',
+	CreateMappedArgumentsObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createmappedargumentsobject',
+	CreateMethodProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-createmethodproperty',
+	CreatePerIterationEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-createperiterationenvironment',
+	CreateRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-createrealm',
+	CreateResolvingFunctions: 'https://ecma-international.org/ecma-262/8.0/#sec-createresolvingfunctions',
+	CreateSetIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createsetiterator',
+	CreateSharedByteDataBlock: 'https://ecma-international.org/ecma-262/8.0/#sec-createsharedbytedatablock',
+	CreateStringIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-createstringiterator',
+	CreateUnmappedArgumentsObject: 'https://ecma-international.org/ecma-262/8.0/#sec-createunmappedargumentsobject',
+	DateFromTime: 'https://ecma-international.org/ecma-262/8.0/#sec-date-number',
+	Day: 'https://ecma-international.org/ecma-262/8.0/#eqn-Day',
+	DayFromYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DaysFromYear',
+	DaysInYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DaysInYear',
+	DayWithinYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-DayWithinYear',
+	Decode: 'https://ecma-international.org/ecma-262/8.0/#sec-decode',
+	DefinePropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-definepropertyorthrow',
+	DeletePropertyOrThrow: 'https://ecma-international.org/ecma-262/8.0/#sec-deletepropertyorthrow',
+	DetachArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-detacharraybuffer',
+	Encode: 'https://ecma-international.org/ecma-262/8.0/#sec-encode',
+	EnqueueJob: 'https://ecma-international.org/ecma-262/8.0/#sec-enqueuejob',
+	EnterCriticalSection: 'https://ecma-international.org/ecma-262/8.0/#sec-entercriticalsection',
+	EnumerableOwnProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-enumerableownproperties',
+	EnumerateObjectProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-enumerate-object-properties',
+	EscapeRegExpPattern: 'https://ecma-international.org/ecma-262/8.0/#sec-escaperegexppattern',
+	EvalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-evaldeclarationinstantiation',
+	EvaluateCall: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatecall',
+	EvaluateDirectCall: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatedirectcall',
+	EvaluateNew: 'https://ecma-international.org/ecma-262/8.0/#sec-evaluatenew',
+	EventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-event-set',
+	floor: 'https://ecma-international.org/ecma-262/8.0/#eqn-floor',
+	ForBodyEvaluation: 'https://ecma-international.org/ecma-262/8.0/#sec-forbodyevaluation',
+	'ForIn/OfBodyEvaluation': 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset',
+	'ForIn/OfHeadEvaluation': 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-forin-div-ofheadevaluation-tdznames-expr-iterationkind',
+	FromPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-frompropertydescriptor',
+	FulfillPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-fulfillpromise',
+	FunctionAllocate: 'https://ecma-international.org/ecma-262/8.0/#sec-functionallocate',
+	FunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-functioncreate',
+	FunctionDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-functiondeclarationinstantiation',
+	FunctionInitialize: 'https://ecma-international.org/ecma-262/8.0/#sec-functioninitialize',
+	GeneratorFunctionCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorfunctioncreate',
+	GeneratorResume: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorresume',
+	GeneratorResumeAbrupt: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorresumeabrupt',
+	GeneratorStart: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorstart',
+	GeneratorValidate: 'https://ecma-international.org/ecma-262/8.0/#sec-generatorvalidate',
+	GeneratorYield: 'https://ecma-international.org/ecma-262/8.0/#sec-generatoryield',
+	Get: 'https://ecma-international.org/ecma-262/8.0/#sec-get-o-p',
+	GetActiveScriptOrModule: 'https://ecma-international.org/ecma-262/8.0/#sec-getactivescriptormodule',
+	GetBase: 'https://ecma-international.org/ecma-262/8.0/#ao-getbase',
+	GetFunctionRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-getfunctionrealm',
+	GetGlobalObject: 'https://ecma-international.org/ecma-262/8.0/#sec-getglobalobject',
+	GetIdentifierReference: 'https://ecma-international.org/ecma-262/8.0/#sec-getidentifierreference',
+	GetIterator: 'https://ecma-international.org/ecma-262/8.0/#sec-getiterator',
+	GetMethod: 'https://ecma-international.org/ecma-262/8.0/#sec-getmethod',
+	GetModifySetValueInBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-getmodifysetvalueinbuffer',
+	GetModuleNamespace: 'https://ecma-international.org/ecma-262/8.0/#sec-getmodulenamespace',
+	GetNewTarget: 'https://ecma-international.org/ecma-262/8.0/#sec-getnewtarget',
+	GetOwnPropertyKeys: 'https://ecma-international.org/ecma-262/8.0/#sec-getownpropertykeys',
+	GetPrototypeFromConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-getprototypefromconstructor',
+	GetReferencedName: 'https://ecma-international.org/ecma-262/8.0/#ao-getreferencedname',
+	GetSubstitution: 'https://ecma-international.org/ecma-262/8.0/#sec-getsubstitution',
+	GetSuperConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-getsuperconstructor',
+	GetTemplateObject: 'https://ecma-international.org/ecma-262/8.0/#sec-gettemplateobject',
+	GetThisEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-getthisenvironment',
+	GetThisValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getthisvalue',
+	GetV: 'https://ecma-international.org/ecma-262/8.0/#sec-getv',
+	GetValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getvalue',
+	GetValueFromBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-getvaluefrombuffer',
+	GetViewValue: 'https://ecma-international.org/ecma-262/8.0/#sec-getviewvalue',
+	GetWaiterList: 'https://ecma-international.org/ecma-262/8.0/#sec-getwaiterlist',
+	GlobalDeclarationInstantiation: 'https://ecma-international.org/ecma-262/8.0/#sec-globaldeclarationinstantiation',
+	'happens-before': 'https://ecma-international.org/ecma-262/8.0/#sec-happens-before',
+	HasOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-hasownproperty',
+	HasPrimitiveBase: 'https://ecma-international.org/ecma-262/8.0/#ao-hasprimitivebase',
+	HasProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-hasproperty',
+	'host-synchronizes-with': 'https://ecma-international.org/ecma-262/8.0/#sec-host-synchronizes-with',
+	HostEnsureCanCompileStrings: 'https://ecma-international.org/ecma-262/8.0/#sec-hostensurecancompilestrings',
+	HostEventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-hosteventset',
+	HostPromiseRejectionTracker: 'https://ecma-international.org/ecma-262/8.0/#sec-host-promise-rejection-tracker',
+	HostReportErrors: 'https://ecma-international.org/ecma-262/8.0/#sec-host-report-errors',
+	HostResolveImportedModule: 'https://ecma-international.org/ecma-262/8.0/#sec-hostresolveimportedmodule',
+	HourFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-HourFromTime',
+	IfAbruptRejectPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-ifabruptrejectpromise',
+	ImportedLocalNames: 'https://ecma-international.org/ecma-262/8.0/#sec-importedlocalnames',
+	InitializeBoundName: 'https://ecma-international.org/ecma-262/8.0/#sec-initializeboundname',
+	InitializeHostDefinedRealm: 'https://ecma-international.org/ecma-262/8.0/#sec-initializehostdefinedrealm',
+	InitializeReferencedBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-initializereferencedbinding',
+	InLeapYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-InLeapYear',
+	InstanceofOperator: 'https://ecma-international.org/ecma-262/8.0/#sec-instanceofoperator',
+	IntegerIndexedElementGet: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedelementget',
+	IntegerIndexedElementSet: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedelementset',
+	IntegerIndexedObjectCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-integerindexedobjectcreate',
+	InternalizeJSONProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-internalizejsonproperty',
+	Invoke: 'https://ecma-international.org/ecma-262/8.0/#sec-invoke',
+	IsAccessorDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isaccessordescriptor',
+	IsAnonymousFunctionDefinition: 'https://ecma-international.org/ecma-262/8.0/#sec-isanonymousfunctiondefinition',
+	IsArray: 'https://ecma-international.org/ecma-262/8.0/#sec-isarray',
+	IsCallable: 'https://ecma-international.org/ecma-262/8.0/#sec-iscallable',
+	IsCompatiblePropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-iscompatiblepropertydescriptor',
+	IsConcatSpreadable: 'https://ecma-international.org/ecma-262/8.0/#sec-isconcatspreadable',
+	IsConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-isconstructor',
+	IsDataDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isdatadescriptor',
+	IsDetachedBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-isdetachedbuffer',
+	IsExtensible: 'https://ecma-international.org/ecma-262/8.0/#sec-isextensible-o',
+	IsGenericDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-isgenericdescriptor',
+	IsInTailPosition: 'https://ecma-international.org/ecma-262/8.0/#sec-isintailposition',
+	IsInteger: 'https://ecma-international.org/ecma-262/8.0/#sec-isinteger',
+	IsLabelledFunction: 'https://ecma-international.org/ecma-262/8.0/#sec-islabelledfunction',
+	IsPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-ispromise',
+	IsPropertyKey: 'https://ecma-international.org/ecma-262/8.0/#sec-ispropertykey',
+	IsPropertyReference: 'https://ecma-international.org/ecma-262/8.0/#ao-ispropertyreference',
+	IsRegExp: 'https://ecma-international.org/ecma-262/8.0/#sec-isregexp',
+	IsSharedArrayBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-issharedarraybuffer',
+	IsStrictReference: 'https://ecma-international.org/ecma-262/8.0/#ao-isstrictreference',
+	IsSuperReference: 'https://ecma-international.org/ecma-262/8.0/#ao-issuperreference',
+	IsUnresolvableReference: 'https://ecma-international.org/ecma-262/8.0/#ao-isunresolvablereference',
+	IsWordChar: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-iswordchar-abstract-operation',
+	IterableToList: 'https://ecma-international.org/ecma-262/8.0/#sec-iterabletolist',
+	IteratorClose: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorclose',
+	IteratorComplete: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorcomplete',
+	IteratorNext: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratornext',
+	IteratorStep: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorstep',
+	IteratorValue: 'https://ecma-international.org/ecma-262/8.0/#sec-iteratorvalue',
+	LeaveCriticalSection: 'https://ecma-international.org/ecma-262/8.0/#sec-leavecriticalsection',
+	LocalTime: 'https://ecma-international.org/ecma-262/8.0/#sec-localtime',
+	LoopContinues: 'https://ecma-international.org/ecma-262/8.0/#sec-loopcontinues',
+	MakeArgGetter: 'https://ecma-international.org/ecma-262/8.0/#sec-makearggetter',
+	MakeArgSetter: 'https://ecma-international.org/ecma-262/8.0/#sec-makeargsetter',
+	MakeClassConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-makeclassconstructor',
+	MakeConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-makeconstructor',
+	MakeDate: 'https://ecma-international.org/ecma-262/8.0/#sec-makedate',
+	MakeDay: 'https://ecma-international.org/ecma-262/8.0/#sec-makeday',
+	MakeMethod: 'https://ecma-international.org/ecma-262/8.0/#sec-makemethod',
+	MakeSuperPropertyReference: 'https://ecma-international.org/ecma-262/8.0/#sec-makesuperpropertyreference',
+	MakeTime: 'https://ecma-international.org/ecma-262/8.0/#sec-maketime',
+	max: 'https://ecma-international.org/ecma-262/8.0/#eqn-max',
+	'memory-order': 'https://ecma-international.org/ecma-262/8.0/#sec-memory-order',
+	min: 'https://ecma-international.org/ecma-262/8.0/#eqn-min',
+	MinFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-MinFromTime',
+	ModuleNamespaceCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-modulenamespacecreate',
+	modulo: 'https://ecma-international.org/ecma-262/8.0/#eqn-modulo',
+	MonthFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-MonthFromTime',
+	msFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-msFromTime',
+	NewDeclarativeEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newdeclarativeenvironment',
+	NewFunctionEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newfunctionenvironment',
+	NewGlobalEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newglobalenvironment',
+	NewModuleEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newmoduleenvironment',
+	NewObjectEnvironment: 'https://ecma-international.org/ecma-262/8.0/#sec-newobjectenvironment',
+	NewPromiseCapability: 'https://ecma-international.org/ecma-262/8.0/#sec-newpromisecapability',
+	NormalCompletion: 'https://ecma-international.org/ecma-262/8.0/#sec-normalcompletion',
+	NumberToRawBytes: 'https://ecma-international.org/ecma-262/8.0/#sec-numbertorawbytes',
+	ObjectCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-objectcreate',
+	ObjectDefineProperties: 'https://ecma-international.org/ecma-262/8.0/#sec-objectdefineproperties',
+	OrdinaryCallBindThis: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycallbindthis',
+	OrdinaryCallEvaluateBody: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycallevaluatebody',
+	OrdinaryCreateFromConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarycreatefromconstructor',
+	OrdinaryDefineOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarydefineownproperty',
+	OrdinaryDelete: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarydelete',
+	OrdinaryGet: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryget',
+	OrdinaryGetOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarygetownproperty',
+	OrdinaryGetPrototypeOf: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarygetprototypeof',
+	OrdinaryHasInstance: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryhasinstance',
+	OrdinaryHasProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryhasproperty',
+	OrdinaryIsExtensible: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryisextensible',
+	OrdinaryOwnPropertyKeys: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryownpropertykeys',
+	OrdinaryPreventExtensions: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarypreventextensions',
+	OrdinarySet: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinaryset',
+	OrdinarySetPrototypeOf: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarysetprototypeof',
+	OrdinaryToPrimitive: 'https://ecma-international.org/ecma-262/8.0/#sec-ordinarytoprimitive',
+	ParseModule: 'https://ecma-international.org/ecma-262/8.0/#sec-parsemodule',
+	ParseScript: 'https://ecma-international.org/ecma-262/8.0/#sec-parse-script',
+	PerformEval: 'https://ecma-international.org/ecma-262/8.0/#sec-performeval',
+	PerformPromiseAll: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromiseall',
+	PerformPromiseRace: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromiserace',
+	PerformPromiseThen: 'https://ecma-international.org/ecma-262/8.0/#sec-performpromisethen',
+	PrepareForOrdinaryCall: 'https://ecma-international.org/ecma-262/8.0/#sec-prepareforordinarycall',
+	PrepareForTailCall: 'https://ecma-international.org/ecma-262/8.0/#sec-preparefortailcall',
+	PromiseReactionJob: 'https://ecma-international.org/ecma-262/8.0/#sec-promisereactionjob',
+	PromiseResolveThenableJob: 'https://ecma-international.org/ecma-262/8.0/#sec-promiseresolvethenablejob',
+	ProxyCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-proxycreate',
+	PutValue: 'https://ecma-international.org/ecma-262/8.0/#sec-putvalue',
+	QuoteJSONString: 'https://ecma-international.org/ecma-262/8.0/#sec-quotejsonstring',
+	RawBytesToNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-rawbytestonumber',
+	'reads-bytes-from': 'https://ecma-international.org/ecma-262/8.0/#sec-reads-bytes-from',
+	'reads-from': 'https://ecma-international.org/ecma-262/8.0/#sec-reads-from',
+	RegExpAlloc: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpalloc',
+	RegExpBuiltinExec: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpbuiltinexec',
+	RegExpCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpcreate',
+	RegExpExec: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpexec',
+	RegExpInitialize: 'https://ecma-international.org/ecma-262/8.0/#sec-regexpinitialize',
+	RejectPromise: 'https://ecma-international.org/ecma-262/8.0/#sec-rejectpromise',
+	RemoveWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-removewaiter',
+	RemoveWaiters: 'https://ecma-international.org/ecma-262/8.0/#sec-removewaiters',
+	RepeatMatcher: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-repeatmatcher-abstract-operation',
+	RequireObjectCoercible: 'https://ecma-international.org/ecma-262/8.0/#sec-requireobjectcoercible',
+	ResolveBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-resolvebinding',
+	ResolveThisBinding: 'https://ecma-international.org/ecma-262/8.0/#sec-resolvethisbinding',
+	ReturnIfAbrupt: 'https://ecma-international.org/ecma-262/8.0/#sec-returnifabrupt',
+	RunJobs: 'https://ecma-international.org/ecma-262/8.0/#sec-runjobs',
+	SameValue: 'https://ecma-international.org/ecma-262/8.0/#sec-samevalue',
+	SameValueNonNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-samevaluenonnumber',
+	SameValueZero: 'https://ecma-international.org/ecma-262/8.0/#sec-samevaluezero',
+	ScriptEvaluation: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-scriptevaluation',
+	ScriptEvaluationJob: 'https://ecma-international.org/ecma-262/8.0/#sec-scriptevaluationjob',
+	SecFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-SecFromTime',
+	SerializeJSONArray: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonarray',
+	SerializeJSONObject: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonobject',
+	SerializeJSONProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-serializejsonproperty',
+	Set: 'https://ecma-international.org/ecma-262/8.0/#sec-set-o-p-v-throw',
+	SetDefaultGlobalBindings: 'https://ecma-international.org/ecma-262/8.0/#sec-setdefaultglobalbindings',
+	SetFunctionName: 'https://ecma-international.org/ecma-262/8.0/#sec-setfunctionname',
+	SetImmutablePrototype: 'https://ecma-international.org/ecma-262/8.0/#sec-set-immutable-prototype',
+	SetIntegrityLevel: 'https://ecma-international.org/ecma-262/8.0/#sec-setintegritylevel',
+	SetRealmGlobalObject: 'https://ecma-international.org/ecma-262/8.0/#sec-setrealmglobalobject',
+	SetValueInBuffer: 'https://ecma-international.org/ecma-262/8.0/#sec-setvalueinbuffer',
+	SetViewValue: 'https://ecma-international.org/ecma-262/8.0/#sec-setviewvalue',
+	SharedDataBlockEventSet: 'https://ecma-international.org/ecma-262/8.0/#sec-sharedatablockeventset',
+	SortCompare: 'https://ecma-international.org/ecma-262/8.0/#sec-sortcompare',
+	SpeciesConstructor: 'https://ecma-international.org/ecma-262/8.0/#sec-speciesconstructor',
+	SplitMatch: 'https://ecma-international.org/ecma-262/8.0/#sec-splitmatch',
+	'Strict Equality Comparison': 'https://ecma-international.org/ecma-262/8.0/#sec-strict-equality-comparison',
+	StringCreate: 'https://ecma-international.org/ecma-262/8.0/#sec-stringcreate',
+	StringGetOwnProperty: 'https://ecma-international.org/ecma-262/8.0/#sec-stringgetownproperty',
+	Suspend: 'https://ecma-international.org/ecma-262/8.0/#sec-suspend',
+	SymbolDescriptiveString: 'https://ecma-international.org/ecma-262/8.0/#sec-symboldescriptivestring',
+	'synchronizes-with': 'https://ecma-international.org/ecma-262/8.0/#sec-synchronizes-with',
+	TestIntegrityLevel: 'https://ecma-international.org/ecma-262/8.0/#sec-testintegritylevel',
+	thisBooleanValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisbooleanvalue',
+	thisNumberValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisnumbervalue',
+	thisStringValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thisstringvalue',
+	thisTimeValue: 'https://ecma-international.org/ecma-262/8.0/#sec-thistimevalue',
+	TimeClip: 'https://ecma-international.org/ecma-262/8.0/#sec-timeclip',
+	TimeFromYear: 'https://ecma-international.org/ecma-262/8.0/#eqn-TimeFromYear',
+	TimeWithinDay: 'https://ecma-international.org/ecma-262/8.0/#eqn-TimeWithinDay',
+	ToBoolean: 'https://ecma-international.org/ecma-262/8.0/#sec-toboolean',
+	ToDateString: 'https://ecma-international.org/ecma-262/8.0/#sec-todatestring',
+	ToIndex: 'https://ecma-international.org/ecma-262/8.0/#sec-toindex',
+	ToInt16: 'https://ecma-international.org/ecma-262/8.0/#sec-toint16',
+	ToInt32: 'https://ecma-international.org/ecma-262/8.0/#sec-toint32',
+	ToInt8: 'https://ecma-international.org/ecma-262/8.0/#sec-toint8',
+	ToInteger: 'https://ecma-international.org/ecma-262/8.0/#sec-tointeger',
+	ToLength: 'https://ecma-international.org/ecma-262/8.0/#sec-tolength',
+	ToNumber: 'https://ecma-international.org/ecma-262/8.0/#sec-tonumber',
+	ToObject: 'https://ecma-international.org/ecma-262/8.0/#sec-toobject',
+	TopLevelModuleEvaluationJob: 'https://ecma-international.org/ecma-262/8.0/#sec-toplevelmoduleevaluationjob',
+	ToPrimitive: 'https://ecma-international.org/ecma-262/8.0/#sec-toprimitive',
+	ToPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-topropertydescriptor',
+	ToPropertyKey: 'https://ecma-international.org/ecma-262/8.0/#sec-topropertykey',
+	ToString: 'https://ecma-international.org/ecma-262/8.0/#sec-tostring',
+	'ToString Applied to the Number Type': 'https://ecma-international.org/ecma-262/8.0/#sec-tostring-applied-to-the-number-type',
+	ToUint16: 'https://ecma-international.org/ecma-262/8.0/#sec-touint16',
+	ToUint32: 'https://ecma-international.org/ecma-262/8.0/#sec-touint32',
+	ToUint8: 'https://ecma-international.org/ecma-262/8.0/#sec-touint8',
+	ToUint8Clamp: 'https://ecma-international.org/ecma-262/8.0/#sec-touint8clamp',
+	TriggerPromiseReactions: 'https://ecma-international.org/ecma-262/8.0/#sec-triggerpromisereactions',
+	Type: 'https://ecma-international.org/ecma-262/8.0/#sec-ecmascript-data-types-and-values',
+	TypedArrayCreate: 'https://ecma-international.org/ecma-262/8.0/#typedarray-create',
+	TypedArraySpeciesCreate: 'https://ecma-international.org/ecma-262/8.0/#typedarray-species-create',
+	UpdateEmpty: 'https://ecma-international.org/ecma-262/8.0/#sec-updateempty',
+	UTC: 'https://ecma-international.org/ecma-262/8.0/#sec-utc-t',
+	UTF16Decode: 'https://ecma-international.org/ecma-262/8.0/#sec-utf16decode',
+	UTF16Encoding: 'https://ecma-international.org/ecma-262/8.0/#sec-utf16encoding',
+	ValidateAndApplyPropertyDescriptor: 'https://ecma-international.org/ecma-262/8.0/#sec-validateandapplypropertydescriptor',
+	ValidateAtomicAccess: 'https://ecma-international.org/ecma-262/8.0/#sec-validateatomicaccess',
+	ValidateSharedIntegerTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-validatesharedintegertypedarray',
+	ValidateTypedArray: 'https://ecma-international.org/ecma-262/8.0/#sec-validatetypedarray',
+	ValueOfReadEvent: 'https://ecma-international.org/ecma-262/8.0/#sec-valueofreadevent',
+	WakeWaiter: 'https://ecma-international.org/ecma-262/8.0/#sec-wakewaiter',
+	WeekDay: 'https://ecma-international.org/ecma-262/8.0/#sec-week-day',
+	WordCharacters: 'https://ecma-international.org/ecma-262/8.0/#sec-runtime-semantics-wordcharacters-abstract-operation',
+	YearFromTime: 'https://ecma-international.org/ecma-262/8.0/#eqn-YearFromTime'
 };
 };

+ 0 - 10
node_modules/es-abstract/operations/es5.js

@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = {
-	IsPropertyDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10',
-	IsAccessorDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10.1',
-	IsDataDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10.2',
-	IsGenericDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10.3',
-	FromPropertyDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10.4',
-	ToPropertyDescriptor: 'http://ecma-international.org/ecma-262/5.1/#sec-8.10.5'
-};

+ 56 - 41
node_modules/es-abstract/package.json

@@ -1,33 +1,29 @@
 {
 {
-  "_args": [
-    [
-      "es-abstract@1.11.0",
-      "D:\\projects\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "es-abstract@1.11.0",
-  "_id": "es-abstract@1.11.0",
+  "_from": "es-abstract@^1.17.0-next.0",
+  "_id": "es-abstract@1.17.0-next.1",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha512-ZnQrE/lXTTQ39ulXZ+J1DTFazV9qBy61x2bY071B+qGco8Z8q1QddsLdt/EF8Ai9hcWH72dWS0kFqXLxOxqslA==",
+  "_integrity": "sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==",
   "_location": "/es-abstract",
   "_location": "/es-abstract",
-  "_phantomChildren": {},
+  "_phantomChildren": {
+    "function-bind": "1.1.1"
+  },
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "es-abstract@1.11.0",
+    "raw": "es-abstract@^1.17.0-next.0",
     "name": "es-abstract",
     "name": "es-abstract",
     "escapedName": "es-abstract",
     "escapedName": "es-abstract",
-    "rawSpec": "1.11.0",
+    "rawSpec": "^1.17.0-next.0",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "1.11.0"
+    "fetchSpec": "^1.17.0-next.0"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/array-includes"
     "/array-includes"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.11.0.tgz",
-  "_spec": "1.11.0",
-  "_where": "D:\\projects\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0-next.1.tgz",
+  "_shasum": "94acc93e20b05a6e96dacb5ab2f1cb3a81fc2172",
+  "_spec": "es-abstract@^1.17.0-next.0",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\array-includes",
   "author": {
   "author": {
     "name": "Jordan Harband",
     "name": "Jordan Harband",
     "email": "ljharb@gmail.com",
     "email": "ljharb@gmail.com",
@@ -36,6 +32,7 @@
   "bugs": {
   "bugs": {
     "url": "https://github.com/ljharb/es-abstract/issues"
     "url": "https://github.com/ljharb/es-abstract/issues"
   },
   },
+  "bundleDependencies": false,
   "contributors": [
   "contributors": [
     {
     {
       "name": "Jordan Harband",
       "name": "Jordan Harband",
@@ -44,31 +41,49 @@
     }
     }
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "es-to-primitive": "^1.1.1",
+    "es-to-primitive": "^1.2.1",
     "function-bind": "^1.1.1",
     "function-bind": "^1.1.1",
-    "has": "^1.0.1",
-    "is-callable": "^1.1.3",
-    "is-regex": "^1.0.4"
+    "has": "^1.0.3",
+    "has-symbols": "^1.0.1",
+    "is-callable": "^1.1.4",
+    "is-regex": "^1.0.4",
+    "object-inspect": "^1.7.0",
+    "object-keys": "^1.1.1",
+    "object.assign": "^4.1.0",
+    "string.prototype.trimleft": "^2.1.0",
+    "string.prototype.trimright": "^2.1.0"
   },
   },
+  "deprecated": false,
   "description": "ECMAScript spec abstract operations.",
   "description": "ECMAScript spec abstract operations.",
   "devDependencies": {
   "devDependencies": {
-    "@ljharb/eslint-config": "^12.2.1",
-    "editorconfig-tools": "^0.1.1",
-    "eslint": "^4.19.0",
+    "@ljharb/eslint-config": "^15.0.2",
+    "cheerio": "^1.0.0-rc.3",
+    "diff": "^4.0.1",
+    "eclint": "^2.8.1",
+    "eslint": "^6.7.2",
     "foreach": "^2.0.5",
     "foreach": "^2.0.5",
-    "jscs": "^3.0.7",
-    "nsp": "^3.2.1",
+    "in-publish": "^2.0.0",
+    "make-arrow-function": "^1.1.0",
     "nyc": "^10.3.2",
     "nyc": "^10.3.2",
     "object-is": "^1.0.1",
     "object-is": "^1.0.1",
-    "object.assign": "^4.1.0",
-    "replace": "^0.3.0",
-    "safe-publish-latest": "^1.1.1",
-    "semver": "^5.5.0",
-    "tape": "^4.9.0"
+    "object.fromentries": "^2.0.1",
+    "replace": "^1.1.1",
+    "safe-publish-latest": "^1.1.4",
+    "semver": "^6.3.0",
+    "tape": "^4.11.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.4"
     "node": ">= 0.4"
   },
   },
+  "funding": {
+    "url": "https://github.com/sponsors/ljharb"
+  },
+  "greenkeeper": {
+    "//": "nyc is ignored because it requires node 4+, and we support older than that",
+    "ignore": [
+      "nyc"
+    ]
+  },
   "homepage": "https://github.com/ljharb/es-abstract#readme",
   "homepage": "https://github.com/ljharb/es-abstract#readme",
   "keywords": [
   "keywords": [
     "ECMAScript",
     "ECMAScript",
@@ -89,16 +104,16 @@
     "url": "git://github.com/ljharb/es-abstract.git"
     "url": "git://github.com/ljharb/es-abstract.git"
   },
   },
   "scripts": {
   "scripts": {
-    "coverage": "nyc npm run --silent tests-only >/dev/null 2>&1",
-    "eccheck": "editorconfig-tools check *.js **/*.js > /dev/null",
-    "eslint": "eslint test/*.js *.js",
-    "jscs": "jscs test/*.js *.js",
-    "lint": "npm run --silent jscs && npm run --silent eslint",
+    "coverage": "nyc npm run --silent tests-only >/dev/null",
+    "eccheck": "eclint check *.js **/*.js > /dev/null",
+    "lint": "eslint .",
     "postcoverage": "nyc report",
     "postcoverage": "nyc report",
-    "posttest": "npm run --silent security",
-    "prepublish": "safe-publish-latest",
+    "postspackle": "git ls-files | xargs git check-attr spackled | grep -v 'unspecified$' | cut -d: -f1 | xargs git add",
+    "posttest": "npx aud --production",
+    "prepublish": "safe-publish-latest && (not-in-publish || npm run spackle)",
+    "prespackle": "git ls-files | xargs git check-attr spackled | grep -v 'unspecified$' | cut -d: -f1 | xargs rm",
     "pretest": "npm run --silent lint",
     "pretest": "npm run --silent lint",
-    "security": "nsp check",
+    "spackle": "node operations/spackle 1",
     "test": "npm run tests-only",
     "test": "npm run tests-only",
     "tests-only": "node test"
     "tests-only": "node test"
   },
   },
@@ -120,5 +135,5 @@
       "android-browser/4.2"
       "android-browser/4.2"
     ]
     ]
   },
   },
-  "version": "1.11.0"
+  "version": "1.17.0-next.1"
 }
 }

+ 0 - 11
node_modules/es-abstract/test/.eslintrc

@@ -1,11 +0,0 @@
-{
-	"rules": {
-		"id-length": 0,
-		"max-lines": 0,
-		"max-statements-per-line": [2, { "max": 3 }],
-		"max-nested-callbacks": [2, 3],
-		"max-statements": 0,
-		"no-implicit-coercion": [1],
-		"no-invalid-this": [1]
-	}
-}

+ 4 - 2
node_modules/es-abstract/test/diffOps.js

@@ -3,7 +3,7 @@
 var keys = require('object-keys');
 var keys = require('object-keys');
 var forEach = require('foreach');
 var forEach = require('foreach');
 
 
-module.exports = function diffOperations(actual, expected) {
+module.exports = function diffOperations(actual, expected, expectedMissing) {
 	var actualKeys = keys(actual);
 	var actualKeys = keys(actual);
 	var expectedKeys = keys(expected);
 	var expectedKeys = keys(expected);
 
 
@@ -12,10 +12,12 @@ module.exports = function diffOperations(actual, expected) {
 	forEach(actualKeys, function (op) {
 	forEach(actualKeys, function (op) {
 		if (!(op in expected)) {
 		if (!(op in expected)) {
 			extra.push(op);
 			extra.push(op);
+		} else if (expectedMissing.indexOf(op) !== -1) {
+			extra.push(op);
 		}
 		}
 	});
 	});
 	forEach(expectedKeys, function (op) {
 	forEach(expectedKeys, function (op) {
-		if (!(op in actual)) {
+		if (typeof actual[op] !== 'function' && expectedMissing.indexOf(op) === -1) {
 			missing.push(op);
 			missing.push(op);
 		}
 		}
 	});
 	});

+ 3 - 3
node_modules/es-abstract/test/es2015.js

@@ -4,8 +4,8 @@ var ES = require('../').ES2015;
 
 
 var ops = require('../operations/2015');
 var ops = require('../operations/2015');
 
 
-// jscs:disable
-var expectedMissing = ['CreateMethodProperty', 'DefinePropertyOrThrow', 'DeletePropertyOrThrow', 'Construct', 'SetIntegrityLevel', 'TestIntegrityLevel', 'CreateArrayFromList', 'CreateListFromArrayLike', 'OrdinaryHasInstance', 'EnumerableOwnNames', 'CreateListIterator', 'thisNumberValue', 'thisTimeValue', 'thisStringValue', 'RegExpBuiltinExec', 'IsPromise'];
-// jscs:enable
+var expectedMissing = ['Construct', 'CreateArrayFromList', 'CreateListIterator', 'NormalCompletion', 'RegExpBuiltinExec'];
 
 
 require('./tests').es2015(ES, ops, expectedMissing);
 require('./tests').es2015(ES, ops, expectedMissing);
+
+require('./helpers/runManifestTest')(require('tape'), ES, 2015);

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 3
node_modules/es-abstract/test/es2016.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 3
node_modules/es-abstract/test/es2017.js


+ 481 - 112
node_modules/es-abstract/test/es5.js

@@ -5,45 +5,33 @@ var test = require('tape');
 
 
 var forEach = require('foreach');
 var forEach = require('foreach');
 var is = require('object-is');
 var is = require('object-is');
+var debug = require('object-inspect');
 
 
-var coercibleObject = { valueOf: function () { return '3'; }, toString: function () { return 42; } };
-var coercibleFnObject = {
-	valueOf: function () { return function valueOfFn() {}; },
-	toString: function () { return 42; }
-};
-var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
-var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
-var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
-var uncoercibleFnObject = {
-	valueOf: function () { return function valueOfFn() {}; },
-	toString: function () { return function toStrFn() {}; }
-};
-var objects = [{}, coercibleObject, toStringOnlyObject, valueOfOnlyObject];
-var numbers = [0, -0, Infinity, -Infinity, 42];
-var nonNullPrimitives = [true, false, 'foo', ''].concat(numbers);
-var primitives = [undefined, null].concat(nonNullPrimitives);
+var v = require('./helpers/values');
+
+require('./helpers/runManifestTest')(test, ES, 5);
 
 
 test('ToPrimitive', function (t) {
 test('ToPrimitive', function (t) {
 	t.test('primitives', function (st) {
 	t.test('primitives', function (st) {
 		var testPrimitive = function (primitive) {
 		var testPrimitive = function (primitive) {
-			st.ok(is(ES.ToPrimitive(primitive), primitive), primitive + ' is returned correctly');
+			st.ok(is(ES.ToPrimitive(primitive), primitive), debug(primitive) + ' is returned correctly');
 		};
 		};
-		forEach(primitives, testPrimitive);
+		forEach(v.primitives, testPrimitive);
 		st.end();
 		st.end();
 	});
 	});
 
 
 	t.test('objects', function (st) {
 	t.test('objects', function (st) {
-		st.equal(ES.ToPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject coerces to valueOf');
-		st.equal(ES.ToPrimitive(coercibleObject, Number), coercibleObject.valueOf(), 'coercibleObject with hint Number coerces to valueOf');
-		st.equal(ES.ToPrimitive(coercibleObject, String), coercibleObject.toString(), 'coercibleObject with hint String coerces to toString');
-		st.equal(ES.ToPrimitive(coercibleFnObject), coercibleFnObject.toString(), 'coercibleFnObject coerces to toString');
-		st.equal(ES.ToPrimitive(toStringOnlyObject), toStringOnlyObject.toString(), 'toStringOnlyObject returns toString');
-		st.equal(ES.ToPrimitive(valueOfOnlyObject), valueOfOnlyObject.valueOf(), 'valueOfOnlyObject returns valueOf');
+		st.equal(ES.ToPrimitive(v.coercibleObject), v.coercibleObject.valueOf(), 'coercibleObject coerces to valueOf');
+		st.equal(ES.ToPrimitive(v.coercibleObject, Number), v.coercibleObject.valueOf(), 'coercibleObject with hint Number coerces to valueOf');
+		st.equal(ES.ToPrimitive(v.coercibleObject, String), v.coercibleObject.toString(), 'coercibleObject with hint String coerces to toString');
+		st.equal(ES.ToPrimitive(v.coercibleFnObject), v.coercibleFnObject.toString(), 'coercibleFnObject coerces to toString');
+		st.equal(ES.ToPrimitive(v.toStringOnlyObject), v.toStringOnlyObject.toString(), 'toStringOnlyObject returns toString');
+		st.equal(ES.ToPrimitive(v.valueOfOnlyObject), v.valueOfOnlyObject.valueOf(), 'valueOfOnlyObject returns valueOf');
 		st.equal(ES.ToPrimitive({}), '[object Object]', '{} with no hint coerces to Object#toString');
 		st.equal(ES.ToPrimitive({}), '[object Object]', '{} with no hint coerces to Object#toString');
 		st.equal(ES.ToPrimitive({}, String), '[object Object]', '{} with hint String coerces to Object#toString');
 		st.equal(ES.ToPrimitive({}, String), '[object Object]', '{} with hint String coerces to Object#toString');
 		st.equal(ES.ToPrimitive({}, Number), '[object Object]', '{} with hint Number coerces to Object#toString');
 		st.equal(ES.ToPrimitive({}, Number), '[object Object]', '{} with hint Number coerces to Object#toString');
-		st['throws'](function () { return ES.ToPrimitive(uncoercibleObject); }, TypeError, 'uncoercibleObject throws a TypeError');
-		st['throws'](function () { return ES.ToPrimitive(uncoercibleFnObject); }, TypeError, 'uncoercibleFnObject throws a TypeError');
+		st['throws'](function () { return ES.ToPrimitive(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws a TypeError');
+		st['throws'](function () { return ES.ToPrimitive(v.uncoercibleFnObject); }, TypeError, 'uncoercibleFnObject throws a TypeError');
 		st.end();
 		st.end();
 	});
 	});
 
 
@@ -63,10 +51,10 @@ test('ToBoolean', function (t) {
 	});
 	});
 	t.equal(false, ES.ToBoolean(''), 'empty string coerces to false');
 	t.equal(false, ES.ToBoolean(''), 'empty string coerces to false');
 	t.equal(true, ES.ToBoolean('foo'), 'nonempty string coerces to true');
 	t.equal(true, ES.ToBoolean('foo'), 'nonempty string coerces to true');
-	forEach(objects, function (obj) {
+	forEach(v.objects, function (obj) {
 		t.equal(true, ES.ToBoolean(obj), 'object coerces to true');
 		t.equal(true, ES.ToBoolean(obj), 'object coerces to true');
 	});
 	});
-	t.equal(true, ES.ToBoolean(uncoercibleObject), 'uncoercibleObject coerces to true');
+	t.equal(true, ES.ToBoolean(v.uncoercibleObject), 'uncoercibleObject coerces to true');
 	t.end();
 	t.end();
 });
 });
 
 
@@ -82,10 +70,10 @@ test('ToNumber', function (t) {
 	forEach(['foo', '0', '4a', '2.0', 'Infinity', '-Infinity'], function (numString) {
 	forEach(['foo', '0', '4a', '2.0', 'Infinity', '-Infinity'], function (numString) {
 		t.ok(is(+numString, ES.ToNumber(numString)), '"' + numString + '" coerces to ' + Number(numString));
 		t.ok(is(+numString, ES.ToNumber(numString)), '"' + numString + '" coerces to ' + Number(numString));
 	});
 	});
-	forEach(objects, function (object) {
+	forEach(v.objects, function (object) {
 		t.ok(is(ES.ToNumber(object), ES.ToNumber(ES.ToPrimitive(object))), 'object ' + object + ' coerces to same as ToPrimitive of object does');
 		t.ok(is(ES.ToNumber(object), ES.ToNumber(ES.ToPrimitive(object))), 'object ' + object + ' coerces to same as ToPrimitive of object does');
 	});
 	});
-	t['throws'](function () { return ES.ToNumber(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToNumber(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.end();
 	t.end();
 });
 });
 
 
@@ -96,7 +84,7 @@ test('ToInteger', function (t) {
 		t.ok(is(-num, ES.ToInteger(-num)), '-' + num + ' returns itself');
 		t.ok(is(-num, ES.ToInteger(-num)), '-' + num + ' returns itself');
 	});
 	});
 	t.equal(3, ES.ToInteger(Math.PI), 'pi returns 3');
 	t.equal(3, ES.ToInteger(Math.PI), 'pi returns 3');
-	t['throws'](function () { return ES.ToInteger(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToInteger(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.end();
 	t.end();
 });
 });
 
 
@@ -106,7 +94,7 @@ test('ToInt32', function (t) {
 		t.ok(is(0, ES.ToInt32(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToInt32(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToInt32(-num)), '-' + num + ' returns +0');
 		t.ok(is(0, ES.ToInt32(-num)), '-' + num + ' returns +0');
 	});
 	});
-	t['throws'](function () { return ES.ToInt32(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToInt32(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.ok(is(ES.ToInt32(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToInt32(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToInt32(0x100000000 - 1), -1), '2^32 - 1 returns -1');
 	t.ok(is(ES.ToInt32(0x100000000 - 1), -1), '2^32 - 1 returns -1');
 	t.ok(is(ES.ToInt32(0x80000000), -0x80000000), '2^31 returns -2^31');
 	t.ok(is(ES.ToInt32(0x80000000), -0x80000000), '2^31 returns -2^31');
@@ -124,7 +112,7 @@ test('ToUint32', function (t) {
 		t.ok(is(0, ES.ToUint32(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToUint32(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToUint32(-num)), '-' + num + ' returns +0');
 		t.ok(is(0, ES.ToUint32(-num)), '-' + num + ' returns +0');
 	});
 	});
-	t['throws'](function () { return ES.ToUint32(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToUint32(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.ok(is(ES.ToUint32(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToUint32(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToUint32(0x100000000 - 1), 0x100000000 - 1), '2^32 - 1 returns 2^32 - 1');
 	t.ok(is(ES.ToUint32(0x100000000 - 1), 0x100000000 - 1), '2^32 - 1 returns 2^32 - 1');
 	t.ok(is(ES.ToUint32(0x80000000), 0x80000000), '2^31 returns 2^31');
 	t.ok(is(ES.ToUint32(0x80000000), 0x80000000), '2^31 returns 2^31');
@@ -142,7 +130,7 @@ test('ToUint16', function (t) {
 		t.ok(is(0, ES.ToUint16(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToUint16(num)), num + ' returns +0');
 		t.ok(is(0, ES.ToUint16(-num)), '-' + num + ' returns +0');
 		t.ok(is(0, ES.ToUint16(-num)), '-' + num + ' returns +0');
 	});
 	});
-	t['throws'](function () { return ES.ToUint16(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToUint16(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.ok(is(ES.ToUint16(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToUint16(0x100000000), 0), '2^32 returns +0');
 	t.ok(is(ES.ToUint16(0x100000000 - 1), 0x10000 - 1), '2^32 - 1 returns 2^16 - 1');
 	t.ok(is(ES.ToUint16(0x100000000 - 1), 0x10000 - 1), '2^32 - 1 returns 2^16 - 1');
 	t.ok(is(ES.ToUint16(0x80000000), 0), '2^31 returns +0');
 	t.ok(is(ES.ToUint16(0x80000000), 0), '2^31 returns +0');
@@ -153,14 +141,14 @@ test('ToUint16', function (t) {
 });
 });
 
 
 test('ToString', function (t) {
 test('ToString', function (t) {
-	t['throws'](function () { return ES.ToString(uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
+	t['throws'](function () { return ES.ToString(v.uncoercibleObject); }, TypeError, 'uncoercibleObject throws');
 	t.end();
 	t.end();
 });
 });
 
 
 test('ToObject', function (t) {
 test('ToObject', function (t) {
 	t['throws'](function () { return ES.ToObject(undefined); }, TypeError, 'undefined throws');
 	t['throws'](function () { return ES.ToObject(undefined); }, TypeError, 'undefined throws');
 	t['throws'](function () { return ES.ToObject(null); }, TypeError, 'null throws');
 	t['throws'](function () { return ES.ToObject(null); }, TypeError, 'null throws');
-	forEach(numbers, function (number) {
+	forEach(v.numbers, function (number) {
 		var obj = ES.ToObject(number);
 		var obj = ES.ToObject(number);
 		t.equal(typeof obj, 'object', 'number ' + number + ' coerces to object');
 		t.equal(typeof obj, 'object', 'number ' + number + ' coerces to object');
 		t.equal(true, obj instanceof Number, 'object of ' + number + ' is Number object');
 		t.equal(true, obj instanceof Number, 'object of ' + number + ' is Number object');
@@ -173,17 +161,17 @@ test('CheckObjectCoercible', function (t) {
 	t['throws'](function () { return ES.CheckObjectCoercible(undefined); }, TypeError, 'undefined throws');
 	t['throws'](function () { return ES.CheckObjectCoercible(undefined); }, TypeError, 'undefined throws');
 	t['throws'](function () { return ES.CheckObjectCoercible(null); }, TypeError, 'null throws');
 	t['throws'](function () { return ES.CheckObjectCoercible(null); }, TypeError, 'null throws');
 	var checkCoercible = function (value) {
 	var checkCoercible = function (value) {
-		t.doesNotThrow(function () { return ES.CheckObjectCoercible(value); }, '"' + value + '" does not throw');
+		t.doesNotThrow(function () { return ES.CheckObjectCoercible(value); }, debug(value) + ' does not throw');
 	};
 	};
-	forEach(objects.concat(nonNullPrimitives), checkCoercible);
+	forEach(v.objects.concat(v.nonNullPrimitives), checkCoercible);
 	t.end();
 	t.end();
 });
 });
 
 
 test('IsCallable', function (t) {
 test('IsCallable', function (t) {
 	t.equal(true, ES.IsCallable(function () {}), 'function is callable');
 	t.equal(true, ES.IsCallable(function () {}), 'function is callable');
-	var nonCallables = [/a/g, {}, Object.prototype, NaN].concat(primitives);
+	var nonCallables = [/a/g, {}, Object.prototype, NaN].concat(v.primitives);
 	forEach(nonCallables, function (nonCallable) {
 	forEach(nonCallables, function (nonCallable) {
-		t.equal(false, ES.IsCallable(nonCallable), nonCallable + ' is not callable');
+		t.equal(false, ES.IsCallable(nonCallable), debug(nonCallable) + ' is not callable');
 	});
 	});
 	t.end();
 	t.end();
 });
 });
@@ -191,8 +179,8 @@ test('IsCallable', function (t) {
 test('SameValue', function (t) {
 test('SameValue', function (t) {
 	t.equal(true, ES.SameValue(NaN, NaN), 'NaN is SameValue as NaN');
 	t.equal(true, ES.SameValue(NaN, NaN), 'NaN is SameValue as NaN');
 	t.equal(false, ES.SameValue(0, -0), '+0 is not SameValue as -0');
 	t.equal(false, ES.SameValue(0, -0), '+0 is not SameValue as -0');
-	forEach(objects.concat(primitives), function (val) {
-		t.equal(val === val, ES.SameValue(val, val), '"' + val + '" is SameValue to itself');
+	forEach(v.objects.concat(v.primitives), function (val) {
+		t.equal(val === val, ES.SameValue(val, val), debug(val) + ' is SameValue to itself');
 	});
 	});
 	t.end();
 	t.end();
 });
 });
@@ -211,107 +199,84 @@ test('Type', function (t) {
 	t.end();
 	t.end();
 });
 });
 
 
-var bothDescriptor = function () {
-	return { '[[Get]]': function () {}, '[[Value]]': true };
-};
-var accessorDescriptor = function () {
-	return {
-		'[[Get]]': function () {},
-		'[[Enumerable]]': true,
-		'[[Configurable]]': true
-	};
-};
-var mutatorDescriptor = function () {
-	return {
-		'[[Set]]': function () {},
-		'[[Enumerable]]': true,
-		'[[Configurable]]': true
-	};
-};
-var dataDescriptor = function () {
-	return {
-		'[[Value]]': 42,
-		'[[Writable]]': false,
-		'[[Configurable]]': false
-	};
-};
-var genericDescriptor = function () {
-	return {
-		'[[Configurable]]': true,
-		'[[Enumerable]]': false
-	};
-};
-
 test('IsPropertyDescriptor', function (t) {
 test('IsPropertyDescriptor', function (t) {
-	forEach(primitives, function (primitive) {
-		t.equal(ES.IsPropertyDescriptor(primitive), false, primitive + ' is not a Property Descriptor');
+	forEach(v.primitives, function (primitive) {
+		t.equal(ES.IsPropertyDescriptor(primitive), false, debug(primitive) + ' is not a Property Descriptor');
 	});
 	});
 
 
 	t.equal(ES.IsPropertyDescriptor({ invalid: true }), false, 'invalid keys not allowed on a Property Descriptor');
 	t.equal(ES.IsPropertyDescriptor({ invalid: true }), false, 'invalid keys not allowed on a Property Descriptor');
 
 
 	t.equal(ES.IsPropertyDescriptor({}), true, 'empty object is an incomplete Property Descriptor');
 	t.equal(ES.IsPropertyDescriptor({}), true, 'empty object is an incomplete Property Descriptor');
 
 
-	t.equal(ES.IsPropertyDescriptor(accessorDescriptor()), true, 'accessor descriptor is a Property Descriptor');
-	t.equal(ES.IsPropertyDescriptor(mutatorDescriptor()), true, 'mutator descriptor is a Property Descriptor');
-	t.equal(ES.IsPropertyDescriptor(dataDescriptor()), true, 'data descriptor is a Property Descriptor');
-	t.equal(ES.IsPropertyDescriptor(genericDescriptor()), true, 'generic descriptor is a Property Descriptor');
+	t.equal(ES.IsPropertyDescriptor(v.accessorDescriptor()), true, 'accessor descriptor is a Property Descriptor');
+	t.equal(ES.IsPropertyDescriptor(v.mutatorDescriptor()), true, 'mutator descriptor is a Property Descriptor');
+	t.equal(ES.IsPropertyDescriptor(v.dataDescriptor()), true, 'data descriptor is a Property Descriptor');
+	t.equal(ES.IsPropertyDescriptor(v.genericDescriptor()), true, 'generic descriptor is a Property Descriptor');
+
+	t['throws'](
+		function () { ES.IsPropertyDescriptor(v.bothDescriptor()); },
+		TypeError,
+		'a Property Descriptor can not be both a Data and an Accessor Descriptor'
+	);
 
 
-	t['throws'](function () {
-		ES.IsPropertyDescriptor(bothDescriptor());
-	}, TypeError, 'a Property Descriptor can not be both a Data and an Accessor Descriptor');
+	t['throws'](
+		function () { ES.IsPropertyDescriptor(v.bothDescriptorWritable()); },
+		TypeError,
+		'a Property Descriptor can not be both a Data and an Accessor Descriptor'
+	);
 
 
 	t.end();
 	t.end();
 });
 });
 
 
 test('IsAccessorDescriptor', function (t) {
 test('IsAccessorDescriptor', function (t) {
-	forEach(nonNullPrimitives.concat(null), function (primitive) {
-		t['throws'](function () { ES.IsAccessorDescriptor(primitive); }, TypeError, primitive + ' is not a Property Descriptor');
+	forEach(v.nonNullPrimitives.concat(null), function (primitive) {
+		t['throws'](function () { ES.IsAccessorDescriptor(primitive); }, TypeError, debug(primitive) + ' is not a Property Descriptor');
 	});
 	});
 
 
 	t.equal(ES.IsAccessorDescriptor(), false, 'no value is not an Accessor Descriptor');
 	t.equal(ES.IsAccessorDescriptor(), false, 'no value is not an Accessor Descriptor');
 	t.equal(ES.IsAccessorDescriptor(undefined), false, 'undefined value is not an Accessor Descriptor');
 	t.equal(ES.IsAccessorDescriptor(undefined), false, 'undefined value is not an Accessor Descriptor');
 
 
-	t.equal(ES.IsAccessorDescriptor(accessorDescriptor()), true, 'accessor descriptor is an Accessor Descriptor');
-	t.equal(ES.IsAccessorDescriptor(mutatorDescriptor()), true, 'mutator descriptor is an Accessor Descriptor');
-	t.equal(ES.IsAccessorDescriptor(dataDescriptor()), false, 'data descriptor is not an Accessor Descriptor');
-	t.equal(ES.IsAccessorDescriptor(genericDescriptor()), false, 'generic descriptor is not an Accessor Descriptor');
+	t.equal(ES.IsAccessorDescriptor(v.accessorDescriptor()), true, 'accessor descriptor is an Accessor Descriptor');
+	t.equal(ES.IsAccessorDescriptor(v.mutatorDescriptor()), true, 'mutator descriptor is an Accessor Descriptor');
+	t.equal(ES.IsAccessorDescriptor(v.dataDescriptor()), false, 'data descriptor is not an Accessor Descriptor');
+	t.equal(ES.IsAccessorDescriptor(v.genericDescriptor()), false, 'generic descriptor is not an Accessor Descriptor');
 
 
 	t.end();
 	t.end();
 });
 });
 
 
 test('IsDataDescriptor', function (t) {
 test('IsDataDescriptor', function (t) {
-	forEach(nonNullPrimitives.concat(null), function (primitive) {
-		t['throws'](function () { ES.IsDataDescriptor(primitive); }, TypeError, primitive + ' is not a Property Descriptor');
+	forEach(v.nonNullPrimitives.concat(null), function (primitive) {
+		t['throws'](function () { ES.IsDataDescriptor(primitive); }, TypeError, debug(primitive) + ' is not a Property Descriptor');
 	});
 	});
 
 
 	t.equal(ES.IsDataDescriptor(), false, 'no value is not a Data Descriptor');
 	t.equal(ES.IsDataDescriptor(), false, 'no value is not a Data Descriptor');
 	t.equal(ES.IsDataDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
 	t.equal(ES.IsDataDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
 
 
-	t.equal(ES.IsDataDescriptor(accessorDescriptor()), false, 'accessor descriptor is not a Data Descriptor');
-	t.equal(ES.IsDataDescriptor(mutatorDescriptor()), false, 'mutator descriptor is not a Data Descriptor');
-	t.equal(ES.IsDataDescriptor(dataDescriptor()), true, 'data descriptor is a Data Descriptor');
-	t.equal(ES.IsDataDescriptor(genericDescriptor()), false, 'generic descriptor is not a Data Descriptor');
+	t.equal(ES.IsDataDescriptor(v.accessorDescriptor()), false, 'accessor descriptor is not a Data Descriptor');
+	t.equal(ES.IsDataDescriptor(v.mutatorDescriptor()), false, 'mutator descriptor is not a Data Descriptor');
+	t.equal(ES.IsDataDescriptor(v.dataDescriptor()), true, 'data descriptor is a Data Descriptor');
+	t.equal(ES.IsDataDescriptor(v.genericDescriptor()), false, 'generic descriptor is not a Data Descriptor');
 
 
 	t.end();
 	t.end();
 });
 });
 
 
 test('IsGenericDescriptor', function (t) {
 test('IsGenericDescriptor', function (t) {
-	forEach(nonNullPrimitives.concat(null), function (primitive) {
+	forEach(v.nonNullPrimitives.concat(null), function (primitive) {
 		t['throws'](
 		t['throws'](
 			function () { ES.IsGenericDescriptor(primitive); },
 			function () { ES.IsGenericDescriptor(primitive); },
 			TypeError,
 			TypeError,
-			primitive + ' is not a Property Descriptor'
+			debug(primitive) + ' is not a Property Descriptor'
 		);
 		);
 	});
 	});
 
 
 	t.equal(ES.IsGenericDescriptor(), false, 'no value is not a Data Descriptor');
 	t.equal(ES.IsGenericDescriptor(), false, 'no value is not a Data Descriptor');
 	t.equal(ES.IsGenericDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
 	t.equal(ES.IsGenericDescriptor(undefined), false, 'undefined value is not a Data Descriptor');
 
 
-	t.equal(ES.IsGenericDescriptor(accessorDescriptor()), false, 'accessor descriptor is not a generic Descriptor');
-	t.equal(ES.IsGenericDescriptor(mutatorDescriptor()), false, 'mutator descriptor is not a generic Descriptor');
-	t.equal(ES.IsGenericDescriptor(dataDescriptor()), false, 'data descriptor is not a generic Descriptor');
+	t.equal(ES.IsGenericDescriptor(v.accessorDescriptor()), false, 'accessor descriptor is not a generic Descriptor');
+	t.equal(ES.IsGenericDescriptor(v.mutatorDescriptor()), false, 'mutator descriptor is not a generic Descriptor');
+	t.equal(ES.IsGenericDescriptor(v.dataDescriptor()), false, 'data descriptor is not a generic Descriptor');
 
 
-	t.equal(ES.IsGenericDescriptor(genericDescriptor()), true, 'generic descriptor is a generic Descriptor');
+	t.equal(ES.IsGenericDescriptor(v.genericDescriptor()), true, 'generic descriptor is a generic Descriptor');
 
 
 	t.end();
 	t.end();
 });
 });
@@ -320,15 +285,15 @@ test('FromPropertyDescriptor', function (t) {
 	t.equal(ES.FromPropertyDescriptor(), undefined, 'no value begets undefined');
 	t.equal(ES.FromPropertyDescriptor(), undefined, 'no value begets undefined');
 	t.equal(ES.FromPropertyDescriptor(undefined), undefined, 'undefined value begets undefined');
 	t.equal(ES.FromPropertyDescriptor(undefined), undefined, 'undefined value begets undefined');
 
 
-	forEach(nonNullPrimitives.concat(null), function (primitive) {
+	forEach(v.nonNullPrimitives.concat(null), function (primitive) {
 		t['throws'](
 		t['throws'](
 			function () { ES.FromPropertyDescriptor(primitive); },
 			function () { ES.FromPropertyDescriptor(primitive); },
 			TypeError,
 			TypeError,
-			primitive + ' is not a Property Descriptor'
+			debug(primitive) + ' is not a Property Descriptor'
 		);
 		);
 	});
 	});
 
 
-	var accessor = accessorDescriptor();
+	var accessor = v.accessorDescriptor();
 	t.deepEqual(ES.FromPropertyDescriptor(accessor), {
 	t.deepEqual(ES.FromPropertyDescriptor(accessor), {
 		get: accessor['[[Get]]'],
 		get: accessor['[[Get]]'],
 		set: accessor['[[Set]]'],
 		set: accessor['[[Set]]'],
@@ -336,14 +301,14 @@ test('FromPropertyDescriptor', function (t) {
 		configurable: !!accessor['[[Configurable]]']
 		configurable: !!accessor['[[Configurable]]']
 	});
 	});
 
 
-	var mutator = mutatorDescriptor();
+	var mutator = v.mutatorDescriptor();
 	t.deepEqual(ES.FromPropertyDescriptor(mutator), {
 	t.deepEqual(ES.FromPropertyDescriptor(mutator), {
 		get: mutator['[[Get]]'],
 		get: mutator['[[Get]]'],
 		set: mutator['[[Set]]'],
 		set: mutator['[[Set]]'],
 		enumerable: !!mutator['[[Enumerable]]'],
 		enumerable: !!mutator['[[Enumerable]]'],
 		configurable: !!mutator['[[Configurable]]']
 		configurable: !!mutator['[[Configurable]]']
 	});
 	});
-	var data = dataDescriptor();
+	var data = v.dataDescriptor();
 	t.deepEqual(ES.FromPropertyDescriptor(data), {
 	t.deepEqual(ES.FromPropertyDescriptor(data), {
 		value: data['[[Value]]'],
 		value: data['[[Value]]'],
 		writable: data['[[Writable]]'],
 		writable: data['[[Writable]]'],
@@ -352,7 +317,7 @@ test('FromPropertyDescriptor', function (t) {
 	});
 	});
 
 
 	t['throws'](
 	t['throws'](
-		function () { ES.FromPropertyDescriptor(genericDescriptor()); },
+		function () { ES.FromPropertyDescriptor(v.genericDescriptor()); },
 		TypeError,
 		TypeError,
 		'a complete Property Descriptor is required'
 		'a complete Property Descriptor is required'
 	);
 	);
@@ -361,36 +326,36 @@ test('FromPropertyDescriptor', function (t) {
 });
 });
 
 
 test('ToPropertyDescriptor', function (t) {
 test('ToPropertyDescriptor', function (t) {
-	forEach(nonNullPrimitives.concat(null), function (primitive) {
+	forEach(v.nonNullPrimitives.concat(null), function (primitive) {
 		t['throws'](
 		t['throws'](
 			function () { ES.ToPropertyDescriptor(primitive); },
 			function () { ES.ToPropertyDescriptor(primitive); },
 			TypeError,
 			TypeError,
-			primitive + ' is not an Object'
+			debug(primitive) + ' is not an Object'
 		);
 		);
 	});
 	});
 
 
-	var accessor = accessorDescriptor();
+	var accessor = v.accessorDescriptor();
 	t.deepEqual(ES.ToPropertyDescriptor({
 	t.deepEqual(ES.ToPropertyDescriptor({
 		get: accessor['[[Get]]'],
 		get: accessor['[[Get]]'],
 		enumerable: !!accessor['[[Enumerable]]'],
 		enumerable: !!accessor['[[Enumerable]]'],
 		configurable: !!accessor['[[Configurable]]']
 		configurable: !!accessor['[[Configurable]]']
 	}), accessor);
 	}), accessor);
 
 
-	var mutator = mutatorDescriptor();
+	var mutator = v.mutatorDescriptor();
 	t.deepEqual(ES.ToPropertyDescriptor({
 	t.deepEqual(ES.ToPropertyDescriptor({
 		set: mutator['[[Set]]'],
 		set: mutator['[[Set]]'],
 		enumerable: !!mutator['[[Enumerable]]'],
 		enumerable: !!mutator['[[Enumerable]]'],
 		configurable: !!mutator['[[Configurable]]']
 		configurable: !!mutator['[[Configurable]]']
 	}), mutator);
 	}), mutator);
 
 
-	var data = dataDescriptor();
+	var data = v.descriptors.nonConfigurable(v.dataDescriptor());
 	t.deepEqual(ES.ToPropertyDescriptor({
 	t.deepEqual(ES.ToPropertyDescriptor({
 		value: data['[[Value]]'],
 		value: data['[[Value]]'],
 		writable: data['[[Writable]]'],
 		writable: data['[[Writable]]'],
 		configurable: !!data['[[Configurable]]']
 		configurable: !!data['[[Configurable]]']
 	}), data);
 	}), data);
 
 
-	var both = bothDescriptor();
+	var both = v.bothDescriptor();
 	t['throws'](
 	t['throws'](
 		function () {
 		function () {
 			ES.ToPropertyDescriptor({ get: both['[[Get]]'], value: both['[[Value]]'] });
 			ES.ToPropertyDescriptor({ get: both['[[Get]]'], value: both['[[Value]]'] });
@@ -413,3 +378,407 @@ test('ToPropertyDescriptor', function (t) {
 
 
 	t.end();
 	t.end();
 });
 });
+
+test('Abstract Equality Comparison', function (t) {
+	t.test('same types use ===', function (st) {
+		forEach(v.primitives.concat(v.objects), function (value) {
+			st.equal(ES['Abstract Equality Comparison'](value, value), value === value, debug(value) + ' is abstractly equal to itself');
+		});
+		st.end();
+	});
+
+	t.test('different types coerce', function (st) {
+		var pairs = [
+			[null, undefined],
+			[3, '3'],
+			[true, '3'],
+			[true, 3],
+			[false, 0],
+			[false, '0'],
+			[3, [3]],
+			['3', [3]],
+			[true, [1]],
+			[false, [0]],
+			[String(v.coercibleObject), v.coercibleObject],
+			[Number(String(v.coercibleObject)), v.coercibleObject],
+			[Number(v.coercibleObject), v.coercibleObject],
+			[String(Number(v.coercibleObject)), v.coercibleObject]
+		];
+		forEach(pairs, function (pair) {
+			var a = pair[0];
+			var b = pair[1];
+			// eslint-disable-next-line eqeqeq
+			st.equal(ES['Abstract Equality Comparison'](a, b), a == b, debug(a) + ' == ' + debug(b));
+			// eslint-disable-next-line eqeqeq
+			st.equal(ES['Abstract Equality Comparison'](b, a), b == a, debug(b) + ' == ' + debug(a));
+		});
+		st.end();
+	});
+
+	t.end();
+});
+
+test('Strict Equality Comparison', function (t) {
+	t.test('same types use ===', function (st) {
+		forEach(v.primitives.concat(v.objects), function (value) {
+			st.equal(ES['Strict Equality Comparison'](value, value), value === value, debug(value) + ' is strictly equal to itself');
+		});
+		st.end();
+	});
+
+	t.test('different types are not ===', function (st) {
+		var pairs = [
+			[null, undefined],
+			[3, '3'],
+			[true, '3'],
+			[true, 3],
+			[false, 0],
+			[false, '0'],
+			[3, [3]],
+			['3', [3]],
+			[true, [1]],
+			[false, [0]],
+			[String(v.coercibleObject), v.coercibleObject],
+			[Number(String(v.coercibleObject)), v.coercibleObject],
+			[Number(v.coercibleObject), v.coercibleObject],
+			[String(Number(v.coercibleObject)), v.coercibleObject]
+		];
+		forEach(pairs, function (pair) {
+			var a = pair[0];
+			var b = pair[1];
+			st.equal(ES['Strict Equality Comparison'](a, b), a === b, debug(a) + ' === ' + debug(b));
+			st.equal(ES['Strict Equality Comparison'](b, a), b === a, debug(b) + ' === ' + debug(a));
+		});
+		st.end();
+	});
+
+	t.end();
+});
+
+test('Abstract Relational Comparison', function (t) {
+	t.test('at least one operand is NaN', function (st) {
+		st.equal(ES['Abstract Relational Comparison'](NaN, {}, true), undefined, 'LeftFirst: first is NaN, returns undefined');
+		st.equal(ES['Abstract Relational Comparison']({}, NaN, true), undefined, 'LeftFirst: second is NaN, returns undefined');
+		st.equal(ES['Abstract Relational Comparison'](NaN, {}, false), undefined, '!LeftFirst: first is NaN, returns undefined');
+		st.equal(ES['Abstract Relational Comparison']({}, NaN, false), undefined, '!LeftFirst: second is NaN, returns undefined');
+		st.end();
+	});
+
+	t.equal(ES['Abstract Relational Comparison'](3, 4, true), true, 'LeftFirst: 3 is less than 4');
+	t.equal(ES['Abstract Relational Comparison'](4, 3, true), false, 'LeftFirst: 3 is not less than 4');
+	t.equal(ES['Abstract Relational Comparison'](3, 4, false), true, '!LeftFirst: 3 is less than 4');
+	t.equal(ES['Abstract Relational Comparison'](4, 3, false), false, '!LeftFirst: 3 is not less than 4');
+
+	t.equal(ES['Abstract Relational Comparison']('3', '4', true), true, 'LeftFirst: "3" is less than "4"');
+	t.equal(ES['Abstract Relational Comparison']('4', '3', true), false, 'LeftFirst: "3" is not less than "4"');
+	t.equal(ES['Abstract Relational Comparison']('3', '4', false), true, '!LeftFirst: "3" is less than "4"');
+	t.equal(ES['Abstract Relational Comparison']('4', '3', false), false, '!LeftFirst: "3" is not less than "4"');
+
+	t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, 42, true), true, 'LeftFirst: coercible object is less than 42');
+	t.equal(ES['Abstract Relational Comparison'](42, v.coercibleObject, true), false, 'LeftFirst: 42 is not less than coercible object');
+	t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, 42, false), true, '!LeftFirst: coercible object is less than 42');
+	t.equal(ES['Abstract Relational Comparison'](42, v.coercibleObject, false), false, '!LeftFirst: 42 is not less than coercible object');
+
+	t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, '3', true), false, 'LeftFirst: coercible object is not less than "3"');
+	t.equal(ES['Abstract Relational Comparison']('3', v.coercibleObject, true), false, 'LeftFirst: "3" is not less than coercible object');
+	t.equal(ES['Abstract Relational Comparison'](v.coercibleObject, '3', false), false, '!LeftFirst: coercible object is not less than "3"');
+	t.equal(ES['Abstract Relational Comparison']('3', v.coercibleObject, false), false, '!LeftFirst: "3" is not less than coercible object');
+
+	t.end();
+});
+
+test('FromPropertyDescriptor', function (t) {
+	t.equal(ES.FromPropertyDescriptor(), undefined, 'no value begets undefined');
+	t.equal(ES.FromPropertyDescriptor(undefined), undefined, 'undefined value begets undefined');
+
+	forEach(v.nonUndefinedPrimitives, function (primitive) {
+		t['throws'](
+			function () { ES.FromPropertyDescriptor(primitive); },
+			TypeError,
+			debug(primitive) + ' is not a Property Descriptor'
+		);
+	});
+
+	var accessor = v.accessorDescriptor();
+	t.deepEqual(ES.FromPropertyDescriptor(accessor), {
+		get: accessor['[[Get]]'],
+		set: accessor['[[Set]]'],
+		enumerable: !!accessor['[[Enumerable]]'],
+		configurable: !!accessor['[[Configurable]]']
+	});
+
+	var mutator = v.mutatorDescriptor();
+	t.deepEqual(ES.FromPropertyDescriptor(mutator), {
+		get: mutator['[[Get]]'],
+		set: mutator['[[Set]]'],
+		enumerable: !!mutator['[[Enumerable]]'],
+		configurable: !!mutator['[[Configurable]]']
+	});
+	var data = v.dataDescriptor();
+	t.deepEqual(ES.FromPropertyDescriptor(data), {
+		value: data['[[Value]]'],
+		writable: data['[[Writable]]'],
+		enumerable: !!data['[[Enumerable]]'],
+		configurable: !!data['[[Configurable]]']
+	});
+
+	t['throws'](
+		function () { ES.FromPropertyDescriptor(v.genericDescriptor()); },
+		TypeError,
+		'a complete Property Descriptor is required'
+	);
+
+	t.end();
+});
+
+test('SecFromTime', function (t) {
+	var now = new Date();
+	t.equal(ES.SecFromTime(now.getTime()), now.getUTCSeconds(), 'second from Date timestamp matches getUTCSeconds');
+	t.end();
+});
+
+test('MinFromTime', function (t) {
+	var now = new Date();
+	t.equal(ES.MinFromTime(now.getTime()), now.getUTCMinutes(), 'minute from Date timestamp matches getUTCMinutes');
+	t.end();
+});
+
+test('HourFromTime', function (t) {
+	var now = new Date();
+	t.equal(ES.HourFromTime(now.getTime()), now.getUTCHours(), 'hour from Date timestamp matches getUTCHours');
+	t.end();
+});
+
+test('msFromTime', function (t) {
+	var now = new Date();
+	t.equal(ES.msFromTime(now.getTime()), now.getUTCMilliseconds(), 'ms from Date timestamp matches getUTCMilliseconds');
+	t.end();
+});
+
+var msPerSecond = 1e3;
+var msPerMinute = 60 * msPerSecond;
+var msPerHour = 60 * msPerMinute;
+var msPerDay = 24 * msPerHour;
+
+test('Day', function (t) {
+	var time = Date.UTC(2019, 8, 10, 2, 3, 4, 5);
+	var add = 2.5;
+	var later = new Date(time + (add * msPerDay));
+
+	t.equal(ES.Day(later.getTime()), ES.Day(time) + Math.floor(add), 'adding 2.5 days worth of ms, gives a Day delta of 2');
+	t.end();
+});
+
+test('TimeWithinDay', function (t) {
+	var time = Date.UTC(2019, 8, 10, 2, 3, 4, 5);
+	var add = 2.5;
+	var later = new Date(time + (add * msPerDay));
+
+	t.equal(ES.TimeWithinDay(later.getTime()), ES.TimeWithinDay(time) + (0.5 * msPerDay), 'adding 2.5 days worth of ms, gives a TimeWithinDay delta of +0.5');
+	t.end();
+});
+
+test('DayFromYear', function (t) {
+	t.equal(ES.DayFromYear(2021) - ES.DayFromYear(2020), 366, '2021 is a leap year, has 366 days');
+	t.equal(ES.DayFromYear(2020) - ES.DayFromYear(2019), 365, '2020 is not a leap year, has 365 days');
+	t.equal(ES.DayFromYear(2019) - ES.DayFromYear(2018), 365, '2019 is not a leap year, has 365 days');
+	t.equal(ES.DayFromYear(2018) - ES.DayFromYear(2017), 365, '2018 is not a leap year, has 365 days');
+	t.equal(ES.DayFromYear(2017) - ES.DayFromYear(2016), 366, '2017 is a leap year, has 366 days');
+
+	t.end();
+});
+
+test('TimeFromYear', function (t) {
+	for (var i = 1900; i < 2100; i += 1) {
+		t.equal(ES.TimeFromYear(i), Date.UTC(i, 0, 1), 'TimeFromYear matches a Date object’s year: ' + i);
+	}
+	t.end();
+});
+
+test('YearFromTime', function (t) {
+	for (var i = 1900; i < 2100; i += 1) {
+		t.equal(ES.YearFromTime(Date.UTC(i, 0, 1)), i, 'YearFromTime matches a Date object’s year on 1/1: ' + i);
+		t.equal(ES.YearFromTime(Date.UTC(i, 10, 1)), i, 'YearFromTime matches a Date object’s year on 10/1: ' + i);
+	}
+	t.end();
+});
+
+test('WeekDay', function (t) {
+	var now = new Date();
+	var today = now.getUTCDay();
+	for (var i = 0; i < 7; i += 1) {
+		var weekDay = ES.WeekDay(now.getTime() + (i * msPerDay));
+		t.equal(weekDay, (today + i) % 7, i + ' days after today (' + today + '), WeekDay is ' + weekDay);
+	}
+	t.end();
+});
+
+test('DaysInYear', function (t) {
+	t.equal(ES.DaysInYear(2021), 365, '2021 is not a leap year');
+	t.equal(ES.DaysInYear(2020), 366, '2020 is a leap year');
+	t.equal(ES.DaysInYear(2019), 365, '2019 is not a leap year');
+	t.equal(ES.DaysInYear(2018), 365, '2018 is not a leap year');
+	t.equal(ES.DaysInYear(2017), 365, '2017 is not a leap year');
+	t.equal(ES.DaysInYear(2016), 366, '2016 is a leap year');
+
+	t.end();
+});
+
+test('InLeapYear', function (t) {
+	t.equal(ES.InLeapYear(Date.UTC(2021, 0, 1)), 0, '2021 is not a leap year');
+	t.equal(ES.InLeapYear(Date.UTC(2020, 0, 1)), 1, '2020 is a leap year');
+	t.equal(ES.InLeapYear(Date.UTC(2019, 0, 1)), 0, '2019 is not a leap year');
+	t.equal(ES.InLeapYear(Date.UTC(2018, 0, 1)), 0, '2018 is not a leap year');
+	t.equal(ES.InLeapYear(Date.UTC(2017, 0, 1)), 0, '2017 is not a leap year');
+	t.equal(ES.InLeapYear(Date.UTC(2016, 0, 1)), 1, '2016 is a leap year');
+
+	t.end();
+});
+
+test('DayWithinYear', function (t) {
+	t.equal(ES.DayWithinYear(Date.UTC(2019, 0, 1)), 0, '1/1 is the 1st day');
+	t.equal(ES.DayWithinYear(Date.UTC(2019, 11, 31)), 364, '12/31 is the 365th day in a non leap year');
+	t.equal(ES.DayWithinYear(Date.UTC(2016, 11, 31)), 365, '12/31 is the 366th day in a leap year');
+
+	t.end();
+});
+
+test('MonthFromTime', function (t) {
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 0, 1)), 0, 'non-leap: 1/1 gives January');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 0, 31)), 0, 'non-leap: 1/31 gives January');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 1)), 1, 'non-leap: 2/1 gives February');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 28)), 1, 'non-leap: 2/28 gives February');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 1, 29)), 2, 'non-leap: 2/29 gives March');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 2, 1)), 2, 'non-leap: 3/1 gives March');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 2, 31)), 2, 'non-leap: 3/31 gives March');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 3, 1)), 3, 'non-leap: 4/1 gives April');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 3, 30)), 3, 'non-leap: 4/30 gives April');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 4, 1)), 4, 'non-leap: 5/1 gives May');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 4, 31)), 4, 'non-leap: 5/31 gives May');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 5, 1)), 5, 'non-leap: 6/1 gives June');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 5, 30)), 5, 'non-leap: 6/30 gives June');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 6, 1)), 6, 'non-leap: 7/1 gives July');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 6, 31)), 6, 'non-leap: 7/31 gives July');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 7, 1)), 7, 'non-leap: 8/1 gives August');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 7, 30)), 7, 'non-leap: 8/30 gives August');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 8, 1)), 8, 'non-leap: 9/1 gives September');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 8, 30)), 8, 'non-leap: 9/30 gives September');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 9, 1)), 9, 'non-leap: 10/1 gives October');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 9, 31)), 9, 'non-leap: 10/31 gives October');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 10, 1)), 10, 'non-leap: 11/1 gives November');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 10, 30)), 10, 'non-leap: 11/30 gives November');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 11, 1)), 11, 'non-leap: 12/1 gives December');
+	t.equal(ES.MonthFromTime(Date.UTC(2019, 11, 31)), 11, 'non-leap: 12/31 gives December');
+
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 0, 1)), 0, 'leap: 1/1 gives January');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 0, 31)), 0, 'leap: 1/31 gives January');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 1)), 1, 'leap: 2/1 gives February');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 28)), 1, 'leap: 2/28 gives February');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 1, 29)), 1, 'leap: 2/29 gives February');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 2, 1)), 2, 'leap: 3/1 gives March');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 2, 31)), 2, 'leap: 3/31 gives March');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 3, 1)), 3, 'leap: 4/1 gives April');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 3, 30)), 3, 'leap: 4/30 gives April');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 4, 1)), 4, 'leap: 5/1 gives May');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 4, 31)), 4, 'leap: 5/31 gives May');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 5, 1)), 5, 'leap: 6/1 gives June');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 5, 30)), 5, 'leap: 6/30 gives June');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 6, 1)), 6, 'leap: 7/1 gives July');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 6, 31)), 6, 'leap: 7/31 gives July');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 7, 1)), 7, 'leap: 8/1 gives August');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 7, 30)), 7, 'leap: 8/30 gives August');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 8, 1)), 8, 'leap: 9/1 gives September');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 8, 30)), 8, 'leap: 9/30 gives September');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 9, 1)), 9, 'leap: 10/1 gives October');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 9, 31)), 9, 'leap: 10/31 gives October');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 10, 1)), 10, 'leap: 11/1 gives November');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 10, 30)), 10, 'leap: 11/30 gives November');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 11, 1)), 11, 'leap: 12/1 gives December');
+	t.equal(ES.MonthFromTime(Date.UTC(2016, 11, 31)), 11, 'leap: 12/31 gives December');
+	t.end();
+});
+
+test('DateFromTime', function (t) {
+	var i;
+	for (i = 1; i <= 28; i += 1) {
+		t.equal(ES.DateFromTime(Date.UTC(2019, 1, i)), i, '2019.02.' + i + ' is date ' + i);
+	}
+	for (i = 1; i <= 29; i += 1) {
+		t.equal(ES.DateFromTime(Date.UTC(2016, 1, i)), i, '2016.02.' + i + ' is date ' + i);
+	}
+	for (i = 1; i <= 30; i += 1) {
+		t.equal(ES.DateFromTime(Date.UTC(2019, 8, i)), i, '2019.09.' + i + ' is date ' + i);
+	}
+	for (i = 1; i <= 31; i += 1) {
+		t.equal(ES.DateFromTime(Date.UTC(2019, 9, i)), i, '2019.10.' + i + ' is date ' + i);
+	}
+	t.end();
+});
+
+test('MakeDay', function (t) {
+	var day2015 = 16687;
+	t.equal(ES.MakeDay(2015, 8, 9), day2015, '2015.09.09 is day 16687');
+	var day2016 = day2015 + 366; // 2016 is a leap year
+	t.equal(ES.MakeDay(2016, 8, 9), day2016, '2015.09.09 is day 17053');
+	var day2017 = day2016 + 365;
+	t.equal(ES.MakeDay(2017, 8, 9), day2017, '2017.09.09 is day 17418');
+	var day2018 = day2017 + 365;
+	t.equal(ES.MakeDay(2018, 8, 9), day2018, '2018.09.09 is day 17783');
+	var day2019 = day2018 + 365;
+	t.equal(ES.MakeDay(2019, 8, 9), day2019, '2019.09.09 is day 18148');
+	t.end();
+});
+
+test('MakeDate', function (t) {
+	forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
+		t.ok(is(ES.MakeDate(nonFiniteNumber, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `day`');
+		t.ok(is(ES.MakeDate(0, nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `time`');
+	});
+	t.equal(ES.MakeDate(0, 0), 0, 'zero day and zero time is zero date');
+	t.equal(ES.MakeDate(0, 123), 123, 'zero day and nonzero time is a date of the "time"');
+	t.equal(ES.MakeDate(1, 0), msPerDay, 'day of 1 and zero time is a date of "ms per day"');
+	t.equal(ES.MakeDate(3, 0), 3 * msPerDay, 'day of 3 and zero time is a date of thrice "ms per day"');
+	t.equal(ES.MakeDate(1, 123), msPerDay + 123, 'day of 1 and nonzero time is a date of "ms per day" plus the "time"');
+	t.equal(ES.MakeDate(3, 123), (3 * msPerDay) + 123, 'day of 3 and nonzero time is a date of thrice "ms per day" plus the "time"');
+
+	t.end();
+});
+
+test('MakeTime', function (t) {
+	forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
+		t.ok(is(ES.MakeTime(nonFiniteNumber, 0, 0, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `hour`');
+		t.ok(is(ES.MakeTime(0, nonFiniteNumber, 0, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `min`');
+		t.ok(is(ES.MakeTime(0, 0, nonFiniteNumber, 0), NaN), debug(nonFiniteNumber) + ' is not a finite `sec`');
+		t.ok(is(ES.MakeTime(0, 0, 0, nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `ms`');
+	});
+
+	t.equal(
+		ES.MakeTime(1.2, 2.3, 3.4, 4.5),
+		(1 * msPerHour) + (2 * msPerMinute) + (3 * msPerSecond) + 4,
+		'all numbers are converted to integer, multiplied by the right number of ms, and summed'
+	);
+	t.end();
+});
+
+test('TimeClip', function (t) {
+	forEach(v.infinities.concat(NaN), function (nonFiniteNumber) {
+		t.ok(is(ES.TimeClip(nonFiniteNumber), NaN), debug(nonFiniteNumber) + ' is not a finite `time`');
+	});
+	t.ok(is(ES.TimeClip(8.64e15 + 1), NaN), '8.64e15 is the largest magnitude considered "finite"');
+	t.ok(is(ES.TimeClip(-8.64e15 - 1), NaN), '-8.64e15 is the largest magnitude considered "finite"');
+
+	forEach(v.zeroes.concat([-10, 10, Date.now()]), function (time) {
+		t.equal(ES.TimeClip(time), time, debug(time) + ' is a time of ' + debug(time));
+	});
+
+	t.end();
+});
+
+test('modulo', function (t) {
+	t.equal(3 % 2, 1, '+3 % 2 is +1');
+	t.equal(ES.modulo(3, 2), 1, '+3 mod 2 is +1');
+
+	t.equal(-3 % 2, -1, '-3 % 2 is -1');
+	t.equal(ES.modulo(-3, 2), 1, '-3 mod 2 is +1');
+	t.end();
+});

+ 73 - 5
node_modules/es-abstract/test/helpers/values.js

@@ -1,16 +1,28 @@
 'use strict';
 'use strict';
 
 
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
+var assign = require('../../helpers/assign');
+
+var hasSymbols = require('has-symbols')();
 
 
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
+var coercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return 42; }
+};
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
-var objects = [{}, coercibleObject, toStringOnlyObject, valueOfOnlyObject];
+var uncoercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return function toStrFn() {}; }
+};
+var objects = [{}, coercibleObject, coercibleFnObject, toStringOnlyObject, valueOfOnlyObject];
 var nullPrimitives = [undefined, null];
 var nullPrimitives = [undefined, null];
 var nonIntegerNumbers = [-1.3, 0.2, 1.8, 1 / 3];
 var nonIntegerNumbers = [-1.3, 0.2, 1.8, 1 / 3];
-var numbers = [0, -0, Infinity, -Infinity, 42];
-var strings = ['', 'foo'];
+var zeroes = [0, -0];
+var infinities = [Infinity, -Infinity];
+var numbers = zeroes.concat([42], infinities, nonIntegerNumbers);
+var strings = ['', 'foo', 'a\uD83D\uDCA9c'];
 var booleans = [true, false];
 var booleans = [true, false];
 var symbols = hasSymbols ? [Symbol.iterator, Symbol('foo')] : [];
 var symbols = hasSymbols ? [Symbol.iterator, Symbol('foo')] : [];
 var nonSymbolPrimitives = [].concat(nullPrimitives, booleans, strings, numbers);
 var nonSymbolPrimitives = [].concat(nullPrimitives, booleans, strings, numbers);
@@ -24,15 +36,45 @@ var propertyKeys = [].concat(strings, symbols);
 var nonBooleans = [].concat(nullPrimitives, strings, symbols, numbers, objects);
 var nonBooleans = [].concat(nullPrimitives, strings, symbols, numbers, objects);
 var falsies = [].concat(nullPrimitives, false, '', 0, -0, NaN);
 var falsies = [].concat(nullPrimitives, false, '', 0, -0, NaN);
 var truthies = [].concat(true, 'foo', 42, symbols, objects);
 var truthies = [].concat(true, 'foo', 42, symbols, objects);
+var timestamps = [].concat(0, 946713600000, 1546329600000);
+var nonFunctions = [].concat(primitives, objects, [42]);
+var nonArrays = [].concat(nonFunctions);
+
+var descriptors = {
+	configurable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Configurable]]': true });
+	},
+	nonConfigurable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Configurable]]': false });
+	},
+	enumerable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Enumerable]]': true });
+	},
+	nonEnumerable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Enumerable]]': false });
+	},
+	writable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Writable]]': true });
+	},
+	nonWritable: function (descriptor) {
+		return assign(assign({}, descriptor), { '[[Writable]]': false });
+	}
+};
 
 
 module.exports = {
 module.exports = {
 	coercibleObject: coercibleObject,
 	coercibleObject: coercibleObject,
+	coercibleFnObject: coercibleFnObject,
 	valueOfOnlyObject: valueOfOnlyObject,
 	valueOfOnlyObject: valueOfOnlyObject,
 	toStringOnlyObject: toStringOnlyObject,
 	toStringOnlyObject: toStringOnlyObject,
 	uncoercibleObject: uncoercibleObject,
 	uncoercibleObject: uncoercibleObject,
+	uncoercibleFnObject: uncoercibleFnObject,
 	objects: objects,
 	objects: objects,
+	nonFunctions: nonFunctions,
+	nonArrays: nonArrays,
 	nullPrimitives: nullPrimitives,
 	nullPrimitives: nullPrimitives,
 	numbers: numbers,
 	numbers: numbers,
+	zeroes: zeroes,
+	infinities: infinities,
 	strings: strings,
 	strings: strings,
 	booleans: booleans,
 	booleans: booleans,
 	symbols: symbols,
 	symbols: symbols,
@@ -49,5 +91,31 @@ module.exports = {
 	propertyKeys: propertyKeys,
 	propertyKeys: propertyKeys,
 	nonBooleans: nonBooleans,
 	nonBooleans: nonBooleans,
 	falsies: falsies,
 	falsies: falsies,
-	truthies: truthies
+	truthies: truthies,
+	timestamps: timestamps,
+	bothDescriptor: function () {
+		return { '[[Get]]': function () {}, '[[Value]]': true };
+	},
+	bothDescriptorWritable: function () {
+		return descriptors.writable({ '[[Get]]': function () {} });
+	},
+	accessorDescriptor: function (value) {
+		return descriptors.enumerable(descriptors.configurable({
+			'[[Get]]': function get() { return value; }
+		}));
+	},
+	mutatorDescriptor: function () {
+		return descriptors.enumerable(descriptors.configurable({
+			'[[Set]]': function () {}
+		}));
+	},
+	dataDescriptor: function (value) {
+		return descriptors.nonWritable({
+			'[[Value]]': arguments.length > 0 ? value : 42
+		});
+	},
+	genericDescriptor: function () {
+		return descriptors.configurable(descriptors.nonEnumerable());
+	},
+	descriptors: descriptors
 };
 };

+ 5 - 1
node_modules/es-abstract/test/index.js

@@ -7,7 +7,7 @@ var ESkeys = Object.keys(ES).sort();
 var ES6keys = Object.keys(ES.ES6).sort();
 var ES6keys = Object.keys(ES.ES6).sort();
 
 
 test('exposed properties', function (t) {
 test('exposed properties', function (t) {
-	t.deepEqual(ESkeys, ES6keys.concat(['ES2017', 'ES7', 'ES2016', 'ES6', 'ES2015', 'ES5']).sort(), 'main ES object keys match ES6 keys');
+	t.deepEqual(ESkeys, ES6keys.concat(['ES2019', 'ES2018', 'ES2017', 'ES7', 'ES2016', 'ES6', 'ES2015', 'ES5']).sort(), 'main ES object keys match ES6 keys');
 	t.end();
 	t.end();
 });
 });
 
 
@@ -18,9 +18,13 @@ test('methods match', function (t) {
 	t.end();
 	t.end();
 });
 });
 
 
+require('./GetIntrinsic');
+
 require('./es5');
 require('./es5');
 require('./es6');
 require('./es6');
 require('./es2015');
 require('./es2015');
 require('./es7');
 require('./es7');
 require('./es2016');
 require('./es2016');
 require('./es2017');
 require('./es2017');
+require('./es2018');
+require('./es2019');

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 2706 - 197
node_modules/es-abstract/test/tests.js


+ 13 - 4
node_modules/es-to-primitive/.eslintrc

@@ -4,10 +4,19 @@
 	"extends": "@ljharb",
 	"extends": "@ljharb",
 
 
 	"rules": {
 	"rules": {
-		"complexity": [2, 13],
+		"complexity": [2, 14],
+		"func-name-matching": 0,
 		"id-length": [2, { "min": 1, "max": 24, "properties": "never" }],
 		"id-length": [2, { "min": 1, "max": 24, "properties": "never" }],
 		"max-statements": [2, 20],
 		"max-statements": [2, 20],
-		"new-cap": [2, { "capIsNewExceptions": ["GetMethod"] }],
-		"no-extra-parens": [2, "functions"]
-	}
+		"new-cap": [2, { "capIsNewExceptions": ["GetMethod"] }]
+	},
+
+	"overrides": [
+		{
+			"files": "test/**",
+			"rules": {
+				"max-lines-per-function": [2, { "max": 68 }],
+			},
+		}
+	],
 }
 }

+ 0 - 155
node_modules/es-to-primitive/.jscs.json

@@ -1,155 +0,0 @@
-{
-	"es3": true,
-
-	"additionalRules": [],
-
-	"requireSemicolons": true,
-
-	"disallowMultipleSpaces": true,
-
-	"disallowIdentifierNames": [],
-
-	"requireCurlyBraces": {
-		"allExcept": [],
-		"keywords": ["if", "else", "for", "while", "do", "try", "catch"]
-	},
-
-	"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],
-
-	"disallowSpaceAfterKeywords": [],
-
-	"disallowSpaceBeforeComma": true,
-	"disallowSpaceAfterComma": false,
-	"disallowSpaceBeforeSemicolon": true,
-
-	"disallowNodeTypes": [
-		"DebuggerStatement",
-		"ForInStatement",
-		"LabeledStatement",
-		"SwitchCase",
-		"SwitchStatement",
-		"WithStatement"
-	],
-
-	"requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
-
-	"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },
-	"requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true },
-	"requireSpacesInFunctionDeclaration": { "beforeOpeningCurlyBrace": true },
-	"disallowSpacesInFunctionDeclaration": { "beforeOpeningRoundBrace": true },
-
-	"requireSpaceBetweenArguments": true,
-
-	"disallowSpacesInsideParentheses": true,
-
-	"disallowSpacesInsideArrayBrackets": true,
-
-	"disallowQuotedKeysInObjects": "allButReserved",
-
-	"disallowSpaceAfterObjectKeys": true,
-
-	"requireCommaBeforeLineBreak": true,
-
-	"disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
-	"requireSpaceAfterPrefixUnaryOperators": [],
-
-	"disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
-	"requireSpaceBeforePostfixUnaryOperators": [],
-
-	"disallowSpaceBeforeBinaryOperators": [],
-	"requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-
-	"requireSpaceAfterBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
-	"disallowSpaceAfterBinaryOperators": [],
-
-	"disallowImplicitTypeConversion": ["binary", "string"],
-
-	"disallowKeywords": ["with", "eval"],
-
-	"requireKeywordsOnNewLine": [],
-	"disallowKeywordsOnNewLine": ["else"],
-
-	"requireLineFeedAtFileEnd": true,
-
-	"disallowTrailingWhitespace": true,
-
-	"disallowTrailingComma": true,
-
-	"excludeFiles": ["node_modules/**", "vendor/**"],
-
-	"disallowMultipleLineStrings": true,
-
-	"requireDotNotation": { "allExcept": ["keywords"] },
-
-	"requireParenthesesAroundIIFE": true,
-
-	"validateLineBreaks": "LF",
-
-	"validateQuoteMarks": {
-		"escape": true,
-		"mark": "'"
-	},
-
-	"disallowOperatorBeforeLineBreak": [],
-
-	"requireSpaceBeforeKeywords": [
-		"do",
-		"for",
-		"if",
-		"else",
-		"switch",
-		"case",
-		"try",
-		"catch",
-		"finally",
-		"while",
-		"with",
-		"return"
-	],
-
-	"validateAlignedFunctionParameters": {
-		"lineBreakAfterOpeningBraces": true,
-		"lineBreakBeforeClosingBraces": true
-	},
-
-	"requirePaddingNewLinesBeforeExport": true,
-
-	"validateNewlineAfterArrayElements": {
-		"maximum": 12
-	},
-
-	"requirePaddingNewLinesAfterUseStrict": true,
-
-	"disallowArrowFunctions": true,
-
-	"disallowMultiLineTernary": true,
-
-	"validateOrderInObjectKeys": false,
-
-	"disallowIdenticalDestructuringNames": true,
-
-	"disallowNestedTernaries": { "maxLevel": 1 },
-
-	"requireSpaceAfterComma": { "allExcept": ["trailing"] },
-	"requireAlignedMultilineParams": false,
-
-	"requireSpacesInGenerator": {
-		"afterStar": true
-	},
-
-	"disallowSpacesInGenerator": {
-		"beforeStar": true
-	},
-
-	"disallowVar": false,
-
-	"requireArrayDestructuring": false,
-
-	"requireEnhancedObjectLiterals": false,
-
-	"requireObjectDestructuring": false,
-
-	"requireEarlyReturn": false
-}
-

+ 0 - 28
node_modules/es-to-primitive/.npmignore

@@ -1,28 +0,0 @@
-# Logs
-logs
-*.log
-
-# Runtime data
-pids
-*.pid
-*.seed
-
-# Directory for instrumented libs generated by jscoverage/JSCover
-lib-cov
-
-# Coverage directory used by tools like istanbul
-coverage
-
-# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
-.grunt
-
-# Compiled binary addons (http://nodejs.org/api/addons.html)
-build/Release
-
-# Dependency directory
-# Commenting this out is preferred by some people, see
-# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
-node_modules
-
-# Users Environment Variables
-.lock-wscript

+ 12 - 67
node_modules/es-to-primitive/.travis.yml

@@ -1,70 +1,15 @@
+version: ~> 1.0
 language: node_js
 language: node_js
-node_js:
-  - "5.3"
-  - "5.2"
-  - "5.1"
-  - "5.0"
-  - "4.2"
-  - "4.1"
-  - "4.0"
-  - "iojs-v3.3"
-  - "iojs-v3.2"
-  - "iojs-v3.1"
-  - "iojs-v3.0"
-  - "iojs-v2.5"
-  - "iojs-v2.4"
-  - "iojs-v2.3"
-  - "iojs-v2.2"
-  - "iojs-v2.1"
-  - "iojs-v2.0"
-  - "iojs-v1.8"
-  - "iojs-v1.7"
-  - "iojs-v1.6"
-  - "iojs-v1.5"
-  - "iojs-v1.4"
-  - "iojs-v1.3"
-  - "iojs-v1.2"
-  - "iojs-v1.1"
-  - "iojs-v1.0"
-  - "0.12"
-  - "0.11"
-  - "0.10"
-  - "0.9"
-  - "0.8"
-  - "0.6"
-  - "0.4"
-before_install:
-  - 'if [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then case "$(npm --version)" in 1.*) npm install -g npm@1.4.28 ;; 2.*) npm install -g npm@2 ;; esac ; fi'
-  - 'if [ "${TRAVIS_NODE_VERSION}" != "0.6" ] && [ "${TRAVIS_NODE_VERSION}" != "0.9" ]; then npm install -g npm; fi'
-script:
-  - 'if [ "${TRAVIS_NODE_VERSION}" != "4.2" ]; then npm run tests-only ; else npm test ; fi'
-sudo: false
+cache:
+  directories:
+    - "$(nvm cache dir)"
+os:
+ - linux
+import:
+ - ljharb/travis-ci:node/all.yml
+ - ljharb/travis-ci:node/pretest.yml
+ - ljharb/travis-ci:node/posttest.yml
+ - ljharb/travis-ci:node/coverage.yml
 matrix:
 matrix:
-  fast_finish: true
   allow_failures:
   allow_failures:
-    - node_js: "5.2"
-    - node_js: "5.1"
-    - node_js: "5.0"
-    - node_js: "4.1"
-    - node_js: "4.0"
-    - node_js: "iojs-v3.2"
-    - node_js: "iojs-v3.1"
-    - node_js: "iojs-v3.0"
-    - node_js: "iojs-v2.4"
-    - node_js: "iojs-v2.3"
-    - node_js: "iojs-v2.2"
-    - node_js: "iojs-v2.1"
-    - node_js: "iojs-v2.0"
-    - node_js: "iojs-v1.7"
-    - node_js: "iojs-v1.6"
-    - node_js: "iojs-v1.5"
-    - node_js: "iojs-v1.4"
-    - node_js: "iojs-v1.3"
-    - node_js: "iojs-v1.2"
-    - node_js: "iojs-v1.1"
-    - node_js: "iojs-v1.0"
-    - node_js: "0.11"
-    - node_js: "0.9"
-    - node_js: "0.8"
-    - node_js: "0.6"
-    - node_js: "0.4"
+    - env: COVERAGE=true

+ 20 - 0
node_modules/es-to-primitive/CHANGELOG.md

@@ -1,3 +1,23 @@
+1.2.1 / 2019-11-08
+=================
+  * [readme] remove testling URLs
+  * [meta] add `funding` field
+  * [meta] create FUNDING.yml
+  * [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `covert`, `replace`, `semver`, `tape`, `function.prototype.name`
+  * [Tests] use shared travis-ci configs
+  * [Tests] Add es5 tests for `symbol` types (#45)
+  * [Tests] use `npx aud` instead of `nsp` or `npm audit` with hoops
+  * [Tests] remove `jscs`
+
+1.2.0 / 2018-09-27
+=================
+  * [New] create ES2015 entry point/property, to replace ES6
+  * [Fix] Ensure optional arguments are not part of the length (#29)
+  * [Deps] update `is-callable`
+  * [Dev Deps] update `tape`, `jscs`, `nsp`, `eslint`, `@ljharb/eslint-config`, `semver`, `object-inspect`, `replace`
+  * [Tests] avoid util.inspect bug with `new Date(NaN)` on node v6.0 and v6.1.
+  * [Tests] up to `node` `v10.11`, `v9.11`, `v8.12`, `v6.14`, `v4.9`
+
 1.1.1 / 2016-01-03
 1.1.1 / 2016-01-03
 =================
 =================
   * [Fix: ES5] fix coercion logic: ES5’s ToPrimitive does not coerce any primitive value, regardless of hint (#2)
   * [Fix: ES5] fix coercion logic: ES5’s ToPrimitive does not coerce any primitive value, regardless of hint (#2)

+ 2 - 6
node_modules/es-to-primitive/README.md

@@ -8,11 +8,9 @@
 
 
 [![npm badge][npm-badge-png]][package-url]
 [![npm badge][npm-badge-png]][package-url]
 
 
-[![browser support][testling-svg]][testling-url]
-
-ECMAScript “ToPrimitive” algorithm. Provides ES5 and ES6 versions.
+ECMAScript “ToPrimitive” algorithm. Provides ES5 and ES2015 versions.
 When different versions of the spec conflict, the default export will be the latest version of the abstract operation.
 When different versions of the spec conflict, the default export will be the latest version of the abstract operation.
-Alternative versions will also be available under an `es5`/`es6`/`es7` exported property if you require a specific version.
+Alternative versions will also be available under an `es5`/`es2015` exported property if you require a specific version.
 
 
 ## Example
 ## Example
 
 
@@ -44,8 +42,6 @@ Simply clone the repo, `npm install`, and run `npm test`
 [deps-url]: https://david-dm.org/ljharb/es-to-primitive
 [deps-url]: https://david-dm.org/ljharb/es-to-primitive
 [dev-deps-svg]: https://david-dm.org/ljharb/es-to-primitive/dev-status.svg
 [dev-deps-svg]: https://david-dm.org/ljharb/es-to-primitive/dev-status.svg
 [dev-deps-url]: https://david-dm.org/ljharb/es-to-primitive#info=devDependencies
 [dev-deps-url]: https://david-dm.org/ljharb/es-to-primitive#info=devDependencies
-[testling-svg]: https://ci.testling.com/ljharb/es-to-primitive.png
-[testling-url]: https://ci.testling.com/ljharb/es-to-primitive
 [npm-badge-png]: https://nodei.co/npm/es-to-primitive.png?downloads=true&stars=true
 [npm-badge-png]: https://nodei.co/npm/es-to-primitive.png?downloads=true&stars=true
 [license-image]: http://img.shields.io/npm/l/es-to-primitive.svg
 [license-image]: http://img.shields.io/npm/l/es-to-primitive.svg
 [license-url]: LICENSE
 [license-url]: LICENSE

+ 14 - 6
node_modules/es-to-primitive/es5.js

@@ -6,10 +6,15 @@ var isPrimitive = require('./helpers/isPrimitive');
 
 
 var isCallable = require('is-callable');
 var isCallable = require('is-callable');
 
 
-// https://es5.github.io/#x8.12
+// http://ecma-international.org/ecma-262/5.1/#sec-8.12.8
 var ES5internalSlots = {
 var ES5internalSlots = {
-	'[[DefaultValue]]': function (O, hint) {
-		var actualHint = hint || (toStr.call(O) === '[object Date]' ? String : Number);
+	'[[DefaultValue]]': function (O) {
+		var actualHint;
+		if (arguments.length > 1) {
+			actualHint = arguments[1];
+		} else {
+			actualHint = toStr.call(O) === '[object Date]' ? String : Number;
+		}
 
 
 		if (actualHint === String || actualHint === Number) {
 		if (actualHint === String || actualHint === Number) {
 			var methods = actualHint === String ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
 			var methods = actualHint === String ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
@@ -28,10 +33,13 @@ var ES5internalSlots = {
 	}
 	}
 };
 };
 
 
-// https://es5.github.io/#x9
-module.exports = function ToPrimitive(input, PreferredType) {
+// http://ecma-international.org/ecma-262/5.1/#sec-9.1
+module.exports = function ToPrimitive(input) {
 	if (isPrimitive(input)) {
 	if (isPrimitive(input)) {
 		return input;
 		return input;
 	}
 	}
-	return ES5internalSlots['[[DefaultValue]]'](input, PreferredType);
+	if (arguments.length > 1) {
+		return ES5internalSlots['[[DefaultValue]]'](input, arguments[1]);
+	}
+	return ES5internalSlots['[[DefaultValue]]'](input);
 };
 };

+ 1 - 72
node_modules/es-to-primitive/es6.js

@@ -1,74 +1,3 @@
 'use strict';
 'use strict';
 
 
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
-
-var isPrimitive = require('./helpers/isPrimitive');
-var isCallable = require('is-callable');
-var isDate = require('is-date-object');
-var isSymbol = require('is-symbol');
-
-var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) {
-	if (typeof O === 'undefined' || O === null) {
-		throw new TypeError('Cannot call method on ' + O);
-	}
-	if (typeof hint !== 'string' || (hint !== 'number' && hint !== 'string')) {
-		throw new TypeError('hint must be "string" or "number"');
-	}
-	var methodNames = hint === 'string' ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
-	var method, result, i;
-	for (i = 0; i < methodNames.length; ++i) {
-		method = O[methodNames[i]];
-		if (isCallable(method)) {
-			result = method.call(O);
-			if (isPrimitive(result)) {
-				return result;
-			}
-		}
-	}
-	throw new TypeError('No default value');
-};
-
-var GetMethod = function GetMethod(O, P) {
-	var func = O[P];
-	if (func !== null && typeof func !== 'undefined') {
-		if (!isCallable(func)) {
-			throw new TypeError(func + ' returned for property ' + P + ' of object ' + O + ' is not a function');
-		}
-		return func;
-	}
-};
-
-// http://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive
-module.exports = function ToPrimitive(input, PreferredType) {
-	if (isPrimitive(input)) {
-		return input;
-	}
-	var hint = 'default';
-	if (arguments.length > 1) {
-		if (PreferredType === String) {
-			hint = 'string';
-		} else if (PreferredType === Number) {
-			hint = 'number';
-		}
-	}
-
-	var exoticToPrim;
-	if (hasSymbols) {
-		if (Symbol.toPrimitive) {
-			exoticToPrim = GetMethod(input, Symbol.toPrimitive);
-		} else if (isSymbol(input)) {
-			exoticToPrim = Symbol.prototype.valueOf;
-		}
-	}
-	if (typeof exoticToPrim !== 'undefined') {
-		var result = exoticToPrim.call(input, hint);
-		if (isPrimitive(result)) {
-			return result;
-		}
-		throw new TypeError('unable to convert exotic object to primitive');
-	}
-	if (hint === 'default' && (isDate(input) || isSymbol(input))) {
-		hint = 'string';
-	}
-	return ordinaryToPrimitive(input, hint === 'default' ? 'number' : hint);
-};
+module.exports = require('./es2015');

+ 2 - 0
node_modules/es-to-primitive/helpers/isPrimitive.js

@@ -1,3 +1,5 @@
+'use strict';
+
 module.exports = function isPrimitive(value) {
 module.exports = function isPrimitive(value) {
 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
 };
 };

+ 6 - 3
node_modules/es-to-primitive/index.js

@@ -2,13 +2,16 @@
 
 
 var ES5 = require('./es5');
 var ES5 = require('./es5');
 var ES6 = require('./es6');
 var ES6 = require('./es6');
+var ES2015 = require('./es2015');
 
 
 if (Object.defineProperty) {
 if (Object.defineProperty) {
-	Object.defineProperty(ES6, 'ES5', { enumerable: false, value: ES5 });
-	Object.defineProperty(ES6, 'ES6', { enumerable: false, value: ES6 });
+	Object.defineProperty(ES2015, 'ES5', { enumerable: false, value: ES5 });
+	Object.defineProperty(ES2015, 'ES6', { enumerable: false, value: ES6 });
+	Object.defineProperty(ES2015, 'ES2015', { enumerable: false, value: ES2015 });
 } else {
 } else {
 	ES6.ES5 = ES5;
 	ES6.ES5 = ES5;
 	ES6.ES6 = ES6;
 	ES6.ES6 = ES6;
+	ES6.ES2015 = ES2015;
 }
 }
 
 
-module.exports = ES6;
+module.exports = ES2015;

+ 43 - 36
node_modules/es-to-primitive/package.json

@@ -1,60 +1,61 @@
 {
 {
-  "_args": [
-    [
-      "es-to-primitive@1.1.1",
-      "D:\\projects\\dealer_front"
-    ]
-  ],
-  "_development": true,
-  "_from": "es-to-primitive@1.1.1",
-  "_id": "es-to-primitive@1.1.1",
+  "_from": "es-to-primitive@^1.2.1",
+  "_id": "es-to-primitive@1.2.1",
   "_inBundle": false,
   "_inBundle": false,
-  "_integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=",
+  "_integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
   "_location": "/es-to-primitive",
   "_location": "/es-to-primitive",
   "_phantomChildren": {},
   "_phantomChildren": {},
   "_requested": {
   "_requested": {
-    "type": "version",
+    "type": "range",
     "registry": true,
     "registry": true,
-    "raw": "es-to-primitive@1.1.1",
+    "raw": "es-to-primitive@^1.2.1",
     "name": "es-to-primitive",
     "name": "es-to-primitive",
     "escapedName": "es-to-primitive",
     "escapedName": "es-to-primitive",
-    "rawSpec": "1.1.1",
+    "rawSpec": "^1.2.1",
     "saveSpec": null,
     "saveSpec": null,
-    "fetchSpec": "1.1.1"
+    "fetchSpec": "^1.2.1"
   },
   },
   "_requiredBy": [
   "_requiredBy": [
     "/es-abstract"
     "/es-abstract"
   ],
   ],
-  "_resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz",
-  "_spec": "1.1.1",
-  "_where": "D:\\projects\\dealer_front",
+  "_resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
+  "_shasum": "e55cd4c9cdc188bcefb03b366c736323fc5c898a",
+  "_spec": "es-to-primitive@^1.2.1",
+  "_where": "D:\\workSpace\\dealer_front\\node_modules\\es-abstract",
   "author": {
   "author": {
-    "name": "Jordan Harband"
+    "name": "Jordan Harband",
+    "email": "ljharb@gmail.com"
   },
   },
   "bugs": {
   "bugs": {
     "url": "https://github.com/ljharb/es-to-primitive/issues"
     "url": "https://github.com/ljharb/es-to-primitive/issues"
   },
   },
+  "bundleDependencies": false,
   "dependencies": {
   "dependencies": {
-    "is-callable": "^1.1.1",
+    "is-callable": "^1.1.4",
     "is-date-object": "^1.0.1",
     "is-date-object": "^1.0.1",
-    "is-symbol": "^1.0.1"
+    "is-symbol": "^1.0.2"
   },
   },
-  "description": "ECMAScript “ToPrimitive” algorithm. Provides ES5 and ES6 versions.",
+  "deprecated": false,
+  "description": "ECMAScript “ToPrimitive” algorithm. Provides ES5 and ES2015 versions.",
   "devDependencies": {
   "devDependencies": {
-    "@ljharb/eslint-config": "^1.6.1",
-    "covert": "^1.1.0",
-    "eslint": "^1.10.3",
+    "@ljharb/eslint-config": "^15.0.0",
+    "covert": "^1.1.1",
+    "eslint": "^6.6.0",
     "foreach": "^2.0.5",
     "foreach": "^2.0.5",
-    "jscs": "^2.7.0",
-    "nsp": "^2.2.0",
+    "function.prototype.name": "^1.1.1",
+    "has-symbols": "^1.0.0",
+    "object-inspect": "^1.6.0",
     "object-is": "^1.0.1",
     "object-is": "^1.0.1",
-    "replace": "^0.3.0",
-    "semver": "^5.1.0",
-    "tape": "^4.4.0"
+    "replace": "^1.1.1",
+    "semver": "^6.3.0",
+    "tape": "^4.11.0"
   },
   },
   "engines": {
   "engines": {
     "node": ">= 0.4"
     "node": ">= 0.4"
   },
   },
+  "funding": {
+    "url": "https://github.com/sponsors/ljharb"
+  },
   "homepage": "https://github.com/ljharb/es-to-primitive#readme",
   "homepage": "https://github.com/ljharb/es-to-primitive#readme",
   "keywords": [
   "keywords": [
     "primitive",
     "primitive",
@@ -62,10 +63,17 @@
     "ecmascript",
     "ecmascript",
     "es5",
     "es5",
     "es6",
     "es6",
+    "es2015",
     "toPrimitive",
     "toPrimitive",
     "coerce",
     "coerce",
     "type",
     "type",
-    "object"
+    "object",
+    "string",
+    "number",
+    "boolean",
+    "symbol",
+    "null",
+    "undefined"
   ],
   ],
   "license": "MIT",
   "license": "MIT",
   "main": "index.js",
   "main": "index.js",
@@ -77,11 +85,10 @@
   "scripts": {
   "scripts": {
     "coverage": "covert test/*.js",
     "coverage": "covert test/*.js",
     "coverage-quiet": "covert test/*.js --quiet",
     "coverage-quiet": "covert test/*.js --quiet",
-    "eslint": "eslint test/*.js *.js",
-    "jscs": "jscs test/*.js *.js",
-    "lint": "npm run jscs && npm run eslint",
-    "security": "nsp check",
-    "test": "npm run lint && npm run tests-only && npm run security",
+    "lint": "eslint .",
+    "posttest": "npx aud",
+    "pretest": "npm run --silent lint",
+    "test": "npm run --silent tests-only",
     "tests-only": "node --es-staging test"
     "tests-only": "node --es-staging test"
   },
   },
   "testling": {
   "testling": {
@@ -102,5 +109,5 @@
       "android-browser/4.2"
       "android-browser/4.2"
     ]
     ]
   },
   },
-  "version": "1.1.1"
+  "version": "1.2.1"
 }
 }

+ 41 - 3
node_modules/es-to-primitive/test/es5.js

@@ -4,7 +4,16 @@ var test = require('tape');
 var toPrimitive = require('../es5');
 var toPrimitive = require('../es5');
 var is = require('object-is');
 var is = require('object-is');
 var forEach = require('foreach');
 var forEach = require('foreach');
-var debug = require('util').inspect;
+var functionName = require('function.prototype.name');
+var debug = require('object-inspect');
+var hasSymbols = require('has-symbols')();
+
+test('function properties', function (t) {
+	t.equal(toPrimitive.length, 1, 'length is 1');
+	t.equal(functionName(toPrimitive), 'ToPrimitive', 'name is ToPrimitive');
+
+	t.end();
+});
 
 
 var primitives = [null, undefined, true, false, 0, -0, 42, NaN, Infinity, -Infinity, '', 'abc'];
 var primitives = [null, undefined, true, false, 0, -0, 42, NaN, Infinity, -Infinity, '', 'abc'];
 
 
@@ -17,6 +26,29 @@ test('primitives', function (t) {
 	t.end();
 	t.end();
 });
 });
 
 
+test('Symbols', { skip: !hasSymbols }, function (t) {
+	var symbols = [
+		Symbol('foo'),
+		Symbol.iterator,
+		Symbol['for']('foo') // eslint-disable-line no-restricted-properties
+	];
+	forEach(symbols, function (sym) {
+		t.equal(toPrimitive(sym), sym, 'toPrimitive(' + debug(sym) + ') returns the same value');
+		t.equal(toPrimitive(sym, String), sym, 'toPrimitive(' + debug(sym) + ', String) returns the same value');
+		t.equal(toPrimitive(sym, Number), sym, 'toPrimitive(' + debug(sym) + ', Number) returns the same value');
+	});
+
+	var primitiveSym = Symbol('primitiveSym');
+	var stringSym = Symbol.prototype.toString.call(primitiveSym);
+	var objectSym = Object(primitiveSym);
+	t.equal(toPrimitive(objectSym), primitiveSym, 'toPrimitive(' + debug(objectSym) + ') returns ' + debug(primitiveSym));
+
+	// This is different from ES2015, as the ES5 algorithm doesn't account for the existence of Symbols:
+	t.equal(toPrimitive(objectSym, String), stringSym, 'toPrimitive(' + debug(objectSym) + ', String) returns ' + debug(stringSym));
+	t.equal(toPrimitive(objectSym, Number), primitiveSym, 'toPrimitive(' + debug(objectSym) + ', Number) returns ' + debug(primitiveSym));
+	t.end();
+});
+
 test('Arrays', function (t) {
 test('Arrays', function (t) {
 	var arrays = [[], ['a', 'b'], [1, 2]];
 	var arrays = [[], ['a', 'b'], [1, 2]];
 	forEach(arrays, function (arr) {
 	forEach(arrays, function (arr) {
@@ -40,9 +72,15 @@ test('Dates', function (t) {
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
-var coercibleFnObject = { valueOf: function () { return function valueOfFn() {}; }, toString: function () { return 42; } };
+var coercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return 42; }
+};
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
-var uncoercibleFnObject = { valueOf: function () { return function valueOfFn() {}; }, toString: function () { return function toStrFn() {}; } };
+var uncoercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return function toStrFn() {}; }
+};
 
 
 test('Objects', function (t) {
 test('Objects', function (t) {
 	t.equal(toPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject with no hint coerces to valueOf');
 	t.equal(toPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject with no hint coerces to valueOf');

+ 26 - 6
node_modules/es-to-primitive/test/es6.js

@@ -4,11 +4,19 @@ var test = require('tape');
 var toPrimitive = require('../es6');
 var toPrimitive = require('../es6');
 var is = require('object-is');
 var is = require('object-is');
 var forEach = require('foreach');
 var forEach = require('foreach');
-var debug = require('util').inspect;
+var functionName = require('function.prototype.name');
+var debug = require('object-inspect');
 
 
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
+var hasSymbols = require('has-symbols')();
 var hasSymbolToPrimitive = hasSymbols && typeof Symbol.toPrimitive === 'symbol';
 var hasSymbolToPrimitive = hasSymbols && typeof Symbol.toPrimitive === 'symbol';
 
 
+test('function properties', function (t) {
+	t.equal(toPrimitive.length, 1, 'length is 1');
+	t.equal(functionName(toPrimitive), 'ToPrimitive', 'name is ToPrimitive');
+
+	t.end();
+});
+
 var primitives = [null, undefined, true, false, 0, -0, 42, NaN, Infinity, -Infinity, '', 'abc'];
 var primitives = [null, undefined, true, false, 0, -0, 42, NaN, Infinity, -Infinity, '', 'abc'];
 
 
 test('primitives', function (t) {
 test('primitives', function (t) {
@@ -21,7 +29,11 @@ test('primitives', function (t) {
 });
 });
 
 
 test('Symbols', { skip: !hasSymbols }, function (t) {
 test('Symbols', { skip: !hasSymbols }, function (t) {
-	var symbols = [Symbol(), Symbol.iterator, Symbol.for('foo')];
+	var symbols = [
+		Symbol('foo'),
+		Symbol.iterator,
+		Symbol['for']('foo') // eslint-disable-line no-restricted-properties
+	];
 	forEach(symbols, function (sym) {
 	forEach(symbols, function (sym) {
 		t.equal(toPrimitive(sym), sym, 'toPrimitive(' + debug(sym) + ') returns the same value');
 		t.equal(toPrimitive(sym), sym, 'toPrimitive(' + debug(sym) + ') returns the same value');
 		t.equal(toPrimitive(sym, String), sym, 'toPrimitive(' + debug(sym) + ', String) returns the same value');
 		t.equal(toPrimitive(sym, String), sym, 'toPrimitive(' + debug(sym) + ', String) returns the same value');
@@ -59,9 +71,15 @@ test('Dates', function (t) {
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
 var coercibleObject = { valueOf: function () { return 3; }, toString: function () { return 42; } };
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var valueOfOnlyObject = { valueOf: function () { return 4; }, toString: function () { return {}; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
 var toStringOnlyObject = { valueOf: function () { return {}; }, toString: function () { return 7; } };
-var coercibleFnObject = { valueOf: function () { return function valueOfFn() {}; }, toString: function () { return 42; } };
+var coercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return 42; }
+};
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
 var uncoercibleObject = { valueOf: function () { return {}; }, toString: function () { return {}; } };
-var uncoercibleFnObject = { valueOf: function () { return function valueOfFn() {}; }, toString: function () { return function toStrFn() {}; } };
+var uncoercibleFnObject = {
+	valueOf: function () { return function valueOfFn() {}; },
+	toString: function () { return function toStrFn() {}; }
+};
 
 
 test('Objects', function (t) {
 test('Objects', function (t) {
 	t.equal(toPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject with no hint coerces to valueOf');
 	t.equal(toPrimitive(coercibleObject), coercibleObject.valueOf(), 'coercibleObject with no hint coerces to valueOf');
@@ -104,7 +122,9 @@ test('Objects', function (t) {
 			sst['throws'](toPrimitive.bind(null, nonFunctionToPrimitive), TypeError, 'Symbol.toPrimitive returning a non-function throws');
 			sst['throws'](toPrimitive.bind(null, nonFunctionToPrimitive), TypeError, 'Symbol.toPrimitive returning a non-function throws');
 
 
 			var uncoercibleToPrimitive = { toString: sst.fail, valueOf: sst.fail };
 			var uncoercibleToPrimitive = { toString: sst.fail, valueOf: sst.fail };
-			uncoercibleToPrimitive[Symbol.toPrimitive] = function (hint) { return { toString: function () { return hint; } }; };
+			uncoercibleToPrimitive[Symbol.toPrimitive] = function (hint) {
+				return { toString: function () { return hint; } };
+			};
 			sst['throws'](toPrimitive.bind(null, uncoercibleToPrimitive), TypeError, 'Symbol.toPrimitive returning an object throws');
 			sst['throws'](toPrimitive.bind(null, uncoercibleToPrimitive), TypeError, 'Symbol.toPrimitive returning an object throws');
 
 
 			var throwingToPrimitive = { toString: sst.fail, valueOf: sst.fail };
 			var throwingToPrimitive = { toString: sst.fail, valueOf: sst.fail };

+ 4 - 1
node_modules/es-to-primitive/test/index.js

@@ -3,15 +3,18 @@
 var toPrimitive = require('../');
 var toPrimitive = require('../');
 var ES5 = require('../es5');
 var ES5 = require('../es5');
 var ES6 = require('../es6');
 var ES6 = require('../es6');
+var ES2015 = require('../es2015');
 
 
 var test = require('tape');
 var test = require('tape');
 
 
 test('default export', function (t) {
 test('default export', function (t) {
-	t.equal(toPrimitive, ES6, 'default export is ES6');
+	t.equal(toPrimitive, ES2015, 'default export is ES2015');
 	t.equal(toPrimitive.ES5, ES5, 'ES5 property has ES5 method');
 	t.equal(toPrimitive.ES5, ES5, 'ES5 property has ES5 method');
 	t.equal(toPrimitive.ES6, ES6, 'ES6 property has ES6 method');
 	t.equal(toPrimitive.ES6, ES6, 'ES6 property has ES6 method');
+	t.equal(toPrimitive.ES2015, ES2015, 'ES2015 property has ES2015 method');
 	t.end();
 	t.end();
 });
 });
 
 
 require('./es5');
 require('./es5');
 require('./es6');
 require('./es6');
+require('./es2015');

+ 1 - 1
node_modules/eventemitter3/README.md

@@ -16,7 +16,7 @@ differences:
 - The `newListener` and `removeListener` events have been removed as they
 - The `newListener` and `removeListener` events have been removed as they
   are useful only in some uncommon use-cases.
   are useful only in some uncommon use-cases.
 - The `setMaxListeners`, `getMaxListeners`, `prependListener` and
 - The `setMaxListeners`, `getMaxListeners`, `prependListener` and
-  `preperndOnceListener` methods are not available.
+  `prependOnceListener` methods are not available.
 - Support for custom context for events so there is no need to use `fn.bind`.
 - Support for custom context for events so there is no need to use `fn.bind`.
 - The `removeListener` method removes all matching listeners, not only the
 - The `removeListener` method removes all matching listeners, not only the
   first.
   first.

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно