19declare(strict_types=1);
26 array | \ArrayAccess &$define,
27 array | \ArrayAccess &$implement,
28 array | \ArrayAccess &$use,
29 array | \ArrayAccess &$contribute,
30 array | \ArrayAccess &$seek,
31 array | \ArrayAccess &$provide,
32 array | \ArrayAccess &$pull,
33 array | \ArrayAccess &$internal,
36 $define[] = UI\Renderer::class;
37 $define[] = UI\HelpTextRetriever::class;
38 $define[] = UI\Storage::class;
39 $define[] = UI\Component\Progress\AsyncRefreshInterval::class;
40 $define[] = UI\Component\Input\Field\PhpUploadLimit::class;
41 $define[] = UI\Component\Input\Field\GlobalUploadLimit::class;
42 $define[] = UI\Implementation\FactoryInternal::class;
43 $define[] = UI\Implementation\Render\ImagePathResolver::class;
45 $implement[UI\Factory::class] =
static fn() =>
46 $use[UI\Implementation\FactoryInternal::class];
47 $implement[UI\Implementation\FactoryInternal::class] =
static fn() =>
48 $internal[UI\Implementation\Factory::class];
49 $implement[UI\Renderer::class] =
static fn() =>
50 $internal[UI\Implementation\DefaultRenderer::class];
51 $implement[UI\Component\Progress\AsyncRefreshInterval::class] =
static fn() =>
52 $internal[UI\Implementation\Component\Progress\DefaultAsyncRefreshInterval::class];
58 $provide[UI\Implementation\Component\Counter\Factory::class] =
static fn() =>
59 $internal[UI\Implementation\Component\Counter\Factory::class];
60 $provide[UI\Implementation\Component\Button\Factory::class] =
static fn() =>
61 $internal[UI\Implementation\Component\Button\Factory::class];
62 $provide[UI\Implementation\Component\Listing\Factory::class] =
static fn() =>
63 $internal[UI\Implementation\Component\Listing\Factory::class];
64 $provide[UI\Implementation\Component\Listing\Workflow\Factory::class] =
static fn() =>
65 $internal[UI\Implementation\Component\Listing\Workflow\Factory::class];
66 $provide[UI\Implementation\Component\Listing\CharacteristicValue\Factory::class] =
static fn() =>
67 $internal[UI\Implementation\Component\Listing\CharacteristicValue\Factory::class];
68 $provide[UI\Implementation\Component\Listing\Entity\Factory::class] =
static fn() =>
69 $internal[UI\Implementation\Component\Listing\Entity\Factory::class];
70 $provide[UI\Implementation\Component\Image\Factory::class] =
static fn() =>
71 $internal[UI\Implementation\Component\Image\Factory::class];
72 $provide[UI\Implementation\Component\Player\Factory::class] =
static fn() =>
73 $internal[UI\Implementation\Component\Player\Factory::class];
74 $provide[UI\Implementation\Component\Panel\Factory::class] =
static fn() =>
75 $internal[UI\Implementation\Component\Panel\Factory::class];
76 $provide[UI\Implementation\Component\Modal\Factory::class] =
static fn() =>
77 $internal[UI\Implementation\Component\Modal\Factory::class];
78 $provide[UI\Implementation\Component\Progress\Factory::class] =
static fn() =>
79 $internal[UI\Implementation\Component\Progress\Factory::class];
80 $provide[UI\Implementation\Component\Progress\State\Factory::class] =
static fn() =>
81 $internal[UI\Implementation\Component\Progress\State\Factory::class];
82 $provide[UI\Implementation\Component\Progress\State\Bar\Factory::class] =
static fn() =>
83 $internal[UI\Implementation\Component\Progress\State\Bar\Factory::class];
84 $provide[UI\Implementation\Component\Dropzone\Factory::class] =
static fn() =>
85 $internal[UI\Implementation\Component\Dropzone\Factory::class];
86 $provide[UI\Implementation\Component\Popover\Factory::class] =
static fn() =>
87 $internal[UI\Implementation\Component\Popover\Factory::class];
88 $provide[UI\Implementation\Component\Divider\Factory::class] =
static fn() =>
89 $internal[UI\Implementation\Component\Divider\Factory::class];
90 $provide[UI\Implementation\Component\Link\Factory::class] =
static fn() =>
91 $internal[UI\Implementation\Component\Link\Factory::class];
92 $provide[UI\Implementation\Component\Dropdown\Factory::class] =
static fn() =>
93 $internal[UI\Implementation\Component\Dropdown\Factory::class];
94 $provide[UI\Implementation\Component\Item\Factory::class] =
static fn() =>
95 $internal[UI\Implementation\Component\Item\Factory::class];
96 $provide[UI\Implementation\Component\ViewControl\Factory::class] =
static fn() =>
97 $internal[UI\Implementation\Component\ViewControl\Factory::class];
98 $provide[UI\Implementation\Component\Chart\Factory::class] =
static fn() =>
99 $internal[UI\Implementation\Component\Chart\Factory::class];
100 $provide[UI\Implementation\Component\Input\Factory::class] =
static fn() =>
101 $internal[UI\Implementation\Component\Input\Factory::class];
102 $provide[UI\Implementation\Component\Table\Factory::class] =
static fn() =>
103 $internal[UI\Implementation\Component\Table\Factory::class];
104 $provide[UI\Implementation\Component\MessageBox\Factory::class] =
static fn() =>
105 $internal[UI\Implementation\Component\MessageBox\Factory::class];
106 $provide[UI\Implementation\Component\Card\Factory::class] =
static fn() =>
107 $internal[UI\Implementation\Component\Card\Factory::class];
108 $provide[UI\Implementation\Component\Layout\Factory::class] =
static fn() =>
109 $internal[UI\Implementation\Component\Layout\Factory::class];
110 $provide[UI\Implementation\Component\Layout\Page\Factory::class] =
static fn() =>
111 $internal[UI\Implementation\Component\Layout\Page\Factory::class];
112 $provide[UI\Implementation\Component\Layout\Alignment\Factory::class] =
static fn() =>
113 $internal[UI\Implementation\Component\Layout\Alignment\Factory::class];
114 $provide[UI\Implementation\Component\MainControls\Factory::class] =
static fn() =>
115 $internal[UI\Implementation\Component\MainControls\Factory::class];
116 $provide[UI\Implementation\Component\Tree\Factory::class] =
static fn() =>
117 $internal[UI\Implementation\Component\Tree\Factory::class];
118 $provide[UI\Implementation\Component\Tree\Node\Factory::class] =
static fn() =>
119 $internal[UI\Implementation\Component\Tree\Node\Factory::class];
120 $provide[UI\Implementation\Component\Menu\Factory::class] =
static fn() =>
121 $internal[UI\Implementation\Component\Menu\Factory::class];
122 $provide[UI\Implementation\Component\Symbol\Factory::class] =
static fn() =>
123 $internal[UI\Implementation\Component\Symbol\Factory::class];
124 $provide[UI\Implementation\Component\Toast\Factory::class] =
static fn() =>
125 $internal[UI\Implementation\Component\Toast\Factory::class];
126 $provide[UI\Implementation\Component\Legacy\Factory::class] =
static fn() =>
127 $internal[UI\Implementation\Component\Legacy\Factory::class];
128 $provide[UI\Implementation\Component\Launcher\Factory::class] =
static fn() =>
129 $internal[UI\Implementation\Component\Launcher\Factory::class];
130 $provide[UI\Implementation\Component\Entity\Factory::class] =
static fn() =>
131 $internal[UI\Implementation\Component\Entity\Factory::class];
132 $provide[UI\Implementation\Component\Panel\Secondary\Factory::class] =
static fn() =>
133 $internal[UI\Implementation\Component\Panel\Secondary\Factory::class];
134 $provide[UI\Implementation\Component\Panel\Listing\Factory::class] =
static fn() =>
135 $internal[UI\Implementation\Component\Panel\Listing\Factory::class];
136 $provide[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class] =
static fn() =>
137 $internal[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class];
138 $provide[UI\Implementation\Component\Chart\ProgressMeter\Factory::class] =
static fn() =>
139 $internal[UI\Implementation\Component\Chart\ProgressMeter\Factory::class];
140 $provide[UI\Implementation\Component\Chart\Bar\Factory::class] =
static fn() =>
141 $internal[UI\Implementation\Component\Chart\Bar\Factory::class];
142 $provide[UI\Implementation\Component\Input\ViewControl\Factory::class] =
static fn() =>
143 $internal[UI\Implementation\Component\Input\ViewControl\Factory::class];
144 $provide[UI\Implementation\Component\Input\Container\ViewControl\Factory::class] =
static fn() =>
145 $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class];
146 $provide[UI\Implementation\Component\Table\Column\Factory::class] =
static fn() =>
147 $internal[UI\Implementation\Component\Table\Column\Factory::class];
148 $provide[UI\Implementation\Component\Table\Factory::class] =
static fn() =>
149 $internal[UI\Implementation\Component\Table\Factory::class];
150 $provide[UI\Implementation\Component\MainControls\Slate\Factory::class] =
static fn() =>
151 $internal[UI\Implementation\Component\MainControls\Slate\Factory::class];
152 $provide[UI\Implementation\Component\Symbol\Icon\Factory::class] =
static fn() =>
153 $internal[UI\Implementation\Component\Symbol\Icon\Factory::class];
154 $provide[UI\Implementation\Component\Symbol\Glyph\Factory::class] =
static fn() =>
155 $internal[UI\Implementation\Component\Symbol\Glyph\Factory::class];
156 $provide[UI\Implementation\Component\Symbol\Avatar\Factory::class] =
static fn() =>
157 $internal[UI\Implementation\Component\Symbol\Avatar\Factory::class];
158 $provide[UI\Implementation\Component\Input\Container\Form\Factory::class] =
static fn() =>
159 $internal[UI\Implementation\Component\Input\Container\Form\Factory::class];
160 $provide[UI\Implementation\Component\Input\Container\Filter\Factory::class] =
static fn() =>
161 $internal[UI\Implementation\Component\Input\Container\Filter\Factory::class];
162 $provide[UI\Implementation\Component\Input\Field\Factory::class] =
static fn() =>
163 $internal[UI\Implementation\Component\Input\Field\Factory::class];
164 $provide[UI\Implementation\Component\Input\Field\Node\Factory::class] =
static fn() =>
165 $internal[UI\Implementation\Component\Input\Field\Node\Factory::class];
166 $provide[UI\Implementation\Component\Prompt\Factory::class] =
static fn() =>
167 $internal[UI\Implementation\Component\Prompt\Factory::class];
168 $provide[UI\Implementation\Component\Prompt\State\Factory::class] =
static fn() =>
169 $internal[UI\Implementation\Component\Prompt\State\Factory::class];
170 $provide[UI\Implementation\Component\Input\UploadLimitResolver::class] =
static fn() =>
171 $internal[UI\Implementation\Component\Input\UploadLimitResolver::class];
172 $provide[UI\Implementation\Component\Navigation\Factory::class] =
static fn() =>
173 $internal[UI\Implementation\Component\Navigation\Factory::class];
177 $internal[UI\Implementation\Factory::class] =
static fn() =>
212 $internal[UI\Implementation\Component\Counter\Factory::class] =
static fn() =>
215 $internal[UI\Implementation\Component\Button\Factory::class] =
static fn() =>
218 $internal[UI\Implementation\Component\Listing\Factory::class] =
static fn() =>
224 $internal[UI\Implementation\Component\Listing\Workflow\Factory::class] =
static fn() =>
226 $internal[UI\Implementation\Component\Listing\CharacteristicValue\Factory::class] =
static fn() =>
228 $internal[UI\Implementation\Component\Listing\Entity\Factory::class] =
static fn() =>
231 $internal[UI\Implementation\Component\Image\Factory::class] =
static fn() =>
234 $internal[UI\Implementation\Component\Player\Factory::class] =
static fn() =>
237 $internal[UI\Implementation\Component\Panel\Factory::class] =
static fn() =>
242 $internal[UI\Implementation\Component\Panel\Listing\Factory::class] =
static fn() =>
244 $internal[UI\Implementation\Component\Panel\Secondary\Factory::class] =
static fn() =>
247 $internal[UI\Implementation\Component\Modal\Factory::class] =
static fn() =>
253 $internal[UI\Implementation\Component\SignalGeneratorInterface::class] =
static fn() =>
255 $internal[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class] =
static fn() =>
258 $internal[UI\Implementation\Component\Progress\Factory::class] =
static fn() =>
260 $use[
UI\
Component\Progress\AsyncRefreshInterval::class],
264 $internal[UI\Implementation\Component\Progress\State\Factory::class] =
static fn() =>
268 $internal[UI\Implementation\Component\Progress\State\Bar\Factory::class] =
static fn() =>
270 $internal[UI\Implementation\Component\Progress\DefaultAsyncRefreshInterval::class] =
static fn() =>
273 $internal[UI\Implementation\Component\Dropzone\Factory::class] =
static fn() =>
277 $internal[UI\Implementation\Component\Dropzone\File\Factory::class] =
static fn() =>
283 $internal[UI\Implementation\Component\Popover\Factory::class] =
static fn() =>
288 $internal[UI\Implementation\Component\Divider\Factory::class] =
static fn() =>
291 $internal[UI\Implementation\Component\Link\Factory::class] =
static fn() =>
294 $internal[UI\Implementation\Component\Dropdown\Factory::class] =
static fn() =>
297 $internal[UI\Implementation\Component\Item\Factory::class] =
static fn() =>
300 $internal[UI\Implementation\Component\ViewControl\Factory::class] =
static fn() =>
305 $internal[UI\Implementation\Component\Chart\Factory::class] =
static fn() =>
310 $internal[UI\Implementation\Component\Chart\ProgressMeter\Factory::class] =
static fn() =>
312 $internal[UI\Implementation\Component\Chart\Bar\Factory::class] =
static fn() =>
315 $internal[UI\Implementation\Component\Input\Factory::class] =
static fn() =>
322 $internal[UI\Implementation\Component\Input\Field\Factory::class] =
static fn() =>
327 $pull[
Data\Factory::class],
331 $internal[UI\Implementation\Component\Input\Field\Node\Factory::class] =
static fn() =>
333 $internal[UI\Implementation\Component\Input\UploadLimitResolver::class] =
static fn() =>
335 $use[
UI\
Component\Input\Field\PhpUploadLimit::class],
336 $use[
UI\
Component\Input\Field\GlobalUploadLimit::class],
338 $internal[UI\Implementation\Component\Input\Container\Factory::class] =
static fn() =>
344 $internal[UI\Implementation\Component\Input\Container\Form\Factory::class] =
static fn() =>
349 $internal[UI\Implementation\Component\Input\Container\Filter\Factory::class] =
static fn() =>
354 $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class] =
static fn() =>
359 $internal[UI\Implementation\Component\Input\ViewControl\Factory::class] =
static fn() =>
362 $pull[
Data\Factory::class],
368 $internal[UI\Implementation\Component\Table\Factory::class] =
static fn() =>
373 $pull[
Data\Factory::class],
376 $use[
UI\Storage::class],
380 $internal[UI\Implementation\Component\Table\Column\Factory::class] =
static fn() =>
384 $internal[UI\Implementation\Component\Table\Action\Factory::class] =
static fn() =>
386 $internal[UI\Implementation\Component\Table\DataRowBuilder::class] =
static fn() =>
388 $internal[UI\Implementation\Component\Table\OrderingRowBuilder::class] =
static fn() =>
391 $internal[UI\Implementation\Component\MessageBox\Factory::class] =
static fn() =>
394 $internal[UI\Implementation\Component\Card\Factory::class] =
static fn() =>
397 $internal[UI\Implementation\Component\Layout\Factory::class] =
static fn() =>
402 $internal[UI\Implementation\Component\Layout\Page\Factory::class] =
static fn() =>
404 $internal[UI\Implementation\Component\Layout\Alignment\Factory::class] =
static fn() =>
407 $internal[UI\Implementation\Component\MainControls\Factory::class] =
static fn() =>
412 $internal[UI\Implementation\Component\MainControls\Slate\Factory::class] =
static fn() =>
419 $internal[UI\Implementation\Component\Tree\Factory::class] =
static fn() =>
423 $internal[UI\Implementation\Component\Tree\Node\Factory::class] =
static fn() =>
426 $internal[UI\Implementation\Component\Menu\Factory::class] =
static fn() =>
431 $internal[UI\Implementation\Component\Symbol\Factory::class] =
static fn() =>
437 $internal[UI\Implementation\Component\Symbol\Icon\Factory::class] =
static fn() =>
439 $internal[UI\Implementation\Component\Symbol\Glyph\Factory::class] =
static fn() =>
441 $internal[UI\Implementation\Component\Symbol\Avatar\Factory::class] =
static fn() =>
444 $internal[UI\Implementation\Component\Toast\Factory::class] =
static fn() =>
449 $internal[UI\Implementation\Component\Legacy\Factory::class] =
static fn() =>
454 $internal[UI\Implementation\Component\Launcher\Factory::class] =
static fn() =>
459 $internal[UI\Implementation\Component\Entity\Factory::class] =
static fn() =>
462 $internal[UI\Implementation\Component\Prompt\Factory::class] =
static fn() =>
466 $internal[UI\Implementation\Component\Prompt\State\Factory::class] =
static fn() =>
469 $internal[UI\Implementation\Component\Navigation\Factory::class] =
static fn() =>
471 $pull[
Data\Factory::class],
473 $use[
UI\Storage::class],
476 $internal[UI\Implementation\DefaultRenderer::class] =
static fn() =>
482 $internal[UI\Implementation\Render\Loader::class] =
static fn() =>
493 $pull[
Data\Factory::class],
494 $use[
UI\HelpTextRetriever::class],
503 $pull[
Data\Factory::class],
504 $use[
UI\HelpTextRetriever::class],
513 $pull[
Data\Factory::class],
514 $use[
UI\HelpTextRetriever::class],
523 $pull[
Data\Factory::class],
524 $use[
UI\HelpTextRetriever::class],
533 $pull[
Data\Factory::class],
534 $use[
UI\HelpTextRetriever::class],
543 $pull[
Data\Factory::class],
544 $use[
UI\HelpTextRetriever::class],
550 $internal[UI\Implementation\Render\JavaScriptBinding::class] =
static fn() =>
552 $use[
UICore\GlobalTemplate::class],
554 $internal[UI\Implementation\Render\ResourceRegistry::class] =
static fn() =>
556 $use[
UICore\GlobalTemplate::class],
558 $internal[UI\Implementation\Render\TemplateFactory::class] =
static fn() =>
561 $contribute[Component\Resource\PublicAsset::class] = fn() =>
563 $contribute[Component\Resource\PublicAsset::class] = fn() =>
565 $contribute[Component\Resource\PublicAsset::class] = fn() =>
567 $contribute[Component\Resource\PublicAsset::class] = fn() =>
569 $contribute[Component\Resource\PublicAsset::class] = fn() =>
572 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
574 $contribute[Component\Resource\PublicAsset::class] = fn() =>
577 $contribute[Component\Resource\PublicAsset::class] = fn() =>
579 $contribute[Component\Resource\PublicAsset::class] = fn() =>
581 $contribute[Component\Resource\PublicAsset::class] = fn() =>
583 $contribute[Component\Resource\PublicAsset::class] = fn() =>
585 $contribute[Component\Resource\PublicAsset::class] = fn() =>
587 $contribute[Component\Resource\PublicAsset::class] = fn() =>
589 $contribute[Component\Resource\PublicAsset::class] = fn() =>
591 $contribute[Component\Resource\PublicAsset::class] = fn() =>
593 $contribute[Component\Resource\PublicAsset::class] = fn() =>
595 $contribute[Component\Resource\PublicAsset::class] = fn() =>
597 $contribute[Component\Resource\PublicAsset::class] = fn() =>
599 $contribute[Component\Resource\PublicAsset::class] = fn() =>
601 $contribute[Component\Resource\PublicAsset::class] = fn() =>
603 $contribute[Component\Resource\PublicAsset::class] = fn() =>
605 $contribute[Component\Resource\PublicAsset::class] = fn() =>
607 $contribute[Component\Resource\PublicAsset::class] = fn() =>
609 $contribute[Component\Resource\PublicAsset::class] = fn() =>
611 $contribute[Component\Resource\PublicAsset::class] = fn() =>
613 $contribute[Component\Resource\PublicAsset::class] = fn() =>
615 $contribute[Component\Resource\PublicAsset::class] = fn() =>
617 $contribute[Component\Resource\PublicAsset::class] = fn() =>
619 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
621 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
623 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
625 $contribute[Component\Resource\PublicAsset::class] = fn() =>
627 $contribute[Component\Resource\PublicAsset::class] = fn() =>
629 $contribute[Component\Resource\PublicAsset::class] = fn() =>
631 $contribute[Component\Resource\PublicAsset::class] = fn() =>
646 $contribute[Component\Resource\PublicAsset::class] = fn() =>
651 foreach ([
'tex-chtml-full.js',
'a11y',
'adaptors',
'input',
'output',
'sre',
'ui'] as $asset) {
652 $contribute[Component\Resource\PublicAsset::class] =
static fn(
658 public function getSource(): string
660 return 'node_modules/mathjax/es5/' . $this->asset;
663 public function getTarget(): string
665 return 'node_modules/mathjax/es5/' . $this->asset;
672 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
new class () implements
Component\Resource\PublicAsset {
673 public function getSource(): string
675 return "templates/default/delos.css";
677 public function getTarget(): string
679 return "assets/css/delos.css";
682 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
new class () implements
Component\Resource\PublicAsset {
683 public function getSource(): string
685 return "templates/default/delos_cont.css";
687 public function getTarget(): string
689 return "assets/css/delos_cont.css";
This is a js file provided by some component.
Some distributable file created by npm.
An public asset that is a resource of some component.
Builds a Color from either hex- or rgb values.
A Link is the often used combination of a label and an URL.
Renderer that dispatches rendering of UI components to a Renderer found in the same namespace as the ...
Caches renderers loaded by another loader.
Wraps global ilTemplate to provide JavaScriptBinding.
Plumbing for ILIAS, tries to guess.
Factory for wrapped ilTemplates.
init(array|\ArrayAccess &$define, array|\ArrayAccess &$implement, array|\ArrayAccess &$use, array|\ArrayAccess &$contribute, array|\ArrayAccess &$seek, array|\ArrayAccess &$provide, array|\ArrayAccess &$pull, array|\ArrayAccess &$internal,)
An public asset is a file or folder that should be served via the web.
A component is the most general form of an entity in the UI.
This is what a factory for layouts looks like.
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.