@abp/ng.core 5.0.1 → 5.1.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 (198) hide show
  1. package/{esm2015/abp-ng.core.js → esm2020/abp-ng.core.mjs} +0 -0
  2. package/{esm2015/lib/abstracts/index.js → esm2020/lib/abstracts/index.mjs} +0 -0
  3. package/{esm2015/lib/abstracts/ng-model.component.js → esm2020/lib/abstracts/ng-model.component.mjs} +4 -4
  4. package/esm2020/lib/components/dynamic-layout.component.mjs +88 -0
  5. package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +0 -0
  6. package/{esm2015/lib/components/replaceable-route-container.component.js → esm2020/lib/components/replaceable-route-container.component.mjs} +4 -4
  7. package/{esm2015/lib/components/router-outlet.component.js → esm2020/lib/components/router-outlet.component.mjs} +4 -4
  8. package/{esm2015/lib/constants/different-locales.js → esm2020/lib/constants/different-locales.mjs} +0 -0
  9. package/{esm2015/lib/constants/index.js → esm2020/lib/constants/index.mjs} +0 -0
  10. package/esm2020/lib/core.module.mjs +281 -0
  11. package/{esm2015/lib/directives/autofocus.directive.js → esm2020/lib/directives/autofocus.directive.mjs} +4 -4
  12. package/{esm2015/lib/directives/debounce.directive.js → esm2020/lib/directives/debounce.directive.mjs} +4 -4
  13. package/{esm2015/lib/directives/for.directive.js → esm2020/lib/directives/for.directive.mjs} +4 -4
  14. package/{esm2015/lib/directives/form-submit.directive.js → esm2020/lib/directives/form-submit.directive.mjs} +4 -4
  15. package/{esm2015/lib/directives/index.js → esm2020/lib/directives/index.mjs} +0 -0
  16. package/{esm2015/lib/directives/init.directive.js → esm2020/lib/directives/init.directive.mjs} +4 -4
  17. package/{esm2015/lib/directives/permission.directive.js → esm2020/lib/directives/permission.directive.mjs} +4 -4
  18. package/esm2020/lib/directives/replaceable-template.directive.mjs +126 -0
  19. package/{esm2015/lib/directives/stop-propagation.directive.js → esm2020/lib/directives/stop-propagation.directive.mjs} +4 -4
  20. package/{esm2015/lib/enums/common.js → esm2020/lib/enums/common.mjs} +0 -0
  21. package/{esm2015/lib/enums/index.js → esm2020/lib/enums/index.mjs} +0 -0
  22. package/{esm2015/lib/guards/auth.guard.js → esm2020/lib/guards/auth.guard.mjs} +4 -4
  23. package/{esm2015/lib/guards/index.js → esm2020/lib/guards/index.mjs} +0 -0
  24. package/{esm2015/lib/guards/permission.guard.js → esm2020/lib/guards/permission.guard.mjs} +5 -5
  25. package/{esm2015/lib/handlers/oauth-configuration.handler.js → esm2020/lib/handlers/oauth-configuration.handler.mjs} +4 -4
  26. package/esm2020/lib/handlers/routes.handler.mjs +49 -0
  27. package/esm2020/lib/interceptors/api.interceptor.mjs +54 -0
  28. package/{esm2015/lib/interceptors/index.js → esm2020/lib/interceptors/index.mjs} +0 -0
  29. package/{esm2015/lib/localization.module.js → esm2020/lib/localization.module.mjs} +5 -5
  30. package/{esm2015/lib/models/auth.js → esm2020/lib/models/auth.mjs} +0 -0
  31. package/{esm2015/lib/models/common.js → esm2020/lib/models/common.mjs} +0 -0
  32. package/{esm2015/lib/models/dtos.js → esm2020/lib/models/dtos.mjs} +0 -0
  33. package/{esm2015/lib/models/environment.js → esm2020/lib/models/environment.mjs} +0 -0
  34. package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +0 -0
  35. package/{esm2015/lib/models/localization.js → esm2020/lib/models/localization.mjs} +0 -0
  36. package/{esm2015/lib/models/replaceable-components.js → esm2020/lib/models/replaceable-components.mjs} +0 -0
  37. package/{esm2015/lib/models/rest.js → esm2020/lib/models/rest.mjs} +0 -0
  38. package/{esm2015/lib/models/session.js → esm2020/lib/models/session.mjs} +0 -0
  39. package/{esm2015/lib/models/utility.js → esm2020/lib/models/utility.mjs} +0 -0
  40. package/{esm2015/lib/pipes/index.js → esm2020/lib/pipes/index.mjs} +2 -1
  41. package/{esm2015/lib/pipes/localization.pipe.js → esm2020/lib/pipes/localization.pipe.mjs} +5 -5
  42. package/{esm2015/lib/pipes/sort.pipe.js → esm2020/lib/pipes/sort.pipe.mjs} +5 -5
  43. package/esm2020/lib/pipes/to-injector.pipe.mjs +29 -0
  44. package/{esm2015/lib/providers/cookie-language.provider.js → esm2020/lib/providers/cookie-language.provider.mjs} +0 -0
  45. package/{esm2015/lib/providers/locale.provider.js → esm2020/lib/providers/locale.provider.mjs} +0 -0
  46. package/{esm2015/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.js → esm2020/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs} +4 -4
  47. package/{esm2015/lib/proxy/pages/abp/multi-tenancy/index.js → esm2020/lib/proxy/pages/abp/multi-tenancy/index.mjs} +0 -0
  48. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs} +4 -4
  49. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.mjs} +0 -0
  50. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs} +4 -4
  51. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.mjs} +0 -0
  52. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.mjs} +0 -0
  53. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.mjs} +0 -0
  54. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.mjs} +0 -0
  55. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.mjs} +0 -0
  56. package/{esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.js → esm2020/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.mjs} +0 -0
  57. package/{esm2015/lib/proxy/volo/abp/http/modeling/index.js → esm2020/lib/proxy/volo/abp/http/modeling/index.mjs} +0 -0
  58. package/{esm2015/lib/proxy/volo/abp/http/modeling/models.js → esm2020/lib/proxy/volo/abp/http/modeling/models.mjs} +0 -0
  59. package/{esm2015/lib/proxy/volo/abp/localization/index.js → esm2020/lib/proxy/volo/abp/localization/index.mjs} +0 -0
  60. package/{esm2015/lib/proxy/volo/abp/localization/models.js → esm2020/lib/proxy/volo/abp/localization/models.mjs} +0 -0
  61. package/{esm2015/lib/proxy/volo/abp/models.js → esm2020/lib/proxy/volo/abp/models.mjs} +0 -0
  62. package/esm2020/lib/services/auth.service.mjs +44 -0
  63. package/{esm2015/lib/services/config-state.service.js → esm2020/lib/services/config-state.service.mjs} +13 -16
  64. package/{esm2015/lib/services/content-projection.service.js → esm2020/lib/services/content-projection.service.mjs} +4 -4
  65. package/{esm2015/lib/services/dom-insertion.service.js → esm2020/lib/services/dom-insertion.service.mjs} +4 -4
  66. package/{esm2015/lib/services/environment.service.js → esm2020/lib/services/environment.service.mjs} +4 -4
  67. package/{esm2015/lib/services/http-error-reporter.service.js → esm2020/lib/services/http-error-reporter.service.mjs} +4 -4
  68. package/{esm2015/lib/services/http-wait.service.js → esm2020/lib/services/http-wait.service.mjs} +4 -4
  69. package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +0 -0
  70. package/{esm2015/lib/services/lazy-load.service.js → esm2020/lib/services/lazy-load.service.mjs} +4 -4
  71. package/{esm2015/lib/services/list.service.js → esm2020/lib/services/list.service.mjs} +4 -4
  72. package/esm2020/lib/services/localization.service.mjs +182 -0
  73. package/{esm2015/lib/services/multi-tenancy.service.js → esm2020/lib/services/multi-tenancy.service.mjs} +4 -4
  74. package/{esm2015/lib/services/permission.service.js → esm2020/lib/services/permission.service.mjs} +5 -6
  75. package/{esm2015/lib/services/replaceable-components.service.js → esm2020/lib/services/replaceable-components.service.mjs} +4 -4
  76. package/{esm2015/lib/services/resource-wait.service.js → esm2020/lib/services/resource-wait.service.mjs} +4 -4
  77. package/esm2020/lib/services/rest.service.mjs +66 -0
  78. package/{esm2015/lib/services/router-events.service.js → esm2020/lib/services/router-events.service.mjs} +4 -4
  79. package/{esm2015/lib/services/router-wait.service.js → esm2020/lib/services/router-wait.service.mjs} +4 -4
  80. package/esm2020/lib/services/routes.service.mjs +145 -0
  81. package/{esm2015/lib/services/session-state.service.js → esm2020/lib/services/session-state.service.mjs} +5 -5
  82. package/{esm2015/lib/services/subscription.service.js → esm2020/lib/services/subscription.service.mjs} +4 -4
  83. package/{esm2015/lib/services/track-by.service.js → esm2020/lib/services/track-by.service.mjs} +4 -4
  84. package/esm2020/lib/strategies/auth-flow.strategy.mjs +190 -0
  85. package/{esm2015/lib/strategies/container.strategy.js → esm2020/lib/strategies/container.strategy.mjs} +0 -0
  86. package/{esm2015/lib/strategies/content-security.strategy.js → esm2020/lib/strategies/content-security.strategy.mjs} +0 -0
  87. package/{esm2015/lib/strategies/content.strategy.js → esm2020/lib/strategies/content.strategy.mjs} +0 -0
  88. package/{esm2015/lib/strategies/context.strategy.js → esm2020/lib/strategies/context.strategy.mjs} +0 -0
  89. package/{esm2015/lib/strategies/cross-origin.strategy.js → esm2020/lib/strategies/cross-origin.strategy.mjs} +0 -0
  90. package/{esm2015/lib/strategies/dom.strategy.js → esm2020/lib/strategies/dom.strategy.mjs} +0 -0
  91. package/{esm2015/lib/strategies/index.js → esm2020/lib/strategies/index.mjs} +0 -0
  92. package/{esm2015/lib/strategies/loading.strategy.js → esm2020/lib/strategies/loading.strategy.mjs} +0 -0
  93. package/{esm2015/lib/strategies/projection.strategy.js → esm2020/lib/strategies/projection.strategy.mjs} +0 -0
  94. package/{esm2015/lib/tokens/app-config.token.js → esm2020/lib/tokens/app-config.token.mjs} +0 -0
  95. package/{esm2015/lib/tokens/cookie-language-key.token.js → esm2020/lib/tokens/cookie-language-key.token.mjs} +0 -0
  96. package/{esm2015/lib/tokens/index.js → esm2020/lib/tokens/index.mjs} +0 -0
  97. package/{esm2015/lib/tokens/list.token.js → esm2020/lib/tokens/list.token.mjs} +0 -0
  98. package/{esm2015/lib/tokens/localization.token.js → esm2020/lib/tokens/localization.token.mjs} +0 -0
  99. package/{esm2015/lib/tokens/lodaer-delay.token.js → esm2020/lib/tokens/lodaer-delay.token.mjs} +0 -0
  100. package/{esm2015/lib/tokens/manage-profile.token.js → esm2020/lib/tokens/manage-profile.token.mjs} +0 -0
  101. package/esm2020/lib/tokens/options.token.mjs +8 -0
  102. package/{esm2015/lib/tokens/tenant-key.token.js → esm2020/lib/tokens/tenant-key.token.mjs} +0 -0
  103. package/esm2020/lib/utils/array-utils.mjs +7 -0
  104. package/{esm2015/lib/utils/auth-utils.js → esm2020/lib/utils/auth-utils.mjs} +0 -0
  105. package/{esm2015/lib/utils/common-utils.js → esm2020/lib/utils/common-utils.mjs} +0 -0
  106. package/{esm2015/lib/utils/date-extensions.js → esm2020/lib/utils/date-extensions.mjs} +0 -0
  107. package/{esm2015/lib/utils/date-utils.js → esm2020/lib/utils/date-utils.mjs} +0 -0
  108. package/{esm2015/lib/utils/environment-utils.js → esm2020/lib/utils/environment-utils.mjs} +0 -0
  109. package/{esm2015/lib/utils/factory-utils.js → esm2020/lib/utils/factory-utils.mjs} +0 -0
  110. package/{esm2015/lib/utils/file-utils.js → esm2020/lib/utils/file-utils.mjs} +0 -0
  111. package/{esm2015/lib/utils/form-utils.js → esm2020/lib/utils/form-utils.mjs} +0 -0
  112. package/{esm2015/lib/utils/generator-utils.js → esm2020/lib/utils/generator-utils.mjs} +0 -0
  113. package/{esm2015/lib/utils/http-utils.js → esm2020/lib/utils/http-utils.mjs} +0 -0
  114. package/{esm2015/lib/utils/index.js → esm2020/lib/utils/index.mjs} +0 -0
  115. package/esm2020/lib/utils/initial-utils.mjs +63 -0
  116. package/esm2020/lib/utils/internal-store-utils.mjs +36 -0
  117. package/{esm2015/lib/utils/lazy-load-utils.js → esm2020/lib/utils/lazy-load-utils.mjs} +0 -0
  118. package/esm2020/lib/utils/localization-utils.mjs +49 -0
  119. package/esm2020/lib/utils/multi-tenancy-utils.mjs +78 -0
  120. package/{esm2015/lib/utils/number-utils.js → esm2020/lib/utils/number-utils.mjs} +0 -0
  121. package/{esm2015/lib/utils/object-utils.js → esm2020/lib/utils/object-utils.mjs} +0 -0
  122. package/esm2020/lib/utils/route-utils.mjs +26 -0
  123. package/esm2020/lib/utils/string-utils.mjs +25 -0
  124. package/{esm2015/lib/utils/tree-utils.js → esm2020/lib/utils/tree-utils.mjs} +1 -1
  125. package/{esm2015/lib/validators/age.validator.js → esm2020/lib/validators/age.validator.mjs} +0 -0
  126. package/{esm2015/lib/validators/credit-card.validator.js → esm2020/lib/validators/credit-card.validator.mjs} +0 -0
  127. package/{esm2015/lib/validators/index.js → esm2020/lib/validators/index.mjs} +0 -0
  128. package/{esm2015/lib/validators/range.validator.js → esm2020/lib/validators/range.validator.mjs} +0 -0
  129. package/{esm2015/lib/validators/required.validator.js → esm2020/lib/validators/required.validator.mjs} +0 -0
  130. package/{esm2015/lib/validators/string-length.validator.js → esm2020/lib/validators/string-length.validator.mjs} +0 -0
  131. package/{esm2015/lib/validators/url.validator.js → esm2020/lib/validators/url.validator.mjs} +0 -0
  132. package/{esm2015/locale/abp-ng.core-locale.js → esm2020/locale/abp-ng.core-locale.mjs} +0 -0
  133. package/{esm2015/locale/public-api.js → esm2020/locale/public-api.mjs} +0 -0
  134. package/esm2020/locale/utils/register-locale.mjs +47 -0
  135. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  136. package/{esm2015/testing/abp-ng.core-testing.js → esm2020/testing/abp-ng.core-testing.mjs} +0 -0
  137. package/esm2020/testing/lib/core-testing.module.mjs +63 -0
  138. package/{esm2015/testing/lib/services/index.js → esm2020/testing/lib/services/index.mjs} +0 -0
  139. package/{esm2015/testing/lib/services/mock-permission.service.js → esm2020/testing/lib/services/mock-permission.service.mjs} +4 -4
  140. package/{esm2015/testing/lib/services/mock-rest.service.js → esm2020/testing/lib/services/mock-rest.service.mjs} +4 -4
  141. package/{esm2015/testing/lib/utils/clear-page.util.js → esm2020/testing/lib/utils/clear-page.util.mjs} +0 -0
  142. package/{esm2015/testing/lib/utils/index.js → esm2020/testing/lib/utils/index.mjs} +0 -0
  143. package/{esm2015/testing/lib/utils/wait.util.js → esm2020/testing/lib/utils/wait.util.mjs} +0 -0
  144. package/{esm2015/testing/public-api.js → esm2020/testing/public-api.mjs} +0 -0
  145. package/fesm2015/{abp-ng.core-locale.js → abp-ng.core-locale.mjs} +11 -4
  146. package/fesm2015/abp-ng.core-locale.mjs.map +1 -0
  147. package/fesm2015/{abp-ng.core-testing.js → abp-ng.core-testing.mjs} +18 -16
  148. package/fesm2015/abp-ng.core-testing.mjs.map +1 -0
  149. package/fesm2015/{abp-ng.core.js → abp-ng.core.mjs} +812 -768
  150. package/fesm2015/abp-ng.core.mjs.map +1 -0
  151. package/fesm2020/abp-ng.core-locale.mjs +54 -0
  152. package/fesm2020/abp-ng.core-locale.mjs.map +1 -0
  153. package/fesm2020/abp-ng.core-testing.mjs +140 -0
  154. package/fesm2020/abp-ng.core-testing.mjs.map +1 -0
  155. package/fesm2020/abp-ng.core.mjs +4211 -0
  156. package/fesm2020/abp-ng.core.mjs.map +1 -0
  157. package/lib/core.module.d.ts +9 -8
  158. package/lib/pipes/index.d.ts +1 -0
  159. package/lib/pipes/to-injector.pipe.d.ts +10 -0
  160. package/lib/services/environment.service.d.ts +1 -0
  161. package/lib/services/list.service.d.ts +1 -1
  162. package/lib/services/subscription.service.d.ts +2 -2
  163. package/lib/utils/array-utils.d.ts +1 -1
  164. package/lib/utils/string-utils.d.ts +1 -0
  165. package/lib/utils/tree-utils.d.ts +2 -2
  166. package/locale/package.json +5 -5
  167. package/package.json +37 -8
  168. package/src/lib/proxy/README.md +17 -0
  169. package/testing/package.json +5 -5
  170. package/bundles/abp-ng.core-locale.umd.js +0 -381
  171. package/bundles/abp-ng.core-locale.umd.js.map +0 -1
  172. package/bundles/abp-ng.core-testing.umd.js +0 -494
  173. package/bundles/abp-ng.core-testing.umd.js.map +0 -1
  174. package/bundles/abp-ng.core.umd.js +0 -5277
  175. package/bundles/abp-ng.core.umd.js.map +0 -1
  176. package/esm2015/lib/components/dynamic-layout.component.js +0 -89
  177. package/esm2015/lib/core.module.js +0 -281
  178. package/esm2015/lib/directives/replaceable-template.directive.js +0 -121
  179. package/esm2015/lib/handlers/routes.handler.js +0 -47
  180. package/esm2015/lib/interceptors/api.interceptor.js +0 -54
  181. package/esm2015/lib/services/auth.service.js +0 -47
  182. package/esm2015/lib/services/localization.service.js +0 -182
  183. package/esm2015/lib/services/rest.service.js +0 -63
  184. package/esm2015/lib/services/routes.service.js +0 -147
  185. package/esm2015/lib/strategies/auth-flow.strategy.js +0 -202
  186. package/esm2015/lib/tokens/options.token.js +0 -8
  187. package/esm2015/lib/utils/array-utils.js +0 -7
  188. package/esm2015/lib/utils/initial-utils.js +0 -64
  189. package/esm2015/lib/utils/internal-store-utils.js +0 -36
  190. package/esm2015/lib/utils/localization-utils.js +0 -50
  191. package/esm2015/lib/utils/multi-tenancy-utils.js +0 -83
  192. package/esm2015/lib/utils/route-utils.js +0 -27
  193. package/esm2015/lib/utils/string-utils.js +0 -21
  194. package/esm2015/locale/utils/register-locale.js +0 -43
  195. package/esm2015/testing/lib/core-testing.module.js +0 -62
  196. package/fesm2015/abp-ng.core-locale.js.map +0 -1
  197. package/fesm2015/abp-ng.core-testing.js.map +0 -1
  198. package/fesm2015/abp-ng.core.js.map +0 -1
