@rxap/layout 18.0.3-dev.1 → 18.1.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +267 -1
  3. package/compodoc/changelog.html +16 -0
  4. package/compodoc/components/AppsButtonComponent.html +197 -153
  5. package/compodoc/components/BaseLayoutComponent.html +351 -0
  6. package/compodoc/components/DefaultHeaderComponent.html +545 -0
  7. package/compodoc/components/FooterComponent.html +58 -79
  8. package/compodoc/components/HeaderComponent.html +49 -294
  9. package/compodoc/components/LanguageSelectorComponent.html +6 -54
  10. package/compodoc/components/LayoutComponent.html +69 -464
  11. package/compodoc/components/MinimalLayoutComponent.html +349 -0
  12. package/compodoc/components/NavigationComponent.html +116 -312
  13. package/compodoc/components/NavigationItemComponent.html +130 -361
  14. package/compodoc/components/NavigationProgressBarComponent.html +41 -107
  15. package/compodoc/components/ReleaseInfoComponent.html +536 -0
  16. package/compodoc/components/SettingsButtonComponent.html +186 -225
  17. package/compodoc/components/SidenavComponent.html +566 -142
  18. package/compodoc/components/SidenavToggleButtonComponent.html +71 -91
  19. package/compodoc/components/SignOutComponent.html +7 -60
  20. package/compodoc/components/UserProfileIconComponent.html +97 -161
  21. package/compodoc/dependencies.html +9 -25
  22. package/compodoc/directives/FooterDirective-1.html +293 -0
  23. package/compodoc/directives/FooterDirective.html +8 -86
  24. package/compodoc/directives/HeaderDirective.html +293 -0
  25. package/compodoc/index.html +177 -2
  26. package/compodoc/injectables/ExternalAppsService.html +1311 -0
  27. package/compodoc/injectables/FooterService.html +573 -0
  28. package/compodoc/injectables/HeaderService.html +576 -0
  29. package/compodoc/injectables/LayoutService.html +899 -0
  30. package/compodoc/injectables/LogoService.html +411 -0
  31. package/compodoc/injectables/NavigationService.html +46 -57
  32. package/compodoc/interfaces/ReleaseInfoModule.html +385 -0
  33. package/compodoc/interfaces/SettingsMenuItem.html +385 -0
  34. package/compodoc/js/menu-wc.js +24 -40
  35. package/compodoc/js/menu-wc_es5.js +1 -1
  36. package/compodoc/js/search/search_index.js +2 -2
  37. package/compodoc/miscellaneous/functions.html +532 -0
  38. package/compodoc/miscellaneous/typealiases.html +40 -2
  39. package/compodoc/miscellaneous/variables.html +123 -9
  40. package/compodoc/overview.html +2 -10
  41. package/compodoc/properties.html +1 -1
  42. package/docs/assets/highlight.css +42 -0
  43. package/docs/assets/navigation.js +1 -1
  44. package/docs/assets/search.js +1 -1
  45. package/docs/classes/AppsButtonComponent.html +8 -8
  46. package/docs/classes/BaseLayoutComponent.html +2 -0
  47. package/docs/classes/DefaultHeaderComponent.html +7 -0
  48. package/docs/classes/ExternalAppsService.html +19 -0
  49. package/docs/classes/FooterComponent.html +5 -3
  50. package/docs/classes/FooterDirective.html +2 -2
  51. package/docs/classes/FooterService.html +14 -0
  52. package/docs/classes/HeaderComponent.html +6 -8
  53. package/docs/classes/HeaderDirective.html +8 -0
  54. package/docs/classes/HeaderService.html +14 -0
  55. package/docs/classes/LayoutComponent.html +4 -12
  56. package/docs/classes/LayoutService.html +20 -0
  57. package/docs/classes/LogoService.html +7 -0
  58. package/docs/classes/MinimalLayoutComponent.html +2 -0
  59. package/docs/classes/NavigationComponent.html +7 -8
  60. package/docs/classes/NavigationItemComponent.html +6 -9
  61. package/docs/classes/NavigationProgressBarComponent.html +3 -3
  62. package/docs/classes/NavigationService.html +3 -3
  63. package/docs/classes/ReleaseInfoComponent.html +6 -0
  64. package/docs/classes/SettingsButtonComponent.html +6 -11
  65. package/docs/classes/SidenavComponent.html +17 -5
  66. package/docs/classes/SidenavFooterDirective.html +2 -2
  67. package/docs/classes/SidenavHeaderDirective.html +2 -2
  68. package/docs/classes/SidenavToggleButtonComponent.html +4 -3
  69. package/docs/classes/UserProfileIconComponent.html +5 -4
  70. package/docs/documentation.json +9635 -9292
  71. package/docs/functions/IsNavigationDividerItem.html +1 -1
  72. package/docs/functions/IsNavigationInsertItem.html +1 -1
  73. package/docs/functions/IsNavigationItem.html +1 -1
  74. package/docs/functions/provideLayout.html +1 -0
  75. package/docs/functions/widthDefaultHeaderComponent.html +1 -0
  76. package/docs/functions/withExternalApps.html +1 -0
  77. package/docs/functions/withFooterComponents.html +1 -0
  78. package/docs/functions/withHeaderComponents.html +1 -0
  79. package/docs/functions/withNavigationConfig.html +1 -0
  80. package/docs/functions/withNavigationInserts.html +1 -0
  81. package/docs/functions/withReleaseInfoModules.html +1 -0
  82. package/docs/functions/withSettingsMenuItems.html +1 -0
  83. package/docs/index.html +65 -2
  84. package/docs/interfaces/NavigationDividerItem.html +2 -2
  85. package/docs/interfaces/NavigationInsertItem.html +2 -2
  86. package/docs/interfaces/NavigationItem.html +2 -2
  87. package/docs/interfaces/NavigationStatus.html +2 -2
  88. package/docs/interfaces/ReleaseInfoModule.html +4 -0
  89. package/docs/interfaces/SettingsMenuItem.html +4 -0
  90. package/docs/modules.html +31 -17
  91. package/docs/types/ExternalApp.html +1 -0
  92. package/docs/types/ExtractUsernameFromProfileFn.html +1 -1
  93. package/docs/types/Navigation.html +1 -1
  94. package/docs/types/NavigationWithInserts.html +1 -1
  95. package/docs/types/SettingsMenuItemComponent.html +1 -0
  96. package/docs/variables/EXTRACT_USERNAME_FROM_PROFILE.html +1 -1
  97. package/docs/variables/RXAP_EXTERNAL_APP.html +1 -0
  98. package/docs/variables/RXAP_EXTERNAL_APP_FILTER.html +1 -0
  99. package/docs/variables/RXAP_FOOTER_COMPONENT.html +1 -1
  100. package/docs/variables/RXAP_HEADER_COMPONENT.html +1 -1
  101. package/docs/variables/RXAP_LAYOUT_APPS_GRID.html +1 -1
  102. package/docs/variables/RXAP_LOGO_CONFIG.html +1 -1
  103. package/docs/variables/RXAP_NAVIGATION_CONFIG.html +1 -1
  104. package/docs/variables/RXAP_NAVIGATION_CONFIG_INSERTS.html +1 -1
  105. package/docs/variables/RXAP_RELEASE_INFO_MODULE.html +1 -0
  106. package/docs/variables/RXAP_SETTINGS_MENU_ITEM.html +1 -0
  107. package/docs/variables/RXAP_SETTINGS_MENU_ITEM_COMPONENT.html +1 -0
  108. package/esm2022/index.mjs +35 -40
  109. package/esm2022/lib/base-layout/base-layout.component.mjs +16 -0
  110. package/esm2022/lib/default-header/apps-button/apps-button.component.mjs +40 -0
  111. package/esm2022/lib/default-header/default-header.component.mjs +32 -0
  112. package/esm2022/lib/default-header/settings-button/settings-button.component.mjs +73 -0
  113. package/esm2022/lib/default-header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +24 -0
  114. package/esm2022/lib/default-header/user-profile-icon/user-profile-icon.component.mjs +35 -0
  115. package/esm2022/lib/external-apps.service.mjs +99 -0
  116. package/esm2022/lib/footer/footer.component.mjs +13 -13
  117. package/esm2022/lib/footer/footer.directive.mjs +30 -0
  118. package/esm2022/lib/footer.service.mjs +58 -0
  119. package/esm2022/lib/header/header.component.mjs +17 -65
  120. package/esm2022/lib/header/header.directive.mjs +30 -0
  121. package/esm2022/lib/header.service.mjs +60 -0
  122. package/esm2022/lib/layout/layout.component.mjs +33 -47
  123. package/esm2022/lib/layout.service.mjs +93 -0
  124. package/esm2022/lib/logo.service.mjs +23 -0
  125. package/esm2022/lib/minimal-layout/minimal-layout.component.mjs +14 -0
  126. package/esm2022/lib/navigation/navigation-item/navigation-item.component.mjs +30 -64
  127. package/esm2022/lib/navigation/navigation.component.mjs +22 -48
  128. package/esm2022/lib/navigation-progress-bar/navigation-progress-bar.component.mjs +23 -0
  129. package/esm2022/lib/navigation.service.mjs +141 -0
  130. package/esm2022/lib/provide.mjs +80 -0
  131. package/esm2022/lib/release-info/release-info.component.mjs +28 -0
  132. package/esm2022/lib/sidenav/sidenav.component.mjs +50 -33
  133. package/esm2022/lib/tokens.mjs +10 -1
  134. package/esm2022/lib/types.mjs +1 -1
  135. package/fesm2022/rxap-layout.mjs +856 -833
  136. package/fesm2022/rxap-layout.mjs.map +1 -1
  137. package/index.d.ts +18 -19
  138. package/lib/base-layout/base-layout.component.d.ts +5 -0
  139. package/lib/default-header/apps-button/apps-button.component.d.ts +15 -0
  140. package/lib/default-header/default-header.component.d.ts +11 -0
  141. package/lib/{header → default-header}/settings-button/settings-button.component.d.ts +6 -14
  142. package/lib/{header → default-header}/sidenav-toggle-button/sidenav-toggle-button.component.d.ts +3 -5
  143. package/lib/default-header/user-profile-icon/user-profile-icon.component.d.ts +10 -0
  144. package/lib/external-apps.service.d.ts +26 -0
  145. package/lib/footer/footer.component.d.ts +3 -3
  146. package/lib/{footer.directive.d.ts → footer/footer.directive.d.ts} +2 -4
  147. package/lib/footer.service.d.ts +32 -0
  148. package/lib/header/header.component.d.ts +6 -12
  149. package/lib/header/header.directive.d.ts +12 -0
  150. package/lib/header.service.d.ts +34 -0
  151. package/lib/layout/layout.component.d.ts +4 -17
  152. package/lib/layout.service.d.ts +26 -0
  153. package/lib/logo.service.d.ts +10 -0
  154. package/lib/minimal-layout/minimal-layout.component.d.ts +5 -0
  155. package/lib/navigation/navigation-item/navigation-item.component.d.ts +10 -18
  156. package/lib/navigation/navigation.component.d.ts +10 -15
  157. package/lib/{header/navigation-progress-bar → navigation-progress-bar}/navigation-progress-bar.component.d.ts +1 -3
  158. package/lib/{navigation/navigation.service.d.ts → navigation.service.d.ts} +4 -5
  159. package/lib/provide.d.ts +13 -0
  160. package/lib/release-info/release-info.component.d.ts +9 -0
  161. package/lib/sidenav/sidenav.component.d.ts +18 -6
  162. package/lib/tokens.d.ts +12 -3
  163. package/lib/types.d.ts +15 -4
  164. package/package.json +30 -66
  165. package/theme.css +1 -1
  166. package/docs/classes/AppUrlService.html +0 -13
  167. package/docs/classes/AuthenticationServiceMock.html +0 -3
  168. package/docs/classes/LanguageSelectorComponent.html +0 -3
  169. package/docs/classes/LayoutComponentService.html +0 -15
  170. package/docs/classes/ReplaceRouterPathsPipe.html +0 -4
  171. package/docs/classes/ReplaceRouterPathsService.html +0 -3
  172. package/docs/classes/ResetButtonComponent.html +0 -3
  173. package/docs/classes/SidenavComponentService.html +0 -5
  174. package/docs/classes/SignOutComponent.html +0 -4
  175. package/docs/classes/ToggleWindowSidenavButtonComponent.html +0 -5
  176. package/docs/classes/VersionComponent.html +0 -7
  177. package/docs/classes/WindowContainerSidenavComponent.html +0 -10
  178. package/docs/interfaces/ExternalApps.html +0 -8
  179. package/docs/interfaces/LogoConfig.html +0 -4
  180. package/esm2022/lib/app-url.service.mjs +0 -78
  181. package/esm2022/lib/authentication.service.mock.mjs +0 -13
  182. package/esm2022/lib/footer.directive.mjs +0 -40
  183. package/esm2022/lib/header/apps-button/apps-button.component.mjs +0 -46
  184. package/esm2022/lib/header/language-selector/language-selector.component.mjs +0 -35
  185. package/esm2022/lib/header/navigation-progress-bar/navigation-progress-bar.component.mjs +0 -30
  186. package/esm2022/lib/header/reset-button/reset-button.component.mjs +0 -23
  187. package/esm2022/lib/header/settings-button/settings-button.component.mjs +0 -87
  188. package/esm2022/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +0 -26
  189. package/esm2022/lib/header/sign-out/sign-out.component.mjs +0 -23
  190. package/esm2022/lib/header/user-profile-icon/user-profile-icon.component.mjs +0 -45
  191. package/esm2022/lib/layout/layout.component.service.mjs +0 -77
  192. package/esm2022/lib/navigation/navigation.service.mjs +0 -145
  193. package/esm2022/lib/navigation/replace-router-paths.pipe.mjs +0 -22
  194. package/esm2022/lib/navigation/replace-router-paths.service.mjs +0 -15
  195. package/esm2022/lib/sidenav/sidenav.component.service.mjs +0 -22
  196. package/esm2022/lib/sidenav/version/version.component.mjs +0 -28
  197. package/esm2022/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.mjs +0 -30
  198. package/esm2022/lib/window-container-sidenav/window-container-sidenav.component.mjs +0 -54
  199. package/lib/app-url.service.d.ts +0 -29
  200. package/lib/authentication.service.mock.d.ts +0 -6
  201. package/lib/header/apps-button/apps-button.component.d.ts +0 -16
  202. package/lib/header/language-selector/language-selector.component.d.ts +0 -8
  203. package/lib/header/reset-button/reset-button.component.d.ts +0 -8
  204. package/lib/header/sign-out/sign-out.component.d.ts +0 -9
  205. package/lib/header/user-profile-icon/user-profile-icon.component.d.ts +0 -15
  206. package/lib/layout/layout.component.service.d.ts +0 -25
  207. package/lib/navigation/replace-router-paths.pipe.d.ts +0 -11
  208. package/lib/navigation/replace-router-paths.service.d.ts +0 -7
  209. package/lib/sidenav/sidenav.component.service.d.ts +0 -11
  210. package/lib/sidenav/version/version.component.d.ts +0 -14
  211. package/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.d.ts +0 -9
  212. package/lib/window-container-sidenav/window-container-sidenav.component.d.ts +0 -17
