19declare(strict_types=1);
32use ILIAS\UI\Implementation\Component\ComponentHelper;
73 ?
Image $responsive_logo =
null,
74 string $favicon_path =
'',
78 string $short_title =
'',
79 string $view_title =
''
81 $allowed = [Component::class];
82 $this->checkArgListElements(
"content", $content, $allowed);
84 $this->content = $content;
85 $this->metabar = $metabar;
89 $this->responsive_logo = $responsive_logo;
90 $this->favicon_path = $favicon_path;
91 $this->overlay = $overlay;
92 $this->footer = $footer;
93 $this->title = $title;
94 $this->short_title = $short_title;
95 $this->view_title = $view_title;
103 $clone = clone $this;
104 $clone->metabar = $meta_bar;
113 $clone = clone $this;
114 $clone->mainbar = $main_bar;
120 $clone = clone $this;
121 $clone->logo = $logo;
127 $clone = clone $this;
128 $clone->responsive_logo = $logo;
134 $clone = clone $this;
135 $clone->favicon_path =
$path;
144 $clone = clone $this;
145 $clone->footer = $footer;
154 return ($this->metabar instanceof
MetaBar);
170 return ($this->logo instanceof
Image);
175 return ($this->responsive_logo instanceof
Image);
180 return ($this->footer instanceof
Footer);
188 return $this->content;
196 return $this->metabar;
204 return $this->mainbar;
212 return $this->breadcrumbs;
225 return $this->responsive_logo;
230 return $this->favicon_path;
235 return $this->footer;
240 $clone = clone $this;
241 $clone->with_headers = $use_headers;
247 return $this->with_headers;
252 return $this->ui_demo;
257 $clone = clone $this;
258 $clone->ui_demo = $switch;
264 $clone = clone $this;
265 $clone->title = $title;
276 $clone = clone $this;
277 $clone->short_title = $title;
283 return $this->short_title;
288 $clone = clone $this;
289 $clone->view_title = $title;
295 return $this->view_title;
300 $clone = clone $this;
301 $clone->mode_info = $mode_info;
307 return $this->mode_info;
312 return $this->mode_info instanceof
ModeInfo;
317 $clone = clone $this;
318 $clone->footer =
null;
324 $clone = clone $this;
325 $clone->meta_data[] = $tag;
334 return $this->meta_data;
339 $this->checkArgListElements(
"system_infos", $system_infos, [SystemInfo::class]);
340 $clone = clone $this;
341 $clone->system_infos = $system_infos;
347 return $this->system_infos;
352 return count($this->system_infos) > 0;
358 $this->checkArgIsElement(
361 [self::LTR,self::RTL],
362 implode(
'/', [self::LTR,self::RTL])
364 $clone = clone $this;
365 $clone->text_direction = $text_direction;
371 return $this->text_direction;
376 return $this->overlay instanceof
Container;
381 return $this->overlay;
__construct(array $content, ?MetaBar $metabar=null, ?MainBar $mainbar=null, ?Breadcrumbs $locator=null, ?Image $logo=null, ?Image $responsive_logo=null, string $favicon_path='', ?Container $overlay=null, ?Footer $footer=null, string $title='', string $short_title='', string $view_title='')
withSystemInfos(array $system_infos)
withUIDemo(bool $switch=true)
withFaviconPath(string $path)
withShortTitle(string $title)
withMainbar(MainBar $main_bar)
@inheritDoc
withResponsiveLogo(Image $logo)
withTextDirection(string $text_direction)
withAdditionalMetaDatum(Html\Tag $tag)
withHeaders(bool $use_headers)
withFooter(Footer $footer)
@inheritDoc
withMetabar(MetaBar $meta_bar)
@inheritDoc
withModeInfo(ModeInfo $mode_info)
withViewTitle(string $title)
A component is the most general form of an entity in the UI.
This describes the MainBar.
This describes the MetaBar.
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.