@abp/ng.core 5.0.1 → 5.0.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 (300) hide show
  1. package/README.md +3 -3
  2. package/abp-ng.core.d.ts +5 -5
  3. package/bundles/abp-ng.core-locale.umd.js +361 -361
  4. package/bundles/abp-ng.core-locale.umd.js.map +1 -1
  5. package/bundles/abp-ng.core-testing.umd.js +442 -442
  6. package/bundles/abp-ng.core-testing.umd.js.map +1 -1
  7. package/bundles/abp-ng.core.umd.js +4873 -4868
  8. package/bundles/abp-ng.core.umd.js.map +1 -1
  9. package/esm2015/abp-ng.core.js +4 -4
  10. package/esm2015/lib/abstracts/index.js +2 -2
  11. package/esm2015/lib/abstracts/ng-model.component.js +59 -59
  12. package/esm2015/lib/components/dynamic-layout.component.js +89 -89
  13. package/esm2015/lib/components/index.js +4 -4
  14. package/esm2015/lib/components/replaceable-route-container.component.js +42 -42
  15. package/esm2015/lib/components/router-outlet.component.js +15 -15
  16. package/esm2015/lib/constants/different-locales.js +337 -337
  17. package/esm2015/lib/constants/index.js +2 -2
  18. package/esm2015/lib/core.module.js +281 -281
  19. package/esm2015/lib/directives/autofocus.directive.js +30 -30
  20. package/esm2015/lib/directives/debounce.directive.js +36 -36
  21. package/esm2015/lib/directives/for.directive.js +151 -151
  22. package/esm2015/lib/directives/form-submit.directive.js +69 -69
  23. package/esm2015/lib/directives/index.js +9 -9
  24. package/esm2015/lib/directives/init.directive.js +21 -21
  25. package/esm2015/lib/directives/permission.directive.js +48 -48
  26. package/esm2015/lib/directives/replaceable-template.directive.js +121 -121
  27. package/esm2015/lib/directives/stop-propagation.directive.js +32 -32
  28. package/esm2015/lib/enums/common.js +2 -2
  29. package/esm2015/lib/enums/index.js +2 -2
  30. package/esm2015/lib/guards/auth.guard.js +29 -29
  31. package/esm2015/lib/guards/index.js +3 -3
  32. package/esm2015/lib/guards/permission.guard.js +44 -44
  33. package/esm2015/lib/handlers/oauth-configuration.handler.js +37 -37
  34. package/esm2015/lib/handlers/routes.handler.js +47 -47
  35. package/esm2015/lib/interceptors/api.interceptor.js +54 -54
  36. package/esm2015/lib/interceptors/index.js +2 -2
  37. package/esm2015/lib/localization.module.js +16 -16
  38. package/esm2015/lib/models/auth.js +2 -2
  39. package/esm2015/lib/models/common.js +2 -2
  40. package/esm2015/lib/models/dtos.js +119 -119
  41. package/esm2015/lib/models/environment.js +2 -2
  42. package/esm2015/lib/models/index.js +10 -10
  43. package/esm2015/lib/models/localization.js +2 -2
  44. package/esm2015/lib/models/replaceable-components.js +2 -2
  45. package/esm2015/lib/models/rest.js +2 -2
  46. package/esm2015/lib/models/session.js +2 -2
  47. package/esm2015/lib/models/utility.js +2 -2
  48. package/esm2015/lib/pipes/index.js +3 -3
  49. package/esm2015/lib/pipes/localization.pipe.js +33 -33
  50. package/esm2015/lib/pipes/sort.pipe.js +49 -49
  51. package/esm2015/lib/providers/cookie-language.provider.js +22 -22
  52. package/esm2015/lib/providers/locale.provider.js +22 -22
  53. package/esm2015/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.js +29 -29
  54. package/esm2015/lib/proxy/pages/abp/multi-tenancy/index.js +2 -2
  55. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.js +24 -24
  56. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.js +2 -2
  57. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.js +25 -25
  58. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.js +5 -5
  59. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.js +2 -2
  60. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.js +2 -2
  61. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.js +3 -3
  62. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.js +2 -2
  63. package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.js +2 -2
  64. package/esm2015/lib/proxy/volo/abp/http/modeling/index.js +2 -2
  65. package/esm2015/lib/proxy/volo/abp/http/modeling/models.js +3 -3
  66. package/esm2015/lib/proxy/volo/abp/localization/index.js +2 -2
  67. package/esm2015/lib/proxy/volo/abp/localization/models.js +2 -2
  68. package/esm2015/lib/proxy/volo/abp/models.js +2 -2
  69. package/esm2015/lib/services/auth.service.js +47 -47
  70. package/esm2015/lib/services/config-state.service.js +130 -130
  71. package/esm2015/lib/services/content-projection.service.js +17 -17
  72. package/esm2015/lib/services/dom-insertion.service.js +32 -32
  73. package/esm2015/lib/services/environment.service.js +35 -35
  74. package/esm2015/lib/services/http-error-reporter.service.js +29 -29
  75. package/esm2015/lib/services/http-wait.service.js +72 -72
  76. package/esm2015/lib/services/index.js +22 -22
  77. package/esm2015/lib/services/lazy-load.service.js +38 -38
  78. package/esm2015/lib/services/list.service.js +103 -103
  79. package/esm2015/lib/services/localization.service.js +182 -182
  80. package/esm2015/lib/services/multi-tenancy.service.js +48 -48
  81. package/esm2015/lib/services/permission.service.js +64 -64
  82. package/esm2015/lib/services/replaceable-components.service.js +49 -49
  83. package/esm2015/lib/services/resource-wait.service.js +39 -39
  84. package/esm2015/lib/services/rest.service.js +63 -63
  85. package/esm2015/lib/services/router-events.service.js +38 -38
  86. package/esm2015/lib/services/router-wait.service.js +51 -51
  87. package/esm2015/lib/services/routes.service.js +147 -147
  88. package/esm2015/lib/services/session-state.service.js +76 -76
  89. package/esm2015/lib/services/subscription.service.js +41 -41
  90. package/esm2015/lib/services/track-by.service.js +21 -21
  91. package/esm2015/lib/strategies/auth-flow.strategy.js +202 -202
  92. package/esm2015/lib/strategies/container.strategy.js +38 -38
  93. package/esm2015/lib/strategies/content-security.strategy.js +28 -28
  94. package/esm2015/lib/strategies/content.strategy.js +48 -48
  95. package/esm2015/lib/strategies/context.strategy.js +37 -37
  96. package/esm2015/lib/strategies/cross-origin.strategy.js +26 -26
  97. package/esm2015/lib/strategies/dom.strategy.js +27 -27
  98. package/esm2015/lib/strategies/index.js +9 -9
  99. package/esm2015/lib/strategies/loading.strategy.js +58 -58
  100. package/esm2015/lib/strategies/projection.strategy.js +80 -80
  101. package/esm2015/lib/tokens/app-config.token.js +3 -3
  102. package/esm2015/lib/tokens/cookie-language-key.token.js +5 -5
  103. package/esm2015/lib/tokens/index.js +9 -9
  104. package/esm2015/lib/tokens/list.token.js +3 -3
  105. package/esm2015/lib/tokens/localization.token.js +10 -10
  106. package/esm2015/lib/tokens/lodaer-delay.token.js +3 -3
  107. package/esm2015/lib/tokens/manage-profile.token.js +12 -12
  108. package/esm2015/lib/tokens/options.token.js +8 -8
  109. package/esm2015/lib/tokens/tenant-key.token.js +3 -3
  110. package/esm2015/lib/utils/array-utils.js +7 -7
  111. package/esm2015/lib/utils/auth-utils.js +42 -42
  112. package/esm2015/lib/utils/common-utils.js +29 -29
  113. package/esm2015/lib/utils/date-extensions.js +6 -6
  114. package/esm2015/lib/utils/date-utils.js +13 -13
  115. package/esm2015/lib/utils/environment-utils.js +36 -36
  116. package/esm2015/lib/utils/factory-utils.js +24 -24
  117. package/esm2015/lib/utils/file-utils.js +14 -14
  118. package/esm2015/lib/utils/form-utils.js +12 -12
  119. package/esm2015/lib/utils/generator-utils.js +34 -34
  120. package/esm2015/lib/utils/http-utils.js +19 -19
  121. package/esm2015/lib/utils/index.js +21 -21
  122. package/esm2015/lib/utils/initial-utils.js +64 -64
  123. package/esm2015/lib/utils/internal-store-utils.js +36 -36
  124. package/esm2015/lib/utils/lazy-load-utils.js +40 -40
  125. package/esm2015/lib/utils/localization-utils.js +50 -50
  126. package/esm2015/lib/utils/multi-tenancy-utils.js +83 -83
  127. package/esm2015/lib/utils/number-utils.js +4 -4
  128. package/esm2015/lib/utils/object-utils.js +37 -37
  129. package/esm2015/lib/utils/route-utils.js +27 -27
  130. package/esm2015/lib/utils/string-utils.js +25 -21
  131. package/esm2015/lib/utils/tree-utils.js +54 -54
  132. package/esm2015/lib/validators/age.validator.js +14 -14
  133. package/esm2015/lib/validators/credit-card.validator.js +21 -21
  134. package/esm2015/lib/validators/index.js +23 -23
  135. package/esm2015/lib/validators/range.validator.js +15 -15
  136. package/esm2015/lib/validators/required.validator.js +13 -13
  137. package/esm2015/lib/validators/string-length.validator.js +15 -15
  138. package/esm2015/lib/validators/url.validator.js +16 -16
  139. package/esm2015/locale/abp-ng.core-locale.js +4 -4
  140. package/esm2015/locale/public-api.js +2 -2
  141. package/esm2015/locale/utils/register-locale.js +43 -43
  142. package/esm2015/public-api.js +26 -26
  143. package/esm2015/testing/abp-ng.core-testing.js +4 -4
  144. package/esm2015/testing/lib/core-testing.module.js +62 -62
  145. package/esm2015/testing/lib/services/index.js +3 -3
  146. package/esm2015/testing/lib/services/mock-permission.service.js +35 -35
  147. package/esm2015/testing/lib/services/mock-rest.service.js +30 -30
  148. package/esm2015/testing/lib/utils/clear-page.util.js +10 -10
  149. package/esm2015/testing/lib/utils/index.js +3 -3
  150. package/esm2015/testing/lib/utils/wait.util.js +5 -5
  151. package/esm2015/testing/public-api.js +4 -4
  152. package/fesm2015/abp-ng.core-locale.js +40 -40
  153. package/fesm2015/abp-ng.core-locale.js.map +1 -1
  154. package/fesm2015/abp-ng.core-testing.js +113 -113
  155. package/fesm2015/abp-ng.core-testing.js.map +1 -1
  156. package/fesm2015/abp-ng.core.js +3979 -3975
  157. package/fesm2015/abp-ng.core.js.map +1 -1
  158. package/lib/abstracts/index.d.ts +1 -1
  159. package/lib/abstracts/ng-model.component.d.ts +25 -25
  160. package/lib/components/dynamic-layout.component.d.ts +27 -27
  161. package/lib/components/index.d.ts +3 -3
  162. package/lib/components/replaceable-route-container.component.d.ts +17 -17
  163. package/lib/components/router-outlet.component.d.ts +5 -5
  164. package/lib/constants/different-locales.d.ts +334 -334
  165. package/lib/constants/index.d.ts +1 -1
  166. package/lib/core.module.d.ts +56 -56
  167. package/lib/directives/autofocus.directive.d.ts +12 -12
  168. package/lib/directives/debounce.directive.d.ts +13 -13
  169. package/lib/directives/for.directive.d.ts +36 -36
  170. package/lib/directives/form-submit.directive.d.ts +19 -19
  171. package/lib/directives/index.d.ts +8 -8
  172. package/lib/directives/init.directive.d.ts +10 -10
  173. package/lib/directives/permission.directive.d.ts +18 -18
  174. package/lib/directives/replaceable-template.directive.d.ts +30 -30
  175. package/lib/directives/stop-propagation.directive.d.ts +12 -12
  176. package/lib/enums/common.d.ts +5 -5
  177. package/lib/enums/index.d.ts +1 -1
  178. package/lib/guards/auth.guard.d.ts +13 -13
  179. package/lib/guards/index.d.ts +2 -2
  180. package/lib/guards/permission.guard.d.ts +16 -16
  181. package/lib/handlers/oauth-configuration.handler.d.ts +13 -13
  182. package/lib/handlers/routes.handler.d.ts +11 -11
  183. package/lib/interceptors/api.interceptor.d.ts +16 -16
  184. package/lib/interceptors/index.d.ts +1 -1
  185. package/lib/localization.module.d.ts +7 -7
  186. package/lib/models/auth.d.ts +6 -6
  187. package/lib/models/common.d.ts +77 -77
  188. package/lib/models/dtos.d.ts +95 -95
  189. package/lib/models/environment.d.ts +35 -35
  190. package/lib/models/index.d.ts +9 -9
  191. package/lib/models/localization.d.ts +5 -5
  192. package/lib/models/replaceable-components.d.ts +45 -45
  193. package/lib/models/rest.d.ts +35 -35
  194. package/lib/models/session.d.ts +7 -7
  195. package/lib/models/utility.d.ts +14 -14
  196. package/lib/pipes/index.d.ts +2 -2
  197. package/lib/pipes/localization.pipe.d.ts +12 -12
  198. package/lib/pipes/sort.pipe.d.ts +9 -9
  199. package/lib/providers/cookie-language.provider.d.ts +3 -3
  200. package/lib/providers/locale.provider.d.ts +9 -9
  201. package/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.d.ts +12 -12
  202. package/lib/proxy/pages/abp/multi-tenancy/index.d.ts +1 -1
  203. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.d.ts +11 -11
  204. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.d.ts +1 -1
  205. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.d.ts +11 -11
  206. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +4 -4
  207. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +85 -85
  208. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.d.ts +1 -1
  209. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.d.ts +71 -71
  210. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.d.ts +1 -1
  211. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.d.ts +14 -14
  212. package/lib/proxy/volo/abp/http/modeling/index.d.ts +1 -1
  213. package/lib/proxy/volo/abp/http/modeling/models.d.ts +70 -70
  214. package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
  215. package/lib/proxy/volo/abp/localization/models.d.ts +6 -6
  216. package/lib/proxy/volo/abp/models.d.ts +4 -4
  217. package/lib/services/auth.service.d.ts +17 -17
  218. package/lib/services/config-state.service.d.ts +339 -339
  219. package/lib/services/content-projection.service.d.ts +10 -10
  220. package/lib/services/dom-insertion.service.d.ts +10 -10
  221. package/lib/services/environment.service.d.ts +96 -96
  222. package/lib/services/http-error-reporter.service.d.ts +12 -12
  223. package/lib/services/http-wait.service.d.ts +30 -30
  224. package/lib/services/index.d.ts +21 -21
  225. package/lib/services/lazy-load.service.d.ts +13 -13
  226. package/lib/services/list.service.d.ts +39 -39
  227. package/lib/services/localization.service.d.ts +47 -47
  228. package/lib/services/multi-tenancy.service.d.ts +22 -22
  229. package/lib/services/permission.service.d.ts +19 -19
  230. package/lib/services/replaceable-components.service.d.ts +19 -19
  231. package/lib/services/resource-wait.service.d.ts +15 -15
  232. package/lib/services/rest.service.d.ts +20 -20
  233. package/lib/services/router-events.service.d.ts +29 -29
  234. package/lib/services/router-wait.service.d.ts +20 -20
  235. package/lib/services/routes.service.d.ts +50 -50
  236. package/lib/services/session-state.service.d.ts +25 -25
  237. package/lib/services/subscription.service.d.ts +17 -17
  238. package/lib/services/track-by.service.d.ts +11 -11
  239. package/lib/strategies/auth-flow.strategy.d.ts +367 -367
  240. package/lib/strategies/container.strategy.d.ts +22 -22
  241. package/lib/strategies/content-security.strategy.d.ts +17 -17
  242. package/lib/strategies/content.strategy.d.ts +26 -26
  243. package/lib/strategies/context.strategy.d.ts +23 -23
  244. package/lib/strategies/cross-origin.strategy.d.ts +14 -14
  245. package/lib/strategies/dom.strategy.d.ts +13 -13
  246. package/lib/strategies/index.d.ts +8 -8
  247. package/lib/strategies/loading.strategy.d.ts +28 -28
  248. package/lib/strategies/projection.strategy.d.ts +39 -39
  249. package/lib/tokens/app-config.token.d.ts +3 -3
  250. package/lib/tokens/cookie-language-key.token.d.ts +2 -2
  251. package/lib/tokens/index.d.ts +8 -8
  252. package/lib/tokens/list.token.d.ts +2 -2
  253. package/lib/tokens/localization.token.d.ts +6 -6
  254. package/lib/tokens/lodaer-delay.token.d.ts +2 -2
  255. package/lib/tokens/manage-profile.token.d.ts +2 -2
  256. package/lib/tokens/options.token.d.ts +4 -4
  257. package/lib/tokens/tenant-key.token.d.ts +2 -2
  258. package/lib/utils/array-utils.d.ts +1 -1
  259. package/lib/utils/auth-utils.d.ts +162 -162
  260. package/lib/utils/common-utils.d.ts +9 -9
  261. package/lib/utils/date-extensions.d.ts +6 -6
  262. package/lib/utils/date-utils.d.ts +4 -4
  263. package/lib/utils/environment-utils.d.ts +3 -3
  264. package/lib/utils/factory-utils.d.ts +9 -9
  265. package/lib/utils/file-utils.d.ts +1 -1
  266. package/lib/utils/form-utils.d.ts +2 -2
  267. package/lib/utils/generator-utils.d.ts +3 -3
  268. package/lib/utils/http-utils.d.ts +8 -8
  269. package/lib/utils/index.d.ts +20 -20
  270. package/lib/utils/initial-utils.d.ts +159 -159
  271. package/lib/utils/internal-store-utils.d.ts +14 -14
  272. package/lib/utils/lazy-load-utils.d.ts +4 -4
  273. package/lib/utils/localization-utils.d.ts +5 -5
  274. package/lib/utils/multi-tenancy-utils.d.ts +3 -3
  275. package/lib/utils/number-utils.d.ts +1 -1
  276. package/lib/utils/object-utils.d.ts +1 -1
  277. package/lib/utils/route-utils.d.ts +8 -8
  278. package/lib/utils/string-utils.d.ts +3 -2
  279. package/lib/utils/tree-utils.d.ts +19 -19
  280. package/lib/validators/age.validator.d.ts +10 -10
  281. package/lib/validators/credit-card.validator.d.ts +5 -5
  282. package/lib/validators/index.d.ts +22 -22
  283. package/lib/validators/range.validator.d.ts +12 -12
  284. package/lib/validators/required.validator.d.ts +8 -8
  285. package/lib/validators/string-length.validator.d.ts +14 -14
  286. package/lib/validators/url.validator.d.ts +5 -5
  287. package/locale/abp-ng.core-locale.d.ts +5 -5
  288. package/locale/public-api.d.ts +1 -1
  289. package/locale/utils/register-locale.d.ts +13 -13
  290. package/package.json +2 -2
  291. package/public-api.d.ts +24 -24
  292. package/testing/abp-ng.core-testing.d.ts +5 -5
  293. package/testing/lib/core-testing.module.d.ts +16 -16
  294. package/testing/lib/services/index.d.ts +2 -2
  295. package/testing/lib/services/mock-permission.service.d.ts +10 -10
  296. package/testing/lib/services/mock-rest.service.d.ts +13 -13
  297. package/testing/lib/utils/clear-page.util.d.ts +2 -2
  298. package/testing/lib/utils/index.d.ts +2 -2
  299. package/testing/lib/utils/wait.util.d.ts +2 -2
  300. package/testing/public-api.d.ts +3 -3
