34 : void {
35 $define[] = UI\Factory::class;
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;
44
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];
53
54
55
56
57
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];
174
175
176
177 $internal[UI\Implementation\Factory::class] = static fn() =>
210 );
211
212 $internal[UI\Implementation\Component\Counter\Factory::class] = static fn() =>
214
215 $internal[UI\Implementation\Component\Button\Factory::class] = static fn() =>
217
218 $internal[UI\Implementation\Component\Listing\Factory::class] = static fn() =>
223 );
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() =>
230
231 $internal[UI\Implementation\Component\Image\Factory::class] = static fn() =>
233
234 $internal[UI\Implementation\Component\Player\Factory::class] = static fn() =>
236
237 $internal[UI\Implementation\Component\Panel\Factory::class] = static fn() =>
241 );
242 $internal[UI\Implementation\Component\Panel\Listing\Factory::class] = static fn() =>
244 $internal[UI\Implementation\Component\Panel\Secondary\Factory::class] = static fn() =>
246
247 $internal[UI\Implementation\Component\Modal\Factory::class] = static fn() =>
252 );
253 $internal[UI\Implementation\Component\SignalGeneratorInterface::class] = static fn() =>
255 $internal[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class] = static fn() =>
257
258 $internal[UI\Implementation\Component\Progress\Factory::class] = static fn() =>
260 $use[
UI\
Component\Progress\AsyncRefreshInterval::class],
263 );
264 $internal[UI\Implementation\Component\Progress\State\Factory::class] = static fn() =>
267 );
268 $internal[UI\Implementation\Component\Progress\State\Bar\Factory::class] = static fn() =>
270 $internal[UI\Implementation\Component\Progress\DefaultAsyncRefreshInterval::class] = static fn() =>
272
273 $internal[UI\Implementation\Component\Dropzone\Factory::class] = static fn() =>
276 );
277 $internal[UI\Implementation\Component\Dropzone\File\Factory::class] = static fn() =>
281 );
282
283 $internal[UI\Implementation\Component\Popover\Factory::class] = static fn() =>
286 );
287
288 $internal[UI\Implementation\Component\Divider\Factory::class] = static fn() =>
290
291 $internal[UI\Implementation\Component\Link\Factory::class] = static fn() =>
293
294 $internal[UI\Implementation\Component\Dropdown\Factory::class] = static fn() =>
296
297 $internal[UI\Implementation\Component\Item\Factory::class] = static fn() =>
299
300 $internal[UI\Implementation\Component\ViewControl\Factory::class] = static fn() =>
303 );
304
305 $internal[UI\Implementation\Component\Chart\Factory::class] = static fn() =>
309 );
310 $internal[UI\Implementation\Component\Chart\ProgressMeter\Factory::class] = static fn() =>
312 $internal[UI\Implementation\Component\Chart\Bar\Factory::class] = static fn() =>
314
315 $internal[UI\Implementation\Component\Input\Factory::class] = static fn() =>
321 );
322 $internal[UI\Implementation\Component\Input\Field\Factory::class] = static fn() =>
327 $pull[
Data\Factory::class],
330 );
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],
337 );
338 $internal[UI\Implementation\Component\Input\Container\Factory::class] = static fn() =>
343 );
344 $internal[UI\Implementation\Component\Input\Container\Form\Factory::class] = static fn() =>
348 );
349 $internal[UI\Implementation\Component\Input\Container\Filter\Factory::class] = static fn() =>
353 );
354 $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class] = static fn() =>
358 );
359 $internal[UI\Implementation\Component\Input\ViewControl\Factory::class] = static fn() =>
362 $pull[
Data\Factory::class],
366 );
367
368 $internal[UI\Implementation\Component\Table\Factory::class] = static fn() =>
373 $pull[
Data\Factory::class],
376 $use[
UI\Storage::class],
379 );
380 $internal[UI\Implementation\Component\Table\Column\Factory::class] = static fn() =>
383 );
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() =>
390
391 $internal[UI\Implementation\Component\MessageBox\Factory::class] = static fn() =>
393
394 $internal[UI\Implementation\Component\Card\Factory::class] = static fn() =>
396
397 $internal[UI\Implementation\Component\Layout\Factory::class] = static fn() =>
401 );
402 $internal[UI\Implementation\Component\Layout\Page\Factory::class] = static fn() =>
404 $internal[UI\Implementation\Component\Layout\Alignment\Factory::class] = static fn() =>
406
407 $internal[UI\Implementation\Component\MainControls\Factory::class] = static fn() =>
411 );
412 $internal[UI\Implementation\Component\MainControls\Slate\Factory::class] = static fn() =>
417 );
418
419 $internal[UI\Implementation\Component\Tree\Factory::class] = static fn() =>
422 );
423 $internal[UI\Implementation\Component\Tree\Node\Factory::class] = static fn() =>
425
426 $internal[UI\Implementation\Component\Menu\Factory::class] = static fn() =>
429 );
430
431 $internal[UI\Implementation\Component\Symbol\Factory::class] = static fn() =>
436 );
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() =>
443
444 $internal[UI\Implementation\Component\Toast\Factory::class] = static fn() =>
447 );
448
449 $internal[UI\Implementation\Component\Legacy\Factory::class] = static fn() =>
452 );
453
454 $internal[UI\Implementation\Component\Launcher\Factory::class] = static fn() =>
457 );
458
459 $internal[UI\Implementation\Component\Entity\Factory::class] = static fn() =>
461
462 $internal[UI\Implementation\Component\Prompt\Factory::class] = static fn() =>
465 );
466 $internal[UI\Implementation\Component\Prompt\State\Factory::class] = static fn() =>
468
469 $internal[UI\Implementation\Component\Navigation\Factory::class] = static fn() =>
471 $pull[
Data\Factory::class],
473 $use[
UI\Storage::class],
474 );
475
476 $internal[UI\Implementation\DefaultRenderer::class] = static fn() =>
481 );
482 $internal[UI\Implementation\Render\Loader::class] = static fn() =>
493 $pull[
Data\Factory::class],
494 $use[
UI\HelpTextRetriever::class],
496 ),
503 $pull[
Data\Factory::class],
504 $use[
UI\HelpTextRetriever::class],
506 ),
513 $pull[
Data\Factory::class],
514 $use[
UI\HelpTextRetriever::class],
516 ),
523 $pull[
Data\Factory::class],
524 $use[
UI\HelpTextRetriever::class],
526 ),
533 $pull[
Data\Factory::class],
534 $use[
UI\HelpTextRetriever::class],
536 ),
543 $pull[
Data\Factory::class],
544 $use[
UI\HelpTextRetriever::class],
546 ),
547 )
548 )
549 );
550 $internal[UI\Implementation\Render\JavaScriptBinding::class] = static fn() =>
552 $use[
UICore\GlobalTemplate::class],
553 );
554 $internal[UI\Implementation\Render\ResourceRegistry::class] = static fn() =>
556 $use[
UICore\GlobalTemplate::class],
557 );
558 $internal[UI\Implementation\Render\TemplateFactory::class] = static fn() =>
560
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() =>
571
572 $contribute[Component\Resource\PublicAsset::class] = static fn() =>
574 $contribute[Component\Resource\PublicAsset::class] = fn() =>
576
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() =>
633
634
635
636
637
638
639
640
641
642
643
644
645
646 $contribute[Component\Resource\PublicAsset::class] = fn() =>
648
649
650
651 foreach (['tex-chtml-full.js', 'a11y', 'adaptors', 'input', 'output', 'sre', 'ui'] as $asset) {
652 $contribute[Component\Resource\PublicAsset::class] = static fn(
655 {
656 }
657
658 public function getSource(): string
659 {
660 return 'node_modules/mathjax/es5/' . $this->asset;
661 }
662
663 public function getTarget(): string
664 {
665 return 'node_modules/mathjax/es5/' . $this->asset;
666 }
667 };
668 };
669
670
671
672 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
new class () implements
Component\Resource\PublicAsset {
673 public function getSource(): string
674 {
675 return "templates/default/delos.css";
676 }
677 public function getTarget(): string
678 {
679 return "assets/css/delos.css";
680 }
681 };
682 $contribute[Component\Resource\PublicAsset::class] =
static fn() =>
new class () implements
Component\Resource\PublicAsset {
683 public function getSource(): string
684 {
685 return "templates/default/delos_cont.css";
686 }
687 public function getTarget(): string
688 {
689 return "assets/css/delos_cont.css";
690 }
691 };
692 }
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.
__construct()
Constructor setup ILIAS global object @access public.
An public asset is a file or folder that should be served via the web.
This is what a factory for layouts looks like.
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.