@@ -2,14 +2,14 @@ import * as i0 from '@angular/core';
2
2
  import { ChangeDetectorRef, Component, Input, InjectionToken, Injectable, Inject, isDevMode, Optional, SkipSelf, Directive, EventEmitter, Output, Self, Injector, Pipe, NgModule, APP_INITIALIZER, LOCALE_ID, NgModuleFactory, Compiler, ComponentFactoryResolver, ApplicationRef, inject } from '@angular/core';
3
3
  import * as i1$1 from '@angular/router';
4
4
  import { PRIMARY_OUTLET, NavigationCancel, NavigationEnd, NavigationError, NavigationStart, ActivatedRoute, Router, RouterModule } from '@angular/router';
5
- import * as i5 from '@angular/common';
6
- import { registerLocaleData, DOCUMENT, CommonModule } from '@angular/common';
7
- import { BehaviorSubject, Subject, throwError, combineLatest, from, Subscription, fromEvent, of, timer, pipe, Observable, concat, ReplaySubject } from 'rxjs';
5
+ import { BehaviorSubject, Subject, throwError, Subscription, combineLatest, from, fromEvent, of, timer, pipe, Observable, concat, ReplaySubject } from 'rxjs';
8
6
  import { map, distinctUntilChanged, filter, catchError, switchMap, take, mapTo, debounceTime, takeUntil, tap, finalize, retryWhen, delay, shareReplay } from 'rxjs/operators';
7
+ import compare from 'just-compare';
9
8
  import { __rest, __awaiter } from 'tslib';
10
9
  import * as i1 from '@angular/common/http';
11
10
  import { HttpParams, HttpHeaders, HttpClient, HttpClientModule, HttpClientXsrfModule, HTTP_INTERCEPTORS } from '@angular/common/http';
12
- import compare from 'just-compare';
11
+ import * as i5 from '@angular/common';
12
+ import { registerLocaleData, DOCUMENT, CommonModule } from '@angular/common';
13
13
  import * as i1$2 from '@angular/forms';
14
14
  import { FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
15
15
  import * as i1$3 from 'angular-oauth2-oidc';
@@ -56,9 +56,9 @@ class AbstractNgModelComponent {
56
56
  this.disabled = isDisabled;
57
57
  }
58
58
  }
59
- AbstractNgModelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbstractNgModelComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
60
- AbstractNgModelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: AbstractNgModelComponent, selector: "ng-component", inputs: { disabled: "disabled", readonly: "readonly", valueFn: "valueFn", valueLimitFn: "valueLimitFn", value: "value" }, ngImport: i0, template: '', isInline: true });
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbstractNgModelComponent, decorators: [{
59
+ AbstractNgModelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbstractNgModelComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
60
+ AbstractNgModelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AbstractNgModelComponent, selector: "ng-component", inputs: { disabled: "disabled", readonly: "readonly", valueFn: "valueFn", valueLimitFn: "valueLimitFn", value: "value" }, ngImport: i0, template: '', isInline: true });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbstractNgModelComponent, decorators: [{
62
62
  type: Component,
63
63
  args: [{ template: '' }]
64
64
  }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { disabled: [{
@@ -73,89 +73,65 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
73
73
  type: Input
74
74
  }] } });
75
75
 
76
- const LOCALIZATIONS = new InjectionToken('LOCALIZATIONS');
77
- function localizationContributor(localizations) {
78
- if (localizations) {
79
- localizations$.next([...localizations$.value, ...localizations]);
80
- }
81
- }
82
- const localizations$ = new BehaviorSubject([]);
83
-
84
- const CORE_OPTIONS = new InjectionToken('CORE_OPTIONS');
85
- function coreOptionsFactory(_a) {
86
- var options = __rest(_a, []);
87
- return Object.assign({}, options);
76
+ function pushValueTo(array) {
77
+ return (element) => {
78
+ array.push(element);
79
+ return array;
80
+ };
88
81
  }
89
82
 
90
- // This will not be necessary when only Angukar 9.1+ is supported
91
- function getLocaleDirection(locale) {
92
- return /^(ar(-[A-Z]{2})?|ckb(-IR)?|fa(-AF)?|he|ks|lrc(-IQ)?|mzn|pa-Arab|ps(-PK)?|sd|ug|ur(-IN)?|uz-Arab|yi)$/.test(locale)
93
- ? 'rtl'
94
- : 'ltr';
95
- }
96
- function createLocalizer(localization) {
97
- return (resourceName, key, defaultValue) => {
98
- var _a;
99
- if (resourceName === '_')
100
- return key;
101
- const resource = (_a = localization === null || localization === void 0 ? void 0 : localization.values) === null || _a === void 0 ? void 0 : _a[resourceName];
102
- if (!resource)
103
- return defaultValue;
104
- return resource[key] || defaultValue;
105
- };
83
+ /* eslint-disable @typescript-eslint/ban-types */
84
+ class BaseTreeNode {
85
+ constructor(props) {
86
+ this.children = [];
87
+ this.isLeaf = true;
88
+ Object.assign(this, props);
89
+ }
90
+ static create(props) {
91
+ return new BaseTreeNode(props);
92
+ }
106
93
  }
107
- function createLocalizerWithFallback(localization) {
108
- const findLocalization = createLocalizationFinder(localization);
109
- return (resourceNames, keys, defaultValue) => {
110
- const { localized } = findLocalization(resourceNames, keys);
111
- return localized || defaultValue;
112
- };
94
+ function createTreeFromList(list, keySelector, parentKeySelector, valueMapper) {
95
+ const map = createMapFromList(list, keySelector, valueMapper);
96
+ const tree = [];
97
+ list.forEach(row => {
98
+ const id = keySelector(row);
99
+ const parentId = parentKeySelector(row);
100
+ const node = map.get(id);
101
+ if (!node)
102
+ return;
103
+ if (parentId) {
104
+ const parent = map.get(parentId);
105
+ if (!parent)
106
+ return;
107
+ parent.children.push(node);
108
+ parent.isLeaf = false;
109
+ node.parent = parent;
110
+ }
111
+ else {
112
+ tree.push(node);
113
+ }
114
+ });
115
+ return tree;
113
116
  }
114
- function createLocalizationPipeKeyGenerator(localization) {
115
- const findLocalization = createLocalizationFinder(localization);
116
- return (resourceNames, keys, defaultKey) => {
117
- const { resourceName, key } = findLocalization(resourceNames, keys);
118
- return !resourceName ? defaultKey : resourceName === '_' ? key : `${resourceName}::${key}`;
119
- };
117
+ function createMapFromList(list, keySelector, valueMapper) {
118
+ const map = new Map();
119
+ list.forEach(row => map.set(keySelector(row), valueMapper(row)));
120
+ return map;
120
121
  }
121
- function createLocalizationFinder(localization) {
122
- const localize = createLocalizer(localization);
123
- return (resourceNames, keys) => {
124
- resourceNames = resourceNames.concat(localization.defaultResourceName || '').filter(Boolean);
125
- const resourceCount = resourceNames.length;
126
- const keyCount = keys.length;
127
- for (let i = 0; i < resourceCount; i++) {
128
- const resourceName = resourceNames[i];
129
- for (let j = 0; j < keyCount; j++) {
130
- const key = keys[j];
131
- const localized = localize(resourceName, key, null);
132
- if (localized)
133
- return { resourceName, key, localized };
122
+ function createTreeNodeFilterCreator(key, mapperFn) {
123
+ return (search) => {
124
+ const regex = new RegExp('.*' + search + '.*', 'i');
125
+ return function collectNodes(nodes, matches = []) {
126
+ for (const node of nodes) {
127
+ if (regex.test(mapperFn(node[key])))
128
+ matches.push(node);
129
+ if (node.children.length)
130
+ collectNodes(node.children, matches);
134
131
  }
135
- }
136
- return { resourceName: undefined, key: undefined, localized: undefined };
137
- };
138
- }
139
-
140
- function createTokenParser(format) {
141
- return (str) => {
142
- const tokens = [];
143
- const regex = format.replace(/\./g, '\\.').replace(/\{\s?([0-9a-zA-Z]+)\s?\}/g, (_, token) => {
144
- tokens.push(token);
145
- return '(.+)';
146
- });
147
- const matches = (str.match(regex) || []).slice(1);
148
- return matches.reduce((acc, v, i) => {
149
- const key = tokens[i];
150
- acc[key] = [...(acc[key] || []), v].filter(Boolean);
151
- return acc;
152
- }, {});
132
+ return matches;
133
+ };
153
134
  };
154
- }
155
- function interpolate(text, params) {
156
- return text
157
- .replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => { var _a; return (_a = params[digit]) !== null && _a !== void 0 ? _a : match; })
158
- .replace(/\s+/g, ' ');
159
135
  }
160
136
 
161
137
  function noop() {
@@ -255,6 +231,12 @@ class InternalStore {
255
231
  }
256
232
  }
257
233
 
234
+ const CORE_OPTIONS = new InjectionToken('CORE_OPTIONS');
235
+ function coreOptionsFactory(_a) {
236
+ var options = __rest(_a, []);
237
+ return Object.assign({}, options);
238
+ }
239
+
258
240
  const mapToApiUrl = (key) => (apis) => (apis[key] || apis.default).url || apis.default.url;
259
241
  class EnvironmentService {
260
242
  constructor() {
@@ -279,9 +261,9 @@ class EnvironmentService {
279
261
  this.store.set(environment);
280
262
  }
281
263
  }
282
- EnvironmentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
283
- EnvironmentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EnvironmentService, providedIn: 'root' });
284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EnvironmentService, decorators: [{
264
+ EnvironmentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
265
+ EnvironmentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EnvironmentService, providedIn: 'root' });
266
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EnvironmentService, decorators: [{
285
267
  type: Injectable,
286
268
  args: [{ providedIn: 'root' }]
287
269
  }] });
@@ -305,9 +287,9 @@ class HttpErrorReporterService {
305
287
  return this._errors$.value;
306
288
  }
307
289
  }
308
- HttpErrorReporterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpErrorReporterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
309
- HttpErrorReporterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpErrorReporterService, providedIn: 'root' });
310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpErrorReporterService, decorators: [{
290
+ HttpErrorReporterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpErrorReporterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
291
+ HttpErrorReporterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpErrorReporterService, providedIn: 'root' });
292
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpErrorReporterService, decorators: [{
311
293
  type: Injectable,
312
294
  args: [{ providedIn: 'root' }]
313
295
  }] });
@@ -350,17 +332,19 @@ class RestService {
350
332
  }, httpParams);
351
333
  }
352
334
  }
353
- RestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RestService, deps: [{ token: CORE_OPTIONS }, { token: i1.HttpClient }, { token: EnvironmentService }, { token: HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
354
- RestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RestService, providedIn: 'root' });
355
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RestService, decorators: [{
335
+ RestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RestService, deps: [{ token: CORE_OPTIONS }, { token: i1.HttpClient }, { token: EnvironmentService }, { token: HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
336
+ RestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RestService, providedIn: 'root' });
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RestService, decorators: [{
356
338
  type: Injectable,
357
339
  args: [{
358
340
  providedIn: 'root',
359
341
  }]
360
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
361
- type: Inject,
362
- args: [CORE_OPTIONS]
363
- }] }, { type: i1.HttpClient }, { type: EnvironmentService }, { type: HttpErrorReporterService }]; } });
342
+ }], ctorParameters: function () {
343
+ return [{ type: undefined, decorators: [{
344
+ type: Inject,
345
+ args: [CORE_OPTIONS]
346
+ }] }, { type: i1.HttpClient }, { type: EnvironmentService }, { type: HttpErrorReporterService }];
347
+ } });
364
348
 
365
349
  class AbpApplicationConfigurationService {
366
350
  constructor(restService) {
@@ -374,9 +358,9 @@ class AbpApplicationConfigurationService {
374
358
  }, { apiName: this.apiName });
375
359
  }
