PhoenixKitDocumentCreator. Documents. Composer
(PhoenixKitDocumentCreator v0.4.4)
Copy Markdown
View Source
Composition orchestration for documents built from multiple template sections.
Public entry point: compose/2. This module is the implementation behind
PhoenixKitDocumentCreator.Documents.create_composed_document/2.
Summary
Types
@type section_input() :: %{ template_uuid: UUIDv7.t(), position: non_neg_integer(), variable_values: map(), image_params: map() }
Functions
@spec compose( [section_input()], keyword() ) :: {:ok, PhoenixKitDocumentCreator.Schemas.Document.t()} | {:error, term()}
@spec validate_sections( [section_input()], keyword() ) :: :ok | {:error, :empty_sections | {:duplicate_positions, [non_neg_integer()]} | {:unknown_templates, [UUIDv7.t()]} | {:unpublished_templates, [UUIDv7.t()]}}