# semver-range-intersect

> Get the intersection of multiple semver ranges.

Latest version **0.3.1** (published 2019-07-20) · MIT license · 0 weekly downloads

## Install

```sh
npm install semver-range-intersect
pnpm add semver-range-intersect
yarn add semver-range-intersect
bun add semver-range-intersect
```

## Health

**Score 40/100 (D)** — status: abandoned.

Positive: has types; no vulnerabilities; high maintenance score; high quality score.

Warnings: low downloads; no esm support; pre 1.0.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 0.3.1 |
| Published | 2019-07-20 |
| First published | 2019-07-08 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | >=8.3.0 |
| Dependencies | 2 |
| Unpacked size | 58.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 3 |
| Author | sounisi5011 |
| Maintainers | sounisi5011 |
| Keywords | intersect, semver, version |

## Links

- npm: https://www.npmjs.com/package/semver-range-intersect
- Repository: https://github.com/sounisi5011/semver-range-intersect
- Homepage: https://github.com/sounisi5011/semver-range-intersect#readme
- Issues: https://github.com/sounisi5011/semver-range-intersect/issues
- npm.io page: https://npm.io/package/semver-range-intersect

## Dependencies (2)

- [semver](https://npm.io/package/semver.md) ^6.2.0
- [@types/semver](https://npm.io/package/@types/semver.md) ^6.0.1

## Recent versions

- 0.3.1 (latest) — 2019-07-20
- 0.3.0 — 2019-07-15
- 0.2.0 — 2019-07-10
- 0.1.0 — 2019-07-08

## README

# semver-range-intersect

[![npm package](https://img.shields.io/npm/v/semver-range-intersect.svg)][npm]
[![GitHub License](https://img.shields.io/github/license/sounisi5011/semver-range-intersect.svg)][github-license]
![](https://img.shields.io/node/v/semver-range-intersect.svg)
![Type Definitions: TypeScript](https://img.shields.io/npm/types/semver-range-intersect.svg)
[![Build Status](https://travis-ci.com/sounisi5011/semver-range-intersect.svg?branch=master)](https://travis-ci.com/sounisi5011/semver-range-intersect)
[![Maintainability Status](https://api.codeclimate.com/v1/badges/f6e23b313a631c54ac90/maintainability)](https://codeclimate.com/github/sounisi5011/semver-range-intersect/maintainability)

[npm]: https://www.npmjs.com/package/semver-range-intersect
[github-license]: https://github.com/sounisi5011/semver-range-intersect/blob/master/LICENSE

Get the intersection of multiple semver ranges.

## Install

```sh
npm install semver-range-intersect
```

## Usage

```js
const { intersect } = require('semver-range-intersect');

// equals to: '^4.1.0'
intersect('^4.0.0', '^4.1.0') === '>=4.1.0 <5.0.0'

// equals to: 1.1.0 - 1.4.0
intersect('1.1.0 - 1.2.3 || 1.2.0 - 1.4.0') === '>=1.1.0 <=1.4.0'

intersect('8.2.6 - 8.x.x', '<=8.6.9') === '>=8.2.6 <=8.6.9'

intersect('^6.0.0', '6.7.9') === '6.7.9'

// equals to: ^8.15.0 || ^10.13.0 || >=11.10.1
intersect('^8.15.0 || >=10.0.0', '^8.10.0 || ^10.13.0 || >=11.10.1') === '>=8.15.0 <9.0.0 || >=10.13.0 <11.0.0 || >=11.10.1'

intersect('x.x.x') === '*'

// null for invalid version
intersect('a.b.c') === null

// null for version range not crossing
intersect('^2.0.0', '^5.0.0') === null
intersect('8.2.6 - 8.x.x', '>=9.0.1') === null
```

## Tests

To run the test suite, first install the dependencies, then run `npm test`:

```sh
npm install
npm test
```

## Contributing

see [CONTRIBUTING.md](https://github.com/sounisi5011/semver-range-intersect/blob/master/CONTRIBUTING.md)

## Related

* [semver-intersect](https://github.com/snyamathi/semver-intersect)

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