Current section

Files

Jump to
docusign lib docusign model account_custom_fields.ex
Raw

lib/docusign/model/account_custom_fields.ex

# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Model.AccountCustomFields do
@moduledoc """
An `accountCustomField` is an envelope custom field that you set at the account level. Applying custom fields enables account administrators to group and manage envelopes.
"""
alias DocuSign.Deserializer
alias DocuSign.Model.ListCustomField
alias DocuSign.Model.TextCustomField
defstruct [
:listCustomFields,
:textCustomFields
]
@doc false
defimpl Jason.Encoder, for: __MODULE__ do
def encode(struct, opts) do
struct
|> Map.from_struct()
|> Enum.reject(fn {_k, v} -> is_nil(v) end)
|> Map.new()
|> Jason.Encode.map(opts)
end
end
@type t :: %__MODULE__{
:listCustomFields => [ListCustomField.t()] | nil,
:textCustomFields => [TextCustomField.t()] | nil
}
def decode(value) do
value
|> Deserializer.deserialize(
:listCustomFields,
:list,
ListCustomField
)
|> Deserializer.deserialize(
:textCustomFields,
:list,
TextCustomField
)
|> then(&struct(__MODULE__, &1))
end
end