https://github.com/derhuerst/callbag-keep-sequences
A callbag operator that passes through only sequences with minimum length.
https://github.com/derhuerst/callbag-keep-sequences
callbag dedupe filter sequence streak
Last synced: 8 months ago
JSON representation
A callbag operator that passes through only sequences with minimum length.
- Host: GitHub
- URL: https://github.com/derhuerst/callbag-keep-sequences
- Owner: derhuerst
- License: isc
- Created: 2018-06-30T19:39:04.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-10-01T22:00:42.000Z (about 6 years ago)
- Last Synced: 2025-01-07T19:15:21.647Z (9 months ago)
- Topics: callbag, dedupe, filter, sequence, streak
- Language: JavaScript
- Homepage: https://github.com/derhuerst/callbag-keep-sequences#callbag-keep-sequences
- Size: 3.91 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license.md
Awesome Lists containing this project
README
# callbag-keep-sequences
**A [callbag](https://github.com/callbag/callbag#callbag-) operator that passes through only sequences with minimum length.**
```js
// minimum streak length = 3
1, 2, 2, 2, 2, 3, 3, 1, 1, 1, 3 // input
2, 2, 2, 2, 1, 1, 1 // output
```[](https://www.npmjs.com/package/callbag-keep-sequences)
[](https://travis-ci.org/derhuerst/callbag-keep-sequences)

[](https://gitter.im/derhuerst)
[](https://patreon.com/derhuerst)## Installation
```shell
npm install callbag-keep-sequences
```## Usage
```js
const pipe = require('callbag-pipe')
const fromIter = require('callbag-from-iter')
const keepSequences = require('callbag-keep-sequences')
const forEach = require('callbag-for-each')pipe(
fromIter([1, 2, 2, 2, 2, 3, 3, 1, 1, 1, 3]),
keepSequences(2), // sequences with >= 2 items
forEach(console.log)
)
// 2 2 2 2 1 1 1
```## API
```js
keepSequences(n, compare = (a, b) => a === b)
```## Related
- [callbag spec](https://github.com/callbag/callbag#callbag-) – 👜 A standard for JS callbacks that enables lightweight observables and iterables
- [`callbag-distinct-until-changed`](https://github.com/Andarist/callbag-distinct-until-changed) – Drops consecutive duplicate values. Works on either pullable or listenable sources.## Contributing
If you have a question or have difficulties using `callbag-keep-sequences`, please double-check your code and setup first. If you think you have found a bug or want to propose a feature, refer to [the issues page](https://github.com/derhuerst/callbag-keep-sequences/issues).