@abp/ng.core 7.2.1 → 7.3.0-rc.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 (397) hide show
  1. package/{esm2020 → esm2022}/abp-ng.core.mjs +4 -4
  2. package/esm2022/lib/abstracts/abstract-guard.mjs +2 -0
  3. package/{esm2020 → esm2022}/lib/abstracts/auth-response.model.mjs +1 -1
  4. package/esm2022/lib/abstracts/auth.guard.mjs +18 -0
  5. package/esm2022/lib/abstracts/auth.service.mjs +46 -0
  6. package/esm2022/lib/abstracts/index.mjs +6 -0
  7. package/esm2022/lib/abstracts/ng-model.component.mjs +60 -0
  8. package/esm2022/lib/clients/http.client.mjs +29 -0
  9. package/{esm2020 → esm2022}/lib/clients/index.mjs +1 -1
  10. package/esm2022/lib/components/dynamic-layout.component.mjs +101 -0
  11. package/{esm2020 → esm2022}/lib/components/index.mjs +3 -3
  12. package/esm2022/lib/components/replaceable-route-container.component.mjs +43 -0
  13. package/esm2022/lib/components/router-outlet.component.mjs +16 -0
  14. package/{esm2020 → esm2022}/lib/constants/different-locales.mjs +336 -336
  15. package/{esm2020 → esm2022}/lib/constants/index.mjs +1 -1
  16. package/esm2022/lib/core.module.mjs +285 -0
  17. package/esm2022/lib/directives/autofocus.directive.mjs +31 -0
  18. package/esm2022/lib/directives/debounce.directive.mjs +37 -0
  19. package/esm2022/lib/directives/for.directive.mjs +160 -0
  20. package/esm2022/lib/directives/form-submit.directive.mjs +78 -0
  21. package/{esm2020 → esm2022}/lib/directives/index.mjs +8 -8
  22. package/esm2022/lib/directives/init.directive.mjs +22 -0
  23. package/esm2022/lib/directives/permission.directive.mjs +75 -0
  24. package/esm2022/lib/directives/replaceable-template.directive.mjs +133 -0
  25. package/esm2022/lib/directives/stop-propagation.directive.mjs +33 -0
  26. package/{esm2020 → esm2022}/lib/enums/common.mjs +1 -1
  27. package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
  28. package/{esm2020 → esm2022}/lib/guards/index.mjs +1 -1
  29. package/esm2022/lib/guards/permission.guard.mjs +41 -0
  30. package/esm2022/lib/handlers/routes.handler.mjs +52 -0
  31. package/esm2022/lib/interceptors/api.interceptor.mjs +28 -0
  32. package/{esm2020 → esm2022}/lib/interceptors/index.mjs +1 -1
  33. package/esm2022/lib/localization.module.mjs +17 -0
  34. package/{esm2020 → esm2022}/lib/models/auth.mjs +1 -1
  35. package/{esm2020 → esm2022}/lib/models/common.mjs +1 -1
  36. package/{esm2020 → esm2022}/lib/models/dtos.mjs +134 -134
  37. package/{esm2020 → esm2022}/lib/models/environment.mjs +1 -1
  38. package/{esm2020 → esm2022}/lib/models/index.mjs +9 -9
  39. package/{esm2020 → esm2022}/lib/models/localization.mjs +1 -1
  40. package/{esm2020 → esm2022}/lib/models/replaceable-components.mjs +1 -1
  41. package/{esm2020 → esm2022}/lib/models/rest.mjs +1 -1
  42. package/{esm2020 → esm2022}/lib/models/session.mjs +1 -1
  43. package/{esm2020 → esm2022}/lib/models/utility.mjs +1 -1
  44. package/{esm2020 → esm2022}/lib/pipes/index.mjs +7 -7
  45. package/esm2022/lib/pipes/localization.pipe.mjs +34 -0
  46. package/esm2022/lib/pipes/safe-html.pipe.mjs +24 -0
  47. package/esm2022/lib/pipes/short-date-time.pipe.mjs +35 -0
  48. package/esm2022/lib/pipes/short-date.pipe.mjs +35 -0
  49. package/esm2022/lib/pipes/short-time.pipe.mjs +35 -0
  50. package/esm2022/lib/pipes/sort.pipe.mjs +50 -0
  51. package/esm2022/lib/pipes/to-injector.pipe.mjs +30 -0
  52. package/{esm2020 → esm2022}/lib/providers/cookie-language.provider.mjs +21 -21
  53. package/{esm2020 → esm2022}/lib/providers/include-localization-resources.provider.mjs +5 -5
  54. package/{esm2020 → esm2022}/lib/providers/locale.provider.mjs +25 -25
  55. package/esm2022/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +28 -0
  56. package/{esm2020 → esm2022}/lib/proxy/pages/abp/multi-tenancy/index.mjs +1 -1
  57. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +25 -0
  58. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.mjs +1 -1
  59. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +25 -0
  60. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +25 -0
  61. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.mjs +5 -5
  62. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.mjs +1 -1
  63. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.mjs +1 -1
  64. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.mjs +1 -1
  65. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.mjs +1 -1
  66. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.mjs +1 -1
  67. package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/index.mjs +1 -1
  68. package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/models.mjs +1 -1
  69. package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/index.mjs +1 -1
  70. package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/models.mjs +1 -1
  71. package/{esm2020 → esm2022}/lib/proxy/volo/abp/models.mjs +1 -1
  72. package/esm2022/lib/services/config-state.service.mjs +182 -0
  73. package/esm2022/lib/services/content-projection.service.mjs +18 -0
  74. package/esm2022/lib/services/dom-insertion.service.mjs +35 -0
  75. package/esm2022/lib/services/environment.service.mjs +49 -0
  76. package/esm2022/lib/services/http-error-reporter.service.mjs +30 -0
  77. package/esm2022/lib/services/http-wait.service.mjs +76 -0
  78. package/{esm2020 → esm2022}/lib/services/index.mjs +21 -21
  79. package/esm2022/lib/services/lazy-load.service.mjs +41 -0
  80. package/esm2022/lib/services/list.service.mjs +103 -0
  81. package/esm2022/lib/services/local-storage.service.mjs +33 -0
  82. package/esm2022/lib/services/localization.service.mjs +218 -0
  83. package/esm2022/lib/services/multi-tenancy.service.mjs +49 -0
  84. package/esm2022/lib/services/permission.service.mjs +64 -0
  85. package/esm2022/lib/services/replaceable-components.service.mjs +50 -0
  86. package/esm2022/lib/services/resource-wait.service.mjs +40 -0
  87. package/esm2022/lib/services/rest.service.mjs +79 -0
  88. package/esm2022/lib/services/router-events.service.mjs +39 -0
  89. package/esm2022/lib/services/router-wait.service.mjs +52 -0
  90. package/esm2022/lib/services/routes.service.mjs +165 -0
  91. package/esm2022/lib/services/session-state.service.mjs +81 -0
  92. package/esm2022/lib/services/subscription.service.mjs +44 -0
  93. package/esm2022/lib/services/track-by.service.mjs +22 -0
  94. package/{esm2020 → esm2022}/lib/strategies/container.strategy.mjs +37 -37
  95. package/{esm2020 → esm2022}/lib/strategies/content-security.strategy.mjs +29 -29
  96. package/{esm2020 → esm2022}/lib/strategies/content.strategy.mjs +51 -51
  97. package/{esm2020 → esm2022}/lib/strategies/context.strategy.mjs +36 -36
  98. package/{esm2020 → esm2022}/lib/strategies/cross-origin.strategy.mjs +27 -27
  99. package/{esm2020 → esm2022}/lib/strategies/dom.strategy.mjs +26 -26
  100. package/{esm2020 → esm2022}/lib/strategies/index.mjs +8 -8
  101. package/{esm2020 → esm2022}/lib/strategies/loading.strategy.mjs +57 -57
  102. package/{esm2020 → esm2022}/lib/strategies/projection.strategy.mjs +79 -79
  103. package/{esm2020 → esm2022}/lib/tokens/app-config.token.mjs +2 -2
  104. package/{esm2020 → esm2022}/lib/tokens/check-authentication-state.mjs +2 -2
  105. package/{esm2020 → esm2022}/lib/tokens/cookie-language-key.token.mjs +4 -4
  106. package/{esm2020 → esm2022}/lib/tokens/http-context.token.mjs +2 -2
  107. package/{esm2020 → esm2022}/lib/tokens/include-localization-resources.token.mjs +2 -2
  108. package/{esm2020 → esm2022}/lib/tokens/index.mjs +15 -15
  109. package/{esm2020 → esm2022}/lib/tokens/list.token.mjs +2 -2
  110. package/{esm2020 → esm2022}/lib/tokens/localization.token.mjs +9 -9
  111. package/{esm2020 → esm2022}/lib/tokens/lodaer-delay.token.mjs +2 -2
  112. package/{esm2020 → esm2022}/lib/tokens/manage-profile.token.mjs +2 -2
  113. package/{esm2020 → esm2022}/lib/tokens/options.token.mjs +7 -7
  114. package/{esm2020 → esm2022}/lib/tokens/others-group.token.mjs +2 -2
  115. package/{esm2020 → esm2022}/lib/tokens/pipe-to-login.token.mjs +2 -2
  116. package/{esm2020 → esm2022}/lib/tokens/queue.token.mjs +2 -2
  117. package/{esm2020 → esm2022}/lib/tokens/set-token-response-to-storage.token.mjs +5 -5
  118. package/{esm2020 → esm2022}/lib/tokens/tenant-key.token.mjs +2 -2
  119. package/{esm2020 → esm2022}/lib/utils/array-utils.mjs +6 -6
  120. package/{esm2020 → esm2022}/lib/utils/common-utils.mjs +34 -34
  121. package/{esm2020 → esm2022}/lib/utils/date-extensions.mjs +5 -5
  122. package/{esm2020 → esm2022}/lib/utils/date-utils.mjs +12 -12
  123. package/{esm2020 → esm2022}/lib/utils/environment-utils.mjs +35 -35
  124. package/{esm2020 → esm2022}/lib/utils/factory-utils.mjs +24 -24
  125. package/{esm2020 → esm2022}/lib/utils/file-utils.mjs +13 -13
  126. package/{esm2020 → esm2022}/lib/utils/form-utils.mjs +11 -11
  127. package/{esm2020 → esm2022}/lib/utils/generator-utils.mjs +33 -33
  128. package/{esm2020 → esm2022}/lib/utils/http-utils.mjs +18 -18
  129. package/{esm2020 → esm2022}/lib/utils/index.mjs +20 -20
  130. package/{esm2020 → esm2022}/lib/utils/initial-utils.mjs +59 -59
  131. package/esm2022/lib/utils/internal-store-utils.mjs +37 -0
  132. package/{esm2020 → esm2022}/lib/utils/lazy-load-utils.mjs +39 -39
  133. package/{esm2020 → esm2022}/lib/utils/localization-utils.mjs +48 -48
  134. package/{esm2020 → esm2022}/lib/utils/multi-tenancy-utils.mjs +80 -80
  135. package/{esm2020 → esm2022}/lib/utils/number-utils.mjs +3 -3
  136. package/{esm2020 → esm2022}/lib/utils/object-utils.mjs +36 -36
  137. package/{esm2020 → esm2022}/lib/utils/queue.mjs +40 -40
  138. package/{esm2020 → esm2022}/lib/utils/route-utils.mjs +25 -25
  139. package/{esm2020 → esm2022}/lib/utils/string-utils.mjs +29 -29
  140. package/{esm2020 → esm2022}/lib/utils/tree-utils.mjs +69 -69
  141. package/{esm2020 → esm2022}/lib/validators/age.validator.mjs +13 -13
  142. package/{esm2020 → esm2022}/lib/validators/credit-card.validator.mjs +20 -20
  143. package/esm2022/lib/validators/index.mjs +29 -0
  144. package/{esm2020 → esm2022}/lib/validators/range.validator.mjs +14 -14
  145. package/{esm2020 → esm2022}/lib/validators/required.validator.mjs +14 -14
  146. package/{esm2020 → esm2022}/lib/validators/string-length.validator.mjs +14 -14
  147. package/esm2022/lib/validators/unique-character.validator.mjs +13 -0
  148. package/{esm2020 → esm2022}/lib/validators/url.validator.mjs +16 -16
  149. package/{esm2020 → esm2022}/lib/validators/username.validator.mjs +13 -13
  150. package/{esm2020 → esm2022}/locale/abp-ng.core-locale.mjs +4 -4
  151. package/{esm2020 → esm2022}/locale/public-api.mjs +1 -1
  152. package/{esm2020 → esm2022}/locale/utils/register-locale.mjs +46 -46
  153. package/{esm2020 → esm2022}/public-api.mjs +26 -26
  154. package/{esm2020 → esm2022}/testing/abp-ng.core-testing.mjs +4 -4
  155. package/esm2022/testing/lib/core-testing.module.mjs +68 -0
  156. package/{esm2020 → esm2022}/testing/lib/services/index.mjs +2 -2
  157. package/esm2022/testing/lib/services/mock-permission.service.mjs +36 -0
  158. package/esm2022/testing/lib/services/mock-rest.service.mjs +32 -0
  159. package/{esm2020 → esm2022}/testing/lib/utils/clear-page.util.mjs +9 -9
  160. package/{esm2020 → esm2022}/testing/lib/utils/index.mjs +2 -2
  161. package/{esm2020 → esm2022}/testing/lib/utils/wait.util.mjs +4 -4
  162. package/{esm2020 → esm2022}/testing/public-api.mjs +3 -3
  163. package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs +45 -45
  164. package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs +120 -120
  165. package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs.map +1 -1
  166. package/{fesm2020 → fesm2022}/abp-ng.core.mjs +4199 -4187
  167. package/fesm2022/abp-ng.core.mjs.map +1 -0
  168. package/index.d.ts +5 -5
  169. package/lib/abstracts/abstract-guard.d.ts +5 -0
  170. package/lib/abstracts/auth-response.model.d.ts +10 -10
  171. package/lib/abstracts/auth.guard.d.ts +9 -10
  172. package/lib/abstracts/auth.service.d.ts +30 -30
  173. package/lib/abstracts/index.d.ts +5 -4
  174. package/lib/abstracts/ng-model.component.d.ts +25 -25
  175. package/lib/clients/http.client.d.ts +11 -11
  176. package/lib/clients/index.d.ts +1 -1
  177. package/lib/components/dynamic-layout.component.d.ts +28 -28
  178. package/lib/components/index.d.ts +3 -3
  179. package/lib/components/replaceable-route-container.component.d.ts +17 -17
  180. package/lib/components/router-outlet.component.d.ts +5 -5
  181. package/lib/constants/different-locales.d.ts +334 -334
  182. package/lib/constants/index.d.ts +1 -1
  183. package/lib/core.module.d.ts +57 -57
  184. package/lib/directives/autofocus.directive.d.ts +12 -12
  185. package/lib/directives/debounce.directive.d.ts +13 -13
  186. package/lib/directives/for.directive.d.ts +36 -36
  187. package/lib/directives/form-submit.directive.d.ts +23 -23
  188. package/lib/directives/index.d.ts +8 -8
  189. package/lib/directives/init.directive.d.ts +10 -10
  190. package/lib/directives/permission.directive.d.ts +24 -24
  191. package/lib/directives/replaceable-template.directive.d.ts +29 -29
  192. package/lib/directives/stop-propagation.directive.d.ts +12 -12
  193. package/lib/enums/common.d.ts +5 -5
  194. package/lib/enums/index.d.ts +1 -1
  195. package/lib/guards/index.d.ts +1 -1
  196. package/lib/guards/permission.guard.d.ts +16 -16
  197. package/lib/handlers/routes.handler.d.ts +11 -11
  198. package/lib/interceptors/api.interceptor.d.ts +14 -14
  199. package/lib/interceptors/index.d.ts +1 -1
  200. package/lib/localization.module.d.ts +7 -7
  201. package/lib/models/auth.d.ts +14 -14
  202. package/lib/models/common.d.ts +79 -79
  203. package/lib/models/dtos.d.ts +107 -107
  204. package/lib/models/environment.d.ts +38 -38
  205. package/lib/models/index.d.ts +9 -9
  206. package/lib/models/localization.d.ts +5 -5
  207. package/lib/models/replaceable-components.d.ts +45 -45
  208. package/lib/models/rest.d.ts +36 -36
  209. package/lib/models/session.d.ts +7 -7
  210. package/lib/models/utility.d.ts +14 -14
  211. package/lib/pipes/index.d.ts +7 -7
  212. package/lib/pipes/localization.pipe.d.ts +12 -12
  213. package/lib/pipes/safe-html.pipe.d.ts +9 -9
  214. package/lib/pipes/short-date-time.pipe.d.ts +12 -12
  215. package/lib/pipes/short-date.pipe.d.ts +12 -12
  216. package/lib/pipes/short-time.pipe.d.ts +12 -12
  217. package/lib/pipes/sort.pipe.d.ts +9 -9
  218. package/lib/pipes/to-injector.pipe.d.ts +10 -10
  219. package/lib/providers/cookie-language.provider.d.ts +3 -3
  220. package/lib/providers/include-localization-resources.provider.d.ts +2 -2
  221. package/lib/providers/locale.provider.d.ts +9 -9
  222. package/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.d.ts +12 -12
  223. package/lib/proxy/pages/abp/multi-tenancy/index.d.ts +1 -1
  224. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.d.ts +11 -11
  225. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.d.ts +1 -1
  226. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.d.ts +11 -11
  227. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.d.ts +11 -11
  228. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +5 -5
  229. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +106 -106
  230. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.d.ts +1 -1
  231. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.d.ts +71 -71
  232. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.d.ts +1 -1
  233. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.d.ts +14 -14
  234. package/lib/proxy/volo/abp/http/modeling/index.d.ts +1 -1
  235. package/lib/proxy/volo/abp/http/modeling/models.d.ts +88 -88
  236. package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
  237. package/lib/proxy/volo/abp/localization/models.d.ts +7 -7
  238. package/lib/proxy/volo/abp/models.d.ts +4 -4
  239. package/lib/services/config-state.service.d.ts +379 -378
  240. package/lib/services/content-projection.service.d.ts +10 -10
  241. package/lib/services/dom-insertion.service.d.ts +10 -10
  242. package/lib/services/environment.service.d.ts +103 -103
  243. package/lib/services/http-error-reporter.service.d.ts +12 -12
  244. package/lib/services/http-wait.service.d.ts +30 -30
  245. package/lib/services/index.d.ts +21 -21
  246. package/lib/services/lazy-load.service.d.ts +13 -13
  247. package/lib/services/list.service.d.ts +39 -39
  248. package/lib/services/local-storage.service.d.ts +13 -13
  249. package/lib/services/localization.service.d.ts +54 -54
  250. package/lib/services/multi-tenancy.service.d.ts +22 -22
  251. package/lib/services/permission.service.d.ts +19 -19
  252. package/lib/services/replaceable-components.service.d.ts +19 -19
  253. package/lib/services/resource-wait.service.d.ts +15 -15
  254. package/lib/services/rest.service.d.ts +24 -24
  255. package/lib/services/router-events.service.d.ts +29 -29
  256. package/lib/services/router-wait.service.d.ts +20 -20
  257. package/lib/services/routes.service.d.ts +57 -57
  258. package/lib/services/session-state.service.d.ts +27 -27
  259. package/lib/services/subscription.service.d.ts +17 -17
  260. package/lib/services/track-by.service.d.ts +11 -11
  261. package/lib/strategies/container.strategy.d.ts +22 -22
  262. package/lib/strategies/content-security.strategy.d.ts +17 -17
  263. package/lib/strategies/content.strategy.d.ts +26 -26
  264. package/lib/strategies/context.strategy.d.ts +23 -23
  265. package/lib/strategies/cross-origin.strategy.d.ts +14 -14
  266. package/lib/strategies/dom.strategy.d.ts +13 -13
  267. package/lib/strategies/index.d.ts +8 -8
  268. package/lib/strategies/loading.strategy.d.ts +28 -28
  269. package/lib/strategies/projection.strategy.d.ts +39 -39
  270. package/lib/tokens/app-config.token.d.ts +3 -3
  271. package/lib/tokens/check-authentication-state.d.ts +3 -3
  272. package/lib/tokens/cookie-language-key.token.d.ts +2 -2
  273. package/lib/tokens/http-context.token.d.ts +2 -2
  274. package/lib/tokens/include-localization-resources.token.d.ts +2 -2
  275. package/lib/tokens/index.d.ts +15 -15
  276. package/lib/tokens/list.token.d.ts +2 -2
  277. package/lib/tokens/localization.token.d.ts +6 -6
  278. package/lib/tokens/lodaer-delay.token.d.ts +2 -2
  279. package/lib/tokens/manage-profile.token.d.ts +2 -2
  280. package/lib/tokens/options.token.d.ts +4 -4
  281. package/lib/tokens/others-group.token.d.ts +2 -2
  282. package/lib/tokens/pipe-to-login.token.d.ts +3 -3
  283. package/lib/tokens/queue.token.d.ts +3 -3
  284. package/lib/tokens/set-token-response-to-storage.token.d.ts +6 -6
  285. package/lib/tokens/tenant-key.token.d.ts +2 -2
  286. package/lib/utils/array-utils.d.ts +1 -1
  287. package/lib/utils/common-utils.d.ts +11 -11
  288. package/lib/utils/date-extensions.d.ts +6 -6
  289. package/lib/utils/date-utils.d.ts +4 -4
  290. package/lib/utils/environment-utils.d.ts +3 -3
  291. package/lib/utils/factory-utils.d.ts +11 -11
  292. package/lib/utils/file-utils.d.ts +1 -1
  293. package/lib/utils/form-utils.d.ts +2 -2
  294. package/lib/utils/generator-utils.d.ts +3 -3
  295. package/lib/utils/http-utils.d.ts +8 -8
  296. package/lib/utils/index.d.ts +20 -20
  297. package/lib/utils/initial-utils.d.ts +3 -3
  298. package/lib/utils/internal-store-utils.d.ts +14 -14
  299. package/lib/utils/lazy-load-utils.d.ts +4 -4
  300. package/lib/utils/localization-utils.d.ts +5 -5
  301. package/lib/utils/multi-tenancy-utils.d.ts +3 -3
  302. package/lib/utils/number-utils.d.ts +1 -1
  303. package/lib/utils/object-utils.d.ts +2 -2
  304. package/lib/utils/queue.d.ts +14 -14
  305. package/lib/utils/route-utils.d.ts +8 -8
  306. package/lib/utils/string-utils.d.ts +3 -3
  307. package/lib/utils/tree-utils.d.ts +26 -26
  308. package/lib/validators/age.validator.d.ts +10 -10
  309. package/lib/validators/credit-card.validator.d.ts +5 -5
  310. package/lib/validators/index.d.ts +28 -24
  311. package/lib/validators/range.validator.d.ts +12 -12
  312. package/lib/validators/required.validator.d.ts +8 -8
  313. package/lib/validators/string-length.validator.d.ts +14 -14
  314. package/lib/validators/unique-character.validator.d.ts +5 -0
  315. package/lib/validators/url.validator.d.ts +5 -5
  316. package/lib/validators/username.validator.d.ts +10 -10
  317. package/locale/index.d.ts +5 -5
  318. package/locale/public-api.d.ts +1 -1
  319. package/locale/utils/register-locale.d.ts +13 -13
  320. package/package.json +12 -22
  321. package/public-api.d.ts +25 -25
  322. package/testing/index.d.ts +5 -5
  323. package/testing/lib/core-testing.module.d.ts +16 -16
  324. package/testing/lib/services/index.d.ts +2 -2
  325. package/testing/lib/services/mock-permission.service.d.ts +10 -10
  326. package/testing/lib/services/mock-rest.service.d.ts +14 -14
  327. package/testing/lib/utils/clear-page.util.d.ts +2 -2
  328. package/testing/lib/utils/index.d.ts +2 -2
  329. package/testing/lib/utils/wait.util.d.ts +2 -2
  330. package/testing/public-api.d.ts +3 -3
  331. package/esm2020/lib/abstracts/auth.guard.mjs +0 -17
  332. package/esm2020/lib/abstracts/auth.service.mjs +0 -45
  333. package/esm2020/lib/abstracts/index.mjs +0 -5
  334. package/esm2020/lib/abstracts/ng-model.component.mjs +0 -59
  335. package/esm2020/lib/clients/http.client.mjs +0 -34
  336. package/esm2020/lib/components/dynamic-layout.component.mjs +0 -100
  337. package/esm2020/lib/components/replaceable-route-container.component.mjs +0 -42
  338. package/esm2020/lib/components/router-outlet.component.mjs +0 -15
  339. package/esm2020/lib/core.module.mjs +0 -282
  340. package/esm2020/lib/directives/autofocus.directive.mjs +0 -30
  341. package/esm2020/lib/directives/debounce.directive.mjs +0 -36
  342. package/esm2020/lib/directives/for.directive.mjs +0 -159
  343. package/esm2020/lib/directives/form-submit.directive.mjs +0 -77
  344. package/esm2020/lib/directives/init.directive.mjs +0 -21
  345. package/esm2020/lib/directives/permission.directive.mjs +0 -74
  346. package/esm2020/lib/directives/replaceable-template.directive.mjs +0 -132
  347. package/esm2020/lib/directives/stop-propagation.directive.mjs +0 -32
  348. package/esm2020/lib/guards/permission.guard.mjs +0 -44
  349. package/esm2020/lib/handlers/routes.handler.mjs +0 -51
  350. package/esm2020/lib/interceptors/api.interceptor.mjs +0 -27
  351. package/esm2020/lib/localization.module.mjs +0 -16
  352. package/esm2020/lib/pipes/localization.pipe.mjs +0 -33
  353. package/esm2020/lib/pipes/safe-html.pipe.mjs +0 -23
  354. package/esm2020/lib/pipes/short-date-time.pipe.mjs +0 -34
  355. package/esm2020/lib/pipes/short-date.pipe.mjs +0 -34
  356. package/esm2020/lib/pipes/short-time.pipe.mjs +0 -34
  357. package/esm2020/lib/pipes/sort.pipe.mjs +0 -49
  358. package/esm2020/lib/pipes/to-injector.pipe.mjs +0 -29
  359. package/esm2020/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +0 -27
  360. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +0 -24
  361. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +0 -24
  362. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +0 -24
  363. package/esm2020/lib/services/config-state.service.mjs +0 -178
  364. package/esm2020/lib/services/content-projection.service.mjs +0 -17
  365. package/esm2020/lib/services/dom-insertion.service.mjs +0 -34
  366. package/esm2020/lib/services/environment.service.mjs +0 -48
  367. package/esm2020/lib/services/http-error-reporter.service.mjs +0 -29
  368. package/esm2020/lib/services/http-wait.service.mjs +0 -75
  369. package/esm2020/lib/services/lazy-load.service.mjs +0 -40
  370. package/esm2020/lib/services/list.service.mjs +0 -102
  371. package/esm2020/lib/services/local-storage.service.mjs +0 -32
  372. package/esm2020/lib/services/localization.service.mjs +0 -217
  373. package/esm2020/lib/services/multi-tenancy.service.mjs +0 -48
  374. package/esm2020/lib/services/permission.service.mjs +0 -63
  375. package/esm2020/lib/services/replaceable-components.service.mjs +0 -49
  376. package/esm2020/lib/services/resource-wait.service.mjs +0 -39
  377. package/esm2020/lib/services/rest.service.mjs +0 -78
  378. package/esm2020/lib/services/router-events.service.mjs +0 -38
  379. package/esm2020/lib/services/router-wait.service.mjs +0 -51
  380. package/esm2020/lib/services/routes.service.mjs +0 -163
  381. package/esm2020/lib/services/session-state.service.mjs +0 -80
  382. package/esm2020/lib/services/subscription.service.mjs +0 -43
  383. package/esm2020/lib/services/track-by.service.mjs +0 -21
  384. package/esm2020/lib/utils/internal-store-utils.mjs +0 -37
  385. package/esm2020/lib/validators/index.mjs +0 -25
  386. package/esm2020/testing/lib/core-testing.module.mjs +0 -67
  387. package/esm2020/testing/lib/services/mock-permission.service.mjs +0 -35
  388. package/esm2020/testing/lib/services/mock-rest.service.mjs +0 -31
  389. package/fesm2015/abp-ng.core-locale.mjs +0 -57
  390. package/fesm2015/abp-ng.core-locale.mjs.map +0 -1
  391. package/fesm2015/abp-ng.core-testing.mjs +0 -146
  392. package/fesm2015/abp-ng.core-testing.mjs.map +0 -1
  393. package/fesm2015/abp-ng.core.mjs +0 -4460
  394. package/fesm2015/abp-ng.core.mjs.map +0 -1
  395. package/fesm2020/abp-ng.core.mjs.map +0 -1
  396. package/src/lib/proxy/README.md +0 -17
  397. /package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs.map +0 -0
