ILIAS  trunk Revision v11.0_alpha-2638-g80c1d007f79
ILIAS\UI Class Reference
+ Inheritance diagram for ILIAS\UI:
+ Collaboration diagram for ILIAS\UI:

Public Member Functions

 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,)
 

Detailed Description

Definition at line 23 of file UI.php.

Member Function Documentation

◆ init()

ILIAS\UI::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 
)

Implements ILIAS\Component\Component.

Definition at line 25 of file UI.php.

References ILIAS\GlobalScreen\Provider\__construct().

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  // ATTENTION: these factories are only populated inside $provide in order to
56  // keep plugin renderer- and factory-exchanges possible. These factories will
57  // only be internal again, once this functionality is improved for ILIAS 11.
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  // =================================================================================
173 
174  $internal[UI\Implementation\Factory::class] = static fn() =>
175  new UI\Implementation\Factory(
176  $internal[UI\Implementation\Component\Counter\Factory::class],
177  $internal[UI\Implementation\Component\Button\Factory::class],
178  $internal[UI\Implementation\Component\Listing\Factory::class],
179  $internal[UI\Implementation\Component\Image\Factory::class],
180  $internal[UI\Implementation\Component\Player\Factory::class],
181  $internal[UI\Implementation\Component\Panel\Factory::class],
182  $internal[UI\Implementation\Component\Modal\Factory::class],
183  $internal[UI\Implementation\Component\Progress\Factory::class],
184  $internal[UI\Implementation\Component\Dropzone\Factory::class],
185  $internal[UI\Implementation\Component\Popover\Factory::class],
186  $internal[UI\Implementation\Component\Divider\Factory::class],
187  $internal[UI\Implementation\Component\Link\Factory::class],
188  $internal[UI\Implementation\Component\Dropdown\Factory::class],
189  $internal[UI\Implementation\Component\Item\Factory::class],
190  $internal[UI\Implementation\Component\ViewControl\Factory::class],
191  $internal[UI\Implementation\Component\Chart\Factory::class],
192  $internal[UI\Implementation\Component\Input\Factory::class],
193  $internal[UI\Implementation\Component\Table\Factory::class],
194  $internal[UI\Implementation\Component\MessageBox\Factory::class],
195  $internal[UI\Implementation\Component\Card\Factory::class],
196  $internal[UI\Implementation\Component\Layout\Factory::class],
197  $internal[UI\Implementation\Component\MainControls\Factory::class],
198  $internal[UI\Implementation\Component\Tree\Factory::class],
199  $internal[UI\Implementation\Component\Menu\Factory::class],
200  $internal[UI\Implementation\Component\Symbol\Factory::class],
201  $internal[UI\Implementation\Component\Toast\Factory::class],
202  $internal[UI\Implementation\Component\Legacy\Factory::class],
203  $internal[UI\Implementation\Component\Launcher\Factory::class],
204  $internal[UI\Implementation\Component\Entity\Factory::class],
205  $internal[UI\Implementation\Component\Prompt\Factory::class],
206  );
207 
208  $internal[UI\Implementation\Component\Counter\Factory::class] = static fn() =>
209  new UI\Implementation\Component\Counter\Factory();
210 
211  $internal[UI\Implementation\Component\Button\Factory::class] = static fn() =>
212  new UI\Implementation\Component\Button\Factory();
213 
214  $internal[UI\Implementation\Component\Listing\Factory::class] = static fn() =>
215  new UI\Implementation\Component\Listing\Factory(
216  $internal[UI\Implementation\Component\Listing\Workflow\Factory::class],
217  $internal[UI\Implementation\Component\Listing\CharacteristicValue\Factory::class],
218  $internal[UI\Implementation\Component\Listing\Entity\Factory::class],
219  );
220  $internal[UI\Implementation\Component\Listing\Workflow\Factory::class] = static fn() =>
221  new UI\Implementation\Component\Listing\Workflow\Factory();
222  $internal[UI\Implementation\Component\Listing\CharacteristicValue\Factory::class] = static fn() =>
223  new UI\Implementation\Component\Listing\CharacteristicValue\Factory();
224  $internal[UI\Implementation\Component\Listing\Entity\Factory::class] = static fn() =>
225  new UI\Implementation\Component\Listing\Entity\Factory();
226 
227  $internal[UI\Implementation\Component\Image\Factory::class] = static fn() =>
228  new UI\Implementation\Component\Image\Factory();
229 
230  $internal[UI\Implementation\Component\Player\Factory::class] = static fn() =>
231  new UI\Implementation\Component\Player\Factory();
232 
233  $internal[UI\Implementation\Component\Panel\Factory::class] = static fn() =>
234  new UI\Implementation\Component\Panel\Factory(
235  $internal[UI\Implementation\Component\Panel\Listing\Factory::class],
236  $internal[UI\Implementation\Component\Panel\Secondary\Factory::class],
237  );
238  $internal[UI\Implementation\Component\Panel\Listing\Factory::class] = static fn() =>
239  new UI\Implementation\Component\Panel\Listing\Factory();
240  $internal[UI\Implementation\Component\Panel\Secondary\Factory::class] = static fn() =>
241  new UI\Implementation\Component\Panel\Secondary\Factory();
242 
243  $internal[UI\Implementation\Component\Modal\Factory::class] = static fn() =>
244  new UI\Implementation\Component\Modal\Factory(
245  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
246  $internal[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class],
247  $internal[UI\Implementation\Component\Input\Field\Factory::class],
248  );
249  $internal[UI\Implementation\Component\SignalGeneratorInterface::class] = static fn() =>
250  new UI\Implementation\Component\SignalGenerator();
251  $internal[UI\Implementation\Component\Modal\InterruptiveItem\Factory::class] = static fn() =>
252  new UI\Implementation\Component\Modal\InterruptiveItem\Factory();
253 
254  $internal[UI\Implementation\Component\Progress\Factory::class] = static fn() =>
255  new UI\Implementation\Component\Progress\Factory(
256  $use[UI\Component\Progress\AsyncRefreshInterval::class],
257  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
258  $internal[UI\Implementation\Component\Progress\State\Factory::class],
259  );
260  $internal[UI\Implementation\Component\Progress\State\Factory::class] = static fn() =>
261  new UI\Implementation\Component\Progress\State\Factory(
262  $internal[UI\Implementation\Component\Progress\State\Bar\Factory::class],
263  );
264  $internal[UI\Implementation\Component\Progress\State\Bar\Factory::class] = static fn() =>
265  new UI\Implementation\Component\Progress\State\Bar\Factory();
266  $internal[UI\Implementation\Component\Progress\DefaultAsyncRefreshInterval::class] = static fn() =>
267  new UI\Implementation\Component\Progress\DefaultAsyncRefreshInterval();
268 
269  $internal[UI\Implementation\Component\Dropzone\Factory::class] = static fn() =>
270  new UI\Implementation\Component\Dropzone\Factory(
271  $internal[UI\Implementation\Component\Dropzone\File\Factory::class],
272  );
273  $internal[UI\Implementation\Component\Dropzone\File\Factory::class] = static fn() =>
274  new UI\Implementation\Component\Dropzone\File\Factory(
275  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
276  $internal[UI\Implementation\Component\Input\Field\Factory::class],
277  );
278 
279  $internal[UI\Implementation\Component\Popover\Factory::class] = static fn() =>
280  new UI\Implementation\Component\Popover\Factory(
281  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
282  );
283 
284  $internal[UI\Implementation\Component\Divider\Factory::class] = static fn() =>
285  new UI\Implementation\Component\Divider\Factory();
286 
287  $internal[UI\Implementation\Component\Link\Factory::class] = static fn() =>
288  new UI\Implementation\Component\Link\Factory();
289 
290  $internal[UI\Implementation\Component\Dropdown\Factory::class] = static fn() =>
291  new UI\Implementation\Component\Dropdown\Factory();
292 
293  $internal[UI\Implementation\Component\Item\Factory::class] = static fn() =>
294  new UI\Implementation\Component\Item\Factory();
295 
296  $internal[UI\Implementation\Component\ViewControl\Factory::class] = static fn() =>
297  new UI\Implementation\Component\ViewControl\Factory(
298  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
299  );
300 
301  $internal[UI\Implementation\Component\Chart\Factory::class] = static fn() =>
302  new UI\Implementation\Component\Chart\Factory(
303  $internal[UI\Implementation\Component\Chart\ProgressMeter\Factory::class],
304  $internal[UI\Implementation\Component\Chart\Bar\Factory::class],
305  );
306  $internal[UI\Implementation\Component\Chart\ProgressMeter\Factory::class] = static fn() =>
307  new UI\Implementation\Component\Chart\ProgressMeter\Factory();
308  $internal[UI\Implementation\Component\Chart\Bar\Factory::class] = static fn() =>
309  new UI\Implementation\Component\Chart\Bar\Factory();
310 
311  $internal[UI\Implementation\Component\Input\Factory::class] = static fn() =>
312  new UI\Implementation\Component\Input\Factory(
313  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
314  $internal[UI\Implementation\Component\Input\Field\Factory::class],
315  $internal[UI\Implementation\Component\Input\Container\Factory::class],
316  $internal[UI\Implementation\Component\Input\ViewControl\Factory::class],
317  );
318  $internal[UI\Implementation\Component\Input\Field\Factory::class] = static fn() =>
319  new UI\Implementation\Component\Input\Field\Factory(
320  $internal[UI\Implementation\Component\Input\Field\Node\Factory::class],
321  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
322  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
323  $pull[Data\Factory::class],
324  $pull[Refinery\Factory::class],
325  $use[Language\Language::class]
326  );
327  $internal[UI\Implementation\Component\Input\Field\Node\Factory::class] = static fn() =>
328  new UI\Implementation\Component\Input\Field\Node\Factory();
329  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class] = static fn() =>
330  new UI\Implementation\Component\Input\UploadLimitResolver(
331  $use[UI\Component\Input\Field\PhpUploadLimit::class],
332  $use[UI\Component\Input\Field\GlobalUploadLimit::class],
333  );
334  $internal[UI\Implementation\Component\Input\Container\Factory::class] = static fn() =>
335  new UI\Implementation\Component\Input\Container\Factory(
336  $internal[UI\Implementation\Component\Input\Container\Form\Factory::class],
337  $internal[UI\Implementation\Component\Input\Container\Filter\Factory::class],
338  $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class],
339  );
340  $internal[UI\Implementation\Component\Input\Container\Form\Factory::class] = static fn() =>
341  new UI\Implementation\Component\Input\Container\Form\Factory(
342  $internal[UI\Implementation\Component\Input\Field\Factory::class],
343  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
344  );
345  $internal[UI\Implementation\Component\Input\Container\Filter\Factory::class] = static fn() =>
346  new UI\Implementation\Component\Input\Container\Filter\Factory(
347  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
348  $internal[UI\Implementation\Component\Input\Field\Factory::class],
349  );
350  $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class] = static fn() =>
351  new UI\Implementation\Component\Input\Container\ViewControl\Factory(
352  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
353  $internal[UI\Implementation\Component\Input\ViewControl\Factory::class],
354  );
355  $internal[UI\Implementation\Component\Input\ViewControl\Factory::class] = static fn() =>
356  new UI\Implementation\Component\Input\ViewControl\Factory(
357  $internal[UI\Implementation\Component\Input\Field\Factory::class],
358  $pull[Data\Factory::class],
359  $pull[Refinery\Factory::class],
360  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
361  $use[Language\Language::class],
362  );
363 
364  $internal[UI\Implementation\Component\Table\Factory::class] = static fn() =>
365  new UI\Implementation\Component\Table\Factory(
366  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
367  $internal[UI\Implementation\Component\Input\ViewControl\Factory::class],
368  $internal[UI\Implementation\Component\Input\Container\ViewControl\Factory::class],
369  $pull[Data\Factory::class],
370  $internal[UI\Implementation\Component\Table\Column\Factory::class],
371  $internal[UI\Implementation\Component\Table\Action\Factory::class],
372  $use[UI\Storage::class],
373  $internal[UI\Implementation\Component\Table\DataRowBuilder::class],
374  $internal[UI\Implementation\Component\Table\OrderingRowBuilder::class],
375  );
376  $internal[UI\Implementation\Component\Table\Column\Factory::class] = static fn() =>
377  new UI\Implementation\Component\Table\Column\Factory(
378  $use[\ILIAS\Language\Language::class],
379  );
380  $internal[UI\Implementation\Component\Table\Action\Factory::class] = static fn() =>
381  new UI\Implementation\Component\Table\Action\Factory();
382  $internal[UI\Implementation\Component\Table\DataRowBuilder::class] = static fn() =>
383  new UI\Implementation\Component\Table\DataRowBuilder();
384  $internal[UI\Implementation\Component\Table\OrderingRowBuilder::class] = static fn() =>
385  new UI\Implementation\Component\Table\OrderingRowBuilder();
386 
387  $internal[UI\Implementation\Component\MessageBox\Factory::class] = static fn() =>
388  new UI\Implementation\Component\MessageBox\Factory();
389 
390  $internal[UI\Implementation\Component\Card\Factory::class] = static fn() =>
391  new UI\Implementation\Component\Card\Factory();
392 
393  $internal[UI\Implementation\Component\Layout\Factory::class] = static fn() =>
394  new UI\Implementation\Component\Layout\Factory(
395  $internal[UI\Implementation\Component\Layout\Page\Factory::class],
396  $internal[UI\Implementation\Component\Layout\Alignment\Factory::class],
397  );
398  $internal[UI\Implementation\Component\Layout\Page\Factory::class] = static fn() =>
399  new UI\Implementation\Component\Layout\Page\Factory();
400  $internal[UI\Implementation\Component\Layout\Alignment\Factory::class] = static fn() =>
401  new UI\Implementation\Component\Layout\Alignment\Factory();
402 
403  $internal[UI\Implementation\Component\MainControls\Factory::class] = static fn() =>
404  new UI\Implementation\Component\MainControls\Factory(
405  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
406  $internal[UI\Implementation\Component\MainControls\Slate\Factory::class],
407  );
408  $internal[UI\Implementation\Component\MainControls\Slate\Factory::class] = static fn() =>
409  new UI\Implementation\Component\MainControls\Slate\Factory(
410  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
411  $internal[UI\Implementation\Component\Counter\Factory::class],
412  $internal[UI\Implementation\Component\Symbol\Factory::class],
413  );
414 
415  $internal[UI\Implementation\Component\Tree\Factory::class] = static fn() =>
416  new UI\Implementation\Component\Tree\Factory(
417  $internal[UI\Implementation\Component\Tree\Node\Factory::class],
418  );
419  $internal[UI\Implementation\Component\Tree\Node\Factory::class] = static fn() =>
420  new UI\Implementation\Component\Tree\Node\Factory();
421 
422  $internal[UI\Implementation\Component\Menu\Factory::class] = static fn() =>
423  new UI\Implementation\Component\Menu\Factory(
424  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
425  );
426 
427  $internal[UI\Implementation\Component\Symbol\Factory::class] = static fn() =>
428  new UI\Implementation\Component\Symbol\Factory(
429  $internal[UI\Implementation\Component\Symbol\Icon\Factory::class],
430  $internal[UI\Implementation\Component\Symbol\Glyph\Factory::class],
431  $internal[UI\Implementation\Component\Symbol\Avatar\Factory::class],
432  );
433  $internal[UI\Implementation\Component\Symbol\Icon\Factory::class] = static fn() =>
434  new UI\Implementation\Component\Symbol\Icon\Factory();
435  $internal[UI\Implementation\Component\Symbol\Glyph\Factory::class] = static fn() =>
436  new UI\Implementation\Component\Symbol\Glyph\Factory();
437  $internal[UI\Implementation\Component\Symbol\Avatar\Factory::class] = static fn() =>
438  new UI\Implementation\Component\Symbol\Avatar\Factory();
439 
440  $internal[UI\Implementation\Component\Toast\Factory::class] = static fn() =>
441  new UI\Implementation\Component\Toast\Factory(
442  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
443  );
444 
445  $internal[UI\Implementation\Component\Legacy\Factory::class] = static fn() =>
446  new UI\Implementation\Component\Legacy\Factory(
447  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
448  );
449 
450  $internal[UI\Implementation\Component\Launcher\Factory::class] = static fn() =>
451  new UI\Implementation\Component\Launcher\Factory(
452  $internal[UI\Implementation\Component\Modal\Factory::class],
453  );
454 
455  $internal[UI\Implementation\Component\Entity\Factory::class] = static fn() =>
456  new UI\Implementation\Component\Entity\Factory();
457 
458  $internal[UI\Implementation\Component\Prompt\Factory::class] = static fn() =>
459  new UI\Implementation\Component\Prompt\Factory(
460  $internal[UI\Implementation\Component\SignalGeneratorInterface::class],
461  );
462  $internal[UI\Implementation\Component\Prompt\State\Factory::class] = static fn() =>
463  new UI\Implementation\Component\Prompt\State\Factory();
464 
465  $internal[UI\Implementation\DefaultRenderer::class] = static fn() =>
466  new UI\Implementation\DefaultRenderer(
467  $internal[UI\Implementation\Render\Loader::class],
468  $internal[UI\Implementation\Render\JavaScriptBinding::class],
469  $use[Language\Language::class],
470  );
471  $internal[UI\Implementation\Render\Loader::class] = static fn() =>
472  new UI\Implementation\Render\LoaderCachingWrapper(
473  new UI\Implementation\Render\LoaderResourceRegistryWrapper(
474  $internal[UI\Implementation\Render\ResourceRegistry::class],
475  new UI\Implementation\Render\FSLoader(
476  new UI\Implementation\Render\DefaultRendererFactory(
477  $use[UI\Implementation\FactoryInternal::class],
478  $internal[UI\Implementation\Render\TemplateFactory::class],
479  $use[Language\Language::class],
480  $internal[UI\Implementation\Render\JavaScriptBinding::class],
481  $use[UI\Implementation\Render\ImagePathResolver::class],
482  $pull[Data\Factory::class],
483  $use[UI\HelpTextRetriever::class],
484  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
485  ),
486  new UI\Implementation\Component\Symbol\Glyph\GlyphRendererFactory(
487  $use[UI\Implementation\FactoryInternal::class],
488  $internal[UI\Implementation\Render\TemplateFactory::class],
489  $use[Language\Language::class],
490  $internal[UI\Implementation\Render\JavaScriptBinding::class],
491  $use[UI\Implementation\Render\ImagePathResolver::class],
492  $pull[Data\Factory::class],
493  $use[UI\HelpTextRetriever::class],
494  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
495  ),
496  new UI\Implementation\Component\Input\Field\FieldRendererFactory(
497  $use[UI\Implementation\FactoryInternal::class],
498  $internal[UI\Implementation\Render\TemplateFactory::class],
499  $use[Language\Language::class],
500  $internal[UI\Implementation\Render\JavaScriptBinding::class],
501  $use[UI\Implementation\Render\ImagePathResolver::class],
502  $pull[Data\Factory::class],
503  $use[UI\HelpTextRetriever::class],
504  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
505  ),
506  new UI\Implementation\Component\MessageBox\MessageBoxRendererFactory(
507  $use[UI\Implementation\FactoryInternal::class],
508  $internal[UI\Implementation\Render\TemplateFactory::class],
509  $use[Language\Language::class],
510  $internal[UI\Implementation\Render\JavaScriptBinding::class],
511  $use[UI\Implementation\Render\ImagePathResolver::class],
512  $pull[Data\Factory::class],
513  $use[UI\HelpTextRetriever::class],
514  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
515  ),
516  new UI\Implementation\Component\Input\Container\Form\FormRendererFactory(
517  $use[UI\Implementation\FactoryInternal::class],
518  $internal[UI\Implementation\Render\TemplateFactory::class],
519  $use[Language\Language::class],
520  $internal[UI\Implementation\Render\JavaScriptBinding::class],
521  $use[UI\Implementation\Render\ImagePathResolver::class],
522  $pull[Data\Factory::class],
523  $use[UI\HelpTextRetriever::class],
524  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
525  ),
526  new UI\Implementation\Component\Menu\MenuRendererFactory(
527  $use[UI\Implementation\FactoryInternal::class],
528  $internal[UI\Implementation\Render\TemplateFactory::class],
529  $use[Language\Language::class],
530  $internal[UI\Implementation\Render\JavaScriptBinding::class],
531  $use[UI\Implementation\Render\ImagePathResolver::class],
532  $pull[Data\Factory::class],
533  $use[UI\HelpTextRetriever::class],
534  $internal[UI\Implementation\Component\Input\UploadLimitResolver::class],
535  ),
536  )
537  )
538  );
539  $internal[UI\Implementation\Render\JavaScriptBinding::class] = static fn() =>
540  new UI\Implementation\Render\ilJavaScriptBinding(
541  $use[UICore\GlobalTemplate::class],
542  );
543  $internal[UI\Implementation\Render\ResourceRegistry::class] = static fn() =>
544  new UI\Implementation\Render\ilResourceRegistry(
545  $use[UICore\GlobalTemplate::class],
546  );
547  $internal[UI\Implementation\Render\TemplateFactory::class] = static fn() =>
548  new UI\Implementation\Render\ilTemplateWrapperFactory();
549 
550  $contribute[Component\Resource\PublicAsset::class] = fn() =>
551  new Component\Resource\ComponentJS($this, "js/Button/button.js");
552  $contribute[Component\Resource\PublicAsset::class] = fn() =>
553  new Component\Resource\ComponentJS($this, "js/Chart/Bar/dist/bar.js");
554  $contribute[Component\Resource\PublicAsset::class] = fn() =>
555  new Component\Resource\ComponentJS($this, "js/Core/dist/core.js");
556  $contribute[Component\Resource\PublicAsset::class] = fn() =>
557  new Component\Resource\ComponentJS($this, "js/Counter/dist/counter.js");
558  $contribute[Component\Resource\PublicAsset::class] = fn() =>
559  new Component\Resource\ComponentJS($this, "js/Dropdown/dist/dropdown.js");
560 
561  $contribute[Component\Resource\PublicAsset::class] = static fn() =>
562  new Component\Resource\NodeModule("dropzone/dist/min/dropzone.min.js");
563  $contribute[Component\Resource\PublicAsset::class] = fn() =>
564  new Component\Resource\ComponentJS($this, "js/Dropzone/File/dropzone.js");
565 
566  $contribute[Component\Resource\PublicAsset::class] = fn() =>
567  new Component\Resource\ComponentJS($this, "js/Image/dist/image.min.js");
568  $contribute[Component\Resource\PublicAsset::class] = fn() =>
569  new Component\Resource\ComponentJS($this, "js/Input/Container/dist/filter.js");
570  $contribute[Component\Resource\PublicAsset::class] = fn() =>
571  new Component\Resource\ComponentJS($this, "js/Input/Field/dist/input.factory.min.js");
572  $contribute[Component\Resource\PublicAsset::class] = fn() =>
573  new Component\Resource\ComponentJS($this, "js/Input/Field/file.js");
574  $contribute[Component\Resource\PublicAsset::class] = fn() =>
575  new Component\Resource\ComponentJS($this, "js/Input/Field/input.js");
576  $contribute[Component\Resource\PublicAsset::class] = fn() =>
577  new Component\Resource\ComponentJS($this, "js/Input/Field/tagInput.js");
578  $contribute[Component\Resource\PublicAsset::class] = fn() =>
579  new Component\Resource\ComponentJS($this, "js/Item/dist/notification.js");
580  $contribute[Component\Resource\PublicAsset::class] = fn() =>
581  new Component\Resource\ComponentJS($this, "js/MainControls/dist/mainbar.js");
582  $contribute[Component\Resource\PublicAsset::class] = fn() =>
583  new Component\Resource\ComponentJS($this, "js/MainControls/dist/maincontrols.min.js");
584  $contribute[Component\Resource\PublicAsset::class] = fn() =>
585  new Component\Resource\ComponentJS($this, "js/MainControls/system_info.js");
586  $contribute[Component\Resource\PublicAsset::class] = fn() =>
587  new Component\Resource\ComponentJS($this, "js/Menu/dist/drilldown.min.js");
588  $contribute[Component\Resource\PublicAsset::class] = fn() =>
589  new Component\Resource\ComponentJS($this, "js/Modal/dist/modal.min.js");
590  $contribute[Component\Resource\PublicAsset::class] = fn() =>
591  new Component\Resource\ComponentJS($this, "js/Prompt/dist/prompt.min.js");
592  $contribute[Component\Resource\PublicAsset::class] = fn() =>
593  new Component\Resource\ComponentJS($this, "js/Page/stdpage.js");
594  $contribute[Component\Resource\PublicAsset::class] = fn() =>
595  new Component\Resource\ComponentJS($this, "js/Popover/popover.js");
596  $contribute[Component\Resource\PublicAsset::class] = fn() =>
597  new Component\Resource\ComponentJS($this, "js/Table/dist/table.min.js");
598  $contribute[Component\Resource\PublicAsset::class] = fn() =>
599  new Component\Resource\ComponentJS($this, "js/Toast/toast.js");
600  $contribute[Component\Resource\PublicAsset::class] = fn() =>
601  new Component\Resource\ComponentJS($this, "js/Tree/tree.js");
602  $contribute[Component\Resource\PublicAsset::class] = fn() =>
603  new Component\Resource\ComponentJS($this, "js/ViewControl/dist/viewcontrols.min.js");
604  $contribute[Component\Resource\PublicAsset::class] = fn() =>
605  new Component\Resource\OfComponent($this, "images", "assets");
606  $contribute[Component\Resource\PublicAsset::class] = fn() =>
607  new Component\Resource\OfComponent($this, "fonts", "assets");
608  $contribute[Component\Resource\PublicAsset::class] = fn() =>
609  new Component\Resource\OfComponent($this, "ui-examples", "assets");
610  $contribute[Component\Resource\PublicAsset::class] = static fn() =>
611  new Component\Resource\NodeModule("@yaireo/tagify/dist/tagify.js");
612  $contribute[Component\Resource\PublicAsset::class] = static fn() =>
613  new Component\Resource\NodeModule("@yaireo/tagify/dist/tagify.css");
614  $contribute[Component\Resource\PublicAsset::class] = static fn() =>
615  new Component\Resource\NodeModule("chart.js/dist/chart.umd.js");
616  $contribute[Component\Resource\PublicAsset::class] = fn() =>
617  new Component\Resource\ComponentJS($this, "js/Progress/dist/progress.min.js");
618  $contribute[Component\Resource\PublicAsset::class] = fn() =>
619  new Component\Resource\ComponentJS($this, "js/MainControls/dist/footer.min.js");
620  $contribute[Component\Resource\PublicAsset::class] = fn() =>
621  new Component\Resource\ComponentJS($this, "js/Input/ViewControl/dist/input.viewcontrols.min.js");
622  $contribute[Component\Resource\PublicAsset::class] = fn() =>
623  new Component\Resource\ComponentJS($this, "js/MathJax/mathjax_config.js");
624 
625  /*
626  those are contributed by MediaObjects
627  $contribute[Component\Resource\PublicAsset::class] = fn() =>
628  new Component\Resource\NodeModule("mediaelement/build/mediaelement-and-player.min.js");
629  $contribute[Component\Resource\PublicAsset::class] = fn() =>
630  new Component\Resource\NodeModule("./node_modules/mediaelement/build/mediaelementplayer.min.css");
631  */
632  /* This library was missing after discussing dependencies for ILIAS 10
633  $contribute[Component\Resource\PublicAsset::class] = fn() =>
634  new Component\Resource\NodeModule("mediaelement/build/renderers/vimeo.min.js");
635  */
636  /* This library was missing after discussing dependencies for ILIAS 10
637  $contribute[Component\Resource\PublicAsset::class] = fn() =>
638  new Component\Resource\NodeModule("webui-popover/dist/jquery.webui-popover.min.js");
639  */
640 
641  // This is included via anonymous classes
642  // because MathJax resources are taken from node_modules and they may be directories
643  foreach (['tex-chtml-full.js', 'a11y', 'adaptors', 'input', 'output', 'sre', 'ui'] as $asset) {
644  $contribute[Component\Resource\PublicAsset::class] = static fn(
645  ) => new readonly class ($asset) implements Component\Resource\PublicAsset {
646  public function __construct(private string $asset)
647  {
648  }
649 
650  public function getSource(): string
651  {
652  return 'node_modules/mathjax/es5/' . $this->asset;
653  }
654 
655  public function getTarget(): string
656  {
657  return 'node_modules/mathjax/es5/' . $this->asset;
658  }
659  };
660  };
661 
662  // This is included via anonymous classes as a testament to the fact, that
663  // the templates-folder should probably be moved to some component.
664  $contribute[Component\Resource\PublicAsset::class] = static fn() => new class () implements Component\Resource\PublicAsset {
665  public function getSource(): string
666  {
667  return "templates/default/delos.css";
668  }
669  public function getTarget(): string
670  {
671  return "assets/css/delos.css";
672  }
673  };
674  $contribute[Component\Resource\PublicAsset::class] = static fn() => new class () implements Component\Resource\PublicAsset {
675  public function getSource(): string
676  {
677  return "templates/default/delos_cont.css";
678  }
679  public function getTarget(): string
680  {
681  return "assets/css/delos_cont.css";
682  }
683  };
684  }
Interface Observer Contains several chained tasks and infos about them.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct()
Constructor setup ILIAS global object public.
Definition: class.ilias.php:76
+ Here is the call graph for this function:

The documentation for this class was generated from the following file: