Compare commits
2 Commits
5f574204bb
...
c7d33afe9d
Author | SHA1 | Date | |
---|---|---|---|
c7d33afe9d | |||
36e81e33d7 |
27
README.md
27
README.md
@ -1,17 +1,16 @@
|
|||||||
# @yanick/remeda
|
# @yanick/remeda
|
||||||
|
|
||||||
This package adds a few functions to the already awesome
|
This package provides a few functions to the already awesome
|
||||||
[remeda](https://remedajs.com/) library. For convenience, it
|
[remeda](https://remedajs.com/) library that I really want, but wasn't able to
|
||||||
re-export everything that remeda has.
|
get in Remeda itself.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Just import the additional functions from `@yanick/remeda-extra`.
|
||||||
|
|
||||||
```
|
```
|
||||||
import { matches, pipe } from '@yanick/remeda';
|
import { pipe } from 'remeda'; // as usual
|
||||||
|
import { matches } from '@yanick/remeda-extra'; // yanick-themed bonus feature!
|
||||||
// equivalent to
|
|
||||||
|
|
||||||
import { pipe } from 'remeda';
|
|
||||||
import { matches } from '@yanick/remeda';
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Additional functions
|
## Additional functions
|
||||||
@ -25,7 +24,8 @@ to return a boolean), or a value. If the value is an object, the matching
|
|||||||
will be recursive.
|
will be recursive.
|
||||||
|
|
||||||
```
|
```
|
||||||
import { matches, pipe } from '@yanick/remeda';
|
import { pipe } from 'remeda';
|
||||||
|
import { matches } from '@yanick/remeda-extra';
|
||||||
|
|
||||||
matches( 'potato', 'potato'); // => true
|
matches( 'potato', 'potato'); // => true
|
||||||
matches( 'potato', 'turnip'); // => false
|
matches( 'potato', 'turnip'); // => false
|
||||||
@ -42,9 +42,12 @@ pipe( { 'a': 4, 'b': 5, 'c': 6 }, R.matches({ 'a': 4, 'c': 6 })) // => true
|
|||||||
### `sample(target, size | { size: number, repeating: boolean })`
|
### `sample(target, size | { size: number, repeating: boolean })`
|
||||||
### `sample(size | { size: number, repeating: boolean })(target)`
|
### `sample(size | { size: number, repeating: boolean })(target)`
|
||||||
|
|
||||||
|
Like the `sample` that comes with Remeda, but this one shuffles its output
|
||||||
|
automatically.
|
||||||
|
|
||||||
Returns random elements of the array. If `size` is bigger than the array
|
Returns random elements of the array. If `size` is bigger than the array
|
||||||
length and `repeating` is false, returns a number of samples equal to
|
length and `repeating` is false, returns a number of samples equal to
|
||||||
the size of the whole array.
|
the size of the whole array.
|
||||||
|
|
||||||
```
|
```
|
||||||
sample([1,2,3,4],2); // [3,1]
|
sample([1,2,3,4],2); // [3,1]
|
||||||
|
@ -6,8 +6,8 @@ tasks:
|
|||||||
build: tsc
|
build: tsc
|
||||||
|
|
||||||
test:
|
test:
|
||||||
|
deps: [ build ]
|
||||||
cmds:
|
cmds:
|
||||||
- { task: build }
|
|
||||||
- vitest run src
|
- vitest run src
|
||||||
|
|
||||||
pack: npm pack
|
pack: npm pack
|
||||||
|
11
package.json
11
package.json
@ -1,9 +1,14 @@
|
|||||||
{
|
{
|
||||||
"name": "@yanick/remeda",
|
"name": "@yanick/remeda-extra",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"description": "Remeda, plus a handful of added functions",
|
"description": "A handful of added functions for Remeda",
|
||||||
|
"repository": "https://git.babyl.ca/yanick/remeda-extra.git",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https:/git.babyl.ca/yanick/remeda-extra/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https:/git.babyl.ca/yanick/remeda-extra/issues",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.js",
|
"main": "dist/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "echo \"Error: no test specified\" && exit 1"
|
"test": "echo \"Error: no test specified\" && exit 1"
|
||||||
},
|
},
|
||||||
|
@ -1,3 +1,2 @@
|
|||||||
export * from 'remeda';
|
export * from './matches.js';
|
||||||
|
export * from './sample.js';
|
||||||
export * from './matches';
|
|
||||||
|
Loading…
Reference in New Issue
Block a user