niho / personal-number / PersonalNumber.Norwegian

Parse Norwegian personal numbers.

Definition


type PersonalNumber

An opaque type representing a valid personal number.

Errors


type ValidationError
    = InvalidFormat
    | InvalidLength
    | InvalidDate
    | InvalidChecksum

If the parsing fails an error of this type is returned.

Strings

fromString : String -> Result ValidationError PersonalNumber

Parse a string into a personal number.

toString : PersonalNumber -> String

Converts a personal number to string representation in the long format that is commonly used for database storage (DDMMYYXXXCC).

display : PersonalNumber -> String

Format a personal number into a user readable string (DDMMYY-XXX-CC).

JSON

decoder : Json.Decode.Decoder PersonalNumber

Decode a personal number.

encode : PersonalNumber -> Json.Encode.Value

Encode a personal number into a JSON value.