@typed/io
Version:
Runtime IO type system
12 lines • 464 B
JavaScript
import { fromRight, isLeft, Right } from '@typed/either';
import { toJson } from '@typed/http';
import { curry } from '@typed/lambda';
export const validateHttpRequest = curry(checkHttpRequest);
function* checkHttpRequest(type, request) {
const response = toJson(yield* request);
if (isLeft(response)) {
return response;
}
return Right.of(type.encode(yield* type.decode(fromRight(response))));
}
//# sourceMappingURL=checkHttpRequest.js.map