https://github.com/compulim/p-defer-es5
ES5 version of p-defer
https://github.com/compulim/p-defer-es5
Last synced: 4 days ago
JSON representation
ES5 version of p-defer
- Host: GitHub
- URL: https://github.com/compulim/p-defer-es5
- Owner: compulim
- Created: 2019-12-24T23:56:20.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-03-04T05:30:56.000Z (about 2 years ago)
- Last Synced: 2025-04-26T04:28:42.751Z (24 days ago)
- Language: JavaScript
- Size: 411 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# p-defer-es5
[](https://www.npmjs.com/package/p-defer-es5) [](https://www.npmjs.com/package/p-defer-es5/v/main) [](https://github.com/compulim/p-defer-es5/actions/workflows/continuous-deployment.yml)
This package is based on [`p-defer`](https://npmjs.com/package/p-defer). It did not contains an ES5 module. Importing the module directly or indirectly may break web apps running on ES5 browsers.
On `npm install`, this package will transpile your version of `p-defer` to make it compatible with ES5 browsers. Then in your code, you use `p-defer-es5` instead of `p-defer`.
Package authors should consider importing this package instead of `p-defer`, so your packages will not break your users due to having `p-defer` as a transient dependency.
## How to use
To install in your project, run:
```sh
npm install p-defer p-defer-es5
```You can also use it in HTML:
```html
```
## How it works
On `postinstall`, this package will run `esbuild` to bundle `p-defer` into a single file. Then run Babel to transpile it for ES5.
This package peer-depends on `p-defer`. Thus, you can select your own version of `p-defer`.
### Updating `p-defer`
When you update `p-defer`, re-run `npm install p-defer-es5` to get the latest package transpiled.
## Alternatives
Instead of importing this package, there are alternative workarounds you can use.
### Including the source code
You can copy the source code of `p-defer` into your web app and use your build pipeline transpile the original package.
Be sure to include the original license and continue to depends on the package to make sure `npm audit` will scan for vulnerabilities.
### Modify your bundler configuration
Some bundlers is configured not to transpile code under `/node_modules/` unless specified explicitly. You can modify bundler configuration to include `/node_modules/p-defer/` and use Babel to transpile it while bundling.
## Contributions
Like us? [Star](https://github.com/compulim/p-defer-es5/stargazers) us.
Want to make it better? [File](https://github.com/compulim/p-defer-es5/issues) us an issue.
Don't like something you see? [Submit](https://github.com/compulim/p-defer-es5/pulls) a pull request.