@rxap/config 18.2.3-dev.0 → 19.0.0-dev.2

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 (54) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +1 -1
  3. package/compodoc/changelog.html +32 -0
  4. package/compodoc/dependencies.html +6 -6
  5. package/compodoc/index.html +1 -1
  6. package/compodoc/injectables/ConfigService.html +199 -31
  7. package/compodoc/interfaces/AppsNavigationConfig.html +5 -0
  8. package/compodoc/interfaces/Config.html +50 -0
  9. package/compodoc/interfaces/ConfigLoadOptions.html +36 -0
  10. package/compodoc/interfaces/LogoConfig.html +5 -0
  11. package/compodoc/interfaces/NavigationConfig.html +5 -0
  12. package/compodoc/interfaces/Oauth2Config.html +333 -0
  13. package/compodoc/interfaces/i18nConfig.html +5 -0
  14. package/compodoc/js/menu-wc.js +3 -0
  15. package/compodoc/js/menu-wc_es5.js +2 -2
  16. package/compodoc/js/search/search_index.js +2 -2
  17. package/compodoc/overview.html +1 -1
  18. package/compodoc/properties.html +1 -1
  19. package/docs/assets/navigation.js +1 -1
  20. package/docs/assets/search.js +1 -1
  21. package/docs/classes/ConfigLoaderService.html +2 -2
  22. package/docs/classes/ConfigService.html +6 -6
  23. package/docs/classes/ConfigTestingService.html +2 -2
  24. package/docs/documentation.json +288 -205
  25. package/docs/functions/ProvideConfig.html +1 -1
  26. package/docs/index.html +1 -1
  27. package/docs/interfaces/AppsNavigationConfig.html +2 -2
  28. package/docs/interfaces/Config.html +3 -2
  29. package/docs/interfaces/ConfigLoadOptions.html +3 -3
  30. package/docs/interfaces/LogoConfig.html +2 -2
  31. package/docs/interfaces/NavigationConfig.html +2 -2
  32. package/docs/interfaces/Oauth2Config.html +2 -0
  33. package/docs/interfaces/i18nConfig.html +2 -2
  34. package/docs/modules.html +1 -0
  35. package/docs/types/AnySchema.html +1 -1
  36. package/docs/types/Join.html +1 -1
  37. package/docs/types/LanguagesConfig.html +1 -1
  38. package/docs/types/Leaves.html +1 -1
  39. package/docs/types/NoInferType.html +1 -1
  40. package/docs/types/Paths.html +1 -1
  41. package/docs/variables/RXAP_CONFIG.html +1 -1
  42. package/fesm2022/rxap-config.mjs +9 -9
  43. package/fesm2022/rxap-config.mjs.map +1 -1
  44. package/package.json +11 -14
  45. package/theme.css +72 -1
  46. package/esm2022/index.mjs +0 -10
  47. package/esm2022/lib/config-loader.service.mjs +0 -34
  48. package/esm2022/lib/config-testing-service.mjs +0 -33
  49. package/esm2022/lib/config.mjs +0 -2
  50. package/esm2022/lib/config.service.mjs +0 -294
  51. package/esm2022/lib/provide-config.mjs +0 -8
  52. package/esm2022/lib/tokens.mjs +0 -3
  53. package/esm2022/lib/types.mjs +0 -2
  54. package/esm2022/rxap-config.mjs +0 -5
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [19.0.0-dev.2](https://gitlab.com/rxap/packages/compare/@rxap/config@19.0.0-dev.1...@rxap/config@19.0.0-dev.2) (2025-01-03)
7
+
8
+ **Note:** Version bump only for package @rxap/config
9
+
10
+ # [19.0.0-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.3-dev.0...@rxap/config@19.0.0-dev.1) (2024-12-11)
11
+
12
+ **Note:** Version bump only for package @rxap/config
13
+
6
14
  ## [18.2.3-dev.0](https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.2...@rxap/config@18.2.3-dev.0) (2024-12-10)
7
15
 
8
16
  **Note:** Version bump only for package @rxap/config
package/README.md CHANGED
@@ -19,7 +19,7 @@ yarn add @rxap/config
19
19
  ```
20
20
  **Install peer dependencies:**
21
21
  ```bash
22
- yarn add @angular/common@^18.0.1 @angular/core@^18.0.1 @rxap/environment@^18.0.3 @rxap/utilities@^16.2.4 rxjs@^7.8.1
22
+ yarn add @angular/common@19.0.3 @angular/core@19.0.3 @rxap/environment@^19.0.0-dev.2 @rxap/utilities@^16.4.1-dev.2 rxjs@7.8.1
23
23
  ```
24
24
  **Execute the init generator:**
25
25
  ```bash
@@ -85,6 +85,38 @@
85
85
  <h1>Change Log</h1>
86
86
  <p>All notable changes to this project will be documented in this file.
87
87
  See <a href="https://conventionalcommits.org">Conventional Commits</a> for commit guidelines.</p>
88
+ <h1><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@19.0.0-dev.1...@rxap/config@19.0.0-dev.2">19.0.0-dev.2</a> (2025-01-03)</h1>
89
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
90
+ <h1><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.3-dev.0...@rxap/config@19.0.0-dev.1">19.0.0-dev.1</a> (2024-12-11)</h1>
91
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
92
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.2...@rxap/config@18.2.3-dev.0">18.2.3-dev.0</a> (2024-12-10)</h2>
93
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
94
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.2-dev.0...@rxap/config@18.2.2">18.2.2</a> (2024-10-28)</h2>
95
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
96
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.1...@rxap/config@18.2.2-dev.0">18.2.2-dev.0</a> (2024-10-04)</h2>
97
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
98
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.1-dev.1...@rxap/config@18.2.1">18.2.1</a> (2024-08-22)</h2>
99
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
100
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.1-dev.0...@rxap/config@18.2.1-dev.1">18.2.1-dev.1</a> (2024-08-22)</h2>
101
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
102
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.0...@rxap/config@18.2.1-dev.0">18.2.1-dev.0</a> (2024-08-12)</h2>
103
+ <h3>Bug Fixes</h3>
104
+ <ul>
105
+ <li>add oauth2 proxy config interface (<a href="https://gitlab.com/rxap/packages/commit/a2eb8a839db8f680d35cbe51e19a860c63875f4e">a2eb8a8</a>)</li>
106
+ </ul>
107
+ <h1><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.2.0-dev.0...@rxap/config@18.2.0">18.2.0</a> (2024-07-30)</h1>
108
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
109
+ <h1><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.3-dev.0...@rxap/config@18.2.0-dev.0">18.2.0-dev.0</a> (2024-07-25)</h1>
110
+ <h3>Features</h3>
111
+ <ul>
112
+ <li>add error handler concept (<a href="https://gitlab.com/rxap/packages/commit/2c5ed57d925876e123d15e88581f8acf8e825850">2c5ed57</a>)</li>
113
+ </ul>
114
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.2...@rxap/config@18.1.3-dev.0">18.1.3-dev.0</a> (2024-07-09)</h2>
115
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
116
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.2-dev.0...@rxap/config@18.1.2">18.1.2</a> (2024-06-30)</h2>
117
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
118
+ <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.1...@rxap/config@18.1.2-dev.0">18.1.2-dev.0</a> (2024-06-30)</h2>
119
+ <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
88
120
  <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.1-dev.4...@rxap/config@18.1.1">18.1.1</a> (2024-06-28)</h2>
89
121
  <p><strong>Note:</strong> Version bump only for package @rxap/config</p>
90
122
  <h2><a href="https://gitlab.com/rxap/packages/compare/@rxap/config@18.1.1-dev.3...@rxap/config@18.1.1-dev.4">18.1.1-dev.4</a> (2024-06-25)</h2>
@@ -101,7 +101,7 @@
101
101
  </ol>
102
102
  <ul class="dependencies-list">
103
103
  <li>
104
- <b>@nx/devkit</b> : 19.3.2</li>
104
+ <b>@nx/devkit</b> : 20.2.1</li>
105
105
  <li>
106
106
  <b>tslib</b> : 2.6.2</li>
107
107
  </ul>
@@ -113,15 +113,15 @@
113
113
  </ol>
114
114
  <ul class="dependencies-list">
115
115
  <li>
116
- <b>@angular/common</b> : ^18.0.1</li>
116
+ <b>@angular/common</b> : 19.0.3</li>
117
117
  <li>
118
- <b>@angular/core</b> : ^18.0.1</li>
118
+ <b>@angular/core</b> : 19.0.3</li>
119
119
  <li>
120
- <b>@rxap/environment</b> : ^18.0.3</li>
120
+ <b>@rxap/environment</b> : ^19.0.0-dev.2</li>
121
121
  <li>
122
- <b>@rxap/utilities</b> : ^16.2.4</li>
122
+ <b>@rxap/utilities</b> : ^16.4.1-dev.2</li>
123
123
  <li>
124
- <b>rxjs</b> : ^7.8.1</li>
124
+ <b>rxjs</b> : 7.8.1</li>
125
125
  </ul>
126
126
 
127
127
 
@@ -99,7 +99,7 @@
99
99
  <h1>Installation</h1>
100
100
  <p><strong>Add the package to your workspace:</strong></p>
101
101
  <b>Example :</b><div><pre class="line-numbers"><code class="language-bash">yarn add &#64;rxap/config</code></pre></div><p><strong>Install peer dependencies:</strong></p>
102
- <b>Example :</b><div><pre class="line-numbers"><code class="language-bash">yarn add &#64;angular/common&#64;^18.0.1 &#64;angular/core&#64;^18.0.1 &#64;rxap/environment&#64;^18.0.3 &#64;rxap/utilities&#64;^16.2.4 rxjs&#64;^7.8.1 </code></pre></div><p><strong>Execute the init generator:</strong></p>
102
+ <b>Example :</b><div><pre class="line-numbers"><code class="language-bash">yarn add &#64;angular/common&#64;19.0.3 &#64;angular/core&#64;19.0.3 &#64;rxap/environment&#64;^19.0.0-dev.2 &#64;rxap/utilities&#64;^16.4.1-dev.2 rxjs&#64;7.8.1 </code></pre></div><p><strong>Execute the init generator:</strong></p>
103
103
  <b>Example :</b><div><pre class="line-numbers"><code class="language-bash">yarn nx g &#64;rxap/config:init</code></pre></div><h1>Generators</h1>
104
104
  <h2>init</h2>
105
105
  <blockquote>
@@ -151,6 +151,22 @@
151
151
  <span class="modifier">Static</span>
152
152
  <a href="#LocalStorageKey" >LocalStorageKey</a>
153
153
  </li>
154
+ <li>
155
+ <span class="modifier">Static</span>
156
+ <a href="#onError" >onError</a>
157
+ </li>
158
+ <li>
159
+ <span class="modifier">Static</span>
160
+ <a href="#onErrorFnc" >onErrorFnc</a>
161
+ </li>
162
+ <li>
163
+ <span class="modifier">Static</span>
164
+ <a href="#onRequestError" >onRequestError</a>
165
+ </li>
166
+ <li>
167
+ <span class="modifier">Static</span>
168
+ <a href="#onRequestErrorFnc" >onRequestErrorFnc</a>
169
+ </li>
154
170
  <li>
155
171
  <span class="modifier">Static</span>
156
172
  <a href="#Overwrites" >Overwrites</a>
@@ -244,7 +260,7 @@
244
260
  </tr>
245
261
  <tr>
246
262
  <td class="col-md-4">
247
- <div class="io-line">Defined in <a href="" data-line="54" class="link-to-prism">src/lib/config.service.ts:54</a></div>
263
+ <div class="io-line">Defined in <a href="" data-line="61" class="link-to-prism">src/lib/config.service.ts:61</a></div>
248
264
  </td>
249
265
  </tr>
250
266
 
@@ -309,8 +325,8 @@
309
325
 
310
326
  <tr>
311
327
  <td class="col-md-4">
312
- <div class="io-line">Defined in <a href="" data-line="310"
313
- class="link-to-prism">src/lib/config.service.ts:310</a></div>
328
+ <div class="io-line">Defined in <a href="" data-line="346"
329
+ class="link-to-prism">src/lib/config.service.ts:346</a></div>
314
330
  </td>
315
331
  </tr>
316
332
 
@@ -348,8 +364,8 @@
348
364
 
349
365
  <tr>
350
366
  <td class="col-md-4">
351
- <div class="io-line">Defined in <a href="" data-line="314"
352
- class="link-to-prism">src/lib/config.service.ts:314</a></div>
367
+ <div class="io-line">Defined in <a href="" data-line="350"
368
+ class="link-to-prism">src/lib/config.service.ts:350</a></div>
353
369
  </td>
354
370
  </tr>
355
371
 
@@ -425,8 +441,8 @@
425
441
 
426
442
  <tr>
427
443
  <td class="col-md-4">
428
- <div class="io-line">Defined in <a href="" data-line="315"
429
- class="link-to-prism">src/lib/config.service.ts:315</a></div>
444
+ <div class="io-line">Defined in <a href="" data-line="351"
445
+ class="link-to-prism">src/lib/config.service.ts:351</a></div>
430
446
  </td>
431
447
  </tr>
432
448
 
@@ -514,8 +530,8 @@
514
530
 
515
531
  <tr>
516
532
  <td class="col-md-4">
517
- <div class="io-line">Defined in <a href="" data-line="316"
518
- class="link-to-prism">src/lib/config.service.ts:316</a></div>
533
+ <div class="io-line">Defined in <a href="" data-line="352"
534
+ class="link-to-prism">src/lib/config.service.ts:352</a></div>
519
535
  </td>
520
536
  </tr>
521
537
 
@@ -603,8 +619,8 @@
603
619
 
604
620
  <tr>
605
621
  <td class="col-md-4">
606
- <div class="io-line">Defined in <a href="" data-line="247"
607
- class="link-to-prism">src/lib/config.service.ts:247</a></div>
622
+ <div class="io-line">Defined in <a href="" data-line="283"
623
+ class="link-to-prism">src/lib/config.service.ts:283</a></div>
608
624
  </td>
609
625
  </tr>
610
626
 
@@ -705,8 +721,8 @@
705
721
 
706
722
  <tr>
707
723
  <td class="col-md-4">
708
- <div class="io-line">Defined in <a href="" data-line="253"
709
- class="link-to-prism">src/lib/config.service.ts:253</a></div>
724
+ <div class="io-line">Defined in <a href="" data-line="289"
725
+ class="link-to-prism">src/lib/config.service.ts:289</a></div>
710
726
  </td>
711
727
  </tr>
712
728
 
@@ -815,8 +831,8 @@
815
831
 
816
832
  <tr>
817
833
  <td class="col-md-4">
818
- <div class="io-line">Defined in <a href="" data-line="320"
819
- class="link-to-prism">src/lib/config.service.ts:320</a></div>
834
+ <div class="io-line">Defined in <a href="" data-line="356"
835
+ class="link-to-prism">src/lib/config.service.ts:356</a></div>
820
836
  </td>
821
837
  </tr>
822
838
 
@@ -892,8 +908,8 @@
892
908
 
893
909
  <tr>
894
910
  <td class="col-md-4">
895
- <div class="io-line">Defined in <a href="" data-line="321"
896
- class="link-to-prism">src/lib/config.service.ts:321</a></div>
911
+ <div class="io-line">Defined in <a href="" data-line="357"
912
+ class="link-to-prism">src/lib/config.service.ts:357</a></div>
897
913
  </td>
898
914
  </tr>
899
915
 
@@ -981,8 +997,8 @@
981
997
 
982
998
  <tr>
983
999
  <td class="col-md-4">
984
- <div class="io-line">Defined in <a href="" data-line="322"
985
- class="link-to-prism">src/lib/config.service.ts:322</a></div>
1000
+ <div class="io-line">Defined in <a href="" data-line="358"
1001
+ class="link-to-prism">src/lib/config.service.ts:358</a></div>
986
1002
  </td>
987
1003
  </tr>
988
1004
 
@@ -1071,8 +1087,8 @@
1071
1087
 
1072
1088
  <tr>
1073
1089
  <td class="col-md-4">
1074
- <div class="io-line">Defined in <a href="" data-line="74"
1075
- class="link-to-prism">src/lib/config.service.ts:74</a></div>
1090
+ <div class="io-line">Defined in <a href="" data-line="81"
1091
+ class="link-to-prism">src/lib/config.service.ts:81</a></div>
1076
1092
  </td>
1077
1093
  </tr>
1078
1094
 
@@ -1157,8 +1173,8 @@
1157
1173
 
1158
1174
  <tr>
1159
1175
  <td class="col-md-4">
1160
- <div class="io-line">Defined in <a href="" data-line="306"
1161
- class="link-to-prism">src/lib/config.service.ts:306</a></div>
1176
+ <div class="io-line">Defined in <a href="" data-line="342"
1177
+ class="link-to-prism">src/lib/config.service.ts:342</a></div>
1162
1178
  </td>
1163
1179
  </tr>
1164
1180
 
@@ -1227,8 +1243,8 @@
1227
1243
 
1228
1244
  <tr>
1229
1245
  <td class="col-md-4">
1230
- <div class="io-line">Defined in <a href="" data-line="228"
1231
- class="link-to-prism">src/lib/config.service.ts:228</a></div>
1246
+ <div class="io-line">Defined in <a href="" data-line="264"
1247
+ class="link-to-prism">src/lib/config.service.ts:264</a></div>
1232
1248
  </td>
1233
1249
  </tr>
1234
1250
 
@@ -1337,7 +1353,7 @@
1337
1353
  </tr>
1338
1354
  <tr>
1339
1355
  <td class="col-md-4">
1340
- <div class="io-line">Defined in <a href="" data-line="54" class="link-to-prism">src/lib/config.service.ts:54</a></div>
1356
+ <div class="io-line">Defined in <a href="" data-line="61" class="link-to-prism">src/lib/config.service.ts:61</a></div>
1341
1357
  </td>
1342
1358
  </tr>
1343
1359
 
@@ -1369,7 +1385,7 @@
1369
1385
  </tr>
1370
1386
  <tr>
1371
1387
  <td class="col-md-4">
1372
- <div class="io-line">Defined in <a href="" data-line="33" class="link-to-prism">src/lib/config.service.ts:33</a></div>
1388
+ <div class="io-line">Defined in <a href="" data-line="40" class="link-to-prism">src/lib/config.service.ts:40</a></div>
1373
1389
  </td>
1374
1390
  </tr>
1375
1391
 
@@ -1401,7 +1417,7 @@
1401
1417
  </tr>
1402
1418
  <tr>
1403
1419
  <td class="col-md-4">
1404
- <div class="io-line">Defined in <a href="" data-line="40" class="link-to-prism">src/lib/config.service.ts:40</a></div>
1420
+ <div class="io-line">Defined in <a href="" data-line="47" class="link-to-prism">src/lib/config.service.ts:47</a></div>
1405
1421
  </td>
1406
1422
  </tr>
1407
1423
 
@@ -1441,7 +1457,123 @@ the Urls array.</p>
1441
1457
  </tr>
1442
1458
  <tr>
1443
1459
  <td class="col-md-4">
1444
- <div class="io-line">Defined in <a href="" data-line="48" class="link-to-prism">src/lib/config.service.ts:48</a></div>
1460
+ <div class="io-line">Defined in <a href="" data-line="55" class="link-to-prism">src/lib/config.service.ts:55</a></div>
1461
+ </td>
1462
+ </tr>
1463
+
1464
+
1465
+ </tbody>
1466
+ </table>
1467
+ <table class="table table-sm table-bordered">
1468
+ <tbody>
1469
+ <tr>
1470
+ <td class="col-md-4">
1471
+ <a name="onError"></a>
1472
+ <span class="name">
1473
+ <span class="modifier">Static</span>
1474
+ <span ><b>onError</b></span>
1475
+ <a href="#onError"><span class="icon ion-ios-link"></span></a>
1476
+ </span>
1477
+ </td>
1478
+ </tr>
1479
+ <tr>
1480
+ <td class="col-md-4">
1481
+ <i>Default value : </i><code>new ReplaySubject&lt;unknown&gt;(1)</code>
1482
+ </td>
1483
+ </tr>
1484
+ <tr>
1485
+ <td class="col-md-4">
1486
+ <div class="io-line">Defined in <a href="" data-line="34" class="link-to-prism">src/lib/config.service.ts:34</a></div>
1487
+ </td>
1488
+ </tr>
1489
+
1490
+
1491
+ </tbody>
1492
+ </table>
1493
+ <table class="table table-sm table-bordered">
1494
+ <tbody>
1495
+ <tr>
1496
+ <td class="col-md-4">
1497
+ <a name="onErrorFnc"></a>
1498
+ <span class="name">
1499
+ <span class="modifier">Static</span>
1500
+ <span ><b>onErrorFnc</b></span>
1501
+ <a href="#onErrorFnc"><span class="icon ion-ios-link"></span></a>
1502
+ </span>
1503
+ </td>
1504
+ </tr>
1505
+ <tr>
1506
+ <td class="col-md-4">
1507
+ <i>Type : </i> <code>Array&lt;void&gt;</code>
1508
+
1509
+ </td>
1510
+ </tr>
1511
+ <tr>
1512
+ <td class="col-md-4">
1513
+ <i>Default value : </i><code>[]</code>
1514
+ </td>
1515
+ </tr>
1516
+ <tr>
1517
+ <td class="col-md-4">
1518
+ <div class="io-line">Defined in <a href="" data-line="37" class="link-to-prism">src/lib/config.service.ts:37</a></div>
1519
+ </td>
1520
+ </tr>
1521
+
1522
+
1523
+ </tbody>
1524
+ </table>
1525
+ <table class="table table-sm table-bordered">
1526
+ <tbody>
1527
+ <tr>
1528
+ <td class="col-md-4">
1529
+ <a name="onRequestError"></a>
1530
+ <span class="name">
1531
+ <span class="modifier">Static</span>
1532
+ <span ><b>onRequestError</b></span>
1533
+ <a href="#onRequestError"><span class="icon ion-ios-link"></span></a>
1534
+ </span>
1535
+ </td>
1536
+ </tr>
1537
+ <tr>
1538
+ <td class="col-md-4">
1539
+ <i>Default value : </i><code>new ReplaySubject&lt;Response&gt;(1)</code>
1540
+ </td>
1541
+ </tr>
1542
+ <tr>
1543
+ <td class="col-md-4">
1544
+ <div class="io-line">Defined in <a href="" data-line="35" class="link-to-prism">src/lib/config.service.ts:35</a></div>
1545
+ </td>
1546
+ </tr>
1547
+
1548
+
1549
+ </tbody>
1550
+ </table>
1551
+ <table class="table table-sm table-bordered">
1552
+ <tbody>
1553
+ <tr>
1554
+ <td class="col-md-4">
1555
+ <a name="onRequestErrorFnc"></a>
1556
+ <span class="name">
1557
+ <span class="modifier">Static</span>
1558
+ <span ><b>onRequestErrorFnc</b></span>
1559
+ <a href="#onRequestErrorFnc"><span class="icon ion-ios-link"></span></a>
1560
+ </span>
1561
+ </td>
1562
+ </tr>
1563
+ <tr>
1564
+ <td class="col-md-4">
1565
+ <i>Type : </i> <code>Array&lt;void&gt;</code>
1566
+
1567
+ </td>
1568
+ </tr>
1569
+ <tr>
1570
+ <td class="col-md-4">
1571
+ <i>Default value : </i><code>[]</code>
1572
+ </td>
1573
+ </tr>
1574
+ <tr>
1575
+ <td class="col-md-4">
1576
+ <div class="io-line">Defined in <a href="" data-line="38" class="link-to-prism">src/lib/config.service.ts:38</a></div>
1445
1577
  </td>
1446
1578
  </tr>
1447
1579
 
@@ -1473,7 +1605,7 @@ the Urls array.</p>
1473
1605
  </tr>
1474
1606
  <tr>
1475
1607
  <td class="col-md-4">
1476
- <div class="io-line">Defined in <a href="" data-line="46" class="link-to-prism">src/lib/config.service.ts:46</a></div>
1608
+ <div class="io-line">Defined in <a href="" data-line="53" class="link-to-prism">src/lib/config.service.ts:53</a></div>
1477
1609
  </td>
1478
1610
  </tr>
1479
1611
 
@@ -1517,7 +1649,7 @@ value form the Defaults values or dynamic config files</p>
1517
1649
  </tr>
1518
1650
  <tr>
1519
1651
  <td class="col-md-4">
1520
- <div class="io-line">Defined in <a href="" data-line="53" class="link-to-prism">src/lib/config.service.ts:53</a></div>
1652
+ <div class="io-line">Defined in <a href="" data-line="60" class="link-to-prism">src/lib/config.service.ts:60</a></div>
1521
1653
  </td>
1522
1654
  </tr>
1523
1655
 
@@ -1541,6 +1673,7 @@ import {
1541
1673
  deepMerge,
1542
1674
  SetObjectValue,
1543
1675
  } from &#x27;@rxap/utilities&#x27;;
1676
+ import { ReplaySubject } from &#x27;rxjs&#x27;;
1544
1677
  import { RXAP_CONFIG } from &#x27;./tokens&#x27;;
1545
1678
  import { NoInferType } from &#x27;./types&#x27;;
1546
1679
 
@@ -1562,6 +1695,12 @@ export interface ConfigLoadOptions {
1562
1695
  })
