Package Exports
- @shgysk8zer0/polyfills
- @shgysk8zer0/polyfills/CSSStyleSheet
- @shgysk8zer0/polyfills/CSSStyleSheet.cjs
- @shgysk8zer0/polyfills/CSSStyleSheet.js
- @shgysk8zer0/polyfills/CSSStyleSheet.mjs
- @shgysk8zer0/polyfills/Document
- @shgysk8zer0/polyfills/Document.cjs
- @shgysk8zer0/polyfills/Document.js
- @shgysk8zer0/polyfills/Document.mjs
- @shgysk8zer0/polyfills/JSON
- @shgysk8zer0/polyfills/JSON.cjs
- @shgysk8zer0/polyfills/JSON.js
- @shgysk8zer0/polyfills/JSON.mjs
- @shgysk8zer0/polyfills/Record
- @shgysk8zer0/polyfills/Record.cjs
- @shgysk8zer0/polyfills/Record.js
- @shgysk8zer0/polyfills/Record.mjs
- @shgysk8zer0/polyfills/ShadowRoot
- @shgysk8zer0/polyfills/ShadowRoot.cjs
- @shgysk8zer0/polyfills/ShadowRoot.js
- @shgysk8zer0/polyfills/ShadowRoot.mjs
- @shgysk8zer0/polyfills/Tuple
- @shgysk8zer0/polyfills/Tuple.cjs
- @shgysk8zer0/polyfills/Tuple.js
- @shgysk8zer0/polyfills/Tuple.mjs
- @shgysk8zer0/polyfills/abort
- @shgysk8zer0/polyfills/abort.cjs
- @shgysk8zer0/polyfills/abort.js
- @shgysk8zer0/polyfills/abort.mjs
- @shgysk8zer0/polyfills/all
- @shgysk8zer0/polyfills/all.cjs
- @shgysk8zer0/polyfills/all.js
- @shgysk8zer0/polyfills/all.min
- @shgysk8zer0/polyfills/all.min.cjs
- @shgysk8zer0/polyfills/all.min.js
- @shgysk8zer0/polyfills/all.min.mjs
- @shgysk8zer0/polyfills/all.mjs
- @shgysk8zer0/polyfills/animation
- @shgysk8zer0/polyfills/animation.cjs
- @shgysk8zer0/polyfills/animation.js
- @shgysk8zer0/polyfills/animation.mjs
- @shgysk8zer0/polyfills/aom
- @shgysk8zer0/polyfills/aom.cjs
- @shgysk8zer0/polyfills/aom.js
- @shgysk8zer0/polyfills/aom.mjs
- @shgysk8zer0/polyfills/appBadge
- @shgysk8zer0/polyfills/appBadge.cjs
- @shgysk8zer0/polyfills/appBadge.js
- @shgysk8zer0/polyfills/appBadge.mjs
- @shgysk8zer0/polyfills/array
- @shgysk8zer0/polyfills/array.cjs
- @shgysk8zer0/polyfills/array.js
- @shgysk8zer0/polyfills/array.mjs
- @shgysk8zer0/polyfills/assets/CookieStore
- @shgysk8zer0/polyfills/assets/CookieStore.cjs
- @shgysk8zer0/polyfills/assets/CookieStore.js
- @shgysk8zer0/polyfills/assets/CookieStore.mjs
- @shgysk8zer0/polyfills/assets/Lock
- @shgysk8zer0/polyfills/assets/Lock.cjs
- @shgysk8zer0/polyfills/assets/Lock.js
- @shgysk8zer0/polyfills/assets/Lock.mjs
- @shgysk8zer0/polyfills/assets/LockManager
- @shgysk8zer0/polyfills/assets/LockManager.cjs
- @shgysk8zer0/polyfills/assets/LockManager.js
- @shgysk8zer0/polyfills/assets/LockManager.mjs
- @shgysk8zer0/polyfills/assets/Scheduler
- @shgysk8zer0/polyfills/assets/Scheduler.cjs
- @shgysk8zer0/polyfills/assets/Scheduler.js
- @shgysk8zer0/polyfills/assets/Scheduler.mjs
- @shgysk8zer0/polyfills/assets/TextDecoder
- @shgysk8zer0/polyfills/assets/TextDecoder.cjs
- @shgysk8zer0/polyfills/assets/TextDecoder.js
- @shgysk8zer0/polyfills/assets/TextDecoder.mjs
- @shgysk8zer0/polyfills/assets/TextEncoder
- @shgysk8zer0/polyfills/assets/TextEncoder.cjs
- @shgysk8zer0/polyfills/assets/TextEncoder.js
- @shgysk8zer0/polyfills/assets/TextEncoder.mjs
- @shgysk8zer0/polyfills/assets/adoptedStylesheets
- @shgysk8zer0/polyfills/assets/adoptedStylesheets.cjs
- @shgysk8zer0/polyfills/assets/adoptedStylesheets.js
- @shgysk8zer0/polyfills/assets/adoptedStylesheets.mjs
- @shgysk8zer0/polyfills/assets/attributes
- @shgysk8zer0/polyfills/assets/attributes.cjs
- @shgysk8zer0/polyfills/assets/attributes.js
- @shgysk8zer0/polyfills/assets/attributes.mjs
- @shgysk8zer0/polyfills/assets/dedent
- @shgysk8zer0/polyfills/assets/dedent.cjs
- @shgysk8zer0/polyfills/assets/dedent.js
- @shgysk8zer0/polyfills/assets/dedent.mjs
- @shgysk8zer0/polyfills/assets/error
- @shgysk8zer0/polyfills/assets/error.cjs
- @shgysk8zer0/polyfills/assets/error.js
- @shgysk8zer0/polyfills/assets/error.mjs
- @shgysk8zer0/polyfills/assets/namespaces
- @shgysk8zer0/polyfills/assets/namespaces.cjs
- @shgysk8zer0/polyfills/assets/namespaces.js
- @shgysk8zer0/polyfills/assets/namespaces.mjs
- @shgysk8zer0/polyfills/assets/trust
- @shgysk8zer0/polyfills/assets/trust.cjs
- @shgysk8zer0/polyfills/assets/trust.js
- @shgysk8zer0/polyfills/assets/trust.mjs
- @shgysk8zer0/polyfills/assets/url-pattern
- @shgysk8zer0/polyfills/assets/url-pattern.cjs
- @shgysk8zer0/polyfills/assets/url-pattern.js
- @shgysk8zer0/polyfills/assets/url-pattern.mjs
- @shgysk8zer0/polyfills/assets/utility
- @shgysk8zer0/polyfills/assets/utility.cjs
- @shgysk8zer0/polyfills/assets/utility.js
- @shgysk8zer0/polyfills/assets/utility.mjs
- @shgysk8zer0/polyfills/blob
- @shgysk8zer0/polyfills/blob.cjs
- @shgysk8zer0/polyfills/blob.js
- @shgysk8zer0/polyfills/blob.mjs
- @shgysk8zer0/polyfills/browser
- @shgysk8zer0/polyfills/browser.cjs
- @shgysk8zer0/polyfills/browser.js
- @shgysk8zer0/polyfills/browser.min
- @shgysk8zer0/polyfills/browser.min.cjs
- @shgysk8zer0/polyfills/browser.min.js
- @shgysk8zer0/polyfills/browser.min.mjs
- @shgysk8zer0/polyfills/browser.mjs
- @shgysk8zer0/polyfills/close-watcher
- @shgysk8zer0/polyfills/close-watcher.cjs
- @shgysk8zer0/polyfills/close-watcher.js
- @shgysk8zer0/polyfills/close-watcher.mjs
- @shgysk8zer0/polyfills/cookieStore
- @shgysk8zer0/polyfills/cookieStore.cjs
- @shgysk8zer0/polyfills/cookieStore.js
- @shgysk8zer0/polyfills/cookieStore.mjs
- @shgysk8zer0/polyfills/crypto
- @shgysk8zer0/polyfills/crypto.cjs
- @shgysk8zer0/polyfills/crypto.js
- @shgysk8zer0/polyfills/crypto.mjs
- @shgysk8zer0/polyfills/deprecated/sanitizer
- @shgysk8zer0/polyfills/deprecated/sanitizer.cjs
- @shgysk8zer0/polyfills/deprecated/sanitizer.js
- @shgysk8zer0/polyfills/deprecated/sanitizer.mjs
- @shgysk8zer0/polyfills/deprefixer
- @shgysk8zer0/polyfills/deprefixer.cjs
- @shgysk8zer0/polyfills/deprefixer.js
- @shgysk8zer0/polyfills/deprefixer.mjs
- @shgysk8zer0/polyfills/element
- @shgysk8zer0/polyfills/element.cjs
- @shgysk8zer0/polyfills/element.js
- @shgysk8zer0/polyfills/element.mjs
- @shgysk8zer0/polyfills/elementInternals
- @shgysk8zer0/polyfills/elementInternals.cjs
- @shgysk8zer0/polyfills/elementInternals.js
- @shgysk8zer0/polyfills/elementInternals.mjs
- @shgysk8zer0/polyfills/errors
- @shgysk8zer0/polyfills/errors.cjs
- @shgysk8zer0/polyfills/errors.js
- @shgysk8zer0/polyfills/errors.mjs
- @shgysk8zer0/polyfills/function
- @shgysk8zer0/polyfills/function.cjs
- @shgysk8zer0/polyfills/function.js
- @shgysk8zer0/polyfills/function.mjs
- @shgysk8zer0/polyfills/globalThis
- @shgysk8zer0/polyfills/globalThis.cjs
- @shgysk8zer0/polyfills/globalThis.js
- @shgysk8zer0/polyfills/globalThis.mjs
- @shgysk8zer0/polyfills/iterator
- @shgysk8zer0/polyfills/iterator.cjs
- @shgysk8zer0/polyfills/iterator.js
- @shgysk8zer0/polyfills/iterator.mjs
- @shgysk8zer0/polyfills/legacy
- @shgysk8zer0/polyfills/legacy.cjs
- @shgysk8zer0/polyfills/legacy.js
- @shgysk8zer0/polyfills/legacy.mjs
- @shgysk8zer0/polyfills/legacy/array
- @shgysk8zer0/polyfills/legacy/array.cjs
- @shgysk8zer0/polyfills/legacy/array.js
- @shgysk8zer0/polyfills/legacy/array.mjs
- @shgysk8zer0/polyfills/legacy/dialog
- @shgysk8zer0/polyfills/legacy/dialog.cjs
- @shgysk8zer0/polyfills/legacy/dialog.js
- @shgysk8zer0/polyfills/legacy/dialog.mjs
- @shgysk8zer0/polyfills/legacy/element
- @shgysk8zer0/polyfills/legacy/element.cjs
- @shgysk8zer0/polyfills/legacy/element.js
- @shgysk8zer0/polyfills/legacy/element.mjs
- @shgysk8zer0/polyfills/legacy/map
- @shgysk8zer0/polyfills/legacy/map.cjs
- @shgysk8zer0/polyfills/legacy/map.js
- @shgysk8zer0/polyfills/legacy/map.mjs
- @shgysk8zer0/polyfills/legacy/object
- @shgysk8zer0/polyfills/legacy/object.cjs
- @shgysk8zer0/polyfills/legacy/object.js
- @shgysk8zer0/polyfills/legacy/object.mjs
- @shgysk8zer0/polyfills/legacy/set
- @shgysk8zer0/polyfills/legacy/set.cjs
- @shgysk8zer0/polyfills/legacy/set.js
- @shgysk8zer0/polyfills/legacy/set.mjs
- @shgysk8zer0/polyfills/locks
- @shgysk8zer0/polyfills/locks.cjs
- @shgysk8zer0/polyfills/locks.js
- @shgysk8zer0/polyfills/locks.mjs
- @shgysk8zer0/polyfills/map
- @shgysk8zer0/polyfills/map.cjs
- @shgysk8zer0/polyfills/map.js
- @shgysk8zer0/polyfills/map.mjs
- @shgysk8zer0/polyfills/match-media
- @shgysk8zer0/polyfills/match-media.cjs
- @shgysk8zer0/polyfills/match-media.js
- @shgysk8zer0/polyfills/match-media.mjs
- @shgysk8zer0/polyfills/math
- @shgysk8zer0/polyfills/math.cjs
- @shgysk8zer0/polyfills/math.js
- @shgysk8zer0/polyfills/math.mjs
- @shgysk8zer0/polyfills/methods/dom
- @shgysk8zer0/polyfills/methods/dom.cjs
- @shgysk8zer0/polyfills/methods/dom.js
- @shgysk8zer0/polyfills/methods/dom.mjs
- @shgysk8zer0/polyfills/navigator
- @shgysk8zer0/polyfills/navigator.cjs
- @shgysk8zer0/polyfills/navigator.js
- @shgysk8zer0/polyfills/navigator.mjs
- @shgysk8zer0/polyfills/node
- @shgysk8zer0/polyfills/node.cjs
- @shgysk8zer0/polyfills/node.js
- @shgysk8zer0/polyfills/node.min
- @shgysk8zer0/polyfills/node.min.cjs
- @shgysk8zer0/polyfills/node.min.js
- @shgysk8zer0/polyfills/node.min.mjs
- @shgysk8zer0/polyfills/node.mjs
- @shgysk8zer0/polyfills/number
- @shgysk8zer0/polyfills/number.cjs
- @shgysk8zer0/polyfills/number.js
- @shgysk8zer0/polyfills/number.mjs
- @shgysk8zer0/polyfills/object
- @shgysk8zer0/polyfills/object.cjs
- @shgysk8zer0/polyfills/object.js
- @shgysk8zer0/polyfills/object.mjs
- @shgysk8zer0/polyfills/performance
- @shgysk8zer0/polyfills/performance.cjs
- @shgysk8zer0/polyfills/performance.js
- @shgysk8zer0/polyfills/performance.mjs
- @shgysk8zer0/polyfills/popover
- @shgysk8zer0/polyfills/popover.cjs
- @shgysk8zer0/polyfills/popover.js
- @shgysk8zer0/polyfills/popover.mjs
- @shgysk8zer0/polyfills/promise
- @shgysk8zer0/polyfills/promise.cjs
- @shgysk8zer0/polyfills/promise.js
- @shgysk8zer0/polyfills/promise.mjs
- @shgysk8zer0/polyfills/regexp
- @shgysk8zer0/polyfills/regexp.cjs
- @shgysk8zer0/polyfills/regexp.js
- @shgysk8zer0/polyfills/regexp.mjs
- @shgysk8zer0/polyfills/request
- @shgysk8zer0/polyfills/request.cjs
- @shgysk8zer0/polyfills/request.js
- @shgysk8zer0/polyfills/request.mjs
- @shgysk8zer0/polyfills/response
- @shgysk8zer0/polyfills/response.cjs
- @shgysk8zer0/polyfills/response.js
- @shgysk8zer0/polyfills/response.mjs
- @shgysk8zer0/polyfills/sanitizer
- @shgysk8zer0/polyfills/sanitizer.cjs
- @shgysk8zer0/polyfills/sanitizer.js
- @shgysk8zer0/polyfills/sanitizer.mjs
- @shgysk8zer0/polyfills/scheduler
- @shgysk8zer0/polyfills/scheduler.cjs
- @shgysk8zer0/polyfills/scheduler.js
- @shgysk8zer0/polyfills/scheduler.mjs
- @shgysk8zer0/polyfills/secure-context
- @shgysk8zer0/polyfills/secure-context.cjs
- @shgysk8zer0/polyfills/secure-context.js
- @shgysk8zer0/polyfills/secure-context.mjs
- @shgysk8zer0/polyfills/set
- @shgysk8zer0/polyfills/set.cjs
- @shgysk8zer0/polyfills/set.js
- @shgysk8zer0/polyfills/set.mjs
- @shgysk8zer0/polyfills/share
- @shgysk8zer0/polyfills/share.cjs
- @shgysk8zer0/polyfills/share.js
- @shgysk8zer0/polyfills/share.mjs
- @shgysk8zer0/polyfills/streams
- @shgysk8zer0/polyfills/streams.cjs
- @shgysk8zer0/polyfills/streams.js
- @shgysk8zer0/polyfills/streams.mjs
- @shgysk8zer0/polyfills/string
- @shgysk8zer0/polyfills/string.cjs
- @shgysk8zer0/polyfills/string.js
- @shgysk8zer0/polyfills/string.mjs
- @shgysk8zer0/polyfills/symbols
- @shgysk8zer0/polyfills/symbols.cjs
- @shgysk8zer0/polyfills/symbols.js
- @shgysk8zer0/polyfills/symbols.mjs
- @shgysk8zer0/polyfills/textEncoder
- @shgysk8zer0/polyfills/textEncoder.cjs
- @shgysk8zer0/polyfills/textEncoder.js
- @shgysk8zer0/polyfills/textEncoder.mjs
- @shgysk8zer0/polyfills/trustedTypes
- @shgysk8zer0/polyfills/trustedTypes.cjs
- @shgysk8zer0/polyfills/trustedTypes.js
- @shgysk8zer0/polyfills/trustedTypes.mjs
- @shgysk8zer0/polyfills/url
- @shgysk8zer0/polyfills/url.cjs
- @shgysk8zer0/polyfills/url.js
- @shgysk8zer0/polyfills/url.mjs
- @shgysk8zer0/polyfills/utils
- @shgysk8zer0/polyfills/utils.cjs
- @shgysk8zer0/polyfills/utils.js
- @shgysk8zer0/polyfills/utils.mjs
- @shgysk8zer0/polyfills/weakMap
- @shgysk8zer0/polyfills/weakMap.cjs
- @shgysk8zer0/polyfills/weakMap.js
- @shgysk8zer0/polyfills/weakMap.mjs
- @shgysk8zer0/polyfills/window
- @shgysk8zer0/polyfills/window.cjs
- @shgysk8zer0/polyfills/window.js
- @shgysk8zer0/polyfills/window.mjs
Readme
@shgysk8zer0/polyfills
@shgysk8zer0/polyfills is a collection of JavaScript polyfills designed to provide
modern functionality in older browsers. This library provides a range of polyfills
for features including AbortSignal
, CookieStore
, Sanitizer
, and many more.
Installation
You can access @shgysk8zer0/polyfills in several ways:
CDN
You can use a CDN to access the library. Add the following script tag to your HTML file to load the latest version:
<script src="https://unpkg.com/@shgysk8zer0/polyfills[@version]/all.min.js"></script>
With version and SRI
<script src="https://unpkg.com/@shgysk8zer0/polyfills@0.0.6/all.min.js" referrerpolicy="no-referrer" crossorigin="anonymous" integrity="sha384-xoY6kDRPTvbDfGdGA3S6Ercudev5mWGBWZIErLB38f7TeN6hV7zof6WBpzMdx/z0" fetchpriority="high" defer=""></script>
NPM
You can install the library as an NPM package and use it in your project. Use the following command to install the library:
npm install @shgysk8zer0/polyfills
[!Note] If using this polyfills package in a node environment, you want to use
node.js
instead ofall.js
. The node version omits polyfills that do not make sense in NodeJS, such as DOM. Simply usingimport '@shgysk8zer0/polyfills'
orrequire('@shgysk8zer0/polyfills')
should work.
Git Submodule
You can add the library as a Git submodule to your project. Use the following command to add the library as a submodule:
git submodule add https://github.com/shgysk8zer0/polyfills.git [:path/to/destination]
Usage
To use the polyfills in your project, simply import them using ES6 modules:
import '@shgysk8zer0/polyfills';
// Or
import 'https://unpkg.com/@shgysk8zer0/polyfills/all.js';
This will load all the polyfills in the library.
If you only need certain polyfills, you can import them individually:
import '@shgysk8zer0/polyfills/sanitizer.js';
import '@shgysk8zer0/polyfills/trustedTypes.js';
import '@shgysk8zer0/polyfills/elementInternals.js';
Import Map
You can avoid installing altogether while keeping the familiar syntax by using
an import map.
If you use Rollup, see @shgysk8zer0/rollup-import
.
for more details.
<script type="importmap">
{
"imports": {
"@shgysk8zer0/polyfills": "https://unpkg.com/@shgysk8zer0/polyfills@0.0.6/all.min.js",
"@shgysk8zer0/polyfills/": "https://unpkg.com/@shgysk8zer0/polyfills@0.0.6/",
}
}
</script>
Contributing
If you would like to contribute to the library, please follow these steps:
- Fork the repository.
- Create a branch for your changes.
- Make your changes.
- Submit a pull request.
Please make sure that your changes are thoroughly tested and that they follow the same coding style as the rest of the library.
License
@shgysk8zer0/polyfills is licensed under the MIT license. See the LICENSE file for more details.