core-js 3.13.0 → 3.13.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.
@@ -5,7 +5,6 @@ var iteratorClose = require('../internals/iterator-close');
5
5
  module.exports = function (iterator, fn, value, ENTRIES) {
6
6
  try {
7
7
  return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
8
- // 7.4.6 IteratorClose(iterator, completion)
9
8
  } catch (error) {
10
9
  iteratorClose(iterator);
11
10
  throw error;
@@ -70,8 +70,9 @@ module.exports = {
70
70
  };
71
71
 
72
72
  redefineAll(C.prototype, {
73
- // 23.1.3.1 Map.prototype.clear()
74
- // 23.2.3.2 Set.prototype.clear()
73
+ // `{ Map, Set }.prototype.clear()` methods
74
+ // https://tc39.es/ecma262/#sec-map.prototype.clear
75
+ // https://tc39.es/ecma262/#sec-set.prototype.clear
75
76
  clear: function clear() {
76
77
  var that = this;
77
78
  var state = getInternalState(that);
@@ -87,8 +88,9 @@ module.exports = {
87
88
  if (DESCRIPTORS) state.size = 0;
88
89
  else that.size = 0;
89
90
  },
90
- // 23.1.3.3 Map.prototype.delete(key)
91
- // 23.2.3.4 Set.prototype.delete(value)
91
+ // `{ Map, Set }.prototype.delete(key)` methods
92
+ // https://tc39.es/ecma262/#sec-map.prototype.delete
93
+ // https://tc39.es/ecma262/#sec-set.prototype.delete
92
94
  'delete': function (key) {
93
95
  var that = this;
94
96
  var state = getInternalState(that);
@@ -106,8 +108,9 @@ module.exports = {
106
108
  else that.size--;
107
109
  } return !!entry;
108
110
  },
109
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
110
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
111
+ // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods
112
+ // https://tc39.es/ecma262/#sec-map.prototype.foreach
113
+ // https://tc39.es/ecma262/#sec-set.prototype.foreach
111
114
  forEach: function forEach(callbackfn /* , that = undefined */) {
112
115
  var state = getInternalState(this);
113
116
  var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
@@ -118,25 +121,29 @@ module.exports = {
118
121
  while (entry && entry.removed) entry = entry.previous;
119
122
  }
120
123
  },
121
- // 23.1.3.7 Map.prototype.has(key)
122
- // 23.2.3.7 Set.prototype.has(value)
124
+ // `{ Map, Set}.prototype.has(key)` methods
125
+ // https://tc39.es/ecma262/#sec-map.prototype.has
126
+ // https://tc39.es/ecma262/#sec-set.prototype.has
123
127
  has: function has(key) {
124
128
  return !!getEntry(this, key);
125
129
  }
126
130
  });
127
131
 
128
132
  redefineAll(C.prototype, IS_MAP ? {
129
- // 23.1.3.6 Map.prototype.get(key)
133
+ // `Map.prototype.get(key)` method
134
+ // https://tc39.es/ecma262/#sec-map.prototype.get
130
135
  get: function get(key) {
131
136
  var entry = getEntry(this, key);
132
137
  return entry && entry.value;
133
138
  },
134
- // 23.1.3.9 Map.prototype.set(key, value)
139
+ // `Map.prototype.set(key, value)` method
140
+ // https://tc39.es/ecma262/#sec-map.prototype.set
135
141
  set: function set(key, value) {
136
142
  return define(this, key === 0 ? 0 : key, value);
137
143
  }
138
144
  } : {
139
- // 23.2.3.1 Set.prototype.add(value)
145
+ // `Set.prototype.add(value)` method
146
+ // https://tc39.es/ecma262/#sec-set.prototype.add
140
147
  add: function add(value) {
141
148
  return define(this, value = value === 0 ? 0 : value, value);
142
149
  }
@@ -152,8 +159,15 @@ module.exports = {
152
159
  var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';
153
160
  var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);
154
161
  var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);
155
- // add .keys, .values, .entries, [@@iterator]
156
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
162
+ // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods
163
+ // https://tc39.es/ecma262/#sec-map.prototype.entries
164
+ // https://tc39.es/ecma262/#sec-map.prototype.keys
165
+ // https://tc39.es/ecma262/#sec-map.prototype.values
166
+ // https://tc39.es/ecma262/#sec-map.prototype-@@iterator
167
+ // https://tc39.es/ecma262/#sec-set.prototype.entries
168
+ // https://tc39.es/ecma262/#sec-set.prototype.keys
169
+ // https://tc39.es/ecma262/#sec-set.prototype.values
170
+ // https://tc39.es/ecma262/#sec-set.prototype-@@iterator
157
171
  defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {
158
172
  setInternalState(this, {
159
173
  type: ITERATOR_NAME,
@@ -180,7 +194,9 @@ module.exports = {
180
194
  return { value: [entry.key, entry.value], done: false };
181
195
  }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
182
196
 
183
- // add [@@species], 23.1.2.2, 23.2.2.2
197
+ // `{ Map, Set }.prototype[@@species]` accessors
198
+ // https://tc39.es/ecma262/#sec-get-map-@@species
199
+ // https://tc39.es/ecma262/#sec-get-set-@@species
184
200
  setSpecies(CONSTRUCTOR_NAME);
185
201
  }
186
202
  };
@@ -75,8 +75,9 @@ module.exports = {
75
75
  };
76
76
 
77
77
  redefineAll(C.prototype, {
78
- // 23.3.3.2 WeakMap.prototype.delete(key)
79
- // 23.4.3.3 WeakSet.prototype.delete(value)
78
+ // `{ WeakMap, WeakSet }.prototype.delete(key)` methods
79
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.delete
80
+ // https://tc39.es/ecma262/#sec-weakset.prototype.delete
80
81
  'delete': function (key) {
81
82
  var state = getInternalState(this);
82
83
  if (!isObject(key)) return false;
@@ -84,8 +85,9 @@ module.exports = {
84
85
  if (data === true) return uncaughtFrozenStore(state)['delete'](key);
85
86
  return data && $has(data, state.id) && delete data[state.id];
86
87
  },
87
- // 23.3.3.4 WeakMap.prototype.has(key)
88
- // 23.4.3.4 WeakSet.prototype.has(value)
88
+ // `{ WeakMap, WeakSet }.prototype.has(key)` methods
89
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.has
90
+ // https://tc39.es/ecma262/#sec-weakset.prototype.has
89
91
  has: function has(key) {
90
92
  var state = getInternalState(this);
91
93
  if (!isObject(key)) return false;
@@ -96,7 +98,8 @@ module.exports = {
96
98
  });
97
99
 
98
100
  redefineAll(C.prototype, IS_MAP ? {
99
- // 23.3.3.3 WeakMap.prototype.get(key)
101
+ // `WeakMap.prototype.get(key)` method
102
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.get
100
103
  get: function get(key) {
101
104
  var state = getInternalState(this);
102
105
  if (isObject(key)) {
@@ -105,12 +108,14 @@ module.exports = {
105
108
  return data ? data[state.id] : undefined;
106
109
  }
107
110
  },
108
- // 23.3.3.5 WeakMap.prototype.set(key, value)
111
+ // `WeakMap.prototype.set(key, value)` method
112
+ // https://tc39.es/ecma262/#sec-weakmap.prototype.set
109
113
  set: function set(key, value) {
110
114
  return define(this, key, value);
111
115
  }
112
116
  } : {
113
- // 23.4.3.1 WeakSet.prototype.add(value)
117
+ // `WeakSet.prototype.add(value)` method
118
+ // https://tc39.es/ecma262/#sec-weakset.prototype.add
114
119
  add: function add(value) {
115
120
  return define(this, value, true);
116
121
  }
@@ -2,7 +2,7 @@ var requireObjectCoercible = require('../internals/require-object-coercible');
2
2
 
3
3
  var quot = /"/g;
4
4
 
5
- // B.2.3.2.1 CreateHTML(string, tag, attribute, value)
5
+ // `CreateHTML` abstract operation
6
6
  // https://tc39.es/ecma262/#sec-createhtml
7
7
  module.exports = function (string, tag, attribute, value) {
8
8
  var S = String(requireObjectCoercible(string));
@@ -2,6 +2,8 @@
2
2
  var anObject = require('../internals/an-object');
3
3
  var toPrimitive = require('../internals/to-primitive');
4
4
 
5
+ // `Date.prototype[@@toPrimitive](hint)` method implementation
6
+ // https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
5
7
  module.exports = function (hint) {
6
8
  if (hint !== 'string' && hint !== 'number' && hint !== 'default') {
7
9
  throw TypeError('Incorrect hint');
@@ -60,7 +60,7 @@ module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, I
60
60
  }
61
61
  }
62
62
 
63
- // fix Array#{values, @@iterator}.name in V8 / FF
63
+ // fix Array.prototype.{ values, @@iterator }.name in V8 / FF
64
64
  if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
65
65
  INCORRECT_VALUES_NAME = true;
66
66
  defaultIterator = function values() { return nativeIterator.call(this); };
@@ -5,6 +5,7 @@ var replace = ''.replace;
5
5
  var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
6
6
  var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
7
7
 
8
+ // `GetSubstitution` abstract operation
8
9
  // https://tc39.es/ecma262/#sec-getsubstitution
9
10
  module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
10
11
  var tailPos = position + matched.length;
package/internals/has.js CHANGED
@@ -2,6 +2,6 @@ var toObject = require('../internals/to-object');
2
2
 
3
3
  var hasOwnProperty = {}.hasOwnProperty;
4
4
 
5
- module.exports = function hasOwn(it, key) {
5
+ module.exports = Object.hasOwn || function hasOwn(it, key) {
6
6
  return hasOwnProperty.call(toObject(it), key);
7
7
  };
@@ -2,7 +2,7 @@ var store = require('../internals/shared-store');
2
2
 
3
3
  var functionToString = Function.toString;
4
4
 
5
- // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
5
+ // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
6
6
  if (typeof store.inspectSource != 'function') {
7
7
  store.inspectSource = function (it) {
8
8
  return functionToString.call(it);
@@ -34,7 +34,8 @@ var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function ()
34
34
 
35
35
  if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
36
36
 
37
- // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
37
+ // `%IteratorPrototype%[@@iterator]()` method
38
+ // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
38
39
  if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {
39
40
  createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
40
41
  }
@@ -4,8 +4,10 @@ var fails = require('../internals/fails');
4
4
 
5
5
  // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
6
6
  module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
7
- return !String(Symbol()) ||
8
- // Chrome 38 Symbol has incorrect toString conversion
7
+ var symbol = Symbol();
8
+ // Chrome 38 Symbol has incorrect toString conversion
9
+ // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
10
+ return !String(symbol) || !(Object(symbol) instanceof Symbol) ||
9
11
  // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
10
12
  !Symbol.sham && V8_VERSION && V8_VERSION < 41;
11
13
  });
@@ -12,7 +12,8 @@ var PromiseCapability = function (C) {
12
12
  this.reject = aFunction(reject);
13
13
  };
14
14
 
15
- // 25.4.1.5 NewPromiseCapability(C)
15
+ // `NewPromiseCapability` abstract operation
16
+ // https://tc39.es/ecma262/#sec-newpromisecapability
16
17
  module.exports.f = function (C) {
17
18
  return new PromiseCapability(C);
18
19
  };
@@ -2,9 +2,14 @@
2
2
  var IS_PURE = require('../internals/is-pure');
3
3
  var global = require('../internals/global');
4
4
  var fails = require('../internals/fails');
5
+ var userAgent = require('../internals/engine-user-agent');
5
6
 
6
7
  // Forced replacement object prototype accessors methods
7
8
  module.exports = IS_PURE || !fails(function () {
9
+ // This feature detection crashes old WebKit
10
+ // https://github.com/zloirock/core-js/issues/232
11
+ var webkit = userAgent.match(/AppleWebKit\/(\d+)\./);
12
+ if (webkit && +webkit[1] < 535) return;
8
13
  var key = Math.random();
9
14
  // In FF throws only define methods
10
15
  // eslint-disable-next-line no-undef, no-useless-call -- required for testing
@@ -4,7 +4,7 @@ var store = require('../internals/shared-store');
4
4
  (module.exports = function (key, value) {
5
5
  return store[key] || (store[key] = value !== undefined ? value : {});
6
6
  })('versions', []).push({
7
- version: '3.13.0',
7
+ version: '3.13.1',
8
8
  mode: IS_PURE ? 'pure' : 'global',
9
9
  copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
10
10
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "core-js",
3
3
  "description": "Standard library",
4
- "version": "3.13.0",
4
+ "version": "3.13.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/zloirock/core-js.git",
@@ -55,5 +55,5 @@
55
55
  "scripts": {
56
56
  "postinstall": "node -e \"try{require('./postinstall')}catch(e){}\""
57
57
  },
58
- "gitHead": "f4307bc98ea7e1ca10b1c6e27847f9faad4a76d3"
58
+ "gitHead": "a05c21cbf99ccb39b75746f3f65cbb91ef80d697"
59
59
  }