1563
1696
  export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Record&lt;string, any&gt;&gt; {
1564
1697
 
1698
+ public static onError &#x3D; new ReplaySubject&lt;unknown&gt;(1);
1699
+ public static onRequestError &#x3D; new ReplaySubject&lt;Response&gt;(1);
1700
+
1701
+ public static onErrorFnc: Array&lt;(error: any) &#x3D;&gt; void&gt; &#x3D; [];
1702
+ public static onRequestErrorFnc: Array&lt;(response: Response) &#x3D;&gt; void&gt; &#x3D; [];
1703
+
1565
1704
  public static Config: any &#x3D; null;
1566
1705
 
1567
1706
  /**
@@ -1662,6 +1801,28 @@ export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Re
1662
1801
  this.Config &#x3D; config;
1663
1802
  }
1664
1803
 
1804
+ private static handleError(error: any) {
1805
+ this.onError.next(error);
1806
+ for (const fnc of this.onErrorFnc) {
1807
+ try {
1808
+ fnc(error);
1809
+ } catch (e: any) {
1810
+ console.error(&#x27;Error in onErrorFnc&#x27;, e);
1811
+ }
1812
+ }
1813
+ }
1814
+
1815
+ private static handleRequestError(response: Response) {
1816
+ this.onRequestError.next(response);
1817
+ for (const fnc of this.onRequestErrorFnc) {
1818
+ try {
1819
+ fnc(response);
1820
+ } catch (e: any) {
1821
+ console.error(&#x27;Error in onRequestErrorFnc&#x27;, e);
1822
+ }
1823
+ }
1824
+ }
1825
+
1665
1826
  private static async loadConfig&lt;T &#x3D; any&gt;(url: string, required?: boolean, schema?: AnySchema): Promise&lt;T | null&gt; {
1666
1827
 
1667
1828
  let config: any;
@@ -1672,6 +1833,7 @@ export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Re
1672
1833
  } catch (error: any) {
1673
1834
  const message &#x3D; &#x60;Could not fetch config from &#x27;${ url }&#x27;: ${ error.message }&#x60;;
1674
1835
  if (required) {
1836
+ this.handleError(error);
1675
1837
  this.showError(message);
1676
1838
  throw new Error(message);
1677
1839
  } else {
@@ -1689,8 +1851,12 @@ export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Re
1689
1851
  case 405:
1690
1852
  message &#x3D; &#x60;Config service is not started yet. Wait 30s and try again.&#x60;;
1691
1853
  break;
1854
+ case 401:
1855
+ message &#x3D; &#x60;Unauthorized to fetch config from &#x27;${ url }&#x27;&#x60;;
1856
+ break;
1692
1857
  }
1693
1858
  if (required) {
1859
+ this.handleRequestError(response);
1694
1860
  this.showError(message);
1695
1861
  throw new Error(message);
1696
1862
  } else {
@@ -1704,6 +1870,7 @@ export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Re
1704
1870
  } catch (error: any) {
1705
1871
  const message &#x3D; &#x60;Could not parse config from &#x27;${ url }&#x27; to a json object: ${ error.message }&#x60;;
1706
1872
  if (required) {
1873
+ this.handleError(error);
1707
1874
  this.showError(message);
1708
1875
  throw new Error(message);
1709
1876
  } else {
@@ -1718,6 +1885,7 @@ export class ConfigService&lt;Config extends Record&lt;string, any&gt; &#x3D; Re
1718
1885
  } catch (error: any) {
1719
1886
  const message &#x3D; &#x60;Config from &#x27;${ url }&#x27; is not valid: ${ error.message }&#x60;;
1720
1887
  if (required) {
1888
+ this.handleError(error);
1721
1889
  this.showError(message);
1722
1890
  throw new Error(message);
1723
1891
  } else {
@@ -631,10 +631,15 @@ export interface i18nConfig {
631
631
  defaultLanguage?: string;
632
632
  }
633
633
 
634
+ export interface Oauth2Config {
635
+ profileUrl?: string;
636
+ }
637
+
634
638
  export interface Config {
635
639
  navigation?: NavigationConfig;
636
640
  logo?: LogoConfig;
637
641
  i18n?: i18nConfig;
642
+ oauth2?: Oauth2Config;
638
643
  }
639
644
  </code></pre>
640
645
  </div>
@@ -161,6 +161,13 @@
161
161
  navigation
162
162
  </a>
163
163
  </li>
164
+ <li>
165
+ <span class="modifier">Optional</span>
166
+ <a href="#oauth2"
167
+ >
168
+ oauth2
169
+ </a>
170
+ </li>
164
171
  </ul>
165
172
  </td>
166
173
  </tr>
@@ -284,6 +291,44 @@
284
291
 
285
292
 
286
293
 
294
+ </tbody>
295
+ </table>
296
+ <table class="table table-sm table-bordered">
297
+ <tbody>
298
+ <tr>
299
+ <td class="col-md-4">
300
+ <a name="oauth2"></a>
301
+ <span class="name "><b>oauth2</b>
302
+ <a href="#oauth2">
303
+ <span class="icon ion-ios-link"></span>
304
+ </a>
305
+ </span>
306
+ </td>
307
+ </tr>
308
+ <tr>
309
+ <td class="col-md-4">
310
+ <code>oauth2: <code><a href="../interfaces/Oauth2Config.html" target="_self" >Oauth2Config</a></code>
311
+ </code>
312
+ </td>
313
+ </tr>
314
+
315
+
316
+ <tr>
317
+ <td class="col-md-4">
318
+ <i>Type : </i> <code><a href="../interfaces/Oauth2Config.html" target="_self" >Oauth2Config</a></code>
319
+
320
+ </td>
321
+ </tr>
322
+
323
+ <tr>
324
+ <td class="col-md-4">
325
+ <i>Optional</i>
326
+ </td>
327
+ </tr>
328
+
329
+
330
+
331
+
287
332
  </tbody>
288
333
  </table>
289
334
  </section>
@@ -328,10 +373,15 @@ export interface i18nConfig {
328
373
  defaultLanguage?: string;
329
374
  }
330
375
 
376
+ export interface Oauth2Config {
377
+ profileUrl?: string;
378
+ }
379
+
331
380
  export interface Config {
332
381
  navigation?: NavigationConfig;
333
382
  logo?: LogoConfig;
334
383
  i18n?: i18nConfig;
384
+ oauth2?: Oauth2Config;
335
385
  }
336
386
  </code></pre>
337
387
  </div>