Configuration
The Configuration
class is responsible for the instructions that explain to the Builder
how to build the LHTML Document
. These instructions can be set by modifying the config file that is loaded.
Config File
The config file is where settings are configured. The Configuration
class tries to load a config.yml
if another file has not been specified during construction. If the config.yml
not present, the Configuration
will try to load the packaged config config.dist.yml
file.
Syntax v1
Example
version: 1
elements:
types:
- name: 'Block'
class_name: 'LivingMarkup\Elements\Blocks\{name}'
xpath: '//block'
methods:
- name: 'onRender'
descirption: 'Execute rendering of element'
execute: 'RETURN_CALL'
Parameters
Parameter | Comments |
---|---|
version |
Indicates the file structure to the Configuration for stability purposes. |
elements |
An array containing configuration options for elements. |
elements:types |
An array containing the types of elements to load at runtime. Each type contains contain an array with a name , a class_name , and a xpath expression. |
element:types:*:name |
Defines what the elements is named. |
element:types:*:xpath |
Specifies exactly how find DOMElements to initialize as elements. Xpath expressions are a powerful syntax for searching within a the Document for DOMElements. |
element:types:*:class_name |
Specifies which class to instantiate the DOMElement as. The class_name provided must refer to a class that extends the abstract Element class. The class name may feature a {name} variable which is automatically populated by the DOMElement's name attribute during runtime. |
element:methods |
An array containing automated method calls that will be made to all Elements during runtime. The order of items in this array determines the order of execution. |
element:methods:*:name |
The exact name of the method being executed. |
element:methods:*:description |
An explanation of what the method is doing that indicates its order. |
element:methods:*:execute |
Determines whether the method should be ran differently. Currently, the following commands are supported * RETURN_CALL - The output of the method will replace the DOMElement in the DOMDocument. Is optional |
markup: |
String containing the actual LHTML that will be parsed by the Builder . This field is typically omitted from the config file and is instead appended to Configuration during runtime, often by the Autoloader . |