@@ -161,25 +161,9 @@
161
161
  <tr>
162
162
  <td class="col-md-3">imports</td>
163
163
  <td class="col-md-9">
164
- <code>MatToolbarModule</code>
165
- <code>NgClass</code>
166
- <code>NgIf</code>
167
- <code>MatButtonModule</code>
168
- <code>MatMenuModule</code>
169
- <code>MatIconModule</code>
170
- <code>MatFormFieldModule</code>
171
- <code>StopPropagationDirective</code>
172
- <code>MatSelectModule</code>
173
- <code>FormsModule</code>
174
- <code>MatOptionModule</code>
175
- <code>DataSourceCollectionDirective</code>
176
- <code>MatSlideToggleModule</code>
177
- <code>AsyncPipe</code>
178
- <code><a href="../components/NavigationProgressBarComponent.html" target="_self" >NavigationProgressBarComponent</a></code>
179
- <code><a href="../components/UserProfileIconComponent.html" target="_self" >UserProfileIconComponent</a></code>
180
- <code><a href="../components/AppsButtonComponent.html" target="_self" >AppsButtonComponent</a></code>
181
- <code><a href="../components/SettingsButtonComponent.html" target="_self" >SettingsButtonComponent</a></code>
182
- <code><a href="../components/SidenavToggleButtonComponent.html" target="_self" >SidenavToggleButtonComponent</a></code>
164
+ <code>MatToolbar</code>
165
+ <code>MatToolbarRow</code>
166
+ <code>CdkPortalOutlet</code>
183
167
  </td>
