lib/kvasir/type/date.ex
defmodule Kvasir.Type.Date do
@moduledoc ~S"""
"""
use Kvasir.Type
@impl Kvasir.Type
def parse(date, opts \\ [])
def parse(date = %Date{}, _opts), do: {:ok, date}
def parse(date, _opts) when is_binary(date) do
with {:error, _} <- Date.from_iso8601(date), do: {:error, :invalid_date_format}
end
def parse(_, _opts), do: {:error, :invalid_date}
end