@rxap/layout 18.0.2 → 18.0.3-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 (182) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +14 -1
  3. package/compodoc/changelog.html +732 -0
  4. package/compodoc/components/AppsButtonComponent.html +604 -0
  5. package/compodoc/components/FooterComponent.html +487 -0
  6. package/compodoc/components/HeaderComponent.html +781 -0
  7. package/compodoc/components/LanguageSelectorComponent.html +526 -0
  8. package/compodoc/components/LayoutComponent.html +1035 -0
  9. package/compodoc/components/NavigationComponent.html +1156 -0
  10. package/compodoc/components/NavigationItemComponent.html +1328 -0
  11. package/compodoc/components/NavigationProgressBarComponent.html +550 -0
  12. package/compodoc/components/ResetButtonComponent.html +486 -0
  13. package/compodoc/components/SettingsButtonComponent.html +1416 -0
  14. package/compodoc/components/SidenavComponent.html +689 -0
  15. package/compodoc/components/SidenavToggleButtonComponent.html +517 -0
  16. package/compodoc/components/SignOutComponent.html +493 -0
  17. package/compodoc/components/ToggleWindowSidenavButtonComponent.html +549 -0
  18. package/compodoc/components/UserProfileIconComponent.html +657 -0
  19. package/compodoc/components/VersionComponent.html +524 -0
  20. package/compodoc/components/WindowContainerSidenavComponent.html +687 -0
  21. package/compodoc/dependencies.html +241 -0
  22. package/compodoc/directives/FooterDirective.html +371 -0
  23. package/compodoc/directives/SidenavFooterDirective.html +387 -0
  24. package/compodoc/directives/SidenavHeaderDirective.html +387 -0
  25. package/compodoc/fonts/ionicons.eot +0 -0
  26. package/compodoc/fonts/ionicons.svg +2090 -0
  27. package/compodoc/fonts/ionicons.ttf +0 -0
  28. package/compodoc/fonts/ionicons.woff +0 -0
  29. package/compodoc/fonts/ionicons.woff2 +0 -0
  30. package/compodoc/fonts/roboto-v15-latin-300.eot +0 -0
  31. package/compodoc/fonts/roboto-v15-latin-300.svg +314 -0
  32. package/compodoc/fonts/roboto-v15-latin-300.ttf +0 -0
  33. package/compodoc/fonts/roboto-v15-latin-300.woff +0 -0
  34. package/compodoc/fonts/roboto-v15-latin-300.woff2 +0 -0
  35. package/compodoc/fonts/roboto-v15-latin-700.eot +0 -0
  36. package/compodoc/fonts/roboto-v15-latin-700.svg +310 -0
  37. package/compodoc/fonts/roboto-v15-latin-700.ttf +0 -0
  38. package/compodoc/fonts/roboto-v15-latin-700.woff +0 -0
  39. package/compodoc/fonts/roboto-v15-latin-700.woff2 +0 -0
  40. package/compodoc/fonts/roboto-v15-latin-italic.eot +0 -0
  41. package/compodoc/fonts/roboto-v15-latin-italic.svg +323 -0
  42. package/compodoc/fonts/roboto-v15-latin-italic.ttf +0 -0
  43. package/compodoc/fonts/roboto-v15-latin-italic.woff +0 -0
  44. package/compodoc/fonts/roboto-v15-latin-italic.woff2 +0 -0
  45. package/compodoc/fonts/roboto-v15-latin-regular.eot +0 -0
  46. package/compodoc/fonts/roboto-v15-latin-regular.svg +308 -0
  47. package/compodoc/fonts/roboto-v15-latin-regular.ttf +0 -0
  48. package/compodoc/fonts/roboto-v15-latin-regular.woff +0 -0
  49. package/compodoc/fonts/roboto-v15-latin-regular.woff2 +0 -0
  50. package/compodoc/graph/dependencies.svg +24 -0
  51. package/compodoc/images/compodoc-vectorise-inverted.png +0 -0
  52. package/compodoc/images/compodoc-vectorise-inverted.svg +201 -0
  53. package/compodoc/images/compodoc-vectorise.png +0 -0
  54. package/compodoc/images/compodoc-vectorise.svg +201 -0
  55. package/compodoc/images/favicon.ico +0 -0
  56. package/compodoc/index.html +197 -0
  57. package/compodoc/injectables/AppUrlService.html +829 -0
  58. package/compodoc/injectables/AuthenticationServiceMock.html +303 -0
  59. package/compodoc/injectables/LayoutComponentService.html +848 -0
  60. package/compodoc/injectables/NavigationService.html +1081 -0
  61. package/compodoc/injectables/ReplaceRouterPathsService.html +337 -0
  62. package/compodoc/injectables/SidenavComponentService.html +408 -0
  63. package/compodoc/interfaces/ExternalApps.html +634 -0
  64. package/compodoc/interfaces/LogoConfig.html +381 -0
  65. package/compodoc/interfaces/NavigationDividerItem.html +385 -0
  66. package/compodoc/interfaces/NavigationInsertItem.html +340 -0
  67. package/compodoc/interfaces/NavigationItem.html +520 -0
  68. package/compodoc/interfaces/NavigationStatus.html +376 -0
  69. package/compodoc/js/compodoc.js +14 -0
  70. package/compodoc/js/lazy-load-graphs.js +44 -0
  71. package/compodoc/js/libs/EventDispatcher.js +5 -0
  72. package/compodoc/js/libs/bootstrap-native.js +2 -0
  73. package/compodoc/js/libs/clipboard.min.js +7 -0
  74. package/compodoc/js/libs/custom-elements-es5-adapter.js +15 -0
  75. package/compodoc/js/libs/custom-elements.min.js +38 -0
  76. package/compodoc/js/libs/d3.v3.min.js +2 -0
  77. package/compodoc/js/libs/deep-iterator.js +2 -0
  78. package/compodoc/js/libs/es6-shim.min.js +12 -0
  79. package/compodoc/js/libs/htmlparser.js +23 -0
  80. package/compodoc/js/libs/innersvg.js +9 -0
  81. package/compodoc/js/libs/lit-html.js +1 -0
  82. package/compodoc/js/libs/prism.js +46 -0
  83. package/compodoc/js/libs/promise.min.js +6 -0
  84. package/compodoc/js/libs/svg-pan-zoom.min.js +3 -0
  85. package/compodoc/js/libs/tablesort.min.js +6 -0
  86. package/compodoc/js/libs/tablesort.number.min.js +6 -0
  87. package/compodoc/js/libs/vis.min.js +47 -0
  88. package/compodoc/js/libs/zepto.min.js +2 -0
  89. package/compodoc/js/menu-wc.js +237 -0
  90. package/compodoc/js/menu-wc_es5.js +40 -0
  91. package/compodoc/js/menu.js +270 -0
  92. package/compodoc/js/routes.js +301 -0
  93. package/compodoc/js/search/lunr.min.js +6 -0
  94. package/compodoc/js/search/search-lunr.js +67 -0
  95. package/compodoc/js/search/search.js +283 -0
  96. package/compodoc/js/search/search_index.js +4 -0
  97. package/compodoc/js/sourceCode.js +58 -0
  98. package/compodoc/js/svg-pan-zoom.controls.js +53 -0
  99. package/compodoc/js/tabs.js +21 -0
  100. package/compodoc/js/tree.js +147 -0
  101. package/compodoc/license.html +731 -0
  102. package/compodoc/miscellaneous/functions.html +460 -0
  103. package/compodoc/miscellaneous/typealiases.html +256 -0
  104. package/compodoc/miscellaneous/variables.html +370 -0
  105. package/compodoc/modules.html +183 -0
  106. package/compodoc/overview.html +225 -0
  107. package/compodoc/pipes/ReplaceRouterPathsPipe.html +363 -0
  108. package/compodoc/properties.html +195 -0
  109. package/compodoc/styles/bootstrap-card.css +219 -0
  110. package/compodoc/styles/bootstrap.min.css +6 -0
  111. package/compodoc/styles/compodoc.css +1124 -0
  112. package/compodoc/styles/dark.css +121 -0
  113. package/compodoc/styles/ionicons.min.css +11 -0
  114. package/compodoc/styles/laravel.css +113 -0
  115. package/compodoc/styles/material.css +131 -0
  116. package/compodoc/styles/original.css +51 -0
  117. package/compodoc/styles/postmark.css +238 -0
  118. package/compodoc/styles/prism.css +301 -0
  119. package/compodoc/styles/readthedocs.css +117 -0
  120. package/compodoc/styles/reset.css +129 -0
  121. package/compodoc/styles/stripe.css +106 -0
  122. package/compodoc/styles/style.css +7 -0
  123. package/compodoc/styles/tablesort.css +33 -0
  124. package/compodoc/styles/vagrant.css +130 -0
  125. package/docs/.nojekyll +1 -0
  126. package/docs/assets/highlight.css +43 -0
  127. package/docs/assets/icons.js +15 -0
  128. package/docs/assets/icons.svg +1 -0
  129. package/docs/assets/main.js +59 -0
  130. package/docs/assets/navigation.js +1 -0
  131. package/docs/assets/search.js +1 -0
  132. package/docs/assets/style.css +1412 -0
  133. package/docs/classes/AppUrlService.html +13 -0
  134. package/docs/classes/AppsButtonComponent.html +9 -0
  135. package/docs/classes/AuthenticationServiceMock.html +3 -0
  136. package/docs/classes/FooterComponent.html +3 -0
  137. package/docs/classes/FooterDirective.html +8 -0
  138. package/docs/classes/HeaderComponent.html +8 -0
  139. package/docs/classes/LanguageSelectorComponent.html +3 -0
  140. package/docs/classes/LayoutComponent.html +18 -0
  141. package/docs/classes/LayoutComponentService.html +15 -0
  142. package/docs/classes/NavigationComponent.html +15 -0
  143. package/docs/classes/NavigationItemComponent.html +22 -0
  144. package/docs/classes/NavigationProgressBarComponent.html +4 -0
  145. package/docs/classes/NavigationService.html +17 -0
  146. package/docs/classes/ReplaceRouterPathsPipe.html +4 -0
  147. package/docs/classes/ReplaceRouterPathsService.html +3 -0
  148. package/docs/classes/ResetButtonComponent.html +3 -0
  149. package/docs/classes/SettingsButtonComponent.html +30 -0
  150. package/docs/classes/SidenavComponent.html +5 -0
  151. package/docs/classes/SidenavComponentService.html +5 -0
  152. package/docs/classes/SidenavFooterDirective.html +3 -0
  153. package/docs/classes/SidenavHeaderDirective.html +3 -0
  154. package/docs/classes/SidenavToggleButtonComponent.html +4 -0
  155. package/docs/classes/SignOutComponent.html +4 -0
  156. package/docs/classes/ToggleWindowSidenavButtonComponent.html +5 -0
  157. package/docs/classes/UserProfileIconComponent.html +6 -0
  158. package/docs/classes/VersionComponent.html +7 -0
  159. package/docs/classes/WindowContainerSidenavComponent.html +10 -0
  160. package/docs/documentation.json +13308 -0
  161. package/docs/functions/IsNavigationDividerItem.html +1 -0
  162. package/docs/functions/IsNavigationInsertItem.html +1 -0
  163. package/docs/functions/IsNavigationItem.html +1 -0
  164. package/docs/index.html +25 -0
  165. package/docs/interfaces/ExternalApps.html +8 -0
  166. package/docs/interfaces/LogoConfig.html +4 -0
  167. package/docs/interfaces/NavigationDividerItem.html +3 -0
  168. package/docs/interfaces/NavigationInsertItem.html +2 -0
  169. package/docs/interfaces/NavigationItem.html +6 -0
  170. package/docs/interfaces/NavigationStatus.html +2 -0
  171. package/docs/modules.html +47 -0
  172. package/docs/types/ExtractUsernameFromProfileFn.html +1 -0
  173. package/docs/types/Navigation.html +1 -0
  174. package/docs/types/NavigationWithInserts.html +1 -0
  175. package/docs/variables/EXTRACT_USERNAME_FROM_PROFILE.html +1 -0
  176. package/docs/variables/RXAP_FOOTER_COMPONENT.html +1 -0
  177. package/docs/variables/RXAP_HEADER_COMPONENT.html +1 -0
  178. package/docs/variables/RXAP_LAYOUT_APPS_GRID.html +1 -0
  179. package/docs/variables/RXAP_LOGO_CONFIG.html +1 -0
  180. package/docs/variables/RXAP_NAVIGATION_CONFIG.html +1 -0
  181. package/docs/variables/RXAP_NAVIGATION_CONFIG_INSERTS.html +1 -0
  182. package/package.json +46 -44
