View Source AshAuthentication.Validations (ash_authentication v4.0.0)

Common validations shared by several transformers.

Summary

Functions

Find and return a named attribute in the DSL state.

Find and return a persisted option in the DSL state.

Ensure that the named module implements a specific behaviour.

Validates that extension is present on the resource.

Given a map validate that the provided field is one of the values provided.

Given a map, validate that the provided field predicate returns true for the value.

Validate that a "secret" field is configured correctly.

Ensure that token generation is enabled for the resource.

Functions

Link to this function

find_attribute(dsl_state, attribute_name)

View Source
@spec find_attribute(Spark.Dsl.t(), atom()) ::
  {:ok, Ash.Resource.Attribute.t()} | {:error, Exception.t()}

Find and return a named attribute in the DSL state.

Link to this function

maybe_build_attribute(dsl_state, attribute_name, builder)

View Source
@spec maybe_build_attribute(
  Spark.Dsl.t(),
  atom(),
  (Spark.Dsl.t() -> {:ok, Ash.Resource.Attribute.t()})
) ::
  {:ok, Spark.Dsl.t()}

Build an attribute if not present.

Link to this function

persisted_option(dsl_state, option)

View Source
@spec persisted_option(Spark.Dsl.t(), atom()) ::
  {:ok, any()} | {:error, {:unknown_persisted, atom()}}

Find and return a persisted option in the DSL state.

Link to this function

validate_behaviour(module, behaviour)

View Source
@spec validate_behaviour(module(), module()) :: :ok | {:error, Exception.t()}

Ensure that the named module implements a specific behaviour.

Link to this function

validate_extension(dsl_state, extension)

View Source
@spec validate_extension(Spark.Dsl.t(), module()) :: :ok | {:error, Exception.t()}

Validates that extension is present on the resource.

Link to this function

validate_field_in_values(map, field, values)

View Source
@spec validate_field_in_values(map(), any(), [any()]) :: :ok | {:error, String.t()}

Given a map validate that the provided field is one of the values provided.

Link to this function

validate_field_with(map, field, predicate, message \\ nil)

View Source
@spec validate_field_with(map(), field, (any() -> boolean()), message) ::
  :ok | {:error, message}
when field: any(), message: any()

Given a map, validate that the provided field predicate returns true for the value.

Link to this function

validate_secret(strategy, option, allowed_extras \\ [])

View Source

Validate that a "secret" field is configured correctly.

Link to this function

validate_token_generation_enabled(dsl_state, message)

View Source
@spec validate_token_generation_enabled(Spark.Dsl.t(), binary()) ::
  :ok | {:error, Exception.t()}

Ensure that token generation is enabled for the resource.