🐊Putout plugin applies Maybe monad
npm install @putout/plugin-apply-maybe[NPMIMGURL]: https://img.shields.io/npm/v/@putout/plugin-apply-maybe.svg?style=flat&longCache=true
[NPMURL]: https://npmjs.org/package/@putout/plugin-apply-maybe"npm"
🐊Putout plugin helps with maybe monad. Depends on @putout/declare. Renamed to @putout/plugin-maybe.
```
npm i @putout/plugin-apply-maybe -D
`json`
{
"rules": {
"apply-maybe/array": "on",
"apply-maybe/empty-array": "on",
"apply-maybe/fn": "on"
}
}
`js`
const array = isArray(a) ? a : [a];
`js`
const maybeArray = (a) => isArray(a) ? a : [a];
const array = maybeArray(a);
`js`
const array = !a ? [] : a;
`js`
const maybeArray = (a) => !a ? [] : a;
const array = maybeEmptyArray(a);
`js`
const fn = isFn(a) ? a : () => {};
`js`
const noop = () => {};
const maybeFn = isFn(a) ? a : noop;
const fn = maybeFn(a);
`js`
const fn = f || (() => {});
`js``
const noop = () => {};
const fn = fn || noop;
MIT