fp-ts-contrib
Advanced tools
Comparing version 0.1.6 to 0.1.7
@@ -16,2 +16,7 @@ # Changelog | ||
# 0.1.7 | ||
- **Bug Fix** | ||
- `TaskOption.fromNullable` now uses `NonNullable` in its return type, fixes #29 (@gcanti) | ||
# 0.1.6 | ||
@@ -18,0 +23,0 @@ |
@@ -52,3 +52,3 @@ import * as I from 'fp-ts/lib/IO'; | ||
export declare const readerIO: Monad2<URI>; | ||
declare const ap: <E, A>(fa: ReaderIO<E, A>) => <B>(fab: ReaderIO<E, (a: A) => B>) => ReaderIO<E, B>, apFirst: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, A>, apSecond: <e, B>(fb: ReaderIO<e, B>) => <A>(fa: ReaderIO<e, A>) => ReaderIO<e, B>, chain: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, A>, flatten: <E, A>(mma: ReaderIO<E, ReaderIO<E, A>>) => ReaderIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: ReaderIO<E, A>) => ReaderIO<E, B>; | ||
declare const ap: <E, A>(fa: ReaderIO<E, A>) => <B>(fab: ReaderIO<E, (a: A) => B>) => ReaderIO<E, B>, apFirst: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, A>, apSecond: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, B>, chain: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, A>, flatten: <E, A>(mma: ReaderIO<E, ReaderIO<E, A>>) => ReaderIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: ReaderIO<E, A>) => ReaderIO<E, B>; | ||
export { | ||
@@ -55,0 +55,0 @@ /** |
@@ -64,3 +64,3 @@ import * as I from 'fp-ts/lib/IO'; | ||
export declare const stateIO: Monad2<URI>; | ||
declare const ap: <E, A>(fa: StateIO<E, A>) => <B>(fab: StateIO<E, (a: A) => B>) => StateIO<E, B>, apFirst: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, A>, apSecond: <e, B>(fb: StateIO<e, B>) => <A>(fa: StateIO<e, A>) => StateIO<e, B>, chain: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, A>, flatten: <E, A>(mma: StateIO<E, StateIO<E, A>>) => StateIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: StateIO<E, A>) => StateIO<E, B>; | ||
declare const ap: <E, A>(fa: StateIO<E, A>) => <B>(fab: StateIO<E, (a: A) => B>) => StateIO<E, B>, apFirst: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, A>, apSecond: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, B>, chain: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, A>, flatten: <E, A>(mma: StateIO<E, StateIO<E, A>>) => StateIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: StateIO<E, A>) => StateIO<E, B>; | ||
export { | ||
@@ -67,0 +67,0 @@ /** |
@@ -108,6 +108,6 @@ import { Either } from 'fp-ts/lib/Either'; | ||
<E, A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>, onFalse: (a: A) => E): <R>(ma: StateTaskEither<R, E, A>) => StateTaskEither<R, E, B>; | ||
<E, A>(predicate: import("fp-ts/lib/function").Predicate<A>, onFalse: (a: A) => E): <R>(ma: StateTaskEither<R, E, A>) => StateTaskEither<R, E, A>; | ||
<E_1, A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>, onFalse: (a: A_1) => E_1): <R_1>(ma: StateTaskEither<R_1, E_1, A_1>) => StateTaskEither<R_1, E_1, A_1>; | ||
}, fromEither: <R, E, A>(ma: Either<E, A>) => StateTaskEither<R, E, A>, fromOption: <E>(onNone: () => E) => <R, A>(ma: import("fp-ts/lib/Option").Option<A>) => StateTaskEither<R, E, A>, fromPredicate: { | ||
<E, A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>, onFalse: (a: A) => E): <U>(a: A) => StateTaskEither<U, E, B>; | ||
<E, A>(predicate: import("fp-ts/lib/function").Predicate<A>, onFalse: (a: A) => E): <R>(a: A) => StateTaskEither<R, E, A>; | ||
<E_1, A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>, onFalse: (a: A_1) => E_1): <R>(a: A_1) => StateTaskEither<R, E_1, A_1>; | ||
}; | ||
@@ -114,0 +114,0 @@ export { |
@@ -108,3 +108,3 @@ import { getStateM } from 'fp-ts/lib/StateT'; | ||
*/ | ||
export const stateTaskEitherSeq = Object.assign({}, stateTaskEither, { ap: (mab, ma) => T.chain(mab, f => T.map(ma, f)) }); | ||
export const stateTaskEitherSeq = Object.assign(Object.assign({}, stateTaskEither), { ap: (mab, ma) => T.chain(mab, f => T.map(ma, f)) }); | ||
const { ap, apFirst, apSecond, chain, chainFirst, flatten, map, filterOrElse, fromEither, fromOption, fromPredicate } = pipeable(stateTaskEither); | ||
@@ -111,0 +111,0 @@ export { |
@@ -53,3 +53,3 @@ import { Alt1 } from 'fp-ts/lib/Alt'; | ||
*/ | ||
export declare function fromNullable<A>(a: A | null | undefined): TaskOption<A>; | ||
export declare function fromNullable<A>(a: A): TaskOption<NonNullable<A>>; | ||
/** | ||
@@ -89,6 +89,6 @@ * @since 0.1.4 | ||
<A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>): (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<B>>; | ||
<A>(predicate: import("fp-ts/lib/function").Predicate<A>): (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<A>>; | ||
<A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>): (fa: TaskOption<A_1>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A_1>, TaskOption<A_1>>; | ||
}, partitionMap: <A, B, C>(f: (a: A) => import("fp-ts/lib/Either").Either<B, C>) => (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<B>, TaskOption<C>>, filter: { | ||
<A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>): (fa: TaskOption<A>) => TaskOption<B>; | ||
<A>(predicate: import("fp-ts/lib/function").Predicate<A>): (fa: TaskOption<A>) => TaskOption<A>; | ||
<A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>): (fa: TaskOption<A_1>) => TaskOption<A_1>; | ||
}, filterMap: <A, B>(f: (a: A) => Option<B>) => (fa: TaskOption<A>) => TaskOption<B>, compact: <A>(fa: TaskOption<Option<A>>) => TaskOption<A>, separate: <A, B>(fa: TaskOption<import("fp-ts/lib/Either").Either<A, B>>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<B>>; | ||
@@ -95,0 +95,0 @@ export { |
@@ -190,3 +190,3 @@ import * as A from 'fp-ts/lib/Array'; | ||
export function getMonoid(M) { | ||
return Object.assign({}, getSemigroup(M), { empty: make(A.empty, M.empty, A.empty) }); | ||
return Object.assign(Object.assign({}, getSemigroup(M)), { empty: make(A.empty, M.empty, A.empty) }); | ||
} | ||
@@ -193,0 +193,0 @@ /** |
@@ -52,3 +52,3 @@ import * as I from 'fp-ts/lib/IO'; | ||
export declare const readerIO: Monad2<URI>; | ||
declare const ap: <E, A>(fa: ReaderIO<E, A>) => <B>(fab: ReaderIO<E, (a: A) => B>) => ReaderIO<E, B>, apFirst: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, A>, apSecond: <e, B>(fb: ReaderIO<e, B>) => <A>(fa: ReaderIO<e, A>) => ReaderIO<e, B>, chain: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, A>, flatten: <E, A>(mma: ReaderIO<E, ReaderIO<E, A>>) => ReaderIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: ReaderIO<E, A>) => ReaderIO<E, B>; | ||
declare const ap: <E, A>(fa: ReaderIO<E, A>) => <B>(fab: ReaderIO<E, (a: A) => B>) => ReaderIO<E, B>, apFirst: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, A>, apSecond: <E, B>(fb: ReaderIO<E, B>) => <A>(fa: ReaderIO<E, A>) => ReaderIO<E, B>, chain: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => ReaderIO<E, B>) => (ma: ReaderIO<E, A>) => ReaderIO<E, A>, flatten: <E, A>(mma: ReaderIO<E, ReaderIO<E, A>>) => ReaderIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: ReaderIO<E, A>) => ReaderIO<E, B>; | ||
export { | ||
@@ -55,0 +55,0 @@ /** |
@@ -64,3 +64,3 @@ import * as I from 'fp-ts/lib/IO'; | ||
export declare const stateIO: Monad2<URI>; | ||
declare const ap: <E, A>(fa: StateIO<E, A>) => <B>(fab: StateIO<E, (a: A) => B>) => StateIO<E, B>, apFirst: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, A>, apSecond: <e, B>(fb: StateIO<e, B>) => <A>(fa: StateIO<e, A>) => StateIO<e, B>, chain: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, A>, flatten: <E, A>(mma: StateIO<E, StateIO<E, A>>) => StateIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: StateIO<E, A>) => StateIO<E, B>; | ||
declare const ap: <E, A>(fa: StateIO<E, A>) => <B>(fab: StateIO<E, (a: A) => B>) => StateIO<E, B>, apFirst: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, A>, apSecond: <E, B>(fb: StateIO<E, B>) => <A>(fa: StateIO<E, A>) => StateIO<E, B>, chain: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, B>, chainFirst: <E, A, B>(f: (a: A) => StateIO<E, B>) => (ma: StateIO<E, A>) => StateIO<E, A>, flatten: <E, A>(mma: StateIO<E, StateIO<E, A>>) => StateIO<E, A>, map: <A, B>(f: (a: A) => B) => <E>(fa: StateIO<E, A>) => StateIO<E, B>; | ||
export { | ||
@@ -67,0 +67,0 @@ /** |
@@ -108,6 +108,6 @@ import { Either } from 'fp-ts/lib/Either'; | ||
<E, A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>, onFalse: (a: A) => E): <R>(ma: StateTaskEither<R, E, A>) => StateTaskEither<R, E, B>; | ||
<E, A>(predicate: import("fp-ts/lib/function").Predicate<A>, onFalse: (a: A) => E): <R>(ma: StateTaskEither<R, E, A>) => StateTaskEither<R, E, A>; | ||
<E_1, A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>, onFalse: (a: A_1) => E_1): <R_1>(ma: StateTaskEither<R_1, E_1, A_1>) => StateTaskEither<R_1, E_1, A_1>; | ||
}, fromEither: <R, E, A>(ma: Either<E, A>) => StateTaskEither<R, E, A>, fromOption: <E>(onNone: () => E) => <R, A>(ma: import("fp-ts/lib/Option").Option<A>) => StateTaskEither<R, E, A>, fromPredicate: { | ||
<E, A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>, onFalse: (a: A) => E): <U>(a: A) => StateTaskEither<U, E, B>; | ||
<E, A>(predicate: import("fp-ts/lib/function").Predicate<A>, onFalse: (a: A) => E): <R>(a: A) => StateTaskEither<R, E, A>; | ||
<E_1, A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>, onFalse: (a: A_1) => E_1): <R>(a: A_1) => StateTaskEither<R, E_1, A_1>; | ||
}; | ||
@@ -114,0 +114,0 @@ export { |
@@ -129,3 +129,3 @@ "use strict"; | ||
*/ | ||
exports.stateTaskEitherSeq = __assign({}, exports.stateTaskEither, { ap: function (mab, ma) { return T.chain(mab, function (f) { return T.map(ma, f); }); } }); | ||
exports.stateTaskEitherSeq = __assign(__assign({}, exports.stateTaskEither), { ap: function (mab, ma) { return T.chain(mab, function (f) { return T.map(ma, f); }); } }); | ||
var _a = pipeable_1.pipeable(exports.stateTaskEither), ap = _a.ap, apFirst = _a.apFirst, apSecond = _a.apSecond, chain = _a.chain, chainFirst = _a.chainFirst, flatten = _a.flatten, map = _a.map, filterOrElse = _a.filterOrElse, fromEither = _a.fromEither, fromOption = _a.fromOption, fromPredicate = _a.fromPredicate; | ||
@@ -132,0 +132,0 @@ exports.ap = ap; |
@@ -53,3 +53,3 @@ import { Alt1 } from 'fp-ts/lib/Alt'; | ||
*/ | ||
export declare function fromNullable<A>(a: A | null | undefined): TaskOption<A>; | ||
export declare function fromNullable<A>(a: A): TaskOption<NonNullable<A>>; | ||
/** | ||
@@ -89,6 +89,6 @@ * @since 0.1.4 | ||
<A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>): (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<B>>; | ||
<A>(predicate: import("fp-ts/lib/function").Predicate<A>): (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<A>>; | ||
<A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>): (fa: TaskOption<A_1>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A_1>, TaskOption<A_1>>; | ||
}, partitionMap: <A, B, C>(f: (a: A) => import("fp-ts/lib/Either").Either<B, C>) => (fa: TaskOption<A>) => import("fp-ts/lib/Compactable").Separated<TaskOption<B>, TaskOption<C>>, filter: { | ||
<A, B extends A>(refinement: import("fp-ts/lib/function").Refinement<A, B>): (fa: TaskOption<A>) => TaskOption<B>; | ||
<A>(predicate: import("fp-ts/lib/function").Predicate<A>): (fa: TaskOption<A>) => TaskOption<A>; | ||
<A_1>(predicate: import("fp-ts/lib/function").Predicate<A_1>): (fa: TaskOption<A_1>) => TaskOption<A_1>; | ||
}, filterMap: <A, B>(f: (a: A) => Option<B>) => (fa: TaskOption<A>) => TaskOption<B>, compact: <A>(fa: TaskOption<Option<A>>) => TaskOption<A>, separate: <A, B>(fa: TaskOption<import("fp-ts/lib/Either").Either<A, B>>) => import("fp-ts/lib/Compactable").Separated<TaskOption<A>, TaskOption<B>>; | ||
@@ -95,0 +95,0 @@ export { |
@@ -107,3 +107,5 @@ "use strict"; | ||
function tryCatch(f) { | ||
return function () { return f().then(function (a) { return Option_1.some(a); }, function () { return Option_1.none; }); }; | ||
return function () { | ||
return f().then(function (a) { return Option_1.some(a); }, function () { return Option_1.none; }); | ||
}; | ||
} | ||
@@ -110,0 +112,0 @@ exports.tryCatch = tryCatch; |
@@ -50,5 +50,3 @@ "use strict"; | ||
function modify(f) { | ||
return function (fa) { | ||
return pipeable_1.pipe(fa, update(f(fa.focus))); | ||
}; | ||
return function (fa) { return pipeable_1.pipe(fa, update(f(fa.focus))); }; | ||
} | ||
@@ -235,3 +233,3 @@ exports.modify = modify; | ||
function getMonoid(M) { | ||
return __assign({}, getSemigroup(M), { empty: make(A.empty, M.empty, A.empty) }); | ||
return __assign(__assign({}, getSemigroup(M)), { empty: make(A.empty, M.empty, A.empty) }); | ||
} | ||
@@ -238,0 +236,0 @@ exports.getMonoid = getMonoid; |
{ | ||
"name": "fp-ts-contrib", | ||
"version": "0.1.6", | ||
"version": "0.1.7", | ||
"description": "A community driven utility package for fp-ts", | ||
@@ -38,3 +38,3 @@ "files": [ | ||
"peerDependencies": { | ||
"fp-ts": "^2.0.0" | ||
"fp-ts": "^2.1.2" | ||
}, | ||
@@ -49,6 +49,6 @@ "devDependencies": { | ||
"dtslint": "github:gcanti/dtslint", | ||
"fp-ts": "^2.0.0", | ||
"fp-ts": "^2.1.2", | ||
"jest": "^24.8.0", | ||
"mocha": "^5.2.0", | ||
"prettier": "^1.16.4", | ||
"prettier": "^1.19.1", | ||
"rimraf": "^2.6.3", | ||
@@ -59,3 +59,3 @@ "ts-jest": "^24.0.2", | ||
"tslint-config-standard": "^8.0.1", | ||
"typescript": "^3.5.1" | ||
"typescript": "^3.7.2" | ||
}, | ||
@@ -62,0 +62,0 @@ "tags": [ |
169559