# es7-shim

> ECMAScript 7 compatibility shims for legacy JavaScript engines

Latest version **6.0.0** (published 2016-07-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install es7-shim
pnpm add es7-shim
yarn add es7-shim
bun add es7-shim
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 6.0.0 |
| Published | 2016-07-05 |
| First published | 2015-01-07 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=0.4.0 |
| Dependencies | 9 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 172 |
| Author | Jordan Harband |
| Maintainers | ljharb |
| Keywords | ecmascript, harmony, es7, ES2016, shim, polyfill |

## Links

- npm: https://www.npmjs.com/package/es7-shim
- Repository: https://github.com/es-shims/es7-shim
- Homepage: http://github.com/es-shims/es7-shim/
- Issues: http://github.com/es-shims/es7-shim/issues
- npm.io page: https://npm.io/package/es7-shim

## Dependencies (9)

- [string-at](https://npm.io/package/string-at.md) ^1.0.1
- [object.values](https://npm.io/package/object.values.md) ^1.0.3
- [array-includes](https://npm.io/package/array-includes.md) ^3.0.2
- [object.entries](https://npm.io/package/object.entries.md) ^1.0.3
- [string.prototype.padend](https://npm.io/package/string.prototype.padend.md) ^3.0.0
- [string.prototype.padstart](https://npm.io/package/string.prototype.padstart.md) ^3.0.0
- [string.prototype.trimleft](https://npm.io/package/string.prototype.trimleft.md) ^2.0.0
- [string.prototype.trimright](https://npm.io/package/string.prototype.trimright.md) ^2.0.0
- [object.getownpropertydescriptors](https://npm.io/package/object.getownpropertydescriptors.md) ^2.0.2

## Recent versions

- 6.0.0 (latest) — 2016-07-05
- 5.0.0 — 2015-11-17
- 4.3.1 — 2015-09-27
- 4.3.0 — 2015-09-23
- 4.2.0 — 2015-07-30
- 4.1.0 — 2015-07-29
- 4.0.0 — 2015-06-17
- 3.1.0 — 2015-06-16
- 3.0.0 — 2015-05-24
- 2.1.0 — 2015-05-24
- 2.0.0 — 2015-04-27
- 1.3.0 — 2015-04-23
- 1.2.1 — 2015-03-21
- 1.1.1 — 2015-03-20
- 1.1.0 — 2015-02-17
- … 6 more at https://npm.io/package/es7-shim/versions

## README

#es7-shim <sup>[![Version Badge][2]][1]</sup>

[![npm badge][9]][1]

[![Build Status][3]][4] [![dependency status][5]][6]  [![dev dependency status][7]][8]

ECMAScript 7 compatibility shims for legacy JavaScript engines.

`es7-shim.js` exports an object that contains shims that can be used to monkeypatch a JavaScript context to contain all ECMAScript 7 methods that can be faithfully emulated with a legacy JavaScript engine.
`es7-shim.browser.js` calls the “shim” method on the export of `es7-shim.js` which actually modifies the global object, including replacing native methods when engine-specific bugs exist.
Published on npm are `dist/es7-shim.js` and `dist/es7-shim.min.js` which are pre-prepared browserified versions of `es7-shim.browser.js`.

## Source for shims
Every shim in this module is a separate, independent `npm` module.
To be included, all shims must have a ".shim()" method that installs the shim into the global object whenever it is necessary. It should also handle any engine-specific specific to the method it is shimming.

## Tests
Simply clone the repo, `npm install`, and run `npm test`

## Shims

`Array.prototype`:
 * `includes` [standalone][npm-includes-url]

`Object`:
 * `getOwnPropertyDescriptors` [standalone][npm-get-descriptors-url]
 * `entries` [standalone][object-entries-url]
 * `values` [standalone][object-values-url]

`String.prototype`:
 * `at` [standalone][string-at-url]
 * `trimLeft` [standalone][string-trimleft-url]
 * `trimRight` [standalone][string-trimright-url]
 * `padStart` [standalone][string-padstart-url]
 * `padEnd` [standalone][string-padend-url]

## Shams

* :warning: None yet!

[1]: https://npmjs.org/package/es7-shim
[2]: http://versionbadg.es/es-shims/es7-shim.svg
[3]: https://travis-ci.org/es-shims/es7-shim.svg
[4]: https://travis-ci.org/es-shims/es7-shim
[5]: https://david-dm.org/es-shims/es7-shim.png
[6]: https://david-dm.org/es-shims/es7-shim
[7]: https://david-dm.org/es-shims/es7-shim/dev-status.png
[8]: https://david-dm.org/es-shims/es7-shim#info=devDependencies
[9]: https://nodei.co/npm/es7-shim.png?downloads=true&stars=true
[npm-includes-url]: https://www.npmjs.com/package/array-includes
[npm-get-descriptors-url]: https://www.npmjs.com/package/object.getownpropertydescriptors
[map-tojson-url]: https://www.npmjs.com/package/map-tojson
[set-tojson-url]: https://www.npmjs.com/package/set-tojson
[string-at-url]: https://www.npmjs.com/package/string-at
[object-entries-url]: https://www.npmjs.com/package/object.entries
[object-values-url]: https://www.npmjs.com/package/object.values
[string-trimleft-url]: https://www.npmjs.com/package/string.prototype.trimleft
[string-trimright-url]: https://www.npmjs.com/package/string.prototype.trimright
[string-padstart-url]: https://www.npmjs.com/package/string.prototype.padstart
[string-padend-url]: https://www.npmjs.com/package/string.prototype.padend

---
_Source: https://npm.io/package/es7-shim · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
