@eui/core 16.2.4 → 16.2.5-snapshot-1698024715233

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 (175) hide show
  1. package/docs/classes/ApiQueueServiceMock.html +1 -5
  2. package/docs/classes/I18nResourceImpl.html +2 -0
  3. package/docs/classes/LogServiceMock.html +1 -1
  4. package/docs/classes/RouterMock.html +1 -14
  5. package/docs/classes/StorageServiceMock.html +0 -9
  6. package/docs/classes/StoreMock.html +4 -17
  7. package/docs/classes/UxRootInjectorGuard.html +2 -2
  8. package/docs/dependencies.html +2 -2
  9. package/docs/injectables/ApiQueueService.html +2 -10
  10. package/docs/injectables/CoreAppEffects.html +10 -10
  11. package/docs/injectables/I18nService.html +66 -0
  12. package/docs/injectables/LogService.html +1 -2
  13. package/docs/injectables/StoreService.html +8 -8
  14. package/docs/injectables/StoreServiceMock.html +5 -5
  15. package/docs/injectables/UserService.html +2 -2
  16. package/docs/injectables/UserServiceMock.html +217 -136
  17. package/docs/injectables/UxAppShellService.html +1 -1
  18. package/docs/injectables/UxDynamicComponentService.html +1 -1
  19. package/docs/injectables/UxDynamicMenuService.html +2 -2
  20. package/docs/interceptors/AddLangParamInterceptor.html +11 -3
  21. package/docs/interceptors/CachePreventionInterceptor.html +11 -3
  22. package/docs/interceptors/CorsSecurityInterceptor.html +11 -3
  23. package/docs/interceptors/CsrfPreventionInterceptor.html +11 -3
  24. package/docs/interceptors/EuLoginSessionTimeoutHandlingInterceptor.html +11 -3
  25. package/docs/interfaces/UIState.html +6 -6
  26. package/docs/js/menu-wc.js +6 -6
  27. package/docs/js/search/search_index.js +2 -2
  28. package/docs/miscellaneous/functions.html +42 -0
  29. package/docs/miscellaneous/variables.html +49 -49
  30. package/docs/modules/I18nModule.html +1 -1
  31. package/esm2022/lib/eui-core.module.mjs +3 -3
  32. package/esm2022/lib/helpers/date-helpers.mjs +1 -1
  33. package/esm2022/lib/helpers/dom-helpers.mjs +10 -8
  34. package/esm2022/lib/helpers/event-helpers.mjs +1 -1
  35. package/esm2022/lib/helpers/form-helpers.mjs +1 -1
  36. package/esm2022/lib/helpers/format-helpers.mjs +6 -5
  37. package/esm2022/lib/helpers/http-helpers.mjs +3 -5
  38. package/esm2022/lib/interceptors/add-lang-param.interceptor.mjs +1 -1
  39. package/esm2022/lib/interceptors/cache-prevention.interceptor.mjs +1 -1
  40. package/esm2022/lib/interceptors/cors-security.interceptor.mjs +1 -1
  41. package/esm2022/lib/interceptors/csrf-prevention.interceptor.mjs +1 -1
  42. package/esm2022/lib/interceptors/eu-login-session-timeout-handling.interceptor.mjs +10 -3
  43. package/esm2022/lib/interceptors/openid/openid-connect.interceptor.mjs +34 -5
  44. package/esm2022/lib/interceptors/openid/openid-connect.service.mjs +3 -1
  45. package/esm2022/lib/interceptors/ux-request-error-model.interceptor.mjs +7 -2
  46. package/esm2022/lib/services/app/eui-init-app.mjs +2 -2
  47. package/esm2022/lib/services/app/eui-pre-init-app.mjs +1 -1
  48. package/esm2022/lib/services/app/factories/log.mjs +1 -1
  49. package/esm2022/lib/services/config/tokens.mjs +3 -1
  50. package/esm2022/lib/services/errors/eui.error.mjs +5 -1
  51. package/esm2022/lib/services/errors/global-error-handler.mjs +4 -2
  52. package/esm2022/lib/services/errors/http-error-handler-callback-functions.mjs +2 -2
  53. package/esm2022/lib/services/errors/http-error-handler.interceptor.mjs +21 -14
  54. package/esm2022/lib/services/i18n/i18n.loader.mjs +13 -2
  55. package/esm2022/lib/services/i18n/i18n.resource.mjs +8 -3
  56. package/esm2022/lib/services/i18n/i18n.service.mjs +14 -16
  57. package/esm2022/lib/services/i18n/index.mjs +2 -2
  58. package/esm2022/lib/services/locale/locale.service.mjs +4 -2
  59. package/esm2022/lib/services/log/log.service.mjs +1 -1
  60. package/esm2022/lib/services/log/log.service.mock.mjs +1 -1
  61. package/esm2022/lib/services/permission/permission.service.mjs +2 -2
  62. package/esm2022/lib/services/queue/api-queue.service.mjs +17 -5
  63. package/esm2022/lib/services/queue/api-queue.service.mock.mjs +5 -1
  64. package/esm2022/lib/services/storage/async-storage.service.mjs +1 -1
  65. package/esm2022/lib/services/storage/async-storage.service.mock.mjs +9 -1
  66. package/esm2022/lib/services/storage/local-forage.service.mjs +40 -15
  67. package/esm2022/lib/services/storage/local-storage.service.mjs +5 -1
  68. package/esm2022/lib/services/storage/session-storage.service.mjs +5 -1
  69. package/esm2022/lib/services/storage/storage.service.mjs +1 -1
  70. package/esm2022/lib/services/storage/storage.service.mock.mjs +1 -1
  71. package/esm2022/lib/services/store/actions/app.actions.mjs +3 -1
  72. package/esm2022/lib/services/store/actions/notifications.actions.mjs +3 -1
  73. package/esm2022/lib/services/store/actions/user.actions.mjs +3 -1
  74. package/esm2022/lib/services/store/effects/app.effects.mjs +3 -3
  75. package/esm2022/lib/services/store/reducers/app.reducers.mjs +2 -3
  76. package/esm2022/lib/services/store/reducers/core.reducers.mjs +3 -1
  77. package/esm2022/lib/services/store/reducers/i18n.reducers.mjs +2 -2
  78. package/esm2022/lib/services/store/reducers/locale.reducers.mjs +1 -1
  79. package/esm2022/lib/services/store/reducers/meta.reducers.mjs +4 -2
  80. package/esm2022/lib/services/store/reducers/notifications.reducers.mjs +2 -2
  81. package/esm2022/lib/services/store/reducers/user.reducers.mjs +2 -2
  82. package/esm2022/lib/services/store/store.service.mjs +11 -3
  83. package/esm2022/lib/services/store/store.service.mock.mjs +1 -1
  84. package/esm2022/lib/services/user/user.service.mjs +10 -4
  85. package/esm2022/lib/services/user/user.service.mock.mjs +8 -14
  86. package/esm2022/lib/services/ux-app-shell.service.mjs +18 -10
  87. package/esm2022/lib/services/ux-dynamic-component/ux-dynamic-component.service.mjs +6 -1
  88. package/esm2022/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.mjs +5 -2
  89. package/esm2022/lib/services/ux-error-feedback/ux-error-feedback.service.mjs +1 -1
  90. package/esm2022/lib/services/ux-error-feedback/ux-error-handler.operator.mjs +1 -1
  91. package/fesm2022/eui-core.mjs +601 -467
  92. package/fesm2022/eui-core.mjs.map +1 -1
  93. package/lib/eui-core.module.d.ts +1 -1
  94. package/lib/eui-core.module.d.ts.map +1 -1
  95. package/lib/helpers/date-helpers.d.ts.map +1 -1
  96. package/lib/helpers/dom-helpers.d.ts +9 -7
  97. package/lib/helpers/dom-helpers.d.ts.map +1 -1
  98. package/lib/helpers/event-helpers.d.ts.map +1 -1
  99. package/lib/helpers/form-helpers.d.ts.map +1 -1
  100. package/lib/helpers/format-helpers.d.ts.map +1 -1
  101. package/lib/helpers/http-helpers.d.ts +2 -1
  102. package/lib/helpers/http-helpers.d.ts.map +1 -1
  103. package/lib/interceptors/add-lang-param.interceptor.d.ts +1 -1
  104. package/lib/interceptors/add-lang-param.interceptor.d.ts.map +1 -1
  105. package/lib/interceptors/cache-prevention.interceptor.d.ts +1 -1
  106. package/lib/interceptors/cache-prevention.interceptor.d.ts.map +1 -1
  107. package/lib/interceptors/cors-security.interceptor.d.ts +1 -1
  108. package/lib/interceptors/cors-security.interceptor.d.ts.map +1 -1
  109. package/lib/interceptors/csrf-prevention.interceptor.d.ts +1 -1
  110. package/lib/interceptors/csrf-prevention.interceptor.d.ts.map +1 -1
  111. package/lib/interceptors/eu-login-session-timeout-handling.interceptor.d.ts +1 -1
  112. package/lib/interceptors/eu-login-session-timeout-handling.interceptor.d.ts.map +1 -1
  113. package/lib/interceptors/openid/openid-connect.interceptor.d.ts.map +1 -1
  114. package/lib/interceptors/openid/openid-connect.service.d.ts.map +1 -1
  115. package/lib/interceptors/ux-request-error-model.interceptor.d.ts +1 -1
  116. package/lib/interceptors/ux-request-error-model.interceptor.d.ts.map +1 -1
  117. package/lib/services/app/eui-init-app.d.ts +1 -1
  118. package/lib/services/app/eui-init-app.d.ts.map +1 -1
  119. package/lib/services/config/tokens.d.ts +2 -2
  120. package/lib/services/config/tokens.d.ts.map +1 -1
  121. package/lib/services/errors/eui.error.d.ts.map +1 -1
  122. package/lib/services/errors/global-error-handler.d.ts +1 -1
  123. package/lib/services/errors/global-error-handler.d.ts.map +1 -1
  124. package/lib/services/errors/http-error-handler-callback-functions.d.ts.map +1 -1
  125. package/lib/services/errors/http-error-handler.interceptor.d.ts.map +1 -1
  126. package/lib/services/i18n/i18n.loader.d.ts.map +1 -1
  127. package/lib/services/i18n/i18n.resource.d.ts +1 -1
  128. package/lib/services/i18n/i18n.resource.d.ts.map +1 -1
  129. package/lib/services/i18n/i18n.service.d.ts +4 -4
  130. package/lib/services/i18n/i18n.service.d.ts.map +1 -1
  131. package/lib/services/i18n/index.d.ts +0 -1
  132. package/lib/services/i18n/index.d.ts.map +1 -1
  133. package/lib/services/locale/locale.service.d.ts.map +1 -1
  134. package/lib/services/log/log.service.d.ts.map +1 -1
  135. package/lib/services/log/log.service.mock.d.ts.map +1 -1
  136. package/lib/services/permission/permission.service.d.ts.map +1 -1
  137. package/lib/services/queue/api-queue.service.d.ts +2 -2
  138. package/lib/services/queue/api-queue.service.d.ts.map +1 -1
  139. package/lib/services/queue/api-queue.service.mock.d.ts.map +1 -1
  140. package/lib/services/storage/async-storage.service.d.ts.map +1 -1
  141. package/lib/services/storage/async-storage.service.mock.d.ts.map +1 -1
  142. package/lib/services/storage/local-forage.service.d.ts +1 -1
  143. package/lib/services/storage/local-forage.service.d.ts.map +1 -1
  144. package/lib/services/storage/local-storage.service.d.ts.map +1 -1
  145. package/lib/services/storage/session-storage.service.d.ts.map +1 -1
  146. package/lib/services/storage/storage.service.d.ts.map +1 -1
  147. package/lib/services/storage/storage.service.mock.d.ts +1 -1
  148. package/lib/services/storage/storage.service.mock.d.ts.map +1 -1
  149. package/lib/services/store/actions/app.actions.d.ts.map +1 -1
  150. package/lib/services/store/actions/notifications.actions.d.ts.map +1 -1
  151. package/lib/services/store/actions/user.actions.d.ts.map +1 -1
  152. package/lib/services/store/reducers/app.reducers.d.ts.map +1 -1
  153. package/lib/services/store/reducers/core.reducers.d.ts.map +1 -1
  154. package/lib/services/store/reducers/meta.reducers.d.ts +2 -2
  155. package/lib/services/store/reducers/meta.reducers.d.ts.map +1 -1
  156. package/lib/services/store/reducers/user.reducers.d.ts.map +1 -1
  157. package/lib/services/store/store.service.d.ts +8 -8
  158. package/lib/services/store/store.service.d.ts.map +1 -1
  159. package/lib/services/store/store.service.mock.d.ts +2 -1
  160. package/lib/services/store/store.service.mock.d.ts.map +1 -1
  161. package/lib/services/user/user.service.d.ts +3 -3
  162. package/lib/services/user/user.service.d.ts.map +1 -1
  163. package/lib/services/user/user.service.mock.d.ts +10 -12
  164. package/lib/services/user/user.service.mock.d.ts.map +1 -1
  165. package/lib/services/ux-app-shell.service.d.ts +5 -5
  166. package/lib/services/ux-app-shell.service.d.ts.map +1 -1
  167. package/lib/services/ux-dynamic-component/ux-dynamic-component.service.d.ts +3 -7
  168. package/lib/services/ux-dynamic-component/ux-dynamic-component.service.d.ts.map +1 -1
  169. package/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.d.ts +6 -6
  170. package/lib/services/ux-dynamic-menu/ux-dynamic-menu.service.d.ts.map +1 -1
  171. package/lib/services/ux-error-feedback/ux-error-feedback.service.d.ts.map +1 -1
  172. package/package.json +2 -2
  173. package/esm2022/lib/services/i18n/i18n.service.mock.mjs +0 -38
  174. package/lib/services/i18n/i18n.service.mock.d.ts +0 -20
  175. package/lib/services/i18n/i18n.service.mock.d.ts.map +0 -1
@@ -1,4 +1,6 @@
1
1
  import * as extendProxy from 'extend';
2
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
3
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2
4
  const extend = extendProxy.default || extendProxy;
3
5
  import { InjectionToken } from '@angular/core';
4
6
  import { DEFAULT_EUI_CONFIG } from './defaults';
@@ -71,4 +73,4 @@ export function mergeAppJsonConfigToAppConfig(euiAppConfig, envAppJsonConfig, me
71
73
  }
72
74
  return Object.assign({}, euiAppConfig, envAppJsonConfig, deepMerged);
