View Source AshPhoenix.Form.WrappedValue (ash_phoenix v2.1.11)

A sentinal value used when editing a union that has non-map values

Summary

Types

t()

@type t() :: %AshPhoenix.Form.WrappedValue{
  __lateral_join_source__: term(),
  __meta__: term(),
  __metadata__: term(),
  __order__: term(),
  aggregates: term(),
  calculations: term(),
  value: term()
}

Functions

apply_constraints_array(term, constraints)

Callback implementation for Ash.Type.apply_constraints_array/2.

cast_input(input, constraints)

Callback implementation for Ash.Type.cast_input/2.

cast_stored(value, constraints)

Callback implementation for Ash.Type.cast_stored/2.

check_atomic(value, constraints)

default_short_name()

dump_to_native(value, _)

Callback implementation for Ash.Type.dump_to_native/2.

fetch_key(map, atom)

get_rewrites(merged_load, calculation, path, _)

Callback implementation for Ash.Type.get_rewrites/4.

handle_change(old_value, new_value, constraints)

Callback implementation for Ash.Type.handle_change/3.

handle_change?()

handle_change_array(old_values, new_values, constraints)

Callback implementation for Ash.Type.handle_change_array/3.

input(opts)

@spec input(values :: map() | Keyword.t()) :: map() | no_return()

Validates that the keys in the provided input are valid for at least one action on the resource.

Raises a KeyError error at compile time if not. This exists because generally a struct should only ever be created by Ash as a result of a successful action. You should not be creating records manually in code, e.g %MyResource{value: 1, value: 2}. Generally that is fine, but often with embedded resources it is nice to be able to validate the keys that are being provided, e.g

Resource
|> Ash.Changeset.for_create(:create, %{embedded: EmbeddedResource.input(foo: 1, bar: 2)})
|> Ash.create()

input(opts, action)

@spec input(values :: map() | Keyword.t(), action :: atom()) :: map() | no_return()

Same as input/1, except restricts the keys to values accepted by the action provided.

load(record, load, constraints, context)

Callback implementation for Ash.Type.load/4.

prepare_change(old_value, new_value, constraints)

Callback implementation for Ash.Type.prepare_change/3.

prepare_change?()

prepare_change_array(old_values, new_uncasted_values, constraints)

Callback implementation for Ash.Type.prepare_change_array/3.

rewrite(value, rewrites, constraints)

Callback implementation for Ash.Type.rewrite/3.

storage_type(_)

Callback implementation for Ash.Type.storage_type/1.