Hyperlinkv0.8.0-beta.28

SchemaGetter

SchemaGetter.decodeBase64UrlStringfunctioneffect/SchemaGetter.ts:1361
<E extends string>(): Getter<string, E>

Decodes a URL-safe Base64 string to a UTF-8 string.

Details

  • Fails with SchemaIssue.InvalidValue if the input is not valid Base64Url.

Example (Decoding Base64Url to string)

import { SchemaGetter } from "effect"

const decode = SchemaGetter.decodeBase64UrlString<string>()
// Getter<string, string>
export function decodeBase64UrlString<E extends string>(): Getter<string, E> {
  return transformOrFail((input) =>
    Result.match(Encoding.decodeBase64UrlString(input), {
      onFailure: (e) => Effect.fail(new SchemaIssue.InvalidValue(Option.some(input), { message: e.message })),
      onSuccess: Effect.succeed
    })
  )
}
Referenced by 1 symbols