73
75
  }
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9jb25maWcvdG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE9BQU8sS0FBSyxXQUFXLE1BQU0sUUFBUSxDQUFDO0FBRXRDLE1BQU0sTUFBTSxHQUFTLFdBQVksQ0FBQyxPQUFPLElBQUksV0FBVyxDQUFDO0FBRXpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRWhELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLElBQUksY0FBYyxDQUFZLFdBQVcsQ0FBQyxDQUFDO0FBQzNFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFTLFlBQVksQ0FBQyxDQUFDO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFlLGNBQWMsQ0FBQyxDQUFDO0FBQ3BGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBZSxrQkFBa0IsQ0FBQyxDQUFDO0FBQ2pGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFlLGNBQWMsQ0FBQyxDQUFDO0FBQ3BGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FBUyxVQUFVLENBQUMsQ0FBQztBQUN0RSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBWSxXQUFXLENBQUMsQ0FBQztBQUNoRixNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FBVSx3QkFBd0IsQ0FBQyxDQUFDO0FBRWxHLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsQ0FBQyxDQUFDO0FBRXZILE1BQU0sVUFBVSxlQUFlLENBQUMs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QUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbEIsSUFDSSxnQkFBZ0IsSUFBSSxJQUFJO2dCQUN4QixnQkFBZ0IsQ0FBQyxHQUFHLENBQUM7Z0JBQ3JCLE9BQU8sZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUTtnQkFDekMsWUFBWSxJQUFJLElBQUk7Z0JBQ3BCLFlBQVksQ0FBQyxHQUFHLENBQUM7Z0JBQ2pCLE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsRUFDdkM7Z0JBQ0UsSUFBSSxXQUFXLEVBQUU7b0JBQ2IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDckIsTUFBTSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQzNFO3FCQUFNO29CQUNILGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHO3dCQUNwQixHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUM7d0JBQ3BCLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDO3FCQUMzQixDQUFDO2lCQUNMO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztLQUNOO0lBQ0QsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRXVpQXBwQ29uZmlnLFxuICAgIEV1aUFwcEhhbmRsZXJzQ29uZmlnLFxuICAgIEV1aUFwcEpzb25Db25maWcsXG4gICAgRXVpQ29uZmlnLFxuICAgIExvZ0NvbmZpZyxcbiAgICBNb2R1bGVDb25maWcsXG4gICAgR2xvYmFsQ29uZmlnLFxuICAgIEh0dHBFcnJvckhhbmRsZXJDb25maWcsXG4gICAgQ29ubmVjdGlvblN0YXR1cyxcbn0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCAqIGFzIGV4dGVuZFByb3h5IGZyb20gJ2V4dGVuZCc7XG5cbmNvbnN0IGV4dGVuZCA9ICg8YW55PmV4dGVuZFByb3h5KS5kZWZhdWx0IHx8IGV4dGVuZFByb3h5O1xuXG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgREVGQVVMVF9FVUlfQ09ORklHIH0gZnJvbSAnLi9kZWZhdWx0cyc7XG5cbmV4cG9ydCBjb25zdCBFVUlfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEV1aUNvbmZpZz4oJ0V1aUNvbmZpZycpO1xuZXhwb3J0IGNvbnN0IE1PRFVMRV9OQU1FX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ21vZHVsZU5hbWUnKTtcbmV4cG9ydCBjb25zdCBNT0RVTEVfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPE1vZHVsZUNvbmZpZz4oJ21vZHVsZUNvbmZpZycpO1xuZXhwb3J0IGNvbnN0IENPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxFdWlBcHBDb25maWc+KCdmaW5hbENvbmZpZ1Rva2VuJyk7XG5leHBvcnQgY29uc3QgR0xPQkFMX0NPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxHbG9iYWxDb25maWc+KCdnbG9iYWxDb25maWcnKTtcbmV4cG9ydCBjb25zdCBCQVNFX05BTUVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignYmFzZU5hbWUnKTtcbmV4cG9ydCBjb25zdCBST09UX0xPR19DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TG9nQ29uZmlnPignbG9nQ29uZmlnJyk7XG5leHBvcnQgY29uc3QgU0hPV19DT05ORUNUSU9OX1NUQVRVU19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPignU0hPV19DT05ORUNUSU9OX1NUQVRVUycpO1xuXG5leHBvcnQgY29uc3QgSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIdHRwRXJyb3JIYW5kbGVyQ29uZmlnPignSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJRycpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsQ29uZmlnKGFwcENvbmZpZzogRXVpQXBwQ29uZmlnKTogR2xvYmFsQ29uZmlnIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihERUZBVUxUX0VVSV9DT05GSUcuYXBwQ29uZmlnLmdsb2JhbCwgYXBwQ29uZmlnICYmIGFwcENvbmZpZy5nbG9iYWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hvd0Nvbm5lY3Rpb25TdGF0dXMoZ2xvYmFsQ29uZmlnOiBHbG9iYWxDb25maWcpOiBib29sZWFuIHwgQ29ubmVjdGlvblN0YXR1cyB7XG4gICAgLy8gVE9ETzogcmVtb3ZlIG9uIGVVSSAxNFxuICAgIGlmICh0eXBlb2YgZ2xvYmFsQ29uZmlnPy5zaG93Q29ubmVjdGlvblN0YXR1cyA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignVXNhZ2Ugb2Ygc2hvd0Nvbm5lY3Rpb25TdGF0dXMgYXMgYm9vbGVhbiBpcyBkZXByZWNhdGVkLCBwbGVhc2UgdXNlIENvbm5lY3Rpb25TdGF0dXMgdHlwZScpO1xuICAgIH1cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9FVUlfQ09ORklHLmFwcENvbmZpZy5nbG9iYWwuc2hvd0Nvbm5lY3Rpb25TdGF0dXMsIGdsb2JhbENvbmZpZyAmJiBnbG9iYWxDb25maWcuc2hvd0Nvbm5lY3Rpb25TdGF0dXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9kdWxlQ29uZmlnKGFwcENvbmZpZzogRXVpQXBwQ29uZmlnLCBtb2R1bGVOYW1lOiBzdHJpbmcpOiBNb2R1bGVDb25maWcge1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhcHBDb25maWcgJiYgYXBwQ29uZmlnLm1vZHVsZXMgJiYgYXBwQ29uZmlnLm1vZHVsZXNbbW9kdWxlTmFtZV0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SHR0cEVycm9ySGFuZGxpbmdDb25maWcoYXBwQ29uZmlnOiBFdWlBcHBDb25maWcpOiBIdHRwRXJyb3JIYW5kbGVyQ29uZmlnIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgYXBwQ29uZmlnICYmIGFwcENvbmZpZy5odHRwRXJyb3JIYW5kbGVyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3RMb2dDb25maWcoYXBwQ29uZmlnOiBFdWlBcHBDb25maWcpOiBMb2dDb25maWcge1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhcHBDb25maWcgJiYgYXBwQ29uZmlnLmxvZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlRXVpQXBwQ29uZmlnVG9rZW4oZXVpQ29uZmlnOiBFdWlDb25maWcpOiBFdWlBcHBDb25maWcge1xuICAgIGNvbnN0IGVudmlyb25tZW50ID0gZXVpQ29uZmlnICYmIGV1aUNvbmZpZy5lbnZpcm9ubWVudDtcbiAgICBjb25zdCBtZXJnZTogQXJyYXk8c3RyaW5nPiA9XG4gICAgICAgIGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcgJiYgZW52aXJvbm1lbnQuZW52RHluYW1pY0NvbmZpZy5tZXJnZSAmJiBBcnJheS5pc0FycmF5KGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcubWVyZ2UpXG4gICAgICAgICAgICA/IGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcubWVyZ2VcbiAgICAgICAgICAgIDogW107XG4gICAgY29uc3QgaXNEZWVwTWVyZ2U6IGJvb2xlYW4gPVxuICAgICAgICBlbnZpcm9ubWVudC5lbnZEeW5hbWljQ29uZmlnICYmIGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcuZGVlcE1lcmdlID8gZW52aXJvbm1lbnQuZW52RHluYW1pY0NvbmZpZy5kZWVwTWVyZ2UgOiBmYWxzZTtcbiAgICBjb25zdCBlbnZBcHBKc29uQ29uZmlnOiBFdWlBcHBKc29uQ29uZmlnID0gZW52aXJvbm1lbnQgJiYgZW52aXJvbm1lbnQubG9hZGVkRW52RHluYW1pY0NvbmZpZztcbiAgICBjb25zdCBpbml0aWFsQXBwQ29uZmlnID0gZXVpQ29uZmlnICYmIGV1aUNvbmZpZy5hcHBDb25maWc7XG4gICAgY29uc3QgZW52QXBwSGFuZGxlcnNDb25maWc6IEV1aUFwcEhhbmRsZXJzQ29uZmlnID0gZW52aXJvbm1lbnQgJiYgZW52aXJvbm1lbnQuZW52QXBwSGFuZGxlcnNDb25maWc7XG5cbiAgICBjb25zdCBlbnZIYW5kbGVyc01lcmdlZEFwcENvbmZpZyA9IG1lcmdlQXBwSGFuZGxlckNvbmZpZ1RvQXBwQ29uZmlnKGluaXRpYWxBcHBDb25maWcsIGVudkFwcEhhbmRsZXJzQ29uZmlnKTtcbiAgICBjb25zdCBmaW5hbENvbmZpZyA9IG1lcmdlQXBwSnNvbkNvbmZpZ1RvQXBwQ29uZmlnKGVudkhhbmRsZXJzTWVyZ2VkQXBwQ29uZmlnLCBlbnZBcHBKc29uQ29uZmlnLCBtZXJnZSwgaXNEZWVwTWVyZ2UpO1xuICAgIHJldHVybiBmaW5hbENvbmZpZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlQXBwSGFuZGxlckNvbmZpZ1RvQXBwQ29uZmlnKGV1aUFwcENvbmZpZzogRXVpQXBwQ29uZmlnLCBlbnZBcHBIYW5kbGVyOiBFdWlBcHBIYW5kbGVyc0NvbmZpZyk6IEV1aUFwcENvbmZpZyB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGV1aUFwcENvbmZpZywgZW52QXBwSGFuZGxlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZUFwcEpzb25Db25maWdUb0FwcENvbmZpZyhcbiAgICBldWlBcHBDb25maWc6IEV1aUFwcENvbmZpZyxcbiAgICBlbnZBcHBKc29uQ29uZmlnOiBFdWlBcHBKc29uQ29uZmlnLFxuICAgIG1lcmdlOiBBcnJheTxzdHJpbmc+LFxuICAgIGlzRGVlcE1lcmdlOiBib29sZWFuXG4pOiBFdWlBcHBDb25maWcge1xuICAgIGNvbnN0IGRlZXBNZXJnZWQgPSB7fTtcbiAgICBpZiAobWVyZ2UgJiYgbWVyZ2UubGVuZ3RoID4gMCkge1xuICAgICAgICBtZXJnZS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBlbnZBcHBKc29uQ29uZmlnICE9IG51bGwgJiZcbiAgICAgICAgICAgICAgICBlbnZBcHBKc29uQ29uZmlnW2tleV0gJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgZW52QXBwSnNvbkNvbmZpZ1trZXldID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgICAgIGV1aUFwcENvbmZpZyAhPSBudWxsICYmXG4gICAgICAgICAgICAgICAgZXVpQXBwQ29uZmlnW2tleV0gJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgZXVpQXBwQ29uZmlnW2tleV0gPT09ICdvYmplY3QnXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNEZWVwTWVyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVlcE1lcmdlZFtrZXldID0ge307XG4gICAgICAgICAgICAgICAgICAgIGV4dGVuZCh0cnVlLCBkZWVwTWVyZ2VkW2tleV0sIGV1aUFwcENvbmZpZ1trZXldLCBlbnZBcHBKc29uQ29uZmlnW2tleV0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGVudkFwcEpzb25Db25maWdba2V5XSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmV1aUFwcENvbmZpZ1trZXldLFxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uZW52QXBwSnNvbkNvbmZpZ1trZXldLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBldWlBcHBDb25maWcsIGVudkFwcEpzb25Db25maWcsIGRlZXBNZXJnZWQpO1xufVxuIl19
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9jb25maWcvdG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE9BQU8sS0FBSyxXQUFXLE1BQU0sUUFBUSxDQUFDO0FBRXRDLG1IQUFtSDtBQUNuSCw4REFBOEQ7QUFDOUQsTUFBTSxNQUFNLEdBQVMsV0FBWSxDQUFDLE9BQU8sSUFBSSxXQUFXLENBQUM7QUFFekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFaEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQVksV0FBVyxDQUFDLENBQUM7QUFDM0UsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQVMsWUFBWSxDQUFDLENBQUM7QUFDMUUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQWUsY0FBYyxDQUFDLENBQUM7QUFDcEYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksY0FBYyxDQUFlLGtCQUFrQixDQUFDLENBQUM7QUFDakYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQWUsY0FBYyxDQUFDLENBQUM7QUFDcEYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFTLFVBQVUsQ0FBQyxDQUFDO0FBQ3RFLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFZLFdBQVcsQ0FBQyxDQUFDO0FBQ2hGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLElBQUksY0FBYyxDQUFVLHdCQUF3QixDQUFDLENBQUM7QUFFbEcsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxjQUFjLENBQXlCLDJCQUEyQixDQUFDLENBQUM7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QUFDO0lBQ3RCLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQzNCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNsQixJQUNJLGdCQUFnQixJQUFJLElBQUk7Z0JBQ3hCLGdCQUFnQixDQUFDLEdBQUcsQ0FBQztnQkFDckIsT0FBTyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRO2dCQUN6QyxZQUFZLElBQUksSUFBSTtnQkFDcEIsWUFBWSxDQUFDLEdBQUcsQ0FBQztnQkFDakIsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxFQUN2QztnQkFDRSxJQUFJLFdBQVcsRUFBRTtvQkFDYixVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUNyQixNQUFNLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztpQkFDM0U7cUJBQU07b0JBQ0gsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUc7d0JBQ3BCLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQzt3QkFDcEIsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUM7cUJBQzNCLENBQUM7aUJBQ0w7YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO0tBQ047SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUN6RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBFdWlBcHBDb25maWcsXG4gICAgRXVpQXBwSGFuZGxlcnNDb25maWcsXG4gICAgRXVpQXBwSnNvbkNvbmZpZyxcbiAgICBFdWlDb25maWcsXG4gICAgTG9nQ29uZmlnLFxuICAgIE1vZHVsZUNvbmZpZyxcbiAgICBHbG9iYWxDb25maWcsXG4gICAgSHR0cEVycm9ySGFuZGxlckNvbmZpZyxcbiAgICBDb25uZWN0aW9uU3RhdHVzLFxufSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0ICogYXMgZXh0ZW5kUHJveHkgZnJvbSAnZXh0ZW5kJztcblxuLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmNvbnN0IGV4dGVuZCA9ICg8YW55PmV4dGVuZFByb3h5KS5kZWZhdWx0IHx8IGV4dGVuZFByb3h5O1xuXG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgREVGQVVMVF9FVUlfQ09ORklHIH0gZnJvbSAnLi9kZWZhdWx0cyc7XG5cbmV4cG9ydCBjb25zdCBFVUlfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEV1aUNvbmZpZz4oJ0V1aUNvbmZpZycpO1xuZXhwb3J0IGNvbnN0IE1PRFVMRV9OQU1FX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ21vZHVsZU5hbWUnKTtcbmV4cG9ydCBjb25zdCBNT0RVTEVfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPE1vZHVsZUNvbmZpZz4oJ21vZHVsZUNvbmZpZycpO1xuZXhwb3J0IGNvbnN0IENPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxFdWlBcHBDb25maWc+KCdmaW5hbENvbmZpZ1Rva2VuJyk7XG5leHBvcnQgY29uc3QgR0xPQkFMX0NPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxHbG9iYWxDb25maWc+KCdnbG9iYWxDb25maWcnKTtcbmV4cG9ydCBjb25zdCBCQVNFX05BTUVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignYmFzZU5hbWUnKTtcbmV4cG9ydCBjb25zdCBST09UX0xPR19DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TG9nQ29uZmlnPignbG9nQ29uZmlnJyk7XG5leHBvcnQgY29uc3QgU0hPV19DT05ORUNUSU9OX1NUQVRVU19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPignU0hPV19DT05ORUNUSU9OX1NUQVRVUycpO1xuXG5leHBvcnQgY29uc3QgSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJR19UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIdHRwRXJyb3JIYW5kbGVyQ29uZmlnPignSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJRycpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsQ29uZmlnKGFwcENvbmZpZzogRXVpQXBwQ29uZmlnKTogR2xvYmFsQ29uZmlnIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihERUZBVUxUX0VVSV9DT05GSUcuYXBwQ29uZmlnLmdsb2JhbCwgYXBwQ29uZmlnICYmIGFwcENvbmZpZy5nbG9iYWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hvd0Nvbm5lY3Rpb25TdGF0dXMoZ2xvYmFsQ29uZmlnOiBHbG9iYWxDb25maWcpOiBib29sZWFuIHwgQ29ubmVjdGlvblN0YXR1cyB7XG4gICAgLy8gVE9ETzogcmVtb3ZlIG9uIGVVSSAxNFxuICAgIGlmICh0eXBlb2YgZ2xvYmFsQ29uZmlnPy5zaG93Q29ubmVjdGlvblN0YXR1cyA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignVXNhZ2Ugb2Ygc2hvd0Nvbm5lY3Rpb25TdGF0dXMgYXMgYm9vbGVhbiBpcyBkZXByZWNhdGVkLCBwbGVhc2UgdXNlIENvbm5lY3Rpb25TdGF0dXMgdHlwZScpO1xuICAgIH1cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9FVUlfQ09ORklHLmFwcENvbmZpZy5nbG9iYWwuc2hvd0Nvbm5lY3Rpb25TdGF0dXMsIGdsb2JhbENvbmZpZyAmJiBnbG9iYWxDb25maWcuc2hvd0Nvbm5lY3Rpb25TdGF0dXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9kdWxlQ29uZmlnKGFwcENvbmZpZzogRXVpQXBwQ29uZmlnLCBtb2R1bGVOYW1lOiBzdHJpbmcpOiBNb2R1bGVDb25maWcge1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhcHBDb25maWcgJiYgYXBwQ29uZmlnLm1vZHVsZXMgJiYgYXBwQ29uZmlnLm1vZHVsZXNbbW9kdWxlTmFtZV0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SHR0cEVycm9ySGFuZGxpbmdDb25maWcoYXBwQ29uZmlnOiBFdWlBcHBDb25maWcpOiBIdHRwRXJyb3JIYW5kbGVyQ29uZmlnIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgYXBwQ29uZmlnICYmIGFwcENvbmZpZy5odHRwRXJyb3JIYW5kbGVyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3RMb2dDb25maWcoYXBwQ29uZmlnOiBFdWlBcHBDb25maWcpOiBMb2dDb25maWcge1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhcHBDb25maWcgJiYgYXBwQ29uZmlnLmxvZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlRXVpQXBwQ29uZmlnVG9rZW4oZXVpQ29uZmlnOiBFdWlDb25maWcpOiBFdWlBcHBDb25maWcge1xuICAgIGNvbnN0IGVudmlyb25tZW50ID0gZXVpQ29uZmlnICYmIGV1aUNvbmZpZy5lbnZpcm9ubWVudDtcbiAgICBjb25zdCBtZXJnZTogQXJyYXk8c3RyaW5nPiA9XG4gICAgICAgIGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcgJiYgZW52aXJvbm1lbnQuZW52RHluYW1pY0NvbmZpZy5tZXJnZSAmJiBBcnJheS5pc0FycmF5KGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcubWVyZ2UpXG4gICAgICAgICAgICA/IGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcubWVyZ2VcbiAgICAgICAgICAgIDogW107XG4gICAgY29uc3QgaXNEZWVwTWVyZ2U6IGJvb2xlYW4gPVxuICAgICAgICBlbnZpcm9ubWVudC5lbnZEeW5hbWljQ29uZmlnICYmIGVudmlyb25tZW50LmVudkR5bmFtaWNDb25maWcuZGVlcE1lcmdlID8gZW52aXJvbm1lbnQuZW52RHluYW1pY0NvbmZpZy5kZWVwTWVyZ2UgOiBmYWxzZTtcbiAgICBjb25zdCBlbnZBcHBKc29uQ29uZmlnOiBFdWlBcHBKc29uQ29uZmlnID0gZW52aXJvbm1lbnQgJiYgZW52aXJvbm1lbnQubG9hZGVkRW52RHluYW1pY0NvbmZpZztcbiAgICBjb25zdCBpbml0aWFsQXBwQ29uZmlnID0gZXVpQ29uZmlnICYmIGV1aUNvbmZpZy5hcHBDb25maWc7XG4gICAgY29uc3QgZW52QXBwSGFuZGxlcnNDb25maWc6IEV1aUFwcEhhbmRsZXJzQ29uZmlnID0gZW52aXJvbm1lbnQgJiYgZW52aXJvbm1lbnQuZW52QXBwSGFuZGxlcnNDb25maWc7XG5cbiAgICBjb25zdCBlbnZIYW5kbGVyc01lcmdlZEFwcENvbmZpZyA9IG1lcmdlQXBwSGFuZGxlckNvbmZpZ1RvQXBwQ29uZmlnKGluaXRpYWxBcHBDb25maWcsIGVudkFwcEhhbmRsZXJzQ29uZmlnKTtcbiAgICBjb25zdCBmaW5hbENvbmZpZyA9IG1lcmdlQXBwSnNvbkNvbmZpZ1RvQXBwQ29uZmlnKGVudkhhbmRsZXJzTWVyZ2VkQXBwQ29uZmlnLCBlbnZBcHBKc29uQ29uZmlnLCBtZXJnZSwgaXNEZWVwTWVyZ2UpO1xuICAgIHJldHVybiBmaW5hbENvbmZpZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlQXBwSGFuZGxlckNvbmZpZ1RvQXBwQ29uZmlnKGV1aUFwcENvbmZpZzogRXVpQXBwQ29uZmlnLCBlbnZBcHBIYW5kbGVyOiBFdWlBcHBIYW5kbGVyc0NvbmZpZyk6IEV1aUFwcENvbmZpZyB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGV1aUFwcENvbmZpZywgZW52QXBwSGFuZGxlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZUFwcEpzb25Db25maWdUb0FwcENvbmZpZyhcbiAgICBldWlBcHBDb25maWc6IEV1aUFwcENvbmZpZyxcbiAgICBlbnZBcHBKc29uQ29uZmlnOiBFdWlBcHBKc29uQ29uZmlnLFxuICAgIG1lcmdlOiBBcnJheTxzdHJpbmc+LFxuICAgIGlzRGVlcE1lcmdlOiBib29sZWFuLFxuKTogRXVpQXBwQ29uZmlnIHtcbiAgICBjb25zdCBkZWVwTWVyZ2VkID0ge307XG4gICAgaWYgKG1lcmdlICYmIG1lcmdlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgbWVyZ2UuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgZW52QXBwSnNvbkNvbmZpZyAhPSBudWxsICYmXG4gICAgICAgICAgICAgICAgZW52QXBwSnNvbkNvbmZpZ1trZXldICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIGVudkFwcEpzb25Db25maWdba2V5XSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgICAgICBldWlBcHBDb25maWcgIT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIGV1aUFwcENvbmZpZ1trZXldICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIGV1aUFwcENvbmZpZ1trZXldID09PSAnb2JqZWN0J1xuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzRGVlcE1lcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlZXBNZXJnZWRba2V5XSA9IHt9O1xuICAgICAgICAgICAgICAgICAgICBleHRlbmQodHJ1ZSwgZGVlcE1lcmdlZFtrZXldLCBldWlBcHBDb25maWdba2V5XSwgZW52QXBwSnNvbkNvbmZpZ1trZXldKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBlbnZBcHBKc29uQ29uZmlnW2tleV0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5ldWlBcHBDb25maWdba2V5XSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmVudkFwcEpzb25Db25maWdba2V5XSxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgZXVpQXBwQ29uZmlnLCBlbnZBcHBKc29uQ29uZmlnLCBkZWVwTWVyZ2VkKTtcbn1cbiJdfQ==
@@ -7,6 +7,8 @@ const messages = {
7
7
  // Intermediate "hacky" subclass taken from
8
8
  // https://www.bennadel.com/blog/3226-experimenting-with-error-sub-classing-using-es5-and-typescript-2-1-5.htm
9
9
  export class ErrorSubClass {
10
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
12
  constructor(code, msg, args) {
11
13
  if (!msg && code && code in messages) {
12
14
  if (typeof messages[code] === 'function') {
@@ -32,9 +34,11 @@ export class ErrorSubClass {
32
34
  // This replaces the "extends" on the Class
33
35
  // ErrorSubClass.prototype = <any>Object.create(Error.prototype);
34
36
  export class EuiError extends ErrorSubClass {
37
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
38
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
35
39
  constructor(code = errorCodes.ERR_GENERIC, msg, args) {
36
40
  super(code, msg, args);
37
41
  this.name = 'EuiError';
38
42
  }
39
43
  }
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLmVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9lcnJvcnMvZXVpLmVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN0QixXQUFXLEVBQUUsYUFBYTtDQUM3QixDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQUc7SUFDYixXQUFXLEVBQUUsa0JBQWtCO0NBQ2xDLENBQUM7QUFFRiwyQ0FBMkM7QUFDM0MsOEdBQThHO0FBRTlHLE1BQU0sT0FBTyxhQUFhO0lBTXRCLFlBQVksSUFBYSxFQUFFLEdBQVksRUFBRSxJQUFVO1FBQy9DLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxRQUFRLEVBQUU7WUFDbEMsSUFBSSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxVQUFVLEVBQUU7Z0JBQ3RDLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDL0M7aUJBQU07Z0JBQ0gsR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN4QjtTQUNKO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxlQUFlLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFbEMsSUFBSSxJQUFJLEVBQUU7WUFDTixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUM1QixJQUFJLENBQUMsS0FBSyxlQUFlLEVBQUU7b0JBQ3ZCLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ3JCO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7Q0FDSjtBQUVELDJDQUEyQztBQUMzQyxpRUFBaUU7QUFFakUsTUFBTSxPQUFPLFFBQVMsU0FBUSxhQUFhO0lBQ3ZDLFlBQVksT0FBZSxVQUFVLENBQUMsV0FBVyxFQUFFLEdBQVksRUFBRSxJQUFVO1FBQ3ZFLEtBQUssQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXZCLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO0lBQzNCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlcnJvckNvZGVzID0ge1xuICAgIEVSUl9HRU5FUklDOiAnRVJSX0dFTkVSSUMnLFxufTtcblxuY29uc3QgbWVzc2FnZXMgPSB7XG4gICAgRVJSX0dFTkVSSUM6ICdBbiBlcnJvciBvY2N1cmVkJyxcbn07XG5cbi8vIEludGVybWVkaWF0ZSBcImhhY2t5XCIgc3ViY2xhc3MgdGFrZW4gZnJvbVxuLy8gaHR0cHM6Ly93d3cuYmVubmFkZWwuY29tL2Jsb2cvMzIyNi1leHBlcmltZW50aW5nLXdpdGgtZXJyb3Itc3ViLWNsYXNzaW5nLXVzaW5nLWVzNS1hbmQtdHlwZXNjcmlwdC0yLTEtNS5odG1cblxuZXhwb3J0IGNsYXNzIEVycm9yU3ViQ2xhc3Mge1xuICAgIHB1YmxpYyBjb2RlPzogc3RyaW5nO1xuICAgIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmc7XG4gICAgcHVibGljIHN0YWNrOiBzdHJpbmc7XG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGNvZGU/OiBzdHJpbmcsIG1zZz86IHN0cmluZywgYXJncz86IGFueSkge1xuICAgICAgICBpZiAoIW1zZyAmJiBjb2RlICYmIGNvZGUgaW4gbWVzc2FnZXMpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbWVzc2FnZXNbY29kZV0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBtc2cgPSBtZXNzYWdlc1tjb2RlXSguLi5hcmdzLm1lc3NhZ2VQYXJhbXMpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtc2cgPSBtZXNzYWdlc1tjb2RlXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubmFtZSA9ICdFcnJvclN1YkNsYXNzJztcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gbXNnO1xuICAgICAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICAgICAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKG1zZykuc3RhY2s7XG5cbiAgICAgICAgaWYgKGFyZ3MpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3MpLmZvckVhY2goKGspID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoayAhPT0gJ21lc3NhZ2VQYXJhbXMnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXNba10gPSBhcmdzW2tdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBUaGlzIHJlcGxhY2VzIHRoZSBcImV4dGVuZHNcIiBvbiB0aGUgQ2xhc3Ncbi8vIEVycm9yU3ViQ2xhc3MucHJvdG90eXBlID0gPGFueT5PYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSk7XG5cbmV4cG9ydCBjbGFzcyBFdWlFcnJvciBleHRlbmRzIEVycm9yU3ViQ2xhc3Mge1xuICAgIGNvbnN0cnVjdG9yKGNvZGU6IHN0cmluZyA9IGVycm9yQ29kZXMuRVJSX0dFTkVSSUMsIG1zZz86IHN0cmluZywgYXJncz86IGFueSkge1xuICAgICAgICBzdXBlcihjb2RlLCBtc2csIGFyZ3MpO1xuXG4gICAgICAgIHRoaXMubmFtZSA9ICdFdWlFcnJvcic7XG4gICAgfVxufVxuIl19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLmVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9lcnJvcnMvZXVpLmVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN0QixXQUFXLEVBQUUsYUFBYTtDQUM3QixDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQUc7SUFDYixXQUFXLEVBQUUsa0JBQWtCO0NBQ2xDLENBQUM7QUFFRiwyQ0FBMkM7QUFDM0MsOEdBQThHO0FBRTlHLE1BQU0sT0FBTyxhQUFhO0lBTXRCLG1IQUFtSDtJQUNuSCw4REFBOEQ7SUFDOUQsWUFBWSxJQUFhLEVBQUUsR0FBWSxFQUFFLElBQVU7UUFDL0MsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLFFBQVEsRUFBRTtZQUNsQyxJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLFVBQVUsRUFBRTtnQkFDdEMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUMvQztpQkFBTTtnQkFDSCxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3hCO1NBQ0o7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLGVBQWUsQ0FBQztRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUVsQyxJQUFJLElBQUksRUFBRTtZQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxLQUFLLGVBQWUsRUFBRTtvQkFDdkIsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDckI7WUFDTCxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztDQUNKO0FBRUQsMkNBQTJDO0FBQzNDLGlFQUFpRTtBQUVqRSxNQUFNLE9BQU8sUUFBUyxTQUFRLGFBQWE7SUFDdkMsbUhBQW1IO0lBQ25ILDhEQUE4RDtJQUM5RCxZQUFZLE9BQWUsVUFBVSxDQUFDLFdBQVcsRUFBRSxHQUFZLEVBQUUsSUFBVTtRQUN2RSxLQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV2QixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztJQUMzQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZXJyb3JDb2RlcyA9IHtcbiAgICBFUlJfR0VORVJJQzogJ0VSUl9HRU5FUklDJyxcbn07XG5cbmNvbnN0IG1lc3NhZ2VzID0ge1xuICAgIEVSUl9HRU5FUklDOiAnQW4gZXJyb3Igb2NjdXJlZCcsXG59O1xuXG4vLyBJbnRlcm1lZGlhdGUgXCJoYWNreVwiIHN1YmNsYXNzIHRha2VuIGZyb21cbi8vIGh0dHBzOi8vd3d3LmJlbm5hZGVsLmNvbS9ibG9nLzMyMjYtZXhwZXJpbWVudGluZy13aXRoLWVycm9yLXN1Yi1jbGFzc2luZy11c2luZy1lczUtYW5kLXR5cGVzY3JpcHQtMi0xLTUuaHRtXG5cbmV4cG9ydCBjbGFzcyBFcnJvclN1YkNsYXNzIHtcbiAgICBwdWJsaWMgY29kZT86IHN0cmluZztcbiAgICBwdWJsaWMgbWVzc2FnZTogc3RyaW5nO1xuICAgIHB1YmxpYyBzdGFjazogc3RyaW5nO1xuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBjb25zdHJ1Y3Rvcihjb2RlPzogc3RyaW5nLCBtc2c/OiBzdHJpbmcsIGFyZ3M/OiBhbnkpIHtcbiAgICAgICAgaWYgKCFtc2cgJiYgY29kZSAmJiBjb2RlIGluIG1lc3NhZ2VzKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG1lc3NhZ2VzW2NvZGVdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgbXNnID0gbWVzc2FnZXNbY29kZV0oLi4uYXJncy5tZXNzYWdlUGFyYW1zKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbXNnID0gbWVzc2FnZXNbY29kZV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm5hbWUgPSAnRXJyb3JTdWJDbGFzcyc7XG4gICAgICAgIHRoaXMubWVzc2FnZSA9IG1zZztcbiAgICAgICAgdGhpcy5jb2RlID0gY29kZTtcbiAgICAgICAgdGhpcy5zdGFjayA9IG5ldyBFcnJvcihtc2cpLnN0YWNrO1xuXG4gICAgICAgIGlmIChhcmdzKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhhcmdzKS5mb3JFYWNoKChrKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGsgIT09ICdtZXNzYWdlUGFyYW1zJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzW2tdID0gYXJnc1trXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVGhpcyByZXBsYWNlcyB0aGUgXCJleHRlbmRzXCIgb24gdGhlIENsYXNzXG4vLyBFcnJvclN1YkNsYXNzLnByb3RvdHlwZSA9IDxhbnk+T2JqZWN0LmNyZWF0ZShFcnJvci5wcm90b3R5cGUpO1xuXG5leHBvcnQgY2xhc3MgRXVpRXJyb3IgZXh0ZW5kcyBFcnJvclN1YkNsYXNzIHtcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBjb25zdHJ1Y3Rvcihjb2RlOiBzdHJpbmcgPSBlcnJvckNvZGVzLkVSUl9HRU5FUklDLCBtc2c/OiBzdHJpbmcsIGFyZ3M/OiBhbnkpIHtcbiAgICAgICAgc3VwZXIoY29kZSwgbXNnLCBhcmdzKTtcblxuICAgICAgICB0aGlzLm5hbWUgPSAnRXVpRXJyb3InO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,11 +1,13 @@
1
1
  import { ErrorHandler, Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "../log/index";
3
+ import * as i1 from "../log";
4
4
  export class GlobalErrorHandler extends ErrorHandler {
5
5
  constructor(logService) {
6
6
  super();
7
7
  this.logService = logService;
8
8
  }
9
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
11
  handleError(error) {
10
12
  // log error
11
13
  this.logService.error(error.message || error.toString());
@@ -21,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
21
23
  providedIn: 'root',
22
24
  }]
23
25
  }], ctorParameters: function () { return [{ type: i1.LogService }]; } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWVycm9yLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2Vycm9ycy9nbG9iYWwtZXJyb3ItaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3pELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBQ2hELFlBQXNCLFVBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBRFUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUU1QyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDbEIsWUFBWTtRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFekQsZUFBZTtRQUNmLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztrSUFYUSxrQkFBa0I7c0lBQWxCLGtCQUFrQixjQUZmLE1BQU07OzRGQUVULGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFcnJvckhhbmRsZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9pbmRleCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdsb2JhbEVycm9ySGFuZGxlciBleHRlbmRzIEVycm9ySGFuZGxlciB7XG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGxvZ1NlcnZpY2U6IExvZ1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBoYW5kbGVFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIC8vIGxvZyBlcnJvclxuICAgICAgICB0aGlzLmxvZ1NlcnZpY2UuZXJyb3IoZXJyb3IubWVzc2FnZSB8fCBlcnJvci50b1N0cmluZygpKTtcblxuICAgICAgICAvLyB0aHJvdyBlcnJvcjtcbiAgICAgICAgc3VwZXIuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH1cbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWVycm9yLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2Vycm9ycy9nbG9iYWwtZXJyb3ItaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3pELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBQ2hELFlBQXNCLFVBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBRFUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUU1QyxDQUFDO0lBRUQsbUhBQW1IO0lBQ25ILDhEQUE4RDtJQUM5RCxXQUFXLENBQUMsS0FBVTtRQUNsQixZQUFZO1FBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUV6RCxlQUFlO1FBQ2YsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO2tJQWJRLGtCQUFrQjtzSUFBbEIsa0JBQWtCLGNBRmYsTUFBTTs7NEZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVycm9ySGFuZGxlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi4vbG9nJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgR2xvYmFsRXJyb3JIYW5kbGVyIGV4dGVuZHMgRXJyb3JIYW5kbGVyIHtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgbG9nU2VydmljZTogTG9nU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGhhbmRsZUVycm9yKGVycm9yOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgLy8gbG9nIGVycm9yXG4gICAgICAgIHRoaXMubG9nU2VydmljZS5lcnJvcihlcnJvci5tZXNzYWdlIHx8IGVycm9yLnRvU3RyaW5nKCkpO1xuXG4gICAgICAgIC8vIHRocm93IGVycm9yO1xuICAgICAgICBzdXBlci5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { LogService } from '../log/log.service';
1
+ import { LogService } from '../log';
2
2
  import { UxAppShellService } from '../ux-app-shell.service';
3
3
  export function AlertHttpErrorCallbackFn(error) {
4
4
  alert(error.statusText);
@@ -14,4 +14,4 @@ export function GrowlHttpErrorCallbackFn(error, injector) {
14
14
  const asService = injector.get(UxAppShellService);
15
15
  asService.growlError(error.statusText);
16
16
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1oYW5kbGVyLWNhbGxiYWNrLWZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvZXJyb3JzL2h0dHAtZXJyb3ItaGFuZGxlci1jYWxsYmFjay1mdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxLQUF3QjtJQUM3RCxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzVCLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsS0FBd0I7SUFDL0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxLQUF3QixFQUFFLFFBQWtCO0lBQy9FLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxLQUF3QixFQUFFLFFBQWtCO0lBQ2pGLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNsRCxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XG5pbXBvcnQgeyBVeEFwcFNoZWxsU2VydmljZSB9IGZyb20gJy4uL3V4LWFwcC1zaGVsbC5zZXJ2aWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIEFsZXJ0SHR0cEVycm9yQ2FsbGJhY2tGbihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICBhbGVydChlcnJvci5zdGF0dXNUZXh0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENvbnNvbGVIdHRwRXJyb3JDYWxsYmFja0ZuKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0h0dHBFcnJvcicsIGVycm9yKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIExvZ0h0dHBFcnJvckNhbGxiYWNrRm4oZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBjb25zdCBsb2dTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KExvZ1NlcnZpY2UpO1xuICAgIGxvZ1NlcnZpY2UuZXJyb3IoJ0h0dHBFcnJvcicsIGVycm9yKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEdyb3dsSHR0cEVycm9yQ2FsbGJhY2tGbihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UsIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIGNvbnN0IGFzU2VydmljZSA9IGluamVjdG9yLmdldChVeEFwcFNoZWxsU2VydmljZSk7XG4gICAgYXNTZXJ2aWNlLmdyb3dsRXJyb3IoZXJyb3Iuc3RhdHVzVGV4dCk7XG59XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1oYW5kbGVyLWNhbGxiYWNrLWZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvZXJyb3JzL2h0dHAtZXJyb3ItaGFuZGxlci1jYWxsYmFjay1mdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsS0FBd0I7SUFDN0QsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUM1QixDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLEtBQXdCO0lBQy9ELE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsS0FBd0IsRUFBRSxRQUFrQjtJQUMvRSxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzVDLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsS0FBd0IsRUFBRSxRQUFrQjtJQUNqRixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDbEQsU0FBUyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuLi9sb2cnO1xuaW1wb3J0IHsgVXhBcHBTaGVsbFNlcnZpY2UgfSBmcm9tICcuLi91eC1hcHAtc2hlbGwuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBBbGVydEh0dHBFcnJvckNhbGxiYWNrRm4oZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKTogdm9pZCB7XG4gICAgYWxlcnQoZXJyb3Iuc3RhdHVzVGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDb25zb2xlSHR0cEVycm9yQ2FsbGJhY2tGbihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBjb25zb2xlLmVycm9yKCdIdHRwRXJyb3InLCBlcnJvcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBMb2dIdHRwRXJyb3JDYWxsYmFja0ZuKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSwgaW5qZWN0b3I6IEluamVjdG9yKTogdm9pZCB7XG4gICAgY29uc3QgbG9nU2VydmljZSA9IGluamVjdG9yLmdldChMb2dTZXJ2aWNlKTtcbiAgICBsb2dTZXJ2aWNlLmVycm9yKCdIdHRwRXJyb3InLCBlcnJvcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBHcm93bEh0dHBFcnJvckNhbGxiYWNrRm4oZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlLCBpbmplY3RvcjogSW5qZWN0b3IpOiB2b2lkIHtcbiAgICBjb25zdCBhc1NlcnZpY2UgPSBpbmplY3Rvci5nZXQoVXhBcHBTaGVsbFNlcnZpY2UpO1xuICAgIGFzU2VydmljZS5ncm93bEVycm9yKGVycm9yLnN0YXR1c1RleHQpO1xufVxuIl19
@@ -11,21 +11,28 @@ export class HttpErrorHandlerInterceptor {
11
11
  this.injector = injector;
12
12
  this.router = router;
13
13
  }
14
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
15
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
16
  intercept(req, next) {
15
- return next.handle(req).pipe(tap(() => { }, (error) => {
16
- // in case of http error
17
- if (error instanceof HttpErrorResponse) {
18
- const routeConfig = this.getRouteConfig(error);
19
- const rule = routeConfig && (routeConfig[error.status] || routeConfig.default);
20
- if (typeof rule === 'string') {
21
- // perform a redirect
22
- this.router.navigate([rule]);
17
+ return next.handle(req).pipe(tap({
18
+ next: () => { },
19
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
20
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
+ error: (error) => {
22
+ // in case of http error
23
+ if (error instanceof HttpErrorResponse) {
24
+ const routeConfig = this.getRouteConfig(error);
25
+ const rule = routeConfig && (routeConfig[error.status] || routeConfig.default);
26
+ if (typeof rule === 'string') {
27
+ // perform a redirect
28
+ this.router.navigate([rule]);
29
+ }
30
+ else if (typeof rule === 'function') {
31
+ // callback function
32
+ rule.call(null, error, this.injector);
33
+ }
23
34
  }
24
- else if (typeof rule === 'function') {
25
- // callback function
26
- rule.call(null, error, this.injector);
27
- }
28
- }
35
+ },
29
36
  }));
30
37
  }
31
38
  /**
@@ -52,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo
52
59
  type: Inject,
53
60
  args: [HTTP_ERROR_HANDLER_CONFIG_TOKEN]
54
61
  }] }, { type: i0.Injector }, { type: i1.Router }]; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9lcnJvcnMvaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBd0QsTUFBTSxzQkFBc0IsQ0FBQztBQUcvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUd2RSxNQUFNLE9BQU8sMkJBQTJCO0lBQ3BDLFlBQ3VELFNBQWlDLGlDQUFpQyxFQUMzRyxRQUFrQixFQUNsQixNQUFjO1FBRjJCLFdBQU0sR0FBTixNQUFNLENBQTREO1FBQzNHLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUN6QixDQUFDO0lBRUosU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDeEIsR0FBRyxDQUNDLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFDUixDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ1gsd0JBQXdCO1lBQ3hCLElBQUksS0FBSyxZQUFZLGlCQUFpQixFQUFFO2dCQUNwQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMvQyxNQUFNLElBQUksR0FBRyxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFL0UsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7b0JBQzFCLHFCQUFxQjtvQkFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUNoQztxQkFBTSxJQUFJLE9BQU8sSUFBSSxLQUFLLFVBQVUsRUFBRTtvQkFDbkMsb0JBQW9CO29CQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN6QzthQUNKO1FBQ0wsQ0FBQyxDQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNPLGNBQWMsQ0FBQyxLQUF3QjtRQUM3QyxvQkFBb0I7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN2RSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsSUFBSSxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDekgsQ0FBQyxDQUFDLENBQUM7UUFDSCwwQ0FBMEM7UUFDMUMsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQztrSUE1Q1EsMkJBQTJCLGtCQUV4QiwrQkFBK0I7c0lBRmxDLDJCQUEyQjs7NEZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVTs7MEJBR0YsTUFBTTsyQkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEh0dHBFcnJvckhhbmRsZXJDb25maWcsIEh0dHBFcnJvclJvdXRlQ29uZmlnIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb25maWcvdG9rZW5zJztcbmltcG9ydCB7IERFRkFVTFRfSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJRyB9IGZyb20gJy4uL2NvbmZpZy9kZWZhdWx0cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIdHRwRXJyb3JIYW5kbGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4pIHByb3RlY3RlZCBjb25maWc6IEh0dHBFcnJvckhhbmRsZXJDb25maWcgPSBERUZBVUxUX0hUVFBfRVJST1JfSEFORExFUl9DT05GSUcsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlclxuICAgICkge31cblxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxuICAgICAgICAgICAgdGFwKFxuICAgICAgICAgICAgICAgICgpID0+IHt9LFxuICAgICAgICAgICAgICAgIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGluIGNhc2Ugb2YgaHR0cCBlcnJvclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGVDb25maWcgPSB0aGlzLmdldFJvdXRlQ29uZmlnKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJ1bGUgPSByb3V0ZUNvbmZpZyAmJiAocm91dGVDb25maWdbZXJyb3Iuc3RhdHVzXSB8fCByb3V0ZUNvbmZpZy5kZWZhdWx0KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBydWxlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHBlcmZvcm0gYSByZWRpcmVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtydWxlXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBydWxlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2FsbGJhY2sgZnVuY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlLmNhbGwobnVsbCwgZXJyb3IsIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlYXJjaCBpbiB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIGZpcnN0IG1hdGNoaW5nIHJvdXRlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZXJyb3IgaHR0cCBlcnJvciByZXNwb25zZVxuICAgICAqIEByZXR1cm5zIEh0dHBFcnJvclJvdXRlQ29uZmlnIG9yIG51bGxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0Um91dGVDb25maWcoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKTogSHR0cEVycm9yUm91dGVDb25maWcgfCBudWxsIHtcbiAgICAgICAgLy8gZmlsdGVyIHRoZSByb3V0ZXNcbiAgICAgICAgY29uc3Qgcm91dGVzID0gdGhpcy5jb25maWcucm91dGVzLmZpbHRlcigocm91dGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cCgnXicgKyByb3V0ZS5wYXRoLnNwbGl0KCcqJykuam9pbignLionKSArICckJyk7XG4gICAgICAgICAgICByZXR1cm4gcmVnZXgudGVzdChlcnJvci51cmwpICYmICh0eXBlb2Ygcm91dGVbZXJyb3Iuc3RhdHVzXSAhPT0gJ3VuZGVmaW5lZCcgfHwgdHlwZW9mIHJvdXRlLmRlZmF1bHQgIT09ICd1bmRlZmluZWQnKTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHJldHVybiB0aGUgZmlyc3QgbWF0Y2hpbmcgcm91dGUsIGlmIGFueVxuICAgICAgICByZXR1cm4gcm91dGVzLmxlbmd0aCA+IDAgPyByb3V0ZXNbMF0gOiBudWxsO1xuICAgIH1cbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9lcnJvcnMvaHR0cC1lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBd0QsTUFBTSxzQkFBc0IsQ0FBQztBQUcvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQUd2RSxNQUFNLE9BQU8sMkJBQTJCO0lBQ3BDLFlBQ3VELFNBQWlDLGlDQUFpQyxFQUMzRyxRQUFrQixFQUNsQixNQUFjO1FBRjJCLFdBQU0sR0FBTixNQUFNLENBQTREO1FBQzNHLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUN6QixDQUFDO0lBRUosbUhBQW1IO0lBQ25ILDhEQUE4RDtJQUM5RCxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUN4QixHQUFHLENBQUM7WUFDQSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQWUsQ0FBQztZQUMzQixtSEFBbUg7WUFDbkgsOERBQThEO1lBQzlELEtBQUssRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUNsQix3QkFBd0I7Z0JBQ3hCLElBQUksS0FBSyxZQUFZLGlCQUFpQixFQUFFO29CQUNwQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUMvQyxNQUFNLElBQUksR0FBRyxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFFL0UsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7d0JBQzFCLHFCQUFxQjt3QkFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO3FCQUNoQzt5QkFBTSxJQUFJLE9BQU8sSUFBSSxLQUFLLFVBQVUsRUFBRTt3QkFDbkMsb0JBQW9CO3dCQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3FCQUN6QztpQkFDSjtZQUNMLENBQUM7U0FDSixDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNPLGNBQWMsQ0FBQyxLQUF3QjtRQUM3QyxvQkFBb0I7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN2RSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsSUFBSSxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDekgsQ0FBQyxDQUFDLENBQUM7UUFDSCwwQ0FBMEM7UUFDMUMsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQztrSUFoRFEsMkJBQTJCLGtCQUV4QiwrQkFBK0I7c0lBRmxDLDJCQUEyQjs7NEZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVTs7MEJBR0YsTUFBTTsyQkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEh0dHBFcnJvckhhbmRsZXJDb25maWcsIEh0dHBFcnJvclJvdXRlQ29uZmlnIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb25maWcvdG9rZW5zJztcbmltcG9ydCB7IERFRkFVTFRfSFRUUF9FUlJPUl9IQU5ETEVSX0NPTkZJRyB9IGZyb20gJy4uL2NvbmZpZy9kZWZhdWx0cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIdHRwRXJyb3JIYW5kbGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEhUVFBfRVJST1JfSEFORExFUl9DT05GSUdfVE9LRU4pIHByb3RlY3RlZCBjb25maWc6IEh0dHBFcnJvckhhbmRsZXJDb25maWcgPSBERUZBVUxUX0hUVFBfRVJST1JfSEFORExFUl9DT05GSUcsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlcixcbiAgICApIHt9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShcbiAgICAgICAgICAgIHRhcCh7XG4gICAgICAgICAgICAgICAgbmV4dDogKCkgPT4geyAvKiBlbXB0eSAqLyB9LFxuICAgICAgICAgICAgICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgIGVycm9yOiAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBpbiBjYXNlIG9mIGh0dHAgZXJyb3JcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlQ29uZmlnID0gdGhpcy5nZXRSb3V0ZUNvbmZpZyhlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBydWxlID0gcm91dGVDb25maWcgJiYgKHJvdXRlQ29uZmlnW2Vycm9yLnN0YXR1c10gfHwgcm91dGVDb25maWcuZGVmYXVsdCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcnVsZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwZXJmb3JtIGEgcmVkaXJlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcnVsZV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcnVsZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNhbGxiYWNrIGZ1bmN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZS5jYWxsKG51bGwsIGVycm9yLCB0aGlzLmluamVjdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZWFyY2ggaW4gdGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBmaXJzdCBtYXRjaGluZyByb3V0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIGVycm9yIGh0dHAgZXJyb3IgcmVzcG9uc2VcbiAgICAgKiBAcmV0dXJucyBIdHRwRXJyb3JSb3V0ZUNvbmZpZyBvciBudWxsXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldFJvdXRlQ29uZmlnKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IEh0dHBFcnJvclJvdXRlQ29uZmlnIHwgbnVsbCB7XG4gICAgICAgIC8vIGZpbHRlciB0aGUgcm91dGVzXG4gICAgICAgIGNvbnN0IHJvdXRlcyA9IHRoaXMuY29uZmlnLnJvdXRlcy5maWx0ZXIoKHJvdXRlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoJ14nICsgcm91dGUucGF0aC5zcGxpdCgnKicpLmpvaW4oJy4qJykgKyAnJCcpO1xuICAgICAgICAgICAgcmV0dXJuIHJlZ2V4LnRlc3QoZXJyb3IudXJsKSAmJiAodHlwZW9mIHJvdXRlW2Vycm9yLnN0YXR1c10gIT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiByb3V0ZS5kZWZhdWx0ICE9PSAndW5kZWZpbmVkJyk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyByZXR1cm4gdGhlIGZpcnN0IG1hdGNoaW5nIHJvdXRlLCBpZiBhbnlcbiAgICAgICAgcmV0dXJuIHJvdXRlcy5sZW5ndGggPiAwID8gcm91dGVzWzBdIDogbnVsbDtcbiAgICB9XG59XG4iXX0=
@@ -27,6 +27,8 @@ export class I18nLoader {
27
27
  * @param lang
28
28
  * @returns Observable<any>
29
29
  */
30
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
31
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
32
  getTranslation(lang) {
31
33
  return this.loadResources(this.resources, lang).pipe(map((loadedResources) => {
32
34
  this.failedResources = loadedResources.hasError ? loadedResources.errors : [];
@@ -62,6 +64,8 @@ export class I18nLoader {
62
64
  * @param lang the resource language to load
63
65
  * @returns Observable<any>
64
66
  */
67
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
68
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
65
69
  loadResources(resources, lang) {
66
70
  // if there are resources to load
67
71
  if (Array.isArray(resources) && resources.length > 0) {
@@ -147,13 +151,20 @@ export class I18nLoader {
147
151
  * @param lang the resource language to load
148
152
  * @returns Observable<any>
149
153
  */
154
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
155
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
150
156
  loadResource(resource, lang) {
151
157
  // the path to the resource
152
158
  const path = resource.getPath(lang);
153
159
  // load the translations from the path
154
160
  return this.http.get(path).pipe(
155
161
  // preprocess the translations using the resource compiler
156
- map((translations) => resource.compileTranslations(translations, lang)), map((translations) => {
162
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
163
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
164
+ map((translations) => resource.compileTranslations(translations, lang)),
165
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
166
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
167
+ map((translations) => {
157
168
  // resource loaded properly, send a info message
158
169
  if (this.logService) {
159
170
  this.logService.info(`I18n resource loaded from path ${path}`);
@@ -195,4 +206,4 @@ export const translateConfig = {
195
206
  useClass: I18nLoader,
196
207
  },
197
208
  };
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2kxOG4vaTE4bi5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBbUMsTUFBTSxXQUFXLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFzQmhELE1BQU0sT0FBTyxVQUFVO0lBSW5CLFlBQ2MsSUFBZ0IsRUFDSixVQUFzQixFQUNaLFlBQTBCO1FBRmhELFNBQUksR0FBSixJQUFJLENBQVk7UUFDSixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ1osaUJBQVksR0FBWixZQUFZLENBQWM7UUFOcEQsY0FBUyxHQUF1QixFQUFFLENBQUM7UUFDbkMsb0JBQWUsR0FBZ0MsRUFBRSxDQUFDO1FBT3hELDhDQUE4QztRQUM5QyxNQUFNLFVBQVUsR0FBZSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekYsTUFBTSxnQkFBZ0IsR0FBcUIsVUFBVSxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDL0UsSUFBSSxDQUFDLFNBQVMsQ0FB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Q0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztrSUF4TVEsVUFBVSxzRkFPUCxZQUFZO3NJQVBmLFVBQVU7OzRGQUFWLFVBQVU7a0JBRHRCLFVBQVU7OzBCQU9GLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsWUFBWTs7QUFvTTVCLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUMzQixNQUFNLEVBQUU7UUFDSixPQUFPLEVBQUUsZUFBZTtRQUN4QixRQUFRLEVBQUUsVUFBVTtLQUN2QjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgZ2V0STE4bkxvYWRlckNvbmZpZywgSTE4blJlc291cmNlLCB0eXBlIEV1aUFwcENvbmZpZyB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBJMThuUmVzb3VyY2VJbXBsIH0gZnJvbSAnLi9pMThuLnJlc291cmNlJztcbmltcG9ydCB7IG1lcmdlQWxsIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEkxOG5Mb2FkZXJDb25maWcsIEkxOG5Db25maWcsIFRyYW5zbGF0aW9uc0NvbXBpbGVyIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IENPTkZJR19UT0tFTiB9IGZyb20gJy4uL2NvbmZpZy90b2tlbnMnO1xuaW1wb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4uL2xvZy9sb2cuc2VydmljZSc7XG5cbi8vIGV4cG9ydCBjb25zdCBJMThOX0xPQURFUl9DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48STE4bkxvYWRlckNvbmZpZz4oJ0kxOE5fTE9BREVSX0NPTkZJRycpO1xuaW50ZXJmYWNlIFJlc291cmNlRXJyb3Ige1xuICAgIGlzRXJyb3I6IGJvb2xlYW47XG4gICAgZXJyb3I/OiBzdHJpbmc7XG4gICAgcmVzb3VyY2U/OiBJMThuUmVzb3VyY2VJbXBsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvYWRlZFJlc291cmNlcyB7XG4gICAgdHJhbnNsYXRpb25zOiBvYmplY3Q7XG4gICAgaGFzRXJyb3I6IGJvb2xlYW47XG4gICAgZXJyb3JzPzogQXJyYXk8TG9hZGVkUmVzb3VyY2VzRXJyb3I+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvYWRlZFJlc291cmNlc0Vycm9yIHtcbiAgICByZXNvdXJjZTogSTE4blJlc291cmNlSW1wbDtcbiAgICBlcnJvcjogc3RyaW5nO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSTE4bkxvYWRlciBpbXBsZW1lbnRzIFRyYW5zbGF0ZUxvYWRlciB7XG4gICAgcHJvdGVjdGVkIHJlc291cmNlczogSTE4blJlc291cmNlSW1wbFtdID0gW107XG4gICAgcHJvdGVjdGVkIGZhaWxlZFJlc291cmNlczogQXJyYXk8TG9hZGVkUmVzb3VyY2VzRXJyb3I+ID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCBsb2dTZXJ2aWNlOiBMb2dTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KENPTkZJR19UT0tFTikgcHJvdGVjdGVkIGV1aUFwcENvbmZpZzogRXVpQXBwQ29uZmlnXG4gICAgKSB7XG4gICAgICAgIC8vIGNyZWF0ZSB0aGUgcmVzb3VyY2VzIGZyb20gdGhlIGNvbmZpZyBvYmplY3RcbiAgICAgICAgY29uc3QgaTE4bkNvbmZpZzogSTE4bkNvbmZpZyA9IHRoaXMuZXVpQXBwQ29uZmlnLmdsb2JhbCAmJiB0aGlzLmV1aUFwcENvbmZpZy5nbG9iYWwuaTE4bjtcbiAgICAgICAgY29uc3QgaTE4bkxvYWRlckNvbmZpZzogSTE4bkxvYWRlckNvbmZpZyA9IGkxOG5Db25maWcgJiYgaTE4bkNvbmZpZy5pMThuTG9hZGVyO1xuICAgICAgICB0aGlzLnJlc291cmNlcy5wdXNoKC4uLnRoaXMuY3JlYXRlUmVzb3VyY2VzKGkxOG5Mb2FkZXJDb25maWcpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB0cmFuc2xhdGlvbnMgZnJvbSB0aGUgc2VydmVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbGFuZ1xuICAgICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkUmVzb3VyY2VzKHRoaXMucmVzb3VyY2VzLCBsYW5nKS5waXBlKFxuICAgICAgICAgICAgbWFwKChsb2FkZWRSZXNvdXJjZXM6IExvYWRlZFJlc291cmNlcykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZmFpbGVkUmVzb3VyY2VzID0gbG9hZGVkUmVzb3VyY2VzLmhhc0Vycm9yID8gbG9hZGVkUmVzb3VyY2VzLmVycm9ycyA6IFtdO1xuICAgICAgICAgICAgICAgIHJldHVybiBsb2FkZWRSZXNvdXJjZXMudHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGRzIHJlc291cmNlc1xuICAgICAqXG4gICAgICogQHBhcmFtIGNvbmZpZyBsb2FkZXIgY29uZmlndXJhdGlvblxuICAgICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PiB8IGZhbHNlXG4gICAgICovXG4gICAgcHVibGljIGFkZFJlc291cmNlcyhjb25maWc6IEkxOG5Mb2FkZXJDb25maWcpOiBJMThuUmVzb3VyY2VJbXBsW10ge1xuICAgICAgICAvLyBjcmVhdGUgdGhlIHJlc291cmNlc1xuICAgICAgICBsZXQgcmVzb3VyY2VzID0gdGhpcy5jcmVhdGVSZXNvdXJjZXMoY29uZmlnKTtcblxuICAgICAgICAvLyBmaWx0ZXIgdGhlIHJlc291cmNlcyBmaXJzdCwgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgICAgICByZXNvdXJjZXMgPSByZXNvdXJjZXMuZmlsdGVyKChyZXNvdXJjZSkgPT4gIXRoaXMucmVzb3VyY2VzLnNvbWUoKHJlcykgPT4gcmVzLmVxdWFscyhyZXNvdXJjZSkpKTtcblxuICAgICAgICAvLyBhZGQgdGhlIG5ldyByZXNvdXJjZXMgdG8gdGhlIGxpc3Qgb2YgZXhpc3RpbmcgcmVzb3VyY2VzXG4gICAgICAgIHRoaXMucmVzb3VyY2VzLnB1c2goLi4ucmVzb3VyY2VzKTtcblxuICAgICAgICAvLyByZXR1cm4gdGhlIGZpbHRlcmVkIHJlc291cmNlc1xuICAgICAgICByZXR1cm4gcmVzb3VyY2VzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZXMgcmVzb3VyY2VzIGZyb20gdGhlIGxvYWRlciBpbnN0YW5jZVxuICAgICAqL1xuICAgIHB1YmxpYyByZW1vdmVSZXNvdXJjZXMocmVtb3ZlZFJlc291cmNlczogSTE4blJlc291cmNlSW1wbFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzb3VyY2VzID0gdGhpcy5yZXNvdXJjZXMuZmlsdGVyKChyZXMpID0+ICFyZW1vdmVkUmVzb3VyY2VzLnNvbWUoKHJlbW92ZWRSZXNvdXJjZSkgPT4gcmVtb3ZlZFJlc291cmNlLmVxdWFscyhyZXMpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgYW4gYXJyYXkgb2YgcmVzb3VyY2VzLCBieSBsYW5ndWFnZVxuICAgICAqXG4gICAgICogQHBhcmFtIHJlc291cmNlcyB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgcmVzb3VyY2VzXG4gICAgICogQHBhcmFtIGxhbmcgdGhlIHJlc291cmNlIGxhbmd1YWdlIHRvIGxvYWRcbiAgICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPGFueT5cbiAgICAgKi9cbiAgICBwdWJsaWMgbG9hZFJlc291cmNlcyhyZXNvdXJjZXM6IEkxOG5SZXNvdXJjZUltcGxbXSwgbGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgLy8gaWYgdGhlcmUgYXJlIHJlc291cmNlcyB0byBsb2FkXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc291cmNlcykgJiYgcmVzb3VyY2VzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIGxvYWQgYWxsIHRoZSByZXNvdXJjZXMgaW4gYW4gYXJyYXkgb2YgT2JzZXJ2YWJsZVxuICAgICAgICAgICAgY29uc3QgcmVxdWVzdHMgPSByZXNvdXJjZXMubWFwKChyZXNvdXJjZSkgPT4gdGhpcy5sb2FkUmVzb3VyY2UocmVzb3VyY2UsIGxhbmcpKTtcbiAgICAgICAgICAgIC8vIGdyb3VwIGFsbCB0aGUgb2JzZXJ2YWJsZXMgd2l0aCBmb3JrSm9pbiBhbmQgZGVlcCBtZXJnZSB0aGVtXG4gICAgICAgICAgICByZXR1cm4gZm9ya0pvaW4ocmVxdWVzdHMpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWNjZXNzUmVzcCA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJSZXNwOiBBcnJheTxMb2FkZWRSZXNvdXJjZXNFcnJvcj4gPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCg8UmVzb3VyY2VFcnJvcj5pdGVtKS5pc0Vycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyUmVzcC5wdXNoKHsgcmVzb3VyY2U6ICg8UmVzb3VyY2VFcnJvcj5pdGVtKS5yZXNvdXJjZSwgZXJyb3I6ICg8UmVzb3VyY2VFcnJvcj5pdGVtKS5lcnJvciB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc1Jlc3AucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdWNjZXNzUmVzcC5sZW5ndGggPT09IHJlc3BvbnNlLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaGFzRXJyb3I6IGZhbHNlLCB0cmFuc2xhdGlvbnM6IG1lcmdlQWxsKHN1Y2Nlc3NSZXNwKSB9O1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaGFzRXJyb3I6IHRydWUsIHRyYW5zbGF0aW9uczogbWVyZ2VBbGwoc3VjY2Vzc1Jlc3ApLCBlcnJvcnM6IGVyclJlc3AgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gbm8gcmVzb3VyY2VzIHRvIGxvYWRcbiAgICAgICAgICAgIHJldHVybiBvZih7IGhhc0Vycm9yOiBmYWxzZSwgdHJhbnNsYXRpb25zOiB7fSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgcmVzb3VyY2VzIHRoYXQgZmFpbGVkXG4gICAgICovXG4gICAgcHVibGljIGdldEZhaWxlZFJlc291cmNlcygpOiBBcnJheTxMb2FkZWRSZXNvdXJjZXNFcnJvcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mYWlsZWRSZXNvdXJjZXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIHJlc291cmNlcyBmcm9tIGEgY29uZmlnIGZpbGVcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb25maWcgbG9hZGVyIGNvbmZpZ3VyYXRpb25cbiAgICAgKiBAcmV0dXJucyBJMThuUmVzb3VyY2VJbXBsW10gcmVzb3VyY2VzXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVJlc291cmNlcyhjb25maWc6IEkxOG5Mb2FkZXJDb25maWcpOiBJMThuUmVzb3VyY2VJbXBsW10ge1xuICAgICAgICAvLyB1c2UgdGhlIGRlZmF1bHQgY29uZmlnIGFzIGEgcmVmZXJlbmNlIGJhc2VcbiAgICAgICAgY29uZmlnID0gZ2V0STE4bkxvYWRlckNvbmZpZyhjb25maWcpO1xuXG4gICAgICAgIGNvbnN0IHJlc291cmNlcyA9IFtdO1xuXG4gICAgICAgIC8vIGV4dHJhY3QgdGhlIGkxOG4gZm9sZGVycyBmcm9tIGNvbmZpZ1xuICAgICAgICBjb25zdCBpMThuRm9sZGVyczogc3RyaW5nW10gPSBBcnJheS5pc0FycmF5KGNvbmZpZy5pMThuRm9sZGVycylcbiAgICAgICAgICAgID8gY29uZmlnLmkxOG5Gb2xkZXJzXG4gICAgICAgICAgICA6IGNvbmZpZy5pMThuRm9sZGVyc1xuICAgICAgICAgICAgPyBbY29uZmlnLmkxOG5Gb2xkZXJzXVxuICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgaWYgKGkxOG5Gb2xkZXJzKSB7XG4gICAgICAgICAgICAvLyBhZGQgdGhlIGkxOG4gZm9sZGVycyB0byByZXNvdXJjZXNcbiAgICAgICAgICAgIHJlc291cmNlcy5wdXNoKC4uLmkxOG5Gb2xkZXJzLm1hcCgoZm9sZGVyKSA9PiBuZXcgSTE4blJlc291cmNlSW1wbChgYXNzZXRzLyR7Zm9sZGVyfS9gLCAnLmpzb24nKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXh0cmFjdCB0aGUgaTE4biBzZXJ2aWNlcyBmcm9tIGNvbmZpZ1xuICAgICAgICBjb25zdCBpMThuU2VydmljZXM6IHN0cmluZ1tdID0gQXJyYXkuaXNBcnJheShjb25maWcuaTE4blNlcnZpY2VzKVxuICAgICAgICAgICAgPyBjb25maWcuaTE4blNlcnZpY2VzXG4gICAgICAgICAgICA6IGNvbmZpZy5pMThuU2VydmljZXNcbiAgICAgICAgICAgID8gW2NvbmZpZy5pMThuU2VydmljZXNdXG4gICAgICAgICAgICA6IFtdO1xuICAgICAgICBpZiAoaTE4blNlcnZpY2VzKSB7XG4gICAgICAgICAgICAvLyBhZGQgdGhlIGkxOG4gc2VydmljZXMgdG8gcmVzb3VyY2VzXG4gICAgICAgICAgICByZXNvdXJjZXMucHVzaCguLi5pMThuU2VydmljZXMubWFwKChzZXJ2aWNlKSA9PiBuZXcgSTE4blJlc291cmNlSW1wbChzZXJ2aWNlKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXh0cmFjdCB0aGUgaTE4biByZXNvdXJjZXMgZnJvbSBjb25maWdcbiAgICAgICAgY29uc3QgaTE4blJlc291cmNlczogSTE4blJlc291cmNlW10gPSBBcnJheS5pc0FycmF5KGNvbmZpZy5pMThuUmVzb3VyY2VzKVxuICAgICAgICAgICAgPyBjb25maWcuaTE4blJlc291cmNlc1xuICAgICAgICAgICAgOiBjb25maWcuaTE4blJlc291cmNlc1xuICAgICAgICAgICAgPyBbY29uZmlnLmkxOG5SZXNvdXJjZXNdXG4gICAgICAgICAgICA6IFtdO1xuICAgICAgICBpZiAoaTE4blJlc291cmNlcykge1xuICAgICAgICAgICAgLy8gYWRkIHRoZSBpMThuIHJlc291cmNlcyB0byByZXNvdXJjZXNcbiAgICAgICAgICAgIHJlc291cmNlcy5wdXNoKFxuICAgICAgICAgICAgICAgIC4uLmkxOG5SZXNvdXJjZXMubWFwKFxuICAgICAgICAgICAgICAgICAgICAocmVzb3VyY2UpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgSTE4blJlc291cmNlSW1wbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZS5wcmVmaXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2Uuc3VmZml4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0UmVzb3VyY2VDb21waWxlRnVuY3Rpb24ocmVzb3VyY2UuY29tcGlsZVRyYW5zbGF0aW9ucylcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc291cmNlcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyBhIHJlc291cmNlLCBieSBsYW5ndWFnZVxuICAgICAqXG4gICAgICogQHBhcmFtIHJlc291cmNlIHRoZSBkZWZpbml0aW9uIG9mIHRoZSByZXNvdXJjZVxuICAgICAqIEBwYXJhbSBsYW5nIHRoZSByZXNvdXJjZSBsYW5ndWFnZSB0byBsb2FkXG4gICAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxhbnk+XG4gICAgICovXG4gICAgcHJvdGVjdGVkIGxvYWRSZXNvdXJjZShyZXNvdXJjZTogSTE4blJlc291cmNlSW1wbCwgbGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgLy8gdGhlIHBhdGggdG8gdGhlIHJlc291cmNlXG4gICAgICAgIGNvbnN0IHBhdGggPSByZXNvdXJjZS5nZXRQYXRoKGxhbmcpO1xuXG4gICAgICAgIC8vIGxvYWQgdGhlIHRyYW5zbGF0aW9ucyBmcm9tIHRoZSBwYXRoXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHBhdGgpLnBpcGUoXG4gICAgICAgICAgICAvLyBwcmVwcm9jZXNzIHRoZSB0cmFuc2xhdGlvbnMgdXNpbmcgdGhlIHJlc291cmNlIGNvbXBpbGVyXG4gICAgICAgICAgICBtYXAoKHRyYW5zbGF0aW9uczogYW55KSA9PiByZXNvdXJjZS5jb21waWxlVHJhbnNsYXRpb25zKHRyYW5zbGF0aW9ucywgbGFuZykpLFxuICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIHJlc291cmNlIGxvYWRlZCBwcm9wZXJseSwgc2VuZCBhIGluZm8gbWVzc2FnZVxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvZ1NlcnZpY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2dTZXJ2aWNlLmluZm8oYEkxOG4gcmVzb3VyY2UgbG9hZGVkIGZyb20gcGF0aCAke3BhdGh9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIHJldHVybiB0aGUgdHJhbnNsYXRpb25zXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGZhaWxlZCByZXNvdXJjZSBmcm9tIGxvYWRlZCByZXNvdXJjZSBhcnJheVxuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlUmVzb3VyY2VzKFtyZXNvdXJjZV0pO1xuICAgICAgICAgICAgICAgIC8vIHJlc291cmNlIG5vdCBsb2FkZWQgcHJvcGVybHksIHNlbmQgYSB3YXJuaW5nIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2dTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9nU2VydmljZS53YXJuKGBJMThuIHJlc291cmNlIE5PVCBsb2FkZWQgZnJvbSBwYXRoICR7cGF0aH1gLCBlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXNvdXJjZUVycm9yOiBSZXNvdXJjZUVycm9yID0geyBlcnJvcjogYEkxOG4gcmVzb3VyY2UgTk9UIGxvYWRlZCBmcm9tIHBhdGggJHtwYXRofWAsIHJlc291cmNlLCBpc0Vycm9yOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKHJlc291cmNlRXJyb3IpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJlc291cmNlQ29tcGlsZUZ1bmN0aW9uKGlkOiBzdHJpbmcpOiBUcmFuc2xhdGlvbnNDb21waWxlciB7XG4gICAgICAgIGNvbnN0IGN1c3RvbUhhbmRsZXJzID0gdGhpcy5ldWlBcHBDb25maWcuY3VzdG9tSGFuZGxlcjtcbiAgICAgICAgaWYgKGN1c3RvbUhhbmRsZXJzICYmIHR5cGVvZiBjdXN0b21IYW5kbGVyc1tpZF0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXN0b21IYW5kbGVyc1tpZF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVDb25maWcgPSB7XG4gICAgbG9hZGVyOiB7XG4gICAgICAgIHByb3ZpZGU6IFRyYW5zbGF0ZUxvYWRlcixcbiAgICAgICAgdXNlQ2xhc3M6IEkxOG5Mb2FkZXIsXG4gICAgfSxcbn07XG4iXX0=
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2kxOG4vaTE4bi5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBbUMsTUFBTSxXQUFXLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFzQmhELE1BQU0sT0FBTyxVQUFVO0lBSW5CLFlBQ2MsSUFBZ0IsRUFDSixVQUFzQixFQUNaLFlBQTBCO1FBRmhELFNBQUksR0FBSixJQUFJLENBQVk7UUFDSixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ1osaUJBQVksR0FBWixZQUFZLENBQWM7UUFOcEQsY0FBUyxHQUF1QixFQUFFLENBQUM7UUFDbkMsb0JBQWUsR0FBZ0MsRUFBRSxDQUFDO1FBT3hELDhDQUE4QztRQUM5QyxNQUFNLFVBQVUsR0FBZSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekYsTUFBTSxnQkFBZ0IsR0FBcUIsVUFBVSxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDL0UsSUFBSSxDQUFDLFNBQVMsQ0FB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QU0sY0FBYyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQ3ZELElBQUksY0FBYyxJQUFJLE9BQU8sY0FBYyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFVBQVUsRUFBRTtZQUM1RCxPQUFPLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM3QjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7a0lBbE5RLFVBQVUsc0ZBT1AsWUFBWTtzSUFQZixVQUFVOzs0RkFBVixVQUFVO2tCQUR0QixVQUFVOzswQkFPRixRQUFROzswQkFDUixNQUFNOzJCQUFDLFlBQVk7O0FBOE01QixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDM0IsTUFBTSxFQUFFO1FBQ0osT0FBTyxFQUFFLGVBQWU7UUFDeEIsUUFBUSxFQUFFLFVBQVU7S0FDdkI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IGdldEkxOG5Mb2FkZXJDb25maWcsIEkxOG5SZXNvdXJjZSwgdHlwZSBFdWlBcHBDb25maWcgfSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0IHsgSTE4blJlc291cmNlSW1wbCB9IGZyb20gJy4vaTE4bi5yZXNvdXJjZSc7XG5pbXBvcnQgeyBtZXJnZUFsbCB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBJMThuTG9hZGVyQ29uZmlnLCBJMThuQ29uZmlnLCBUcmFuc2xhdGlvbnNDb21waWxlciB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBDT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb25maWcvdG9rZW5zJztcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuLi9sb2cvbG9nLnNlcnZpY2UnO1xuXG4vLyBleHBvcnQgY29uc3QgSTE4Tl9MT0FERVJfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEkxOG5Mb2FkZXJDb25maWc+KCdJMThOX0xPQURFUl9DT05GSUcnKTtcbmludGVyZmFjZSBSZXNvdXJjZUVycm9yIHtcbiAgICBpc0Vycm9yOiBib29sZWFuO1xuICAgIGVycm9yPzogc3RyaW5nO1xuICAgIHJlc291cmNlPzogSTE4blJlc291cmNlSW1wbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2FkZWRSZXNvdXJjZXMge1xuICAgIHRyYW5zbGF0aW9uczogb2JqZWN0O1xuICAgIGhhc0Vycm9yOiBib29sZWFuO1xuICAgIGVycm9ycz86IEFycmF5PExvYWRlZFJlc291cmNlc0Vycm9yPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2FkZWRSZXNvdXJjZXNFcnJvciB7XG4gICAgcmVzb3VyY2U6IEkxOG5SZXNvdXJjZUltcGw7XG4gICAgZXJyb3I6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEkxOG5Mb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICAgIHByb3RlY3RlZCByZXNvdXJjZXM6IEkxOG5SZXNvdXJjZUltcGxbXSA9IFtdO1xuICAgIHByb3RlY3RlZCBmYWlsZWRSZXNvdXJjZXM6IEFycmF5PExvYWRlZFJlc291cmNlc0Vycm9yPiA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgbG9nU2VydmljZTogTG9nU2VydmljZSxcbiAgICAgICAgQEluamVjdChDT05GSUdfVE9LRU4pIHByb3RlY3RlZCBldWlBcHBDb25maWc6IEV1aUFwcENvbmZpZyxcbiAgICApIHtcbiAgICAgICAgLy8gY3JlYXRlIHRoZSByZXNvdXJjZXMgZnJvbSB0aGUgY29uZmlnIG9iamVjdFxuICAgICAgICBjb25zdCBpMThuQ29uZmlnOiBJMThuQ29uZmlnID0gdGhpcy5ldWlBcHBDb25maWcuZ2xvYmFsICYmIHRoaXMuZXVpQXBwQ29uZmlnLmdsb2JhbC5pMThuO1xuICAgICAgICBjb25zdCBpMThuTG9hZGVyQ29uZmlnOiBJMThuTG9hZGVyQ29uZmlnID0gaTE4bkNvbmZpZyAmJiBpMThuQ29uZmlnLmkxOG5Mb2FkZXI7XG4gICAgICAgIHRoaXMucmVzb3VyY2VzLnB1c2goLi4udGhpcy5jcmVhdGVSZXNvdXJjZXMoaTE4bkxvYWRlckNvbmZpZykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHRyYW5zbGF0aW9ucyBmcm9tIHRoZSBzZXJ2ZXJcbiAgICAgKlxuICAgICAqIEBwYXJhbSBsYW5nXG4gICAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxhbnk+XG4gICAgICovXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRSZXNvdXJjZXModGhpcy5yZXNvdXJjZXMsIGxhbmcpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGxvYWRlZFJlc291cmNlczogTG9hZGVkUmVzb3VyY2VzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mYWlsZWRSZXNvdXJjZXMgPSBsb2FkZWRSZXNvdXJjZXMuaGFzRXJyb3IgPyBsb2FkZWRSZXNvdXJjZXMuZXJyb3JzIDogW107XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxvYWRlZFJlc291cmNlcy50cmFuc2xhdGlvbnM7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGRzIHJlc291cmNlc1xuICAgICAqXG4gICAgICogQHBhcmFtIGNvbmZpZyBsb2FkZXIgY29uZmlndXJhdGlvblxuICAgICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PiB8IGZhbHNlXG4gICAgICovXG4gICAgcHVibGljIGFkZFJlc291cmNlcyhjb25maWc6IEkxOG5Mb2FkZXJDb25maWcpOiBJMThuUmVzb3VyY2VJbXBsW10ge1xuICAgICAgICAvLyBjcmVhdGUgdGhlIHJlc291cmNlc1xuICAgICAgICBsZXQgcmVzb3VyY2VzID0gdGhpcy5jcmVhdGVSZXNvdXJjZXMoY29uZmlnKTtcblxuICAgICAgICAvLyBmaWx0ZXIgdGhlIHJlc291cmNlcyBmaXJzdCwgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgICAgICByZXNvdXJjZXMgPSByZXNvdXJjZXMuZmlsdGVyKChyZXNvdXJjZSkgPT4gIXRoaXMucmVzb3VyY2VzLnNvbWUoKHJlcykgPT4gcmVzLmVxdWFscyhyZXNvdXJjZSkpKTtcblxuICAgICAgICAvLyBhZGQgdGhlIG5ldyByZXNvdXJjZXMgdG8gdGhlIGxpc3Qgb2YgZXhpc3RpbmcgcmVzb3VyY2VzXG4gICAgICAgIHRoaXMucmVzb3VyY2VzLnB1c2goLi4ucmVzb3VyY2VzKTtcblxuICAgICAgICAvLyByZXR1cm4gdGhlIGZpbHRlcmVkIHJlc291cmNlc1xuICAgICAgICByZXR1cm4gcmVzb3VyY2VzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZXMgcmVzb3VyY2VzIGZyb20gdGhlIGxvYWRlciBpbnN0YW5jZVxuICAgICAqL1xuICAgIHB1YmxpYyByZW1vdmVSZXNvdXJjZXMocmVtb3ZlZFJlc291cmNlczogSTE4blJlc291cmNlSW1wbFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzb3VyY2VzID0gdGhpcy5yZXNvdXJjZXMuZmlsdGVyKChyZXMpID0+ICFyZW1vdmVkUmVzb3VyY2VzLnNvbWUoKHJlbW92ZWRSZXNvdXJjZSkgPT4gcmVtb3ZlZFJlc291cmNlLmVxdWFscyhyZXMpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgYW4gYXJyYXkgb2YgcmVzb3VyY2VzLCBieSBsYW5ndWFnZVxuICAgICAqXG4gICAgICogQHBhcmFtIHJlc291cmNlcyB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgcmVzb3VyY2VzXG4gICAgICogQHBhcmFtIGxhbmcgdGhlIHJlc291cmNlIGxhbmd1YWdlIHRvIGxvYWRcbiAgICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPGFueT5cbiAgICAgKi9cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwdWJsaWMgbG9hZFJlc291cmNlcyhyZXNvdXJjZXM6IEkxOG5SZXNvdXJjZUltcGxbXSwgbGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgLy8gaWYgdGhlcmUgYXJlIHJlc291cmNlcyB0byBsb2FkXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc291cmNlcykgJiYgcmVzb3VyY2VzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIGxvYWQgYWxsIHRoZSByZXNvdXJjZXMgaW4gYW4gYXJyYXkgb2YgT2JzZXJ2YWJsZVxuICAgICAgICAgICAgY29uc3QgcmVxdWVzdHMgPSByZXNvdXJjZXMubWFwKChyZXNvdXJjZSkgPT4gdGhpcy5sb2FkUmVzb3VyY2UocmVzb3VyY2UsIGxhbmcpKTtcbiAgICAgICAgICAgIC8vIGdyb3VwIGFsbCB0aGUgb2JzZXJ2YWJsZXMgd2l0aCBmb3JrSm9pbiBhbmQgZGVlcCBtZXJnZSB0aGVtXG4gICAgICAgICAgICByZXR1cm4gZm9ya0pvaW4ocmVxdWVzdHMpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWNjZXNzUmVzcCA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJSZXNwOiBBcnJheTxMb2FkZWRSZXNvdXJjZXNFcnJvcj4gPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCg8UmVzb3VyY2VFcnJvcj5pdGVtKS5pc0Vycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyUmVzcC5wdXNoKHsgcmVzb3VyY2U6ICg8UmVzb3VyY2VFcnJvcj5pdGVtKS5yZXNvdXJjZSwgZXJyb3I6ICg8UmVzb3VyY2VFcnJvcj5pdGVtKS5lcnJvciB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc1Jlc3AucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdWNjZXNzUmVzcC5sZW5ndGggPT09IHJlc3BvbnNlLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaGFzRXJyb3I6IGZhbHNlLCB0cmFuc2xhdGlvbnM6IG1lcmdlQWxsKHN1Y2Nlc3NSZXNwKSB9O1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaGFzRXJyb3I6IHRydWUsIHRyYW5zbGF0aW9uczogbWVyZ2VBbGwoc3VjY2Vzc1Jlc3ApLCBlcnJvcnM6IGVyclJlc3AgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIG5vIHJlc291cmNlcyB0byBsb2FkXG4gICAgICAgICAgICByZXR1cm4gb2YoeyBoYXNFcnJvcjogZmFsc2UsIHRyYW5zbGF0aW9uczoge30gfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHJlc291cmNlcyB0aGF0IGZhaWxlZFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRGYWlsZWRSZXNvdXJjZXMoKTogQXJyYXk8TG9hZGVkUmVzb3VyY2VzRXJyb3I+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmFpbGVkUmVzb3VyY2VzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSByZXNvdXJjZXMgZnJvbSBhIGNvbmZpZyBmaWxlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29uZmlnIGxvYWRlciBjb25maWd1cmF0aW9uXG4gICAgICogQHJldHVybnMgSTE4blJlc291cmNlSW1wbFtdIHJlc291cmNlc1xuICAgICAqL1xuICAgIHByb3RlY3RlZCBjcmVhdGVSZXNvdXJjZXMoY29uZmlnOiBJMThuTG9hZGVyQ29uZmlnKTogSTE4blJlc291cmNlSW1wbFtdIHtcbiAgICAgICAgLy8gdXNlIHRoZSBkZWZhdWx0IGNvbmZpZyBhcyBhIHJlZmVyZW5jZSBiYXNlXG4gICAgICAgIGNvbmZpZyA9IGdldEkxOG5Mb2FkZXJDb25maWcoY29uZmlnKTtcblxuICAgICAgICBjb25zdCByZXNvdXJjZXMgPSBbXTtcblxuICAgICAgICAvLyBleHRyYWN0IHRoZSBpMThuIGZvbGRlcnMgZnJvbSBjb25maWdcbiAgICAgICAgY29uc3QgaTE4bkZvbGRlcnM6IHN0cmluZ1tdID0gQXJyYXkuaXNBcnJheShjb25maWcuaTE4bkZvbGRlcnMpXG4gICAgICAgICAgICA/IGNvbmZpZy5pMThuRm9sZGVyc1xuICAgICAgICAgICAgOiBjb25maWcuaTE4bkZvbGRlcnNcbiAgICAgICAgICAgID8gW2NvbmZpZy5pMThuRm9sZGVyc11cbiAgICAgICAgICAgIDogW107XG4gICAgICAgIGlmIChpMThuRm9sZGVycykge1xuICAgICAgICAgICAgLy8gYWRkIHRoZSBpMThuIGZvbGRlcnMgdG8gcmVzb3VyY2VzXG4gICAgICAgICAgICByZXNvdXJjZXMucHVzaCguLi5pMThuRm9sZGVycy5tYXAoKGZvbGRlcikgPT4gbmV3IEkxOG5SZXNvdXJjZUltcGwoYGFzc2V0cy8ke2ZvbGRlcn0vYCwgJy5qc29uJykpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGV4dHJhY3QgdGhlIGkxOG4gc2VydmljZXMgZnJvbSBjb25maWdcbiAgICAgICAgY29uc3QgaTE4blNlcnZpY2VzOiBzdHJpbmdbXSA9IEFycmF5LmlzQXJyYXkoY29uZmlnLmkxOG5TZXJ2aWNlcylcbiAgICAgICAgICAgID8gY29uZmlnLmkxOG5TZXJ2aWNlc1xuICAgICAgICAgICAgOiBjb25maWcuaTE4blNlcnZpY2VzXG4gICAgICAgICAgICA/IFtjb25maWcuaTE4blNlcnZpY2VzXVxuICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgaWYgKGkxOG5TZXJ2aWNlcykge1xuICAgICAgICAgICAgLy8gYWRkIHRoZSBpMThuIHNlcnZpY2VzIHRvIHJlc291cmNlc1xuICAgICAgICAgICAgcmVzb3VyY2VzLnB1c2goLi4uaTE4blNlcnZpY2VzLm1hcCgoc2VydmljZSkgPT4gbmV3IEkxOG5SZXNvdXJjZUltcGwoc2VydmljZSkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGV4dHJhY3QgdGhlIGkxOG4gcmVzb3VyY2VzIGZyb20gY29uZmlnXG4gICAgICAgIGNvbnN0IGkxOG5SZXNvdXJjZXM6IEkxOG5SZXNvdXJjZVtdID0gQXJyYXkuaXNBcnJheShjb25maWcuaTE4blJlc291cmNlcylcbiAgICAgICAgICAgID8gY29uZmlnLmkxOG5SZXNvdXJjZXNcbiAgICAgICAgICAgIDogY29uZmlnLmkxOG5SZXNvdXJjZXNcbiAgICAgICAgICAgID8gW2NvbmZpZy5pMThuUmVzb3VyY2VzXVxuICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgaWYgKGkxOG5SZXNvdXJjZXMpIHtcbiAgICAgICAgICAgIC8vIGFkZCB0aGUgaTE4biByZXNvdXJjZXMgdG8gcmVzb3VyY2VzXG4gICAgICAgICAgICByZXNvdXJjZXMucHVzaChcbiAgICAgICAgICAgICAgICAuLi5pMThuUmVzb3VyY2VzLm1hcChcbiAgICAgICAgICAgICAgICAgICAgKHJlc291cmNlKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEkxOG5SZXNvdXJjZUltcGwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2UucHJlZml4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlLnN1ZmZpeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldFJlc291cmNlQ29tcGlsZUZ1bmN0aW9uKHJlc291cmNlLmNvbXBpbGVUcmFuc2xhdGlvbnMpLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXNvdXJjZXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgYSByZXNvdXJjZSwgYnkgbGFuZ3VhZ2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSByZXNvdXJjZSB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgcmVzb3VyY2VcbiAgICAgKiBAcGFyYW0gbGFuZyB0aGUgcmVzb3VyY2UgbGFuZ3VhZ2UgdG8gbG9hZFxuICAgICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PlxuICAgICAqL1xuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByb3RlY3RlZCBsb2FkUmVzb3VyY2UocmVzb3VyY2U6IEkxOG5SZXNvdXJjZUltcGwsIGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIC8vIHRoZSBwYXRoIHRvIHRoZSByZXNvdXJjZVxuICAgICAgICBjb25zdCBwYXRoID0gcmVzb3VyY2UuZ2V0UGF0aChsYW5nKTtcblxuICAgICAgICAvLyBsb2FkIHRoZSB0cmFuc2xhdGlvbnMgZnJvbSB0aGUgcGF0aFxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldChwYXRoKS5waXBlKFxuICAgICAgICAgICAgLy8gcHJlcHJvY2VzcyB0aGUgdHJhbnNsYXRpb25zIHVzaW5nIHRoZSByZXNvdXJjZSBjb21waWxlclxuICAgICAgICAgICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgICAgIG1hcCgodHJhbnNsYXRpb25zOiBhbnkpID0+IHJlc291cmNlLmNvbXBpbGVUcmFuc2xhdGlvbnModHJhbnNsYXRpb25zLCBsYW5nKSksXG4gICAgICAgICAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIHJlc291cmNlIGxvYWRlZCBwcm9wZXJseSwgc2VuZCBhIGluZm8gbWVzc2FnZVxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxvZ1NlcnZpY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2dTZXJ2aWNlLmluZm8oYEkxOG4gcmVzb3VyY2UgbG9hZGVkIGZyb20gcGF0aCAke3BhdGh9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIHJldHVybiB0aGUgdHJhbnNsYXRpb25zXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGZhaWxlZCByZXNvdXJjZSBmcm9tIGxvYWRlZCByZXNvdXJjZSBhcnJheVxuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlUmVzb3VyY2VzKFtyZXNvdXJjZV0pO1xuICAgICAgICAgICAgICAgIC8vIHJlc291cmNlIG5vdCBsb2FkZWQgcHJvcGVybHksIHNlbmQgYSB3YXJuaW5nIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2dTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9nU2VydmljZS53YXJuKGBJMThuIHJlc291cmNlIE5PVCBsb2FkZWQgZnJvbSBwYXRoICR7cGF0aH1gLCBlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXNvdXJjZUVycm9yOiBSZXNvdXJjZUVycm9yID0geyBlcnJvcjogYEkxOG4gcmVzb3VyY2UgTk9UIGxvYWRlZCBmcm9tIHBhdGggJHtwYXRofWAsIHJlc291cmNlLCBpc0Vycm9yOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKHJlc291cmNlRXJyb3IpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZXNvdXJjZUNvbXBpbGVGdW5jdGlvbihpZDogc3RyaW5nKTogVHJhbnNsYXRpb25zQ29tcGlsZXIge1xuICAgICAgICBjb25zdCBjdXN0b21IYW5kbGVycyA9IHRoaXMuZXVpQXBwQ29uZmlnLmN1c3RvbUhhbmRsZXI7XG4gICAgICAgIGlmIChjdXN0b21IYW5kbGVycyAmJiB0eXBlb2YgY3VzdG9tSGFuZGxlcnNbaWRdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gY3VzdG9tSGFuZGxlcnNbaWRdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlQ29uZmlnID0ge1xuICAgIGxvYWRlcjoge1xuICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXG4gICAgICAgIHVzZUNsYXNzOiBJMThuTG9hZGVyLFxuICAgIH0sXG59O1xuIl19
@@ -4,9 +4,12 @@ export class I18nResourceImpl {
4
4
  *
5
5
  * @param prefix the prefix of the resource
6
6
  * @param suffix the suffix of the resource, optional parameter
7
- * @param compileTranslations compiler function, optional parameter
7
+ * @param compileTranslationsFn compiler function, optional parameter
8
8
  */
9
- constructor(prefix, suffix = '', compileTranslationsFn = (translations) => translations) {
9
+ constructor(prefix, suffix = '',
10
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-function-return-type
12
+ compileTranslationsFn = (translations) => translations) {
10
13
  this.prefix = prefix;
11
14
  this.suffix = suffix;
12
15
  this.compileTranslationsFn = compileTranslationsFn;
@@ -18,6 +21,8 @@ export class I18nResourceImpl {
18
21
  * @param lang the translations language
19
22
  * @returns the pre-processed translations
20
23
  */
24
+ // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
25
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
26
  compileTranslations(translations, lang) {
22
27
  return this.compileTranslationsFn(translations, lang);
23
28
  }
@@ -40,4 +45,4 @@ export class I18nResourceImpl {
40
45
  return `${this.prefix}${lang}${this.suffix}`;
41
46
  }
42
47
  }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvaTE4bi9pMThuLnJlc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxnQkFBZ0I7SUFDekI7Ozs7OztPQU1HO0lBQ0gsWUFDYyxNQUFjLEVBQ2QsU0FBaUIsRUFBRSxFQUNuQix3QkFBa0UsQ0FBQyxZQUFpQixFQUFFLEVBQUUsQ0FBQyxZQUFZO1FBRnJHLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUFhO1FBQ25CLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBZ0Y7SUFDaEgsQ0FBQztJQUVKOzs7Ozs7T0FNRztJQUNJLG1CQUFtQixDQUFDLFlBQWlCLEVBQUUsSUFBWTtRQUN0RCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEdBQXFCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDLE1BQU0sQ0FBQztJQUNwRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxPQUFPLENBQUMsSUFBWTtRQUN2QixPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2pELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBJMThuUmVzb3VyY2VJbXBsIHtcbiAgICAvKipcbiAgICAgKiBSZXNvdXJjZSBjb25zdHJ1Y3RvclxuICAgICAqXG4gICAgICogQHBhcmFtIHByZWZpeCB0aGUgcHJlZml4IG9mIHRoZSByZXNvdXJjZVxuICAgICAqIEBwYXJhbSBzdWZmaXggdGhlIHN1ZmZpeCBvZiB0aGUgcmVzb3VyY2UsIG9wdGlvbmFsIHBhcmFtZXRlclxuICAgICAqIEBwYXJhbSBjb21waWxlVHJhbnNsYXRpb25zIGNvbXBpbGVyIGZ1bmN0aW9uLCBvcHRpb25hbCBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIHByZWZpeDogc3RyaW5nLFxuICAgICAgICBwcm90ZWN0ZWQgc3VmZml4OiBzdHJpbmcgPSAnJyxcbiAgICAgICAgcHJvdGVjdGVkIGNvbXBpbGVUcmFuc2xhdGlvbnNGbjogKHRyYW5zbGF0aW9uczogYW55LCBsYW5nOiBzdHJpbmcpID0+IGFueSA9ICh0cmFuc2xhdGlvbnM6IGFueSkgPT4gdHJhbnNsYXRpb25zXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICogVHJhbnNsYXRpb25zIHByZS1wcm9jZXNzb3JcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0cmFuc2xhdGlvbnMgdGhlIG9iamVjdCB0byBiZSBwcmUtcHJvY2Vzc2VkXG4gICAgICogQHBhcmFtIGxhbmcgdGhlIHRyYW5zbGF0aW9ucyBsYW5ndWFnZVxuICAgICAqIEByZXR1cm5zIHRoZSBwcmUtcHJvY2Vzc2VkIHRyYW5zbGF0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBjb21waWxlVHJhbnNsYXRpb25zKHRyYW5zbGF0aW9uczogYW55LCBsYW5nOiBzdHJpbmcpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21waWxlVHJhbnNsYXRpb25zRm4odHJhbnNsYXRpb25zLCBsYW5nKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgd2hldGhlciBvdGhlciBvYmplY3QgaXMgZXF1YWwtdG8gdGhpcyBvbmUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb2JqIHRoZSByZWZlcmVuY2Ugb2JqZWN0IHdpdGggd2hpY2ggdG8gY29tcGFyZVxuICAgICAqIEByZXR1cm5zIHRydWUgaWYgdGhpcyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgb2JqLCBmYWxzZSBvdGhlcndpc2VcbiAgICAgKi9cbiAgICBwdWJsaWMgZXF1YWxzKG9iajogSTE4blJlc291cmNlSW1wbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcmVmaXggPT09IG9iai5wcmVmaXggJiYgdGhpcy5zdWZmaXggPT09IG9iai5zdWZmaXg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHBhdGggdG8gdGhlIHJlc291cmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbGFuZyB0aGUgcmVzb3VyY2UgbGFuZ3VhZ2VcbiAgICAgKiBAcmV0dXJucyB0aGUgcGF0aFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRQYXRoKGxhbmc6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnByZWZpeH0ke2xhbmd9JHt0aGlzLnN1ZmZpeH1gO1xuICAgIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvaTE4bi9pMThuLnJlc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxnQkFBZ0I7SUFDekI7Ozs7OztPQU1HO0lBQ0gsWUFDYyxNQUFjLEVBQ2QsU0FBaUIsRUFBRTtJQUM3QixtSEFBbUg7SUFDbkgsZ0hBQWdIO0lBQ3RHLHdCQUFrRSxDQUFDLFlBQWlCLEVBQUUsRUFBRSxDQUFDLFlBQVk7UUFKckcsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQWE7UUFHbkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFnRjtJQUNoSCxDQUFDO0lBRUo7Ozs7OztPQU1HO0lBQ0gsbUhBQW1IO0lBQ25ILDhEQUE4RDtJQUN2RCxtQkFBbUIsQ0FBQyxZQUFpQixFQUFFLElBQVk7UUFDdEQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxHQUFxQjtRQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDcEUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksT0FBTyxDQUFDLElBQVk7UUFDdkIsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSTE4blJlc291cmNlSW1wbCB7XG4gICAgLyoqXG4gICAgICogUmVzb3VyY2UgY29uc3RydWN0b3JcbiAgICAgKlxuICAgICAqIEBwYXJhbSBwcmVmaXggdGhlIHByZWZpeCBvZiB0aGUgcmVzb3VyY2VcbiAgICAgKiBAcGFyYW0gc3VmZml4IHRoZSBzdWZmaXggb2YgdGhlIHJlc291cmNlLCBvcHRpb25hbCBwYXJhbWV0ZXJcbiAgICAgKiBAcGFyYW0gY29tcGlsZVRyYW5zbGF0aW9uc0ZuIGNvbXBpbGVyIGZ1bmN0aW9uLCBvcHRpb25hbCBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIHByZWZpeDogc3RyaW5nLFxuICAgICAgICBwcm90ZWN0ZWQgc3VmZml4OiBzdHJpbmcgPSAnJyxcbiAgICAgICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSwgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LWZ1bmN0aW9uLXJldHVybi10eXBlXG4gICAgICAgIHByb3RlY3RlZCBjb21waWxlVHJhbnNsYXRpb25zRm46ICh0cmFuc2xhdGlvbnM6IGFueSwgbGFuZzogc3RyaW5nKSA9PiBhbnkgPSAodHJhbnNsYXRpb25zOiBhbnkpID0+IHRyYW5zbGF0aW9ucyxcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiBUcmFuc2xhdGlvbnMgcHJlLXByb2Nlc3NvclxuICAgICAqXG4gICAgICogQHBhcmFtIHRyYW5zbGF0aW9ucyB0aGUgb2JqZWN0IHRvIGJlIHByZS1wcm9jZXNzZWRcbiAgICAgKiBAcGFyYW0gbGFuZyB0aGUgdHJhbnNsYXRpb25zIGxhbmd1YWdlXG4gICAgICogQHJldHVybnMgdGhlIHByZS1wcm9jZXNzZWQgdHJhbnNsYXRpb25zXG4gICAgICovXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIGNvbXBpbGVUcmFuc2xhdGlvbnModHJhbnNsYXRpb25zOiBhbnksIGxhbmc6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXBpbGVUcmFuc2xhdGlvbnNGbih0cmFuc2xhdGlvbnMsIGxhbmcpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB3aGV0aGVyIG90aGVyIG9iamVjdCBpcyBlcXVhbC10byB0aGlzIG9uZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvYmogdGhlIHJlZmVyZW5jZSBvYmplY3Qgd2l0aCB3aGljaCB0byBjb21wYXJlXG4gICAgICogQHJldHVybnMgdHJ1ZSBpZiB0aGlzIG9iamVjdCBpcyB0aGUgc2FtZSBhcyBvYmosIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuICAgIHB1YmxpYyBlcXVhbHMob2JqOiBJMThuUmVzb3VyY2VJbXBsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZWZpeCA9PT0gb2JqLnByZWZpeCAmJiB0aGlzLnN1ZmZpeCA9PT0gb2JqLnN1ZmZpeDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcGF0aCB0byB0aGUgcmVzb3VyY2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSBsYW5nIHRoZSByZXNvdXJjZSBsYW5ndWFnZVxuICAgICAqIEByZXR1cm5zIHRoZSBwYXRoXG4gICAgICovXG4gICAgcHVibGljIGdldFBhdGgobGFuZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMucHJlZml4fSR7bGFuZ30ke3RoaXMuc3VmZml4fWA7XG4gICAgfVxufVxuIl19