core-js 2.2.1 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/bower.json +1 -1
  3. package/build/config.js +13 -3
  4. package/client/core.js +1980 -1641
  5. package/client/core.min.js +4 -4
  6. package/client/core.min.js.map +1 -1
  7. package/client/library.js +1877 -1547
  8. package/client/library.min.js +4 -4
  9. package/client/library.min.js.map +1 -1
  10. package/client/shim.js +1907 -1582
  11. package/client/shim.min.js +4 -4
  12. package/client/shim.min.js.map +1 -1
  13. package/es7/asap.js +2 -0
  14. package/es7/index.js +4 -0
  15. package/es7/observable.js +7 -0
  16. package/es7/symbol.js +3 -0
  17. package/fn/asap.js +2 -0
  18. package/fn/date/to-string.js +2 -2
  19. package/fn/observable.js +7 -0
  20. package/fn/symbol/async-iterator.js +2 -0
  21. package/fn/symbol/has-instance.js +2 -1
  22. package/fn/symbol/index.js +2 -0
  23. package/fn/symbol/is-concat-spreadable.js +1 -1
  24. package/fn/symbol/iterator.js +1 -1
  25. package/fn/symbol/match.js +1 -1
  26. package/fn/symbol/observable.js +2 -0
  27. package/fn/symbol/replace.js +1 -1
  28. package/fn/symbol/search.js +1 -1
  29. package/fn/symbol/species.js +1 -1
  30. package/fn/symbol/split.js +1 -1
  31. package/fn/symbol/to-primitive.js +1 -1
  32. package/fn/symbol/to-string-tag.js +1 -1
  33. package/fn/symbol/unscopables.js +1 -1
  34. package/library/es7/asap.js +2 -0
  35. package/library/es7/index.js +4 -0
  36. package/library/es7/observable.js +7 -0
  37. package/library/es7/symbol.js +3 -0
  38. package/library/fn/asap.js +2 -0
  39. package/library/fn/date/to-string.js +2 -2
  40. package/library/fn/observable.js +7 -0
  41. package/library/fn/symbol/async-iterator.js +2 -0
  42. package/library/fn/symbol/has-instance.js +2 -1
  43. package/library/fn/symbol/index.js +2 -0
  44. package/library/fn/symbol/is-concat-spreadable.js +1 -1
  45. package/library/fn/symbol/iterator.js +1 -1
  46. package/library/fn/symbol/match.js +1 -1
  47. package/library/fn/symbol/observable.js +2 -0
  48. package/library/fn/symbol/replace.js +1 -1
  49. package/library/fn/symbol/search.js +1 -1
  50. package/library/fn/symbol/species.js +1 -1
  51. package/library/fn/symbol/split.js +1 -1
  52. package/library/fn/symbol/to-primitive.js +1 -1
  53. package/library/fn/symbol/to-string-tag.js +1 -1
  54. package/library/fn/symbol/unscopables.js +1 -1
  55. package/library/modules/_a-number-value.js +4 -4
  56. package/library/modules/_array-includes.js +1 -1
  57. package/library/modules/_array-reduce.js +27 -27
  58. package/library/modules/_array-species-constructor.js +16 -0
  59. package/library/modules/_array-species-create.js +3 -13
  60. package/library/modules/_collection-strong.js +0 -1
  61. package/library/modules/_core.js +1 -1
  62. package/library/modules/_create-property.js +8 -0
  63. package/library/modules/_date-to-primitive.js +8 -8
  64. package/library/modules/_enum-bug-keys.js +3 -3
  65. package/library/modules/_for-of.js +12 -6
  66. package/library/modules/_ie8-dom-define.js +2 -2
  67. package/library/modules/_inherit-if-required.js +7 -7
  68. package/library/modules/_iter-detect.js +1 -1
  69. package/library/modules/_math-expm1.js +8 -2
  70. package/library/modules/_microtask.js +58 -48
  71. package/library/modules/_object-create.js +41 -40
  72. package/library/modules/_object-dps.js +12 -12
  73. package/library/modules/_object-forced-pam.js +6 -6
  74. package/library/modules/_object-gopd.js +15 -15
  75. package/library/modules/_object-gopn.js +6 -6
  76. package/library/modules/_object-gpo.js +12 -12
  77. package/library/modules/_object-keys-internal.js +16 -16
  78. package/library/modules/_object-keys.js +6 -6
  79. package/library/modules/_shared-key.js +4 -4
  80. package/library/modules/_strict-method.js +6 -6
  81. package/library/modules/_string-pad.js +1 -2
  82. package/library/modules/_string-ws.js +1 -1
  83. package/library/modules/_typed-array.js +0 -2
  84. package/library/modules/_typed-buffer.js +0 -2
  85. package/library/modules/_wks-define.js +9 -0
  86. package/library/modules/_wks-ext.js +1 -0
  87. package/library/modules/_wks.js +5 -2
  88. package/library/modules/es6.array.every.js +9 -9
  89. package/library/modules/es6.array.filter.js +9 -9
  90. package/library/modules/es6.array.for-each.js +10 -10
  91. package/library/modules/es6.array.from.js +11 -9
  92. package/library/modules/es6.array.index-of.js +14 -9
  93. package/library/modules/es6.array.is-array.js +3 -3
  94. package/library/modules/es6.array.join.js +11 -11
  95. package/library/modules/es6.array.last-index-of.js +21 -17
  96. package/library/modules/es6.array.map.js +9 -9
  97. package/library/modules/es6.array.of.js +3 -2
  98. package/library/modules/es6.array.reduce-right.js +9 -9
  99. package/library/modules/es6.array.reduce.js +9 -9
  100. package/library/modules/es6.array.slice.js +27 -27
  101. package/library/modules/es6.array.some.js +9 -9
  102. package/library/modules/es6.array.sort.js +22 -22
  103. package/library/modules/es6.date.now.js +3 -3
  104. package/library/modules/es6.date.to-iso-string.js +27 -27
  105. package/library/modules/es6.function.bind.js +3 -3
  106. package/library/modules/es6.math.acosh.js +6 -2
  107. package/library/modules/es6.math.asinh.js +4 -2
  108. package/library/modules/es6.math.atanh.js +4 -2
  109. package/library/modules/es6.math.expm1.js +3 -2
  110. package/library/modules/es6.number.to-fixed.js +112 -113
  111. package/library/modules/es6.number.to-precision.js +17 -17
  112. package/library/modules/es6.object.create.js +2 -2
  113. package/library/modules/es6.object.define-properties.js +2 -2
  114. package/library/modules/es6.object.define-property.js +2 -2
  115. package/library/modules/es6.parse-float.js +3 -3
  116. package/library/modules/es6.parse-int.js +3 -3
  117. package/library/modules/es6.promise.js +1 -3
  118. package/library/modules/es6.reflect.apply.js +12 -5
  119. package/library/modules/es6.reflect.construct.js +20 -11
  120. package/library/modules/es6.symbol.js +59 -59
  121. package/library/modules/es6.typed.array-buffer.js +0 -1
  122. package/library/modules/es6.weak-map.js +0 -1
  123. package/library/modules/es7.asap.js +12 -0
  124. package/library/modules/es7.object.define-getter.js +11 -11
  125. package/library/modules/es7.object.define-setter.js +11 -11
  126. package/library/modules/es7.object.enumerable-entries.js +12 -0
  127. package/library/modules/es7.object.enumerable-keys.js +12 -0
  128. package/library/modules/es7.object.enumerable-values.js +12 -0
  129. package/library/modules/es7.object.get-own-property-descriptors.js +8 -12
  130. package/library/modules/es7.object.lookup-getter.js +17 -17
  131. package/library/modules/es7.object.lookup-setter.js +17 -17
  132. package/library/modules/es7.observable.js +199 -0
  133. package/library/modules/es7.string.match-all.js +29 -29
  134. package/library/modules/es7.symbol.async-iterator.js +1 -0
  135. package/library/modules/es7.symbol.observable.js +1 -0
  136. package/library/shim.js +4 -0
  137. package/library/stage/0.js +1 -0
  138. package/library/stage/1.js +3 -2
  139. package/library/stage/2.js +3 -1
  140. package/library/stage/3.js +1 -3
  141. package/library/stage/4.js +3 -1
  142. package/library/stage/pre.js +9 -9
  143. package/modules/_a-number-value.js +4 -4
  144. package/modules/_array-includes.js +1 -1
  145. package/modules/_array-reduce.js +27 -27
  146. package/modules/_array-species-constructor.js +16 -0
  147. package/modules/_array-species-create.js +3 -13
  148. package/modules/_collection-strong.js +0 -1
  149. package/modules/_core.js +1 -1
  150. package/modules/_create-property.js +8 -0
  151. package/modules/_date-to-primitive.js +8 -8
  152. package/modules/_enum-bug-keys.js +3 -3
  153. package/modules/_for-of.js +12 -6
  154. package/modules/_ie8-dom-define.js +2 -2
  155. package/modules/_inherit-if-required.js +7 -7
  156. package/modules/_iter-detect.js +1 -1
  157. package/modules/_math-expm1.js +8 -2
  158. package/modules/_microtask.js +58 -48
  159. package/modules/_object-create.js +41 -40
  160. package/modules/_object-dps.js +12 -12
  161. package/modules/_object-forced-pam.js +6 -6
  162. package/modules/_object-gopd.js +15 -15
  163. package/modules/_object-gopn.js +6 -6
  164. package/modules/_object-gpo.js +12 -12
  165. package/modules/_object-keys-internal.js +16 -16
  166. package/modules/_object-keys.js +6 -6
  167. package/modules/_shared-key.js +4 -4
  168. package/modules/_strict-method.js +6 -6
  169. package/modules/_string-pad.js +1 -2
  170. package/modules/_string-ws.js +1 -1
  171. package/modules/_typed-array.js +0 -2
  172. package/modules/_typed-buffer.js +0 -2
  173. package/modules/_wks-define.js +9 -0
  174. package/modules/_wks-ext.js +1 -0
  175. package/modules/_wks.js +5 -2
  176. package/modules/es6.array.every.js +9 -9
  177. package/modules/es6.array.filter.js +9 -9
  178. package/modules/es6.array.for-each.js +10 -10
  179. package/modules/es6.array.from.js +11 -9
  180. package/modules/es6.array.index-of.js +14 -9
  181. package/modules/es6.array.is-array.js +3 -3
  182. package/modules/es6.array.join.js +11 -11
  183. package/modules/es6.array.last-index-of.js +21 -17
  184. package/modules/es6.array.map.js +9 -9
  185. package/modules/es6.array.of.js +3 -2
  186. package/modules/es6.array.reduce-right.js +9 -9
  187. package/modules/es6.array.reduce.js +9 -9
  188. package/modules/es6.array.slice.js +27 -27
  189. package/modules/es6.array.some.js +9 -9
  190. package/modules/es6.array.sort.js +22 -22
  191. package/modules/es6.date.now.js +3 -3
  192. package/modules/es6.date.to-iso-string.js +27 -27
  193. package/modules/es6.date.to-primitive.js +3 -3
  194. package/modules/es6.function.bind.js +3 -3
  195. package/modules/es6.function.name.js +13 -4
  196. package/modules/es6.math.acosh.js +6 -2
  197. package/modules/es6.math.asinh.js +4 -2
  198. package/modules/es6.math.atanh.js +4 -2
  199. package/modules/es6.math.expm1.js +3 -2
  200. package/modules/es6.number.to-fixed.js +112 -113
  201. package/modules/es6.number.to-precision.js +17 -17
  202. package/modules/es6.object.create.js +2 -2
  203. package/modules/es6.object.define-properties.js +2 -2
  204. package/modules/es6.object.define-property.js +2 -2
  205. package/modules/es6.parse-float.js +3 -3
  206. package/modules/es6.parse-int.js +3 -3
  207. package/modules/es6.promise.js +1 -3
  208. package/modules/es6.reflect.apply.js +12 -5
  209. package/modules/es6.reflect.construct.js +20 -11
  210. package/modules/es6.regexp.to-string.js +24 -24
  211. package/modules/es6.symbol.js +59 -59
  212. package/modules/es6.typed.array-buffer.js +0 -1
  213. package/modules/es6.weak-map.js +0 -1
  214. package/modules/es7.asap.js +12 -0
  215. package/modules/es7.object.define-getter.js +11 -11
  216. package/modules/es7.object.define-setter.js +11 -11
  217. package/modules/es7.object.enumerable-entries.js +12 -0
  218. package/modules/es7.object.enumerable-keys.js +12 -0
  219. package/modules/es7.object.enumerable-values.js +12 -0
  220. package/modules/es7.object.get-own-property-descriptors.js +8 -12
  221. package/modules/es7.object.lookup-getter.js +17 -17
  222. package/modules/es7.object.lookup-setter.js +17 -17
  223. package/modules/es7.observable.js +199 -0
  224. package/modules/es7.string.match-all.js +29 -29
  225. package/modules/es7.symbol.async-iterator.js +1 -0
  226. package/modules/es7.symbol.observable.js +1 -0
  227. package/package.json +15 -13
  228. package/shim.js +4 -0
  229. package/stage/0.js +1 -0
  230. package/stage/1.js +3 -2
  231. package/stage/2.js +3 -1
  232. package/stage/3.js +1 -3
  233. package/stage/4.js +3 -1
  234. package/stage/pre.js +9 -9
  235. package/README.md +0 -1981
