112 parent::__construct();
113 $this->
assert()->isIndex(
'id', $entry_data);
114 $this->
setId($entry_data[
'id']);
115 $this->
assert()->isIndex(
'title', $entry_data);
116 $this->
setTitle($entry_data[
'title']);
117 $this->
assert()->isIndex(
'abstract', $entry_data);
121 if (array_key_exists(
'description', $entry_data)) {
124 if (array_key_exists(
'rules', $entry_data)) {
128 $this->
assert()->isIndex(
'path', $entry_data);
129 $this->
setPath($entry_data[
'path']);
131 if (array_key_exists(
'background', $entry_data)) {
134 if (array_key_exists(
'featurewiki', $entry_data)) {
137 if (array_key_exists(
'parent', $entry_data)) {
140 if (array_key_exists(
'children', $entry_data)) {
250 return $this->description->getDescription();
259 $this->
assert()->isTypeOf($description, ComponentEntryDescription::class);
311 return $this->rules->getRules();
322 $this->
assert()->isTypeOf(
$rules, ComponentEntryRules::class);
414 $this->children[] = $child;
438 $this->examples = array();
442 if (is_file($example_path) && pathinfo($example_path)[
"extension"] ==
"php") {
443 $example_name = str_replace(
".php",
"", $file_name);
444 $this->examples[$example_name] = $example_path;
452 if (!$this->examples_path) {
453 $path_componants = str_replace(
"Component",
"examples", $this->
getPath())
454 .
"/" . str_replace(
" ",
"", $this->
getTitle());
456 $this->examples_path = implode(
"/", $path_array);
468 return array_intersect_key(
470 array_unique(array_map(
"StrToLower", $array))
481 'id' => $this->
getId(),
An exception for terminatinating execution or to throw for unit testing.
Abstract Entry Part to share some common entry functionality.
Container to hold description of UI Components.
Container to hold rules of UI Components.
Stores Information of UI Components parsed from YAML, examples and less files.
setFeatureWikiReferences($feature_wiki_references)
setStatusImplementation($status_implementation)
getStatusImplementation()
setBackground($background)
setDescription(ComponentEntryDescription $description)
setStatusEntry($status_entry)
getFeatureWikiReferences()
setLessVariables($less_variables)
__construct($entry_data)
ComponentEntry constructor.
setIsAbstract($is_abstract)
static array_iunique($array)
$status_list_implementation