123456789101112131415161718192021222324252627 |
- import parser from "yargs-parser"
- import * as cookie from "cookie"
- import * as O from "fp-ts/Option"
- import * as S from "fp-ts/string"
- import { pipe, flow } from "fp-ts/function"
- import { objHasProperty } from "~/helpers/functional/object"
- export function getCookies(parsedArguments: parser.Arguments) {
- return pipe(
- parsedArguments,
- O.fromPredicate(objHasProperty("cookie", "string")),
- O.map((args) => args.cookie),
- O.alt(() =>
- pipe(
- parsedArguments,
- O.fromPredicate(objHasProperty("b", "string")),
- O.map((args) => args.b)
- )
- ),
- O.map(flow(S.replace(/^cookie: /i, ""), cookie.parse)),
- O.getOrElse(() => ({}))
- )
- }
|