package/es7/asap.js ADDED
@@ -0,0 +1,2 @@
1
+ require('../modules/es7.asap');
2
+ module.exports = require('../modules/_core').asap;
package/es7/index.js CHANGED
@@ -5,6 +5,8 @@ require('../modules/es7.string.pad-end');
5
5
  require('../modules/es7.string.trim-left');
6
6
  require('../modules/es7.string.trim-right');
7
7
  require('../modules/es7.string.match-all');
8
+ require('../modules/es7.symbol.async-iterator');
9
+ require('../modules/es7.symbol.observable');
8
10
  require('../modules/es7.object.get-own-property-descriptors');
9
11
  require('../modules/es7.object.values');
10
12
  require('../modules/es7.object.entries');
@@ -29,4 +31,6 @@ require('../modules/es7.reflect.get-own-metadata-keys');
29
31
  require('../modules/es7.reflect.has-metadata');
30
32
  require('../modules/es7.reflect.has-own-metadata');
31
33
  require('../modules/es7.reflect.metadata');
34
+ require('../modules/es7.asap');
35
+ require('../modules/es7.observable');
32
36
  module.exports = require('../modules/_core');
@@ -0,0 +1,7 @@
1
+ require('../modules/es6.object.to-string');
2
+ require('../modules/es6.string.iterator');
3
+ require('../modules/web.dom.iterable');
4
+ require('../modules/es6.promise');
5
+ require('../modules/es7.symbol.observable');
6
+ require('../modules/es7.observable');
7
+ module.exports = require('../modules/_core').Observable;
package/es7/symbol.js ADDED
@@ -0,0 +1,3 @@
1
+ require('../modules/es7.symbol.async-iterator');
2
+ require('../modules/es7.symbol.observable');
3
+ module.exports = require('../modules/_core').Symbol;
package/fn/asap.js ADDED
@@ -0,0 +1,2 @@
1
+ require('../modules/es7.asap');
2
+ module.exports = require('../modules/_core').asap;
@@ -1,5 +1,5 @@
1
- var core = require('../../modules/es6.date.to-string')
2
- , $toString = Date.prototype.toString;
1
+ require('../../modules/es6.date.to-string')
2
+ var $toString = Date.prototype.toString;
3
3
  module.exports = function toString(it){
4
4
  return $toString.call(it);
5
5
  };
