ComponentTagCompiler
class ComponentTagCompiler (View source)
Properties
| protected BladeCompiler | $blade | The Blade compiler instance.  | 
                |
| protected array | $aliases | The component class aliases.  | 
                |
| protected array | $namespaces | The component class namespaces.  | 
                |
| protected array | $boundAttributes | The "bind:" attributes that have been compiled for the current component.  | 
                
Methods
Create a new component tag compiler.
Compile the component and slot tags within the given string.
Compile the tags within the given string.
Compile the opening tags within the given string.
Compile the self-closing tags within the given string.
Compile the Blade component string for the given component and attributes.
Get the component class for a given component alias.
Attempt to find an anonymous component using the registered anonymous component paths.
Attempt to find an anonymous component using the registered anonymous component namespaces.
Find the class for the given component using the registered namespaces.
Guess the class name for the given component.
Format the class name for the given component.
Guess the view name for the given component.
Partition the data and extra attributes from the given array of attributes.
Compile the closing tags within the given string.
Compile the slot tags within the given string.
Get an array of attributes from the given attribute string.
Parses a short attribute syntax like :$foo into a fully-qualified syntax like :foo="$foo".
Parse the attribute bag in a given attribute string into its fully-qualified syntax.
Parse @class statements in a given attribute string into their fully-qualified syntax.
Parse @style statements in a given attribute string into their fully-qualified syntax.
Parse the "bind" attributes in a given attribute string into their fully-qualified syntax.
Compile any Blade echo statements that are present in the attribute string.
Escape the single quotes in the given string that are outside of PHP blocks.
Convert an array of attributes to a string.
Strip any quotes from the given string.
Details
        
                            void
    __construct(array $aliases = [], array $namespaces = [], BladeCompiler|null $blade = null)
        
    
    Create a new component tag compiler.
        
                            string
    compile(string $value)
        
    
    Compile the component and slot tags within the given string.
        
                            string
    compileTags(string $value)
        
    
    Compile the tags within the given string.
        
                    protected        string
    compileOpeningTags(string $value)
        
    
    Compile the opening tags within the given string.
        
                    protected        string
    compileSelfClosingTags(string $value)
        
    
    Compile the self-closing tags within the given string.
        
                    protected        string
    componentString(string $component, array $attributes)
        
    
    Compile the Blade component string for the given component and attributes.
        
                            string
    componentClass(string $component)
        
    
    Get the component class for a given component alias.
        
                    protected        string|null
    guessAnonymousComponentUsingPaths(Factory $viewFactory, string $component)
        
    
    Attempt to find an anonymous component using the registered anonymous component paths.
        
                    protected        string|null
    guessAnonymousComponentUsingNamespaces(Factory $viewFactory, string $component)
        
    
    Attempt to find an anonymous component using the registered anonymous component namespaces.
        
                            string|null
    findClassByComponent(string $component)
        
    
    Find the class for the given component using the registered namespaces.
        
                            string
    guessClassName(string $component)
        
    
    Guess the class name for the given component.
        
                            string
    formatClassName(string $component)
        
    
    Format the class name for the given component.
        
                            string
    guessViewName(string $name, string $prefix = 'components.')
        
    
    Guess the view name for the given component.
        
                            array
    partitionDataAndAttributes(string $class, array $attributes)
        
    
    Partition the data and extra attributes from the given array of attributes.
        
                    protected        string
    compileClosingTags(string $value)
        
    
    Compile the closing tags within the given string.
        
                            string
    compileSlots(string $value)
        
    
    Compile the slot tags within the given string.
        
                    protected        array
    getAttributesFromAttributeString(string $attributeString)
        
    
    Get an array of attributes from the given attribute string.
        
                    protected        string
    parseShortAttributeSyntax(string $value)
        
    
    Parses a short attribute syntax like :$foo into a fully-qualified syntax like :foo="$foo".
        
                    protected        string
    parseAttributeBag(string $attributeString)
        
    
    Parse the attribute bag in a given attribute string into its fully-qualified syntax.
        
                    protected        string
    parseComponentTagClassStatements(string $attributeString)
        
    
    Parse @class statements in a given attribute string into their fully-qualified syntax.
        
                    protected        string
    parseComponentTagStyleStatements(string $attributeString)
        
    
    Parse @style statements in a given attribute string into their fully-qualified syntax.
        
                    protected        string
    parseBindAttributes(string $attributeString)
        
    
    Parse the "bind" attributes in a given attribute string into their fully-qualified syntax.
        
                    protected        string
    compileAttributeEchos(string $attributeString)
        
    
    Compile any Blade echo statements that are present in the attribute string.
These echo statements need to be converted to string concatenation statements.
        
                    protected        string
    escapeSingleQuotesOutsideOfPhpBlocks(string $value)
        
    
    Escape the single quotes in the given string that are outside of PHP blocks.
        
                    protected        string
    attributesToString(array $attributes, bool $escapeBound = true)
        
    
    Convert an array of attributes to a string.
        
                            string
    stripQuotes(string $value)
        
    
    Strip any quotes from the given string.