376
360
  }
377
- AbpApplicationConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApplicationConfigurationService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
378
- AbpApplicationConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApplicationConfigurationService, providedIn: 'root' });
379
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApplicationConfigurationService, decorators: [{
361
+ AbpApplicationConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApplicationConfigurationService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
362
+ AbpApplicationConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApplicationConfigurationService, providedIn: 'root' });
363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApplicationConfigurationService, decorators: [{
380
364
  type: Injectable,
381
365
  args: [{
382
366
  providedIn: 'root',
@@ -488,9 +472,9 @@ class ConfigStateService {
488
472
  }));
489
473
  }
490
474
  }
491
- ConfigStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfigStateService, deps: [{ token: AbpApplicationConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
492
- ConfigStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfigStateService, providedIn: 'root' });
493
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfigStateService, decorators: [{
475
+ ConfigStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfigStateService, deps: [{ token: AbpApplicationConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
476
+ ConfigStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfigStateService, providedIn: 'root' });
477
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfigStateService, decorators: [{
494
478
  type: Injectable,
495
479
  args: [{
496
480
  providedIn: 'root',
@@ -506,243 +490,242 @@ function splitKeys(keys) {
506
490
  return keys;
507
491
  }
508
492
 
509
- class SessionStateService {
493
+ class PermissionService {
510
494
  constructor(configState) {
511
495
  this.configState = configState;
512
- this.store = new InternalStore({});
513
- this.updateLocalStorage = () => {
514
- localStorage.setItem('abpSession', JSON.stringify(this.store.state));
515
- };
516
- this.init();
517
- this.setInitialLanguage();
518
- }
519
- init() {
520
- const session = localStorage.getItem('abpSession');
521
- if (session) {
522
- this.store.set(JSON.parse(session));
523
- }
524
- this.store.sliceUpdate(state => state).subscribe(this.updateLocalStorage);
525
496
  }
526
- setInitialLanguage() {
527
- if (this.getLanguage())
528
- return;
529
- this.configState
530
- .getDeep$('localization.currentCulture.cultureName')
531
- .pipe(filter(cultureName => !!cultureName), take(1))
532
- .subscribe(lang => {
533
- if (lang.includes(';')) {
534
- lang = lang.split(';')[0];
535
- }
536
- this.setLanguage(lang);
537
- });
497
+ getGrantedPolicy$(key) {
498
+ return this.getStream().pipe(map(grantedPolicies => this.isPolicyGranted(key, grantedPolicies)));
538
499
  }
539
- onLanguageChange$() {
540
- return this.store.sliceUpdate(state => state.language);
500
+ getGrantedPolicy(key) {
501
+ const policies = this.getSnapshot();
502
+ return this.isPolicyGranted(key, policies);
541
503
  }
542
- onTenantChange$() {
543
- return this.store.sliceUpdate(state => state.tenant);
504
+ filterItemsByPolicy(items) {
505
+ const policies = this.getSnapshot();
506
+ return items.filter(item => !item.requiredPolicy || this.isPolicyGranted(item.requiredPolicy, policies));
544
507
  }
545
- getLanguage() {
546
- return this.store.state.language;
508
+ filterItemsByPolicy$(items) {
509
+ return this.getStream().pipe(map(policies => items.filter(item => !item.requiredPolicy || this.isPolicyGranted(item.requiredPolicy, policies))));
547
510
  }
548
- getLanguage$() {
549
- return this.store.sliceState(state => state.language);
511
+ isPolicyGranted(key, grantedPolicies) {
512
+ if (!key)
513
+ return true;
514
+ const orRegexp = /\|\|/g;
515
+ const andRegexp = /&&/g;
516
+ // TODO: Allow combination of ANDs & ORs
517
+ if (orRegexp.test(key)) {
518
+ const keys = key.split('||').filter(Boolean);
519
+ if (keys.length < 2)
520
+ return false;
521
+ return keys.some(k => this.getPolicy(k.trim(), grantedPolicies));
522
+ }
523
+ else if (andRegexp.test(key)) {
524
+ const keys = key.split('&&').filter(Boolean);
525
+ if (keys.length < 2)
526
+ return false;
527
+ return keys.every(k => this.getPolicy(k.trim(), grantedPolicies));
528
+ }
529
+ return this.getPolicy(key, grantedPolicies);
550
530
  }
551
- getTenant() {
552
- return this.store.state.tenant;
531
+ getStream() {
532
+ return this.configState.getAll$().pipe(map(this.mapToPolicies));
553
533
  }
554
- getTenant$() {
555
- return this.store.sliceState(state => state.tenant);
534
+ getSnapshot() {
535
+ return this.mapToPolicies(this.configState.getAll());
556
536
  }
557
- setTenant(tenant) {
558
- if (compare(tenant, this.store.state.tenant))
559
- return;
560
- this.store.set(Object.assign(Object.assign({}, this.store.state), { tenant }));
537
+ mapToPolicies(applicationConfiguration) {
538
+ var _a;
539
+ return ((_a = applicationConfiguration === null || applicationConfiguration === void 0 ? void 0 : applicationConfiguration.auth) === null || _a === void 0 ? void 0 : _a.grantedPolicies) || {};
561
540
  }
562
- setLanguage(language) {
563
- if (language === this.store.state.language)
564
- return;
565
- this.store.patch({ language });
566
- document.documentElement.setAttribute('lang', language);
541
+ getPolicy(key, grantedPolicies) {
542
+ return grantedPolicies[key] || false;
567
543
  }
568
544
  }
569
- SessionStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, deps: [{ token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
570
- SessionStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, providedIn: 'root' });
571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SessionStateService, decorators: [{
545
+ PermissionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionService, deps: [{ token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
546
+ PermissionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionService, providedIn: 'root' });
547
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionService, decorators: [{
572
548
  type: Injectable,
573
- args: [{
574
- providedIn: 'root',
575
- }]
549
+ args: [{ providedIn: 'root' }]
576
550
  }], ctorParameters: function () { return [{ type: ConfigStateService }]; } });
577
551
 
578
- class LocalizationService {
579
- constructor(sessionState, injector, otherInstance, configState) {
580
- this.sessionState = sessionState;
581
- this.injector = injector;
582
- this.configState = configState;
583
- this.latestLang = this.sessionState.getLanguage();
584
- this._languageChange$ = new Subject();
585
- this.uiLocalizations$ = new BehaviorSubject(new Map());
586
- this.localizations$ = new BehaviorSubject(new Map());
587
- if (otherInstance)
588
- throw new Error('LocalizationService should have only one instance.');
589
- this.listenToSetLanguage();
590
- this.initLocalizationValues();
552
+ // eslint-disable-next-line @typescript-eslint/ban-types
553
+ class AbstractTreeService {
554
+ constructor() {
555
+ this._flat$ = new BehaviorSubject([]);
556
+ this._tree$ = new BehaviorSubject([]);
557
+ this._visible$ = new BehaviorSubject([]);
591
558
  }
592
- /**
593
- * Returns currently selected language
594
- */
595
- get currentLang() {
596
- return this.latestLang || this.sessionState.getLanguage();
559
+ get flat() {
560
+ return this._flat$.value;
597
561
  }
598
- get languageChange$() {
599
- return this._languageChange$.asObservable();
562
+ get flat$() {
563
+ return this._flat$.asObservable();
600
564
  }
601
- initLocalizationValues() {
602
- localizations$.subscribe(val => this.addLocalization(val));
603
- const remoteLocalizations$ = this.configState.getDeep$('localization.values');
604
- const currentLanguage$ = this.sessionState.getLanguage$();
605
- const uiLocalizations$ = combineLatest([currentLanguage$, this.uiLocalizations$]).pipe(map(([currentLang, localizations]) => localizations.get(currentLang)));
606
- combineLatest([remoteLocalizations$, uiLocalizations$])
607
- .pipe(map(([remote, local]) => {
608
- if (remote) {
609
- if (!local) {
610
- local = new Map();
611
- }
612
- Object.entries(remote).forEach(entry => {
613
- const resourceName = entry[0];
614
- const remoteTexts = entry[1];
615
- let resource = local.get(resourceName) || {};
616
- resource = Object.assign(Object.assign({}, resource), remoteTexts);
617
- local.set(resourceName, resource);
618
- });
619
- }
620
- return local;
621
- }))
622
- .subscribe(val => this.localizations$.next(val));
565
+ get tree() {
566
+ return this._tree$.value;
623
567
  }
624
- addLocalization(localizations) {
625
- if (!localizations)
626
- return;
627
- const localizationMap = this.uiLocalizations$.value;
628
- localizations.forEach(loc => {
629
- const cultureMap = localizationMap.get(loc.culture) || new Map();
630
- loc.resources.forEach(res => {
631
- let resource = cultureMap.get(res.resourceName) || {};
632
- resource = Object.assign(Object.assign({}, resource), res.texts);
633
- cultureMap.set(res.resourceName, resource);
634
- });
635
- localizationMap.set(loc.culture, cultureMap);
636
- });
637
- this.uiLocalizations$.next(localizationMap);
568
+ get tree$() {
569
+ return this._tree$.asObservable();
638
570
  }
639
- listenToSetLanguage() {
640
- this.sessionState
641
- .onLanguageChange$()
642
- .pipe(filter(lang => this.configState.getDeep('localization.currentCulture.cultureName') !== lang), switchMap(lang => this.configState.refreshAppState().pipe(mapTo(lang))), switchMap(lang => from(this.registerLocale(lang).then(() => lang))))
643
- .subscribe(lang => this._languageChange$.next(lang));
571
+ get visible() {
572
+ return this._visible$.value;
644
573
  }
645
- registerLocale(locale) {
646
- const { registerLocaleFn } = this.injector.get(CORE_OPTIONS);
647
- return registerLocaleFn(locale).then(module => {
648
- if (module === null || module === void 0 ? void 0 : module.default)
649
- registerLocaleData(module.default);
650
- this.latestLang = locale;
651
- });
574
+ get visible$() {
575
+ return this._visible$.asObservable();
652
576
  }
653
- /**
654
- * Returns an observable localized text with the given interpolation parameters in current language.
655
- * @param key Localizaton key to replace with localized text
656
- * @param interpolateParams Values to interpolate
657
- */
658
- get(key, ...interpolateParams) {
659
- return this.configState
660
- .getAll$()
661
- .pipe(map(state => this.getLocalization(state, key, ...interpolateParams)));
577
+ createTree(items) {
578
+ return createTreeFromList(items, item => item[this.id], item => item[this.parentId], item => BaseTreeNode.create(item));
662
579
  }
663
- getResource(resourceName) {
664
- return this.localizations$.value.get(resourceName);
580
+ filterWith(setOrMap) {
581
+ return this._flat$.value.filter(item => !setOrMap.has(item[this.id]));
665
582
  }
666
- getResource$(resourceName) {
667
- return this.localizations$.pipe(map(res => res.get(resourceName)));
583
+ findItemsToRemove(set) {
584
+ return this._flat$.value.reduce((acc, item) => {
585
+ if (!acc.has(item[this.parentId]))
586
+ return acc;
587
+ const childSet = new Set([item[this.id]]);
588
+ const children = this.findItemsToRemove(childSet);
589
+ return new Set([...acc, ...children]);
590
+ }, set);
668
591
  }
669
- /**
670
- * Returns localized text with the given interpolation parameters in current language.
671
- * @param key Localization key to replace with localized text
672
- * @param interpolateParams Values to intepolate.
673
- */
674
- instant(key, ...interpolateParams) {
675
- return this.getLocalization(this.configState.getAll(), key, ...interpolateParams);
592
+ publish(flatItems, visibleItems) {
593
+ this._flat$.next(flatItems);
594
+ this._tree$.next(this.createTree(flatItems));
595
+ this._visible$.next(this.createTree(visibleItems));
596
+ return flatItems;
676
597
  }
677
- localize(resourceName, key, defaultValue) {
678
- return this.configState.getOne$('localization').pipe(map(createLocalizer), map(localize => localize(resourceName, key, defaultValue)));
598
+ add(items) {
599
+ const map = new Map();
600
+ items.forEach(item => map.set(item[this.id], item));
601
+ const flatItems = this.filterWith(map);
602
+ map.forEach(pushValueTo(flatItems));
603
+ flatItems.sort(this.sort);
604
+ const visibleItems = flatItems.filter(item => !this.hide(item));
605
+ return this.publish(flatItems, visibleItems);
679
606
  }
680
- localizeSync(resourceName, key, defaultValue) {
681
- const localization = this.configState.getOne('localization');
682
- return createLocalizer(localization)(resourceName, key, defaultValue);
607
+ find(predicate, tree = this.tree) {
608
+ return tree.reduce((acc, node) => (acc ? acc : predicate(node) ? node : this.find(predicate, node.children)), null);
683
609
  }
684
- localizeWithFallback(resourceNames, keys, defaultValue) {
685
- return this.configState.getOne$('localization').pipe(map(createLocalizerWithFallback), map(localizeWithFallback => localizeWithFallback(resourceNames, keys, defaultValue)));
610
+ patch(identifier, props) {
611
+ const flatItems = this._flat$.value;
612
+ const index = flatItems.findIndex(item => item[this.id] === identifier);
613
+ if (index < 0)
614
+ return false;
615
+ flatItems[index] = Object.assign(Object.assign({}, flatItems[index]), props);
616
+ flatItems.sort(this.sort);
617
+ const visibleItems = flatItems.filter(item => !this.hide(item));
618
+ return this.publish(flatItems, visibleItems);
686
619
  }
687
- localizeWithFallbackSync(resourceNames, keys, defaultValue) {
688
- const localization = this.configState.getOne('localization');
689
- return createLocalizerWithFallback(localization)(resourceNames, keys, defaultValue);
620
+ refresh() {
621
+ return this.add([]);
690
622
  }
691
- getLocalization(state, key, ...interpolateParams) {
692
- if (!key)
693
- key = '';
694
- let defaultValue;
695
- if (typeof key !== 'string') {
696
- defaultValue = key.defaultValue;
697
- key = key.key;
698
- }
699
- const keys = key.split('::');
700
- const warn = (message) => {
701
- if (isDevMode)
702
- console.warn(message);
623
+ remove(identifiers) {
624
+ const set = new Set();
625
+ identifiers.forEach(id => set.add(id));
626
+ const setToRemove = this.findItemsToRemove(set);
627
+ const flatItems = this.filterWith(setToRemove);
628
+ const visibleItems = flatItems.filter(item => !this.hide(item));
629
+ return this.publish(flatItems, visibleItems);
630
+ }
631
+ search(params, tree = this.tree) {
632
+ const searchKeys = Object.keys(params);
633
+ return tree.reduce((acc, node) => acc
634
+ ? acc
635
+ : searchKeys.every(key => node[key] === params[key])
636
+ ? node
637
+ : this.search(params, node.children), null);
638
+ }
639
+ }
640
+ class AbstractNavTreeService extends AbstractTreeService {
641
+ constructor(injector) {
642
+ super();
643
+ this.injector = injector;
644
+ this.id = 'name';
645
+ this.parentId = 'parentName';
646
+ this.hide = (item) => item.invisible || !this.isGranted(item);
647
+ this.sort = (a, b) => {
648
+ if (!Number.isInteger(a.order))
649
+ return 1;
650
+ if (!Number.isInteger(b.order))
651
+ return -1;
652
+ return a.order - b.order;
703
653
  };
704
- if (keys.length < 2) {
705
- warn('The localization source separator (::) not found.');
706
- return defaultValue || key;
707
- }
708
- if (!state.localization)
709
- return defaultValue || keys[1];
710
- const sourceName = keys[0] || state.localization.defaultResourceName;
711
- const sourceKey = keys[1];
712
- if (sourceName === '_') {
713
- return defaultValue || sourceKey;
714
- }
715
- if (!sourceName) {
716
- warn('Localization source name is not specified and the defaultResourceName was not defined!');
717
- return defaultValue || sourceKey;
718
- }
719
- const source = this.localizations$.value.get(sourceName);
720
- if (!source) {
721
- warn('Could not find localization source: ' + sourceName);
722
- return defaultValue || sourceKey;
723
- }
724
- let localization = source[sourceKey];
725
- if (typeof localization === 'undefined') {
726
- return defaultValue || sourceKey;
727
- }
728
- interpolateParams = interpolateParams.filter(params => params != null);
729
- if (localization)
730
- localization = interpolate(localization, interpolateParams);
731
- if (typeof localization !== 'string')
732
- localization = '';
733
- return localization || defaultValue || key;
654
+ const configState = this.injector.get(ConfigStateService);
655
+ this.subscription = configState
656
+ .createOnUpdateStream(state => state)
657
+ .subscribe(() => this.refresh());
658
+ this.permissionService = injector.get(PermissionService);
659
+ }
660
+ isGranted({ requiredPolicy }) {
661
+ return this.permissionService.getGrantedPolicy(requiredPolicy);
734
662
  }
663
+ hasChildren(identifier) {
664
+ var _a;
665
+ const node = this.find(item => item[this.id] === identifier);
666
+ return Boolean((_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a.length);
667
+ }
668
+ hasInvisibleChild(identifier) {
669
+ var _a;
670
+ const node = this.find(item => item[this.id] === identifier);
671
+ return (_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a.some(child => child.invisible);
672
+ }
673
+ /* istanbul ignore next */
674
+ ngOnDestroy() {
675
+ this.subscription.unsubscribe();
676
+ }
677
+ }
678
+ AbstractNavTreeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbstractNavTreeService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
679
+ AbstractNavTreeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbstractNavTreeService });
680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbstractNavTreeService, decorators: [{
681
+ type: Injectable
682
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
683
+ class RoutesService extends AbstractNavTreeService {
735
684
  }
736
- LocalizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationService, deps: [{ token: SessionStateService }, { token: i0.Injector }, { token: LocalizationService, optional: true, skipSelf: true }, { token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
737
- LocalizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationService, providedIn: 'root' });
738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationService, decorators: [{
685
+ RoutesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
686
+ RoutesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesService, providedIn: 'root' });
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesService, decorators: [{
739
688
  type: Injectable,
740
689
  args: [{ providedIn: 'root' }]
741
- }], ctorParameters: function () { return [{ type: SessionStateService }, { type: i0.Injector }, { type: LocalizationService, decorators: [{
742
- type: Optional
743
- }, {
744
- type: SkipSelf
745
- }] }, { type: ConfigStateService }]; } });
690
+ }] });
691
+
692
+ class SubscriptionService {
693
+ constructor() {
694
+ this.subscription = new Subscription();
695
+ }
696
+ get isClosed() {
697
+ return this.subscription.closed;
698
+ }
699
+ addOne(source$, nextOrObserver, error) {
700
+ const subscription = source$.subscribe(nextOrObserver, error);
701
+ this.subscription.add(subscription);
702
+ return subscription;
703
+ }
704
+ closeAll() {
705
+ this.subscription.unsubscribe();
706
+ }
707
+ closeOne(subscription) {
708
+ this.removeOne(subscription);
709
+ subscription.unsubscribe();
710
+ }
711
+ ngOnDestroy() {
712
+ this.subscription.unsubscribe();
713
+ }
714
+ removeOne(subscription) {
715
+ if (!subscription)
716
+ return;
717
+ this.subscription.remove(subscription);
718
+ }
719
+ reset() {
720
+ this.subscription.unsubscribe();
721
+ this.subscription = new Subscription();
722
+ }
723
+ }
724
+ SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
725
+ SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SubscriptionService });
726
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SubscriptionService, decorators: [{
727
+ type: Injectable
728
+ }] });
746
729
 
747
730
  function findRoute(routesService, path) {
748
731
  const node = routesService.find(route => route.path === path);
@@ -768,378 +751,403 @@ function reloadRoute(router, ngZone) {
768
751
  }));
769
752
  }
770
753
 
771
- class ReplaceableComponentsService {
772
- constructor(ngZone, router) {
773
- this.ngZone = ngZone;
774
- this.router = router;
775
- this.store = new InternalStore([]);
776
- }
777
- get replaceableComponents$() {
778
- return this.store.sliceState(state => state);
779
- }
780
- get replaceableComponents() {
781
- return this.store.state;
782
- }
783
- get onUpdate$() {
784
- return this.store.sliceUpdate(state => state);
785
- }
786
- add(replaceableComponent, reload) {
787
- const replaceableComponents = [...this.store.state];
788
- const index = replaceableComponents.findIndex(component => component.key === replaceableComponent.key);
789
- if (index > -1) {
790
- replaceableComponents[index] = replaceableComponent;
791
- }
792
- else {
793
- replaceableComponents.push(replaceableComponent);
794
- }
795
- this.store.set(replaceableComponents);
796
- if (reload)
797
- reloadRoute(this.router, this.ngZone);
798
- }
799
- get(replaceableComponentKey) {
800
- return this.replaceableComponents.find(component => component.key === replaceableComponentKey);
801
- }
802
- get$(replaceableComponentKey) {
803
- return this.replaceableComponents$.pipe(map(components => components.find(component => component.key === replaceableComponentKey)));
754
+ const LOCALIZATIONS = new InjectionToken('LOCALIZATIONS');
755
+ function localizationContributor(localizations) {
756
+ if (localizations) {
757
+ localizations$.next([...localizations$.value, ...localizations]);
804
758
  }
805
759
  }
806
- ReplaceableComponentsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableComponentsService, deps: [{ token: i0.NgZone }, { token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
807
- ReplaceableComponentsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableComponentsService, providedIn: 'root' });
808
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableComponentsService, decorators: [{
809
- type: Injectable,
810
- args: [{ providedIn: 'root' }]
811
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1$1.Router }]; } });
760
+ const localizations$ = new BehaviorSubject([]);
812
761
 
813
- const NavigationEvent = {
814
- Cancel: NavigationCancel,
815
- End: NavigationEnd,
816
- Error: NavigationError,
817
- Start: NavigationStart,
818
- };
819
- class RouterEvents {
820
- constructor(router) {
821
- this.router = router;
822
- }
823
- getEvents(...eventTypes) {
824
- const filterRouterEvents = (event) => eventTypes.some(type => event instanceof type);
825
- return this.router.events.pipe(filter(filterRouterEvents));
826
- }
827
- getNavigationEvents(...navigationEventKeys) {
828
- const filterNavigationEvents = (event) => navigationEventKeys.some(key => event instanceof NavigationEvent[key]);
829
- return this.router.events.pipe(filter(filterNavigationEvents));
830
- }
831
- getAllEvents() {
832
- return this.router.events;
833
- }
834
- getAllNavigationEvents() {
835
- const keys = Object.keys(NavigationEvent);
836
- return this.getNavigationEvents(...keys);
837
- }
762
+ // This will not be necessary when only Angukar 9.1+ is supported
763
+ function getLocaleDirection(locale) {
764
+ return /^(ar(-[A-Z]{2})?|ckb(-IR)?|fa(-AF)?|he|ks|lrc(-IQ)?|mzn|pa-Arab|ps(-PK)?|sd|ug|ur(-IN)?|uz-Arab|yi)$/.test(locale)
765
+ ? 'rtl'
766
+ : 'ltr';
838
767
  }
839
- RouterEvents.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterEvents, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
840
- RouterEvents.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterEvents, providedIn: 'root' });
841
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterEvents, decorators: [{
842
- type: Injectable,
843
- args: [{ providedIn: 'root' }]
844
- }], ctorParameters: function () { return [{ type: i1$1.Router }]; } });
845
-
846
- function pushValueTo(array) {
847
- return (element) => {
848
- array.push(element);
849
- return array;
768
+ function createLocalizer(localization) {
769
+ return (resourceName, key, defaultValue) => {
770
+ var _a;
771
+ if (resourceName === '_')
772
+ return key;
773
+ const resource = (_a = localization === null || localization === void 0 ? void 0 : localization.values) === null || _a === void 0 ? void 0 : _a[resourceName];
774
+ if (!resource)
775
+ return defaultValue;
776
+ return resource[key] || defaultValue;
850
777
  };
851
- }
852
-
853
- /* eslint-disable @typescript-eslint/ban-types */
854
- class BaseTreeNode {
855
- constructor(props) {
856
- this.children = [];
857
- this.isLeaf = true;
858
- Object.assign(this, props);
859
- }
860
- static create(props) {
861
- return new BaseTreeNode(props);
862
- }
863
778
  }
864
- function createTreeFromList(list, keySelector, parentKeySelector, valueMapper) {
865
- const map = createMapFromList(list, keySelector, valueMapper);
866
- const tree = [];
867
- list.forEach(row => {
868
- const id = keySelector(row);
869
- const parentId = parentKeySelector(row);
870
- const node = map.get(id);
871
- if (!node)
872
- return;
873
- if (parentId) {
874
- const parent = map.get(parentId);
875
- if (!parent)
876
- return;
877
- parent.children.push(node);
878
- parent.isLeaf = false;
879
- node.parent = parent;
880
- }
881
- else {
882
- tree.push(node);
883
- }
884
- });
885
- return tree;
779
+ function createLocalizerWithFallback(localization) {
780
+ const findLocalization = createLocalizationFinder(localization);
781
+ return (resourceNames, keys, defaultValue) => {
782
+ const { localized } = findLocalization(resourceNames, keys);
783
+ return localized || defaultValue;
784
+ };
886
785
  }
887
- function createMapFromList(list, keySelector, valueMapper) {
888
- const map = new Map();
889
- list.forEach(row => map.set(keySelector(row), valueMapper(row)));
890
- return map;
786
+ function createLocalizationPipeKeyGenerator(localization) {
787
+ const findLocalization = createLocalizationFinder(localization);
788
+ return (resourceNames, keys, defaultKey) => {
789
+ const { resourceName, key } = findLocalization(resourceNames, keys);
790
+ return !resourceName ? defaultKey : resourceName === '_' ? key : `${resourceName}::${key}`;
791
+ };
891
792
  }
892
- function createTreeNodeFilterCreator(key, mapperFn) {
893
- return (search) => {
894
- const regex = new RegExp('.*' + search + '.*', 'i');
895
- return function collectNodes(nodes, matches = []) {
896
- for (const node of nodes) {
897
- if (regex.test(mapperFn(node[key])))
898
- matches.push(node);
899
- if (node.children.length)
900
- collectNodes(node.children, matches);
793
+ function createLocalizationFinder(localization) {
794
+ const localize = createLocalizer(localization);
795
+ return (resourceNames, keys) => {
796
+ resourceNames = resourceNames.concat(localization.defaultResourceName || '').filter(Boolean);
797
+ const resourceCount = resourceNames.length;
798
+ const keyCount = keys.length;
799
+ for (let i = 0; i < resourceCount; i++) {
800
+ const resourceName = resourceNames[i];
801
+ for (let j = 0; j < keyCount; j++) {
802
+ const key = keys[j];
803
+ const localized = localize(resourceName, key, null);
804
+ if (localized)
805
+ return { resourceName, key, localized };
901
806
  }
902
- return matches;
903
- };
807
+ }
808
+ return { resourceName: undefined, key: undefined, localized: undefined };
904
809
  };
905
810
  }
906
811
 
907
- class PermissionService {
812
+ function createTokenParser(format) {
813
+ return (str) => {
814
+ const tokens = [];
815
+ const regex = format.replace(/\./g, '\\.').replace(/\{\s?([0-9a-zA-Z]+)\s?\}/g, (_, token) => {
816
+ tokens.push(token);
817
+ return '(.+)';
818
+ });
819
+ const matches = (str.match(regex) || []).slice(1);
820
+ return matches.reduce((acc, v, i) => {
821
+ const key = tokens[i];
822
+ acc[key] = [...(acc[key] || []), v].filter(Boolean);
823
+ return acc;
824
+ }, {});
825
+ };
826
+ }
827
+ function interpolate(text, params) {
828
+ return text
829
+ .replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => { var _a; return (_a = params[digit]) !== null && _a !== void 0 ? _a : match; })
830
+ .replace(/\s+/g, ' ');
831
+ }
832
+ function escapeHtmlChars(value) {
833
+ return (value &&
834
+ value.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;'));
835
+ }
836
+
837
+ class SessionStateService {
908
838
  constructor(configState) {
909
839
  this.configState = configState;
840
+ this.store = new InternalStore({});
841
+ this.updateLocalStorage = () => {
842
+ localStorage.setItem('abpSession', JSON.stringify(this.store.state));
843
+ };
844
+ this.init();
845
+ this.setInitialLanguage();
910
846
  }
911
- getGrantedPolicy$(key) {
912
- return this.getStream().pipe(map(grantedPolicies => this.isPolicyGranted(key, grantedPolicies)));
847
+ init() {
848
+ const session = localStorage.getItem('abpSession');
849
+ if (session) {
850
+ this.store.set(JSON.parse(session));
851
+ }
852
+ this.store.sliceUpdate(state => state).subscribe(this.updateLocalStorage);
913
853
  }
914
- getGrantedPolicy(key) {
915
- const policies = this.getSnapshot();
916
- return this.isPolicyGranted(key, policies);
854
+ setInitialLanguage() {
855
+ if (this.getLanguage())
856
+ return;
857
+ this.configState
858
+ .getDeep$('localization.currentCulture.cultureName')
859
+ .pipe(filter(cultureName => !!cultureName), take(1))
860
+ .subscribe(lang => {
861
+ if (lang.includes(';')) {
862
+ lang = lang.split(';')[0];
863
+ }
864
+ this.setLanguage(lang);
865
+ });
917
866
  }
918
- filterItemsByPolicy(items) {
919
- const policies = this.getSnapshot();
920
- return items.filter(item => !item.requiredPolicy || this.isPolicyGranted(item.requiredPolicy, policies));
867
+ onLanguageChange$() {
868
+ return this.store.sliceUpdate(state => state.language);
921
869
  }
922
- filterItemsByPolicy$(items) {
923
- return this.getStream().pipe(map(policies => items.filter(item => !item.requiredPolicy || this.isPolicyGranted(item.requiredPolicy, policies))));
870
+ onTenantChange$() {
871
+ return this.store.sliceUpdate(state => state.tenant);
924
872
  }
925
- isPolicyGranted(key, grantedPolicies) {
926
- if (!key)
927
- return true;
928
- const orRegexp = /\|\|/g;
929
- const andRegexp = /&&/g;
930
- // TODO: Allow combination of ANDs & ORs
931
- if (orRegexp.test(key)) {
932
- const keys = key.split('||').filter(Boolean);
933
- if (keys.length < 2)
934
- return false;
935
- return keys.some(k => this.getPolicy(k.trim(), grantedPolicies));
936
- }
937
- else if (andRegexp.test(key)) {
938
- const keys = key.split('&&').filter(Boolean);
939
- if (keys.length < 2)
940
- return false;
941
- return keys.every(k => this.getPolicy(k.trim(), grantedPolicies));
942
- }
943
- return this.getPolicy(key, grantedPolicies);
873
+ getLanguage() {
874
+ return this.store.state.language;
944
875
  }
945
- getStream() {
946
- return this.configState.getAll$().pipe(map(this.mapToPolicies));
876
+ getLanguage$() {
877
+ return this.store.sliceState(state => state.language);
947
878
  }
948
- getSnapshot() {
949
- return this.mapToPolicies(this.configState.getAll());
879
+ getTenant() {
880
+ return this.store.state.tenant;
950
881
  }
951
- mapToPolicies(applicationConfiguration) {
952
- var _a;
953
- return ((_a = applicationConfiguration === null || applicationConfiguration === void 0 ? void 0 : applicationConfiguration.auth) === null || _a === void 0 ? void 0 : _a.grantedPolicies) || {};
882
+ getTenant$() {
883
+ return this.store.sliceState(state => state.tenant);
954
884
  }
955
- getPolicy(key, grantedPolicies) {
956
- return grantedPolicies[key] || false;
885
+ setTenant(tenant) {
886
+ if (compare(tenant, this.store.state.tenant))
887
+ return;
888
+ this.store.set(Object.assign(Object.assign({}, this.store.state), { tenant }));
889
+ }
890
+ setLanguage(language) {
891
+ if (language === this.store.state.language)
892
+ return;
893
+ this.store.patch({ language });
894
+ document.documentElement.setAttribute('lang', language);
957
895
  }
958
896
  }
959
- PermissionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionService, deps: [{ token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
960
- PermissionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionService, providedIn: 'root' });
961
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionService, decorators: [{
897
+ SessionStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SessionStateService, deps: [{ token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
898
+ SessionStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SessionStateService, providedIn: 'root' });
899
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SessionStateService, decorators: [{
962
900
  type: Injectable,
963
- args: [{ providedIn: 'root' }]
901
+ args: [{
902
+ providedIn: 'root',
903
+ }]
964
904
  }], ctorParameters: function () { return [{ type: ConfigStateService }]; } });
965
905
 
966
- // eslint-disable-next-line @typescript-eslint/ban-types
967
- class AbstractTreeService {
968
- constructor() {
969
- this._flat$ = new BehaviorSubject([]);
970
- this._tree$ = new BehaviorSubject([]);
971
- this._visible$ = new BehaviorSubject([]);
972
- }
973
- get flat() {
974
- return this._flat$.value;
975
- }
976
- get flat$() {
977
- return this._flat$.asObservable();
978
- }
979
- get tree() {
980
- return this._tree$.value;
981
- }
982
- get tree$() {
983
- return this._tree$.asObservable();
984
- }
985
- get visible() {
986
- return this._visible$.value;
987
- }
988
- get visible$() {
989
- return this._visible$.asObservable();
906
+ class LocalizationService {
907
+ constructor(sessionState, injector, otherInstance, configState) {
908
+ this.sessionState = sessionState;
909
+ this.injector = injector;
910
+ this.configState = configState;
911
+ this.latestLang = this.sessionState.getLanguage();
912
+ this._languageChange$ = new Subject();
913
+ this.uiLocalizations$ = new BehaviorSubject(new Map());
914
+ this.localizations$ = new BehaviorSubject(new Map());
915
+ if (otherInstance)
916
+ throw new Error('LocalizationService should have only one instance.');
917
+ this.listenToSetLanguage();
918
+ this.initLocalizationValues();
990
919
  }
991
- createTree(items) {
992
- return createTreeFromList(items, item => item[this.id], item => item[this.parentId], item => BaseTreeNode.create(item));
920
+ /**
921
+ * Returns currently selected language
922
+ */
923
+ get currentLang() {
924
+ return this.latestLang || this.sessionState.getLanguage();
993
925
  }
994
- filterWith(setOrMap) {
995
- return this._flat$.value.filter(item => !setOrMap.has(item[this.id]));
926
+ get languageChange$() {
927
+ return this._languageChange$.asObservable();
996
928
  }
997
- findItemsToRemove(set) {
998
- return this._flat$.value.reduce((acc, item) => {
999
- if (!acc.has(item[this.parentId]))
1000
- return acc;
1001
- const childSet = new Set([item[this.id]]);
1002
- const children = this.findItemsToRemove(childSet);
1003
- return new Set([...acc, ...children]);
1004
- }, set);
929
+ initLocalizationValues() {
930
+ localizations$.subscribe(val => this.addLocalization(val));
931
+ const remoteLocalizations$ = this.configState.getDeep$('localization.values');
932
+ const currentLanguage$ = this.sessionState.getLanguage$();
933
+ const uiLocalizations$ = combineLatest([currentLanguage$, this.uiLocalizations$]).pipe(map(([currentLang, localizations]) => localizations.get(currentLang)));
934
+ combineLatest([remoteLocalizations$, uiLocalizations$])
935
+ .pipe(map(([remote, local]) => {
936
+ if (remote) {
937
+ if (!local) {
938
+ local = new Map();
939
+ }
940
+ Object.entries(remote).forEach(entry => {
941
+ const resourceName = entry[0];
942
+ const remoteTexts = entry[1];
943
+ let resource = local.get(resourceName) || {};
944
+ resource = Object.assign(Object.assign({}, resource), remoteTexts);
945
+ local.set(resourceName, resource);
946
+ });
947
+ }
948
+ return local;
949
+ }))
950
+ .subscribe(val => this.localizations$.next(val));
1005
951
  }
1006
- publish(flatItems, visibleItems) {
1007
- this._flat$.next(flatItems);
1008
- this._tree$.next(this.createTree(flatItems));
1009
- this._visible$.next(this.createTree(visibleItems));
1010
- return flatItems;
952
+ addLocalization(localizations) {
953
+ if (!localizations)
954
+ return;
955
+ const localizationMap = this.uiLocalizations$.value;
956
+ localizations.forEach(loc => {
957
+ const cultureMap = localizationMap.get(loc.culture) || new Map();
958
+ loc.resources.forEach(res => {
959
+ let resource = cultureMap.get(res.resourceName) || {};
960
+ resource = Object.assign(Object.assign({}, resource), res.texts);
961
+ cultureMap.set(res.resourceName, resource);
962
+ });
963
+ localizationMap.set(loc.culture, cultureMap);
964
+ });
965
+ this.uiLocalizations$.next(localizationMap);
1011
966
  }
1012
- add(items) {
1013
- const map = new Map();
1014
- items.forEach(item => map.set(item[this.id], item));
1015
- const flatItems = this.filterWith(map);
1016
- map.forEach(pushValueTo(flatItems));
1017
- flatItems.sort(this.sort);
1018
- const visibleItems = flatItems.filter(item => !this.hide(item));
1019
- return this.publish(flatItems, visibleItems);
967
+ listenToSetLanguage() {
968
+ this.sessionState
969
+ .onLanguageChange$()
970
+ .pipe(filter(lang => this.configState.getDeep('localization.currentCulture.cultureName') !== lang), switchMap(lang => this.configState.refreshAppState().pipe(mapTo(lang))), switchMap(lang => from(this.registerLocale(lang).then(() => lang))))
971
+ .subscribe(lang => this._languageChange$.next(lang));
1020
972
  }
1021
- find(predicate, tree = this.tree) {
1022
- return tree.reduce((acc, node) => (acc ? acc : predicate(node) ? node : this.find(predicate, node.children)), null);
973
+ registerLocale(locale) {
974
+ const { registerLocaleFn } = this.injector.get(CORE_OPTIONS);
975
+ return registerLocaleFn(locale).then(module => {
976
+ if (module === null || module === void 0 ? void 0 : module.default)
977
+ registerLocaleData(module.default);
978
+ this.latestLang = locale;
979
+ });
1023
980
  }
1024
- patch(identifier, props) {
1025
- const flatItems = this._flat$.value;
1026
- const index = flatItems.findIndex(item => item[this.id] === identifier);
1027
- if (index < 0)
1028
- return false;
1029
- flatItems[index] = Object.assign(Object.assign({}, flatItems[index]), props);
1030
- flatItems.sort(this.sort);
1031
- const visibleItems = flatItems.filter(item => !this.hide(item));
1032
- return this.publish(flatItems, visibleItems);
981
+ /**
982
+ * Returns an observable localized text with the given interpolation parameters in current language.
983
+ * @param key Localizaton key to replace with localized text
984
+ * @param interpolateParams Values to interpolate
985
+ */
986
+ get(key, ...interpolateParams) {
987
+ return this.configState
988
+ .getAll$()
989
+ .pipe(map(state => this.getLocalization(state, key, ...interpolateParams)));
1033
990
  }
1034
- refresh() {
1035
- return this.add([]);
991
+ getResource(resourceName) {
992
+ return this.localizations$.value.get(resourceName);
1036
993
  }
1037
- remove(identifiers) {
1038
- const set = new Set();
1039
- identifiers.forEach(id => set.add(id));
1040
- const setToRemove = this.findItemsToRemove(set);
1041
- const flatItems = this.filterWith(setToRemove);
1042
- const visibleItems = flatItems.filter(item => !this.hide(item));
1043
- return this.publish(flatItems, visibleItems);
994
+ getResource$(resourceName) {
995
+ return this.localizations$.pipe(map(res => res.get(resourceName)));
1044
996
  }
1045
- search(params, tree = this.tree) {
1046
- const searchKeys = Object.keys(params);
1047
- return tree.reduce((acc, node) => acc
1048
- ? acc
1049
- : searchKeys.every(key => node[key] === params[key])
1050
- ? node
1051
- : this.search(params, node.children), null);
997
+ /**
998
+ * Returns localized text with the given interpolation parameters in current language.
999
+ * @param key Localization key to replace with localized text
1000
+ * @param interpolateParams Values to intepolate.
1001
+ */
1002
+ instant(key, ...interpolateParams) {
1003
+ return this.getLocalization(this.configState.getAll(), key, ...interpolateParams);
1052
1004
  }
1053
- }
1054
- class AbstractNavTreeService extends AbstractTreeService {
1055
- constructor(injector) {
1056
- super();
1057
- this.injector = injector;
1058
- this.id = 'name';
1059
- this.parentId = 'parentName';
1060
- this.hide = (item) => item.invisible || !this.isGranted(item);
1061
- this.sort = (a, b) => {
1062
- if (!Number.isInteger(a.order))
1063
- return 1;
1064
- if (!Number.isInteger(b.order))
1065
- return -1;
1066
- return a.order - b.order;
1067
- };
1068
- const configState = this.injector.get(ConfigStateService);
1069
- this.subscription = configState
1070
- .createOnUpdateStream(state => state)
1071
- .subscribe(() => this.refresh());
1072
- this.permissionService = injector.get(PermissionService);
1005
+ localize(resourceName, key, defaultValue) {
1006
+ return this.configState.getOne$('localization').pipe(map(createLocalizer), map(localize => localize(resourceName, key, defaultValue)));
1073
1007
  }
1074
- isGranted({ requiredPolicy }) {
1075
- return this.permissionService.getGrantedPolicy(requiredPolicy);
1008
+ localizeSync(resourceName, key, defaultValue) {
1009
+ const localization = this.configState.getOne('localization');
1010
+ return createLocalizer(localization)(resourceName, key, defaultValue);
1076
1011
  }
1077
- hasChildren(identifier) {
1078
- var _a;
1079
- const node = this.find(item => item[this.id] === identifier);
1080
- return Boolean((_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a.length);
1012
+ localizeWithFallback(resourceNames, keys, defaultValue) {
1013
+ return this.configState.getOne$('localization').pipe(map(createLocalizerWithFallback), map(localizeWithFallback => localizeWithFallback(resourceNames, keys, defaultValue)));
1081
1014
  }
1082
- hasInvisibleChild(identifier) {
1083
- var _a;
1084
- const node = this.find(item => item[this.id] === identifier);
1085
- return (_a = node === null || node === void 0 ? void 0 : node.children) === null || _a === void 0 ? void 0 : _a.some(child => child.invisible);
1015
+ localizeWithFallbackSync(resourceNames, keys, defaultValue) {
1016
+ const localization = this.configState.getOne('localization');
1017
+ return createLocalizerWithFallback(localization)(resourceNames, keys, defaultValue);
1086
1018
  }
1087
- /* istanbul ignore next */
1088
- ngOnDestroy() {
1089
- this.subscription.unsubscribe();
1019
+ getLocalization(state, key, ...interpolateParams) {
1020
+ if (!key)
1021
+ key = '';
1022
+ let defaultValue;
1023
+ if (typeof key !== 'string') {
1024
+ defaultValue = key.defaultValue;
1025
+ key = key.key;
1026
+ }
1027
+ const keys = key.split('::');
1028
+ const warn = (message) => {
1029
+ if (isDevMode)
1030
+ console.warn(message);
1031
+ };
1032
+ if (keys.length < 2) {
1033
+ warn('The localization source separator (::) not found.');
1034
+ return defaultValue || key;
1035
+ }
1036
+ if (!state.localization)
1037
+ return defaultValue || keys[1];
1038
+ const sourceName = keys[0] || state.localization.defaultResourceName;
1039
+ const sourceKey = keys[1];
1040
+ if (sourceName === '_') {
1041
+ return defaultValue || sourceKey;
1042
+ }
1043
+ if (!sourceName) {
1044
+ warn('Localization source name is not specified and the defaultResourceName was not defined!');
1045
+ return defaultValue || sourceKey;
1046
+ }
1047
+ const source = this.localizations$.value.get(sourceName);
1048
+ if (!source) {
1049
+ warn('Could not find localization source: ' + sourceName);
1050
+ return defaultValue || sourceKey;
1051
+ }
1052
+ let localization = source[sourceKey];
1053
+ if (typeof localization === 'undefined') {
1054
+ return defaultValue || sourceKey;
1055
+ }
1056
+ interpolateParams = interpolateParams.filter(params => params != null);
1057
+ if (localization)
1058
+ localization = interpolate(localization, interpolateParams);
1059
+ if (typeof localization !== 'string')
1060
+ localization = '';
1061
+ return localization || defaultValue || key;
1090
1062
  }
1091
1063
  }
1092
- AbstractNavTreeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbstractNavTreeService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1093
- AbstractNavTreeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbstractNavTreeService });
1094
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbstractNavTreeService, decorators: [{
1095
- type: Injectable
1096
- }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1097
- class RoutesService extends AbstractNavTreeService {
1098
- }
1099
- RoutesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
1100
- RoutesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesService, providedIn: 'root' });
1101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesService, decorators: [{
1064
+ LocalizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationService, deps: [{ token: SessionStateService }, { token: i0.Injector }, { token: LocalizationService, optional: true, skipSelf: true }, { token: ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable });
1065
+ LocalizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationService, providedIn: 'root' });
1066
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationService, decorators: [{
1102
1067
  type: Injectable,
1103
1068
  args: [{ providedIn: 'root' }]
1104
- }] });
1069
+ }], ctorParameters: function () {
1070
+ return [{ type: SessionStateService }, { type: i0.Injector }, { type: LocalizationService, decorators: [{
1071
+ type: Optional
1072
+ }, {
1073
+ type: SkipSelf
1074
+ }] }, { type: ConfigStateService }];
1075
+ } });
1105
1076
 
1106
- class SubscriptionService {
1107
- constructor() {
1108
- this.subscription = new Subscription();
1077
+ class ReplaceableComponentsService {
1078
+ constructor(ngZone, router) {
1079
+ this.ngZone = ngZone;
1080
+ this.router = router;
1081
+ this.store = new InternalStore([]);
1109
1082
  }
1110
- get isClosed() {
1111
- return this.subscription.closed;
1083
+ get replaceableComponents$() {
1084
+ return this.store.sliceState(state => state);
1112
1085
  }
1113
- addOne(source$, nextOrObserver, error) {
1114
- const subscription = source$.subscribe(nextOrObserver, error);
1115
- this.subscription.add(subscription);
1116
- return subscription;
1086
+ get replaceableComponents() {
1087
+ return this.store.state;
1117
1088
  }
1118
- closeAll() {
1119
- this.subscription.unsubscribe();
1089
+ get onUpdate$() {
1090
+ return this.store.sliceUpdate(state => state);
1120
1091
  }
1121
- closeOne(subscription) {
1122
- this.removeOne(subscription);
1123
- subscription.unsubscribe();
1092
+ add(replaceableComponent, reload) {
1093
+ const replaceableComponents = [...this.store.state];
1094
+ const index = replaceableComponents.findIndex(component => component.key === replaceableComponent.key);
1095
+ if (index > -1) {
1096
+ replaceableComponents[index] = replaceableComponent;
1097
+ }
1098
+ else {
1099
+ replaceableComponents.push(replaceableComponent);
1100
+ }
1101
+ this.store.set(replaceableComponents);
1102
+ if (reload)
1103
+ reloadRoute(this.router, this.ngZone);
1124
1104
  }
1125
- ngOnDestroy() {
1126
- this.subscription.unsubscribe();
1105
+ get(replaceableComponentKey) {
1106
+ return this.replaceableComponents.find(component => component.key === replaceableComponentKey);
1127
1107
  }
1128
- removeOne(subscription) {
1129
- if (!subscription)
1130
- return;
1131
- this.subscription.remove(subscription);
1108
+ get$(replaceableComponentKey) {
1109
+ return this.replaceableComponents$.pipe(map(components => components.find(component => component.key === replaceableComponentKey)));
1132
1110
  }
1133
- reset() {
1134
- this.subscription.unsubscribe();
1135
- this.subscription = new Subscription();
1111
+ }
1112
+ ReplaceableComponentsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableComponentsService, deps: [{ token: i0.NgZone }, { token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1113
+ ReplaceableComponentsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableComponentsService, providedIn: 'root' });
1114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableComponentsService, decorators: [{
1115
+ type: Injectable,
1116
+ args: [{ providedIn: 'root' }]
1117
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1$1.Router }]; } });
1118
+
1119
+ const NavigationEvent = {
1120
+ Cancel: NavigationCancel,
1121
+ End: NavigationEnd,
1122
+ Error: NavigationError,
1123
+ Start: NavigationStart,
1124
+ };
1125
+ class RouterEvents {
1126
+ constructor(router) {
1127
+ this.router = router;
1128
+ }
1129
+ getEvents(...eventTypes) {
1130
+ const filterRouterEvents = (event) => eventTypes.some(type => event instanceof type);
1131
+ return this.router.events.pipe(filter(filterRouterEvents));
1132
+ }
1133
+ getNavigationEvents(...navigationEventKeys) {
1134
+ const filterNavigationEvents = (event) => navigationEventKeys.some(key => event instanceof NavigationEvent[key]);
1135
+ return this.router.events.pipe(filter(filterNavigationEvents));
1136
+ }
1137
+ getAllEvents() {
1138
+ return this.router.events;
1139
+ }
1140
+ getAllNavigationEvents() {
1141
+ const keys = Object.keys(NavigationEvent);
1142
+ return this.getNavigationEvents(...keys);
1136
1143
  }
1137
1144
  }
1138
- SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1139
- SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService });
1140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SubscriptionService, decorators: [{
1141
- type: Injectable
1142
- }] });
1145
+ RouterEvents.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterEvents, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1146
+ RouterEvents.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterEvents, providedIn: 'root' });
1147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterEvents, decorators: [{
1148
+ type: Injectable,
1149
+ args: [{ providedIn: 'root' }]
1150
+ }], ctorParameters: function () { return [{ type: i1$1.Router }]; } });
1143
1151
 
1144
1152
  class DynamicLayoutComponent {
1145
1153
  constructor(injector, localizationService, replaceableComponents, subscription, routerEvents, dynamicLayoutComponent) {
@@ -1201,20 +1209,22 @@ class DynamicLayoutComponent {
1201
1209
  return this.replaceableComponents.get(key);
1202
1210
  }
1203
1211
  }
1204
- DynamicLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DynamicLayoutComponent, deps: [{ token: i0.Injector }, { token: LocalizationService }, { token: ReplaceableComponentsService }, { token: SubscriptionService }, { token: RouterEvents }, { token: DynamicLayoutComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
1205
- DynamicLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: DynamicLayoutComponent, selector: "abp-dynamic-layout", providers: [SubscriptionService], ngImport: i0, template: ` <ng-container *ngIf="isLayoutVisible" [ngComponentOutlet]="layout"></ng-container> `, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }] });
1206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DynamicLayoutComponent, decorators: [{
1212
+ DynamicLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DynamicLayoutComponent, deps: [{ token: i0.Injector }, { token: LocalizationService }, { token: ReplaceableComponentsService }, { token: SubscriptionService }, { token: RouterEvents }, { token: DynamicLayoutComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
1213
+ DynamicLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: DynamicLayoutComponent, selector: "abp-dynamic-layout", providers: [SubscriptionService], ngImport: i0, template: ` <ng-container *ngIf="isLayoutVisible" [ngComponentOutlet]="layout"></ng-container> `, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }] });
1214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DynamicLayoutComponent, decorators: [{
1207
1215
  type: Component,
1208
1216
  args: [{
1209
1217
  selector: 'abp-dynamic-layout',
1210
1218
  template: ` <ng-container *ngIf="isLayoutVisible" [ngComponentOutlet]="layout"></ng-container> `,
1211
1219
  providers: [SubscriptionService],
1212
1220
  }]
1213
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: LocalizationService }, { type: ReplaceableComponentsService }, { type: SubscriptionService }, { type: RouterEvents }, { type: DynamicLayoutComponent, decorators: [{
1214
- type: Optional
1215
- }, {
1216
- type: SkipSelf
1217
- }] }]; } });
1221
+ }], ctorParameters: function () {
1222
+ return [{ type: i0.Injector }, { type: LocalizationService }, { type: ReplaceableComponentsService }, { type: SubscriptionService }, { type: RouterEvents }, { type: DynamicLayoutComponent, decorators: [{
1223
+ type: Optional
1224
+ }, {
1225
+ type: SkipSelf
1226
+ }] }];
1227
+ } });
1218
1228
 
1219
1229
  class ReplaceableRouteContainerComponent {
1220
1230
  constructor(route, replaceableComponents, subscription) {
@@ -1233,11 +1243,11 @@ class ReplaceableRouteContainerComponent {
1233
1243
  });
1234
1244
  }
1235
1245
  }
1236
- ReplaceableRouteContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableRouteContainerComponent, deps: [{ token: i1$1.ActivatedRoute }, { token: ReplaceableComponentsService }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
1237
- ReplaceableRouteContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ReplaceableRouteContainerComponent, selector: "abp-replaceable-route-container", providers: [SubscriptionService], ngImport: i0, template: `
1246
+ ReplaceableRouteContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableRouteContainerComponent, deps: [{ token: i1$1.ActivatedRoute }, { token: ReplaceableComponentsService }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
1247
+ ReplaceableRouteContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ReplaceableRouteContainerComponent, selector: "abp-replaceable-route-container", providers: [SubscriptionService], ngImport: i0, template: `
1238
1248
  <ng-container *ngComponentOutlet="externalComponent || defaultComponent"></ng-container>
1239
1249
  `, isInline: true, directives: [{ type: i5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }] });
1240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableRouteContainerComponent, decorators: [{
1250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableRouteContainerComponent, decorators: [{
1241
1251
  type: Component,
1242
1252
  args: [{
1243
1253
  selector: 'abp-replaceable-route-container',
@@ -1250,9 +1260,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
1250
1260
 
1251
1261
  class RouterOutletComponent {
1252
1262
  }
1253
- RouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1254
- RouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: RouterOutletComponent, selector: "abp-router-outlet", ngImport: i0, template: ` <router-outlet></router-outlet> `, isInline: true, directives: [{ type: i1$1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
1255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterOutletComponent, decorators: [{
1263
+ RouterOutletComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterOutletComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1264
+ RouterOutletComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: RouterOutletComponent, selector: "abp-router-outlet", ngImport: i0, template: ` <router-outlet></router-outlet> `, isInline: true, directives: [{ type: i1$1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
1265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterOutletComponent, decorators: [{
1256
1266
  type: Component,
1257
1267
  args: [{
1258
1268
  selector: 'abp-router-outlet',
@@ -1612,9 +1622,9 @@ class AutofocusDirective {
1612
1622
  setTimeout(() => this.elRef.nativeElement.focus(), this.delay);
1613
1623
  }
1614
1624
  }
1615
- AutofocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AutofocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1616
- AutofocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: AutofocusDirective, selector: "[autofocus]", inputs: { delay: ["autofocus", "delay"] }, ngImport: i0 });
1617
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AutofocusDirective, decorators: [{
1625
+ AutofocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AutofocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1626
+ AutofocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: AutofocusDirective, selector: "[autofocus]", inputs: { delay: ["autofocus", "delay"] }, ngImport: i0 });
1627
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AutofocusDirective, decorators: [{
1618
1628
  type: Directive,
1619
1629
  args: [{
1620
1630
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1639,9 +1649,9 @@ class InputEventDebounceDirective {
1639
1649
  });
1640
1650
  }
1641
1651
  }
1642
- InputEventDebounceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InputEventDebounceDirective, deps: [{ token: i0.ElementRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
1643
- InputEventDebounceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: InputEventDebounceDirective, selector: "[input.debounce]", inputs: { debounce: "debounce" }, outputs: { debounceEvent: "input.debounce" }, providers: [SubscriptionService], ngImport: i0 });
1644
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InputEventDebounceDirective, decorators: [{
1652
+ InputEventDebounceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: InputEventDebounceDirective, deps: [{ token: i0.ElementRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
1653
+ InputEventDebounceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: InputEventDebounceDirective, selector: "[input.debounce]", inputs: { debounce: "debounce" }, outputs: { debounceEvent: "input.debounce" }, providers: [SubscriptionService], ngImport: i0 });
1654
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: InputEventDebounceDirective, decorators: [{
1645
1655
  type: Directive,
1646
1656
  args: [{
1647
1657
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1769,9 +1779,9 @@ class ForDirective {
1769
1779
  }
1770
1780
  }
1771
1781
  }
1772
- ForDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ForDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });
1773
- ForDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ForDirective, selector: "[abpFor]", inputs: { items: ["abpForOf", "items"], orderBy: ["abpForOrderBy", "orderBy"], orderDir: ["abpForOrderDir", "orderDir"], filterBy: ["abpForFilterBy", "filterBy"], filterVal: ["abpForFilterVal", "filterVal"], trackBy: ["abpForTrackBy", "trackBy"], compareBy: ["abpForCompareBy", "compareBy"], emptyRef: ["abpForEmptyRef", "emptyRef"] }, usesOnChanges: true, ngImport: i0 });
1774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ForDirective, decorators: [{
1782
+ ForDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ForDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });
1783
+ ForDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: ForDirective, selector: "[abpFor]", inputs: { items: ["abpForOf", "items"], orderBy: ["abpForOrderBy", "orderBy"], orderDir: ["abpForOrderDir", "orderDir"], filterBy: ["abpForFilterBy", "filterBy"], filterVal: ["abpForFilterVal", "filterVal"], trackBy: ["abpForTrackBy", "trackBy"], compareBy: ["abpForCompareBy", "compareBy"], emptyRef: ["abpForEmptyRef", "emptyRef"] }, usesOnChanges: true, ngImport: i0 });
1784
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ForDirective, decorators: [{
1775
1785
  type: Directive,
1776
1786
  args: [{
1777
1787
  selector: '[abpFor]',
@@ -1832,18 +1842,20 @@ class FormSubmitDirective {
1832
1842
  this.cdRef.detectChanges();
1833
1843
  }
1834
1844
  }
1835
- FormSubmitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: FormSubmitDirective, deps: [{ token: i1$2.FormGroupDirective, self: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
1836
- FormSubmitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: { debounce: "debounce", notValidateOnSubmit: "notValidateOnSubmit" }, outputs: { ngSubmit: "ngSubmit" }, providers: [SubscriptionService], ngImport: i0 });
1837
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: FormSubmitDirective, decorators: [{
1845
+ FormSubmitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FormSubmitDirective, deps: [{ token: i1$2.FormGroupDirective, self: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
1846
+ FormSubmitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: { debounce: "debounce", notValidateOnSubmit: "notValidateOnSubmit" }, outputs: { ngSubmit: "ngSubmit" }, providers: [SubscriptionService], ngImport: i0 });
1847
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FormSubmitDirective, decorators: [{
1838
1848
  type: Directive,
1839
1849
  args: [{
1840
1850
  // eslint-disable-next-line @angular-eslint/directive-selector
1841
1851
  selector: 'form[ngSubmit][formGroup]',
1842
1852
  providers: [SubscriptionService],
1843
1853
  }]
1844
- }], ctorParameters: function () { return [{ type: i1$2.FormGroupDirective, decorators: [{
1845
- type: Self
1846
- }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: SubscriptionService }]; }, propDecorators: { debounce: [{
1854
+ }], ctorParameters: function () {
1855
+ return [{ type: i1$2.FormGroupDirective, decorators: [{
1856
+ type: Self
1857
+ }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: SubscriptionService }];
1858
+ }, propDecorators: { debounce: [{
1847
1859
  type: Input
1848
1860
  }], notValidateOnSubmit: [{
1849
1861
  type: Input
@@ -1872,9 +1884,9 @@ class InitDirective {
1872
1884
  this.init.emit(this.elRef);
1873
1885
  }
1874
1886
  }
1875
- InitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1876
- InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
1877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, decorators: [{
1887
+ InitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1888
+ InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
1889
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: InitDirective, decorators: [{
1878
1890
  type: Directive,
1879
1891
  args: [{ selector: '[abpInit]' }]
1880
1892
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { init: [{
@@ -1911,16 +1923,18 @@ class PermissionDirective {
1911
1923
  this.check();
1912
1924
  }
1913
1925
  }
1914
- PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: PermissionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
1915
- PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"] }, usesOnChanges: true, ngImport: i0 });
1916
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, decorators: [{
1926
+ PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: PermissionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
1927
+ PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"] }, usesOnChanges: true, ngImport: i0 });
1928
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionDirective, decorators: [{
1917
1929
  type: Directive,
1918
1930
  args: [{
1919
1931
  selector: '[abpPermission]',
1920
1932
  }]
1921
- }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
1922
- type: Optional
1923
- }] }, { type: i0.ViewContainerRef }, { type: PermissionService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { condition: [{
1933
+ }], ctorParameters: function () {
1934
+ return [{ type: i0.TemplateRef, decorators: [{
1935
+ type: Optional
1936
+ }] }, { type: i0.ViewContainerRef }, { type: PermissionService }, { type: i0.ChangeDetectorRef }];
1937
+ }, propDecorators: { condition: [{
1924
1938
  type: Input,
1925
1939
  args: ['abpPermission']
1926
1940
  }] } });
@@ -2025,9 +2039,9 @@ class ReplaceableTemplateDirective {
2025
2039
  this.defaultComponentRef = null;
2026
2040
  }
2027
2041
  }
2028
- ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: ReplaceableComponentsService }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
2029
- ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
2030
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
2042
+ ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: ReplaceableComponentsService }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
2043
+ ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
2044
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
2031
2045
  type: Directive,
2032
2046
  args: [{
2033
2047
  selector: '[abpReplaceableTemplate]',
@@ -2051,9 +2065,9 @@ class StopPropagationDirective {
2051
2065
  });
2052
2066
  }
2053
2067
  }
2054
- StopPropagationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
2055
- StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
2056
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, decorators: [{
2068
+ StopPropagationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
2069
+ StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
2070
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: StopPropagationDirective, decorators: [{
2057
2071
  type: Directive,
2058
2072
  args: [{
2059
2073
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -2081,17 +2095,19 @@ class OAuthConfigurationHandler {
2081
2095
  });
2082
2096
  }
2083
2097
  }
2084
- OAuthConfigurationHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: OAuthConfigurationHandler, deps: [{ token: i1$3.OAuthService }, { token: EnvironmentService }, { token: CORE_OPTIONS }], target: i0.ɵɵFactoryTarget.Injectable });
2085
- OAuthConfigurationHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: OAuthConfigurationHandler, providedIn: 'root' });
2086
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: OAuthConfigurationHandler, decorators: [{
2098
+ OAuthConfigurationHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: OAuthConfigurationHandler, deps: [{ token: i1$3.OAuthService }, { token: EnvironmentService }, { token: CORE_OPTIONS }], target: i0.ɵɵFactoryTarget.Injectable });
2099
+ OAuthConfigurationHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: OAuthConfigurationHandler, providedIn: 'root' });
2100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: OAuthConfigurationHandler, decorators: [{
2087
2101
  type: Injectable,
2088
2102
  args: [{
2089
2103
  providedIn: 'root',
2090
2104
  }]
2091
- }], ctorParameters: function () { return [{ type: i1$3.OAuthService }, { type: EnvironmentService }, { type: undefined, decorators: [{
2092
- type: Inject,
2093
- args: [CORE_OPTIONS]
2094
- }] }]; } });
2105
+ }], ctorParameters: function () {
2106
+ return [{ type: i1$3.OAuthService }, { type: EnvironmentService }, { type: undefined, decorators: [{
2107
+ type: Inject,
2108
+ args: [CORE_OPTIONS]
2109
+ }] }];
2110
+ } });
2095
2111
 
2096
2112
  class RoutesHandler {
2097
2113
  constructor(routes, router) {
@@ -2113,16 +2129,18 @@ class RoutesHandler {
2113
2129
  });
2114
2130
  }
2115
2131
  }
2116
- RoutesHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesHandler, deps: [{ token: RoutesService }, { token: i1$1.Router, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2117
- RoutesHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesHandler, providedIn: 'root' });
2118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesHandler, decorators: [{
2132
+ RoutesHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesHandler, deps: [{ token: RoutesService }, { token: i1$1.Router, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2133
+ RoutesHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesHandler, providedIn: 'root' });
2134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RoutesHandler, decorators: [{
2119
2135
  type: Injectable,
2120
2136
  args: [{
2121
2137
  providedIn: 'root',
2122
2138
  }]
2123
- }], ctorParameters: function () { return [{ type: RoutesService }, { type: i1$1.Router, decorators: [{
2124
- type: Optional
2125
- }] }]; } });
2139
+ }], ctorParameters: function () {
2140
+ return [{ type: RoutesService }, { type: i1$1.Router, decorators: [{
2141
+ type: Optional
2142
+ }] }];
2143
+ } });
2126
2144
  function flatRoutes(routes, parent) {
2127
2145
  if (!routes)
2128
2146
  return [];
@@ -2133,6 +2151,8 @@ function flatRoutes(routes, parent) {
2133
2151
  }, []);
2134
2152
  }
2135
2153
 
2154
+ const TENANT_KEY = new InjectionToken('TENANT_KEY');
2155
+
2136
2156
  function getPathName(url) {
2137
2157
  const { pathname } = new URL(url, window.location.origin);
2138
2158
  return pathname;
@@ -2210,17 +2230,15 @@ class HttpWaitService {
2210
2230
  return endpoint === request.endpoint && method === request.method;
2211
2231
  }
2212
2232
  }
2213
- HttpWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpWaitService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
2214
- HttpWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpWaitService, providedIn: 'root' });
2215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpWaitService, decorators: [{
2233
+ HttpWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpWaitService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
2234
+ HttpWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpWaitService, providedIn: 'root' });
2235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HttpWaitService, decorators: [{
2216
2236
  type: Injectable,
2217
2237
  args: [{
2218
2238
  providedIn: 'root',
2219
2239
  }]
2220
2240
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
2221
2241
 
2222
- const TENANT_KEY = new InjectionToken('TENANT_KEY');
2223
-
2224
2242
  class ApiInterceptor {
2225
2243
  constructor(oAuthService, sessionState, httpWaitService, tenantKey) {
2226
2244
  this.oAuthService = oAuthService;
@@ -2253,17 +2271,19 @@ class ApiInterceptor {
2253
2271
  return headers;
2254
2272
  }
2255
2273
  }
2256
- ApiInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ApiInterceptor, deps: [{ token: i1$3.OAuthService }, { token: SessionStateService }, { token: HttpWaitService }, { token: TENANT_KEY }], target: i0.ɵɵFactoryTarget.Injectable });
2257
- ApiInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ApiInterceptor, providedIn: 'root' });
2258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ApiInterceptor, decorators: [{
2274
+ ApiInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ApiInterceptor, deps: [{ token: i1$3.OAuthService }, { token: SessionStateService }, { token: HttpWaitService }, { token: TENANT_KEY }], target: i0.ɵɵFactoryTarget.Injectable });
2275
+ ApiInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ApiInterceptor, providedIn: 'root' });
2276
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ApiInterceptor, decorators: [{
2259
2277
  type: Injectable,
2260
2278
  args: [{
2261
2279
  providedIn: 'root',
2262
2280
  }]
2263
- }], ctorParameters: function () { return [{ type: i1$3.OAuthService }, { type: SessionStateService }, { type: HttpWaitService }, { type: undefined, decorators: [{
2264
- type: Inject,
2265
- args: [TENANT_KEY]
2266
- }] }]; } });
2281
+ }], ctorParameters: function () {
2282
+ return [{ type: i1$3.OAuthService }, { type: SessionStateService }, { type: HttpWaitService }, { type: undefined, decorators: [{
2283
+ type: Inject,
2284
+ args: [TENANT_KEY]
2285
+ }] }];
2286
+ } });
2267
2287
 
2268
2288
  class LocalizationPipe {
2269
2289
  constructor(localization) {
@@ -2282,10 +2302,10 @@ class LocalizationPipe {
2282
2302
  return this.localization.instant(value, ...params);
2283
2303
  }
2284
2304
  }
2285
- LocalizationPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationPipe, deps: [{ token: LocalizationService }], target: i0.ɵɵFactoryTarget.Pipe });
2286
- LocalizationPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationPipe, name: "abpLocalization" });
2287
- LocalizationPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationPipe });
2288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationPipe, decorators: [{
2305
+ LocalizationPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationPipe, deps: [{ token: LocalizationService }], target: i0.ɵɵFactoryTarget.Pipe });
2306
+ LocalizationPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationPipe, name: "abpLocalization" });
2307
+ LocalizationPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationPipe });
2308
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationPipe, decorators: [{
2289
2309
  type: Injectable
2290
2310
  }, {
2291
2311
  type: Pipe,
@@ -2296,10 +2316,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
2296
2316
 
2297
2317
  class LocalizationModule {
2298
2318
  }
2299
- LocalizationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2300
- LocalizationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationModule, declarations: [LocalizationPipe], exports: [LocalizationPipe] });
2301
- LocalizationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationModule });
2302
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LocalizationModule, decorators: [{
2319
+ LocalizationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2320
+ LocalizationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationModule, declarations: [LocalizationPipe], exports: [LocalizationPipe] });
2321
+ LocalizationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationModule });
2322
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LocalizationModule, decorators: [{
2303
2323
  type: NgModule,
2304
2324
  args: [{
2305
2325
  exports: [LocalizationPipe],
@@ -2342,10 +2362,10 @@ class SortPipe {
2342
2362
  return sortOrder === 'asc' ? sorted : sorted.reverse();
2343
2363
  }
2344
2364
  }
2345
- SortPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2346
- SortPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SortPipe, name: "abpSort" });
2347
- SortPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SortPipe });
2348
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SortPipe, decorators: [{
2365
+ SortPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2366
+ SortPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SortPipe, name: "abpSort" });
2367
+ SortPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SortPipe });
2368
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SortPipe, decorators: [{
2349
2369
  type: Injectable
2350
2370
  }, {
2351
2371
  type: Pipe,
@@ -2354,6 +2374,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
2354
2374
  }]
2355
2375
  }] });
2356
2376
 
2377
+ const INJECTOR_PIPE_DATA_TOKEN = new InjectionToken('INJECTOR_PIPE_DATA_TOKEN');
2378
+ class ToInjectorPipe {
2379
+ constructor(injector) {
2380
+ this.injector = injector;
2381
+ }
2382
+ transform(value, token = INJECTOR_PIPE_DATA_TOKEN, name = 'ToInjectorPipe') {
2383
+ return Injector.create({
2384
+ providers: [
2385
+ {
2386
+ provide: token,
2387
+ useValue: value,
2388
+ },
2389
+ ],
2390
+ parent: this.injector,
2391
+ name,
2392
+ });
2393
+ }
2394
+ }
2395
+ ToInjectorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ToInjectorPipe, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Pipe });
2396
+ ToInjectorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ToInjectorPipe, name: "toInjector" });
2397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ToInjectorPipe, decorators: [{
2398
+ type: Pipe,
2399
+ args: [{
2400
+ name: 'toInjector',
2401
+ }]
2402
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
2403
+
2357
2404
  const COOKIE_LANGUAGE_KEY = new InjectionToken('COOKIE_LANGUAGE_KEY', {
2358
2405
  factory: () => '.AspNetCore.Culture',
2359
2406
  });
@@ -2657,9 +2704,9 @@ class AuthService {
2657
2704
  return this.strategy.login(params);
2658
2705
  }
2659
2706
  }
2660
- AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
2661
- AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthService, providedIn: 'root' });
2662
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthService, decorators: [{
2707
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
2708
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthService, providedIn: 'root' });
2709
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthService, decorators: [{
2663
2710
  type: Injectable,
2664
2711
  args: [{
2665
2712
  providedIn: 'root',
@@ -2714,9 +2761,9 @@ class AbpTenantService {
2714
2761
  }, { apiName: this.apiName });
2715
2762
  }
2716
2763
  }
2717
- AbpTenantService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpTenantService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
2718
- AbpTenantService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpTenantService, providedIn: 'root' });
2719
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpTenantService, decorators: [{
2764
+ AbpTenantService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpTenantService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
2765
+ AbpTenantService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpTenantService, providedIn: 'root' });
2766
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpTenantService, decorators: [{
2720
2767
  type: Injectable,
2721
2768
  args: [{
2722
2769
  providedIn: 'root',
@@ -2749,15 +2796,17 @@ class MultiTenancyService {
2749
2796
  .pipe(switchMap(this.setTenantToState));
2750
2797
  }
2751
2798
  }
2752
- MultiTenancyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: MultiTenancyService, deps: [{ token: RestService }, { token: SessionStateService }, { token: AbpTenantService }, { token: ConfigStateService }, { token: TENANT_KEY }], target: i0.ɵɵFactoryTarget.Injectable });
2753
- MultiTenancyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: MultiTenancyService, providedIn: 'root' });
2754
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: MultiTenancyService, decorators: [{
2799
+ MultiTenancyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MultiTenancyService, deps: [{ token: RestService }, { token: SessionStateService }, { token: AbpTenantService }, { token: ConfigStateService }, { token: TENANT_KEY }], target: i0.ɵɵFactoryTarget.Injectable });
2800
+ MultiTenancyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MultiTenancyService, providedIn: 'root' });
2801
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MultiTenancyService, decorators: [{
2755
2802
  type: Injectable,
2756
2803
  args: [{ providedIn: 'root' }]
2757
- }], ctorParameters: function () { return [{ type: RestService }, { type: SessionStateService }, { type: AbpTenantService }, { type: ConfigStateService }, { type: undefined, decorators: [{
2758
- type: Inject,
2759
- args: [TENANT_KEY]
2760
- }] }]; } });
2804
+ }], ctorParameters: function () {
2805
+ return [{ type: RestService }, { type: SessionStateService }, { type: AbpTenantService }, { type: ConfigStateService }, { type: undefined, decorators: [{
2806
+ type: Inject,
2807
+ args: [TENANT_KEY]
2808
+ }] }];
2809
+ } });
2761
2810
 
2762
2811
  const tenancyPlaceholder = '{0}';
2763
2812
  function getCurrentTenancyName(appBaseUrl) {
@@ -2897,8 +2946,8 @@ function storageFactory() {
2897
2946
  */
2898
2947
  class BaseCoreModule {
2899
2948
  }
2900
- BaseCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2901
- BaseCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseCoreModule, declarations: [AbstractNgModelComponent,
2949
+ BaseCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2950
+ BaseCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseCoreModule, declarations: [AbstractNgModelComponent,
2902
2951
  AutofocusDirective,
2903
2952
  DynamicLayoutComponent,
2904
2953
  ForDirective,
@@ -2910,7 +2959,8 @@ BaseCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
2910
2959
  ReplaceableTemplateDirective,
2911
2960
  RouterOutletComponent,
2912
2961
  SortPipe,
2913
- StopPropagationDirective], imports: [OAuthModule,
2962
+ StopPropagationDirective,
2963
+ ToInjectorPipe], imports: [OAuthModule,
2914
2964
  CommonModule,
2915
2965
  HttpClientModule,
2916
2966
  FormsModule,
@@ -2934,8 +2984,9 @@ BaseCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
2934
2984
  ReplaceableTemplateDirective,
2935
2985
  RouterOutletComponent,
2936
2986
  SortPipe,
2937
- StopPropagationDirective] });
2938
- BaseCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseCoreModule, providers: [LocalizationPipe], imports: [[
2987
+ StopPropagationDirective,
2988
+ ToInjectorPipe] });
2989
+ BaseCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseCoreModule, providers: [LocalizationPipe], imports: [[
2939
2990
  OAuthModule,
2940
2991
  CommonModule,
2941
2992
  HttpClientModule,
@@ -2949,7 +3000,7 @@ BaseCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
2949
3000
  ReactiveFormsModule,
2950
3001
  RouterModule,
2951
3002
  LocalizationModule] });
2952
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseCoreModule, decorators: [{
3003
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseCoreModule, decorators: [{
2953
3004
  type: NgModule,
2954
3005
  args: [{
2955
3006
  exports: [
@@ -2972,6 +3023,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
2972
3023
  RouterOutletComponent,
2973
3024
  SortPipe,
2974
3025
  StopPropagationDirective,
3026
+ ToInjectorPipe,
2975
3027
  ],
2976
3028
  imports: [
2977
3029
  OAuthModule,
@@ -2996,13 +3048,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
2996
3048
  RouterOutletComponent,
2997
3049
  SortPipe,
2998
3050
  StopPropagationDirective,
3051
+ ToInjectorPipe,
2999
3052
  ],
3000
- providers: [LocalizationPipe],
3001
- entryComponents: [
3002
- RouterOutletComponent,
3003
- DynamicLayoutComponent,
3004
- ReplaceableRouteContainerComponent,
3005
- ],
3053
+ providers: [LocalizationPipe]
3006
3054
  }]
3007
3055
  }] });
3008
3056
  /**
@@ -3011,9 +3059,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
3011
3059
  */
3012
3060
  class RootCoreModule {
3013
3061
  }
3014
- RootCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RootCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3015
- RootCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RootCoreModule, imports: [BaseCoreModule, LocalizationModule, i1$3.OAuthModule, i1.HttpClientXsrfModule], exports: [BaseCoreModule, LocalizationModule] });
3016
- RootCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RootCoreModule, imports: [[
3062
+ RootCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RootCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3063
+ RootCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RootCoreModule, imports: [BaseCoreModule, LocalizationModule, i1$3.OAuthModule, i1.HttpClientXsrfModule], exports: [BaseCoreModule, LocalizationModule] });
3064
+ RootCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RootCoreModule, imports: [[
3017
3065
  BaseCoreModule,
3018
3066
  LocalizationModule,
3019
3067
  OAuthModule.forRoot(),
@@ -3022,7 +3070,7 @@ RootCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
3022
3070
  headerName: 'RequestVerificationToken',
3023
3071
  }),
3024
3072
  ], BaseCoreModule, LocalizationModule] });
3025
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RootCoreModule, decorators: [{
3073
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RootCoreModule, decorators: [{
3026
3074
  type: NgModule,
3027
3075
  args: [{
3028
3076
  exports: [BaseCoreModule, LocalizationModule],
@@ -3116,10 +3164,10 @@ class CoreModule {
3116
3164
  };
3117
3165
  }
3118
3166
  }
3119
- CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3120
- CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: CoreModule, imports: [BaseCoreModule], exports: [BaseCoreModule] });
3121
- CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: CoreModule, imports: [[BaseCoreModule], BaseCoreModule] });
3122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: CoreModule, decorators: [{
3167
+ CoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3168
+ CoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CoreModule, imports: [BaseCoreModule], exports: [BaseCoreModule] });
3169
+ CoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CoreModule, imports: [[BaseCoreModule], BaseCoreModule] });
3170
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CoreModule, decorators: [{
3123
3171
  type: NgModule,
3124
3172
  args: [{
3125
3173
  exports: [BaseCoreModule],
@@ -3144,9 +3192,9 @@ class AuthGuard {
3144
3192
  return false;
3145
3193
  }
3146
3194
  }
3147
- AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, deps: [{ token: i1$3.OAuthService }, { token: AuthService }], target: i0.ɵɵFactoryTarget.Injectable });
3148
- AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, providedIn: 'root' });
3149
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, decorators: [{
3195
+ AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthGuard, deps: [{ token: i1$3.OAuthService }, { token: AuthService }], target: i0.ɵɵFactoryTarget.Injectable });
3196
+ AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthGuard, providedIn: 'root' });
3197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AuthGuard, decorators: [{
3150
3198
  type: Injectable,
3151
3199
  args: [{
3152
3200
  providedIn: 'root',
@@ -3175,9 +3223,9 @@ class PermissionGuard {
3175
3223
  }));
3176
3224
  }
3177
3225
  }
3178
- PermissionGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionGuard, deps: [{ token: i1$1.Router }, { token: RoutesService }, { token: PermissionService }, { token: HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
3179
- PermissionGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionGuard, providedIn: 'root' });
3180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionGuard, decorators: [{
3226
+ PermissionGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionGuard, deps: [{ token: i1$1.Router }, { token: RoutesService }, { token: PermissionService }, { token: HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
3227
+ PermissionGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionGuard, providedIn: 'root' });
3228
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: PermissionGuard, decorators: [{
3181
3229
  type: Injectable,
3182
3230
  args: [{
3183
3231
  providedIn: 'root',
@@ -3314,23 +3362,19 @@ class AbpApiDefinitionService {
3314
3362
  }, { apiName: this.apiName });
3315
3363
  }
3316
3364
  }
3317
- AbpApiDefinitionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApiDefinitionService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
3318
- AbpApiDefinitionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApiDefinitionService, providedIn: 'root' });
3319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AbpApiDefinitionService, decorators: [{
3365
+ AbpApiDefinitionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApiDefinitionService, deps: [{ token: RestService }], target: i0.ɵɵFactoryTarget.Injectable });
3366
+ AbpApiDefinitionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApiDefinitionService, providedIn: 'root' });
3367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AbpApiDefinitionService, decorators: [{
3320
3368
  type: Injectable,
3321
3369
  args: [{
3322
3370
  providedIn: 'root',
3323
3371
  }]
3324
3372
  }], ctorParameters: function () { return [{ type: RestService }]; } });
3325
3373
 
3326
- /* eslint-disable @typescript-eslint/ban-types */
3327
-
3328
3374
  var index = /*#__PURE__*/Object.freeze({
3329
3375
  __proto__: null
3330
3376
  });
3331
3377
 
3332
- /* eslint-disable @typescript-eslint/ban-types */
3333
-
3334
3378
  class ContentProjectionService {
3335
3379
  constructor(injector) {
3336
3380
  this.injector = injector;
@@ -3339,9 +3383,9 @@ class ContentProjectionService {
3339
3383
  return projectionStrategy.injectContent(injector);
3340
3384
  }
3341
3385
  }
3342
- ContentProjectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ContentProjectionService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3343
- ContentProjectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ContentProjectionService, providedIn: 'root' });
3344
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ContentProjectionService, decorators: [{
3386
+ ContentProjectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ContentProjectionService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3387
+ ContentProjectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ContentProjectionService, providedIn: 'root' });
3388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ContentProjectionService, decorators: [{
3345
3389
  type: Injectable,
3346
3390
  args: [{ providedIn: 'root' }]
3347
3391
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
@@ -3556,9 +3600,9 @@ class DomInsertionService {
3556
3600
  return this.inserted.has(hash);
3557
3601
  }
3558
3602
  }
3559
- DomInsertionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DomInsertionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3560
- DomInsertionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DomInsertionService, providedIn: 'root' });
3561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DomInsertionService, decorators: [{
3603
+ DomInsertionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DomInsertionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3604
+ DomInsertionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DomInsertionService, providedIn: 'root' });
3605
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DomInsertionService, decorators: [{
3562
3606
  type: Injectable,
3563
3607
  args: [{ providedIn: 'root' }]
3564
3608
  }] });
@@ -3590,9 +3634,9 @@ class ResourceWaitService {
3590
3634
  this.store.patch({ resources });
3591
3635
  }
3592
3636
  }
3593
- ResourceWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ResourceWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3594
- ResourceWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ResourceWaitService, providedIn: 'root' });
3595
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ResourceWaitService, decorators: [{
3637
+ ResourceWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResourceWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3638
+ ResourceWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResourceWaitService, providedIn: 'root' });
3639
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResourceWaitService, decorators: [{
3596
3640
  type: Injectable,
3597
3641
  args: [{
3598
3642
  providedIn: 'root',
@@ -3622,9 +3666,9 @@ class LazyLoadService {
3622
3666
  return true;
3623
3667
  }
3624
3668
  }
3625
- LazyLoadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyLoadService, deps: [{ token: ResourceWaitService }], target: i0.ɵɵFactoryTarget.Injectable });
3626
- LazyLoadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyLoadService, providedIn: 'root' });
3627
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyLoadService, decorators: [{
3669
+ LazyLoadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LazyLoadService, deps: [{ token: ResourceWaitService }], target: i0.ɵɵFactoryTarget.Injectable });
3670
+ LazyLoadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LazyLoadService, providedIn: 'root' });
3671
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LazyLoadService, decorators: [{
3628
3672
  type: Injectable,
3629
3673
  args: [{
3630
3674
  providedIn: 'root',
@@ -3725,9 +3769,9 @@ class ListService {
3725
3769
  });
3726
3770
  }
3727
3771
  }
3728
- ListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ListService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3729
- ListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ListService });
3730
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ListService, decorators: [{
3772
+ ListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ListService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3773
+ ListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ListService });
3774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ListService, decorators: [{
3731
3775
  type: Injectable
3732
3776
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
3733
3777
 
@@ -3764,9 +3808,9 @@ class RouterWaitService {
3764
3808
  this.store.patch({ loading });
3765
3809
  }
3766
3810
  }
3767
- RouterWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterWaitService, deps: [{ token: RouterEvents }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3768
- RouterWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterWaitService, providedIn: 'root' });
3769
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RouterWaitService, decorators: [{
3811
+ RouterWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterWaitService, deps: [{ token: RouterEvents }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
3812
+ RouterWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterWaitService, providedIn: 'root' });
3813
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RouterWaitService, decorators: [{
3770
3814
  type: Injectable,
3771
3815
  args: [{
3772
3816
  providedIn: 'root',
@@ -3783,9 +3827,9 @@ class TrackByService {
3783
3827
  this.byDeep = trackByDeep;
3784
3828
  }
3785
3829
  }
3786
- TrackByService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3787
- TrackByService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, providedIn: 'root' });
3788
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: TrackByService, decorators: [{
3830
+ TrackByService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: TrackByService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3831
+ TrackByService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: TrackByService, providedIn: 'root' });
3832
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: TrackByService, decorators: [{
3789
3833
  type: Injectable,
3790
3834
  args: [{
3791
3835
  providedIn: 'root',
@@ -4190,5 +4234,5 @@ const AbpValidators = {
4190
4234
  * Generated bundle index. Do not edit.
4191
4235
  */
4192
4236
 
4193
- export { APP_INIT_ERROR_HANDLERS, AbpApiDefinitionService, AbpApplicationConfigurationService, AbpTenantService, AbpValidators, AbstractNavTreeService, AbstractNgModelComponent, AbstractTreeService, ApiInterceptor, AuditedEntityDto, AuditedEntityWithUserDto, AuthGuard, AuthService, AutofocusDirective, BaseCoreModule, BaseTreeNode, CONTAINER_STRATEGY, CONTENT_SECURITY_STRATEGY, CONTENT_STRATEGY, CONTEXT_STRATEGY, COOKIE_LANGUAGE_KEY, CORE_OPTIONS, CROSS_ORIGIN_STRATEGY, ClearContainerStrategy, ComponentContextStrategy, ComponentProjectionStrategy, ConfigStateService, ContainerStrategy, ContentProjectionService, ContentSecurityStrategy, ContentStrategy, ContextStrategy, CoreModule, CreationAuditedEntityDto, CreationAuditedEntityWithUserDto, CrossOriginStrategy, DOM_STRATEGY, DomInsertionService, DomStrategy, DynamicLayoutComponent, EntityDto, EnvironmentService, ExtensibleAuditedEntityDto, ExtensibleAuditedEntityWithUserDto, ExtensibleCreationAuditedEntityDto, ExtensibleCreationAuditedEntityWithUserDto, ExtensibleEntityDto, ExtensibleFullAuditedEntityDto, ExtensibleFullAuditedEntityWithUserDto, ExtensibleObject, ForDirective, FormSubmitDirective, FullAuditedEntityDto, FullAuditedEntityWithUserDto, HttpErrorReporterService, HttpWaitService, InitDirective, InputEventDebounceDirective, InsertIntoContainerStrategy, InternalStore, LIST_QUERY_DEBOUNCE_TIME, LOADER_DELAY, LOADING_STRATEGY, LOCALIZATIONS, LazyLoadService, LazyModuleFactory, LimitedResultRequestDto, ListResultDto, ListService, LoadingStrategy, LocalizationModule, LocalizationPipe, LocalizationService, LooseContentSecurityStrategy, MultiTenancyService, NAVIGATE_TO_MANAGE_PROFILE, NavigationEvent, NoContentSecurityStrategy, NoContextStrategy, NoCrossOriginStrategy, index as ObjectExtending, PROJECTION_STRATEGY, PagedAndSortedResultRequestDto, PagedResultDto, PagedResultRequestDto, PermissionDirective, PermissionGuard, PermissionService, ProjectionStrategy, ReplaceableComponentsService, ReplaceableRouteContainerComponent, ReplaceableTemplateDirective, ResourceWaitService, RestService, RootComponentProjectionStrategy, RootCoreModule, RouterEvents, RouterOutletComponent, RouterWaitService, RoutesService, ScriptContentStrategy, ScriptLoadingStrategy, SessionStateService, SortPipe, StopPropagationDirective, StyleContentStrategy, StyleLoadingStrategy, SubscriptionService, TENANT_KEY, TemplateContextStrategy, TemplateProjectionStrategy, TrackByService, WebHttpUrlEncodingCodec, checkAccessToken, coreOptionsFactory, createLocalizationPipeKeyGenerator, createLocalizer, createLocalizerWithFallback, createMapFromList, createTokenParser, createTreeFromList, createTreeNodeFilterCreator, deepMerge, differentLocales, downloadBlob, exists, featuresFactory, findRoute, fromLazyLoad, generateHash, generatePassword, getInitialData, getLocaleDirection, getPathName, getRemoteEnv, getRoutePath, getShortDateFormat, getShortDateShortTimeFormat, getShortTimeFormat, interpolate, isArray, isNode, isNullOrUndefined, isNumber, isObject, isObjectAndNotArray, isObjectAndNotArrayNotNode, isUndefinedOrEmptyString, localeInitializer, localizationContributor, localizations$, mapEnumToOptions, ngxsStoragePluginSerialize, noop, parseTenantFromUrl, pipeToLogin, pushValueTo, reloadRoute, removeRememberMe, setRememberMe, setTokenResponseToStorage, storageFactory, trackBy, trackByDeep, uuid, validateCreditCard, validateMinAge, validateRange, validateRequired, validateStringLength, validateUrl };
4194
- //# sourceMappingURL=abp-ng.core.js.map
4237
+ export { APP_INIT_ERROR_HANDLERS, AbpApiDefinitionService, AbpApplicationConfigurationService, AbpTenantService, AbpValidators, AbstractNavTreeService, AbstractNgModelComponent, AbstractTreeService, ApiInterceptor, AuditedEntityDto, AuditedEntityWithUserDto, AuthGuard, AuthService, AutofocusDirective, BaseCoreModule, BaseTreeNode, CONTAINER_STRATEGY, CONTENT_SECURITY_STRATEGY, CONTENT_STRATEGY, CONTEXT_STRATEGY, COOKIE_LANGUAGE_KEY, CORE_OPTIONS, CROSS_ORIGIN_STRATEGY, ClearContainerStrategy, ComponentContextStrategy, ComponentProjectionStrategy, ConfigStateService, ContainerStrategy, ContentProjectionService, ContentSecurityStrategy, ContentStrategy, ContextStrategy, CoreModule, CreationAuditedEntityDto, CreationAuditedEntityWithUserDto, CrossOriginStrategy, DOM_STRATEGY, DomInsertionService, DomStrategy, DynamicLayoutComponent, EntityDto, EnvironmentService, ExtensibleAuditedEntityDto, ExtensibleAuditedEntityWithUserDto, ExtensibleCreationAuditedEntityDto, ExtensibleCreationAuditedEntityWithUserDto, ExtensibleEntityDto, ExtensibleFullAuditedEntityDto, ExtensibleFullAuditedEntityWithUserDto, ExtensibleObject, ForDirective, FormSubmitDirective, FullAuditedEntityDto, FullAuditedEntityWithUserDto, HttpErrorReporterService, HttpWaitService, INJECTOR_PIPE_DATA_TOKEN, InitDirective, InputEventDebounceDirective, InsertIntoContainerStrategy, InternalStore, LIST_QUERY_DEBOUNCE_TIME, LOADER_DELAY, LOADING_STRATEGY, LOCALIZATIONS, LazyLoadService, LazyModuleFactory, LimitedResultRequestDto, ListResultDto, ListService, LoadingStrategy, LocalizationModule, LocalizationPipe, LocalizationService, LooseContentSecurityStrategy, MultiTenancyService, NAVIGATE_TO_MANAGE_PROFILE, NavigationEvent, NoContentSecurityStrategy, NoContextStrategy, NoCrossOriginStrategy, index as ObjectExtending, PROJECTION_STRATEGY, PagedAndSortedResultRequestDto, PagedResultDto, PagedResultRequestDto, PermissionDirective, PermissionGuard, PermissionService, ProjectionStrategy, ReplaceableComponentsService, ReplaceableRouteContainerComponent, ReplaceableTemplateDirective, ResourceWaitService, RestService, RootComponentProjectionStrategy, RootCoreModule, RouterEvents, RouterOutletComponent, RouterWaitService, RoutesService, ScriptContentStrategy, ScriptLoadingStrategy, SessionStateService, SortPipe, StopPropagationDirective, StyleContentStrategy, StyleLoadingStrategy, SubscriptionService, TENANT_KEY, TemplateContextStrategy, TemplateProjectionStrategy, ToInjectorPipe, TrackByService, WebHttpUrlEncodingCodec, checkAccessToken, coreOptionsFactory, createLocalizationPipeKeyGenerator, createLocalizer, createLocalizerWithFallback, createMapFromList, createTokenParser, createTreeFromList, createTreeNodeFilterCreator, deepMerge, differentLocales, downloadBlob, escapeHtmlChars, exists, featuresFactory, findRoute, fromLazyLoad, generateHash, generatePassword, getInitialData, getLocaleDirection, getPathName, getRemoteEnv, getRoutePath, getShortDateFormat, getShortDateShortTimeFormat, getShortTimeFormat, interpolate, isArray, isNode, isNullOrUndefined, isNumber, isObject, isObjectAndNotArray, isObjectAndNotArrayNotNode, isUndefinedOrEmptyString, localeInitializer, localizationContributor, localizations$, mapEnumToOptions, ngxsStoragePluginSerialize, noop, parseTenantFromUrl, pipeToLogin, pushValueTo, reloadRoute, removeRememberMe, setRememberMe, setTokenResponseToStorage, storageFactory, trackBy, trackByDeep, uuid, validateCreditCard, validateMinAge, validateRange, validateRequired, validateStringLength, validateUrl };
4238
+ //# sourceMappingURL=abp-ng.core.mjs.map