@@ -0,0 +1,7 @@
1
+ require('../modules/es6.object.to-string');
2
+ require('../modules/es6.string.iterator');
3
+ require('../modules/web.dom.iterable');
4
+ require('../modules/es6.promise');
5
+ require('../modules/es7.symbol.observable');
6
+ require('../modules/es7.observable');
7
+ module.exports = require('../modules/_core').Observable;
@@ -0,0 +1,2 @@
1
+ require('../../modules/es7.symbol.async-iterator');
2
+ module.exports = require('../../modules/_wks-ext').f('asyncIterator');
@@ -1 +1,2 @@
1
- module.exports = require('../../modules/_wks')('hasInstance');
1
+ require('../../modules/es6.function.has-instance');
2
+ module.exports = require('../../modules/_wks-ext').f('hasInstance');
@@ -1,3 +1,5 @@
1
1
  require('../../modules/es6.symbol');
2
2
  require('../../modules/es6.object.to-string');
3
+ require('../../modules/es7.symbol.async-iterator');
4
+ require('../../modules/es7.symbol.observable');
3
5
  module.exports = require('../../modules/_core').Symbol;
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('isConcatSpreadable');
1
+ module.exports = require('../../modules/_wks-ext').f('isConcatSpreadable');
@@ -1,3 +1,3 @@
1
1
  require('../../modules/es6.string.iterator');