@@ -0,0 +1,1081 @@
1
+ <!doctype html>
2
+ <html class="no-js" lang="">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
6
+ <title>angular-layout</title>
7
+ <meta name="description" content="">
8
+ <meta name="viewport" content="width=device-width, initial-scale=1">
9
+
10
+ <link rel="icon" type="image/x-icon" href="../images/favicon.ico">
11
+ <link rel="stylesheet" href="../styles/style.css">
12
+ <link rel="stylesheet" href="../styles/dark.css">
13
+ </head>
14
+ <body>
15
+ <script>
16
+ // Blocking script to avoid flickering dark mode
17
+ // Dark mode toggle button
18
+ var useDark = window.matchMedia('(prefers-color-scheme: dark)');
19
+ var darkModeState = useDark.matches;
20
+ var $darkModeToggleSwitchers = document.querySelectorAll('.dark-mode-switch input');
21
+ var $darkModeToggles = document.querySelectorAll('.dark-mode-switch');
22
+ var darkModeStateLocal = localStorage.getItem('compodoc_darkmode-state');
23
+
24
+ function checkToggle(check) {
25
+ for (var i = 0; i < $darkModeToggleSwitchers.length; i++) {
26
+ $darkModeToggleSwitchers[i].checked = check;
27
+ }
28
+ }
29
+
30
+ function toggleDarkMode(state) {
31
+ if (window.localStorage) {
32
+ localStorage.setItem('compodoc_darkmode-state', state);
33
+ }
34
+
35
+ checkToggle(state);
36
+
37
+ const hasClass = document.body.classList.contains('dark');
38
+
39
+ if (state) {
40
+ for (var i = 0; i < $darkModeToggles.length; i++) {
41
+ $darkModeToggles[i].classList.add('dark');
42
+ }
43
+ if (!hasClass) {
44
+ document.body.classList.add('dark');
45
+ }
46
+ } else {
47
+ for (var i = 0; i < $darkModeToggles.length; i++) {
48
+ $darkModeToggles[i].classList.remove('dark');
49
+ }
50
+ if (hasClass) {
51
+ document.body.classList.remove('dark');
52
+ }
53
+ }
54
+ }
55
+
56
+ useDark.addEventListener('change', function (evt) {
57
+ toggleDarkMode(evt.matches);
58
+ });
59
+ if (darkModeStateLocal) {
60
+ darkModeState = darkModeStateLocal === 'true';
61
+ }
62
+ toggleDarkMode(darkModeState);
63
+ </script>
64
+
65
+ <div class="navbar navbar-default navbar-fixed-top d-md-none p-0">
66
+ <div class="d-flex">
67
+ <a href="../" class="navbar-brand">angular-layout</a>
68
+ <button type="button" class="btn btn-default btn-menu ion-ios-menu" id="btn-menu"></button>
69
+ </div>
70
+ </div>
71
+
72
+ <div class="xs-menu menu" id="mobile-menu">
73
+ <div id="book-search-input" role="search"><input type="text" placeholder="Type to search"></div> <compodoc-menu></compodoc-menu>
74
+ </div>
75
+
76
+ <div class="container-fluid main">
77
+ <div class="row main">
78
+ <div class="d-none d-md-block menu">
79
+ <compodoc-menu mode="normal"></compodoc-menu>
80
+ </div>
81
+ <!-- START CONTENT -->
82
+ <div class="content injectable">
83
+ <div class="content-data">
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+ <ol class="breadcrumb">
93
+ <li class="breadcrumb-item">Injectables</li>
94
+ <li class="breadcrumb-item" >NavigationService</li>
95
+ </ol>
96
+
97
+ <ul class="nav nav-tabs" role="tablist">
98
+ <li class="nav-item">
99
+ <a href="#info"
100
+ class="nav-link"
101
+ class="nav-link active"
102
+ role="tab" id="info-tab" data-bs-toggle="tab" data-link="info">Info</a>
103
+ </li>
104
+ <li class="nav-item">
105
+ <a href="#source"
106
+ class="nav-link"
107
+
108
+ role="tab" id="source-tab" data-bs-toggle="tab" data-link="source">Source</a>
109
+ </li>
110
+ </ul>
111
+
112
+ <div class="tab-content">
113
+ <div class="tab-pane fade active in" id="info">
114
+ <p class="comment">
115
+ <h3>File</h3>
116
+ </p>
117
+ <p class="comment">
118
+ <code>src/lib/navigation/navigation.service.ts</code>
119
+ </p>
120
+
121
+
122
+
123
+
124
+
125
+ <section data-compodoc="block-index">
126
+ <h3 id="index">Index</h3>
127
+ <table class="table table-sm table-bordered index-table">
128
+ <tbody>
129
+ <tr>
130
+ <td class="col-md-4">
131
+ <h6><b>Properties</b></h6>
132
+ </td>
133
+ </tr>
134
+ <tr>
135
+ <td class="col-md-4">
136
+ <ul class="index-list">
137
+ <li>
138
+ <span class="modifier">Public</span>
139
+ <span class="modifier">Readonly</span>
140
+ <a href="#config$" >config$</a>
141
+ </li>
142
+ </ul>
143
+ </td>
144
+ </tr>
145
+
146
+ <tr>
147
+ <td class="col-md-4">
148
+ <h6><b>Methods</b></h6>
149
+ </td>
150
+ </tr>
151
+ <tr>
152
+ <td class="col-md-4">
153
+ <ul class="index-list">
154
+ <li>
155
+ <span class="modifier">Public</span>
156
+ <a href="#add" >add</a>
157
+ </li>
158
+ <li>
159
+ <span class="modifier">Public</span>
160
+ <a href="#get" >get</a>
161
+ </li>
162
+ <li>
163
+ <span class="modifier">Public</span>
164
+ <a href="#has" >has</a>
165
+ </li>
166
+ <li>
167
+ <span class="modifier">Public</span>
168
+ <a href="#insert" class="deprecated-name">insert</a>
169
+ </li>
170
+ <li>
171
+ <span class="modifier">Public</span>
172
+ <a href="#remove" >remove</a>
173
+ </li>
174
+ <li>
175
+ <span class="modifier">Public</span>
176
+ <a href="#updateNavigation" >updateNavigation</a>
177
+ </li>
178
+ </ul>
179
+ </td>
180
+ </tr>
181
+
182
+
183
+
184
+
185
+
186
+ </tbody>
187
+ </table>
188
+ </section>
189
+
190
+ <section data-compodoc="block-constructor">
191
+ <h3 id="constructor">Constructor</h3>
192
+ <table class="table table-sm table-bordered">
193
+ <tbody>
194
+ <tr>
195
+ <td class="col-md-4">
196
+ <code>constructor(navigation: <a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank">any</a>, injector: Injector, inserts: any | null)</code>
197
+ </td>
198
+ </tr>
199
+ <tr>
200
+ <td class="col-md-4">
201
+ <div class="io-line">Defined in <a href="" data-line="42" class="link-to-prism">src/lib/navigation/navigation.service.ts:42</a></div>
202
+ </td>
203
+ </tr>
204
+
205
+ <tr>
206
+ <td class="col-md-4">
207
+ <div>
208
+ <b>Parameters :</b>
209
+ <table class="params">
210
+ <thead>
211
+ <tr>
212
+ <td>Name</td>
213
+ <td>Type</td>
214
+ <td>Optional</td>
215
+ </tr>
216
+ </thead>
217
+ <tbody>
218
+ <tr>
219
+ <td>navigation</td>
220
+
221
+ <td>
222
+ <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >any</a></code>
223
+ </td>
224
+
225
+ <td>
226
+ No
227
+ </td>
228
+
229
+ </tr>
230
+ <tr>
231
+ <td>injector</td>
232
+
233
+ <td>
234
+ <code>Injector</code>
235
+ </td>
236
+
237
+ <td>
238
+ No
239
+ </td>
240
+
241
+ </tr>
242
+ <tr>
243
+ <td>inserts</td>
244
+
245
+ <td>
246
+ <code>any | null</code>
247
+ </td>
248
+
249
+ <td>
250
+ No
251
+ </td>
252
+
253
+ </tr>
254
+ </tbody>
255
+ </table>
256
+ </div>
257
+ </td>
258
+ </tr>
259
+ </tbody>
260
+ </table>
261
+ </section>
262
+
263
+ <section data-compodoc="block-methods">
264
+
265
+ <h3 id="methods">
266
+ Methods
267
+ </h3>
268
+ <table class="table table-sm table-bordered">
269
+ <tbody>
270
+ <tr>
271
+ <td class="col-md-4">
272
+ <a name="add"></a>
273
+ <span class="name">
274
+ <span class="modifier">Public</span>
275
+ <span ><b>add</b></span>
276
+ <a href="#add"><span class="icon ion-ios-link"></span></a>
277
+ </span>
278
+ </td>
279
+ </tr>
280
+ <tr>
281
+ <td class="col-md-4">
282
+ <span class="modifier-icon icon ion-ios-reset"></span>
283
+ <code>add(id: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>, value: <a href="../undefineds/NavigationWithInserts.html" target="_self">NavigationWithInserts</a>, update)</code>
284
+ </td>
285
+ </tr>
286
+
287
+
288
+ <tr>
289
+ <td class="col-md-4">
290
+ <div class="io-line">Defined in <a href="" data-line="85"
291
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:85</a></div>
292
+ </td>
293
+ </tr>
294
+
295
+
296
+ <tr>
297
+ <td class="col-md-4">
298
+
299
+ <div class="io-description">
300
+ <b>Parameters :</b>
301
+
302
+ <table class="params">
303
+ <thead>
304
+ <tr>
305
+ <td>Name</td>
306
+ <td>Type</td>
307
+ <td>Optional</td>
308
+ <td>Default value</td>
309
+ </tr>
310
+ </thead>
311
+ <tbody>
312
+ <tr>
313
+ <td>id</td>
314
+ <td>
315
+ <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
316
+ </td>
317
+
318
+ <td>
319
+ No
320
+ </td>
321
+
322
+ <td>
323
+ </td>
324
+
325
+ </tr>
326
+ <tr>
327
+ <td>value</td>
328
+ <td>
329
+ <code><a href="../miscellaneous/typealiases.html#NavigationWithInserts" target="_self" >NavigationWithInserts</a></code>
330
+ </td>
331
+
332
+ <td>
333
+ No
334
+ </td>
335
+
336
+ <td>
337
+ </td>
338
+
339
+ </tr>
340
+ <tr>
341
+ <td>update</td>
342
+ <td>
343
+ </td>
344
+
345
+ <td>
346
+ No
347
+ </td>
348
+
349
+ <td>
350
+ <code>true</code>
351
+ </td>
352
+
353
+ </tr>
354
+ </tbody>
355
+ </table>
356
+ </div>
357
+ <div class="io-description">
358
+ <b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
359
+
360
+ </div>
361
+ <div class="io-description">
362
+
363
+ </div>
364
+ </td>
365
+ </tr>
366
+ </tbody>
367
+ </table>
368
+ <table class="table table-sm table-bordered">
369
+ <tbody>
370
+ <tr>
371
+ <td class="col-md-4">
372
+ <a name="get"></a>
373
+ <span class="name">
374
+ <span class="modifier">Public</span>
375
+ <span ><b>get</b></span>
376
+ <a href="#get"><span class="icon ion-ios-link"></span></a>
377
+ </span>
378
+ </td>
379
+ </tr>
380
+ <tr>
381
+ <td class="col-md-4">
382
+ <span class="modifier-icon icon ion-ios-reset"></span>
383
+ <code>get(id: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>)</code>
384
+ </td>
385
+ </tr>
386
+
387
+
388
+ <tr>
389
+ <td class="col-md-4">
390
+ <div class="io-line">Defined in <a href="" data-line="100"
391
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:100</a></div>
392
+ </td>
393
+ </tr>
394
+
395
+
396
+ <tr>
397
+ <td class="col-md-4">
398
+
399
+ <div class="io-description">
400
+ <b>Parameters :</b>
401
+
402
+ <table class="params">
403
+ <thead>
404
+ <tr>
405
+ <td>Name</td>
406
+ <td>Type</td>
407
+ <td>Optional</td>
408
+ </tr>
409
+ </thead>
410
+ <tbody>
411
+ <tr>
412
+ <td>id</td>
413
+ <td>
414
+ <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
415
+ </td>
416
+
417
+ <td>
418
+ No
419
+ </td>
420
+
421
+
422
+ </tr>
423
+ </tbody>
424
+ </table>
425
+ </div>
426
+ <div class="io-description">
427
+ <b>Returns : </b> <code>NavigationWithInserts | undefined</code>
428
+
429
+ </div>
430
+ <div class="io-description">
431
+
432
+ </div>
433
+ </td>
434
+ </tr>
435
+ </tbody>
436
+ </table>
437
+ <table class="table table-sm table-bordered">
438
+ <tbody>
439
+ <tr>
440
+ <td class="col-md-4">
441
+ <a name="has"></a>
442
+ <span class="name">
443
+ <span class="modifier">Public</span>
444
+ <span ><b>has</b></span>
445
+ <a href="#has"><span class="icon ion-ios-link"></span></a>
446
+ </span>
447
+ </td>
448
+ </tr>
449
+ <tr>
450
+ <td class="col-md-4">
451
+ <span class="modifier-icon icon ion-ios-reset"></span>
452
+ <code>has(id: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>)</code>
453
+ </td>
454
+ </tr>
455
+
456
+
457
+ <tr>
458
+ <td class="col-md-4">
459
+ <div class="io-line">Defined in <a href="" data-line="96"
460
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:96</a></div>
461
+ </td>
462
+ </tr>
463
+
464
+
465
+ <tr>
466
+ <td class="col-md-4">
467
+
468
+ <div class="io-description">
469
+ <b>Parameters :</b>
470
+
471
+ <table class="params">
472
+ <thead>
473
+ <tr>
474
+ <td>Name</td>
475
+ <td>Type</td>
476
+ <td>Optional</td>
477
+ </tr>
478
+ </thead>
479
+ <tbody>
480
+ <tr>
481
+ <td>id</td>
482
+ <td>
483
+ <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
484
+ </td>
485
+
486
+ <td>
487
+ No
488
+ </td>
489
+
490
+
491
+ </tr>
492
+ </tbody>
493
+ </table>
494
+ </div>
495
+ <div class="io-description">
496
+ <b>Returns : </b> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/boolean" target="_blank" >boolean</a></code>
497
+
498
+ </div>
499
+ <div class="io-description">
500
+
501
+ </div>
502
+ </td>
503
+ </tr>
504
+ </tbody>
505
+ </table>
506
+ <table class="table table-sm table-bordered">
507
+ <tbody>
508
+ <tr>
509
+ <td class="col-md-4">
510
+ <a name="insert"></a>
511
+ <span class="name">
512
+ <span class="modifier">Public</span>
513
+ <span class="deprecated-name"><b>insert</b></span>
514
+ <a href="#insert"><span class="icon ion-ios-link"></span></a>
515
+ </span>
516
+ </td>
517
+ </tr>
518
+ <tr>
519
+ <td class="col-md-4 deprecated">
520
+ use add instead
521
+ </td>
522
+ </tr>
523
+ <tr>
524
+ <td class="col-md-4">
525
+ <span class="modifier-icon icon ion-ios-reset"></span>
526
+ <code>insert(id: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>, value: <a href="../undefineds/NavigationWithInserts.html" target="_self">NavigationWithInserts</a>, update)</code>
527
+ </td>
528
+ </tr>
529
+
530
+
531
+ <tr>
532
+ <td class="col-md-4">
533
+ <div class="io-line">Defined in <a href="" data-line="77"
534
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:77</a></div>
535
+ </td>
536
+ </tr>
537
+
538
+
539
+ <tr>
540
+ <td class="col-md-4">
541
+
542
+ <div class="io-description">
543
+ <b>Parameters :</b>
544
+
545
+ <table class="params">
546
+ <thead>
547
+ <tr>
548
+ <td>Name</td>
549
+ <td>Type</td>
550
+ <td>Optional</td>
551
+ <td>Default value</td>
552
+ </tr>
553
+ </thead>
554
+ <tbody>
555
+ <tr>
556
+ <td>id</td>
557
+ <td>
558
+ <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
559
+ </td>
560
+
561
+ <td>
562
+ No
563
+ </td>
564
+
565
+ <td>
566
+ </td>
567
+
568
+ </tr>
569
+ <tr>
570
+ <td>value</td>
571
+ <td>
572
+ <code><a href="../miscellaneous/typealiases.html#NavigationWithInserts" target="_self" >NavigationWithInserts</a></code>
573
+ </td>
574
+
575
+ <td>
576
+ No
577
+ </td>
578
+
579
+ <td>
580
+ </td>
581
+
582
+ </tr>
583
+ <tr>
584
+ <td>update</td>
585
+ <td>
586
+ </td>
587
+
588
+ <td>
589
+ No
590
+ </td>
591
+
592
+ <td>
593
+ <code>true</code>
594
+ </td>
595
+
596
+ </tr>
597
+ </tbody>
598
+ </table>
599
+ </div>
600
+ <div class="io-description">
601
+ <b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
602
+
603
+ </div>
604
+ <div class="io-description">
605
+
606
+ </div>
607
+ </td>
608
+ </tr>
609
+ </tbody>
610
+ </table>
611
+ <table class="table table-sm table-bordered">
612
+ <tbody>
613
+ <tr>
614
+ <td class="col-md-4">
615
+ <a name="remove"></a>
616
+ <span class="name">
617
+ <span class="modifier">Public</span>
618
+ <span ><b>remove</b></span>
619
+ <a href="#remove"><span class="icon ion-ios-link"></span></a>
620
+ </span>
621
+ </td>
622
+ </tr>
623
+ <tr>
624
+ <td class="col-md-4">
625
+ <span class="modifier-icon icon ion-ios-reset"></span>
626
+ <code>remove(id: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>, update)</code>
627
+ </td>
628
+ </tr>
629
+
630
+
631
+ <tr>
632
+ <td class="col-md-4">
633
+ <div class="io-line">Defined in <a href="" data-line="104"
634
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:104</a></div>
635
+ </td>
636
+ </tr>
637
+
638
+
639
+ <tr>
640
+ <td class="col-md-4">
641
+
642
+ <div class="io-description">
643
+ <b>Parameters :</b>
644
+
645
+ <table class="params">
646
+ <thead>
647
+ <tr>
648
+ <td>Name</td>
649
+ <td>Type</td>
650
+ <td>Optional</td>
651
+ <td>Default value</td>
652
+ </tr>
653
+ </thead>
654
+ <tbody>
655
+ <tr>
656
+ <td>id</td>
657
+ <td>
658
+ <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
659
+ </td>
660
+
661
+ <td>
662
+ No
663
+ </td>
664
+
665
+ <td>
666
+ </td>
667
+
668
+ </tr>
669
+ <tr>
670
+ <td>update</td>
671
+ <td>
672
+ </td>
673
+
674
+ <td>
675
+ No
676
+ </td>
677
+
678
+ <td>
679
+ <code>true</code>
680
+ </td>
681
+
682
+ </tr>
683
+ </tbody>
684
+ </table>
685
+ </div>
686
+ <div class="io-description">
687
+ <b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
688
+
689
+ </div>
690
+ <div class="io-description">
691
+
692
+ </div>
693
+ </td>
694
+ </tr>
695
+ </tbody>
696
+ </table>
697
+ <table class="table table-sm table-bordered">
698
+ <tbody>
699
+ <tr>
700
+ <td class="col-md-4">
701
+ <a name="updateNavigation"></a>
702
+ <span class="name">
703
+ <span class="modifier">Public</span>
704
+ <span ><b>updateNavigation</b></span>
705
+ <a href="#updateNavigation"><span class="icon ion-ios-link"></span></a>
706
+ </span>
707
+ </td>
708
+ </tr>
709
+ <tr>
710
+ <td class="col-md-4">
711
+ <span class="modifier-icon icon ion-ios-reset"></span>
712
+ <code>updateNavigation()</code>
713
+ </td>
714
+ </tr>
715
+
716
+
717
+ <tr>
718
+ <td class="col-md-4">
719
+ <div class="io-line">Defined in <a href="" data-line="111"
720
+ class="link-to-prism">src/lib/navigation/navigation.service.ts:111</a></div>
721
+ </td>
722
+ </tr>
723
+
724
+
725
+ <tr>
726
+ <td class="col-md-4">
727
+
728
+ <div class="io-description">
729
+ <b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
730
+
731
+ </div>
732
+ </td>
733
+ </tr>
734
+ </tbody>
735
+ </table>
736
+ </section>
737
+ <section data-compodoc="block-properties">
738
+
739
+ <h3 id="inputs">
740
+ Properties
741
+ </h3>
742
+ <table class="table table-sm table-bordered">
743
+ <tbody>
744
+ <tr>
745
+ <td class="col-md-4">
746
+ <a name="config$"></a>
747
+ <span class="name">
748
+ <span class="modifier">Public</span>
749
+ <span class="modifier">Readonly</span>
750
+ <span ><b>config$</b></span>
751
+ <a href="#config$"><span class="icon ion-ios-link"></span></a>
752
+ </span>
753
+ </td>
754
+ </tr>
755
+ <tr>
756
+ <td class="col-md-4">
757
+ <i>Type : </i> <code><a href="../miscellaneous/typealiases.html#Navigation" target="_self" >Observable&lt;Navigation&gt;</a></code>
758
+
759
+ </td>
760
+ </tr>
761
+ <tr>
762
+ <td class="col-md-4">
763
+ <div class="io-line">Defined in <a href="" data-line="36" class="link-to-prism">src/lib/navigation/navigation.service.ts:36</a></div>
764
+ </td>
765
+ </tr>
766
+
767
+
768
+ </tbody>
769
+ </table>
770
+ </section>
771
+
772
+ </div>
773
+
774
+
775
+ <div class="tab-pane fade tab-source-code" id="source">
776
+ <pre class="line-numbers compodoc-sourcecode"><code class="language-typescript">import type { Injector } from &#x27;@angular/core&#x27;;
777
+ import {
778
+ Inject,
779
+ Injectable,
780
+ INJECTOR,
781
+ Optional,
782
+ } from &#x27;@angular/core&#x27;;
783
+ import {
784
+ combineLatest,
785
+ from,
786
+ Observable,
787
+ of,
788
+ ReplaySubject,
789
+ } from &#x27;rxjs&#x27;;
790
+ import {
791
+ IsNavigationDividerItem,
792
+ IsNavigationInsertItem,
793
+ IsNavigationItem,
794
+ Navigation,
795
+ NavigationDividerItem,
796
+ NavigationItem,
797
+ NavigationWithInserts,
798
+ } from &#x27;./navigation-item&#x27;;
799
+ import {
800
+ RXAP_NAVIGATION_CONFIG,
801
+ RXAP_NAVIGATION_CONFIG_INSERTS,
802
+ } from &#x27;../tokens&#x27;;
803
+ import {
804
+ catchError,
805
+ map,
806
+ switchMap,
807
+ } from &#x27;rxjs/operators&#x27;;
808
+
809
+ @Injectable({ providedIn: &#x27;root&#x27; })
810
+ export class NavigationService {
811
+ public readonly config$: Observable&lt;Navigation&gt;;
812
+
813
+ private inserts &#x3D; new Map&lt;string, NavigationWithInserts&gt;();
814
+
815
+ private readonly navigation: NavigationWithInserts;
816
+
817
+ private readonly navigation$ &#x3D; new ReplaySubject&lt;Navigation&gt;(1);
818
+
819
+ constructor(
820
+ @Inject(RXAP_NAVIGATION_CONFIG)
821
+ navigation: any,
822
+ @Inject(INJECTOR)
823
+ private readonly injector: Injector,
824
+ @Optional()
825
+ @Inject(RXAP_NAVIGATION_CONFIG_INSERTS)
826
+ inserts: any | null &#x3D; null,
827
+ ) {
828
+ if (typeof navigation &#x3D;&#x3D;&#x3D; &#x27;function&#x27;) {
829
+ this.navigation &#x3D; navigation();
830
+ } else {
831
+ this.navigation &#x3D; navigation;
832
+ }
833
+ if (inserts) {
834
+ Object.entries(inserts).forEach(([ id, insert ]: [ string, any ]) &#x3D;&gt;
835
+ this.insert(id, insert, false),
836
+ );
837
+ }
838
+ this.updateNavigation();
839
+ this.config$ &#x3D; this.navigation$.pipe(
840
+ switchMap((navigationWithoutStatusCheck) &#x3D;&gt;
841
+ this.checkNavigationStatusProviders(navigationWithoutStatusCheck),
842
+ ),
843
+ );
844
+ }
845
+
846
+ /**
847
+ * @deprecated use add instead
848
+ * @param id
849
+ * @param value
850
+ * @param update
851
+ */
852
+ public insert(
853
+ id: string,
854
+ value: NavigationWithInserts,
855
+ update &#x3D; true,
856
+ ): void {
857
+ this.add(id, value, update);
858
+ }
859
+
860
+ public add(
861
+ id: string,
862
+ value: NavigationWithInserts,
863
+ update &#x3D; true,
864
+ ): void {
865
+ this.inserts.set(id, value);
866
+ if (update) {
867
+ this.updateNavigation();
868
+ }
869
+ }
870
+
871
+ public has(id: string): boolean {
872
+ return this.inserts.has(id);
873
+ }
874
+
875
+ public get(id: string): NavigationWithInserts | undefined {
876
+ return this.inserts.get(id);
877
+ }
878
+
879
+ public remove(id: string, update &#x3D; true): void {
880
+ this.inserts.delete(id);
881
+ if (update) {
882
+ this.updateNavigation();
883
+ }
884
+ }
885
+
886
+ public updateNavigation(): void {
887
+ this.navigation$.next(this.replaceInserts(this.navigation));
888
+ }
889
+
890
+ /**
891
+ * @internal
892
+ * @param navigationItem
893
+ */
894
+ public checkNavigationItemStatusProviders(
895
+ navigationItem: NavigationItem | NavigationDividerItem,
896
+ ): Observable&lt;NavigationItem | NavigationDividerItem | null&gt; {
897
+ if (IsNavigationDividerItem(navigationItem) || !navigationItem.status) {
898
+ return of(navigationItem);
899
+ }
900
+ const isVisibleArray$: Array&lt;Observable&lt;boolean&gt;&gt; &#x3D; navigationItem.status
901
+ .map((statusToken) &#x3D;&gt; this.injector.get(
902
+ statusToken))
903
+ .map((status) &#x3D;&gt; {
904
+ const isVisible &#x3D; status.isVisible(
905
+ navigationItem);
906
+ if (typeof isVisible &#x3D;&#x3D;&#x3D; &#x27;boolean&#x27;) {
907
+ return of(isVisible);
908
+ } else {
909
+ return from(isVisible);
910
+ }
911
+ })
912
+ .map(isVisible$ &#x3D;&gt; isVisible$.pipe(catchError(e &#x3D;&gt; {
913
+ console.error(&#x27;isVisible method failed: &#x27; +
914
+ e.message);
915
+ return of(false);
916
+ })));
917
+ // TODO : dont wait for all status services to complete, but cancel waiting if one returns false
918
+ return combineLatest(isVisibleArray$).pipe(
919
+ map((isVisibleArray) &#x3D;&gt;
920
+ isVisibleArray.reduce((acc, isVisible) &#x3D;&gt; acc &amp;&amp; isVisible, true),
921
+ ),
922
+ map((isVisible) &#x3D;&gt; (isVisible ? navigationItem : null)),
923
+ switchMap((navigationItemOrNull) &#x3D;&gt; {
924
+ if (navigationItemOrNull) {
925
+ if (navigationItemOrNull.children?.length) {
926
+ return this.checkNavigationStatusProviders(
927
+ navigationItemOrNull.children,
928
+ ).pipe(
929
+ map((children) &#x3D;&gt; ({
930
+ ...navigationItemOrNull,
931
+ children,
932
+ })),
933
+ );
934
+ }
935
+ return of(navigationItemOrNull);
936
+ }
937
+ return of(null);
938
+ }),
939
+ );
940
+ }
941
+
942
+ /**
943
+ * @internal
944
+ * @param navigationItem
945
+ */
946
+ public checkNavigationStatusProviders(
947
+ navigation: Navigation,
948
+ ): Observable&lt;Navigation&gt; {
949
+ return combineLatest(
950
+ navigation.map((navigationItem) &#x3D;&gt;
951
+ this.checkNavigationItemStatusProviders(navigationItem),
952
+ ),
953
+ ).pipe(
954
+ map((navigationWithNullItems) &#x3D;&gt; {
955
+ const cleanNavigation: Navigation &#x3D; [];
956
+
957
+ for (const navigationItem of navigationWithNullItems) {
958
+ if (navigationItem !&#x3D;&#x3D; null) {
959
+ cleanNavigation.push(navigationItem);
960
+ }
961
+ }
962
+
963
+ return cleanNavigation;
964
+ }),
965
+ );
966
+ }
967
+
968
+ private replaceInserts(
969
+ navigationWithInserts: NavigationWithInserts,
970
+ ): Navigation {
971
+ const navigation: Navigation &#x3D; [];
972
+
973
+ for (const navigationItem of navigationWithInserts) {
974
+ if (IsNavigationInsertItem(navigationItem)) {
975
+ if (this.inserts.has(navigationItem.insert)) {
976
+ navigation.push(
977
+ ...this.replaceInserts(this.inserts.get(navigationItem.insert)!),
978
+ );
979
+ }
980
+ } else if (IsNavigationItem(navigationItem)) {
981
+ navigation.push({
982
+ ...navigationItem,
983
+ children: this.replaceInserts(navigationItem.children ?? []),
984
+ });
985
+ } else if (IsNavigationDividerItem(navigationItem)) {
986
+ navigation.push(navigationItem);
987
+ }
988
+ }
989
+
990
+ return navigation;
991
+ }
992
+ }
993
+ </code></pre>
994
+ </div>
995
+
996
+ </div>
997
+
998
+
999
+
1000
+
1001
+
1002
+
1003
+
1004
+
1005
+
1006
+
1007
+
1008
+
1009
+
1010
+ </div><div class="search-results">
1011
+ <div class="has-results">
1012
+ <h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
1013
+ <ul class="search-results-list"></ul>
1014
+ </div>
1015
+ <div class="no-results">
1016
+ <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
1017
+ </div>
1018
+ </div>
1019
+ </div>
1020
+ <!-- END CONTENT -->
1021
+ </div>
1022
+ </div>
1023
+
1024
+ <label class="dark-mode-switch">
1025
+ <input type="checkbox">
1026
+ <span class="slider">
1027
+ <svg class="slider-icon" viewBox="0 0 24 24" fill="none" height="20" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" width="20" xmlns="http://www.w3.org/2000/svg">
1028
+ <path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"></path>
1029
+ </svg>
1030
+ </span>
1031
+ </label>
1032
+
1033
+ <script>
1034
+ var COMPODOC_CURRENT_PAGE_DEPTH = 1;
1035
+ var COMPODOC_CURRENT_PAGE_CONTEXT = 'injectable';
1036
+ var COMPODOC_CURRENT_PAGE_URL = 'NavigationService.html';
1037
+ var MAX_SEARCH_RESULTS = 15;
1038
+ </script>
1039
+
1040
+ <script>
1041
+ $darkModeToggleSwitchers = document.querySelectorAll('.dark-mode-switch input');
1042
+ checkToggle(darkModeState);
1043
+ if ($darkModeToggleSwitchers.length > 0) {
1044
+ for (var i = 0; i < $darkModeToggleSwitchers.length; i++) {
1045
+ $darkModeToggleSwitchers[i].addEventListener('change', function (event) {
1046
+ darkModeState = !darkModeState;
1047
+ toggleDarkMode(darkModeState);
1048
+ });
1049
+ }
1050
+ }
1051
+ </script>
1052
+
1053
+ <script src="../js/libs/custom-elements.min.js"></script>
1054
+ <script src="../js/libs/lit-html.js"></script>
1055
+
1056
+ <script src="../js/menu-wc.js" defer></script>
1057
+ <script nomodule src="../js/menu-wc_es5.js" defer></script>
1058
+
1059
+ <script src="../js/libs/bootstrap-native.js"></script>
1060
+
1061
+ <script src="../js/libs/es6-shim.min.js"></script>
1062
+ <script src="../js/libs/EventDispatcher.js"></script>
1063
+ <script src="../js/libs/promise.min.js"></script>
1064
+ <script src="../js/libs/zepto.min.js"></script>
1065
+
1066
+ <script src="../js/compodoc.js"></script>
1067
+
1068
+ <script src="../js/tabs.js"></script>
1069
+ <script src="../js/menu.js"></script>
1070
+ <script src="../js/libs/clipboard.min.js"></script>
1071
+ <script src="../js/libs/prism.js"></script>
1072
+ <script src="../js/sourceCode.js"></script>
1073
+ <script src="../js/search/search.js"></script>
1074
+ <script src="../js/search/lunr.min.js"></script>
1075
+ <script src="../js/search/search-lunr.js"></script>
1076
+ <script src="../js/search/search_index.js"></script>
1077
+ <script src="../js/lazy-load-graphs.js"></script>
1078
+
1079
+
1080
+ </body>
1081
+ </html>