ash_double_entry/lib/transfer/transformers/add_structure.ex
Zach Daniel 25b3dc3063 init
2023-07-21 20:27:52 -04:00

18 lines
521 B
Elixir

defmodule AshDoubleEntry.Transfer.Transformers.AddStructure do
use Spark.Dsl.Transformer
def transform(dsl) do
dsl
|> Ash.Resource.Builder.add_attribute(:amount, :decimal,
allow_nil?: false,
default: Decimal.new(0),
writable?: false
)
|> Ash.Resource.Builder.add_attribute(:converted_amount, :decimal, writable?: true)
|> Ash.Resource.Builder.add_relationship(
:belongs_to,
:account,
AshDoubleEntry.Transfer.Info.transfer_account_resource(dsl)
)
end
end