2
2
  require('../../modules/web.dom.iterable');
3
- module.exports = require('../../modules/_wks')('iterator');
3
+ module.exports = require('../../modules/_wks-ext').f('iterator');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.match');
2
- module.exports = require('../../modules/_wks')('match');
2
+ module.exports = require('../../modules/_wks-ext').f('match');
@@ -0,0 +1,2 @@
1
+ require('../../modules/es7.symbol.observable');
2
+ module.exports = require('../../modules/_wks-ext').f('observable');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.replace');
2
- module.exports = require('../../modules/_wks')('replace');
2
+ module.exports = require('../../modules/_wks-ext').f('replace');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.search');
2
- module.exports = require('../../modules/_wks')('search');
2
+ module.exports = require('../../modules/_wks-ext').f('search');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('species');
1
+ module.exports = require('../../modules/_wks-ext').f('species');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.split');
2
- module.exports = require('../../modules/_wks')('split');
2
+ module.exports = require('../../modules/_wks-ext').f('split');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('toPrimitive');
1
+ module.exports = require('../../modules/_wks-ext').f('toPrimitive');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.object.to-string');
2
- module.exports = require('../../modules/_wks')('toStringTag');
2
+ module.exports = require('../../modules/_wks-ext').f('toStringTag');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('unscopables');
1
+ module.exports = require('../../modules/_wks-ext').f('unscopables');
@@ -0,0 +1,2 @@
1
+ require('../modules/es7.asap');
2
+ module.exports = require('../modules/_core').asap;
@@ -5,6 +5,8 @@ require('../modules/es7.string.pad-end');
5
5
  require('../modules/es7.string.trim-left');
