defmodule Auth0.Entity.UserBlocks do
@moduledoc """
Documentation for entity of UserBlocks.
"""
defmodule BlockedFor do
@moduledoc """
Documentation for entity of UserBlocks BlockedFor.
"""
alias Auth0.Common.Util
defstruct identifier: nil,
connection: nil,
ip: nil
@type t :: %__MODULE__{
identifier: String.t(),
connection: String.t(),
ip: String.t()
}
@spec from(map) :: __MODULE__.t()
def from(value) do
value |> Util.to_struct(__MODULE__)
end
end
alias Auth0.Common.Util
defstruct blocked_for: nil
@type t :: %__MODULE__{
blocked_for: list(BlockedFor.t())
}
@spec from(map) :: __MODULE__.t()
def from(value) do
user_blocks = value |> Util.to_struct(__MODULE__)
%{
user_blocks
| blocked_for:
if(user_blocks.blocked_for |> is_list,
do: user_blocks.blocked_for |> Enum.map(&BlockedFor.from/1),
else: nil
)
}
end
end