View Source Surface.AST.Component (Surface v0.12.0)
An AST node representing a component
Properties
* `:module` - the component module
* `:type` - the type of component (i.e. Surface.LiveComponent vs Surface.LiveView or :dynamic_live)
* `: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
Summary
Types
@type t() :: %Surface.AST.Component{ debug: [atom()], directives: [Surface.AST.Directive.t()], dynamic_props: Surface.AST.DynamicAttribute.t(), meta: Surface.AST.Meta.t(), module: module() | Surface.AST.AttributeExpr.t(), props: [Surface.AST.Attribute.t()], slot_entries: %{ :default => [Surface.AST.SlotEntry.t() | Surface.AST.SlotableComponent.t()], optional(atom()) => [ Surface.AST.SlotEntry.t() | Surface.AST.SlotableComponent.t() ] }, type: module() | :dynamic_live }