184
168
  </tr>
185
169
 
@@ -221,29 +205,17 @@
221
205
  <li>
222
206
  <span class="modifier">Public</span>
223
207
  <span class="modifier">Readonly</span>
224
- <a href="#collapsable" >collapsable</a>
225
- </li>
226
- <li>
227
- <span class="modifier"></span>
228
- <span class="modifier"></span>
229
- <span class="modifier">Public</span>
230
- <a href="#headerComponent" >headerComponent</a>
231
- </li>
232
- <li>
233
- <span class="modifier"></span>
234
- <span class="modifier">Public</span>
235
- <span class="modifier">Readonly</span>
236
- <a href="#headerComponentService" >headerComponentService</a>
208
+ <a href="#color" >color</a>
237
209
  </li>
238
210
  <li>
239
211
  <span class="modifier">Public</span>
240
212
  <span class="modifier">Readonly</span>
241
- <a href="#layoutComponentService" >layoutComponentService</a>
213
+ <a href="#hasPortals" >hasPortals</a>
242
214
  </li>
243
215
  <li>
244
216
  <span class="modifier">Public</span>
245
217
  <span class="modifier">Readonly</span>
246
- <a href="#opened" >opened</a>
218
+ <a href="#portals" >portals</a>
247
219
  </li>
248
220
  </ul>
