core-js is polyfilling more than needed
While dropping support for Internet Explorer 11, we have found out that core-js polyfills a lot of things, even iof they exist in the target browsers. This is due core-js missing proper compat data, for example: https://github.com/zloirock/core-js/pull/853.
Here is everything that get's polyfilled as of 2020-08-10:
es.array-buffer.slice { "safari":"12" }
es.array.flat { "edge":"17" }
es.array.flat-map { "edge":"17" }
es.array.reverse { "safari":"12" }
es.array.unscopables.flat { "edge":"17", "safari":"12" }
es.array.unscopables.flat-map { "edge":"17", "safari":"12" }
es.number.to-fixed { "edge":"17" }
es.object.assign { "edge":"17" }
es.object.from-entries { "edge":"17", "safari":"12" }
es.promise { "edge":"17", "firefox":"68" }
es.promise.finally { "edge":"17", "firefox":"68", "safari":"12" }
es.regexp.constructor { "edge":"17" }
es.regexp.flags { "edge":"17" }
es.regexp.to-string { "edge":"17" }
es.string.ends-with { "edge":"17" }
es.string.includes { "edge":"17" }
es.string.match { "edge":"17" }
es.string.replace { "edge":"17", "firefox":"68", "safari":"12" }
es.string.search { "edge":"17" }
es.string.split { "edge":"17" }
es.string.starts-with { "edge":"17" }
es.string.trim { "safari":"12" }
es.symbol.description { "edge":"17", "safari":"12" }
es.typed-array.to-locale-string { "edge":"17" }
es.typed-array.uint8-array { "safari":"12" }
esnext.array.last-index { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.delete-all { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.every { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.filter { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.find { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.find-key { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.includes { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.key-of { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.map-keys { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.map-values { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.merge { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.reduce { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.some { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.map.update { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.add-all { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.delete-all { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.difference { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.every { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.filter { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.find { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.intersection { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.is-disjoint-from { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.is-subset-of { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.is-superset-of { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.join { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.map { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.reduce { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.some { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.symmetric-difference { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.set.union { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
esnext.weak-map.delete-all { "chrome":"73", "edge":"17", "firefox":"68", "safari":"12" }
web.dom-collections.iterator { "edge":"17", "safari":"12" }
web.url { "edge":"17", "safari":"12" }
This list was compiled by:
- setting
debug: truein our babel-preset-env config - piping it into a temp file
- removing webpack related output
- grepping for
{and sorting uniquely.