ILIAS  trunk Revision v11.0_alpha-1761-g6dbbfa7b760
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
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.

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

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