Surface.AST.Component (surface v0.6.1) View Source
An AST node representing a component
Properties
* `:module` - the component module
* `:type` - the type of component (i.e. Surface.LiveComponent vs Surface.LiveView)
* `:props` - the props for this component
* `:directives` - any directives to be applied to this tag
* `:children` - the tag children
* `:meta` - compilation meta data
* `:debug` - keyword list indicating when debug information should be printed during compilation
Link to this section Summary
Link to this section Types
Specs
t() :: %Surface.AST.Component{
debug: [atom()],
directives: [Surface.AST.Directive.t()],
dynamic_props: Surface.AST.DynamicAttribute.t(),
meta: Surface.AST.Meta.t(),
module: module(),
props: [Surface.AST.Attribute.t()],
templates: %{
:default => [Surface.AST.Template.t() | Surface.AST.SlotableComponent.t()],
optional(atom()) => [
Surface.AST.Template.t() | Surface.AST.SlotableComponent.t()
]
},
type: module()
}