@abp/ng.core 7.2.2 → 7.3.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/README.md +129 -2
  2. package/{esm2020 → esm2022}/abp-ng.core.mjs +4 -4
  3. package/esm2022/lib/abstracts/abstract-guard.mjs +2 -0
  4. package/{esm2020 → esm2022}/lib/abstracts/auth-response.model.mjs +1 -1
  5. package/esm2022/lib/abstracts/auth.guard.mjs +18 -0
  6. package/esm2022/lib/abstracts/auth.service.mjs +46 -0
  7. package/esm2022/lib/abstracts/index.mjs +6 -0
  8. package/esm2022/lib/abstracts/ng-model.component.mjs +60 -0
  9. package/esm2022/lib/clients/http.client.mjs +29 -0
  10. package/{esm2020 → esm2022}/lib/clients/index.mjs +1 -1
  11. package/esm2022/lib/components/dynamic-layout.component.mjs +101 -0
  12. package/{esm2020 → esm2022}/lib/components/index.mjs +3 -3
  13. package/esm2022/lib/components/replaceable-route-container.component.mjs +43 -0
  14. package/esm2022/lib/components/router-outlet.component.mjs +16 -0
  15. package/{esm2020 → esm2022}/lib/constants/different-locales.mjs +336 -336
  16. package/{esm2020 → esm2022}/lib/constants/index.mjs +1 -1
  17. package/esm2022/lib/core.module.mjs +285 -0
  18. package/esm2022/lib/directives/autofocus.directive.mjs +31 -0
  19. package/esm2022/lib/directives/caps-lock.directive.mjs +42 -0
  20. package/esm2022/lib/directives/debounce.directive.mjs +37 -0
  21. package/esm2022/lib/directives/for.directive.mjs +160 -0
  22. package/esm2022/lib/directives/form-submit.directive.mjs +78 -0
  23. package/esm2022/lib/directives/index.mjs +11 -0
  24. package/esm2022/lib/directives/init.directive.mjs +22 -0
  25. package/esm2022/lib/directives/permission.directive.mjs +75 -0
  26. package/esm2022/lib/directives/replaceable-template.directive.mjs +133 -0
  27. package/esm2022/lib/directives/show-password.directive.mjs +26 -0
  28. package/esm2022/lib/directives/stop-propagation.directive.mjs +33 -0
  29. package/{esm2020 → esm2022}/lib/enums/common.mjs +1 -1
  30. package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
  31. package/{esm2020 → esm2022}/lib/guards/index.mjs +1 -1
  32. package/esm2022/lib/guards/permission.guard.mjs +41 -0
  33. package/esm2022/lib/handlers/routes.handler.mjs +52 -0
  34. package/esm2022/lib/interceptors/api.interceptor.mjs +28 -0
  35. package/{esm2020 → esm2022}/lib/interceptors/index.mjs +1 -1
  36. package/esm2022/lib/localization.module.mjs +17 -0
  37. package/{esm2020 → esm2022}/lib/models/auth.mjs +1 -1
  38. package/{esm2020 → esm2022}/lib/models/common.mjs +1 -1
  39. package/{esm2020 → esm2022}/lib/models/dtos.mjs +134 -134
  40. package/{esm2020 → esm2022}/lib/models/environment.mjs +1 -1
  41. package/{esm2020 → esm2022}/lib/models/index.mjs +9 -9
  42. package/{esm2020 → esm2022}/lib/models/localization.mjs +1 -1
  43. package/{esm2020 → esm2022}/lib/models/replaceable-components.mjs +1 -1
  44. package/{esm2020 → esm2022}/lib/models/rest.mjs +1 -1
  45. package/{esm2020 → esm2022}/lib/models/session.mjs +1 -1
  46. package/{esm2020 → esm2022}/lib/models/utility.mjs +1 -1
  47. package/{esm2020 → esm2022}/lib/pipes/index.mjs +7 -7
  48. package/esm2022/lib/pipes/localization.pipe.mjs +34 -0
  49. package/esm2022/lib/pipes/safe-html.pipe.mjs +24 -0
  50. package/esm2022/lib/pipes/short-date-time.pipe.mjs +35 -0
  51. package/esm2022/lib/pipes/short-date.pipe.mjs +35 -0
  52. package/esm2022/lib/pipes/short-time.pipe.mjs +35 -0
  53. package/esm2022/lib/pipes/sort.pipe.mjs +50 -0
  54. package/esm2022/lib/pipes/to-injector.pipe.mjs +30 -0
  55. package/{esm2020 → esm2022}/lib/providers/cookie-language.provider.mjs +21 -21
  56. package/{esm2020 → esm2022}/lib/providers/include-localization-resources.provider.mjs +5 -5
  57. package/{esm2020 → esm2022}/lib/providers/locale.provider.mjs +25 -25
  58. package/esm2022/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +28 -0
  59. package/{esm2020 → esm2022}/lib/proxy/pages/abp/multi-tenancy/index.mjs +1 -1
  60. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +25 -0
  61. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.mjs +1 -1
  62. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +25 -0
  63. package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +25 -0
  64. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.mjs +5 -5
  65. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.mjs +1 -1
  66. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.mjs +1 -1
  67. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.mjs +1 -1
  68. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.mjs +1 -1
  69. package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.mjs +1 -1
  70. package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/index.mjs +1 -1
  71. package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/models.mjs +1 -1
  72. package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/index.mjs +1 -1
  73. package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/models.mjs +1 -1
  74. package/{esm2020 → esm2022}/lib/proxy/volo/abp/models.mjs +1 -1
  75. package/esm2022/lib/services/config-state.service.mjs +182 -0
  76. package/esm2022/lib/services/content-projection.service.mjs +18 -0
  77. package/esm2022/lib/services/dom-insertion.service.mjs +35 -0
  78. package/esm2022/lib/services/environment.service.mjs +49 -0
  79. package/esm2022/lib/services/http-error-reporter.service.mjs +30 -0
  80. package/esm2022/lib/services/http-wait.service.mjs +76 -0
  81. package/{esm2020 → esm2022}/lib/services/index.mjs +21 -21
  82. package/esm2022/lib/services/lazy-load.service.mjs +41 -0
  83. package/esm2022/lib/services/list.service.mjs +103 -0
  84. package/esm2022/lib/services/local-storage.service.mjs +33 -0
  85. package/esm2022/lib/services/localization.service.mjs +218 -0
  86. package/esm2022/lib/services/multi-tenancy.service.mjs +49 -0
  87. package/esm2022/lib/services/permission.service.mjs +64 -0
  88. package/esm2022/lib/services/replaceable-components.service.mjs +50 -0
  89. package/esm2022/lib/services/resource-wait.service.mjs +40 -0
  90. package/esm2022/lib/services/rest.service.mjs +79 -0
  91. package/esm2022/lib/services/router-events.service.mjs +39 -0
  92. package/esm2022/lib/services/router-wait.service.mjs +52 -0
  93. package/esm2022/lib/services/routes.service.mjs +165 -0
  94. package/esm2022/lib/services/session-state.service.mjs +81 -0
  95. package/esm2022/lib/services/subscription.service.mjs +44 -0
  96. package/esm2022/lib/services/track-by.service.mjs +22 -0
  97. package/{esm2020 → esm2022}/lib/strategies/container.strategy.mjs +37 -37
  98. package/{esm2020 → esm2022}/lib/strategies/content-security.strategy.mjs +29 -29
  99. package/{esm2020 → esm2022}/lib/strategies/content.strategy.mjs +51 -51
  100. package/{esm2020 → esm2022}/lib/strategies/context.strategy.mjs +36 -36
  101. package/{esm2020 → esm2022}/lib/strategies/cross-origin.strategy.mjs +27 -27
  102. package/{esm2020 → esm2022}/lib/strategies/dom.strategy.mjs +26 -26
  103. package/{esm2020 → esm2022}/lib/strategies/index.mjs +8 -8
  104. package/{esm2020 → esm2022}/lib/strategies/loading.strategy.mjs +57 -57
  105. package/{esm2020 → esm2022}/lib/strategies/projection.strategy.mjs +79 -79
  106. package/{esm2020 → esm2022}/lib/tokens/app-config.token.mjs +2 -2
  107. package/{esm2020 → esm2022}/lib/tokens/check-authentication-state.mjs +2 -2
  108. package/{esm2020 → esm2022}/lib/tokens/cookie-language-key.token.mjs +4 -4
  109. package/{esm2020 → esm2022}/lib/tokens/http-context.token.mjs +2 -2
  110. package/{esm2020 → esm2022}/lib/tokens/include-localization-resources.token.mjs +2 -2
  111. package/{esm2020 → esm2022}/lib/tokens/index.mjs +15 -15
  112. package/{esm2020 → esm2022}/lib/tokens/list.token.mjs +2 -2
  113. package/{esm2020 → esm2022}/lib/tokens/localization.token.mjs +9 -9
  114. package/{esm2020 → esm2022}/lib/tokens/lodaer-delay.token.mjs +2 -2
  115. package/{esm2020 → esm2022}/lib/tokens/manage-profile.token.mjs +2 -2
  116. package/{esm2020 → esm2022}/lib/tokens/options.token.mjs +7 -7
  117. package/{esm2020 → esm2022}/lib/tokens/others-group.token.mjs +2 -2
  118. package/{esm2020 → esm2022}/lib/tokens/pipe-to-login.token.mjs +2 -2
  119. package/{esm2020 → esm2022}/lib/tokens/queue.token.mjs +2 -2
  120. package/{esm2020 → esm2022}/lib/tokens/set-token-response-to-storage.token.mjs +5 -5
  121. package/{esm2020 → esm2022}/lib/tokens/tenant-key.token.mjs +2 -2
  122. package/{esm2020 → esm2022}/lib/utils/array-utils.mjs +6 -6
  123. package/{esm2020 → esm2022}/lib/utils/common-utils.mjs +34 -34
  124. package/{esm2020 → esm2022}/lib/utils/date-extensions.mjs +5 -5
  125. package/{esm2020 → esm2022}/lib/utils/date-utils.mjs +12 -12
  126. package/{esm2020 → esm2022}/lib/utils/environment-utils.mjs +35 -35
  127. package/{esm2020 → esm2022}/lib/utils/factory-utils.mjs +24 -24
  128. package/{esm2020 → esm2022}/lib/utils/file-utils.mjs +13 -13
  129. package/{esm2020 → esm2022}/lib/utils/form-utils.mjs +11 -11
  130. package/{esm2020 → esm2022}/lib/utils/generator-utils.mjs +33 -33
  131. package/{esm2020 → esm2022}/lib/utils/http-utils.mjs +18 -18
  132. package/{esm2020 → esm2022}/lib/utils/index.mjs +20 -20
  133. package/{esm2020 → esm2022}/lib/utils/initial-utils.mjs +59 -59
  134. package/esm2022/lib/utils/internal-store-utils.mjs +37 -0
  135. package/{esm2020 → esm2022}/lib/utils/lazy-load-utils.mjs +39 -39
  136. package/{esm2020 → esm2022}/lib/utils/localization-utils.mjs +48 -48
  137. package/{esm2020 → esm2022}/lib/utils/multi-tenancy-utils.mjs +80 -80
  138. package/{esm2020 → esm2022}/lib/utils/number-utils.mjs +3 -3
  139. package/{esm2020 → esm2022}/lib/utils/object-utils.mjs +36 -36
  140. package/{esm2020 → esm2022}/lib/utils/queue.mjs +40 -40
  141. package/{esm2020 → esm2022}/lib/utils/route-utils.mjs +25 -25
  142. package/{esm2020 → esm2022}/lib/utils/string-utils.mjs +29 -29
  143. package/{esm2020 → esm2022}/lib/utils/tree-utils.mjs +69 -69
  144. package/{esm2020 → esm2022}/lib/validators/age.validator.mjs +13 -13
  145. package/{esm2020 → esm2022}/lib/validators/credit-card.validator.mjs +20 -20
  146. package/esm2022/lib/validators/index.mjs +29 -0
  147. package/{esm2020 → esm2022}/lib/validators/range.validator.mjs +14 -14
  148. package/{esm2020 → esm2022}/lib/validators/required.validator.mjs +14 -14
  149. package/{esm2020 → esm2022}/lib/validators/string-length.validator.mjs +14 -14
  150. package/esm2022/lib/validators/unique-character.validator.mjs +13 -0
  151. package/{esm2020 → esm2022}/lib/validators/url.validator.mjs +16 -16
  152. package/{esm2020 → esm2022}/lib/validators/username.validator.mjs +13 -13
  153. package/{esm2020 → esm2022}/locale/abp-ng.core-locale.mjs +4 -4
  154. package/{esm2020 → esm2022}/locale/public-api.mjs +1 -1
  155. package/{esm2020 → esm2022}/locale/utils/register-locale.mjs +46 -46
  156. package/{esm2020 → esm2022}/public-api.mjs +26 -26
  157. package/{esm2020 → esm2022}/testing/abp-ng.core-testing.mjs +4 -4
  158. package/esm2022/testing/lib/core-testing.module.mjs +68 -0
  159. package/{esm2020 → esm2022}/testing/lib/services/index.mjs +2 -2
  160. package/esm2022/testing/lib/services/mock-permission.service.mjs +36 -0
  161. package/esm2022/testing/lib/services/mock-rest.service.mjs +32 -0
  162. package/{esm2020 → esm2022}/testing/lib/utils/clear-page.util.mjs +9 -9
  163. package/{esm2020 → esm2022}/testing/lib/utils/index.mjs +2 -2
  164. package/{esm2020 → esm2022}/testing/lib/utils/wait.util.mjs +4 -4
  165. package/{esm2020 → esm2022}/testing/public-api.mjs +3 -3
  166. package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs +45 -45
  167. package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs +120 -120
  168. package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs.map +1 -1
  169. package/{fesm2020 → fesm2022}/abp-ng.core.mjs +4262 -4188
  170. package/fesm2022/abp-ng.core.mjs.map +1 -0
  171. package/index.d.ts +5 -5
  172. package/lib/abstracts/abstract-guard.d.ts +5 -0
  173. package/lib/abstracts/auth-response.model.d.ts +10 -10
  174. package/lib/abstracts/auth.guard.d.ts +9 -10
  175. package/lib/abstracts/auth.service.d.ts +30 -30
  176. package/lib/abstracts/index.d.ts +5 -4
  177. package/lib/abstracts/ng-model.component.d.ts +25 -25
  178. package/lib/clients/http.client.d.ts +11 -11
  179. package/lib/clients/index.d.ts +1 -1
  180. package/lib/components/dynamic-layout.component.d.ts +28 -28
  181. package/lib/components/index.d.ts +3 -3
  182. package/lib/components/replaceable-route-container.component.d.ts +17 -17
  183. package/lib/components/router-outlet.component.d.ts +5 -5
  184. package/lib/constants/different-locales.d.ts +334 -334
  185. package/lib/constants/index.d.ts +1 -1
  186. package/lib/core.module.d.ts +57 -57
  187. package/lib/directives/autofocus.directive.d.ts +12 -12
  188. package/lib/directives/caps-lock.directive.d.ts +10 -0
  189. package/lib/directives/debounce.directive.d.ts +13 -13
  190. package/lib/directives/for.directive.d.ts +36 -36
  191. package/lib/directives/form-submit.directive.d.ts +23 -23
  192. package/lib/directives/index.d.ts +10 -8
  193. package/lib/directives/init.directive.d.ts +10 -10
  194. package/lib/directives/permission.directive.d.ts +24 -24
  195. package/lib/directives/replaceable-template.directive.d.ts +29 -29
  196. package/lib/directives/show-password.directive.d.ts +8 -0
  197. package/lib/directives/stop-propagation.directive.d.ts +12 -12
  198. package/lib/enums/common.d.ts +5 -5
  199. package/lib/enums/index.d.ts +1 -1
  200. package/lib/guards/index.d.ts +1 -1
  201. package/lib/guards/permission.guard.d.ts +16 -16
  202. package/lib/handlers/routes.handler.d.ts +11 -11
  203. package/lib/interceptors/api.interceptor.d.ts +14 -14
  204. package/lib/interceptors/index.d.ts +1 -1
  205. package/lib/localization.module.d.ts +7 -7
  206. package/lib/models/auth.d.ts +14 -14
  207. package/lib/models/common.d.ts +79 -79
  208. package/lib/models/dtos.d.ts +107 -107
  209. package/lib/models/environment.d.ts +38 -38
  210. package/lib/models/index.d.ts +9 -9
  211. package/lib/models/localization.d.ts +5 -5
  212. package/lib/models/replaceable-components.d.ts +45 -45
  213. package/lib/models/rest.d.ts +36 -36
  214. package/lib/models/session.d.ts +7 -7
  215. package/lib/models/utility.d.ts +14 -14
  216. package/lib/pipes/index.d.ts +7 -7
  217. package/lib/pipes/localization.pipe.d.ts +12 -12
  218. package/lib/pipes/safe-html.pipe.d.ts +9 -9
  219. package/lib/pipes/short-date-time.pipe.d.ts +12 -12
  220. package/lib/pipes/short-date.pipe.d.ts +12 -12
  221. package/lib/pipes/short-time.pipe.d.ts +12 -12
  222. package/lib/pipes/sort.pipe.d.ts +9 -9
  223. package/lib/pipes/to-injector.pipe.d.ts +10 -10
  224. package/lib/providers/cookie-language.provider.d.ts +3 -3
  225. package/lib/providers/include-localization-resources.provider.d.ts +2 -2
  226. package/lib/providers/locale.provider.d.ts +9 -9
  227. package/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.d.ts +12 -12
  228. package/lib/proxy/pages/abp/multi-tenancy/index.d.ts +1 -1
  229. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.d.ts +11 -11
  230. package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.d.ts +1 -1
  231. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.d.ts +11 -11
  232. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.d.ts +11 -11
  233. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +5 -5
  234. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +106 -106
  235. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.d.ts +1 -1
  236. package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.d.ts +71 -71
  237. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.d.ts +1 -1
  238. package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.d.ts +14 -14
  239. package/lib/proxy/volo/abp/http/modeling/index.d.ts +1 -1
  240. package/lib/proxy/volo/abp/http/modeling/models.d.ts +88 -88
  241. package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
  242. package/lib/proxy/volo/abp/localization/models.d.ts +7 -7
  243. package/lib/proxy/volo/abp/models.d.ts +4 -4
  244. package/lib/services/config-state.service.d.ts +379 -378
  245. package/lib/services/content-projection.service.d.ts +10 -10
  246. package/lib/services/dom-insertion.service.d.ts +10 -10
  247. package/lib/services/environment.service.d.ts +103 -103
  248. package/lib/services/http-error-reporter.service.d.ts +12 -12
  249. package/lib/services/http-wait.service.d.ts +30 -30
  250. package/lib/services/index.d.ts +21 -21
  251. package/lib/services/lazy-load.service.d.ts +13 -13
  252. package/lib/services/list.service.d.ts +39 -39
  253. package/lib/services/local-storage.service.d.ts +13 -13
  254. package/lib/services/localization.service.d.ts +54 -54
  255. package/lib/services/multi-tenancy.service.d.ts +22 -22
  256. package/lib/services/permission.service.d.ts +19 -19
  257. package/lib/services/replaceable-components.service.d.ts +19 -19
  258. package/lib/services/resource-wait.service.d.ts +15 -15
  259. package/lib/services/rest.service.d.ts +24 -24
  260. package/lib/services/router-events.service.d.ts +29 -29
  261. package/lib/services/router-wait.service.d.ts +20 -20
  262. package/lib/services/routes.service.d.ts +57 -57
  263. package/lib/services/session-state.service.d.ts +27 -27
  264. package/lib/services/subscription.service.d.ts +17 -17
  265. package/lib/services/track-by.service.d.ts +11 -11
  266. package/lib/strategies/container.strategy.d.ts +22 -22
  267. package/lib/strategies/content-security.strategy.d.ts +17 -17
  268. package/lib/strategies/content.strategy.d.ts +26 -26
  269. package/lib/strategies/context.strategy.d.ts +23 -23
  270. package/lib/strategies/cross-origin.strategy.d.ts +14 -14
  271. package/lib/strategies/dom.strategy.d.ts +13 -13
  272. package/lib/strategies/index.d.ts +8 -8
  273. package/lib/strategies/loading.strategy.d.ts +28 -28
  274. package/lib/strategies/projection.strategy.d.ts +39 -39
  275. package/lib/tokens/app-config.token.d.ts +3 -3
  276. package/lib/tokens/check-authentication-state.d.ts +3 -3
  277. package/lib/tokens/cookie-language-key.token.d.ts +2 -2
  278. package/lib/tokens/http-context.token.d.ts +2 -2
  279. package/lib/tokens/include-localization-resources.token.d.ts +2 -2
  280. package/lib/tokens/index.d.ts +15 -15
  281. package/lib/tokens/list.token.d.ts +2 -2
  282. package/lib/tokens/localization.token.d.ts +6 -6
  283. package/lib/tokens/lodaer-delay.token.d.ts +2 -2
  284. package/lib/tokens/manage-profile.token.d.ts +2 -2
  285. package/lib/tokens/options.token.d.ts +4 -4
  286. package/lib/tokens/others-group.token.d.ts +2 -2
  287. package/lib/tokens/pipe-to-login.token.d.ts +3 -3
  288. package/lib/tokens/queue.token.d.ts +3 -3
  289. package/lib/tokens/set-token-response-to-storage.token.d.ts +6 -6
  290. package/lib/tokens/tenant-key.token.d.ts +2 -2
  291. package/lib/utils/array-utils.d.ts +1 -1
  292. package/lib/utils/common-utils.d.ts +11 -11
  293. package/lib/utils/date-extensions.d.ts +6 -6
  294. package/lib/utils/date-utils.d.ts +4 -4
  295. package/lib/utils/environment-utils.d.ts +3 -3
  296. package/lib/utils/factory-utils.d.ts +11 -11
  297. package/lib/utils/file-utils.d.ts +1 -1
  298. package/lib/utils/form-utils.d.ts +2 -2
  299. package/lib/utils/generator-utils.d.ts +3 -3
  300. package/lib/utils/http-utils.d.ts +8 -8
  301. package/lib/utils/index.d.ts +20 -20
  302. package/lib/utils/initial-utils.d.ts +3 -3
  303. package/lib/utils/internal-store-utils.d.ts +14 -14
  304. package/lib/utils/lazy-load-utils.d.ts +4 -4
  305. package/lib/utils/localization-utils.d.ts +5 -5
  306. package/lib/utils/multi-tenancy-utils.d.ts +3 -3
  307. package/lib/utils/number-utils.d.ts +1 -1
  308. package/lib/utils/object-utils.d.ts +2 -2
  309. package/lib/utils/queue.d.ts +14 -14
  310. package/lib/utils/route-utils.d.ts +8 -8
  311. package/lib/utils/string-utils.d.ts +3 -3
  312. package/lib/utils/tree-utils.d.ts +26 -26
  313. package/lib/validators/age.validator.d.ts +10 -10
  314. package/lib/validators/credit-card.validator.d.ts +5 -5
  315. package/lib/validators/index.d.ts +28 -24
  316. package/lib/validators/range.validator.d.ts +12 -12
  317. package/lib/validators/required.validator.d.ts +8 -8
  318. package/lib/validators/string-length.validator.d.ts +14 -14
  319. package/lib/validators/unique-character.validator.d.ts +5 -0
  320. package/lib/validators/url.validator.d.ts +5 -5
  321. package/lib/validators/username.validator.d.ts +10 -10
  322. package/locale/index.d.ts +5 -5
  323. package/locale/public-api.d.ts +1 -1
  324. package/locale/utils/register-locale.d.ts +13 -13
  325. package/package.json +26 -22
  326. package/public-api.d.ts +25 -25
  327. package/testing/index.d.ts +5 -5
  328. package/testing/lib/core-testing.module.d.ts +16 -16
  329. package/testing/lib/services/index.d.ts +2 -2
  330. package/testing/lib/services/mock-permission.service.d.ts +10 -10
  331. package/testing/lib/services/mock-rest.service.d.ts +14 -14
  332. package/testing/lib/utils/clear-page.util.d.ts +2 -2
  333. package/testing/lib/utils/index.d.ts +2 -2
  334. package/testing/lib/utils/wait.util.d.ts +2 -2
  335. package/testing/public-api.d.ts +3 -3
  336. package/esm2020/lib/abstracts/auth.guard.mjs +0 -17
  337. package/esm2020/lib/abstracts/auth.service.mjs +0 -45
  338. package/esm2020/lib/abstracts/index.mjs +0 -5
  339. package/esm2020/lib/abstracts/ng-model.component.mjs +0 -59
  340. package/esm2020/lib/clients/http.client.mjs +0 -34
  341. package/esm2020/lib/components/dynamic-layout.component.mjs +0 -100
  342. package/esm2020/lib/components/replaceable-route-container.component.mjs +0 -42
  343. package/esm2020/lib/components/router-outlet.component.mjs +0 -15
  344. package/esm2020/lib/core.module.mjs +0 -282
  345. package/esm2020/lib/directives/autofocus.directive.mjs +0 -30
  346. package/esm2020/lib/directives/debounce.directive.mjs +0 -36
  347. package/esm2020/lib/directives/for.directive.mjs +0 -159
  348. package/esm2020/lib/directives/form-submit.directive.mjs +0 -77
  349. package/esm2020/lib/directives/index.mjs +0 -9
  350. package/esm2020/lib/directives/init.directive.mjs +0 -21
  351. package/esm2020/lib/directives/permission.directive.mjs +0 -74
  352. package/esm2020/lib/directives/replaceable-template.directive.mjs +0 -132
  353. package/esm2020/lib/directives/stop-propagation.directive.mjs +0 -32
  354. package/esm2020/lib/guards/permission.guard.mjs +0 -44
  355. package/esm2020/lib/handlers/routes.handler.mjs +0 -51
  356. package/esm2020/lib/interceptors/api.interceptor.mjs +0 -27
  357. package/esm2020/lib/localization.module.mjs +0 -16
  358. package/esm2020/lib/pipes/localization.pipe.mjs +0 -33
  359. package/esm2020/lib/pipes/safe-html.pipe.mjs +0 -23
  360. package/esm2020/lib/pipes/short-date-time.pipe.mjs +0 -34
  361. package/esm2020/lib/pipes/short-date.pipe.mjs +0 -34
  362. package/esm2020/lib/pipes/short-time.pipe.mjs +0 -34
  363. package/esm2020/lib/pipes/sort.pipe.mjs +0 -49
  364. package/esm2020/lib/pipes/to-injector.pipe.mjs +0 -29
  365. package/esm2020/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +0 -27
  366. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +0 -24
  367. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +0 -24
  368. package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +0 -24
  369. package/esm2020/lib/services/config-state.service.mjs +0 -178
  370. package/esm2020/lib/services/content-projection.service.mjs +0 -17
  371. package/esm2020/lib/services/dom-insertion.service.mjs +0 -34
  372. package/esm2020/lib/services/environment.service.mjs +0 -48
  373. package/esm2020/lib/services/http-error-reporter.service.mjs +0 -29
  374. package/esm2020/lib/services/http-wait.service.mjs +0 -75
  375. package/esm2020/lib/services/lazy-load.service.mjs +0 -40
  376. package/esm2020/lib/services/list.service.mjs +0 -102
  377. package/esm2020/lib/services/local-storage.service.mjs +0 -32
  378. package/esm2020/lib/services/localization.service.mjs +0 -217
  379. package/esm2020/lib/services/multi-tenancy.service.mjs +0 -48
  380. package/esm2020/lib/services/permission.service.mjs +0 -63
  381. package/esm2020/lib/services/replaceable-components.service.mjs +0 -49
  382. package/esm2020/lib/services/resource-wait.service.mjs +0 -39
  383. package/esm2020/lib/services/rest.service.mjs +0 -78
  384. package/esm2020/lib/services/router-events.service.mjs +0 -38
  385. package/esm2020/lib/services/router-wait.service.mjs +0 -51
  386. package/esm2020/lib/services/routes.service.mjs +0 -163
  387. package/esm2020/lib/services/session-state.service.mjs +0 -80
  388. package/esm2020/lib/services/subscription.service.mjs +0 -43
  389. package/esm2020/lib/services/track-by.service.mjs +0 -21
  390. package/esm2020/lib/utils/internal-store-utils.mjs +0 -37
  391. package/esm2020/lib/validators/index.mjs +0 -25
  392. package/esm2020/testing/lib/core-testing.module.mjs +0 -67
  393. package/esm2020/testing/lib/services/mock-permission.service.mjs +0 -35
  394. package/esm2020/testing/lib/services/mock-rest.service.mjs +0 -31
  395. package/fesm2015/abp-ng.core-locale.mjs +0 -57
  396. package/fesm2015/abp-ng.core-locale.mjs.map +0 -1
  397. package/fesm2015/abp-ng.core-testing.mjs +0 -146
  398. package/fesm2015/abp-ng.core-testing.mjs.map +0 -1
  399. package/fesm2015/abp-ng.core.mjs +0 -4460
  400. package/fesm2015/abp-ng.core.mjs.map +0 -1
  401. package/fesm2020/abp-ng.core.mjs.map +0 -1
  402. package/src/lib/proxy/README.md +0 -17
  403. /package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs.map +0 -0