6
6
  require('../modules/es7.string.trim-right');
7
7
  require('../modules/es7.string.match-all');
8
+ require('../modules/es7.symbol.async-iterator');
9
+ require('../modules/es7.symbol.observable');
8
10
  require('../modules/es7.object.get-own-property-descriptors');
9
11
  require('../modules/es7.object.values');
10
12
  require('../modules/es7.object.entries');
@@ -29,4 +31,6 @@ require('../modules/es7.reflect.get-own-metadata-keys');
29
31
  require('../modules/es7.reflect.has-metadata');
30
32
  require('../modules/es7.reflect.has-own-metadata');
31
33
  require('../modules/es7.reflect.metadata');
34
+ require('../modules/es7.asap');
35
+ require('../modules/es7.observable');
32
36
  module.exports = require('../modules/_core');
@@ -0,0 +1,7 @@
1
+ require('../modules/es6.object.to-string');
2
+ require('../modules/es6.string.iterator');
3
+ require('../modules/web.dom.iterable');
4
+ require('../modules/es6.promise');
5
+ require('../modules/es7.symbol.observable');
6
+ require('../modules/es7.observable');
7
+ module.exports = require('../modules/_core').Observable;
@@ -0,0 +1,3 @@
1
+ require('../modules/es7.symbol.async-iterator');
2
+ require('../modules/es7.symbol.observable');
3
+ module.exports = require('../modules/_core').Symbol;
@@ -0,0 +1,2 @@
1
+ require('../modules/es7.asap');
2
+ module.exports = require('../modules/_core').asap;
@@ -1,5 +1,5 @@
1
- var core = require('../../modules/es6.date.to-string')
2
- , $toString = Date.prototype.toString;
1
+ require('../../modules/es6.date.to-string')
2
+ var $toString = Date.prototype.toString;
3
3
  module.exports = function toString(it){
4
4
  return $toString.call(it);
5
5
  };
@@ -0,0 +1,7 @@
1
+ require('../modules/es6.object.to-string');
2
+ require('../modules/es6.string.iterator');
3
+ require('../modules/web.dom.iterable');
4
+ require('../modules/es6.promise');
5
+ require('../modules/es7.symbol.observable');
6
+ require('../modules/es7.observable');
7
+ module.exports = require('../modules/_core').Observable;
@@ -0,0 +1,2 @@
1
+ require('../../modules/es7.symbol.async-iterator');
2
+ module.exports = require('../../modules/_wks-ext').f('asyncIterator');
@@ -1 +1,2 @@
1
- module.exports = require('../../modules/_wks')('hasInstance');
1
+ require('../../modules/es6.function.has-instance');
2
+ module.exports = require('../../modules/_wks-ext').f('hasInstance');
@@ -1,3 +1,5 @@
1
1
  require('../../modules/es6.symbol');
2
2
  require('../../modules/es6.object.to-string');
3
+ require('../../modules/es7.symbol.async-iterator');
4
+ require('../../modules/es7.symbol.observable');
3
5
  module.exports = require('../../modules/_core').Symbol;
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('isConcatSpreadable');
1
+ module.exports = require('../../modules/_wks-ext').f('isConcatSpreadable');
@@ -1,3 +1,3 @@
1
1
  require('../../modules/es6.string.iterator');
2
2
  require('../../modules/web.dom.iterable');
3
- module.exports = require('../../modules/_wks')('iterator');
3
+ module.exports = require('../../modules/_wks-ext').f('iterator');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.match');
2
- module.exports = require('../../modules/_wks')('match');
2
+ module.exports = require('../../modules/_wks-ext').f('match');
@@ -0,0 +1,2 @@
1
+ require('../../modules/es7.symbol.observable');
2
+ module.exports = require('../../modules/_wks-ext').f('observable');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.replace');
2
- module.exports = require('../../modules/_wks')('replace');
2
+ module.exports = require('../../modules/_wks-ext').f('replace');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.search');
2
- module.exports = require('../../modules/_wks')('search');
2
+ module.exports = require('../../modules/_wks-ext').f('search');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('species');
1
+ module.exports = require('../../modules/_wks-ext').f('species');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.regexp.split');
2
- module.exports = require('../../modules/_wks')('split');
2
+ module.exports = require('../../modules/_wks-ext').f('split');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('toPrimitive');
1
+ module.exports = require('../../modules/_wks-ext').f('toPrimitive');
@@ -1,2 +1,2 @@
1
1
  require('../../modules/es6.object.to-string');