@@ -1,76 +1,76 @@
1
- import { Injectable } from '@angular/core';
2
- import compare from 'just-compare';
3
- import { filter, take } from 'rxjs/operators';
4
- import { InternalStore } from '../utils/internal-store-utils';
5
- import { ConfigStateService } from './config-state.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "./config-state.service";
8
- export class SessionStateService {
9
- constructor(configState) {
10
- this.configState = configState;
11
- this.store = new InternalStore({});
12
- this.updateLocalStorage = () => {
13
- localStorage.setItem('abpSession', JSON.stringify(this.store.state));
14
- };
15
- this.init();
16
- this.setInitialLanguage();
17
- }
18
- init() {
19
- const session = localStorage.getItem('abpSession');
20
- if (session) {
21
- this.store.set(JSON.parse(session));
22
- }
23
- this.store.sliceUpdate(state => state).subscribe(this.updateLocalStorage);
24
- }
25
- setInitialLanguage() {
26
- if (this.getLanguage())
27
- return;
28
- this.configState
29
- .getDeep$('localization.currentCulture.cultureName')
30
- .pipe(filter(cultureName => !!cultureName), take(1))
31
- .subscribe(lang => {
32
- if (lang.includes(';')) {
33
- lang = lang.split(';')[0];
34
- }
35
- this.setLanguage(lang);
36
- });
37
- }
38
- onLanguageChange$() {
39
- return this.store.sliceUpdate(state => state.language);
40
- }
41
- onTenantChange$() {
42
- return this.store.sliceUpdate(state => state.tenant);
43
- }
44
- getLanguage() {
45
- return this.store.state.language;
46
- }
47
- getLanguage$() {
48
- return this.store.sliceState(state => state.language);
49
- }
50
- getTenant() {
51
- return this.store.state.tenant;
52
- }
53
- getTenant$() {
54
- return this.store.sliceState(state => state.tenant);
55
- }
56
- setTenant(tenant) {
57
- if (compare(tenant, this.store.state.tenant))
58
- return;
59
- this.store.set(Object.assign(Object.assign({}, this.store.state), { tenant }));
60
- }
61
- setLanguage(language) {
62
- if (language === this.store.state.language)
63
- return;
64
- this.store.patch({ language });
65
- document.documentElement.setAttribute('lang', language);
66
- }
67
- }
68
- SessionStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, deps: [{ token: i1.ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
69
- SessionStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, providedIn: 'root' });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, decorators: [{
71
- type: Injectable,
72
- args: [{
73
- providedIn: 'root',
74
- }]
75
- }], ctorParameters: function () { return [{ type: i1.ConfigStateService }]; } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBSzVELE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsWUFBb0IsV0FBK0I7UUFBL0IsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBTmxDLFVBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxFQUFtQixDQUFDLENBQUM7UUFFeEQsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ2hDLFlBQVksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQztRQUdBLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxJQUFJO1FBQ1YsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQUUsT0FBTztRQUUvQixJQUFJLENBQUMsV0FBVzthQUNiLFFBQVEsQ0FBQyx5Q0FBeUMsQ0FBQzthQUNuRCxJQUFJLENBQ0gsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxFQUNwQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN0QixJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzQjtZQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUF3QjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQUUsT0FBTztRQUVyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsaUNBQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUUsTUFBTSxJQUFHLENBQUM7SUFDbEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixJQUFJLFFBQVEsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUVuRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDL0IsUUFBUSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzFELENBQUM7O2lIQTFFVSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBjb21wYXJlIGZyb20gJ2p1c3QtY29tcGFyZSc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU2Vzc2lvbiB9IGZyb20gJy4uL21vZGVscy9zZXNzaW9uJztcclxuaW1wb3J0IHsgQ3VycmVudFRlbmFudER0byB9IGZyb20gJy4uL3Byb3h5L3ZvbG8vYWJwL2FzcC1uZXQtY29yZS9tdmMvbXVsdGktdGVuYW5jeS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBJbnRlcm5hbFN0b3JlIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJuYWwtc3RvcmUtdXRpbHMnO1xyXG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy1zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZXNzaW9uU3RhdGVTZXJ2aWNlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gbmV3IEludGVybmFsU3RvcmUoe30gYXMgU2Vzc2lvbi5TdGF0ZSk7XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlTG9jYWxTdG9yYWdlID0gKCkgPT4ge1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2FicFNlc3Npb24nLCBKU09OLnN0cmluZ2lmeSh0aGlzLnN0b3JlLnN0YXRlKSk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICAgIHRoaXMuc2V0SW5pdGlhbExhbmd1YWdlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXQoKSB7XHJcbiAgICBjb25zdCBzZXNzaW9uID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2FicFNlc3Npb24nKTtcclxuICAgIGlmIChzZXNzaW9uKSB7XHJcbiAgICAgIHRoaXMuc3RvcmUuc2V0KEpTT04ucGFyc2Uoc2Vzc2lvbikpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGUoc3RhdGUgPT4gc3RhdGUpLnN1YnNjcmliZSh0aGlzLnVwZGF0ZUxvY2FsU3RvcmFnZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEluaXRpYWxMYW5ndWFnZSgpIHtcclxuICAgIGlmICh0aGlzLmdldExhbmd1YWdlKCkpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmNvbmZpZ1N0YXRlXHJcbiAgICAgIC5nZXREZWVwJCgnbG9jYWxpemF0aW9uLmN1cnJlbnRDdWx0dXJlLmN1bHR1cmVOYW1lJylcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKGN1bHR1cmVOYW1lID0+ICEhY3VsdHVyZU5hbWUpLFxyXG4gICAgICAgIHRha2UoMSksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShsYW5nID0+IHtcclxuICAgICAgICBpZiAobGFuZy5pbmNsdWRlcygnOycpKSB7XHJcbiAgICAgICAgICBsYW5nID0gbGFuZy5zcGxpdCgnOycpWzBdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zZXRMYW5ndWFnZShsYW5nKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxhbmd1YWdlQ2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLmxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIG9uVGVuYW50Q2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLnRlbmFudCk7XHJcbiAgfVxyXG5cclxuICBnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlLmxhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFuZ3VhZ2UkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5sYW5ndWFnZSk7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZS50ZW5hbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS50ZW5hbnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGVuYW50KHRlbmFudDogQ3VycmVudFRlbmFudER0bykge1xyXG4gICAgaWYgKGNvbXBhcmUodGVuYW50LCB0aGlzLnN0b3JlLnN0YXRlLnRlbmFudCkpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLnN0b3JlLnNldCh7IC4uLnRoaXMuc3RvcmUuc3RhdGUsIHRlbmFudCB9KTtcclxuICB9XHJcblxyXG4gIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpIHtcclxuICAgIGlmIChsYW5ndWFnZSA9PT0gdGhpcy5zdG9yZS5zdGF0ZS5sYW5ndWFnZSkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuc3RvcmUucGF0Y2goeyBsYW5ndWFnZSB9KTtcclxuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2xhbmcnLCBsYW5ndWFnZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import compare from 'just-compare';
3
+ import { filter, take } from 'rxjs/operators';
4
+ import { InternalStore } from '../utils/internal-store-utils';
5
+ import { ConfigStateService } from './config-state.service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./config-state.service";
8
+ export class SessionStateService {
9
+ constructor(configState) {
10
+ this.configState = configState;
11
+ this.store = new InternalStore({});
12
+ this.updateLocalStorage = () => {
13
+ localStorage.setItem('abpSession', JSON.stringify(this.store.state));
14
+ };
15
+ this.init();
16
+ this.setInitialLanguage();
17
+ }
18
+ init() {
19
+ const session = localStorage.getItem('abpSession');
20
+ if (session) {
21
+ this.store.set(JSON.parse(session));
22
+ }
23
+ this.store.sliceUpdate(state => state).subscribe(this.updateLocalStorage);
24
+ }
25
+ setInitialLanguage() {
26
+ if (this.getLanguage())
27
+ return;
28
+ this.configState
29
+ .getDeep$('localization.currentCulture.cultureName')
30
+ .pipe(filter(cultureName => !!cultureName), take(1))
31
+ .subscribe(lang => {
32
+ if (lang.includes(';')) {
33
+ lang = lang.split(';')[0];
34
+ }
35
+ this.setLanguage(lang);
36
+ });
37
+ }
38
+ onLanguageChange$() {
39
+ return this.store.sliceUpdate(state => state.language);
40
+ }
41
+ onTenantChange$() {
42
+ return this.store.sliceUpdate(state => state.tenant);
43
+ }
44
+ getLanguage() {
45
+ return this.store.state.language;
46
+ }
47
+ getLanguage$() {
48
+ return this.store.sliceState(state => state.language);
49
+ }
50
+ getTenant() {
51
+ return this.store.state.tenant;
52
+ }
53
+ getTenant$() {
54
+ return this.store.sliceState(state => state.tenant);
55
+ }
56
+ setTenant(tenant) {
57
+ if (compare(tenant, this.store.state.tenant))
58
+ return;
59
+ this.store.set(Object.assign(Object.assign({}, this.store.state), { tenant }));
60
+ }
61
+ setLanguage(language) {
62
+ if (language === this.store.state.language)
63
+ return;
64
+ this.store.patch({ language });
65
+ document.documentElement.setAttribute('lang', language);
66
+ }
67
+ }
68
+ SessionStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, deps: [{ token: i1.ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
69
+ SessionStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, providedIn: 'root' });
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, decorators: [{
71
+ type: Injectable,
72
+ args: [{
73
+ providedIn: 'root',
74
+ }]
75
+ }], ctorParameters: function () { return [{ type: i1.ConfigStateService }]; } });
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBSzVELE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsWUFBb0IsV0FBK0I7UUFBL0IsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBTmxDLFVBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxFQUFtQixDQUFDLENBQUM7UUFFeEQsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ2hDLFlBQVksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQztRQUdBLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxJQUFJO1FBQ1YsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQUUsT0FBTztRQUUvQixJQUFJLENBQUMsV0FBVzthQUNiLFFBQVEsQ0FBQyx5Q0FBeUMsQ0FBQzthQUNuRCxJQUFJLENBQ0gsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxFQUNwQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN0QixJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzQjtZQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUF3QjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQUUsT0FBTztRQUVyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsaUNBQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUUsTUFBTSxJQUFHLENBQUM7SUFDbEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixJQUFJLFFBQVEsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUVuRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDL0IsUUFBUSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzFELENBQUM7O2lIQTFFVSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2Vzc2lvbiB9IGZyb20gJy4uL21vZGVscy9zZXNzaW9uJztcbmltcG9ydCB7IEN1cnJlbnRUZW5hbnREdG8gfSBmcm9tICcuLi9wcm94eS92b2xvL2FicC9hc3AtbmV0LWNvcmUvbXZjL211bHRpLXRlbmFuY3kvbW9kZWxzJztcbmltcG9ydCB7IEludGVybmFsU3RvcmUgfSBmcm9tICcuLi91dGlscy9pbnRlcm5hbC1zdG9yZS11dGlscyc7XG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy1zdGF0ZS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNlc3Npb25TdGF0ZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gbmV3IEludGVybmFsU3RvcmUoe30gYXMgU2Vzc2lvbi5TdGF0ZSk7XG5cbiAgcHJpdmF0ZSB1cGRhdGVMb2NhbFN0b3JhZ2UgPSAoKSA9PiB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2FicFNlc3Npb24nLCBKU09OLnN0cmluZ2lmeSh0aGlzLnN0b3JlLnN0YXRlKSk7XG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlKSB7XG4gICAgdGhpcy5pbml0KCk7XG4gICAgdGhpcy5zZXRJbml0aWFsTGFuZ3VhZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpIHtcbiAgICBjb25zdCBzZXNzaW9uID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2FicFNlc3Npb24nKTtcbiAgICBpZiAoc2Vzc2lvbikge1xuICAgICAgdGhpcy5zdG9yZS5zZXQoSlNPTi5wYXJzZShzZXNzaW9uKSk7XG4gICAgfVxuXG4gICAgdGhpcy5zdG9yZS5zbGljZVVwZGF0ZShzdGF0ZSA9PiBzdGF0ZSkuc3Vic2NyaWJlKHRoaXMudXBkYXRlTG9jYWxTdG9yYWdlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5pdGlhbExhbmd1YWdlKCkge1xuICAgIGlmICh0aGlzLmdldExhbmd1YWdlKCkpIHJldHVybjtcblxuICAgIHRoaXMuY29uZmlnU3RhdGVcbiAgICAgIC5nZXREZWVwJCgnbG9jYWxpemF0aW9uLmN1cnJlbnRDdWx0dXJlLmN1bHR1cmVOYW1lJylcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoY3VsdHVyZU5hbWUgPT4gISFjdWx0dXJlTmFtZSksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGxhbmcgPT4ge1xuICAgICAgICBpZiAobGFuZy5pbmNsdWRlcygnOycpKSB7XG4gICAgICAgICAgbGFuZyA9IGxhbmcuc3BsaXQoJzsnKVswXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0TGFuZ3VhZ2UobGFuZyk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG9uTGFuZ3VhZ2VDaGFuZ2UkKCkge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLmxhbmd1YWdlKTtcbiAgfVxuXG4gIG9uVGVuYW50Q2hhbmdlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVVwZGF0ZShzdGF0ZSA9PiBzdGF0ZS50ZW5hbnQpO1xuICB9XG5cbiAgZ2V0TGFuZ3VhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUubGFuZ3VhZ2U7XG4gIH1cblxuICBnZXRMYW5ndWFnZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5sYW5ndWFnZSk7XG4gIH1cblxuICBnZXRUZW5hbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUudGVuYW50O1xuICB9XG5cbiAgZ2V0VGVuYW50JCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLnRlbmFudCk7XG4gIH1cblxuICBzZXRUZW5hbnQodGVuYW50OiBDdXJyZW50VGVuYW50RHRvKSB7XG4gICAgaWYgKGNvbXBhcmUodGVuYW50LCB0aGlzLnN0b3JlLnN0YXRlLnRlbmFudCkpIHJldHVybjtcblxuICAgIHRoaXMuc3RvcmUuc2V0KHsgLi4udGhpcy5zdG9yZS5zdGF0ZSwgdGVuYW50IH0pO1xuICB9XG5cbiAgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZykge1xuICAgIGlmIChsYW5ndWFnZSA9PT0gdGhpcy5zdG9yZS5zdGF0ZS5sYW5ndWFnZSkgcmV0dXJuO1xuXG4gICAgdGhpcy5zdG9yZS5wYXRjaCh7IGxhbmd1YWdlIH0pO1xuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2xhbmcnLCBsYW5ndWFnZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,41 +1,41 @@
1
- import { Injectable } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export class SubscriptionService {
5
- constructor() {
6
- this.subscription = new Subscription();
7
- }
8
- get isClosed() {
9
- return this.subscription.closed;
10
- }
11
- addOne(source$, nextOrObserver, error) {
12
- const subscription = source$.subscribe(nextOrObserver, error);
13
- this.subscription.add(subscription);
14
- return subscription;
15
- }
16
- closeAll() {
17
- this.subscription.unsubscribe();
18
- }
19
- closeOne(subscription) {
20
- this.removeOne(subscription);
21
- subscription.unsubscribe();
22
- }
23
- ngOnDestroy() {
24
- this.subscription.unsubscribe();
25
- }
26
- removeOne(subscription) {
27
- if (!subscription)
28
- return;
29
- this.subscription.remove(subscription);
30
- }
31
- reset() {
32
- this.subscription.unsubscribe();
33
- this.subscription = new Subscription();
34
- }
35
- }
36
- SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
37
- SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, decorators: [{
39
- type: Injectable
40
- }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUlwQyxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRVUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBNEMzQztJQTFDQyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFRRCxNQUFNLENBQ0osT0FBc0IsRUFDdEIsY0FBNkMsRUFDN0MsS0FBNEI7UUFFNUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUSxDQUFDLFlBQTZDO1FBQ3BELElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsU0FBUyxDQUFDLFlBQTZDO1FBQ3JELElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7O2lIQTVDVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgdHlwZSB7IE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlLCBQYXJ0aWFsT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFN1YnNjcmlwdGlvblNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBnZXQgaXNDbG9zZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb24uY2xvc2VkO1xyXG4gIH1cclxuXHJcbiAgYWRkT25lPFQgZXh0ZW5kcyB1bmtub3duPihcclxuICAgIHNvdXJjZSQ6IE9ic2VydmFibGU8VD4sXHJcbiAgICBuZXh0PzogKHZhbHVlOiBUKSA9PiB2b2lkLFxyXG4gICAgZXJyb3I/OiAoZXJyb3I6IGFueSkgPT4gdm9pZCxcclxuICApOiBTdWJzY3JpcHRpb247XHJcbiAgYWRkT25lPFQgZXh0ZW5kcyB1bmtub3duPihzb3VyY2UkOiBPYnNlcnZhYmxlPFQ+LCBvYnNlcnZlcj86IFBhcnRpYWxPYnNlcnZlcjxUPik6IFN1YnNjcmlwdGlvbjtcclxuICBhZGRPbmU8VCBleHRlbmRzIHVua25vd24+KFxyXG4gICAgc291cmNlJDogT2JzZXJ2YWJsZTxUPixcclxuICAgIG5leHRPck9ic2VydmVyPzogUGFydGlhbE9ic2VydmVyPFQ+IHwgTmV4dDxUPixcclxuICAgIGVycm9yPzogKGVycm9yOiBhbnkpID0+IHZvaWQsXHJcbiAgKTogU3Vic2NyaXB0aW9uIHtcclxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNvdXJjZSQuc3Vic2NyaWJlKG5leHRPck9ic2VydmVyIGFzIE5leHQ8VD4sIGVycm9yKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChzdWJzY3JpcHRpb24pO1xyXG4gICAgcmV0dXJuIHN1YnNjcmlwdGlvbjtcclxuICB9XHJcblxyXG4gIGNsb3NlQWxsKCkge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlT25lKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xyXG4gICAgdGhpcy5yZW1vdmVPbmUoc3Vic2NyaXB0aW9uKTtcclxuICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlT25lKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xyXG4gICAgaWYgKCFzdWJzY3JpcHRpb24pIHJldHVybjtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnJlbW92ZShzdWJzY3JpcHRpb24pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgfVxyXG59XHJcblxyXG50eXBlIE5leHQ8VD4gPSAodmFsdWU6IFQpID0+IHZvaWQ7XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import { Subscription } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class SubscriptionService {
5
+ constructor() {
6
+ this.subscription = new Subscription();
7
+ }
8
+ get isClosed() {
9
+ return this.subscription.closed;
10
+ }
11
+ addOne(source$, nextOrObserver, error) {
12
+ const subscription = source$.subscribe(nextOrObserver, error);
13
+ this.subscription.add(subscription);
14
+ return subscription;
15
+ }
16
+ closeAll() {
17
+ this.subscription.unsubscribe();
18
+ }
19
+ closeOne(subscription) {
20
+ this.removeOne(subscription);
21
+ subscription.unsubscribe();
22
+ }
23
+ ngOnDestroy() {
24
+ this.subscription.unsubscribe();
25
+ }
26
+ removeOne(subscription) {
27
+ if (!subscription)
28
+ return;
29
+ this.subscription.remove(subscription);
30
+ }
31
+ reset() {
32
+ this.subscription.unsubscribe();
33
+ this.subscription = new Subscription();
34
+ }
35
+ }
36
+ SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
37
+ SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, decorators: [{
39
+ type: Injectable
40
+ }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUlwQyxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRVUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBNEMzQztJQTFDQyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFRRCxNQUFNLENBQ0osT0FBc0IsRUFDdEIsY0FBNkMsRUFDN0MsS0FBNEI7UUFFNUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUSxDQUFDLFlBQTZDO1FBQ3BELElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsU0FBUyxDQUFDLFlBQTZDO1FBQ3JELElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7O2lIQTVDVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlLCBQYXJ0aWFsT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFN1YnNjcmlwdGlvblNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBnZXQgaXNDbG9zZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3Vic2NyaXB0aW9uLmNsb3NlZDtcbiAgfVxuXG4gIGFkZE9uZTxUIGV4dGVuZHMgdW5rbm93bj4oXG4gICAgc291cmNlJDogT2JzZXJ2YWJsZTxUPixcbiAgICBuZXh0PzogKHZhbHVlOiBUKSA9PiB2b2lkLFxuICAgIGVycm9yPzogKGVycm9yOiBhbnkpID0+IHZvaWQsXG4gICk6IFN1YnNjcmlwdGlvbjtcbiAgYWRkT25lPFQgZXh0ZW5kcyB1bmtub3duPihzb3VyY2UkOiBPYnNlcnZhYmxlPFQ+LCBvYnNlcnZlcj86IFBhcnRpYWxPYnNlcnZlcjxUPik6IFN1YnNjcmlwdGlvbjtcbiAgYWRkT25lPFQgZXh0ZW5kcyB1bmtub3duPihcbiAgICBzb3VyY2UkOiBPYnNlcnZhYmxlPFQ+LFxuICAgIG5leHRPck9ic2VydmVyPzogUGFydGlhbE9ic2VydmVyPFQ+IHwgTmV4dDxUPixcbiAgICBlcnJvcj86IChlcnJvcjogYW55KSA9PiB2b2lkLFxuICApOiBTdWJzY3JpcHRpb24ge1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNvdXJjZSQuc3Vic2NyaWJlKG5leHRPck9ic2VydmVyIGFzIE5leHQ8VD4sIGVycm9yKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoc3Vic2NyaXB0aW9uKTtcbiAgICByZXR1cm4gc3Vic2NyaXB0aW9uO1xuICB9XG5cbiAgY2xvc2VBbGwoKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGNsb3NlT25lKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIHRoaXMucmVtb3ZlT25lKHN1YnNjcmlwdGlvbik7XG4gICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcmVtb3ZlT25lKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGlmICghc3Vic2NyaXB0aW9uKSByZXR1cm47XG4gICAgdGhpcy5zdWJzY3JpcHRpb24ucmVtb3ZlKHN1YnNjcmlwdGlvbik7XG4gIH1cblxuICByZXNldCgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICB9XG59XG5cbnR5cGUgTmV4dDxUPiA9ICh2YWx1ZTogVCkgPT4gdm9pZDtcbiJdfQ==
@@ -1,21 +1,21 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export const trackBy = (key) => (_, item) => item[key];
4
- export const trackByDeep = (
5
- // eslint-disable-next-line @typescript-eslint/ban-types
6
- ...keys) => (_, item) => keys.reduce((acc, key) => acc[key], item);
7
- export class TrackByService {
8
- constructor() {
9
- this.by = trackBy;
10
- this.byDeep = trackByDeep;
11
- }
12
- }
13
- TrackByService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
- TrackByService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, providedIn: 'root' });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, decorators: [{
16
- type: Injectable,
17
- args: [{
18
- providedIn: 'root',
19
- }]
20
- }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2stYnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy90cmFjay1ieS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQW1CLE1BQU0sZUFBZSxDQUFDOztBQUc1RCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQ2xCLENBQVUsR0FBWSxFQUFzQixFQUFFLENBQzlDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBRWQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUN0QjtBQUNFLHdEQUF3RDtBQUN4RCxHQUFHLElBQTJDLEVBQzFCLEVBQUUsQ0FDeEIsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBSzlDLE1BQU0sT0FBTyxjQUFjO0lBSDNCO1FBSUUsT0FBRSxHQUFHLE9BQU8sQ0FBQztRQUViLFdBQU0sR0FBRyxXQUFXLENBQUM7S0FDdEI7OzRHQUpZLGNBQWM7Z0hBQWQsY0FBYyxjQUZiLE1BQU07NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUcmFja0J5RnVuY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTyB9IGZyb20gJ3RzLXRvb2xiZWx0JztcclxuXHJcbmV4cG9ydCBjb25zdCB0cmFja0J5ID1cclxuICA8VCA9IGFueT4oa2V5OiBrZXlvZiBUKTogVHJhY2tCeUZ1bmN0aW9uPFQ+ID0+XHJcbiAgKF8sIGl0ZW0pID0+XHJcbiAgICBpdGVtW2tleV07XHJcblxyXG5leHBvcnQgY29uc3QgdHJhY2tCeURlZXAgPVxyXG4gIDxUID0gYW55PihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXHJcbiAgICAuLi5rZXlzOiBUIGV4dGVuZHMgb2JqZWN0ID8gTy5QYXRoczxUPiA6IG5ldmVyXHJcbiAgKTogVHJhY2tCeUZ1bmN0aW9uPFQ+ID0+XHJcbiAgKF8sIGl0ZW0pID0+XHJcbiAgICBrZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IGFjY1trZXldLCBpdGVtKTtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFja0J5U2VydmljZTxJdGVtVHlwZSA9IGFueT4ge1xyXG4gIGJ5ID0gdHJhY2tCeTtcclxuXHJcbiAgYnlEZWVwID0gdHJhY2tCeURlZXA7XHJcbn1cclxuIl19
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export const trackBy = (key) => (_, item) => item[key];
4
+ export const trackByDeep = (
5
+ // eslint-disable-next-line @typescript-eslint/ban-types
6
+ ...keys) => (_, item) => keys.reduce((acc, key) => acc[key], item);
7
+ export class TrackByService {
8
+ constructor() {
9
+ this.by = trackBy;
10
+ this.byDeep = trackByDeep;
11
+ }
12
+ }
13
+ TrackByService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
+ TrackByService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, providedIn: 'root' });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, decorators: [{
16
+ type: Injectable,
17
+ args: [{
18
+ providedIn: 'root',
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2stYnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy90cmFjay1ieS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQW1CLE1BQU0sZUFBZSxDQUFDOztBQUc1RCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQ2xCLENBQVUsR0FBWSxFQUFzQixFQUFFLENBQzlDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBRWQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUN0QjtBQUNFLHdEQUF3RDtBQUN4RCxHQUFHLElBQTJDLEVBQzFCLEVBQUUsQ0FDeEIsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBSzlDLE1BQU0sT0FBTyxjQUFjO0lBSDNCO1FBSUUsT0FBRSxHQUFHLE9BQU8sQ0FBQztRQUViLFdBQU0sR0FBRyxXQUFXLENBQUM7S0FDdEI7OzRHQUpZLGNBQWM7Z0hBQWQsY0FBYyxjQUZiLE1BQU07NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUcmFja0J5RnVuY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE8gfSBmcm9tICd0cy10b29sYmVsdCc7XG5cbmV4cG9ydCBjb25zdCB0cmFja0J5ID1cbiAgPFQgPSBhbnk+KGtleToga2V5b2YgVCk6IFRyYWNrQnlGdW5jdGlvbjxUPiA9PlxuICAoXywgaXRlbSkgPT5cbiAgICBpdGVtW2tleV07XG5cbmV4cG9ydCBjb25zdCB0cmFja0J5RGVlcCA9XG4gIDxUID0gYW55PihcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgIC4uLmtleXM6IFQgZXh0ZW5kcyBvYmplY3QgPyBPLlBhdGhzPFQ+IDogbmV2ZXJcbiAgKTogVHJhY2tCeUZ1bmN0aW9uPFQ+ID0+XG4gIChfLCBpdGVtKSA9PlxuICAgIGtleXMucmVkdWNlKChhY2MsIGtleSkgPT4gYWNjW2tleV0sIGl0ZW0pO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVHJhY2tCeVNlcnZpY2U8SXRlbVR5cGUgPSBhbnk+IHtcbiAgYnkgPSB0cmFja0J5O1xuXG4gIGJ5RGVlcCA9IHRyYWNrQnlEZWVwO1xufVxuIl19