117 parent::__construct();
118 $this->
assert()->isIndex(
'id', $entry_data);
119 $this->
setId($entry_data[
'id']);
120 $this->
assert()->isIndex(
'title', $entry_data);
121 $this->
setTitle($entry_data[
'title']);
122 $this->
assert()->isIndex(
'abstract', $entry_data);
126 if (array_key_exists(
'description', $entry_data)) {
129 if (array_key_exists(
'rules', $entry_data)) {
133 $this->
assert()->isIndex(
'path', $entry_data);
134 $this->
setPath($entry_data[
'path']);
136 if (array_key_exists(
'background', $entry_data)) {
139 if (array_key_exists(
'context', $entry_data)) {
142 if (array_key_exists(
'featurewiki', $entry_data)) {
145 if (array_key_exists(
'parent', $entry_data)) {
148 if (array_key_exists(
'children', $entry_data)) {
258 return $this->description->getDescription();
267 $this->
assert()->isTypeOf($description, ComponentEntryDescription::class);
337 return $this->rules->getRules();
348 $this->
assert()->isTypeOf(
$rules, ComponentEntryRules::class);
440 $this->children[] = $child;
464 $this->examples = array();
468 if (is_file($example_path) && pathinfo($example_path)[
"extension"] ==
"php") {
469 $example_name = str_replace(
".php",
"", $file_name);
470 $this->examples[$example_name] = $example_path;
478 if (!$this->examples_path) {
479 $path_componants = str_replace(
"Component",
"examples", $this->
getPath())
480 .
"/" . str_replace(
" ",
"", $this->
getTitle());
481 $path_array = self::array_iunique(explode(
"/", $path_componants));
482 $this->examples_path = implode(
"/", $path_array);
494 return array_intersect_key(
496 array_unique(array_map(
"StrToLower", $array))
507 'id' => $this->
getId(),
Container to hold rules of UI Components.
setBackground($background)
Abstract Entry Part to share some common entry functionality.
setDescription(ComponentEntryDescription $description)
setStatusImplementation($status_implementation)
__construct($entry_data)
ComponentEntry constructor.
$status_list_implementation
setFeatureWikiReferences($feature_wiki_references)
getFeatureWikiReferences()
setStatusEntry($status_entry)
Stores Information of UI Components parsed from YAML, examples and less files.
getStatusImplementation()
setLessVariables($less_variables)
Container to hold description of UI Components.
static array_iunique($array)
setIsAbstract($is_abstract)