249
221
  </td>
@@ -272,78 +244,6 @@
272
244
  </table>
273
245
  </section>
274
246
 
275
- <section data-compodoc="block-constructor">
276
- <h3 id="constructor">Constructor</h3>
277
- <table class="table table-sm table-bordered">
278
- <tbody>
279
- <tr>
280
- <td class="col-md-4">
281
- <code>constructor(headerComponentService: HeaderService, layoutComponentService: <a href="../injectables/LayoutComponentService.html" target="_self">LayoutComponentService</a>, headerComponent: <a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank">any</a>)</code>
282
- </td>
283
- </tr>
284
- <tr>
285
- <td class="col-md-4">
286
- <div class="io-line">Defined in <a href="" data-line="71" class="link-to-prism">src/lib/header/header.component.ts:71</a></div>
287
- </td>
288
- </tr>
289
-
290
- <tr>
291
- <td class="col-md-4">
292
- <div>
293
- <b>Parameters :</b>
294
- <table class="params">
295
- <thead>
296
- <tr>
297
- <td>Name</td>
298
- <td>Type</td>
299
- <td>Optional</td>
300
- </tr>
301
- </thead>
302
- <tbody>
303
- <tr>
304
- <td>headerComponentService</td>
305
-
306
- <td>
307
- <code>HeaderService</code>
308
- </td>
309
-
310
- <td>
311
- No
312
- </td>
313
-
314
- </tr>
315
- <tr>
316
- <td>layoutComponentService</td>
317
-
318
- <td>
319
- <code><a href="../injectables/LayoutComponentService.html" target="_self" >LayoutComponentService</a></code>
320
- </td>
321
-
322
- <td>
323
- No
324
- </td>
325
-
326
- </tr>
327
- <tr>
328
- <td>headerComponent</td>
329
-
330
- <td>
331
- <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >any</a></code>
332
- </td>
333
-
334
- <td>
335
- No
336
- </td>
337
-
338
- </tr>
339
- </tbody>
340
- </table>
341
- </div>
342
- </td>
343
- </tr>
344
- </tbody>
345
- </table>
346
- </section>
347
247
 
348
248
  <section data-compodoc="block-inputs">
349
249
  <h3 id="inputs">Inputs</h3>
@@ -354,21 +254,10 @@
354
254
  <a name="color"></a>
355
255
  <b>color</b>
356
256
  </td>
357
- </tr>
358
- <tr>
359
- <td class="col-md-4">
360
- <i>Type : </i> <code>ThemePalette</code>
361
-
362
- </td>
363
- </tr>
364
- <tr>
365
- <td class="col-md-4">
366
- <i>Default value : </i><code>undefined</code>
367
- </td>
368
257
  </tr>
369
258
  <tr>
370
259
  <td class="col-md-2" colspan="2">
371
- <div class="io-line">Defined in <a href="" data-line="68" class="link-to-prism">src/lib/header/header.component.ts:68</a></div>
260
+ <div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/lib/header/header.component.ts:30</a></div>
372
261
  </td>
373
262
  </tr>
374
263
  </tbody>
@@ -387,24 +276,18 @@
387
276
  <tbody>
388
277
  <tr>
389
278
  <td class="col-md-4">
390
- <a name="collapsable"></a>
279
+ <a name="color"></a>
391
280
  <span class="name">
392
281
  <span class="modifier">Public</span>
393
282
  <span class="modifier">Readonly</span>
394
- <span ><b>collapsable</b></span>
395
- <a href="#collapsable"><span class="icon ion-ios-link"></span></a>
283
+ <span ><b>color</b></span>
284
+ <a href="#color"><span class="icon ion-ios-link"></span></a>
396
285
  </span>
397
286
  </td>
398
287
  </tr>
399
- <tr>
400
- <td class="col-md-4">
401
- <i>Type : </i> <code>Signal&lt;boolean&gt;</code>
402
-
403
- </td>
404
- </tr>
405
288
  <tr>
406
289
  <td class="col-md-4">
407
- <div class="io-line">Defined in <a href="" data-line="70" class="link-to-prism">src/lib/header/header.component.ts:70</a></div>
290
+ <div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/lib/header/header.component.ts:30</a></div>
408
291
  </td>
409
292
  </tr>
410
293
 
@@ -415,72 +298,23 @@
415
298
  <tbody>
416
299
  <tr>
417
300
  <td class="col-md-4">
418
- <a name="headerComponent"></a>
301
+ <a name="hasPortals"></a>
419
302
  <span class="name">
420
- <span class="modifier"></span>
421
- <span class="modifier"></span>
422
- <span class="modifier">Public</span>
423
- <span ><b>headerComponent</b></span>
424
- <a href="#headerComponent"><span class="icon ion-ios-link"></span></a>
425
- </span>
426
- </td>
427
- </tr>
428
- <tr>
429
- <td class="col-md-4">
430
- <i>Type : </i> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >any</a></code>
431
-
432
- </td>
433
- </tr>
434
- <tr>
435
- <td class="col-md-4">
436
- <b>Decorators : </b>
437
- <br />
438
- <code>
439
- @Optional()<br />@Inject(RXAP_HEADER_COMPONENT)<br />
440
- </code>
441
- </td>
442
- </tr>
443
- <tr>
444
- <td class="col-md-4">
445
- <div class="io-line">Defined in <a href="" data-line="77" class="link-to-prism">src/lib/header/header.component.ts:77</a></div>
446
- </td>
447
- </tr>
448
-
449
-
450
- </tbody>
451
- </table>
452
- <table class="table table-sm table-bordered">
453
- <tbody>
454
- <tr>
455
- <td class="col-md-4">
456
- <a name="headerComponentService"></a>
457
- <span class="name">
458
- <span class="modifier"></span>
459
303
  <span class="modifier">Public</span>
460
304
  <span class="modifier">Readonly</span>
461
- <span ><b>headerComponentService</b></span>
462
- <a href="#headerComponentService"><span class="icon ion-ios-link"></span></a>
305
+ <span ><b>hasPortals</b></span>
306
+ <a href="#hasPortals"><span class="icon ion-ios-link"></span></a>
463
307
  </span>
464
308
  </td>
465
309
  </tr>
466
310
  <tr>
467
311
  <td class="col-md-4">
468
- <i>Type : </i> <code>HeaderService</code>
469
-
470
- </td>
471
- </tr>
472
- <tr>
473
- <td class="col-md-4">
474
- <b>Decorators : </b>
475
- <br />
476
- <code>
477
- @Inject(HeaderService)<br />
478
- </code>
312
+ <i>Default value : </i><code>computed(() &#x3D;&gt; this.portals().length &gt; 0)</code>
479
313
  </td>
480
314
  </tr>
481
315
  <tr>
482
316
  <td class="col-md-4">
483
- <div class="io-line">Defined in <a href="" data-line="75" class="link-to-prism">src/lib/header/header.component.ts:75</a></div>
317
+ <div class="io-line">Defined in <a href="" data-line="35" class="link-to-prism">src/lib/header/header.component.ts:35</a></div>
484
318
  </td>
485
319
  </tr>
486
320
 
@@ -491,52 +325,23 @@
491
325
  <tbody>
492
326
  <tr>
493
327
  <td class="col-md-4">
494
- <a name="layoutComponentService"></a>
328
+ <a name="portals"></a>
495
329
  <span class="name">
496
330
  <span class="modifier">Public</span>
497
331
  <span class="modifier">Readonly</span>
498
- <span ><b>layoutComponentService</b></span>
499
- <a href="#layoutComponentService"><span class="icon ion-ios-link"></span></a>
332
+ <span ><b>portals</b></span>
333
+ <a href="#portals"><span class="icon ion-ios-link"></span></a>
500
334
  </span>
501
335
  </td>
502
336
  </tr>
503
337
  <tr>
504
338
  <td class="col-md-4">
505
- <i>Type : </i> <code><a href="../injectables/LayoutComponentService.html" target="_self" >LayoutComponentService</a></code>
506
-
339
+ <i>Default value : </i><code>computed(() &#x3D;&gt; this.headerService.portals())</code>
507
340
  </td>
508
341
  </tr>
509
342
  <tr>
510
343
  <td class="col-md-4">
511
- <div class="io-line">Defined in <a href="" data-line="76" class="link-to-prism">src/lib/header/header.component.ts:76</a></div>
512
- </td>
513
- </tr>
514
-
515
-
516
- </tbody>
517
- </table>
518
- <table class="table table-sm table-bordered">
519
- <tbody>
520
- <tr>
521
- <td class="col-md-4">
522
- <a name="opened"></a>
523
- <span class="name">
524
- <span class="modifier">Public</span>
525
- <span class="modifier">Readonly</span>
526
- <span ><b>opened</b></span>
527
- <a href="#opened"><span class="icon ion-ios-link"></span></a>
528
- </span>
529
- </td>
530
- </tr>
531
- <tr>
532
- <td class="col-md-4">
533
- <i>Type : </i> <code>Signal&lt;boolean&gt;</code>
534
-
535
- </td>
536
- </tr>
537
- <tr>
538
- <td class="col-md-4">
539
- <div class="io-line">Defined in <a href="" data-line="71" class="link-to-prism">src/lib/header/header.component.ts:71</a></div>
344
+ <div class="io-line">Defined in <a href="" data-line="34" class="link-to-prism">src/lib/header/header.component.ts:34</a></div>
540
345
  </td>
541
346
  </tr>
542
347
 
@@ -549,41 +354,20 @@
549
354
 
550
355
 
551
356
  <div class="tab-pane fade tab-source-code" id="source">
552
- <pre class="line-numbers compodoc-sourcecode"><code class="language-typescript">import {
553
- AsyncPipe,
554
- NgClass,
555
- NgIf,
556
- } from &#x27;@angular/common&#x27;;
357
+ <pre class="line-numbers compodoc-sourcecode"><code class="language-typescript">import { CdkPortalOutlet } from &#x27;@angular/cdk/portal&#x27;;
557
358
  import {
558
359
  ChangeDetectionStrategy,
559
360
  Component,
560
- Inject,
561
- Input,
562
- Optional,
563
- Signal,
361
+ computed,
362
+ inject,
363
+ input,
564
364
  } from &#x27;@angular/core&#x27;;
565
- import { FormsModule } from &#x27;@angular/forms&#x27;;
566
- import { MatButtonModule } from &#x27;@angular/material/button&#x27;;
365
+ import { ThemePalette } from &#x27;@angular/material/core&#x27;;
567
366
  import {
568
- MatOptionModule,
569
- ThemePalette,
570
- } from &#x27;@angular/material/core&#x27;;
571
- import { MatFormFieldModule } from &#x27;@angular/material/form-field&#x27;;
572
- import { MatIconModule } from &#x27;@angular/material/icon&#x27;;
573
- import { MatMenuModule } from &#x27;@angular/material/menu&#x27;;
574
- import { MatSelectModule } from &#x27;@angular/material/select&#x27;;
575
- import { MatSlideToggleModule } from &#x27;@angular/material/slide-toggle&#x27;;
576
- import { MatToolbarModule } from &#x27;@angular/material/toolbar&#x27;;
577
- import { DataSourceCollectionDirective } from &#x27;@rxap/data-source/directive&#x27;;
578
- import { StopPropagationDirective } from &#x27;@rxap/directives&#x27;;
579
- import { HeaderService } from &#x27;@rxap/services&#x27;;
580
- import { LayoutComponentService } from &#x27;../layout/layout.component.service&#x27;;
581
- import { RXAP_HEADER_COMPONENT } from &#x27;../tokens&#x27;;
582
- import { AppsButtonComponent } from &#x27;./apps-button/apps-button.component&#x27;;
583
- import { NavigationProgressBarComponent } from &#x27;./navigation-progress-bar/navigation-progress-bar.component&#x27;;
584
- import { SettingsButtonComponent } from &#x27;./settings-button/settings-button.component&#x27;;
585
- import { SidenavToggleButtonComponent } from &#x27;./sidenav-toggle-button/sidenav-toggle-button.component&#x27;;
586
- import { UserProfileIconComponent } from &#x27;./user-profile-icon/user-profile-icon.component&#x27;;
367
+ MatToolbar,
368
+ MatToolbarRow,
369
+ } from &#x27;@angular/material/toolbar&#x27;;
370
+ import { HeaderService } from &#x27;../header.service&#x27;;
587
371
 
588
372
  @Component({
589
373
  selector: &#x27;rxap-header&#x27;,
@@ -592,63 +376,34 @@ import { UserProfileIconComponent } from &#x27;./user-profile-icon/user-profile-
592
376
  changeDetection: ChangeDetectionStrategy.OnPush,
593
377
  standalone: true,
594
378
  imports: [
595
- MatToolbarModule,
596
- NgClass,
597
- NgIf,
598
- MatButtonModule,
599
- MatMenuModule,
600
- MatIconModule,
601
- MatFormFieldModule,
602
- StopPropagationDirective,
603
- MatSelectModule,
604
- FormsModule,
605
- MatOptionModule,
606
- DataSourceCollectionDirective,
607
- MatSlideToggleModule,
608
- AsyncPipe,
609
- NavigationProgressBarComponent,
610
- UserProfileIconComponent,
611
- AppsButtonComponent,
612
- SettingsButtonComponent,
613
- SidenavToggleButtonComponent,
379
+ MatToolbar,
380
+ MatToolbarRow,
381
+ CdkPortalOutlet,
614
382
  ],
615
383
  })
616
384
  export class HeaderComponent {
617
385
 
618
- @Input()
619
- public color: ThemePalette &#x3D; undefined;
386
+ public readonly color &#x3D; input&lt;ThemePalette&gt;();
620
387
 
621
- public readonly collapsable: Signal&lt;boolean&gt;;
622
- public readonly opened: Signal&lt;boolean&gt;;
388
+ private readonly headerService &#x3D; inject(HeaderService);
623
389
 
624
- constructor(
625
- @Inject(HeaderService)
626
- public readonly headerComponentService: HeaderService,
627
- public readonly layoutComponentService: LayoutComponentService,
628
- @Optional() @Inject(RXAP_HEADER_COMPONENT) public headerComponent: any,
629
- ) {
630
- this.collapsable &#x3D; layoutComponentService.collapsable;
631
- this.opened &#x3D; layoutComponentService.opened;
632
- }
390
+ public readonly portals &#x3D; computed(() &#x3D;&gt; this.headerService.portals());
391
+ public readonly hasPortals &#x3D; computed(() &#x3D;&gt; this.portals().length &gt; 0);
633
392
 
634
393
  }
635
394
  </code></pre>
636
395
  </div>
637
396
 
638
397
  <div class="tab-pane fade " id="templateData">
639
- <pre class="line-numbers"><code class="language-html">&lt;mat-toolbar [color]&#x3D;&quot;color&quot; [ngClass]&#x3D;&quot;{ open: opened() }&quot; class&#x3D;&quot;mat-elevation-z3 header&quot;&gt;
640
- &lt;div class&#x3D;&quot;w-full flex flex-row gap-x-4 justify-between items-center&quot;&gt;
641
- &lt;rxap-sidenav-toggle-button *ngIf&#x3D;&quot;!collapsable()&quot;&gt;&lt;/rxap-sidenav-toggle-button&gt;
642
- &lt;div class&#x3D;&quot;grow&quot;&gt;
643
- &lt;ng-content&gt;&lt;/ng-content&gt;
644
- &lt;/div&gt;
645
- &lt;rxap-apps-button class&#x3D;&quot;grow-0&quot;&gt;&lt;/rxap-apps-button&gt;
646
- &lt;rxap-settings-button class&#x3D;&quot;grow-0&quot;&gt;&lt;/rxap-settings-button&gt;
647
- &lt;rxap-user-profile-icon class&#x3D;&quot;grow-0&quot;&gt;&lt;/rxap-user-profile-icon&gt;
648
- &lt;/div&gt;
649
- &lt;/mat-toolbar&gt;
650
-
651
- &lt;rxap-navigation-progress-bar&gt;&lt;/rxap-navigation-progress-bar&gt;
398
+ <pre class="line-numbers"><code class="language-html">@if (hasPortals()) {
399
+ &lt;mat-toolbar [color]&#x3D;&quot;color()&quot; class&#x3D;&quot;mat-elevation-z1&quot;&gt;
400
+ @for (portal of portals(); track portal) {
401
+ &lt;mat-toolbar-row&gt;
402
+ &lt;ng-template [cdkPortalOutlet]&#x3D;&quot;portal&quot;&gt;&lt;/ng-template&gt;
403
+ &lt;/mat-toolbar-row&gt;
404
+ }
405
+ &lt;/mat-toolbar&gt;
406
+ }
652
407
  </code></pre>
653
408
  </div>
654
409
 
@@ -684,9 +439,9 @@ export class HeaderComponent {
684
439
  <script src="../js/libs/htmlparser.js"></script>
685
440
  <script src="../js/libs/deep-iterator.js"></script>
686
441
  <script>
687
- var COMPONENT_TEMPLATE = '<div><mat-toolbar [color]="color" [ngClass]="{ open: opened() }" class="mat-elevation-z3 header"> <div class="w-full flex flex-row gap-x-4 justify-between items-center"> <rxap-sidenav-toggle-button *ngIf="!collapsable()"></rxap-sidenav-toggle-button> <div class="grow"> <ng-content></ng-content> </div> <rxap-apps-button class="grow-0"></rxap-apps-button> <rxap-settings-button class="grow-0"></rxap-settings-button> <rxap-user-profile-icon class="grow-0"></rxap-user-profile-icon> </div></mat-toolbar><rxap-navigation-progress-bar></rxap-navigation-progress-bar></div>'
688
- var COMPONENTS = [{'name': 'AppsButtonComponent', 'selector': 'rxap-apps-button'},{'name': 'FooterComponent', 'selector': 'rxap-footer'},{'name': 'HeaderComponent', 'selector': 'rxap-header'},{'name': 'LanguageSelectorComponent', 'selector': 'rxap-language-selector'},{'name': 'LayoutComponent', 'selector': 'rxap-layout'},{'name': 'NavigationComponent', 'selector': 'ul[rxap-navigation]'},{'name': 'NavigationItemComponent', 'selector': 'li[rxap-navigation-item]'},{'name': 'NavigationProgressBarComponent', 'selector': 'rxap-navigation-progress-bar'},{'name': 'ResetButtonComponent', 'selector': 'rxap-reset-button'},{'name': 'SettingsButtonComponent', 'selector': 'rxap-settings-button'},{'name': 'SidenavComponent', 'selector': 'rxap-sidenav'},{'name': 'SidenavToggleButtonComponent', 'selector': 'rxap-sidenav-toggle-button'},{'name': 'SignOutComponent', 'selector': 'rxap-sign-out'},{'name': 'ToggleWindowSidenavButtonComponent', 'selector': 'rxap-toggle-window-sidenav-button'},{'name': 'UserProfileIconComponent', 'selector': 'rxap-user-profile-icon'},{'name': 'VersionComponent', 'selector': 'rxap-version'},{'name': 'WindowContainerSidenavComponent', 'selector': 'rxap-window-container-sidenav'}];
689
- var DIRECTIVES = [{'name': 'FooterDirective', 'selector': '[rxapFooter]'},{'name': 'SidenavFooterDirective', 'selector': '[rxapSidenavFooter]'},{'name': 'SidenavHeaderDirective', 'selector': '[rxapSidenavHeader]'}];
442
+ var COMPONENT_TEMPLATE = '<div>@if (hasPortals()) { <mat-toolbar [color]="color()" class="mat-elevation-z1"> @for (portal of portals(); track portal) { <mat-toolbar-row> <ng-template [cdkPortalOutlet]="portal"></ng-template> </mat-toolbar-row> } </mat-toolbar>}</div>'
443
+ var COMPONENTS = [{'name': 'AppsButtonComponent', 'selector': 'rxap-apps-button'},{'name': 'BaseLayoutComponent', 'selector': 'rxap-base-layout'},{'name': 'DefaultHeaderComponent', 'selector': 'rxap-default-header'},{'name': 'FooterComponent', 'selector': 'rxap-footer'},{'name': 'HeaderComponent', 'selector': 'rxap-header'},{'name': 'LayoutComponent', 'selector': 'rxap-layout'},{'name': 'MinimalLayoutComponent', 'selector': 'rxap-minimal-layout'},{'name': 'NavigationComponent', 'selector': 'ul[rxap-navigation]'},{'name': 'NavigationItemComponent', 'selector': 'li[rxap-navigation-item]'},{'name': 'NavigationProgressBarComponent', 'selector': 'rxap-navigation-progress-bar'},{'name': 'ReleaseInfoComponent', 'selector': 'rxap-release-info'},{'name': 'SettingsButtonComponent', 'selector': 'rxap-settings-button'},{'name': 'SidenavComponent', 'selector': 'rxap-sidenav'},{'name': 'SidenavToggleButtonComponent', 'selector': 'rxap-sidenav-toggle-button'},{'name': 'UserProfileIconComponent', 'selector': 'rxap-user-profile-icon'}];
444
+ var DIRECTIVES = [{'name': 'FooterDirective', 'selector': '[rxapFooter]'},{'name': 'HeaderDirective', 'selector': '[rxapHeader]'},{'name': 'SidenavFooterDirective', 'selector': '[rxapSidenavFooter]'},{'name': 'SidenavHeaderDirective', 'selector': '[rxapSidenavHeader]'}];
690
445
  var ACTUAL_COMPONENT = {'name': 'HeaderComponent'};
691
446
  </script>
692
447
  <script src="../js/tree.js"></script>
@@ -225,54 +225,6 @@
225
225
  </table>
226
226
  </section>
227
227
 
228
- <section data-compodoc="block-constructor">
229
- <h3 id="constructor">Constructor</h3>
230
- <table class="table table-sm table-bordered">
231
- <tbody>
232
- <tr>
233
- <td class="col-md-4">
234
- <code>constructor(language: LanguageSelectorService)</code>
235
- </td>
236
- </tr>
237
- <tr>
238
- <td class="col-md-4">
239
- <div class="io-line">Defined in <a href="" data-line="34" class="link-to-prism">src/lib/header/language-selector/language-selector.component.ts:34</a></div>
240
- </td>
241
- </tr>
242
-
243
- <tr>
244
- <td class="col-md-4">
245
- <div>
246
- <b>Parameters :</b>
247
- <table class="params">
248
- <thead>
249
- <tr>
250
- <td>Name</td>
251
- <td>Type</td>
252
- <td>Optional</td>
253
- </tr>
254
- </thead>
255
- <tbody>
256
- <tr>
257
- <td>language</td>
258
-
259
- <td>
260
- <code>LanguageSelectorService</code>
261
- </td>
262
-
263
- <td>
264
- No
265
- </td>
266
-
267
- </tr>
268
- </tbody>
269
- </table>
270
- </div>
271
- </td>
272
- </tr>
273
- </tbody>
274
- </table>
275
- </section>
276
228
 
277
229
 
278
230
 
@@ -299,13 +251,12 @@
299
251
  </tr>
300
252
  <tr>
301
253
  <td class="col-md-4">
302
- <i>Type : </i> <code>LanguageSelectorService</code>
303
-
254
+ <i>Default value : </i><code>inject(LanguageSelectorService)</code>
304
255
  </td>
305
256
  </tr>
306
257
  <tr>
307
258
  <td class="col-md-4">
308
- <div class="io-line">Defined in <a href="" data-line="35" class="link-to-prism">src/lib/header/language-selector/language-selector.component.ts:35</a></div>
259
+ <div class="io-line">Defined in <a href="" data-line="37" class="link-to-prism">src/lib/header/language-selector/language-selector.component.ts:37</a></div>
309
260
  </td>
310
261
  </tr>
311
262
 
@@ -326,6 +277,7 @@
326
277
  import {
327
278
  ChangeDetectionStrategy,
328
279
  Component,
280
+ inject,
329
281
  } from &#x27;@angular/core&#x27;;
330
282
  import { FormsModule } from &#x27;@angular/forms&#x27;;
331
283
  import { MatOptionModule } from &#x27;@angular/material/core&#x27;;
@@ -352,8 +304,8 @@ import { LanguageSelectorService } from &#x27;@rxap/ngx-localize&#x27;;
352
304
  ],
353
305
  })
