fix: only load Promise polyfill if window.Promise is missing #1470
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
es6-promises
doesn't check ifwindow.Promise
exists before overriding it, but instead checks if the browser natively supports Promises by seeing ifPromise.resolve()
returns'[object Promise]'
when passed totoString
:Adding a check before we run the polyfill to see if
window.Promise
exists.I looked at changing to anther promise library that would do the check better, but I'm not sure if @JKODU chose
es6-promsie
for a specific reason or not.promise-polyfill
claims it's <1 kb when gzipped, which appears to be much smaller than es6-promise (2.4 KB gzipped), and it looks to see ifwindow.Promise
exists before polyfilling.Closes: #1468
Reviewer checks
Required fields, to be filled out by PR reviewer(s)