2
- module.exports = require('../../modules/_wks')('toStringTag');
2
+ module.exports = require('../../modules/_wks-ext').f('toStringTag');
@@ -1 +1 @@
1
- module.exports = require('../../modules/_wks')('unscopables');
1
+ module.exports = require('../../modules/_wks-ext').f('unscopables');
@@ -1,5 +1,5 @@
1
- var cof = require('./_cof');
2
- module.exports = function(it, msg){
3
- if(typeof it != 'number' && cof(it) != 'Number')throw TypeError(msg);
4
- return +it;
1
+ var cof = require('./_cof');
2
+ module.exports = function(it, msg){
3
+ if(typeof it != 'number' && cof(it) != 'Number')throw TypeError(msg);
4
+ return +it;
5
5
  };
@@ -15,7 +15,7 @@ module.exports = function(IS_INCLUDES){
15
15
  if(value != value)return true;
16
16
  // Array#toIndex ignores holes, Array#includes - not
17
17
  } else for(;length > index; index++)if(IS_INCLUDES || index in O){
18
- if(O[index] === el)return IS_INCLUDES || index;
18
+ if(O[index] === el)return IS_INCLUDES || index || 0;
19
19
  } return !IS_INCLUDES && -1;
20
20
  };
21
21
  };
@@ -1,28 +1,28 @@
1
- var aFunction = require('./_a-function')
2
- , toObject = require('./_to-object')
3
- , IObject = require('./_iobject')
4
- , toLength = require('./_to-length');
5
-
6
- module.exports = function(that, callbackfn, aLen, memo, isRight){
7
- aFunction(callbackfn);
8
- var O = toObject(that)
9
- , self = IObject(O)
10
- , length = toLength(O.length)
11
- , index = isRight ? length - 1 : 0
12
- , i = isRight ? -1 : 1;
13
- if(aLen < 2)for(;;){
14
- if(index in self){
15
- memo = self[index];
16
- index += i;
17
- break;
18
- }
19
- index += i;
20
- if(isRight ? index < 0 : length <= index){
21
- throw TypeError('Reduce of empty array with no initial value');
22
- }
23
- }
24
- for(;isRight ? index >= 0 : length > index; index += i)if(index in self){
25
- memo = callbackfn(memo, self[index], index, O);
26
- }
27
- return memo;
1
+ var aFunction = require('./_a-function')
2
+ , toObject = require('./_to-object')
3
+ , IObject = require('./_iobject')
4
+ , toLength = require('./_to-length');
5
+
6
+ module.exports = function(that, callbackfn, aLen, memo, isRight){
7
+ aFunction(callbackfn);
8
+ var O = toObject(that)
9
+ , self = IObject(O)
10
+ , length = toLength(O.length)
11
+ , index = isRight ? length - 1 : 0
12
+ , i = isRight ? -1 : 1;
13
+ if(aLen < 2)for(;;){
14
+ if(index in self){
15
+ memo = self[index];
16
+ index += i;
17
+ break;
18
+ }
19
+ index += i;
20
+ if(isRight ? index < 0 : length <= index){
21
+ throw TypeError('Reduce of empty array with no initial value');
22
+ }
23
+ }
24
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in self){
25
+ memo = callbackfn(memo, self[index], index, O);
26
+ }
27
+ return memo;
28
28
  };
@@ -0,0 +1,16 @@
1
+ var isObject = require('./_is-object')
2
+ , isArray = require('./_is-array')
3
+ , SPECIES = require('./_wks')('species');
4
+
5
+ module.exports = function(original){
6
+ var C;
7
+ if(isArray(original)){
8
+ C = original.constructor;
9
+ // cross-realm fallback
10
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
11
+ if(isObject(C)){
12
+ C = C[SPECIES];
13
+ if(C === null)C = undefined;
14
+ }
15
+ } return C === undefined ? Array : C;
16
+ };
@@ -1,16 +1,6 @@
1
1
  // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
