Athanor.Components.Text (Athanor v0.1.0-beta.1)

Copy Markdown View Source

Text primitive. Renders raw HTML stored in node["props"]["text"] wrapped by Athanor.Components.Formatting.apply/1 so the standard formatting props (padding, margin, colors, alignment, border) apply.

Editor form (rich text)

Athanor has no built-in rich-text editor — text editing UIs are heavy and opinionated (TipTap, Trix, Quill, custom). Consumers wire their own by registering a Phoenix.LiveComponent via application config:

# config/config.exs (consumer app)
config :athanor, text_editor_form: MyApp.PageBuilder.RichTextField

Athanor.Component.editor_form/0 reads that value at runtime. When unset (the default), it returns nil and Athanor falls back to the auto-generated :textarea field declared in Athanor.Component.fields/0.

The registered LC receives the same assigns as any custom field LC documented in Athanor.Field:value, :on_change, :ctx, :label, :opts.