@@ -1,24 +1,24 @@
1
- import { Compiler, Injector, NgModuleFactory, } from '@angular/core';
2
- import { filter, map } from 'rxjs/operators';
3
- export class LazyModuleFactory extends NgModuleFactory {
4
- constructor(moduleWithProviders) {
5
- super();
6
- this.moduleWithProviders = moduleWithProviders;
7
- }
8
- get moduleType() {
9
- return this.moduleWithProviders.ngModule;
10
- }
11
- create(parentInjector) {
12
- const injector = Injector.create({
13
- ...(parentInjector && { parent: parentInjector }),
14
- providers: this.moduleWithProviders.providers,
15
- });
16
- const compiler = injector.get(Compiler);
17
- const factory = compiler.compileModuleSync(this.moduleType);
18
- return factory.create(injector);
19
- }
20
- }
21
- export function featuresFactory(configState, featureKeys, mapFn = features => features) {
22
- return configState.getFeatures$(featureKeys).pipe(filter(Boolean), map(mapFn));
23
- }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9mYWN0b3J5LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsUUFBUSxFQUVSLGVBQWUsR0FJaEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc3QyxNQUFNLE9BQU8saUJBQXFCLFNBQVEsZUFBa0I7SUFLMUQsWUFBb0IsbUJBQTJDO1FBQzdELEtBQUssRUFBRSxDQUFDO1FBRFUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF3QjtJQUUvRCxDQUFDO0lBTkQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDO0lBQzNDLENBQUM7SUFNRCxNQUFNLENBQUMsY0FBK0I7UUFDcEMsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxDQUFDO1lBQ2pELFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBNkI7U0FDbEUsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUM3QixXQUErQixFQUMvQixXQUFxQixFQUNyQixRQUFzRCxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVE7SUFFMUUsT0FBTyxXQUFXLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDakYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcGlsZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcclxuICBOZ01vZHVsZUZhY3RvcnksXHJcbiAgTmdNb2R1bGVSZWYsXHJcbiAgU3RhdGljUHJvdmlkZXIsXHJcbiAgVHlwZSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpZy1zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBMYXp5TW9kdWxlRmFjdG9yeTxUPiBleHRlbmRzIE5nTW9kdWxlRmFjdG9yeTxUPiB7XHJcbiAgZ2V0IG1vZHVsZVR5cGUoKTogVHlwZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVXaXRoUHJvdmlkZXJzLm5nTW9kdWxlO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2R1bGVXaXRoUHJvdmlkZXJzOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFQ+KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlKHBhcmVudEluamVjdG9yOiBJbmplY3RvciB8IG51bGwpOiBOZ01vZHVsZVJlZjxUPiB7XHJcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XHJcbiAgICAgIC4uLihwYXJlbnRJbmplY3RvciAmJiB7IHBhcmVudDogcGFyZW50SW5qZWN0b3IgfSksXHJcbiAgICAgIHByb3ZpZGVyczogdGhpcy5tb2R1bGVXaXRoUHJvdmlkZXJzLnByb3ZpZGVycyBhcyBTdGF0aWNQcm92aWRlcltdLFxyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgY29tcGlsZXIgPSBpbmplY3Rvci5nZXQoQ29tcGlsZXIpO1xyXG4gICAgY29uc3QgZmFjdG9yeSA9IGNvbXBpbGVyLmNvbXBpbGVNb2R1bGVTeW5jKHRoaXMubW9kdWxlVHlwZSk7XHJcblxyXG4gICAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlKGluamVjdG9yKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmZWF0dXJlc0ZhY3RvcnkoXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICBmZWF0dXJlS2V5czogc3RyaW5nW10sXHJcbiAgbWFwRm46IChmZWF0dXJlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSkgPT4gYW55ID0gZmVhdHVyZXMgPT4gZmVhdHVyZXMsXHJcbikge1xyXG4gIHJldHVybiBjb25maWdTdGF0ZS5nZXRGZWF0dXJlcyQoZmVhdHVyZUtleXMpLnBpcGUoZmlsdGVyKEJvb2xlYW4pLCBtYXAobWFwRm4pKTtcclxufVxyXG4iXX0=
1
+ import { Compiler, Injector, NgModuleFactory, } from '@angular/core';
2
+ import { filter, map } from 'rxjs/operators';
3
+ export class LazyModuleFactory extends NgModuleFactory {
4
+ get moduleType() {
5
+ return this.moduleWithProviders.ngModule;
6
+ }
7
+ constructor(moduleWithProviders) {
8
+ super();
9
+ this.moduleWithProviders = moduleWithProviders;
10
+ }
11
+ create(parentInjector) {
12
+ const injector = Injector.create({
13
+ ...(parentInjector && { parent: parentInjector }),
14
+ providers: this.moduleWithProviders.providers,
15
+ });
16
+ const compiler = injector.get(Compiler);
17
+ const factory = compiler.compileModuleSync(this.moduleType);
18
+ return factory.create(injector);
19
+ }
20
+ }
21
+ export function featuresFactory(configState, featureKeys, mapFn = features => features) {
22
+ return configState.getFeatures$(featureKeys).pipe(filter(Boolean), map(mapFn));
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9mYWN0b3J5LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsUUFBUSxFQUVSLGVBQWUsR0FJaEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc3QyxNQUFNLE9BQU8saUJBQXFCLFNBQVEsZUFBa0I7SUFDMUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDO0lBQzNDLENBQUM7SUFFRCxZQUFvQixtQkFBMkM7UUFDN0QsS0FBSyxFQUFFLENBQUM7UUFEVSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO0lBRS9ELENBQUM7SUFFRCxNQUFNLENBQUMsY0FBK0I7UUFDcEMsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxDQUFDO1lBQ2pELFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBNkI7U0FDbEUsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTVELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUM3QixXQUErQixFQUMvQixXQUFxQixFQUNyQixRQUFzRCxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVE7SUFFMUUsT0FBTyxXQUFXLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDakYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcGlsZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcclxuICBOZ01vZHVsZUZhY3RvcnksXHJcbiAgTmdNb2R1bGVSZWYsXHJcbiAgU3RhdGljUHJvdmlkZXIsXHJcbiAgVHlwZSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpZy1zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBMYXp5TW9kdWxlRmFjdG9yeTxUPiBleHRlbmRzIE5nTW9kdWxlRmFjdG9yeTxUPiB7XHJcbiAgZ2V0IG1vZHVsZVR5cGUoKTogVHlwZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVXaXRoUHJvdmlkZXJzLm5nTW9kdWxlO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2R1bGVXaXRoUHJvdmlkZXJzOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFQ+KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlKHBhcmVudEluamVjdG9yOiBJbmplY3RvciB8IG51bGwpOiBOZ01vZHVsZVJlZjxUPiB7XHJcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XHJcbiAgICAgIC4uLihwYXJlbnRJbmplY3RvciAmJiB7IHBhcmVudDogcGFyZW50SW5qZWN0b3IgfSksXHJcbiAgICAgIHByb3ZpZGVyczogdGhpcy5tb2R1bGVXaXRoUHJvdmlkZXJzLnByb3ZpZGVycyBhcyBTdGF0aWNQcm92aWRlcltdLFxyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgY29tcGlsZXIgPSBpbmplY3Rvci5nZXQoQ29tcGlsZXIpO1xyXG4gICAgY29uc3QgZmFjdG9yeSA9IGNvbXBpbGVyLmNvbXBpbGVNb2R1bGVTeW5jKHRoaXMubW9kdWxlVHlwZSk7XHJcblxyXG4gICAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlKGluamVjdG9yKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmZWF0dXJlc0ZhY3RvcnkoXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICBmZWF0dXJlS2V5czogc3RyaW5nW10sXHJcbiAgbWFwRm46IChmZWF0dXJlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSkgPT4gYW55ID0gZmVhdHVyZXMgPT4gZmVhdHVyZXMsXHJcbikge1xyXG4gIHJldHVybiBjb25maWdTdGF0ZS5nZXRGZWF0dXJlcyQoZmVhdHVyZUtleXMpLnBpcGUoZmlsdGVyKEJvb2xlYW4pLCBtYXAobWFwRm4pKTtcclxufVxyXG4iXX0=
@@ -1,14 +1,14 @@
1
- export function downloadBlob(blob, filename) {
2
- const blobUrl = URL.createObjectURL(blob);
3
- const link = document.createElement('a');
4
- link.href = blobUrl;
5
- link.download = filename;
6
- document.body.appendChild(link);
7
- link.dispatchEvent(new MouseEvent('click', {
8
- bubbles: true,
9
- cancelable: true,
10
- view: window,
11
- }));
12
- document.body.removeChild(link);
13
- }
1
+ export function downloadBlob(blob, filename) {
2
+ const blobUrl = URL.createObjectURL(blob);
3
+ const link = document.createElement('a');
4
+ link.href = blobUrl;
5
+ link.download = filename;
6
+ document.body.appendChild(link);
7
+ link.dispatchEvent(new MouseEvent('click', {
8
+ bubbles: true,
9
+ cancelable: true,
10
+ view: window,
11
+ }));
12
+ document.body.removeChild(link);
13
+ }
14
14
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9maWxlLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBVSxFQUFFLFFBQWdCO0lBQ3ZELE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFMUMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV6QyxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztJQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUV6QixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVoQyxJQUFJLENBQUMsYUFBYSxDQUNoQixJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUU7UUFDdEIsT0FBTyxFQUFFLElBQUk7UUFDYixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUMsQ0FDSCxDQUFDO0lBRUYsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBkb3dubG9hZEJsb2IoYmxvYjogQmxvYiwgZmlsZW5hbWU6IHN0cmluZykge1xyXG4gIGNvbnN0IGJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG5cclxuICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG5cclxuICBsaW5rLmhyZWYgPSBibG9iVXJsO1xyXG4gIGxpbmsuZG93bmxvYWQgPSBmaWxlbmFtZTtcclxuXHJcbiAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuXHJcbiAgbGluay5kaXNwYXRjaEV2ZW50KFxyXG4gICAgbmV3IE1vdXNlRXZlbnQoJ2NsaWNrJywge1xyXG4gICAgICBidWJibGVzOiB0cnVlLFxyXG4gICAgICBjYW5jZWxhYmxlOiB0cnVlLFxyXG4gICAgICB2aWV3OiB3aW5kb3csXHJcbiAgICB9KSxcclxuICApO1xyXG5cclxuICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xyXG59XHJcbiJdfQ==
@@ -1,12 +1,12 @@
1
- import { isNumber } from './number-utils';
2
- export function mapEnumToOptions(_enum) {
3
- const options = [];
4
- for (const member in _enum)
5
- if (!isNumber(member))
6
- options.push({
7
- key: member,
8
- value: _enum[member],
9
- });
10
- return options;
11
- }
1
+ import { isNumber } from './number-utils';
2
+ export function mapEnumToOptions(_enum) {
3
+ const options = [];
4
+ for (const member in _enum)
5
+ if (!isNumber(member))
6
+ options.push({
7
+ key: member,
8
+ value: _enum[member],
9
+ });
10
+ return options;
11
+ }
12
12
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9mb3JtLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxNQUFNLFVBQVUsZ0JBQWdCLENBQUksS0FBUTtJQUMxQyxNQUFNLE9BQU8sR0FBb0IsRUFBRSxDQUFDO0lBRXBDLEtBQUssTUFBTSxNQUFNLElBQUksS0FBSztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNuQixPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUNYLEdBQUcsRUFBRSxNQUFNO2dCQUNYLEtBQUssRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO2FBQ3JCLENBQUMsQ0FBQztJQUVQLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICcuL251bWJlci11dGlscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwRW51bVRvT3B0aW9uczxUPihfZW51bTogVCk6IEFCUC5PcHRpb248VD5bXSB7XHJcbiAgY29uc3Qgb3B0aW9uczogQUJQLk9wdGlvbjxUPltdID0gW107XHJcblxyXG4gIGZvciAoY29uc3QgbWVtYmVyIGluIF9lbnVtKVxyXG4gICAgaWYgKCFpc051bWJlcihtZW1iZXIpKVxyXG4gICAgICBvcHRpb25zLnB1c2goe1xyXG4gICAgICAgIGtleTogbWVtYmVyLFxyXG4gICAgICAgIHZhbHVlOiBfZW51bVttZW1iZXJdLFxyXG4gICAgICB9KTtcclxuXHJcbiAgcmV0dXJuIG9wdGlvbnM7XHJcbn1cclxuIl19
@@ -1,34 +1,34 @@
1
- export function uuid(a) {
2
- return a
3
- ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)
4
- : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);
5
- }
6
- export function generateHash(value) {
7
- let hashed = 0;
8
- let charCode;
9
- for (let i = 0; i < value.length; i++) {
10
- charCode = value.charCodeAt(i);
11
- hashed = (hashed << 5) - hashed + charCode;
12
- hashed |= 0;
13
- }
14
- return hashed;
15
- }
16
- export function generatePassword(length = 8) {
17
- length = Math.min(Math.max(4, length), 128);
18
- const lowers = 'abcdefghijklmnopqrstuvwxyz';
19
- const uppers = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
20
- const numbers = '0123456789';
21
- const specials = '!@#$%&*()_+{}<>?[]./';
22
- const all = lowers + uppers + numbers + specials;
23
- const getRandom = (chrSet) => chrSet[Math.floor(Math.random() * chrSet.length)];
24
- const password = Array({ length });
25
- password[0] = getRandom(lowers);
26
- password[1] = getRandom(uppers);
27
- password[2] = getRandom(numbers);
28
- password[3] = getRandom(specials);
29
- for (let i = 4; i < length; i++) {
30
- password[i] = getRandom(all);
31
- }
32
- return password.sort(() => 0.5 - Math.random()).join('');
33
- }
1
+ export function uuid(a) {
2
+ return a
3
+ ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)
4
+ : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);
5
+ }
6
+ export function generateHash(value) {
7
+ let hashed = 0;
8
+ let charCode;
9
+ for (let i = 0; i < value.length; i++) {
10
+ charCode = value.charCodeAt(i);
11
+ hashed = (hashed << 5) - hashed + charCode;
12
+ hashed |= 0;
13
+ }
14
+ return hashed;
15
+ }
16
+ export function generatePassword(length = 8) {
17
+ length = Math.min(Math.max(4, length), 128);
18
+ const lowers = 'abcdefghijklmnopqrstuvwxyz';
19
+ const uppers = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
20
+ const numbers = '0123456789';
21
+ const specials = '!@#$%&*()_+{}<>?[]./';
22
+ const all = lowers + uppers + numbers + specials;
23
+ const getRandom = (chrSet) => chrSet[Math.floor(Math.random() * chrSet.length)];
24
+ const password = Array({ length });
25
+ password[0] = getRandom(lowers);
26
+ password[1] = getRandom(uppers);
27
+ password[2] = getRandom(numbers);
28
+ password[3] = getRandom(specials);
29
+ for (let i = 4; i < length; i++) {
30
+ password[i] = getRandom(all);
31
+ }
32
+ return password.sort(() => 0.5 - Math.random()).join('');
33
+ }
34
34
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9yLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3V0aWxzL2dlbmVyYXRvci11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsSUFBSSxDQUFDLENBQU87SUFDMUIsT0FBTyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBYTtJQUN4QyxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDZixJQUFJLFFBQWdCLENBQUM7SUFFckIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDckMsUUFBUSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0IsTUFBTSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxHQUFHLE1BQU0sR0FBRyxRQUFRLENBQUM7UUFDM0MsTUFBTSxJQUFJLENBQUMsQ0FBQztLQUNiO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQztJQUN6QyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUU1QyxNQUFNLE1BQU0sR0FBRyw0QkFBNEIsQ0FBQztJQUM1QyxNQUFNLE1BQU0sR0FBRyw0QkFBNEIsQ0FBQztJQUM1QyxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUM7SUFDN0IsTUFBTSxRQUFRLEdBQUcsc0JBQXNCLENBQUM7SUFDeEMsTUFBTSxHQUFHLEdBQUcsTUFBTSxHQUFHLE1BQU0sR0FBRyxPQUFPLEdBQUcsUUFBUSxDQUFDO0lBRWpELE1BQU0sU0FBUyxHQUFHLENBQUMsTUFBYyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFeEYsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNuQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWxDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDL0IsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUM5QjtJQUVELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gdXVpZChhPzogYW55KTogc3RyaW5nIHtcclxuICByZXR1cm4gYVxyXG4gICAgPyAoYSBeICgoTWF0aC5yYW5kb20oKSAqIDE2KSA+PiAoYSAvIDQpKSkudG9TdHJpbmcoMTYpXHJcbiAgICA6ICgnJyArIDFlNyArIC0xZTMgKyAtNGUzICsgLThlMyArIC0xZTExKS5yZXBsYWNlKC9bMDE4XS9nLCB1dWlkKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSGFzaCh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHtcclxuICBsZXQgaGFzaGVkID0gMDtcclxuICBsZXQgY2hhckNvZGU6IG51bWJlcjtcclxuXHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgY2hhckNvZGUgPSB2YWx1ZS5jaGFyQ29kZUF0KGkpO1xyXG4gICAgaGFzaGVkID0gKGhhc2hlZCA8PCA1KSAtIGhhc2hlZCArIGNoYXJDb2RlO1xyXG4gICAgaGFzaGVkIHw9IDA7XHJcbiAgfVxyXG4gIHJldHVybiBoYXNoZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVBhc3N3b3JkKGxlbmd0aCA9IDgpIHtcclxuICBsZW5ndGggPSBNYXRoLm1pbihNYXRoLm1heCg0LCBsZW5ndGgpLCAxMjgpO1xyXG5cclxuICBjb25zdCBsb3dlcnMgPSAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonO1xyXG4gIGNvbnN0IHVwcGVycyA9ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWic7XHJcbiAgY29uc3QgbnVtYmVycyA9ICcwMTIzNDU2Nzg5JztcclxuICBjb25zdCBzcGVjaWFscyA9ICchQCMkJSYqKClfK3t9PD4/W10uLyc7XHJcbiAgY29uc3QgYWxsID0gbG93ZXJzICsgdXBwZXJzICsgbnVtYmVycyArIHNwZWNpYWxzO1xyXG5cclxuICBjb25zdCBnZXRSYW5kb20gPSAoY2hyU2V0OiBzdHJpbmcpID0+IGNoclNldFtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaHJTZXQubGVuZ3RoKV07XHJcblxyXG4gIGNvbnN0IHBhc3N3b3JkID0gQXJyYXkoeyBsZW5ndGggfSk7XHJcbiAgcGFzc3dvcmRbMF0gPSBnZXRSYW5kb20obG93ZXJzKTtcclxuICBwYXNzd29yZFsxXSA9IGdldFJhbmRvbSh1cHBlcnMpO1xyXG4gIHBhc3N3b3JkWzJdID0gZ2V0UmFuZG9tKG51bWJlcnMpO1xyXG4gIHBhc3N3b3JkWzNdID0gZ2V0UmFuZG9tKHNwZWNpYWxzKTtcclxuXHJcbiAgZm9yIChsZXQgaSA9IDQ7IGkgPCBsZW5ndGg7IGkrKykge1xyXG4gICAgcGFzc3dvcmRbaV0gPSBnZXRSYW5kb20oYWxsKTtcclxuICB9XHJcblxyXG4gIHJldHVybiBwYXNzd29yZC5zb3J0KCgpID0+IDAuNSAtIE1hdGgucmFuZG9tKCkpLmpvaW4oJycpO1xyXG59XHJcbiJdfQ==
@@ -1,19 +1,19 @@
1
- export function getPathName(url) {
2
- const { pathname } = new URL(url, window.location.origin);
3
- return pathname;
4
- }
5
- export class WebHttpUrlEncodingCodec {
6
- encodeKey(k) {
7
- return encodeURIComponent(k);
8
- }
9
- encodeValue(v) {
10
- return encodeURIComponent(v);
11
- }
12
- decodeKey(k) {
13
- return decodeURIComponent(k);
14
- }
15
- decodeValue(v) {
16
- return decodeURIComponent(v);
17
- }
18
- }
1
+ export function getPathName(url) {
2
+ const { pathname } = new URL(url, window.location.origin);
3
+ return pathname;
4
+ }
5
+ export class WebHttpUrlEncodingCodec {
6
+ encodeKey(k) {
7
+ return encodeURIComponent(k);
8
+ }
9
+ encodeValue(v) {
10
+ return encodeURIComponent(v);
11
+ }
12
+ decodeKey(k) {
13
+ return decodeURIComponent(k);
14
+ }
15
+ decodeValue(v) {
16
+ return decodeURIComponent(v);
17
+ }
18
+ }
19
19
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9odHRwLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxXQUFXLENBQUMsR0FBVztJQUNyQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUVELE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsU0FBUyxDQUFDLENBQVM7UUFDakIsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVyxDQUFDLENBQVM7UUFDbkIsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsU0FBUyxDQUFDLENBQVM7UUFDakIsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVyxDQUFDLENBQVM7UUFDbkIsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1ldGVyQ29kZWMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGF0aE5hbWUodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIGNvbnN0IHsgcGF0aG5hbWUgfSA9IG5ldyBVUkwodXJsLCB3aW5kb3cubG9jYXRpb24ub3JpZ2luKTtcclxuICByZXR1cm4gcGF0aG5hbWU7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBXZWJIdHRwVXJsRW5jb2RpbmdDb2RlYyBpbXBsZW1lbnRzIEh0dHBQYXJhbWV0ZXJDb2RlYyB7XHJcbiAgZW5jb2RlS2V5KGs6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGspO1xyXG4gIH1cclxuXHJcbiAgZW5jb2RlVmFsdWUodjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQodik7XHJcbiAgfVxyXG5cclxuICBkZWNvZGVLZXkoazogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQoayk7XHJcbiAgfVxyXG5cclxuICBkZWNvZGVWYWx1ZSh2OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQodik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,21 +1,21 @@
1
- export * from './array-utils';
2
- export * from './common-utils';
3
- export * from './date-utils';
4
- export * from './environment-utils';
5
- export * from './factory-utils';
6
- export * from './file-utils';
7
- export * from './form-utils';
8
- export * from './generator-utils';
9
- export * from './http-utils';
10
- export * from './initial-utils';
11
- export * from './internal-store-utils';
12
- export * from './lazy-load-utils';
13
- export * from './localization-utils';
14
- export * from './multi-tenancy-utils';
15
- export * from './number-utils';
16
- export * from './object-utils';
17
- export * from './queue';
18
- export * from './route-utils';
19
- export * from './string-utils';
20
- export * from './tree-utils';
1
+ export * from './array-utils';
2
+ export * from './common-utils';
3
+ export * from './date-utils';
4
+ export * from './environment-utils';
5
+ export * from './factory-utils';
6
+ export * from './file-utils';
7
+ export * from './form-utils';
8
+ export * from './generator-utils';
9
+ export * from './http-utils';
10
+ export * from './initial-utils';
11
+ export * from './internal-store-utils';
12
+ export * from './lazy-load-utils';
13
+ export * from './localization-utils';
14
+ export * from './multi-tenancy-utils';
15
+ export * from './number-utils';
16
+ export * from './object-utils';
17
+ export * from './queue';
18
+ export * from './route-utils';
19
+ export * from './string-utils';
20
+ export * from './tree-utils';
21
21
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FycmF5LXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21tb24tdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RhdGUtdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Vudmlyb25tZW50LXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9mYWN0b3J5LXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9maWxlLXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9mb3JtLXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9nZW5lcmF0b3ItdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2h0dHAtdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2luaXRpYWwtdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVybmFsLXN0b3JlLXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9sYXp5LWxvYWQtdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi11dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGktdGVuYW5jeS11dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyLXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9vYmplY3QtdXRpbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3F1ZXVlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yb3V0ZS11dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3RyaW5nLXV0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi90cmVlLXV0aWxzJztcclxuIl19
@@ -1,60 +1,60 @@
1
- import { registerLocaleData } from '@angular/common';
2
- import { tap, catchError } from 'rxjs/operators';
3
- import { lastValueFrom, throwError } from 'rxjs';
4
- import { ConfigStateService } from '../services/config-state.service';
5
- import { EnvironmentService } from '../services/environment.service';
6
- import { SessionStateService } from '../services/session-state.service';
7
- import { CORE_OPTIONS } from '../tokens/options.token';
8
- import { APP_INIT_ERROR_HANDLERS } from '../tokens/app-config.token';
9
- import { getRemoteEnv } from './environment-utils';
10
- import { parseTenantFromUrl } from './multi-tenancy-utils';
11
- import { AuthService } from '../abstracts';
12
- import { CHECK_AUTHENTICATION_STATE_FN_KEY } from '../tokens/check-authentication-state';
13
- import { noop } from './common-utils';
14
- export function getInitialData(injector) {
15
- const fn = async () => {
16
- const environmentService = injector.get(EnvironmentService);
17
- const configState = injector.get(ConfigStateService);
18
- const options = injector.get(CORE_OPTIONS);
19
- environmentService.setState(options.environment);
20
- await getRemoteEnv(injector, options.environment);
21
- await parseTenantFromUrl(injector);
22
- const authService = injector.get(AuthService, undefined, { optional: true });
23
- const checkAuthenticationState = injector.get(CHECK_AUTHENTICATION_STATE_FN_KEY, noop, {
24
- optional: true,
25
- });
26
- if (authService) {
27
- await authService.init();
28
- }
29
- if (options.skipGetAppConfiguration)
30
- return;
31
- const result$ = configState.refreshAppState().pipe(tap(() => checkAuthenticationState(injector)), tap(() => {
32
- const currentTenant = configState.getOne('currentTenant');
33
- injector.get(SessionStateService).setTenant(currentTenant);
34
- }), catchError(error => {
35
- const appInitErrorHandlers = injector.get(APP_INIT_ERROR_HANDLERS, null);
36
- if (appInitErrorHandlers && appInitErrorHandlers.length) {
37
- appInitErrorHandlers.forEach(func => func(error));
38
- }
39
- return throwError(error);
40
- }));
41
- await lastValueFrom(result$);
42
- };
43
- return fn;
44
- }
45
- export function localeInitializer(injector) {
46
- const fn = () => {
47
- const sessionState = injector.get(SessionStateService);
48
- const { registerLocaleFn } = injector.get(CORE_OPTIONS);
49
- const lang = sessionState.getLanguage() || 'en';
50
- return new Promise((resolve, reject) => {
51
- registerLocaleFn(lang).then(module => {
52
- if (module?.default)
53
- registerLocaleData(module.default);
54
- return resolve('resolved');
55
- }, reject);
56
- });
57
- };
58
- return fn;
59
- }
1
+ import { registerLocaleData } from '@angular/common';
2
+ import { tap, catchError } from 'rxjs/operators';
3
+ import { lastValueFrom, throwError } from 'rxjs';
4
+ import { ConfigStateService } from '../services/config-state.service';
5
+ import { EnvironmentService } from '../services/environment.service';
6
+ import { SessionStateService } from '../services/session-state.service';
7
+ import { CORE_OPTIONS } from '../tokens/options.token';
8
+ import { APP_INIT_ERROR_HANDLERS } from '../tokens/app-config.token';
9
+ import { getRemoteEnv } from './environment-utils';
10
+ import { parseTenantFromUrl } from './multi-tenancy-utils';
11
+ import { AuthService } from '../abstracts';
12
+ import { CHECK_AUTHENTICATION_STATE_FN_KEY } from '../tokens/check-authentication-state';
13
+ import { noop } from './common-utils';
14
+ export function getInitialData(injector) {
15
+ const fn = async () => {
16
+ const environmentService = injector.get(EnvironmentService);
17
+ const configState = injector.get(ConfigStateService);
18
+ const options = injector.get(CORE_OPTIONS);
19
+ environmentService.setState(options.environment);
20
+ await getRemoteEnv(injector, options.environment);
21
+ await parseTenantFromUrl(injector);
22
+ const authService = injector.get(AuthService, undefined, { optional: true });
23
+ const checkAuthenticationState = injector.get(CHECK_AUTHENTICATION_STATE_FN_KEY, noop, {
24
+ optional: true,
25
+ });
26
+ if (authService) {
27
+ await authService.init();
28
+ }
29
+ if (options.skipGetAppConfiguration)
30
+ return;
31
+ const result$ = configState.refreshAppState().pipe(tap(() => checkAuthenticationState(injector)), tap(() => {
32
+ const currentTenant = configState.getOne('currentTenant');
33
+ injector.get(SessionStateService).setTenant(currentTenant);
34
+ }), catchError(error => {
35
+ const appInitErrorHandlers = injector.get(APP_INIT_ERROR_HANDLERS, null);
36
+ if (appInitErrorHandlers && appInitErrorHandlers.length) {
37
+ appInitErrorHandlers.forEach(func => func(error));
38
+ }
39
+ return throwError(error);
40
+ }));
41
+ await lastValueFrom(result$);
42
+ };
43
+ return fn;
44
+ }
45
+ export function localeInitializer(injector) {
46
+ const fn = () => {
47
+ const sessionState = injector.get(SessionStateService);
48
+ const { registerLocaleFn } = injector.get(CORE_OPTIONS);
49
+ const lang = sessionState.getLanguage() || 'en';
50
+ return new Promise((resolve, reject) => {
51
+ registerLocaleFn(lang).then(module => {
52
+ if (module?.default)
53
+ registerLocaleData(module.default);
54
+ return resolve('resolved');
55
+ }, reject);
56
+ });
57
+ };
58
+ return fn;
59
+ }
60
60
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi91dGlscy9pbml0aWFsLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJELE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0QyxNQUFNLFVBQVUsY0FBYyxDQUFDLFFBQWtCO0lBQy9DLE1BQU0sRUFBRSxHQUFHLEtBQUssSUFBSSxFQUFFO1FBQ3BCLE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBYSxDQUFDO1FBRXZELGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsV0FBMEIsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sWUFBWSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEQsTUFBTSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RSxNQUFNLHdCQUF3QixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUNBQWlDLEVBQUUsSUFBSSxFQUFFO1lBQ3JGLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxXQUFXLEVBQUU7WUFDZixNQUFNLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUMxQjtRQUNELElBQUksT0FBTyxDQUFDLHVCQUF1QjtZQUFFLE9BQU87UUFFNUMsTUFBTSxPQUFPLEdBQUcsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDLElBQUksQ0FDaEQsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQzdDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDUCxNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBcUIsQ0FBQztZQUM5RSxRQUFRLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixNQUFNLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDekUsSUFBSSxvQkFBb0IsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3ZELG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ25EO1lBRUQsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNGLE1BQU0sYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUMsQ0FBQztJQUVGLE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxRQUFrQjtJQUNsRCxNQUFNLEVBQUUsR0FBRyxHQUFHLEVBQUU7UUFDZCxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDdkQsTUFBTSxFQUFFLGdCQUFnQixFQUFFLEdBQWEsUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVsRSxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDO1FBRWhELE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNuQyxJQUFJLE1BQU0sRUFBRSxPQUFPO29CQUFFLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFeEQsT0FBTyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDN0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7SUFFRixPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3RGbGFncywgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdGFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL21vZGVscy9lbnZpcm9ubWVudCc7XHJcbmltcG9ydCB7IEN1cnJlbnRUZW5hbnREdG8gfSBmcm9tICcuLi9wcm94eS92b2xvL2FicC9hc3AtbmV0LWNvcmUvbXZjL211bHRpLXRlbmFuY3kvbW9kZWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29uZmlnLXN0YXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2Vzc2lvblN0YXRlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IENPUkVfT1BUSU9OUyB9IGZyb20gJy4uL3Rva2Vucy9vcHRpb25zLnRva2VuJztcclxuaW1wb3J0IHsgQVBQX0lOSVRfRVJST1JfSEFORExFUlMgfSBmcm9tICcuLi90b2tlbnMvYXBwLWNvbmZpZy50b2tlbic7XHJcbmltcG9ydCB7IGdldFJlbW90ZUVudiB9IGZyb20gJy4vZW52aXJvbm1lbnQtdXRpbHMnO1xyXG5pbXBvcnQgeyBwYXJzZVRlbmFudEZyb21VcmwgfSBmcm9tICcuL211bHRpLXRlbmFuY3ktdXRpbHMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL2Fic3RyYWN0cyc7XHJcbmltcG9ydCB7IENIRUNLX0FVVEhFTlRJQ0FUSU9OX1NUQVRFX0ZOX0tFWSB9IGZyb20gJy4uL3Rva2Vucy9jaGVjay1hdXRoZW50aWNhdGlvbi1zdGF0ZSc7XHJcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL2NvbW1vbi11dGlscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW5pdGlhbERhdGEoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgY29uc3QgZm4gPSBhc3luYyAoKSA9PiB7XHJcbiAgICBjb25zdCBlbnZpcm9ubWVudFNlcnZpY2UgPSBpbmplY3Rvci5nZXQoRW52aXJvbm1lbnRTZXJ2aWNlKTtcclxuICAgIGNvbnN0IGNvbmZpZ1N0YXRlID0gaW5qZWN0b3IuZ2V0KENvbmZpZ1N0YXRlU2VydmljZSk7XHJcbiAgICBjb25zdCBvcHRpb25zID0gaW5qZWN0b3IuZ2V0KENPUkVfT1BUSU9OUykgYXMgQUJQLlJvb3Q7XHJcblxyXG4gICAgZW52aXJvbm1lbnRTZXJ2aWNlLnNldFN0YXRlKG9wdGlvbnMuZW52aXJvbm1lbnQgYXMgRW52aXJvbm1lbnQpO1xyXG4gICAgYXdhaXQgZ2V0UmVtb3RlRW52KGluamVjdG9yLCBvcHRpb25zLmVudmlyb25tZW50KTtcclxuICAgIGF3YWl0IHBhcnNlVGVuYW50RnJvbVVybChpbmplY3Rvcik7XHJcbiAgICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdG9yLmdldChBdXRoU2VydmljZSwgdW5kZWZpbmVkLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xyXG4gICAgY29uc3QgY2hlY2tBdXRoZW50aWNhdGlvblN0YXRlID0gaW5qZWN0b3IuZ2V0KENIRUNLX0FVVEhFTlRJQ0FUSU9OX1NUQVRFX0ZOX0tFWSwgbm9vcCwge1xyXG4gICAgICBvcHRpb25hbDogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgaWYgKGF1dGhTZXJ2aWNlKSB7XHJcbiAgICAgIGF3YWl0IGF1dGhTZXJ2aWNlLmluaXQoKTtcclxuICAgIH1cclxuICAgIGlmIChvcHRpb25zLnNraXBHZXRBcHBDb25maWd1cmF0aW9uKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgcmVzdWx0JCA9IGNvbmZpZ1N0YXRlLnJlZnJlc2hBcHBTdGF0ZSgpLnBpcGUoXHJcbiAgICAgIHRhcCgoKSA9PiBjaGVja0F1dGhlbnRpY2F0aW9uU3RhdGUoaW5qZWN0b3IpKSxcclxuICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICBjb25zdCBjdXJyZW50VGVuYW50ID0gY29uZmlnU3RhdGUuZ2V0T25lKCdjdXJyZW50VGVuYW50JykgYXMgQ3VycmVudFRlbmFudER0bztcclxuICAgICAgICBpbmplY3Rvci5nZXQoU2Vzc2lvblN0YXRlU2VydmljZSkuc2V0VGVuYW50KGN1cnJlbnRUZW5hbnQpO1xyXG4gICAgICB9KSxcclxuICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XHJcbiAgICAgICAgY29uc3QgYXBwSW5pdEVycm9ySGFuZGxlcnMgPSBpbmplY3Rvci5nZXQoQVBQX0lOSVRfRVJST1JfSEFORExFUlMsIG51bGwpO1xyXG4gICAgICAgIGlmIChhcHBJbml0RXJyb3JIYW5kbGVycyAmJiBhcHBJbml0RXJyb3JIYW5kbGVycy5sZW5ndGgpIHtcclxuICAgICAgICAgIGFwcEluaXRFcnJvckhhbmRsZXJzLmZvckVhY2goZnVuYyA9PiBmdW5jKGVycm9yKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgIH0pLFxyXG4gICAgKTtcclxuICAgIGF3YWl0IGxhc3RWYWx1ZUZyb20ocmVzdWx0JCk7XHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIGZuO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxlSW5pdGlhbGl6ZXIoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgY29uc3QgZm4gPSAoKSA9PiB7XHJcbiAgICBjb25zdCBzZXNzaW9uU3RhdGUgPSBpbmplY3Rvci5nZXQoU2Vzc2lvblN0YXRlU2VydmljZSk7XHJcbiAgICBjb25zdCB7IHJlZ2lzdGVyTG9jYWxlRm4gfTogQUJQLlJvb3QgPSBpbmplY3Rvci5nZXQoQ09SRV9PUFRJT05TKTtcclxuXHJcbiAgICBjb25zdCBsYW5nID0gc2Vzc2lvblN0YXRlLmdldExhbmd1YWdlKCkgfHwgJ2VuJztcclxuXHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICByZWdpc3RlckxvY2FsZUZuKGxhbmcpLnRoZW4obW9kdWxlID0+IHtcclxuICAgICAgICBpZiAobW9kdWxlPy5kZWZhdWx0KSByZWdpc3RlckxvY2FsZURhdGEobW9kdWxlLmRlZmF1bHQpO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVzb2x2ZSgncmVzb2x2ZWQnKTtcclxuICAgICAgfSwgcmVqZWN0KTtcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gIHJldHVybiBmbjtcclxufVxyXG4iXX0=
@@ -0,0 +1,37 @@
1
+ import compare from 'just-compare';
2
+ import { BehaviorSubject, Subject } from 'rxjs';
3
+ import { distinctUntilChanged, filter, map } from 'rxjs/operators';
4
+ import { deepMerge } from './object-utils';
5
+ export class InternalStore {
6
+ get state() {
7
+ return this.state$.value;
8
+ }
9
+ constructor(initialState) {
10
+ this.initialState = initialState;
11
+ this.state$ = new BehaviorSubject(this.initialState);
12
+ this.update$ = new Subject();
13
+ this.sliceState = (selector, compareFn = compare) => this.state$.pipe(map(selector), distinctUntilChanged(compareFn));
14
+ this.sliceUpdate = (selector, filterFn = (x) => x !== undefined) => this.update$.pipe(map(selector), filter(filterFn));
15
+ }
16
+ patch(state) {
17
+ let patchedState = state;
18
+ if (typeof state === 'object' && !Array.isArray(state)) {
19
+ patchedState = { ...this.state, ...state };
20
+ }
21
+ this.state$.next(patchedState);
22
+ this.update$.next(patchedState);
23
+ }
24
+ deepPatch(state) {
25
+ // TODO: Strict improve deepMerge
26
+ this.state$.next(deepMerge(this.state, state));
27
+ this.update$.next(state);
28
+ }
29
+ set(state) {
30
+ this.state$.next(state);
31
+ this.update$.next(state);
32
+ }
33
+ reset() {
34
+ this.set(this.initialState);
35
+ }
36
+ }
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtc3RvcmUtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvdXRpbHMvaW50ZXJuYWwtc3RvcmUtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE1BQU0sT0FBTyxhQUFhO0lBS3hCLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQVlELFlBQW9CLFlBQW1CO1FBQW5CLGlCQUFZLEdBQVosWUFBWSxDQUFPO1FBbEIvQixXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVEsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXZELFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBc0IsQ0FBQztRQU1wRCxlQUFVLEdBQUcsQ0FDWCxRQUFpQyxFQUNqQyxZQUErQyxPQUFPLEVBQ3RELEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsb0JBQW9CLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUV0RSxnQkFBVyxHQUFHLENBQ1osUUFBOEMsRUFDOUMsV0FBVyxDQUFDLENBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsRUFDeEMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUVkLENBQUM7SUFFM0MsS0FBSyxDQUFDLEtBQXFCO1FBQ3pCLElBQUksWUFBWSxHQUFHLEtBQWMsQ0FBQztRQUVsQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdEQsWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUM7U0FDNUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFrQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUF5QjtRQUNqQyxpQ0FBaUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFVLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsR0FBRyxDQUFDLEtBQVk7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUEyQixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM5QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBEZWVwUGFydGlhbCB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IGRlZXBNZXJnZSB9IGZyb20gJy4vb2JqZWN0LXV0aWxzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFN0b3JlPFN0YXRlPiB7XHJcbiAgcHJpdmF0ZSBzdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFN0YXRlPih0aGlzLmluaXRpYWxTdGF0ZSk7XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlJCA9IG5ldyBTdWJqZWN0PERlZXBQYXJ0aWFsPFN0YXRlPj4oKTtcclxuXHJcbiAgZ2V0IHN0YXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUkLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgc2xpY2VTdGF0ZSA9IDxTbGljZT4oXHJcbiAgICBzZWxlY3RvcjogKHN0YXRlOiBTdGF0ZSkgPT4gU2xpY2UsXHJcbiAgICBjb21wYXJlRm46IChzMTogU2xpY2UsIHMyOiBTbGljZSkgPT4gYm9vbGVhbiA9IGNvbXBhcmUsXHJcbiAgKSA9PiB0aGlzLnN0YXRlJC5waXBlKG1hcChzZWxlY3RvciksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKGNvbXBhcmVGbikpO1xyXG5cclxuICBzbGljZVVwZGF0ZSA9IDxTbGljZT4oXHJcbiAgICBzZWxlY3RvcjogKHN0YXRlOiBEZWVwUGFydGlhbDxTdGF0ZT4pID0+IFNsaWNlLFxyXG4gICAgZmlsdGVyRm4gPSAoeDogU2xpY2UpID0+IHggIT09IHVuZGVmaW5lZCxcclxuICApID0+IHRoaXMudXBkYXRlJC5waXBlKG1hcChzZWxlY3RvciksIGZpbHRlcihmaWx0ZXJGbikpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluaXRpYWxTdGF0ZTogU3RhdGUpIHt9XHJcblxyXG4gIHBhdGNoKHN0YXRlOiBQYXJ0aWFsPFN0YXRlPikge1xyXG4gICAgbGV0IHBhdGNoZWRTdGF0ZSA9IHN0YXRlIGFzIFN0YXRlO1xyXG5cclxuICAgIGlmICh0eXBlb2Ygc3RhdGUgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHN0YXRlKSkge1xyXG4gICAgICBwYXRjaGVkU3RhdGUgPSB7IC4uLnRoaXMuc3RhdGUsIC4uLnN0YXRlIH07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdGF0ZSQubmV4dChwYXRjaGVkU3RhdGUpO1xyXG4gICAgdGhpcy51cGRhdGUkLm5leHQocGF0Y2hlZFN0YXRlIGFzIERlZXBQYXJ0aWFsPFN0YXRlPik7XHJcbiAgfVxyXG5cclxuICBkZWVwUGF0Y2goc3RhdGU6IERlZXBQYXJ0aWFsPFN0YXRlPikge1xyXG4gICAgLy8gVE9ETzogU3RyaWN0IGltcHJvdmUgZGVlcE1lcmdlXHJcbiAgICB0aGlzLnN0YXRlJC5uZXh0KGRlZXBNZXJnZSh0aGlzLnN0YXRlLCBzdGF0ZSkgYXMgU3RhdGUpO1xyXG4gICAgdGhpcy51cGRhdGUkLm5leHQoc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgc2V0KHN0YXRlOiBTdGF0ZSkge1xyXG4gICAgdGhpcy5zdGF0ZSQubmV4dChzdGF0ZSk7XHJcbiAgICB0aGlzLnVwZGF0ZSQubmV4dChzdGF0ZSBhcyBEZWVwUGFydGlhbDxTdGF0ZT4pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLnNldCh0aGlzLmluaXRpYWxTdGF0ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,40 +1,40 @@
1
- import { Observable } from 'rxjs';
2
- import { CROSS_ORIGIN_STRATEGY } from '../strategies/cross-origin.strategy';
3
- import { DOM_STRATEGY } from '../strategies/dom.strategy';
4
- export function fromLazyLoad(element, domStrategy = DOM_STRATEGY.AppendToHead(), crossOriginStrategy = CROSS_ORIGIN_STRATEGY.Anonymous()) {
5
- crossOriginStrategy.setCrossOrigin(element);
6
- domStrategy.insertElement(element);
7
- return new Observable((observer) => {
8
- element.onload = (event) => {
9
- clearCallbacks(element);
10
- observer.next(event);
11
- observer.complete();
12
- };
13
- const handleError = createErrorHandler(observer, element);
14
- element.onerror = handleError;
15
- element.onabort = handleError;
16
- element.onemptied = handleError;
17
- element.onstalled = handleError;
18
- element.onsuspend = handleError;
19
- return () => {
20
- clearCallbacks(element);
21
- observer.complete();
22
- };
23
- });
24
- }
25
- function createErrorHandler(observer, element) {
26
- return function (event) {
27
- clearCallbacks(element);
28
- element.parentNode?.removeChild(element);
29
- observer.error(event);
30
- };
31
- }
32
- function clearCallbacks(element) {
33
- element.onload = null;
34
- element.onerror = null;
35
- element.onabort = null;
36
- element.onemptied = null;
37
- element.onstalled = null;
38
- element.onsuspend = null;
39
- }
1
+ import { Observable } from 'rxjs';
2
+ import { CROSS_ORIGIN_STRATEGY } from '../strategies/cross-origin.strategy';
3
+ import { DOM_STRATEGY } from '../strategies/dom.strategy';
4
+ export function fromLazyLoad(element, domStrategy = DOM_STRATEGY.AppendToHead(), crossOriginStrategy = CROSS_ORIGIN_STRATEGY.Anonymous()) {
5
+ crossOriginStrategy.setCrossOrigin(element);
6
+ domStrategy.insertElement(element);
7
+ return new Observable((observer) => {
8
+ element.onload = (event) => {
9
+ clearCallbacks(element);
10
+ observer.next(event);
11
+ observer.complete();
12
+ };
13
+ const handleError = createErrorHandler(observer, element);
14
+ element.onerror = handleError;
15
+ element.onabort = handleError;
16
+ element.onemptied = handleError;
17
+ element.onstalled = handleError;
18
+ element.onsuspend = handleError;
19
+ return () => {
20
+ clearCallbacks(element);
21
+ observer.complete();
22
+ };
23
+ });
24
+ }
25
+ function createErrorHandler(observer, element) {
26
+ return function (event) {
27
+ clearCallbacks(element);
28
+ element.parentNode?.removeChild(element);
29
+ observer.error(event);
30
+ };
31
+ }
32
+ function clearCallbacks(element) {
33
+ element.onload = null;
34
+ element.onerror = null;
35
+ element.onabort = null;
36
+ element.onemptied = null;
37
+ element.onstalled = null;
38
+ element.onsuspend = null;
39
+ }
40
40
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS1sb2FkLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3V0aWxzL2xhenktbG9hZC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBdUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sNEJBQTRCLENBQUM7QUFFdkUsTUFBTSxVQUFVLFlBQVksQ0FDMUIsT0FBNEMsRUFDNUMsY0FBMkIsWUFBWSxDQUFDLFlBQVksRUFBRSxFQUN0RCxzQkFBMkMscUJBQXFCLENBQUMsU0FBUyxFQUFFO0lBRTVFLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxXQUFXLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRW5DLE9BQU8sSUFBSSxVQUFVLENBQUMsQ0FBQyxRQUFxQixFQUFFLEVBQUU7UUFDOUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ2hDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN4QixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQVUsQ0FBQyxDQUFDO1lBQzFCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUM7UUFFRixNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFMUQsT0FBTyxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUM7UUFDOUIsT0FBTyxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUM7UUFDOUIsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7UUFDaEMsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7UUFDaEMsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7UUFFaEMsT0FBTyxHQUFHLEVBQUU7WUFDVixjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDeEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQTBCLFFBQXFCLEVBQUUsT0FBb0I7SUFDOUYsT0FBTyxVQUFVLEtBQXFCO1FBQ3BDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4QixPQUFPLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxPQUFvQjtJQUMxQyxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztJQUN0QixPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN2QixPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN2QixPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN6QixPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN6QixPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ1JPU1NfT1JJR0lOX1NUUkFURUdZLCBDcm9zc09yaWdpblN0cmF0ZWd5IH0gZnJvbSAnLi4vc3RyYXRlZ2llcy9jcm9zcy1vcmlnaW4uc3RyYXRlZ3knO1xyXG5pbXBvcnQgeyBET01fU1RSQVRFR1ksIERvbVN0cmF0ZWd5IH0gZnJvbSAnLi4vc3RyYXRlZ2llcy9kb20uc3RyYXRlZ3knO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZyb21MYXp5TG9hZDxUIGV4dGVuZHMgRXZlbnQ+KFxyXG4gIGVsZW1lbnQ6IEhUTUxTY3JpcHRFbGVtZW50IHwgSFRNTExpbmtFbGVtZW50LFxyXG4gIGRvbVN0cmF0ZWd5OiBEb21TdHJhdGVneSA9IERPTV9TVFJBVEVHWS5BcHBlbmRUb0hlYWQoKSxcclxuICBjcm9zc09yaWdpblN0cmF0ZWd5OiBDcm9zc09yaWdpblN0cmF0ZWd5ID0gQ1JPU1NfT1JJR0lOX1NUUkFURUdZLkFub255bW91cygpLFxyXG4pOiBPYnNlcnZhYmxlPFQ+IHtcclxuICBjcm9zc09yaWdpblN0cmF0ZWd5LnNldENyb3NzT3JpZ2luKGVsZW1lbnQpO1xyXG4gIGRvbVN0cmF0ZWd5Lmluc2VydEVsZW1lbnQoZWxlbWVudCk7XHJcblxyXG4gIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXI6IE9ic2VydmVyPFQ+KSA9PiB7XHJcbiAgICBlbGVtZW50Lm9ubG9hZCA9IChldmVudDogRXZlbnQpID0+IHtcclxuICAgICAgY2xlYXJDYWxsYmFja3MoZWxlbWVudCk7XHJcbiAgICAgIG9ic2VydmVyLm5leHQoZXZlbnQgYXMgVCk7XHJcbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGhhbmRsZUVycm9yID0gY3JlYXRlRXJyb3JIYW5kbGVyKG9ic2VydmVyLCBlbGVtZW50KTtcclxuXHJcbiAgICBlbGVtZW50Lm9uZXJyb3IgPSBoYW5kbGVFcnJvcjtcclxuICAgIGVsZW1lbnQub25hYm9ydCA9IGhhbmRsZUVycm9yO1xyXG4gICAgZWxlbWVudC5vbmVtcHRpZWQgPSBoYW5kbGVFcnJvcjtcclxuICAgIGVsZW1lbnQub25zdGFsbGVkID0gaGFuZGxlRXJyb3I7XHJcbiAgICBlbGVtZW50Lm9uc3VzcGVuZCA9IGhhbmRsZUVycm9yO1xyXG5cclxuICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgIGNsZWFyQ2FsbGJhY2tzKGVsZW1lbnQpO1xyXG4gICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xyXG4gICAgfTtcclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gY3JlYXRlRXJyb3JIYW5kbGVyPFQgZXh0ZW5kcyBFdmVudCA9IEV2ZW50PihvYnNlcnZlcjogT2JzZXJ2ZXI8VD4sIGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uIChldmVudDogRXZlbnQgfCBzdHJpbmcpIHtcclxuICAgIGNsZWFyQ2FsbGJhY2tzKGVsZW1lbnQpO1xyXG4gICAgZWxlbWVudC5wYXJlbnROb2RlPy5yZW1vdmVDaGlsZChlbGVtZW50KTtcclxuICAgIG9ic2VydmVyLmVycm9yKGV2ZW50KTtcclxuICB9O1xyXG59XHJcblxyXG5mdW5jdGlvbiBjbGVhckNhbGxiYWNrcyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xyXG4gIGVsZW1lbnQub25sb2FkID0gbnVsbDtcclxuICBlbGVtZW50Lm9uZXJyb3IgPSBudWxsO1xyXG4gIGVsZW1lbnQub25hYm9ydCA9IG51bGw7XHJcbiAgZWxlbWVudC5vbmVtcHRpZWQgPSBudWxsO1xyXG4gIGVsZW1lbnQub25zdGFsbGVkID0gbnVsbDtcclxuICBlbGVtZW50Lm9uc3VzcGVuZCA9IG51bGw7XHJcbn1cclxuIl19