The polyfill works in browsers after September 2020 by default (e.g. Safari 14).
If you want to support older browsers, you have to transpile temporal-polyfill-lite itself and inject polyfills for APIs used by it.
The polyfill doesn't rely on BigInt internally, so it works fine even in browsers without support for BigInt, unless you explicitly use APIs accepting or returning BigInt (such as epochNanoseconds getters).
- exponentiation operator (
**): baseline 2017 - spread syntax (
...) in object literal: baseline 2020 - optional catch binding in
catchstatement (try {} catch {}): baseline 2020 - optional chaining operator (
?.): baseline 2020 - nullish coalescing operator (
??): baseline 2020 - logical OR assignment operator (
||=): baseline 2020 - nullish coalescing assignment operator (
??=): baseline 2020
Array.prototype.includes: baseline 2016String.prototype.padStart: baseline 2017String.prototype.padEnd: baseline 2017Object.getOwnPropertyDescriptors: baseline 2017globalThis: baseline 2020String.prototype.matchAll: baseline 2020
If you want to handle time zones:
timeZoneoption inIntl.DateTimeFormatconstructor: baseline 2017Intl.DateTime.prototype.resolvedOptions: baseline 2017Intl.DateTimeFormat.prototype.formatToParts: baseline 2018
If you want to use islamic-umalqura, persian, chinese, or dangi calendars:
calendaroption inIntl.DateTimeFormatconstructor: baseline 2021