354
306
  export class LanguageSelectorComponent {
355
- constructor(public readonly language: LanguageSelectorService) {
356
- }
307
+
308
+ public readonly language &#x3D; inject(LanguageSelectorService);
357
309
 
358
310
  }
359
311
  </code></pre>
@@ -430,7 +382,7 @@ export class LanguageSelectorComponent {
430
382
  <script src="../js/libs/deep-iterator.js"></script>
431
383
  <script>
432
384
  var COMPONENT_TEMPLATE = '<div><ng-template [ngIf]="(language.languages | keyvalue).length"> <div> <mat-form-field appearance="outline" class="language-selector" rxapStopPropagation> <mat-label i18n>Select Language</mat-label> <mat-select (ngModelChange)="language.setLanguage($event)" [ngModel]="language.selectedLanguage"> <mat-option *ngFor="let item of language.languages | keyvalue" [value]="item.key">{{item.value}}</mat-option> </mat-select> </mat-form-field> </div></ng-template></div>'
433
- var COMPONENTS = [{'name': 'AppsButtonComponent', 'selector': 'rxap-apps-button'},{'name': 'FooterComponent', 'selector': 'rxap-footer'},{'name': 'HeaderComponent', 'selector': 'rxap-header'},{'name': 'LanguageSelectorComponent', 'selector': 'rxap-language-selector'},{'name': 'LayoutComponent', 'selector': 'rxap-layout'},{'name': 'NavigationComponent', 'selector': 'ul[rxap-navigation]'},{'name': 'NavigationItemComponent', 'selector': 'li[rxap-navigation-item]'},{'name': 'NavigationProgressBarComponent', 'selector': 'rxap-navigation-progress-bar'},{'name': 'ResetButtonComponent', 'selector': 'rxap-reset-button'},{'name': 'SettingsButtonComponent', 'selector': 'rxap-settings-button'},{'name': 'SidenavComponent', 'selector': 'rxap-sidenav'},{'name': 'SidenavToggleButtonComponent', 'selector': 'rxap-sidenav-toggle-button'},{'name': 'SignOutComponent', 'selector': 'rxap-sign-out'},{'name': 'ToggleWindowSidenavButtonComponent', 'selector': 'rxap-toggle-window-sidenav-button'},{'name': 'UserProfileIconComponent', 'selector': 'rxap-user-profile-icon'},{'name': 'VersionComponent', 'selector': 'rxap-version'},{'name': 'WindowContainerSidenavComponent', 'selector': 'rxap-window-container-sidenav'}];
385
+ var COMPONENTS = [{'name': 'AppsButtonComponent', 'selector': 'rxap-apps-button'},{'name': 'BaseLayoutComponent', 'selector': 'rxap-base-layout'},{'name': 'FooterComponent', 'selector': 'rxap-footer'},{'name': 'HeaderComponent', 'selector': 'rxap-header'},{'name': 'LanguageSelectorComponent', 'selector': 'rxap-language-selector'},{'name': 'LayoutComponent', 'selector': 'rxap-layout'},{'name': 'MinimalLayoutComponent', 'selector': 'rxap-minimal-layout'},{'name': 'NavigationComponent', 'selector': 'ul[rxap-navigation]'},{'name': 'NavigationItemComponent', 'selector': 'li[rxap-navigation-item]'},{'name': 'NavigationProgressBarComponent', 'selector': 'rxap-navigation-progress-bar'},{'name': 'ReleaseInfoComponent', 'selector': 'rxap-release-info'},{'name': 'SettingsButtonComponent', 'selector': 'rxap-settings-button'},{'name': 'SidenavComponent', 'selector': 'rxap-sidenav'},{'name': 'SidenavToggleButtonComponent', 'selector': 'rxap-sidenav-toggle-button'},{'name': 'SignOutComponent', 'selector': 'rxap-sign-out'},{'name': 'UserProfileIconComponent', 'selector': 'rxap-user-profile-icon'}];
434
386
  var DIRECTIVES = [{'name': 'FooterDirective', 'selector': '[rxapFooter]'},{'name': 'SidenavFooterDirective', 'selector': '[rxapSidenavFooter]'},{'name': 'SidenavHeaderDirective', 'selector': '[rxapSidenavHeader]'}];
435
387
  var ACTUAL_COMPONENT = {'name': 'LanguageSelectorComponent'};
436
388
  </script>