@@ -1,77 +0,0 @@
1
- import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, Input, Output, Self, } from '@angular/core';
2
- import { FormGroupDirective } from '@angular/forms';
3
- import { fromEvent } from 'rxjs';
4
- import { debounceTime, filter } from 'rxjs/operators';
5
- import { SubscriptionService } from '../services/subscription.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/forms";
8
- import * as i2 from "../services/subscription.service";
9
- /**
10
- * @deprecated FormSubmitDirective will be removed in V7.0.0. Use `ngSubmit` instead.
11
- */
12
- export class FormSubmitDirective {
13
- constructor(formGroupDirective, host, cdRef, subscription) {
14
- this.formGroupDirective = formGroupDirective;
15
- this.host = host;
16
- this.cdRef = cdRef;
17
- this.subscription = subscription;
18
- this.debounce = 200;
19
- this.markAsDirtyWhenSubmit = true;
20
- this.ngSubmit = new EventEmitter();
21
- this.executedNgSubmit = false;
22
- }
23
- ngOnInit() {
24
- this.subscription.addOne(this.formGroupDirective.ngSubmit, () => {
25
- if (this.markAsDirtyWhenSubmit) {
26
- this.markAsDirty();
27
- }
28
- this.executedNgSubmit = true;
29
- });
30
- const keyup$ = fromEvent(this.host.nativeElement, 'keyup').pipe(debounceTime(this.debounce), filter(event => !(event.target instanceof HTMLTextAreaElement)), filter(event => event && event.key === 'Enter'));
31
- this.subscription.addOne(keyup$, () => {
32
- if (!this.executedNgSubmit) {
33
- this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));
34
- }
35
- this.executedNgSubmit = false;
36
- });
37
- }
38
- markAsDirty() {
39
- const { form } = this.formGroupDirective;
40
- setDirty(form.controls);
41
- form.markAsDirty();
42
- this.cdRef.detectChanges();
43
- }
44
- }
45
- FormSubmitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FormSubmitDirective, deps: [{ token: i1.FormGroupDirective, self: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
46
- FormSubmitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: { debounce: "debounce", notValidateOnSubmit: "notValidateOnSubmit", markAsDirtyWhenSubmit: "markAsDirtyWhenSubmit" }, outputs: { ngSubmit: "ngSubmit" }, providers: [SubscriptionService], ngImport: i0 });
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FormSubmitDirective, decorators: [{
48
- type: Directive,
49
- args: [{
50
- // eslint-disable-next-line @angular-eslint/directive-selector
51
- selector: 'form[ngSubmit][formGroup]',
52
- providers: [SubscriptionService],
53
- }]
54
- }], ctorParameters: function () { return [{ type: i1.FormGroupDirective, decorators: [{
55
- type: Self
56
- }] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i2.SubscriptionService }]; }, propDecorators: { debounce: [{
57
- type: Input
58
- }], notValidateOnSubmit: [{
59
- type: Input
60
- }], markAsDirtyWhenSubmit: [{
61
- type: Input
62
- }], ngSubmit: [{
63
- type: Output
64
- }] } });
65
- function setDirty(controls) {
66
- if (Array.isArray(controls)) {
67
- controls.forEach(group => {
68
- setDirty(group.controls);
69
- });
70
- return;
71
- }
72
- Object.keys(controls).forEach(key => {
73
- controls[key].markAsDirty();
74
- controls[key].updateValueAndValidity();
75
- });
76
- }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zdWJtaXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixJQUFJLEdBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUF3QyxNQUFNLGdCQUFnQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7OztBQUd2RTs7R0FFRztBQU1ILE1BQU0sT0FBTyxtQkFBbUI7SUFlOUIsWUFDa0Isa0JBQXNDLEVBQzlDLElBQWlDLEVBQ2pDLEtBQXdCLEVBQ3hCLFlBQWlDO1FBSHpCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDOUMsU0FBSSxHQUFKLElBQUksQ0FBNkI7UUFDakMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBakIzQyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBT2YsMEJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBRVYsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakQscUJBQWdCLEdBQUcsS0FBSyxDQUFDO0lBT3RCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDOUQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNwQjtZQUVELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQWdCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBNEIsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzNGLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxZQUFZLG1CQUFtQixDQUFDLENBQUMsRUFDL0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDLENBQ2hELENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FDbkMsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FDekQsQ0FBQzthQUNIO1lBRUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUV6QyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQWlELENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDOztnSEF2RFUsbUJBQW1CO29HQUFuQixtQkFBbUIscU5BRm5CLENBQUMsbUJBQW1CLENBQUM7MkZBRXJCLG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzs7MEJBaUJJLElBQUk7dUlBZFAsUUFBUTtzQkFEUCxLQUFLO2dCQUtOLG1CQUFtQjtzQkFEbEIsS0FBSztnQkFJTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBR2EsUUFBUTtzQkFBMUIsTUFBTTs7QUErQ1QsU0FBUyxRQUFRLENBQUMsUUFBa0I7SUFDbEMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQzNCLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdkIsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFpRCxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO0tBQ1I7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNsQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTZWxmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXBEaXJlY3RpdmUsIFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5cclxudHlwZSBDb250cm9scyA9IHsgW2tleTogc3RyaW5nXTogVW50eXBlZEZvcm1Db250cm9sIH0gfCBVbnR5cGVkRm9ybUdyb3VwW107XHJcbi8qKlxyXG4gKiBAZGVwcmVjYXRlZCBGb3JtU3VibWl0RGlyZWN0aXZlIHdpbGwgYmUgcmVtb3ZlZCBpbiBWNy4wLjAuIFVzZSBgbmdTdWJtaXRgIGluc3RlYWQuXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnZm9ybVtuZ1N1Ym1pdF1bZm9ybUdyb3VwXScsXHJcbiAgcHJvdmlkZXJzOiBbU3Vic2NyaXB0aW9uU2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtU3VibWl0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKVxyXG4gIGRlYm91bmNlID0gMjAwO1xyXG5cclxuICAvLyBUT0RPOiBSZW1vdmUgdW51c2VkIGlucHV0XHJcbiAgQElucHV0KClcclxuICBub3RWYWxpZGF0ZU9uU3VibWl0Pzogc3RyaW5nIHwgYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBtYXJrQXNEaXJ0eVdoZW5TdWJtaXQgPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgbmdTdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGV4ZWN1dGVkTmdTdWJtaXQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAU2VsZigpIHByaXZhdGUgZm9ybUdyb3VwRGlyZWN0aXZlOiBGb3JtR3JvdXBEaXJlY3RpdmUsXHJcbiAgICBwcml2YXRlIGhvc3Q6IEVsZW1lbnRSZWY8SFRNTEZvcm1FbGVtZW50PixcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZSh0aGlzLmZvcm1Hcm91cERpcmVjdGl2ZS5uZ1N1Ym1pdCwgKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5tYXJrQXNEaXJ0eVdoZW5TdWJtaXQpIHtcclxuICAgICAgICB0aGlzLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZXhlY3V0ZWROZ1N1Ym1pdCA9IHRydWU7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBrZXl1cCQgPSBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4odGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQsICdrZXl1cCcpLnBpcGUoXHJcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlKSxcclxuICAgICAgZmlsdGVyKGV2ZW50ID0+ICEoZXZlbnQudGFyZ2V0IGluc3RhbmNlb2YgSFRNTFRleHRBcmVhRWxlbWVudCkpLFxyXG4gICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSxcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkT25lKGtleXVwJCwgKCkgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuZXhlY3V0ZWROZ1N1Ym1pdCkge1xyXG4gICAgICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoXHJcbiAgICAgICAgICBuZXcgRXZlbnQoJ3N1Ym1pdCcsIHsgYnViYmxlczogdHJ1ZSwgY2FuY2VsYWJsZTogdHJ1ZSB9KSxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmV4ZWN1dGVkTmdTdWJtaXQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbWFya0FzRGlydHkoKSB7XHJcbiAgICBjb25zdCB7IGZvcm0gfSA9IHRoaXMuZm9ybUdyb3VwRGlyZWN0aXZlO1xyXG5cclxuICAgIHNldERpcnR5KGZvcm0uY29udHJvbHMgYXMgeyBba2V5OiBzdHJpbmddOiBVbnR5cGVkRm9ybUNvbnRyb2wgfSk7XHJcbiAgICBmb3JtLm1hcmtBc0RpcnR5KCk7XHJcblxyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBzZXREaXJ0eShjb250cm9sczogQ29udHJvbHMpIHtcclxuICBpZiAoQXJyYXkuaXNBcnJheShjb250cm9scykpIHtcclxuICAgIGNvbnRyb2xzLmZvckVhY2goZ3JvdXAgPT4ge1xyXG4gICAgICBzZXREaXJ0eShncm91cC5jb250cm9scyBhcyB7IFtrZXk6IHN0cmluZ106IFVudHlwZWRGb3JtQ29udHJvbCB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgT2JqZWN0LmtleXMoY29udHJvbHMpLmZvckVhY2goa2V5ID0+IHtcclxuICAgIGNvbnRyb2xzW2tleV0ubWFya0FzRGlydHkoKTtcclxuICAgIGNvbnRyb2xzW2tleV0udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH0pO1xyXG59XHJcbiJdfQ==
@@ -1,21 +0,0 @@
1
- import { Directive, Output, EventEmitter, ElementRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class InitDirective {
4
- constructor(elRef) {
5
- this.elRef = elRef;
6
- this.init = new EventEmitter();
7
- }
8
- ngAfterViewInit() {
9
- this.init.emit(this.elRef);
10
- }
11
- }
12
- InitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13
- InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: InitDirective, decorators: [{
15
- type: Directive,
16
- args: [{ selector: '[abpInit]' }]
17
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { init: [{
18
- type: Output,
19
- args: ['abpInit']
20
- }] } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pbml0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHM0YsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBb0IsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUZULFNBQUksR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztJQUUvQixDQUFDO0lBRXpDLGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7MEdBUFUsYUFBYTs4RkFBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFO2lHQUVOLElBQUk7c0JBQS9CLE1BQU07dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thYnBJbml0XScgfSlcclxuZXhwb3J0IGNsYXNzIEluaXREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBAT3V0cHV0KCdhYnBJbml0JykgcmVhZG9ubHkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8RWxlbWVudFJlZjxhbnk+PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmKSB7fVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmluaXQuZW1pdCh0aGlzLmVsUmVmKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,74 +0,0 @@
1
- import { ChangeDetectorRef, Directive, Inject, Input, Optional, TemplateRef, ViewContainerRef, } from '@angular/core';
2
- import { ReplaySubject } from 'rxjs';
3
- import { distinctUntilChanged, take } from 'rxjs/operators';
4
- import { PermissionService } from '../services/permission.service';
5
- import { QUEUE_MANAGER } from '../tokens/queue.token';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../services/permission.service";
8
- export class PermissionDirective {
9
- constructor(templateRef, vcRef, permissionService, cdRef, queue) {
10
- this.templateRef = templateRef;
11
- this.vcRef = vcRef;
12
- this.permissionService = permissionService;
13
- this.cdRef = cdRef;
14
- this.queue = queue;
15
- this.runChangeDetection = true;
16
- this.cdrSubject = new ReplaySubject();
17
- this.rendered = false;
18
- }
19
- check() {
20
- if (this.subscription) {
21
- this.subscription.unsubscribe();
22
- }
23
- this.subscription = this.permissionService
24
- .getGrantedPolicy$(this.condition || '')
25
- .pipe(distinctUntilChanged())
26
- .subscribe(isGranted => {
27
- this.vcRef.clear();
28
- if (isGranted)
29
- this.vcRef.createEmbeddedView(this.templateRef);
30
- if (this.runChangeDetection) {
31
- if (!this.rendered) {
32
- this.cdrSubject.next();
33
- }
34
- else {
35
- this.cdRef.detectChanges();
36
- }
37
- }
38
- else {
39
- this.cdRef.markForCheck();
40
- }
41
- });
42
- }
43
- ngOnDestroy() {
44
- if (this.subscription)
45
- this.subscription.unsubscribe();
46
- }
47
- ngOnChanges() {
48
- this.check();
49
- }
50
- ngAfterViewInit() {
51
- this.cdrSubject.pipe(take(1)).subscribe(() => this.queue.add(() => this.cdRef.detectChanges()));
52
- this.rendered = true;
53
- }
54
- }
55
- PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: i1.PermissionService }, { token: i0.ChangeDetectorRef }, { token: QUEUE_MANAGER }], target: i0.ɵɵFactoryTarget.Directive });
56
- PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"], runChangeDetection: ["abpPermissionRunChangeDetection", "runChangeDetection"] }, usesOnChanges: true, ngImport: i0 });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionDirective, decorators: [{
58
- type: Directive,
59
- args: [{
60
- selector: '[abpPermission]',
61
- }]
62
- }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
63
- type: Optional
64
- }] }, { type: i0.ViewContainerRef }, { type: i1.PermissionService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
65
- type: Inject,
66
- args: [QUEUE_MANAGER]
67
- }] }]; }, propDecorators: { condition: [{
68
- type: Input,
69
- args: ['abpPermission']
70
- }], runChangeDetection: [{
71
- type: Input,
72
- args: ['abpPermissionRunChangeDetection']
73
- }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9wZXJtaXNzaW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQU10RCxNQUFNLE9BQU8sbUJBQW1CO0lBVzlCLFlBQ3NCLFdBQTZCLEVBQ3pDLEtBQXVCLEVBQ3ZCLGlCQUFvQyxFQUNwQyxLQUF3QixFQUNGLEtBQW1CO1FBSjdCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUN6QyxVQUFLLEdBQUwsS0FBSyxDQUFrQjtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ0YsVUFBSyxHQUFMLEtBQUssQ0FBYztRQWJULHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUlwRSxlQUFVLEdBQUcsSUFBSSxhQUFhLEVBQVEsQ0FBQztRQUV2QyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBUWQsQ0FBQztJQUVJLEtBQUs7UUFDWCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNqQztRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQjthQUN2QyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQzthQUN2QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzthQUM1QixTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNuQixJQUFJLFNBQVM7Z0JBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDL0QsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUN4QjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2lCQUM1QjthQUNGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDM0I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDOztnSEFyRFUsbUJBQW1CLCtKQWdCcEIsYUFBYTtvR0FoQlosbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OzBCQWFJLFFBQVE7OzBCQUlSLE1BQU07MkJBQUMsYUFBYTs0Q0FmQyxTQUFTO3NCQUFoQyxLQUFLO3VCQUFDLGVBQWU7Z0JBRW9CLGtCQUFrQjtzQkFBM0QsS0FBSzt1QkFBQyxpQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9wdGlvbmFsLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlcGxheVN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wZXJtaXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBRVUVVRV9NQU5BR0VSIH0gZnJvbSAnLi4vdG9rZW5zL3F1ZXVlLnRva2VuJztcclxuaW1wb3J0IHsgUXVldWVNYW5hZ2VyIH0gZnJvbSAnLi4vdXRpbHMvcXVldWUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYWJwUGVybWlzc2lvbl0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoJ2FicFBlcm1pc3Npb24nKSBjb25kaXRpb246IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQElucHV0KCdhYnBQZXJtaXNzaW9uUnVuQ2hhbmdlRGV0ZWN0aW9uJykgcnVuQ2hhbmdlRGV0ZWN0aW9uID0gdHJ1ZTtcclxuXHJcbiAgc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBjZHJTdWJqZWN0ID0gbmV3IFJlcGxheVN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgcmVuZGVyZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxyXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KFFVRVVFX01BTkFHRVIpIHB1YmxpYyBxdWV1ZTogUXVldWVNYW5hZ2VyLFxyXG4gICkge31cclxuXHJcbiAgcHJpdmF0ZSBjaGVjaygpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5wZXJtaXNzaW9uU2VydmljZVxyXG4gICAgICAuZ2V0R3JhbnRlZFBvbGljeSQodGhpcy5jb25kaXRpb24gfHwgJycpXHJcbiAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoaXNHcmFudGVkID0+IHtcclxuICAgICAgICB0aGlzLnZjUmVmLmNsZWFyKCk7XHJcbiAgICAgICAgaWYgKGlzR3JhbnRlZCkgdGhpcy52Y1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZik7XHJcbiAgICAgICAgaWYgKHRoaXMucnVuQ2hhbmdlRGV0ZWN0aW9uKSB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMucmVuZGVyZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5jZHJTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgdGhpcy5jaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5jZHJTdWJqZWN0LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMucXVldWUuYWRkKCgpID0+IHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpKSk7XHJcbiAgICB0aGlzLnJlbmRlcmVkID0gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,132 +0,0 @@
1
- import { Directive, Injector, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
2
- import compare from 'just-compare';
3
- import { filter } from 'rxjs/operators';
4
- import { ReplaceableComponentsService } from '../services/replaceable-components.service';
5
- import { SubscriptionService } from '../services/subscription.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../services/replaceable-components.service";
8
- import * as i2 from "../services/subscription.service";
9
- export class ReplaceableTemplateDirective {
10
- constructor(injector, templateRef, vcRef, replaceableComponents, subscription) {
11
- this.injector = injector;
12
- this.templateRef = templateRef;
13
- this.vcRef = vcRef;
14
- this.replaceableComponents = replaceableComponents;
15
- this.subscription = subscription;
16
- this.providedData = {
17
- inputs: {},
18
- outputs: {},
19
- };
20
- this.context = {};
21
- this.defaultComponentSubscriptions = {};
22
- this.initialized = false;
23
- this.context = {
24
- initTemplate: (ref) => {
25
- this.resetDefaultComponent();
26
- this.defaultComponentRef = ref;
27
- this.setDefaultComponentInputs();
28
- },
29
- };
30
- }
31
- ngOnInit() {
32
- const component$ = this.replaceableComponents
33
- .get$(this.data.componentKey)
34
- .pipe(filter((res = {}) => !this.initialized || !compare(res.component, this.externalComponent)));
35
- this.subscription.addOne(component$, (res = {}) => {
36
- this.vcRef.clear();
37
- this.externalComponent = res.component;
38
- if (this.defaultComponentRef) {
39
- this.resetDefaultComponent();
40
- }
41
- if (res.component) {
42
- this.setProvidedData();
43
- const customInjector = Injector.create({
44
- providers: [{ provide: 'REPLACEABLE_DATA', useValue: this.providedData }],
45
- parent: this.injector,
46
- });
47
- const ref = this.vcRef.createComponent(res.component, {
48
- index: 0,
49
- injector: customInjector,
50
- });
51
- }
52
- else {
53
- this.vcRef.createEmbeddedView(this.templateRef, this.context);
54
- }
55
- this.initialized = true;
56
- });
57
- }
58
- ngOnChanges(changes) {
59
- if (changes?.data?.currentValue?.inputs && this.defaultComponentRef) {
60
- this.setDefaultComponentInputs();
61
- }
62
- }
63
- setDefaultComponentInputs() {
64
- if (!this.defaultComponentRef || (!this.data.inputs && !this.data.outputs))
65
- return;
66
- if (this.data.inputs) {
67
- for (const key in this.data.inputs) {
68
- if (Object.prototype.hasOwnProperty.call(this.data.inputs, key)) {
69
- if (!compare(this.defaultComponentRef[key], this.data.inputs[key].value)) {
70
- this.defaultComponentRef[key] = this.data.inputs[key].value;
71
- }
72
- }
73
- }
74
- }
75
- if (this.data.outputs) {
76
- for (const key in this.data.outputs) {
77
- if (Object.prototype.hasOwnProperty.call(this.data.outputs, key)) {
78
- if (!this.defaultComponentSubscriptions[key]) {
79
- this.defaultComponentSubscriptions[key] = this.defaultComponentRef[key].subscribe((value) => {
80
- this.data.outputs?.[key](value);
81
- });
82
- }
83
- }
84
- }
85
- }
86
- }
87
- setProvidedData() {
88
- this.providedData = { outputs: {}, ...this.data, inputs: {} };
89
- if (!this.data.inputs)
90
- return;
91
- Object.defineProperties(this.providedData.inputs, {
92
- ...Object.keys(this.data.inputs).reduce((acc, key) => ({
93
- ...acc,
94
- [key]: {
95
- enumerable: true,
96
- configurable: true,
97
- get: () => this.data.inputs?.[key]?.value,
98
- ...(this.data.inputs?.[key]?.twoWay && {
99
- set: (newValue) => {
100
- if (this.data.inputs?.[key]) {
101
- this.data.inputs[key].value = newValue;
102
- }
103
- if (this.data.outputs?.[`${key}Change`]) {
104
- this.data.outputs[`${key}Change`](newValue);
105
- }
106
- },
107
- }),
108
- },
109
- }), {}),
110
- });
111
- }
112
- resetDefaultComponent() {
113
- Object.keys(this.defaultComponentSubscriptions).forEach(key => {
114
- this.defaultComponentSubscriptions[key].unsubscribe();
115
- });
116
- this.defaultComponentSubscriptions = {};
117
- this.defaultComponentRef = null;
118
- }
119
- }
120
- ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i1.ReplaceableComponentsService }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
121
- ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
123
- type: Directive,
124
- args: [{
125
- selector: '[abpReplaceableTemplate]',
126
- providers: [SubscriptionService],
127
- }]
128
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.ReplaceableComponentsService }, { type: i2.SubscriptionService }]; }, propDecorators: { data: [{
129
- type: Input,
130
- args: ['abpReplaceableTemplate']
131
- }] } });
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvcmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFJTCxXQUFXLEVBRVgsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUVuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDMUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFNdkUsTUFBTSxPQUFPLDRCQUE0QjtJQW1CdkMsWUFDVSxRQUFrQixFQUNsQixXQUE2QixFQUM3QixLQUF1QixFQUN2QixxQkFBbUQsRUFDbkQsWUFBaUM7UUFKakMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0IsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUE4QjtRQUNuRCxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFwQjNDLGlCQUFZLEdBQUc7WUFDYixNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1NBQytDLENBQUM7UUFFN0QsWUFBTyxHQUFHLEVBQVMsQ0FBQztRQU1wQixrQ0FBNkIsR0FBRyxFQUFrQyxDQUFDO1FBRW5FLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBU2xCLElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixZQUFZLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDekIsSUFBSSxD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OUlVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLHlHQUY1QixDQUFDLG1CQUFtQixDQUFDOzJGQUVyQiw0QkFBNEI7a0JBSnhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQ2pDO3FPQUdDLElBQUk7c0JBREgsS0FBSzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25Jbml0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVHlwZSxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgUmVwbGFjZWFibGVDb21wb25lbnRzIH0gZnJvbSAnLi4vbW9kZWxzL3JlcGxhY2VhYmxlLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSZXBsYWNlYWJsZUNvbXBvbmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcmVwbGFjZWFibGUtY29tcG9uZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3N1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FicFJlcGxhY2VhYmxlVGVtcGxhdGVdJyxcclxuICBwcm92aWRlcnM6IFtTdWJzY3JpcHRpb25TZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlcGxhY2VhYmxlVGVtcGxhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCdhYnBSZXBsYWNlYWJsZVRlbXBsYXRlJylcclxuICBkYXRhITogUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlVGVtcGxhdGVEaXJlY3RpdmVJbnB1dDxhbnksIGFueT47XHJcblxyXG4gIHByb3ZpZGVkRGF0YSA9IHtcclxuICAgIGlucHV0czoge30sXHJcbiAgICBvdXRwdXRzOiB7fSxcclxuICB9IGFzIFJlcGxhY2VhYmxlQ29tcG9uZW50cy5SZXBsYWNlYWJsZVRlbXBsYXRlRGF0YTxhbnksIGFueT47XHJcblxyXG4gIGNvbnRleHQgPSB7fSBhcyBhbnk7XHJcblxyXG4gIGV4dGVybmFsQ29tcG9uZW50ITogVHlwZTxhbnk+O1xyXG5cclxuICBkZWZhdWx0Q29tcG9uZW50UmVmOiBhbnk7XHJcblxyXG4gIGRlZmF1bHRDb21wb25lbnRTdWJzY3JpcHRpb25zID0ge30gYXMgQUJQLkRpY3Rpb25hcnk8U3Vic2NyaXB0aW9uPjtcclxuXHJcbiAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXHJcbiAgICBwcml2YXRlIHZjUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSByZXBsYWNlYWJsZUNvbXBvbmVudHM6IFJlcGxhY2VhYmxlQ29tcG9uZW50c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMuY29udGV4dCA9IHtcclxuICAgICAgaW5pdFRlbXBsYXRlOiAocmVmOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLnJlc2V0RGVmYXVsdENvbXBvbmVudCgpO1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZiA9IHJlZjtcclxuICAgICAgICB0aGlzLnNldERlZmF1bHRDb21wb25lbnRJbnB1dHMoKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IGNvbXBvbmVudCQgPSB0aGlzLnJlcGxhY2VhYmxlQ29tcG9uZW50c1xyXG4gICAgICAuZ2V0JCh0aGlzLmRhdGEuY29tcG9uZW50S2V5KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAocmVzID0ge30gYXMgUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50KSA9PlxyXG4gICAgICAgICAgICAhdGhpcy5pbml0aWFsaXplZCB8fCAhY29tcGFyZShyZXMuY29tcG9uZW50LCB0aGlzLmV4dGVybmFsQ29tcG9uZW50KSxcclxuICAgICAgICApLFxyXG4gICAgICApO1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShcclxuICAgICAgY29tcG9uZW50JCxcclxuICAgICAgKHJlcyA9IHt9IGFzIFJlcGxhY2VhYmxlQ29tcG9uZW50cy5SZXBsYWNlYWJsZUNvbXBvbmVudCkgPT4ge1xyXG4gICAgICAgIHRoaXMudmNSZWYuY2xlYXIoKTtcclxuICAgICAgICB0aGlzLmV4dGVybmFsQ29tcG9uZW50ID0gcmVzLmNvbXBvbmVudDtcclxuICAgICAgICBpZiAodGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmKSB7XHJcbiAgICAgICAgICB0aGlzLnJlc2V0RGVmYXVsdENvbXBvbmVudCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlcy5jb21wb25lbnQpIHtcclxuICAgICAgICAgIHRoaXMuc2V0UHJvdmlkZWREYXRhKCk7XHJcbiAgICAgICAgICBjb25zdCBjdXN0b21JbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogJ1JFUExBQ0VBQkxFX0RBVEEnLCB1c2VWYWx1ZTogdGhpcy5wcm92aWRlZERhdGEgfV0sXHJcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgY29uc3QgcmVmID0gdGhpcy52Y1JlZi5jcmVhdGVDb21wb25lbnQocmVzLmNvbXBvbmVudCwge1xyXG4gICAgICAgICAgICBpbmRleDogMCxcclxuICAgICAgICAgICAgaW5qZWN0b3I6IGN1c3RvbUluamVjdG9yLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudmNSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHRoaXMuY29udGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgfSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcz8uZGF0YT8uY3VycmVudFZhbHVlPy5pbnB1dHMgJiYgdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmKSB7XHJcbiAgICAgIHRoaXMuc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpIHtcclxuICAgIGlmICghdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmIHx8ICghdGhpcy5kYXRhLmlucHV0cyAmJiAhdGhpcy5kYXRhLm91dHB1dHMpKSByZXR1cm47XHJcblxyXG4gICAgaWYgKHRoaXMuZGF0YS5pbnB1dHMpIHtcclxuICAgICAgZm9yIChjb25zdCBrZXkgaW4gdGhpcy5kYXRhLmlucHV0cykge1xyXG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5kYXRhLmlucHV0cywga2V5KSkge1xyXG4gICAgICAgICAgaWYgKCFjb21wYXJlKHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldLCB0aGlzLmRhdGEuaW5wdXRzW2tleV0udmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldID0gdGhpcy5kYXRhLmlucHV0c1trZXldLnZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmRhdGEub3V0cHV0cykge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLmRhdGEub3V0cHV0cykge1xyXG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5kYXRhLm91dHB1dHMsIGtleSkpIHtcclxuICAgICAgICAgIGlmICghdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9uc1trZXldKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFN1YnNjcmlwdGlvbnNba2V5XSA9IHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAodmFsdWU6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm91dHB1dHM/LltrZXldKHZhbHVlKTtcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UHJvdmlkZWREYXRhKCkge1xyXG4gICAgdGhpcy5wcm92aWRlZERhdGEgPSB7IG91dHB1dHM6IHt9LCAuLi50aGlzLmRhdGEsIGlucHV0czoge30gfTtcclxuXHJcbiAgICBpZiAoIXRoaXMuZGF0YS5pbnB1dHMpIHJldHVybjtcclxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMucHJvdmlkZWREYXRhLmlucHV0cywge1xyXG4gICAgICAuLi5PYmplY3Qua2V5cyh0aGlzLmRhdGEuaW5wdXRzKS5yZWR1Y2UoXHJcbiAgICAgICAgKGFjYywga2V5KSA9PiAoe1xyXG4gICAgICAgICAgLi4uYWNjLFxyXG4gICAgICAgICAgW2tleV06IHtcclxuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICBnZXQ6ICgpID0+IHRoaXMuZGF0YS5pbnB1dHM/LltrZXldPy52YWx1ZSxcclxuICAgICAgICAgICAgLi4uKHRoaXMuZGF0YS5pbnB1dHM/LltrZXldPy50d29XYXkgJiYge1xyXG4gICAgICAgICAgICAgIHNldDogKG5ld1ZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuaW5wdXRzPy5ba2V5XSkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRhdGEuaW5wdXRzW2tleV0udmFsdWUgPSBuZXdWYWx1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEub3V0cHV0cz8uW2Ake2tleX1DaGFuZ2VgXSkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRhdGEub3V0cHV0c1tgJHtrZXl9Q2hhbmdlYF0obmV3VmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KSxcclxuICAgICAgICB7fSxcclxuICAgICAgKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXREZWZhdWx0Q29tcG9uZW50KCkge1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucykuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRTdWJzY3JpcHRpb25zW2tleV0udW5zdWJzY3JpYmUoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucyA9IHt9IGFzIEFCUC5EaWN0aW9uYXJ5PFN1YnNjcmlwdGlvbj47XHJcbiAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRSZWYgPSBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,32 +0,0 @@
1
- import { Directive, ElementRef, EventEmitter, Output } from '@angular/core';
2
- import { fromEvent } from 'rxjs';
3
- import { SubscriptionService } from '../services/subscription.service';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../services/subscription.service";
6
- export class StopPropagationDirective {
7
- constructor(el, subscription) {
8
- this.el = el;
9
- this.subscription = subscription;
10
- this.stopPropEvent = new EventEmitter();
11
- }
12
- ngOnInit() {
13
- this.subscription.addOne(fromEvent(this.el.nativeElement, 'click'), event => {
14
- event.stopPropagation();
15
- this.stopPropEvent.emit(event);
16
- });
17
- }
18
- }
19
- StopPropagationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: i1.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
20
- StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: StopPropagationDirective, decorators: [{
22
- type: Directive,
23
- args: [{
24
- // eslint-disable-next-line @angular-eslint/directive-selector
25
- selector: '[click.stop]',
26
- providers: [SubscriptionService],
27
- }]
28
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SubscriptionService }]; }, propDecorators: { stopPropEvent: [{
29
- type: Output,
30
- args: ['click.stop']
31
- }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9zdG9wLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU92RSxNQUFNLE9BQU8sd0JBQXdCO0lBR25DLFlBQW9CLEVBQWMsRUFBVSxZQUFpQztRQUF6RCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBRjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUVFLENBQUM7SUFFakYsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBYSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUN0RixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztxSEFWVSx3QkFBd0I7eUdBQXhCLHdCQUF3QixpRkFGeEIsQ0FBQyxtQkFBbUIsQ0FBQzsyRkFFckIsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzttSUFFZ0MsYUFBYTtzQkFBM0MsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ1tjbGljay5zdG9wXScsXHJcbiAgcHJvdmlkZXJzOiBbU3Vic2NyaXB0aW9uU2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBPdXRwdXQoJ2NsaWNrLnN0b3AnKSByZWFkb25seSBzdG9wUHJvcEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGRPbmUoZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2NsaWNrJyksIGV2ZW50ID0+IHtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIHRoaXMuc3RvcFByb3BFdmVudC5lbWl0KGV2ZW50KTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,44 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { of } from 'rxjs';
4
- import { tap } from 'rxjs/operators';
5
- import { HttpErrorReporterService } from '../services/http-error-reporter.service';
6
- import { PermissionService } from '../services/permission.service';
7
- import { RoutesService } from '../services/routes.service';
8
- import { findRoute, getRoutePath } from '../utils/route-utils';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/router";
11
- import * as i2 from "../services/routes.service";
12
- import * as i3 from "../services/permission.service";
13
- import * as i4 from "../services/http-error-reporter.service";
14
- export class PermissionGuard {
15
- constructor(router, routesService, permissionService, httpErrorReporter) {
16
- this.router = router;
17
- this.routesService = routesService;
18
- this.permissionService = permissionService;
19
- this.httpErrorReporter = httpErrorReporter;
20
- }
21
- canActivate(route, state) {
22
- let { requiredPolicy } = route.data || {};
23
- if (!requiredPolicy) {
24
- const routeFound = findRoute(this.routesService, getRoutePath(this.router, state.url));
25
- requiredPolicy = routeFound?.requiredPolicy;
26
- }
27
- if (!requiredPolicy)
28
- return of(true);
29
- return this.permissionService.getGrantedPolicy$(requiredPolicy).pipe(tap(access => {
30
- if (!access) {
31
- this.httpErrorReporter.reportError({ status: 403 });
32
- }
33
- }));
34
- }
35
- }
36
- PermissionGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, deps: [{ token: i1.Router }, { token: i2.RoutesService }, { token: i3.PermissionService }, { token: i4.HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
37
- PermissionGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, providedIn: 'root' });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, decorators: [{
39
- type: Injectable,
40
- args: [{
41
- providedIn: 'root',
42
- }]
43
- }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.RoutesService }, { type: i3.PermissionService }, { type: i4.HttpErrorReporterService }]; } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9ndWFyZHMvcGVybWlzc2lvbi5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUMsTUFBTSxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ25HLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFLL0QsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFDVSxNQUFjLEVBQ2QsYUFBNEIsRUFDNUIsaUJBQW9DLEVBQ3BDLGlCQUEyQztRQUgzQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO0lBQ2xELENBQUM7SUFFSixXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUNuRSxJQUFJLEVBQUUsY0FBYyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFFMUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNuQixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RixjQUFjLEdBQUcsVUFBVSxFQUFFLGNBQWMsQ0FBQztTQUM3QztRQUVELElBQUksQ0FBQyxjQUFjO1lBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUNsRSxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUF1QixDQUFDLENBQUM7YUFDMUU7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7NEdBekJVLGVBQWU7Z0hBQWYsZUFBZSxjQUZkLE1BQU07MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZSwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXBvcnRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9odHRwLWVycm9yLXJlcG9ydGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Blcm1pc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yb3V0ZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IGZpbmRSb3V0ZSwgZ2V0Um91dGVQYXRoIH0gZnJvbSAnLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25HdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJvdXRlc1NlcnZpY2U6IFJvdXRlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHBlcm1pc3Npb25TZXJ2aWNlOiBQZXJtaXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cEVycm9yUmVwb3J0ZXI6IEh0dHBFcnJvclJlcG9ydGVyU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgbGV0IHsgcmVxdWlyZWRQb2xpY3kgfSA9IHJvdXRlLmRhdGEgfHwge307XHJcblxyXG4gICAgaWYgKCFyZXF1aXJlZFBvbGljeSkge1xyXG4gICAgICBjb25zdCByb3V0ZUZvdW5kID0gZmluZFJvdXRlKHRoaXMucm91dGVzU2VydmljZSwgZ2V0Um91dGVQYXRoKHRoaXMucm91dGVyLCBzdGF0ZS51cmwpKTtcclxuICAgICAgcmVxdWlyZWRQb2xpY3kgPSByb3V0ZUZvdW5kPy5yZXF1aXJlZFBvbGljeTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXJlcXVpcmVkUG9saWN5KSByZXR1cm4gb2YodHJ1ZSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvblNlcnZpY2UuZ2V0R3JhbnRlZFBvbGljeSQocmVxdWlyZWRQb2xpY3kpLnBpcGUoXHJcbiAgICAgIHRhcChhY2Nlc3MgPT4ge1xyXG4gICAgICAgIGlmICghYWNjZXNzKSB7XHJcbiAgICAgICAgICB0aGlzLmh0dHBFcnJvclJlcG9ydGVyLnJlcG9ydEVycm9yKHsgc3RhdHVzOiA0MDMgfSBhcyBIdHRwRXJyb3JSZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,51 +0,0 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { RoutesService } from '../services/routes.service';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../services/routes.service";
6
- import * as i2 from "@angular/router";
7
- export class RoutesHandler {
8
- constructor(routes, router) {
9
- this.routes = routes;
10
- this.router = router;
11
- this.addRoutes();
12
- }
13
- addRoutes() {
14
- this.router?.config?.forEach(({ path = '', data }) => {
15
- const routes = data?.routes;
16
- if (!routes)
17
- return;
18
- if (Array.isArray(routes)) {
19
- this.routes.add(routes);
20
- }
21
- else {
22
- const routesFlatten = flatRoutes([{ path, ...routes }], { path: '' });
23
- this.routes.add(routesFlatten);
24
- }
25
- });
26
- }
27
- }
28
- RoutesHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, deps: [{ token: i1.RoutesService }, { token: i2.Router, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
29
- RoutesHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, providedIn: 'root' });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, decorators: [{
31
- type: Injectable,
32
- args: [{
33
- providedIn: 'root',
34
- }]
35
- }], ctorParameters: function () { return [{ type: i1.RoutesService }, { type: i2.Router, decorators: [{
36
- type: Optional
37
- }] }]; } });
38
- function flatRoutes(routes, parent) {
39
- if (!routes)
40
- return [];
41
- return routes.reduce((acc, route) => {
42
- const { children, ...current } = {
43
- ...route,
44
- parentName: parent.name,
45
- path: (parent.path + '/' + route.path).replace(/\/\//g, '/'),
46
- };
47
- acc.push(current, ...flatRoutes(children, current));
48
- return acc;
49
- }, []);
50
- }
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvaGFuZGxlcnMvcm91dGVzLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUszRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUFvQixNQUFxQixFQUFzQixNQUFjO1FBQXpELFdBQU0sR0FBTixNQUFNLENBQWU7UUFBc0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUMzRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFNBQVM7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLE1BQXNCLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBYSxFQUFFLEVBQUU7WUFDL0UsTUFBTSxNQUFNLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPO1lBRXBCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDekI7aUJBQU07Z0JBQ0wsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ2hDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzswR0FqQlUsYUFBYTs4R0FBYixhQUFhLGNBRlosTUFBTTsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBRTZDLFFBQVE7O0FBbUJ0RCxTQUFTLFVBQVUsQ0FBQyxNQUFrQixFQUFFLE1BQVc7SUFDakQsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUV2QixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDbEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHO1lBQy9CLEdBQUcsS0FBSztZQUNSLFVBQVUsRUFBRSxNQUFNLENBQUMsSUFBSTtZQUN2QixJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDN0QsQ0FBQztRQUVGLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBRXBELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxFQUFFLEVBQWlCLENBQUMsQ0FBQztBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFJvdXRlc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yb3V0ZXMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm91dGVzSGFuZGxlciB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXM6IFJvdXRlc1NlcnZpY2UsIEBPcHRpb25hbCgpIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuICAgIHRoaXMuYWRkUm91dGVzKCk7XHJcbiAgfVxyXG5cclxuICBhZGRSb3V0ZXMoKSB7XHJcbiAgICAodGhpcy5yb3V0ZXI/LmNvbmZpZyBhcyBSb3V0ZURhdGFbXSk/LmZvckVhY2goKHsgcGF0aCA9ICcnLCBkYXRhIH06IFJvdXRlRGF0YSkgPT4ge1xyXG4gICAgICBjb25zdCByb3V0ZXMgPSBkYXRhPy5yb3V0ZXM7XHJcbiAgICAgIGlmICghcm91dGVzKSByZXR1cm47XHJcblxyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3V0ZXMpKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXMuYWRkKHJvdXRlcyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3Qgcm91dGVzRmxhdHRlbiA9IGZsYXRSb3V0ZXMoW3sgcGF0aCwgLi4ucm91dGVzIH1dLCB7IHBhdGg6ICcnIH0pO1xyXG4gICAgICAgIHRoaXMucm91dGVzLmFkZChyb3V0ZXNGbGF0dGVuKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBmbGF0Um91dGVzKHJvdXRlczogUm91dGVEZWZbXSwgcGFyZW50OiBhbnkpIHtcclxuICBpZiAoIXJvdXRlcykgcmV0dXJuIFtdO1xyXG5cclxuICByZXR1cm4gcm91dGVzLnJlZHVjZSgoYWNjLCByb3V0ZSkgPT4ge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiwgLi4uY3VycmVudCB9ID0ge1xyXG4gICAgICAuLi5yb3V0ZSxcclxuICAgICAgcGFyZW50TmFtZTogcGFyZW50Lm5hbWUsXHJcbiAgICAgIHBhdGg6IChwYXJlbnQucGF0aCArICcvJyArIHJvdXRlLnBhdGgpLnJlcGxhY2UoL1xcL1xcLy9nLCAnLycpLFxyXG4gICAgfTtcclxuXHJcbiAgICBhY2MucHVzaChjdXJyZW50LCAuLi5mbGF0Um91dGVzKGNoaWxkcmVuLCBjdXJyZW50KSk7XHJcblxyXG4gICAgcmV0dXJuIGFjYztcclxuICB9LCBbXSBhcyBBQlAuUm91dGVbXSk7XHJcbn1cclxuXHJcbnR5cGUgUm91dGVEZWYgPSBBQlAuUm91dGUgJiB7IGNoaWxkcmVuOiBSb3V0ZURlZltdIH07XHJcbnR5cGUgUm91dGVEYXRhID0gUm91dGUgJiB7IGRhdGE6IHsgcm91dGVzOiBSb3V0ZURlZiB8IEFycmF5PFJvdXRlRGVmPiB9IH07XHJcbiJdfQ==
@@ -1,27 +0,0 @@
1
- import { HttpHeaders } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { finalize } from 'rxjs/operators';
4
- import { HttpWaitService } from '../services';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../services";
7
- export class ApiInterceptor {
8
- constructor(httpWaitService) {
9
- this.httpWaitService = httpWaitService;
10
- }
11
- getAdditionalHeaders(existingHeaders) {
12
- return existingHeaders || new HttpHeaders();
13
- }
14
- intercept(request, next) {
15
- this.httpWaitService.addRequest(request);
16
- return next.handle(request).pipe(finalize(() => this.httpWaitService.deleteRequest(request)));
17
- }
18
- }
19
- ApiInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, deps: [{ token: i1.HttpWaitService }], target: i0.ɵɵFactoryTarget.Injectable });
20
- ApiInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, providedIn: 'root' });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, decorators: [{
22
- type: Injectable,
23
- args: [{
24
- providedIn: 'root',
25
- }]
26
- }], ctorParameters: function () { return [{ type: i1.HttpWaitService }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLFdBQVcsRUFBZ0MsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFLOUMsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQUcsQ0FBQztJQUV4RCxvQkFBb0IsQ0FBQyxlQUE2QjtRQUNoRCxPQUFPLGVBQWUsSUFBSSxJQUFJLFdBQVcsRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQzs7MkdBVlUsY0FBYzsrR0FBZCxjQUFjLGNBRmIsTUFBTTsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIYW5kbGVyLCBIdHRwSGVhZGVycywgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cFdhaXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaUludGVyY2VwdG9yIGltcGxlbWVudHMgSUFwaUludGVyY2VwdG9yIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBXYWl0U2VydmljZTogSHR0cFdhaXRTZXJ2aWNlKSB7fVxyXG5cclxuICBnZXRBZGRpdGlvbmFsSGVhZGVycyhleGlzdGluZ0hlYWRlcnM/OiBIdHRwSGVhZGVycykge1xyXG4gICAgcmV0dXJuIGV4aXN0aW5nSGVhZGVycyB8fCBuZXcgSHR0cEhlYWRlcnMoKTtcclxuICB9XHJcblxyXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcikge1xyXG4gICAgdGhpcy5odHRwV2FpdFNlcnZpY2UuYWRkUmVxdWVzdChyZXF1ZXN0KTtcclxuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuaHR0cFdhaXRTZXJ2aWNlLmRlbGV0ZVJlcXVlc3QocmVxdWVzdCkpKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFwaUludGVyY2VwdG9yIGV4dGVuZHMgSHR0cEludGVyY2VwdG9yIHtcclxuICBnZXRBZGRpdGlvbmFsSGVhZGVycyhleGlzdGluZ0hlYWRlcnM/OiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzO1xyXG59XHJcbiJdfQ==
@@ -1,16 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { LocalizationPipe } from './pipes/localization.pipe';
3
- import * as i0 from "@angular/core";
4
- export class LocalizationModule {
5
- }
6
- LocalizationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- LocalizationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, declarations: [LocalizationPipe], exports: [LocalizationPipe] });
8
- LocalizationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, decorators: [{
10
- type: NgModule,
11
- args: [{
12
- exports: [LocalizationPipe],
13
- declarations: [LocalizationPipe],
14
- }]
15
- }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9sb2NhbGl6YXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTTdELE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFGZCxnQkFBZ0IsYUFEckIsZ0JBQWdCO2dIQUdmLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUo5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25QaXBlIH0gZnJvbSAnLi9waXBlcy9sb2NhbGl6YXRpb24ucGlwZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGV4cG9ydHM6IFtMb2NhbGl6YXRpb25QaXBlXSxcclxuICBkZWNsYXJhdGlvbnM6IFtMb2NhbGl6YXRpb25QaXBlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXphdGlvbk1vZHVsZSB7fVxyXG4iXX0=
@@ -1,33 +0,0 @@
1
- import { Injectable, Pipe } from '@angular/core';
2
- import { LocalizationService } from '../services/localization.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../services/localization.service";
5
- export class LocalizationPipe {
6
- constructor(localization) {
7
- this.localization = localization;
8
- }
9
- transform(value = '', ...interpolateParams) {
10
- const params = interpolateParams.reduce((acc, val) => {
11
- if (!acc) {
12
- return val;
13
- }
14
- if (!val) {
15
- return acc;
16
- }
17
- return Array.isArray(val) ? [...acc, ...val] : [...acc, val];
18
- }, []) || [];
19
- return this.localization.instant(value, ...params);
20
- }
21
- }
22
- LocalizationPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Pipe });
23
- LocalizationPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, name: "abpLocalization" });
24
- LocalizationPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, decorators: [{
26
- type: Injectable
27
- }, {
28
- type: Pipe,
29
- args: [{
30
- name: 'abpLocalization',
31
- }]
32
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvcGlwZXMvbG9jYWxpemF0aW9uLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWhFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFBRyxDQUFDO0lBRXpELFNBQVMsQ0FDUCxRQUEwQyxFQUFFLEVBQzVDLEdBQUcsaUJBQW9EO1FBRXZELE1BQU0sTUFBTSxHQUNWLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUNwQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLE9BQU8sR0FBRyxDQUFDO2FBQ1o7WUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLE9BQU8sR0FBRyxDQUFDO2FBQ1o7WUFDRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvRCxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs2R0FsQlUsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUo1QixVQUFVOztrQkFDVixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxpQkFBaUI7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCB9IGZyb20gJy4uL21vZGVscy9sb2NhbGl6YXRpb24nO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2FicExvY2FsaXphdGlvbicsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBsb2NhbGl6YXRpb246IExvY2FsaXphdGlvblNlcnZpY2UpIHt9XHJcblxyXG4gIHRyYW5zZm9ybShcclxuICAgIHZhbHVlOiBzdHJpbmcgfCBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCA9ICcnLFxyXG4gICAgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IChzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZClbXVxyXG4gICk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwYXJhbXMgPVxyXG4gICAgICBpbnRlcnBvbGF0ZVBhcmFtcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XHJcbiAgICAgICAgaWYgKCFhY2MpIHtcclxuICAgICAgICAgIHJldHVybiB2YWw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdmFsKSB7XHJcbiAgICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWwpID8gWy4uLmFjYywgLi4udmFsXSA6IFsuLi5hY2MsIHZhbF07XHJcbiAgICAgIH0sIFtdKSB8fCBbXTtcclxuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvbi5pbnN0YW50KHZhbHVlLCAuLi5wYXJhbXMpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,23 +0,0 @@
1
- import { inject, Injectable, Pipe, SecurityContext } from '@angular/core';
2
- import { DomSanitizer } from '@angular/platform-browser';
3
- import * as i0 from "@angular/core";
4
- export class SafeHtmlPipe {
5
- constructor() {
6
- this.sanitizer = inject(DomSanitizer);
7
- }
8
- transform(value) {
9
- if (typeof value !== 'string')
10
- return '';
11
- return this.sanitizer.sanitize(SecurityContext.HTML, value);
12
- }
13
- }
14
- SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
- SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, name: "abpSafeHtml" });
16
- SafeHtmlPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, decorators: [{
18
- type: Injectable
19
- }, {
20
- type: Pipe,
21
- args: [{ name: 'abpSafeHtml' }]
22
- }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvcGlwZXMvc2FmZS1odG1sLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUl6RCxNQUFNLE9BQU8sWUFBWTtJQUZ6QjtRQUdtQixjQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBTW5EO0lBSkMsU0FBUyxDQUFDLEtBQWE7UUFDckIsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7O3lHQU5VLFlBQVk7dUdBQVosWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRnhCLFVBQVU7O2tCQUNWLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBTZWN1cml0eUNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbkBQaXBlKHsgbmFtZTogJ2FicFNhZmVIdG1sJyB9KVxyXG5leHBvcnQgY2xhc3MgU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHJldHVybiAnJztcclxuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5zYW5pdGl6ZShTZWN1cml0eUNvbnRleHQuSFRNTCwgdmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=