2
- var isObject = require('./_is-object')
3
- , isArray = require('./_is-array')
4
- , SPECIES = require('./_wks')('species');
2
+ var speciesConstructor = require('./_array-species-constructor');
3
+
5
4
  module.exports = function(original, length){
6
- var C;
7
- if(isArray(original)){
8
- C = original.constructor;
9
- // cross-realm fallback
10
- if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
11
- if(isObject(C)){
12
- C = C[SPECIES];
13
- if(C === null)C = undefined;
14
- }
15
- } return new (C === undefined ? Array : C)(length);
5
+ return new (speciesConstructor(original))(length);
16
6
  };
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
  var dP = require('./_object-dp').f
3
3
  , create = require('./_object-create')
4
- , hide = require('./_hide')
5
4
  , redefineAll = require('./_redefine-all')
6
5
  , ctx = require('./_ctx')
7
6
  , anInstance = require('./_an-instance')
@@ -1,2 +1,2 @@
1
- var core = module.exports = {version: '2.2.1'};
1
+ var core = module.exports = {version: '2.4.0'};
2
2
  if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+ var $defineProperty = require('./_object-dp')
3
+ , createDesc = require('./_property-desc');
4
+
5
+ module.exports = function(object, index, value){
6
+ if(index in object)$defineProperty.f(object, index, createDesc(0, value));
7
+ else object[index] = value;
8
+ };
@@ -1,9 +1,9 @@
1
- 'use strict';
2
- var anObject = require('./_an-object')
3
- , toPrimitive = require('./_to-primitive')
4
- , NUMBER = 'number';
5
-
6
- module.exports = function(hint){
7
- if(hint !== 'string' && hint !== NUMBER && hint !== 'default')throw TypeError('Incorrect hint');
8
- return toPrimitive(anObject(this), hint != NUMBER);
1
+ 'use strict';
2
+ var anObject = require('./_an-object')
3
+ , toPrimitive = require('./_to-primitive')
4
+ , NUMBER = 'number';
5
+
6
+ module.exports = function(hint){
7
+ if(hint !== 'string' && hint !== NUMBER && hint !== 'default')throw TypeError('Incorrect hint');
8
+ return toPrimitive(anObject(this), hint != NUMBER);
9
9
  };
@@ -1,4 +1,4 @@
1
- // IE 8- don't enum bug keys
2
- module.exports = (
3
- 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
1
+ // IE 8- don't enum bug keys
2
+ module.exports = (
3
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
4
4
  ).split(',');
@@ -3,17 +3,23 @@ var ctx = require('./_ctx')
3
3
  , isArrayIter = require('./_is-array-iter')
4
4
  , anObject = require('./_an-object')
5
5
  , toLength = require('./_to-length')
6
- , getIterFn = require('./core.get-iterator-method');
7
- module.exports = function(iterable, entries, fn, that, ITERATOR){
6
+ , getIterFn = require('./core.get-iterator-method')
7
+ , BREAK = {}
8
+ , RETURN = {};
9
+ var exports = module.exports = function(iterable, entries, fn, that, ITERATOR){
8
10
  var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)
9
11
  , f = ctx(fn, that, entries ? 2 : 1)
10
12
  , index = 0
11
- , length, step, iterator;
13
+ , length, step, iterator, result;
12
14
  if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
13
15
  // fast case for arrays with default iterator
14
16
  if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
15
- entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
17
+ result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
18
+ if(result === BREAK || result === RETURN)return result;
16
19
  } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
17
- call(iterator, f, step.value, entries);
20
+ result = call(iterator, f, step.value, entries);
21
+ if(result === BREAK || result === RETURN)return result;
18
22
  }
19
- };
23
+ };
24
+ exports.BREAK = BREAK;
25
+ exports.RETURN = RETURN;
@@ -1,3 +1,3 @@
1
- module.exports = !require('./_descriptors') && !require('./_fails')(function(){
2
- return Object.defineProperty(require('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7;
1
+ module.exports = !require('./_descriptors') && !require('./_fails')(function(){
2
+ return Object.defineProperty(require('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7;
3
3
  });
@@ -1,8 +1,8 @@
1
- var isObject = require('./_is-object')
2
- , setPrototypeOf = require('./_set-proto').set;
3
- module.exports = function(that, target, C){
4
- var P, S = target.constructor;
5
- if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){
6
- setPrototypeOf(that, P);
7
- } return that;
1
+ var isObject = require('./_is-object')
2
+ , setPrototypeOf = require('./_set-proto').set;
3
+ module.exports = function(that, target, C){
4
+ var P, S = target.constructor;
5
+ if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){
6
+ setPrototypeOf(that, P);
7
+ } return that;
8
8
  };
@@ -13,7 +13,7 @@ module.exports = function(exec, skipClosing){
13
13
  try {
14
14
  var arr = [7]
15
15
  , iter = arr[ITERATOR]();
16
- iter.next = function(){ safe = true; };
16
+ iter.next = function(){ return {done: safe = true}; };
17
17
  arr[ITERATOR] = function(){ return iter; };
18
18
  exec(arr);
19
19
  } catch(e){ /* empty */ }
@@ -1,4 +1,10 @@
1
1
  // 20.2.2.14 Math.expm1(x)
2
- module.exports = Math.expm1 || function expm1(x){
2
+ var $expm1 = Math.expm1;
3
+ module.exports = (!$expm1
4
+ // Old FF bug
5
+ || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168
6
+ // Tor Browser bug
7
+ || $expm1(-2e-17) != -2e-17
8
+ ) ? function expm1(x){
3
9
  return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
4
- };
10
+ } : $expm1;
@@ -3,56 +3,66 @@ var global = require('./_global')
3
3
  , Observer = global.MutationObserver || global.WebKitMutationObserver
4
4
  , process = global.process
5
5
  , Promise = global.Promise
6
- , isNode = require('./_cof')(process) == 'process'
7
- , head, last, notify;
6
+ , isNode = require('./_cof')(process) == 'process';
8
7
 
9
- var flush = function(){
10
- var parent, fn;
11
- if(isNode && (parent = process.domain))parent.exit();
12
- while(head){
13
- fn = head.fn;
14
- fn(); // <- currently we use it only for Promise - try / catch not required
15
- head = head.next;
16
- } last = undefined;
17
- if(parent)parent.enter();
18
- };
8
+ module.exports = function(){
9
+ var head, last, notify;
19
10
 
20
- // Node.js
21
- if(isNode){
22
- notify = function(){
23
- process.nextTick(flush);
11
+ var flush = function(){
12
+ var parent, fn;
13
+ if(isNode && (parent = process.domain))parent.exit();
14
+ while(head){
15
+ fn = head.fn;
16
+ head = head.next;
17
+ try {
18
+ fn();
19
+ } catch(e){
20
+ if(head)notify();
21
+ else last = undefined;
22
+ throw e;
23
+ }
24
+ } last = undefined;
25
+ if(parent)parent.enter();
24
26
  };
25
- // browsers with MutationObserver
26
- } else if(Observer){
27
- var toggle = true
28
- , node = document.createTextNode('');
29
- new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
30
- notify = function(){
31
- node.data = toggle = !toggle;
32
- };
33
- // environments with maybe non-completely correct, but existent Promise
34
- } else if(Promise && Promise.resolve){
35
- notify = function(){
36
- Promise.resolve().then(flush);
37
- };
38
- // for other environments - macrotask based on:
39
- // - setImmediate
40
- // - MessageChannel
41
- // - window.postMessag
42
- // - onreadystatechange
43
- // - setTimeout
44
- } else {
45
- notify = function(){
46
- // strange IE + webpack dev server bug - use .call(global)
47
- macrotask.call(global, flush);
48
- };
49
- }
50
27
 
51
- module.exports = function(fn){
52
- var task = {fn: fn, next: undefined};
53
- if(last)last.next = task;
54
- if(!head){
55
- head = task;
56
- notify();
57
- } last = task;
28
+ // Node.js
29
+ if(isNode){
30
+ notify = function(){
31
+ process.nextTick(flush);
32
+ };
33
+ // browsers with MutationObserver
34
+ } else if(Observer){
35
+ var toggle = true
36
+ , node = document.createTextNode('');
37
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
38
+ notify = function(){
39
+ node.data = toggle = !toggle;
40
+ };
41
+ // environments with maybe non-completely correct, but existent Promise
42
+ } else if(Promise && Promise.resolve){
43
+ var promise = Promise.resolve();
44
+ notify = function(){
45
+ promise.then(flush);
46
+ };
47
+ // for other environments - macrotask based on:
48
+ // - setImmediate
49
+ // - MessageChannel
50
+ // - window.postMessag
51
+ // - onreadystatechange
52
+ // - setTimeout
53
+ } else {
54
+ notify = function(){
55
+ // strange IE + webpack dev server bug - use .call(global)
56
+ macrotask.call(global, flush);
57
+ };
58
+ }
59
+
60
+ return function(fn){
61
+ var task = {fn: fn, next: undefined};
62
+ if(last)last.next = task;
63
+ if(!head){
64
+ head = task;
65
+ notify();
66
+ } last = task;
67
+ };
58
68
  };