nuxeo-development-framework 5.3.3 → 5.3.4

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 (120) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +2674 -289
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/ndf-config-editor/components/config-editor-actions/config-editor-actions.component.js +35 -0
  4. package/esm2015/lib/components/ndf-config-editor/components/editor-mode-switch.component.js +43 -0
  5. package/esm2015/lib/components/ndf-config-editor/components/index.js +4 -0
  6. package/esm2015/lib/components/ndf-config-editor/components/info-dialog/info-dialog.component.js +27 -0
  7. package/esm2015/lib/components/ndf-config-editor/config.token.js +3 -0
  8. package/esm2015/lib/components/ndf-config-editor/constants/index.js +4 -0
  9. package/esm2015/lib/components/ndf-config-editor/constants/mode.js +5 -0
  10. package/esm2015/lib/components/ndf-config-editor/constants/query.js +5 -0
  11. package/esm2015/lib/components/ndf-config-editor/constants/type.js +5 -0
  12. package/esm2015/lib/components/ndf-config-editor/containers/config-preview/config-preview.component.js +28 -0
  13. package/esm2015/lib/components/ndf-config-editor/containers/editor-settings/editor-settings.component.js +73 -0
  14. package/esm2015/lib/components/ndf-config-editor/containers/index.js +5 -0
  15. package/esm2015/lib/components/ndf-config-editor/containers/monaco-editor.component.js +195 -0
  16. package/esm2015/lib/components/ndf-config-editor/containers/ndf-config-editor/ndf-config-editor.component.js +133 -0
  17. package/esm2015/lib/components/ndf-config-editor/index.js +2 -0
  18. package/esm2015/lib/components/ndf-config-editor/models/config.js +2 -0
  19. package/esm2015/lib/components/ndf-config-editor/models/dialog-data.js +2 -0
  20. package/esm2015/lib/components/ndf-config-editor/models/editor-model.js +2 -0
  21. package/esm2015/lib/components/ndf-config-editor/models/index.js +5 -0
  22. package/esm2015/lib/components/ndf-config-editor/models/type-helper.js +2 -0
  23. package/esm2015/lib/components/ndf-config-editor/ndf-config-editor.module.js +118 -0
  24. package/esm2015/lib/components/ndf-config-editor/pipes/index.js +3 -0
  25. package/esm2015/lib/components/ndf-config-editor/pipes/is-valid-json.pipe.js +17 -0
  26. package/esm2015/lib/components/ndf-config-editor/pipes/validate-object.pipe.js +16 -0
  27. package/esm2015/lib/components/ndf-config-editor/public/editor-navigate-button.js +104 -0
  28. package/esm2015/lib/components/ndf-config-editor/public/index.js +2 -0
  29. package/esm2015/lib/components/ndf-config-editor/public-api.js +7 -0
  30. package/esm2015/lib/components/ndf-config-editor/services/data-access.service.js +26 -0
  31. package/esm2015/lib/components/ndf-config-editor/services/data-store.service.js +52 -0
  32. package/esm2015/lib/components/ndf-config-editor/services/dummy-data.js +1321 -0
  33. package/esm2015/lib/components/ndf-config-editor/services/index.js +4 -0
  34. package/esm2015/lib/components/ndf-config-editor/services/monaco.loader.service.js +51 -0
  35. package/esm2015/lib/components/ndf-config-editor/utility/index.js +2 -0
  36. package/esm2015/lib/components/ndf-config-editor/utility/json.js +10 -0
  37. package/esm2015/lib/components/reports/index.js +3 -0
  38. package/esm2015/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.js +19 -12
  39. package/esm2015/lib/components/reports/ndf-reports/ndf-reports.module.js +14 -5
  40. package/esm2015/lib/components/reports/ndf-reports/services/chart-data-transformers.service.js +15 -1
  41. package/esm2015/lib/components/reports/ndf-reports/services/chart-plugins-registry.service.js +9 -1
  42. package/esm2015/lib/components/spell-checker-field/spell-checker-field.module.js +1 -1
  43. package/esm2015/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.js +20 -14
  44. package/esm2015/lib/components/tables/ndf-table/directives/index.js +1 -2
  45. package/esm2015/lib/components/tables/ndf-table/models/table-config.js +1 -1
  46. package/esm2015/lib/components/tables/ndf-table/ndf-table.module.js +15 -7
  47. package/esm2015/lib/core/services/extension/component-register.service.js +4 -1
  48. package/esm2015/lib/core/tokens/index.js +2 -0
  49. package/esm2015/lib/core/tokens/project.token.js +3 -0
  50. package/esm2015/lib/directive/permissions/evaluators.service.js +20 -18
  51. package/esm2015/lib/shared/directives/copy-to-clipboard.directive.js +41 -0
  52. package/esm2015/lib/shared/directives/element-height.directive.js +80 -0
  53. package/esm2015/lib/shared/directives/fluid-height.directive.js +115 -0
  54. package/esm2015/lib/shared/directives/index.js +4 -0
  55. package/esm2015/lib/shared/index.js +6 -0
  56. package/esm2015/lib/shared/libraryShared.module.js +35 -10
  57. package/esm2015/lib/shared/models/index.js +2 -1
  58. package/esm2015/lib/shared/models/ndf-request.model.js +2 -0
  59. package/esm2015/public-api.js +4 -1
  60. package/fesm2015/nuxeo-development-framework.js +2528 -190
  61. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  62. package/lib/components/ndf-config-editor/components/config-editor-actions/config-editor-actions.component.d.ts +14 -0
  63. package/lib/components/ndf-config-editor/components/editor-mode-switch.component.d.ts +17 -0
  64. package/lib/components/ndf-config-editor/components/index.d.ts +3 -0
  65. package/lib/components/ndf-config-editor/components/info-dialog/info-dialog.component.d.ts +11 -0
  66. package/lib/components/ndf-config-editor/config.token.d.ts +9 -0
  67. package/lib/components/ndf-config-editor/constants/index.d.ts +3 -0
  68. package/lib/components/ndf-config-editor/constants/mode.d.ts +4 -0
  69. package/lib/components/ndf-config-editor/constants/query.d.ts +4 -0
  70. package/lib/components/ndf-config-editor/constants/type.d.ts +4 -0
  71. package/lib/components/ndf-config-editor/containers/config-preview/config-preview.component.d.ts +15 -0
  72. package/lib/components/ndf-config-editor/containers/editor-settings/editor-settings.component.d.ts +24 -0
  73. package/lib/components/ndf-config-editor/containers/index.d.ts +4 -0
  74. package/lib/components/ndf-config-editor/containers/monaco-editor.component.d.ts +33 -0
  75. package/lib/components/ndf-config-editor/containers/ndf-config-editor/ndf-config-editor.component.d.ts +48 -0
  76. package/lib/components/ndf-config-editor/index.d.ts +1 -0
  77. package/lib/components/ndf-config-editor/models/config.d.ts +24 -0
  78. package/lib/components/ndf-config-editor/models/dialog-data.d.ts +6 -0
  79. package/lib/components/ndf-config-editor/models/editor-model.d.ts +15 -0
  80. package/lib/components/ndf-config-editor/models/index.d.ts +4 -0
  81. package/lib/components/ndf-config-editor/models/type-helper.d.ts +3 -0
  82. package/lib/components/ndf-config-editor/ndf-config-editor.module.d.ts +36 -0
  83. package/lib/components/ndf-config-editor/pipes/index.d.ts +2 -0
  84. package/lib/components/ndf-config-editor/pipes/is-valid-json.pipe.d.ts +7 -0
  85. package/lib/components/ndf-config-editor/pipes/validate-object.pipe.d.ts +7 -0
  86. package/lib/components/ndf-config-editor/public/editor-navigate-button.d.ts +31 -0
  87. package/lib/components/ndf-config-editor/public/index.d.ts +1 -0
  88. package/lib/components/ndf-config-editor/public-api.d.ts +6 -0
  89. package/lib/components/ndf-config-editor/services/data-access.service.d.ts +8 -0
  90. package/lib/components/ndf-config-editor/services/data-store.service.d.ts +24 -0
  91. package/lib/components/ndf-config-editor/services/dummy-data.d.ts +992 -0
  92. package/lib/components/ndf-config-editor/services/index.d.ts +3 -0
  93. package/lib/components/ndf-config-editor/services/monaco.loader.service.d.ts +14 -0
  94. package/lib/components/ndf-config-editor/utility/index.d.ts +1 -0
  95. package/lib/components/ndf-config-editor/utility/json.d.ts +1 -0
  96. package/lib/components/reports/index.d.ts +2 -0
  97. package/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.d.ts +6 -3
  98. package/lib/components/reports/ndf-reports/ndf-reports.module.d.ts +4 -2
  99. package/lib/components/reports/ndf-reports/services/chart-data-transformers.service.d.ts +10 -0
  100. package/lib/components/reports/ndf-reports/services/chart-plugins-registry.service.d.ts +6 -0
  101. package/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.d.ts +3 -1
  102. package/lib/components/tables/ndf-table/directives/index.d.ts +0 -1
  103. package/lib/components/tables/ndf-table/models/table-config.d.ts +1 -0
  104. package/lib/components/tables/ndf-table/ndf-table.module.d.ts +4 -2
  105. package/lib/core/services/extension/component-register.service.d.ts +3 -0
  106. package/lib/core/tokens/index.d.ts +1 -0
  107. package/lib/core/tokens/project.token.d.ts +2 -0
  108. package/lib/directive/permissions/evaluators.service.d.ts +4 -2
  109. package/lib/shared/directives/copy-to-clipboard.directive.d.ts +15 -0
  110. package/lib/shared/directives/element-height.directive.d.ts +28 -0
  111. package/lib/{components/tables/ndf-table → shared}/directives/fluid-height.directive.d.ts +2 -1
  112. package/lib/shared/directives/index.d.ts +3 -0
  113. package/lib/shared/index.d.ts +5 -0
  114. package/lib/shared/libraryShared.module.d.ts +3 -1
  115. package/lib/shared/models/index.d.ts +1 -0
  116. package/lib/shared/models/ndf-request.model.d.ts +7 -0
  117. package/package.json +4 -2
  118. package/public-api.d.ts +3 -0
  119. package/src/docs/ndf-table.doc.md +1433 -0
  120. package/esm2015/lib/components/tables/ndf-table/directives/fluid-height.directive.js +0 -112
@@ -0,0 +1,4 @@
1
+ export * from './data-access.service';
2
+ export * from './data-store.service';
3
+ export * from './monaco.loader.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25kZi1jb25maWctZWRpdG9yL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRhLWFjY2Vzcy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kYXRhLXN0b3JlLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmFjby5sb2FkZXIuc2VydmljZSc7XHJcbiJdfQ==
@@ -0,0 +1,51 @@
1
+ // monaco-loader.service.ts
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class MonacoLoaderService {
5
+ constructor() {
6
+ this.loaded = false;
7
+ }
8
+ load(baseUrl = window.location.origin) {
9
+ const _vsUrl = window.location.origin + baseUrl + '/assets/monaco-editor/min/vs';
10
+ if (this.loaded)
11
+ return this.loadPromise;
12
+ this.loaded = true;
13
+ this.loadPromise = new Promise((resolve) => {
14
+ // If already available
15
+ if (window.monaco) {
16
+ resolve(window.monaco);
17
+ return;
18
+ }
19
+ const onAmdLoader = () => {
20
+ window.require.config({ paths: { vs: _vsUrl } });
21
+ // Set the worker URL to the correct path
22
+ /*window.monaco.editor?.setWorkerOptions({
23
+ // Make sure the worker path points to the correct location
24
+ baseUrl: `${baseUrl}/worker/`
25
+ });*/
26
+ window.require(['vs/editor/editor.main'], () => {
27
+ resolve(window.monaco);
28
+ });
29
+ };
30
+ // Load AMD loader if needed
31
+ if (!window.require) {
32
+ const loaderScript = document.createElement('script');
33
+ loaderScript.type = 'text/javascript';
34
+ loaderScript.src = `${_vsUrl}/loader.js`;
35
+ loaderScript.onload = onAmdLoader;
36
+ document.body.appendChild(loaderScript);
37
+ }
38
+ else {
39
+ onAmdLoader();
40
+ }
41
+ });
42
+ return this.loadPromise;
43
+ }
44
+ }
45
+ MonacoLoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MonacoLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
46
+ MonacoLoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MonacoLoaderService, providedIn: 'root' });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MonacoLoaderService, decorators: [{
48
+ type: Injectable,
49
+ args: [{ providedIn: 'root' }]
50
+ }] });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uYWNvLmxvYWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9uZGYtY29uZmlnLWVkaXRvci9zZXJ2aWNlcy9tb25hY28ubG9hZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMkJBQTJCO0FBQzNCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVzNDLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFUyxXQUFNLEdBQUcsS0FBSyxDQUFDO0tBMkN2QjtJQXhDQSxJQUFJLENBQUMsVUFBa0IsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1FBQzVDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLE9BQU8sR0FBRyw4QkFBOEIsQ0FBQztRQUNqRixJQUFJLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBRXpDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQXVCLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDaEUsdUJBQXVCO1lBQ3ZCLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRTtnQkFDbEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdkIsT0FBTzthQUNQO1lBRUQsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFO2dCQUN4QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBRWpELHlDQUF5QztnQkFDekM7OzthQUdTO2dCQUVULE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsRUFBRTtvQkFDOUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEIsQ0FBQyxDQUFDLENBQUM7WUFDSixDQUFDLENBQUM7WUFFRiw0QkFBNEI7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ3BCLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3RELFlBQVksQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7Z0JBQ3RDLFlBQVksQ0FBQyxHQUFHLEdBQUcsR0FBRyxNQUFNLFlBQVksQ0FBQztnQkFDekMsWUFBWSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUM7Z0JBQ2xDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ3hDO2lCQUFNO2dCQUNOLFdBQVcsRUFBRSxDQUFDO2FBQ2Q7UUFDRixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN6QixDQUFDOztpSEEzQ1csbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FETixNQUFNOzRGQUNuQixtQkFBbUI7a0JBRC9CLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gbW9uYWNvLWxvYWRlci5zZXJ2aWNlLnRzXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vIFR5cGUgdGhlIE1vbmFjbyBuYW1lc3BhY2UgaWYgYXZhaWxhYmxlXHJcbmRlY2xhcmUgZ2xvYmFsIHtcclxuXHRpbnRlcmZhY2UgV2luZG93IHtcclxuXHRcdG1vbmFjbzogdHlwZW9mIGltcG9ydCgnbW9uYWNvLWVkaXRvcicpO1xyXG5cdFx0cmVxdWlyZTogYW55O1xyXG5cdH1cclxufVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIE1vbmFjb0xvYWRlclNlcnZpY2Uge1xyXG5cdHByaXZhdGUgbG9hZGVkID0gZmFsc2U7XHJcblx0cHJpdmF0ZSBsb2FkUHJvbWlzZSE6IFByb21pc2U8dHlwZW9mIHdpbmRvdy5tb25hY28+O1xyXG5cclxuXHRsb2FkKGJhc2VVcmw6IHN0cmluZyA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pOiBQcm9taXNlPHR5cGVvZiB3aW5kb3cubW9uYWNvPiB7XHJcblx0XHRjb25zdCBfdnNVcmwgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgYmFzZVVybCArICcvYXNzZXRzL21vbmFjby1lZGl0b3IvbWluL3ZzJztcclxuXHRcdGlmICh0aGlzLmxvYWRlZCkgcmV0dXJuIHRoaXMubG9hZFByb21pc2U7XHJcblxyXG5cdFx0dGhpcy5sb2FkZWQgPSB0cnVlO1xyXG5cdFx0dGhpcy5sb2FkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHR5cGVvZiB3aW5kb3cubW9uYWNvPigocmVzb2x2ZSkgPT4ge1xyXG5cdFx0XHQvLyBJZiBhbHJlYWR5IGF2YWlsYWJsZVxyXG5cdFx0XHRpZiAod2luZG93Lm1vbmFjbykge1xyXG5cdFx0XHRcdHJlc29sdmUod2luZG93Lm1vbmFjbyk7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRjb25zdCBvbkFtZExvYWRlciA9ICgpID0+IHtcclxuXHRcdFx0XHR3aW5kb3cucmVxdWlyZS5jb25maWcoeyBwYXRoczogeyB2czogX3ZzVXJsIH0gfSk7XHJcblxyXG5cdFx0XHRcdC8vIFNldCB0aGUgd29ya2VyIFVSTCB0byB0aGUgY29ycmVjdCBwYXRoXHJcblx0XHRcdFx0Lyp3aW5kb3cubW9uYWNvLmVkaXRvcj8uc2V0V29ya2VyT3B0aW9ucyh7XHJcbiAgICAgICAgICAvLyBNYWtlIHN1cmUgdGhlIHdvcmtlciBwYXRoIHBvaW50cyB0byB0aGUgY29ycmVjdCBsb2NhdGlvblxyXG4gICAgICAgICAgYmFzZVVybDogYCR7YmFzZVVybH0vd29ya2VyL2BcclxuICAgICAgICB9KTsqL1xyXG5cclxuXHRcdFx0XHR3aW5kb3cucmVxdWlyZShbJ3ZzL2VkaXRvci9lZGl0b3IubWFpbiddLCAoKSA9PiB7XHJcblx0XHRcdFx0XHRyZXNvbHZlKHdpbmRvdy5tb25hY28pO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9O1xyXG5cclxuXHRcdFx0Ly8gTG9hZCBBTUQgbG9hZGVyIGlmIG5lZWRlZFxyXG5cdFx0XHRpZiAoIXdpbmRvdy5yZXF1aXJlKSB7XHJcblx0XHRcdFx0Y29uc3QgbG9hZGVyU2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcblx0XHRcdFx0bG9hZGVyU2NyaXB0LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcclxuXHRcdFx0XHRsb2FkZXJTY3JpcHQuc3JjID0gYCR7X3ZzVXJsfS9sb2FkZXIuanNgO1xyXG5cdFx0XHRcdGxvYWRlclNjcmlwdC5vbmxvYWQgPSBvbkFtZExvYWRlcjtcclxuXHRcdFx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxvYWRlclNjcmlwdCk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0b25BbWRMb2FkZXIoKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMubG9hZFByb21pc2U7XHJcblx0fVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './json';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25kZi1jb25maWctZWRpdG9yL3V0aWxpdHkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2pzb24nO1xyXG4iXX0=
@@ -0,0 +1,10 @@
1
+ export function isValidJson(value) {
2
+ try {
3
+ const parsed = JSON.parse(value);
4
+ return typeof parsed === 'object' && parsed !== null;
5
+ }
6
+ catch (_a) {
7
+ return false;
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvbmRmLWNvbmZpZy1lZGl0b3IvdXRpbGl0eS9qc29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBYTtJQUN4QyxJQUFJO1FBQ0gsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxPQUFPLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxNQUFNLEtBQUssSUFBSSxDQUFDO0tBQ3JEO0lBQUMsV0FBTTtRQUNQLE9BQU8sS0FBSyxDQUFDO0tBQ2I7QUFDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRKc29uKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHR0cnkge1xyXG5cdFx0Y29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZSh2YWx1ZSk7XHJcblx0XHRyZXR1cm4gdHlwZW9mIHBhcnNlZCA9PT0gJ29iamVjdCcgJiYgcGFyc2VkICE9PSBudWxsO1xyXG5cdH0gY2F0Y2gge1xyXG5cdFx0cmV0dXJuIGZhbHNlO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './charts';
2
+ export * from './ndf-reports';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoYXJ0cyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbmRmLXJlcG9ydHMnO1xyXG5cclxuIl19
@@ -1,11 +1,11 @@
1
1
  import { animate, state, style, transition, trigger } from '@angular/animations';
2
2
  import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
3
3
  import _ from 'lodash';
4
+ import { DestroySubject, FluidHeightDirective } from '../../../../../shared';
4
5
  import { BehaviorSubject, combineLatest, forkJoin, fromEvent, of, ReplaySubject } from 'rxjs';
5
6
  import { distinctUntilChanged, filter, finalize, map, switchMap, takeUntil, tap } from 'rxjs/operators';
6
- import { DestroySubject } from '../../../../../shared/components';
7
- import { FluidHeightDirective } from '../../../../tables';
8
7
  import { mapToNdfTableConfig } from '../../utilities';
8
+ import { NDF_EDITOR_TYPE } from '../../../../ndf-config-editor/constants';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "@ngx-translate/core";
11
11
  import * as i2 from "../../../../tables";
@@ -14,14 +14,15 @@ import * as i4 from "@angular/router";
14
14
  import * as i5 from "../../../../tables/ndf-table/filters-panel/containers/filters-panel/filters-panel.component";
15
15
  import * as i6 from "@angular/material/button";
16
16
  import * as i7 from "@angular/material/icon";
17
- import * as i8 from "@angular/material/progress-spinner";
18
- import * as i9 from "../ndf-report/ndf-report.component";
19
- import * as i10 from "../../../../tables/ndf-table/containers/ndf-table/ndf-table.component";
20
- import * as i11 from "@angular/common";
21
- import * as i12 from "../../../../tables/ndf-table/directives/fluid-height.directive";
22
- import * as i13 from "@angular/cdk/bidi";
23
- import * as i14 from "../../directives/scrollable-div.directive";
24
- import * as i15 from "../../../../tables/ndf-table/directives/search.directive";
17
+ import * as i8 from "../../../../ndf-config-editor/public/editor-navigate-button";
18
+ import * as i9 from "@angular/material/progress-spinner";
19
+ import * as i10 from "../ndf-report/ndf-report.component";
20
+ import * as i11 from "../../../../tables/ndf-table/containers/ndf-table/ndf-table.component";
21
+ import * as i12 from "@angular/common";
22
+ import * as i13 from "../../../../../shared/directives/fluid-height.directive";
23
+ import * as i14 from "@angular/cdk/bidi";
24
+ import * as i15 from "../../directives/scrollable-div.directive";
25
+ import * as i16 from "../../../../tables/ndf-table/directives/search.directive";
25
26
  export const slideAnimation = trigger('slideInOut', [
26
27
  state('closed', style({ transform: 'translateX(var(--ndf-reports-details-translateX, -100%))' })),
27
28
  state('open', style({ transform: 'translateX(0)' })),
@@ -55,6 +56,8 @@ export class NdfReportsComponent extends DestroySubject {
55
56
  this._reportDetailsSubject = new BehaviorSubject(null);
56
57
  this.reportDetails$ = this._reportDetailsSubject.asObservable();
57
58
  this.isDetailsOpened = false;
59
+ this.jsonEditorEnabled = false;
60
+ this.editorType = NDF_EDITOR_TYPE.REPORTS;
58
61
  this.navigateRoute = [];
59
62
  this.onQueryChange = new EventEmitter();
60
63
  this.trackByFn = (_, report) => {
@@ -219,7 +222,7 @@ export class NdfReportsComponent extends DestroySubject {
219
222
  }
220
223
  }
221
224
  NdfReportsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsComponent, deps: [{ token: i1.TranslateService }, { token: i2.FiltersMapperService }, { token: i3.NdfReportsService }, { token: i3.ChartManagerService }, { token: i3.ReportTransformService }, { token: i0.ChangeDetectorRef }, { token: i2.FilterQueryService }, { token: i3.ReportsStateService }, { token: i4.Router }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
222
- NdfReportsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportsComponent, selector: "app-ndf-reports", inputs: { navigateRoute: "navigateRoute", config: "config" }, outputs: { onQueryChange: "onQueryChange" }, host: { properties: { "dir": "direction" }, classAttribute: "ndf-reports" }, viewQueries: [{ propertyName: "fluidDirective", first: true, predicate: FluidHeightDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n\t*ngIf=\"reportsData$ | async as reports\"\r\n\t[class.panel-opened]=\"isPanelOpened && filtersConfig\"\r\n\t[dir]=\"direction\"\r\n\tclass=\"ndf-reports__container\"\r\n\tndfFluidHeight\r\n>\r\n\t<div class=\"ndf-reports__panel\" *ngIf=\"!!filtersConfig?.fields?.length\">\r\n\t\t<app-filters-panel\r\n\t\t\t[fields]=\"filtersConfig?.fields\"\r\n\t\t\t[aggregations]=\"reports?.response?.aggregations\"\r\n\t\t\t(filterChanged)=\"filterChanged($event)\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\tclass=\"ndf-reports__filters\"\r\n\t\t></app-filters-panel>\r\n\t</div>\r\n\r\n\t<div class=\"ndf-reports__content p-4 pt-0\" (scrolled)=\"onContentScroll($event)\">\r\n\t\t<div class=\"ndf-reports__header flex pt-4\">\r\n\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t\t<mat-spinner *ngIf=\"isLoadingResult\" class=\"mt-5 mx-auto\" [diameter]=\"48\"></mat-spinner>\r\n\r\n\t\t<div class=\"reports-grid\" *ngIf=\"!isLoadingResult\">\r\n\t\t\t<app-ndf-report\r\n\t\t\t\t*ngFor=\"let config of reportConfig.items; trackBy: trackByFn\"\r\n\t\t\t\t[config]=\"config\"\r\n\t\t\t\t[data]=\"reports?.response\"\r\n\t\t\t\t[criteria]=\"filtersParams$ | async\"\r\n\t\t\t\t[class.col-small]=\"config?.layout?.width === 'small'\"\r\n\t\t\t\t[class.col-medium]=\"config?.layout?.width === 'medium'\"\r\n\t\t\t\t[class.col-half]=\"config?.layout?.width === 'half'\"\r\n\t\t\t\t[class.col-wide]=\"config?.layout?.width === 'wide'\"\r\n\t\t\t\t[class.col-extra-wide]=\"config?.layout?.width === 'extra'\"\r\n\t\t\t\t[class.col-full]=\"config?.layout?.width === 'full'\"\r\n\t\t\t\t[direction]=\"direction\"\r\n\t\t\t\tclass=\"reports-grid__item {{ config?.layout?.styleClass }}\"\r\n\t\t\t\t(onNavigate)=\"onNavigate($event)\"\r\n\t\t\t\t(onOpen)=\"openReportDetails($event, config)\"\r\n\t\t\t></app-ndf-report>\r\n\t\t</div>\r\n\t</div>\r\n\t<div\r\n\t\tclass=\"ndf-reports__details\"\r\n\t\t[class.opened]=\"showDetails\"\r\n\t\t[@slideInOut]=\"showDetails ? 'open' : 'closed'\"\r\n\t\t(@slideInOut.done)=\"onDetailsAnimationEnd($event)\"\r\n\t>\r\n\t\t<app-ndf-table\r\n\t\t\t*ngIf=\"reportDetails$ | async as report\"\r\n\t\t\t[config]=\"report.config\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\t[customCriteria]=\"filtersParams$ | async\"\r\n\t\t>\r\n\t\t\t<ng-template searchTableTemplate>\r\n\t\t\t\t<div class=\"ndf-reports__details__header flex gap-2\">\r\n\t\t\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t\t<button mat-stroked-button class=\"close-button\" (click)=\"closeDetailsPanel()\">\r\n\t\t\t\t\t\t<mat-icon> close</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<h3>\r\n\t\t\t\t\t{{ report.label | translate }}\r\n\t\t\t\t</h3>\r\n\t\t\t</ng-template>\r\n\t\t</app-ndf-table>\r\n\t</div>\r\n</div>\r\n", styles: [":host{padding-inline:var(--ndf-reports-inline-padding, 0);padding-block:var(--ndf-reports-block-padding, .5rem 0);height:100%;position:relative;display:flex;flex-direction:column;background-color:var(--ndf-reports-background, #fff);box-sizing:border-box;max-width:100%;flex:0 0 100%}:host:before,:host:after{box-sizing:border-box}:host[dir=ltr]{--ndf-reports-panel-translateX: -100%;--ndf-reports-details-translateX: 100%}.ndf-reports__header{background-color:var(--ndf-reports-background, #fff);flex-direction:var(--ndf-reports-header-direction, row);justify-content:var(--ndf-reports-header-justify, space-between);align-items:var(--ndf-reports-header-items, center);padding-inline:var(--ndf-reports-header-padding-inline, .5rem);padding-block:var(--ndf-reports-header-padding-block, 0 .5rem);position:var(--ndf-reports-header-position, sticky);top:0;z-index:1}.ndf-reports__header__actions{justify-content:var(--ndf-reports-actions-justify, flex-end)}.ndf-reports__header__custom-actions .toggle-button{min-width:0;padding:0 10px}.ndf-reports__container{--panel-width: var(--ndf-reports-panel-width, 18rem);position:relative;overflow:hidden;display:grid;transition:all .2s;max-width:100%;width:100%;height:var(--ndf-reports-height, calc(var(--ndf-table-height) - calc(var(--ndf-reports-block-padding, 1rem) * 2.5)));flex-grow:1;grid-gap:var(--ndf-table-container-gap, .5rem);gap:var(--ndf-table-container-gap, .5rem)}.ndf-reports__container.panel-opened{--ndf-details-margin: var(--panel-width);--ndf-reports-panel-translateX: 0;--ndf-reports-content-margin: var(--panel-width)}.ndf-reports__panel,.ndf-reports__content .ndf-reports__details{overflow:auto;transition:all .2s}.ndf-reports__panel{position:absolute;width:var(--panel-width);height:100%;transform:translate(var(--ndf-reports-panel-translateX, 100%));padding-inline:var(--ndf-reports-panel-inline-padding, .5rem);padding-block:var(--ndf-reports-panel-block-padding, .5rem);background:var(--ndf-reports-panel-background, #fff);z-index:1}.ndf-reports__content{flex-grow:1;padding-inline-start:var(--ndf-reports-content-margin, 0);overflow-y:var(--ndf-reports-content-overflow-y, auto);position:relative}.ndf-reports__details{position:absolute;inset-inline-end:0;width:calc(100% - var(--ndf-details-margin, 0px));height:100%;transform:translate(var(--ndf-reports-details-translateX, -100%));padding-inline:var(--ndf-reports-details-inline-padding, 0rem);flex-grow:1;padding-block:var(--ndf-reports-details-block-padding, 0rem);background:var(--ndf-reports-details-background, #fff);z-index:1;transition:all .2s}.reports-grid{--grid-columns: 6;--column-width: calc(100% / var(--grid-columns));display:grid;grid-gap:var(--reports-grid-gap, 1.5rem);gap:var(--reports-grid-gap, 1.5rem);grid-template-columns:var(--rg-columns, repeat(var(--grid-columns), 1fr));margin-block:var(--reports-grid-margin-block, 1.25rem 0);padding-inline:var(--reports-grid-padding-inline, .5rem)}.reports-grid__item{display:grid;grid-gap:.3rem;gap:.3rem;min-width:0;text-align:center;vertical-align:middle}@media screen{.reports-grid__item{grid-column:var(--col-span, span var(--grid-column, 2));grid-row:span var(--row-span, 1);grid-template-rows:subgrid}}.reports-grid__item.col-small{--col-span: var(--col-small-span, span 1)}.reports-grid__item.col-medium{--col-span: var(--col-medium-span, span 2)}.reports-grid__item.col-half{--col-span: var(--col-half-span, span 3)}.reports-grid__item.col-wide{--col-span: var(--col-wide-span, span 4)}.reports-grid__item.col-extra-wide{--col-span: var(--col-extra-wide-span, span 5)}.reports-grid__item.col-full{--col-span: 1 / -1}@media screen and (max-width: 1200px){.reports-grid{--col-span: span 1;--col-half-span: var(--col-span);--col-medium-span: var(--col-span);--col-small-span: var(--col-span);--col-extra-wide-span: 1 / -1;--col-wide-span: 1 / -1;--reports-grid-gap: 1rem;--grid-columns: 2}}@media screen and (max-width: 776px){.reports-grid{--col-half-span: var(--col-span);--col-medium-span: var(--col-span);--col-small-span: var(--col-span);--col-span: 1 / -1;--reports-grid-gap: 1rem;--grid-columns: 1}}@media print{.reports-grid{--reports-grid-gap: 11mm;--reports-grid-margin-top: 11mm;--rg-columns: repeat(2, 1fr)}}\n"], components: [{ type: i5.FiltersPanelComponent, selector: "app-filters-panel", inputs: ["aggregations", "fields", "activeQuery"], outputs: ["filterChanged"] }, { type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i9.NdfReportComponent, selector: "app-ndf-report", inputs: ["config", "direction", "data", "criteria"], outputs: ["onNavigate", "onOpen"] }, { type: i10.NdfTableComponent, selector: "app-ndf-table", inputs: ["rows", "totalRecords", "autoCalculateHeight", "emptyMessage", "activeQuery", "configPath", "configTransformer", "tableKey", "config", "customCriteria", "searchTerm"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading", "onPage", "onInitialized", "onLoaded", "onQueryChange", "onSort"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.FluidHeightDirective, selector: "[ndfFluidHeight]", inputs: ["minHeight", "ndfFluidHeight", "subtractItems", "decrease", "delay", "calculate", "inlineStyle"], exportAs: ["ndfFluidHeight"] }, { type: i13.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i14.ScrollableDivDirective, selector: "[scrolled]", inputs: ["scrollTop"], outputs: ["scrolled"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i15.SearchTableTemplateDirective, selector: "[searchTableTemplate]" }], pipes: { "async": i11.AsyncPipe, "translate": i1.TranslatePipe }, animations: [slideAnimation] });
225
+ NdfReportsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportsComponent, selector: "app-ndf-reports", inputs: { jsonEditorEnabled: "jsonEditorEnabled", reportsKey: "reportsKey", navigateRoute: "navigateRoute", config: "config" }, outputs: { onQueryChange: "onQueryChange" }, host: { properties: { "dir": "direction" }, classAttribute: "ndf-reports" }, viewQueries: [{ propertyName: "fluidDirective", first: true, predicate: FluidHeightDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n\t*ngIf=\"reportsData$ | async as reports\"\r\n\t[class.panel-opened]=\"isPanelOpened && filtersConfig\"\r\n\t[dir]=\"direction\"\r\n\tclass=\"ndf-reports__container\"\r\n\tndfFluidHeight\r\n>\r\n\t<div class=\"ndf-reports__panel\" *ngIf=\"!!filtersConfig?.fields?.length\">\r\n\t\t<app-filters-panel\r\n\t\t\t[fields]=\"filtersConfig?.fields\"\r\n\t\t\t[aggregations]=\"reports?.response?.aggregations\"\r\n\t\t\t(filterChanged)=\"filterChanged($event)\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\tclass=\"ndf-reports__filters\"\r\n\t\t></app-filters-panel>\r\n\t</div>\r\n\r\n\t<div class=\"ndf-reports__content p-4 pt-0\" (scrolled)=\"onContentScroll($event)\">\r\n\t\t<div class=\"ndf-reports__header flex pt-4\">\r\n\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t</button>\r\n\t\t\t<app-editor-button\r\n\t\t\t\t*ngIf=\"jsonEditorEnabled && reportsKey\"\r\n\t\t\t\t[key]=\"reportsKey\"\r\n\t\t\t\t[type]=\"editorType\"\r\n\t\t\t></app-editor-button>\r\n\t\t</div>\r\n\t\t<mat-spinner *ngIf=\"isLoadingResult\" class=\"mt-5 mx-auto\" [diameter]=\"48\"></mat-spinner>\r\n\r\n\t\t<div class=\"reports-grid\" *ngIf=\"!isLoadingResult\">\r\n\t\t\t<app-ndf-report\r\n\t\t\t\t*ngFor=\"let config of reportConfig.items; trackBy: trackByFn\"\r\n\t\t\t\t[config]=\"config\"\r\n\t\t\t\t[data]=\"reports?.response\"\r\n\t\t\t\t[criteria]=\"filtersParams$ | async\"\r\n\t\t\t\t[class.col-small]=\"config?.layout?.width === 'small'\"\r\n\t\t\t\t[class.col-medium]=\"config?.layout?.width === 'medium'\"\r\n\t\t\t\t[class.col-half]=\"config?.layout?.width === 'half'\"\r\n\t\t\t\t[class.col-wide]=\"config?.layout?.width === 'wide'\"\r\n\t\t\t\t[class.col-extra-wide]=\"config?.layout?.width === 'extra'\"\r\n\t\t\t\t[class.col-full]=\"config?.layout?.width === 'full'\"\r\n\t\t\t\t[direction]=\"direction\"\r\n\t\t\t\tclass=\"reports-grid__item {{ config?.layout?.styleClass }}\"\r\n\t\t\t\t(onNavigate)=\"onNavigate($event)\"\r\n\t\t\t\t(onOpen)=\"openReportDetails($event, config)\"\r\n\t\t\t></app-ndf-report>\r\n\t\t</div>\r\n\t</div>\r\n\t<div\r\n\t\tclass=\"ndf-reports__details\"\r\n\t\t[class.opened]=\"showDetails\"\r\n\t\t[@slideInOut]=\"showDetails ? 'open' : 'closed'\"\r\n\t\t(@slideInOut.done)=\"onDetailsAnimationEnd($event)\"\r\n\t>\r\n\t\t<app-ndf-table\r\n\t\t\t*ngIf=\"reportDetails$ | async as report\"\r\n\t\t\t[config]=\"report.config\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\t[customCriteria]=\"filtersParams$ | async\"\r\n\t\t>\r\n\t\t\t<ng-template searchTableTemplate>\r\n\t\t\t\t<div class=\"ndf-reports__details__header flex gap-2\">\r\n\t\t\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t\t<button mat-stroked-button class=\"close-button\" (click)=\"closeDetailsPanel()\">\r\n\t\t\t\t\t\t<mat-icon> close</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<h3>\r\n\t\t\t\t\t{{ report.label | translate }}\r\n\t\t\t\t</h3>\r\n\t\t\t</ng-template>\r\n\t\t</app-ndf-table>\r\n\t</div>\r\n</div>\r\n", styles: [":host{padding-inline:var(--ndf-reports-inline-padding, 0);padding-block:var(--ndf-reports-block-padding, .5rem 0);height:100%;position:relative;display:flex;flex-direction:column;background-color:var(--ndf-reports-background, #fff);box-sizing:border-box;max-width:100%;flex:0 0 100%}:host:before,:host:after{box-sizing:border-box}:host[dir=ltr]{--ndf-reports-panel-translateX: -100%;--ndf-reports-details-translateX: 100%}.ndf-reports__header{background-color:var(--ndf-reports-background, #fff);flex-direction:var(--ndf-reports-header-direction, row);justify-content:var(--ndf-reports-header-justify, space-between);align-items:var(--ndf-reports-header-items, center);padding-inline:var(--ndf-reports-header-padding-inline, .5rem);padding-block:var(--ndf-reports-header-padding-block, 0 .5rem);position:var(--ndf-reports-header-position, sticky);top:0;z-index:1}.ndf-reports__header__actions{justify-content:var(--ndf-reports-actions-justify, flex-end)}.ndf-reports__header__custom-actions .toggle-button{min-width:0;padding:0 10px}.ndf-reports__container{--panel-width: var(--ndf-reports-panel-width, 18rem);position:relative;overflow:hidden;display:grid;transition:all .2s;max-width:100%;width:100%;height:var(--ndf-reports-height, calc(var(--ndf-fluid-height) - calc(var(--ndf-reports-block-padding, 1rem) * 2.5)));flex-grow:1;grid-gap:var(--ndf-table-container-gap, .5rem);gap:var(--ndf-table-container-gap, .5rem)}.ndf-reports__container.panel-opened{--ndf-details-margin: var(--panel-width);--ndf-reports-panel-translateX: 0;--ndf-reports-content-margin: var(--panel-width)}.ndf-reports__panel,.ndf-reports__content .ndf-reports__details{overflow:auto;transition:all .2s}.ndf-reports__panel{position:absolute;width:var(--panel-width);height:100%;transform:translate(var(--ndf-reports-panel-translateX, 100%));padding-inline:var(--ndf-reports-panel-inline-padding, .5rem);padding-block:var(--ndf-reports-panel-block-padding, .5rem);background:var(--ndf-reports-panel-background, #fff);z-index:1}.ndf-reports__content{flex-grow:1;padding-inline-start:var(--ndf-reports-content-margin, 0);overflow-y:var(--ndf-reports-content-overflow-y, auto);position:relative}.ndf-reports__details{position:absolute;inset-inline-end:0;width:calc(100% - var(--ndf-details-margin, 0px));height:100%;transform:translate(var(--ndf-reports-details-translateX, -100%));padding-inline:var(--ndf-reports-details-inline-padding, 0rem);flex-grow:1;padding-block:var(--ndf-reports-details-block-padding, 0rem);background:var(--ndf-reports-details-background, #fff);z-index:1;transition:all .2s}.reports-grid{--grid-columns: 6;--column-width: calc(100% / var(--grid-columns));display:grid;grid-gap:var(--reports-grid-gap, 1.5rem);gap:var(--reports-grid-gap, 1.5rem);grid-template-columns:var(--rg-columns, repeat(var(--grid-columns), 1fr));margin-block:var(--reports-grid-margin-block, 1.25rem 0);padding-inline:var(--reports-grid-padding-inline, .5rem)}.reports-grid__item{display:grid;grid-gap:.3rem;gap:.3rem;min-width:0;text-align:center;vertical-align:middle}@media screen{.reports-grid__item{grid-column:var(--col-span, span var(--grid-column, 2));grid-row:span var(--row-span, 1);grid-template-rows:subgrid}}.reports-grid__item.col-small{--col-span: var(--col-small-span, span 1)}.reports-grid__item.col-medium{--col-span: var(--col-medium-span, span 2)}.reports-grid__item.col-half{--col-span: var(--col-half-span, span 3)}.reports-grid__item.col-wide{--col-span: var(--col-wide-span, span 4)}.reports-grid__item.col-extra-wide{--col-span: var(--col-extra-wide-span, span 5)}.reports-grid__item.col-full{--col-span: 1 / -1}@media screen and (max-width: 1200px){.reports-grid{--col-span: span 1;--col-half-span: var(--col-span);--col-medium-span: var(--col-span);--col-small-span: var(--col-span);--col-extra-wide-span: 1 / -1;--col-wide-span: 1 / -1;--reports-grid-gap: 1rem;--grid-columns: 2}}@media screen and (max-width: 776px){.reports-grid{--col-half-span: var(--col-span);--col-medium-span: var(--col-span);--col-small-span: var(--col-span);--col-span: 1 / -1;--reports-grid-gap: 1rem;--grid-columns: 1}}@media print{.reports-grid{--reports-grid-gap: 11mm;--reports-grid-margin-top: 11mm;--rg-columns: repeat(2, 1fr)}}\n"], components: [{ type: i5.FiltersPanelComponent, selector: "app-filters-panel", inputs: ["aggregations", "fields", "activeQuery"], outputs: ["filterChanged"] }, { type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.EditorButtonComponent, selector: "app-editor-button", inputs: ["type", "key"] }, { type: i9.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i10.NdfReportComponent, selector: "app-ndf-report", inputs: ["config", "direction", "data", "criteria"], outputs: ["onNavigate", "onOpen"] }, { type: i11.NdfTableComponent, selector: "app-ndf-table", inputs: ["rows", "totalRecords", "autoCalculateHeight", "emptyMessage", "activeQuery", "configPath", "configTransformer", "tableKey", "jsonEditorEnabled", "config", "customCriteria", "searchTerm"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading", "onPage", "onInitialized", "onLoaded", "onQueryChange", "onSort"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.FluidHeightDirective, selector: "[ndfFluidHeight]", inputs: ["minHeight", "ndfFluidHeight", "subtractItems", "decrease", "delay", "cssVar", "calculate", "inlineStyle"], exportAs: ["ndfFluidHeight"] }, { type: i14.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i15.ScrollableDivDirective, selector: "[scrolled]", inputs: ["scrollTop"], outputs: ["scrolled"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i16.SearchTableTemplateDirective, selector: "[searchTableTemplate]" }], pipes: { "async": i12.AsyncPipe, "translate": i1.TranslatePipe }, animations: [slideAnimation] });
223
226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsComponent, decorators: [{
224
227
  type: Component,
225
228
  args: [{
@@ -235,6 +238,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
235
238
  }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i2.FiltersMapperService }, { type: i3.NdfReportsService }, { type: i3.ChartManagerService }, { type: i3.ReportTransformService }, { type: i0.ChangeDetectorRef }, { type: i2.FilterQueryService }, { type: i3.ReportsStateService }, { type: i4.Router }, { type: i0.NgZone }]; }, propDecorators: { fluidDirective: [{
236
239
  type: ViewChild,
237
240
  args: [FluidHeightDirective]
241
+ }], jsonEditorEnabled: [{
242
+ type: Input
243
+ }], reportsKey: [{
244
+ type: Input
238
245
  }], navigateRoute: [{
239
246
  type: Input
240
247
  }], config: [{
@@ -242,4 +249,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
242
249
  }], onQueryChange: [{
243
250
  type: Output
244
251
  }] } });
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBa0IsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakcsT0FBTyxFQUVOLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUlOLG9CQUFvQixFQUdwQixNQUFNLG9CQUFvQixDQUFDO0FBRzVCLE9BQU8sRUFB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Q0FBQzs7aUhBNU9XLG1CQUFtQjtxR0FBbkIsbUJBQW1CLCtSQUNwQixvQkFBb0IsdUVDbERoQyxxOEZBd0VBLDhrTUR6QmEsQ0FBQyxjQUFjLENBQUM7NEZBRWhCLG1CQUFtQjtrQkFWL0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixXQUFXLEVBQUUsOEJBQThCO29CQUMzQyxTQUFTLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQztvQkFDM0MsSUFBSSxFQUFFO3dCQUNMLEtBQUssRUFBRSxhQUFhO3dCQUNwQixPQUFPLEVBQUUsV0FBVztxQkFDcEI7b0JBQ0QsVUFBVSxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUM1Qjs4WEFFaUMsY0FBYztzQkFBOUMsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBMEN0QixhQUFhO3NCQUFyQixLQUFLO2dCQUVPLE1BQU07c0JBQWxCLEtBQUs7Z0JBWUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIEFuaW1hdGlvbkV2ZW50LCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQge1xyXG5cdENoYW5nZURldGVjdG9yUmVmLFxyXG5cdENvbXBvbmVudCxcclxuXHRFdmVudEVtaXR0ZXIsXHJcblx0SW5wdXQsXHJcblx0Tmdab25lLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0T3V0cHV0LFxyXG5cdFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgZm9ya0pvaW4sIGZyb21FdmVudCwgT2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgZmluYWxpemUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEFwaVJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IERlc3Ryb3lTdWJqZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQge1xyXG5cdEZpZWxkQ29uZmlnTW9kZWwsXHJcblx0RmlsdGVyUXVlcnlTZXJ2aWNlLFxyXG5cdEZpbHRlcnNNYXBwZXJTZXJ2aWNlLFxyXG5cdEZsdWlkSGVpZ2h0RGlyZWN0aXZlLFxyXG5cdEZvcm1RdWVyeU1vZGVsLFxyXG5cdE5kZlRhYmxlQ29uZmlnXHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vdGFibGVzJztcclxuaW1wb3J0IHsgQ3JpdGVyaWFNb2RlbCwgTmRmUmVwb3J0c0NvbmZpZywgUmVwb3J0Q29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBDaGFydE1hbmFnZXJTZXJ2aWNlLCBOZGZSZXBvcnRzU2VydmljZSwgUmVwb3J0c1N0YXRlU2VydmljZSwgUmVwb3J0VHJhbnNmb3JtU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgbWFwVG9OZGZUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XHJcblxyXG5leHBvcnQgY29uc3Qgc2xpZGVBbmltYXRpb24gPSB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG5cdHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgodmFyKC0tbmRmLXJlcG9ydHMtZGV0YWlscy10cmFuc2xhdGVYLCAtMTAwJSkpJyB9KSksXHJcblx0c3RhdGUoJ29wZW4nLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKSxcclxuXHR0cmFuc2l0aW9uKCdjbG9zZWQgPD0+IG9wZW4nLCBhbmltYXRlKCcyMDBtcyBlYXNlLW91dCcpKVxyXG5dKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLW5kZi1yZXBvcnRzJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL25kZi1yZXBvcnRzLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0aG9zdDoge1xyXG5cdFx0Y2xhc3M6ICduZGYtcmVwb3J0cycsXHJcblx0XHQnW2Rpcl0nOiAnZGlyZWN0aW9uJ1xyXG5cdH0sXHJcblx0YW5pbWF0aW9uczogW3NsaWRlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0c0NvbXBvbmVudCBleHRlbmRzIERlc3Ryb3lTdWJqZWN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cdEBWaWV3Q2hpbGQoRmx1aWRIZWlnaHREaXJlY3RpdmUpIGZsdWlkRGlyZWN0aXZlOiBGbHVpZEhlaWdodERpcmVjdGl2ZTtcclxuXHRfaXNIZWlnaHRVcGRhdGVkID0gZmFsc2U7XHJcblx0ZGlyZWN0aW9uOiBEaXJlY3Rpb24gPSAncnRsJztcclxuXHRpc1BhbmVsT3BlbmVkID0gZmFsc2U7XHJcblx0aXNMb2FkaW5nUmVzdWx0ID0gZmFsc2U7XHJcblx0cmVwb3J0c0RhdGEkOiBPYnNlcnZhYmxlPGFueT47XHJcblx0aXNFeHBhbmRlZCA9IGZhbHNlO1xyXG5cclxuXHRhY3RpdmVRdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZUZpbHRlcnNRdWVyeVN1YiA9IG5ldyBSZXBsYXlTdWJqZWN0PEZvcm1RdWVyeU1vZGVsPigpO1xyXG5cdHJlYWRvbmx5IGFjdGl2ZUZpbHRlcnNRdWVyeSQgPSB0aGlzLl9hY3RpdmVGaWx0ZXJzUXVlcnlTdWIuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpZ1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5kZlJlcG9ydHNDb25maWc+KG51bGwpO1xyXG5cdHJlYWRvbmx5IHJlcG9ydENvbmZpZyQgPSB0aGlzLl9jb25maWdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuXHRwcml2YXRlIHJlYWRvbmx5IF9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDcml0ZXJpYU1vZGVsPihudWxsKTtcclxuXHRyZWFkb25seSBmaWx0ZXJzUGFyYW1zJCA9IHRoaXMuX2ZpbHRlcnNDcml0ZXJpYVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgX3JlcG9ydERldGFpbHNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7XHJcblx0XHRsYWJlbD86IHN0cmluZztcclxuXHRcdGNvbmZpZzogTmRmVGFibGVDb25maWc7XHJcblx0fT4obnVsbCk7XHJcblx0cmVwb3J0RGV0YWlscyQgPSB0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuXHJcblx0Z2V0IHNob3dEZXRhaWxzKCk6IGJvb2xlYW4ge1xyXG5cdFx0cmV0dXJuICEhdGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QuZ2V0VmFsdWUoKTtcclxuXHR9XHJcblxyXG5cdGlzRGV0YWlsc09wZW5lZCA9IGZhbHNlO1xyXG5cclxuXHRnZXQgY29uZmlnKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2NvbmZpZ1N1YmplY3QuZ2V0VmFsdWUoKTtcclxuXHR9XHJcblxyXG5cdGdldCBmaWx0ZXJzQ29uZmlnKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuY29uZmlnPy5maWx0ZXJzO1xyXG5cdH1cclxuXHJcblx0Z2V0IHJlcG9ydENvbmZpZygpIHtcclxuXHRcdHJldHVybiB0aGlzLmNvbmZpZz8ucmVwb3J0cztcclxuXHR9XHJcblxyXG5cdEBJbnB1dCgpIG5hdmlnYXRlUm91dGU6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdEBJbnB1dCgpIHNldCBjb25maWcodmFsdWU6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdHRoaXMuX2NvbmZpZ1N1YmplY3QubmV4dCh2YWx1ZSk7XHJcblx0XHRpZiAodmFsdWU/LmFjdGl2ZVF1ZXJ5KSB7XHJcblx0XHRcdHRoaXMuX3VwZGF0ZUFjdGl2ZVF1ZXJ5KHZhbHVlPy5hY3RpdmVRdWVyeSk7XHJcblxyXG5cdFx0XHR0aGlzLl9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0Lm5leHQodGhpcy5fcHJlcGFyZU1hcHBlZFF1ZXJ5KHZhbHVlPy5hY3RpdmVRdWVyeSwgdGhpcy5maWx0ZXJzQ29uZmlnLm1vZGUpKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9IGZhbHNlO1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQobnVsbCk7XHJcblx0fVxyXG5cclxuXHRAT3V0cHV0KCkgb25RdWVyeUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblx0dHJhY2tCeUZuID0gKF86IG51bWJlciwgcmVwb3J0OiBSZXBvcnRDb25maWdNb2RlbCkgPT4ge1xyXG5cdFx0cmV0dXJuIHJlcG9ydC5pZDtcclxuXHR9O1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgX3RyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9maWx0ZXJzTWFwcGVyOiBGaWx0ZXJzTWFwcGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgX25kZlJlcG9ydHNTZXJ2aWNlOiBOZGZSZXBvcnRzU2VydmljZSxcclxuXHRcdHByaXZhdGUgX2NoYXJ0SGVscGVyU2VydmljZTogQ2hhcnRNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgX3RyYW5zZm9ybVNlcnZpY2U6IFJlcG9ydFRyYW5zZm9ybVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG5cdFx0cHJpdmF0ZSBfZmlsdGVyUXVlcnlTZXJ2aWNlOiBGaWx0ZXJRdWVyeVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9zdGF0ZVNlcnZpY2U6IFJlcG9ydHNTdGF0ZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuXHRcdHByaXZhdGUgX25nWm9uZTogTmdab25lXHJcblx0KSB7XHJcblx0XHRzdXBlcigpO1xyXG5cdFx0dGhpcy5fdHJhbnNsYXRlU2VydmljZS5vbkxhbmdDaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdHRoaXMuZGlyZWN0aW9uID0gcmVzLmxhbmcgPT09ICdhcicgPyAncnRsJyA6ICdsdHInO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMucmVwb3J0c0RhdGEkID0gdGhpcy5fcHJlcGFyZVJlcG9ydHMoKTtcclxuXHRcdHRoaXMuX2hhbmRsZUtleWJvYXJkRXZlbnQoKTtcclxuXHR9XHJcblxyXG5cdG9uTmF2aWdhdGUoZGF0YTogeyByZXBvcnQ6IFJlY29yZDxzdHJpbmcsIGFueT47IGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4gfSkge1xyXG5cdFx0Y29uc3QgcmVwb3J0ID0gZGF0YT8ucmVwb3J0O1xyXG5cdFx0Y29uc3QgX2N1c3RvbVJvdXRlID0gcmVwb3J0Lm5hdmlnYXRlPy5yb3V0ZSB8fCBbXTtcclxuXHRcdC8vIGxldCByb3V0ZSA9IFtSTVNfQkFTRS5yZXBsYWNlKC9cXC8kLywgJycpXTtcclxuXHRcdGxldCByb3V0ZSA9IHRoaXMubmF2aWdhdGVSb3V0ZTtcclxuXHRcdGlmICghIV9jdXN0b21Sb3V0ZS5sZW5ndGgpIHtcclxuXHRcdFx0cm91dGUgPSBbLi4ucm91dGUsIC4uLl9jdXN0b21Sb3V0ZV07XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgcXVlcnlQYXJhbXMgPSB7fTtcclxuXHRcdGlmIChyZXBvcnQubmF2aWdhdGU/LmluY2x1ZGVQYXJhbXMgPz8gdHJ1ZSkge1xyXG5cdFx0XHRpZiAoT2JqZWN0LmtleXModGhpcy5hY3RpdmVRdWVyeSB8fCB7fSkubGVuZ3RoKSB7XHJcblx0XHRcdFx0Y29uc3QgZGF0YSA9IHRoaXMuX2ZpbHRlclF1ZXJ5U2VydmljZS5lbmNvZGVRdWVyeSh0aGlzLmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0XHRpZiAoZGF0YSkge1xyXG5cdFx0XHRcdFx0cXVlcnlQYXJhbXNbJ2ZpbHRlcnMnXSA9IGRhdGE7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5fcm91dGVyLm5hdmlnYXRlKHJvdXRlLCB7IHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyB9KS50aGVuKCgpID0+IHt9KTtcclxuXHR9XHJcblxyXG5cdHRvZ2dsZVBhbmVsKCkge1xyXG5cdFx0dGhpcy5pc1BhbmVsT3BlbmVkID0gIXRoaXMuaXNQYW5lbE9wZW5lZDtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLl9jaGFydEhlbHBlclNlcnZpY2UucmVzaXplQ2hhcnRzKCk7XHJcblx0XHR9LCA1MDApO1xyXG5cdH1cclxuXHJcblx0ZmlsdGVyQ2hhbmdlZChjcml0ZXJpYTogUmVjb3JkPGFueSwgYW55Pikge1xyXG5cdFx0aWYgKF8uaXNFcXVhbCh0aGlzLmFjdGl2ZVF1ZXJ5LCBjcml0ZXJpYSkpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5vblF1ZXJ5Q2hhbmdlLmVtaXQoY3JpdGVyaWEpO1xyXG5cdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkoY3JpdGVyaWEpO1xyXG5cdFx0Y29uc3QgX2RhdGUgPSB0aGlzLl9wcmVwYXJlTWFwcGVkUXVlcnkoY3JpdGVyaWEsIHRoaXMuZmlsdGVyc0NvbmZpZy5tb2RlKTtcclxuXHRcdHRoaXMuX2ZpbHRlcnNDcml0ZXJpYVN1YmplY3QubmV4dChfZGF0ZSk7XHJcblx0fVxyXG5cclxuXHRvbkNvbnRlbnRTY3JvbGwoaXNTY3JvbGxpbmc6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHRcdHRoaXMuX3N0YXRlU2VydmljZS5vbkNvbnRlbnRTY3JvbGwoaXNTY3JvbGxpbmcpO1xyXG5cclxuXHRcdGlmIChpc1Njcm9sbGluZyAmJiAhdGhpcy5faXNIZWlnaHRVcGRhdGVkKSB7XHJcblx0XHRcdHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCA9IHRydWU7XHJcblx0XHRcdHRoaXMuZmx1aWREaXJlY3RpdmUuc2NoZWR1bGVTZXRIZWlnaHQoMTAwKTtcclxuXHRcdH0gZWxzZSBpZiAoIWlzU2Nyb2xsaW5nICYmIHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCkge1xyXG5cdFx0XHR0aGlzLl9pc0hlaWdodFVwZGF0ZWQgPSBmYWxzZTtcclxuXHRcdFx0dGhpcy5mbHVpZERpcmVjdGl2ZS5zY2hlZHVsZVNldEhlaWdodCgxMDApO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b3BlblJlcG9ydERldGFpbHMoXzogQ3JpdGVyaWFNb2RlbCwgckNvbmZpZzogUmVwb3J0Q29uZmlnTW9kZWwpIHtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQoe1xyXG5cdFx0XHRjb25maWc6IG1hcFRvTmRmVGFibGVDb25maWcodGhpcy5jb25maWcsIHJDb25maWcuZGV0YWlscyksXHJcblx0XHRcdGxhYmVsOiByQ29uZmlnLmxhYmVsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGNsb3NlRGV0YWlsc1BhbmVsKCkge1xyXG5cdFx0dGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QubmV4dChudWxsKTtcclxuXHR9XHJcblxyXG5cdG9uRGV0YWlsc0FuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcclxuXHRcdHRoaXMuaXNEZXRhaWxzT3BlbmVkID0gZXZlbnQudG9TdGF0ZSA9PT0gJ29wZW4nO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHRzdXBlci5uZ09uRGVzdHJveSgpO1xyXG5cdFx0dGhpcy5fY2hhcnRIZWxwZXJTZXJ2aWNlLmRlc3Ryb3lBbGwoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgcHJlcGFyZUNyaXRlcmlhUGF5bG9hZChjcml0ZXJpYTogUmVjb3JkPGFueSwgYW55PiwgZmllbGRzOiBGaWVsZENvbmZpZ01vZGVsW10gPSB0aGlzLmZpbHRlcnNDb25maWcuZmllbGRzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fZmlsdGVyc01hcHBlci5wcmVwYXJlUGF5bG9hZChmaWVsZHMsIGNyaXRlcmlhKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3N0cmluZ2lmeVZhbHVlcyhjcml0ZXJpYTogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5lbnRyaWVzKGNyaXRlcmlhKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XHJcblx0XHRcdGFjY1trZXldID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgOiB2YWx1ZTtcclxuXHRcdFx0cmV0dXJuIGFjYztcclxuXHRcdH0sIHt9KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3ByZXBhcmVSZXBvcnRzKCkge1xyXG5cdFx0dGhpcy5pc0xvYWRpbmdSZXN1bHQgPSB0cnVlO1xyXG5cdFx0cmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xyXG5cdFx0XHR0aGlzLmZpbHRlcnNQYXJhbXMkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IF8uaXNFcXVhbChhLCBiKSkpLFxyXG5cdFx0XHR0aGlzLnJlcG9ydENvbmZpZyRcclxuXHRcdF0pLnBpcGUoXHJcblx0XHRcdHRhcCgoKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5pc0xvYWRpbmdSZXN1bHQgPSB0cnVlO1xyXG5cdFx0XHRcdHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdH0pLFxyXG5cdFx0XHRzd2l0Y2hNYXAoKFtjcml0ZXJpYSwgY29uZmlnXSkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHJlcXVlc3QgPSBjb25maWc/LnJlcXVlc3Q7XHJcblx0XHRcdFx0aWYgKCFyZXF1ZXN0KSB7XHJcblx0XHRcdFx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGxldCBfcGF5bG9hZCA9IGNyaXRlcmlhO1xyXG5cdFx0XHRcdGlmICghY3JpdGVyaWEgJiYgISFjb25maWcuYWN0aXZlUXVlcnkpIHtcclxuXHRcdFx0XHRcdF9wYXlsb2FkID0gdGhpcy5wcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNvbmZpZy5hY3RpdmVRdWVyeSk7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRjb25zdCBkYXRhJCA9IHRoaXMuX25kZlJlcG9ydHNTZXJ2aWNlLmdldERhdGEocmVxdWVzdCwgX3BheWxvYWQpLnBpcGUoXHJcblx0XHRcdFx0XHRzd2l0Y2hNYXAoKHJlcG9ydHM6IEFwaVJlc3BvbnNlTW9kZWwpID0+IHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMuX3RyYW5zZm9ybVNlcnZpY2UucHJlcGFyZURhdGEocmVwb3J0cywgY29uZmlnKTtcclxuXHRcdFx0XHRcdH0pLFxyXG5cdFx0XHRcdFx0ZmluYWxpemUoKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHR0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0XHRyZXR1cm4gZm9ya0pvaW4oW29mKGNvbmZpZyksIGRhdGEkXSk7XHJcblx0XHRcdH0pLFxyXG5cdFx0XHRtYXAoKFtjb25maWcsIHJlc3BvbnNlXSkgPT4ge1xyXG5cdFx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0XHRjb25maWcsXHJcblx0XHRcdFx0XHRyZXNwb25zZVxyXG5cdFx0XHRcdH07XHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfaGFuZGxlS2V5Ym9hcmRFdmVudCgpIHtcclxuXHRcdHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcblx0XHRcdGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pihkb2N1bWVudCwgJ2tleWRvd24nKVxyXG5cdFx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdFx0ZmlsdGVyKChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gZXZlbnQua2V5ID09PSAnRXNjYXBlJyAmJiB0aGlzLnNob3dEZXRhaWxzKSxcclxuXHRcdFx0XHRcdHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxyXG5cdFx0XHRcdClcclxuXHRcdFx0XHQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuY2xvc2VEZXRhaWxzUGFuZWwoKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfcHJlcGFyZU1hcHBlZFF1ZXJ5KGNyaXRlcmlhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBtb2RlOiAncGF5bG9hZCcgfCAncGFyYW1zJykge1xyXG5cdFx0cmV0dXJuIG1vZGUgPT0gJ3BheWxvYWQnXHJcblx0XHRcdD8gdGhpcy5wcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNyaXRlcmlhKVxyXG5cdFx0XHQ6IHtcclxuXHRcdFx0XHRcdHBhcmFtczogdGhpcy5fc3RyaW5naWZ5VmFsdWVzKGNyaXRlcmlhKVxyXG5cdFx0XHRcdH07XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF91cGRhdGVBY3RpdmVRdWVyeShxdWVyeTogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG5cdFx0dGhpcy5hY3RpdmVRdWVyeSA9IHF1ZXJ5O1xyXG5cdFx0dGhpcy5fYWN0aXZlRmlsdGVyc1F1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRxdWVyeSxcclxuXHRcdFx0ZW1pdEV2ZW50OiBmYWxzZVxyXG5cdFx0fSk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXZcclxuXHQqbmdJZj1cInJlcG9ydHNEYXRhJCB8IGFzeW5jIGFzIHJlcG9ydHNcIlxyXG5cdFtjbGFzcy5wYW5lbC1vcGVuZWRdPVwiaXNQYW5lbE9wZW5lZCAmJiBmaWx0ZXJzQ29uZmlnXCJcclxuXHRbZGlyXT1cImRpcmVjdGlvblwiXHJcblx0Y2xhc3M9XCJuZGYtcmVwb3J0c19fY29udGFpbmVyXCJcclxuXHRuZGZGbHVpZEhlaWdodFxyXG4+XHJcblx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19wYW5lbFwiICpuZ0lmPVwiISFmaWx0ZXJzQ29uZmlnPy5maWVsZHM/Lmxlbmd0aFwiPlxyXG5cdFx0PGFwcC1maWx0ZXJzLXBhbmVsXHJcblx0XHRcdFtmaWVsZHNdPVwiZmlsdGVyc0NvbmZpZz8uZmllbGRzXCJcclxuXHRcdFx0W2FnZ3JlZ2F0aW9uc109XCJyZXBvcnRzPy5yZXNwb25zZT8uYWdncmVnYXRpb25zXCJcclxuXHRcdFx0KGZpbHRlckNoYW5nZWQpPVwiZmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuXHRcdFx0W2FjdGl2ZVF1ZXJ5XT1cImFjdGl2ZUZpbHRlcnNRdWVyeSQgfCBhc3luY1wiXHJcblx0XHRcdGNsYXNzPVwibmRmLXJlcG9ydHNfX2ZpbHRlcnNcIlxyXG5cdFx0PjwvYXBwLWZpbHRlcnMtcGFuZWw+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fY29udGVudCBwLTQgcHQtMFwiIChzY3JvbGxlZCk9XCJvbkNvbnRlbnRTY3JvbGwoJGV2ZW50KVwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19oZWFkZXIgZmxleCBwdC00XCI+XHJcblx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiIChjbGljayk9XCJ0b2dnbGVQYW5lbCgpXCI+XHJcblx0XHRcdFx0PG1hdC1pY29uPiBmaWx0ZXJfYWx0PC9tYXQtaWNvbj5cclxuXHRcdFx0PC9idXR0b24+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxtYXQtc3Bpbm5lciAqbmdJZj1cImlzTG9hZGluZ1Jlc3VsdFwiIGNsYXNzPVwibXQtNSBteC1hdXRvXCIgW2RpYW1ldGVyXT1cIjQ4XCI+PC9tYXQtc3Bpbm5lcj5cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwicmVwb3J0cy1ncmlkXCIgKm5nSWY9XCIhaXNMb2FkaW5nUmVzdWx0XCI+XHJcblx0XHRcdDxhcHAtbmRmLXJlcG9ydFxyXG5cdFx0XHRcdCpuZ0Zvcj1cImxldCBjb25maWcgb2YgcmVwb3J0Q29uZmlnLml0ZW1zOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG5cdFx0XHRcdFtjb25maWddPVwiY29uZmlnXCJcclxuXHRcdFx0XHRbZGF0YV09XCJyZXBvcnRzPy5yZXNwb25zZVwiXHJcblx0XHRcdFx0W2NyaXRlcmlhXT1cImZpbHRlcnNQYXJhbXMkIHwgYXN5bmNcIlxyXG5cdFx0XHRcdFtjbGFzcy5jb2wtc21hbGxdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoID09PSAnc21hbGwnXCJcclxuXHRcdFx0XHRbY2xhc3MuY29sLW1lZGl1bV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPT09ICdtZWRpdW0nXCJcclxuXHRcdFx0XHRbY2xhc3MuY29sLWhhbGZdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoID09PSAnaGFsZidcIlxyXG5cdFx0XHRcdFtjbGFzcy5jb2wtd2lkZV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPT09ICd3aWRlJ1wiXHJcblx0XHRcdFx0W2NsYXNzLmNvbC1leHRyYS13aWRlXT1cImNvbmZpZz8ubGF5b3V0Py53aWR0aCA9PT0gJ2V4dHJhJ1wiXHJcblx0XHRcdFx0W2NsYXNzLmNvbC1mdWxsXT1cImNvbmZpZz8ubGF5b3V0Py53aWR0aCA9PT0gJ2Z1bGwnXCJcclxuXHRcdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdFx0Y2xhc3M9XCJyZXBvcnRzLWdyaWRfX2l0ZW0ge3sgY29uZmlnPy5sYXlvdXQ/LnN0eWxlQ2xhc3MgfX1cIlxyXG5cdFx0XHRcdChvbk5hdmlnYXRlKT1cIm9uTmF2aWdhdGUoJGV2ZW50KVwiXHJcblx0XHRcdFx0KG9uT3Blbik9XCJvcGVuUmVwb3J0RGV0YWlscygkZXZlbnQsIGNvbmZpZylcIlxyXG5cdFx0XHQ+PC9hcHAtbmRmLXJlcG9ydD5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXZcclxuXHRcdGNsYXNzPVwibmRmLXJlcG9ydHNfX2RldGFpbHNcIlxyXG5cdFx0W2NsYXNzLm9wZW5lZF09XCJzaG93RGV0YWlsc1wiXHJcblx0XHRbQHNsaWRlSW5PdXRdPVwic2hvd0RldGFpbHMgPyAnb3BlbicgOiAnY2xvc2VkJ1wiXHJcblx0XHQoQHNsaWRlSW5PdXQuZG9uZSk9XCJvbkRldGFpbHNBbmltYXRpb25FbmQoJGV2ZW50KVwiXHJcblx0PlxyXG5cdFx0PGFwcC1uZGYtdGFibGVcclxuXHRcdFx0Km5nSWY9XCJyZXBvcnREZXRhaWxzJCB8IGFzeW5jIGFzIHJlcG9ydFwiXHJcblx0XHRcdFtjb25maWddPVwicmVwb3J0LmNvbmZpZ1wiXHJcblx0XHRcdFthY3RpdmVRdWVyeV09XCJhY3RpdmVGaWx0ZXJzUXVlcnkkIHwgYXN5bmNcIlxyXG5cdFx0XHRbY3VzdG9tQ3JpdGVyaWFdPVwiZmlsdGVyc1BhcmFtcyQgfCBhc3luY1wiXHJcblx0XHQ+XHJcblx0XHRcdDxuZy10ZW1wbGF0ZSBzZWFyY2hUYWJsZVRlbXBsYXRlPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fZGV0YWlsc19faGVhZGVyIGZsZXggZ2FwLTJcIj5cclxuXHRcdFx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiIChjbGljayk9XCJ0b2dnbGVQYW5lbCgpXCI+XHJcblx0XHRcdFx0XHRcdDxtYXQtaWNvbj4gZmlsdGVyX2FsdDwvbWF0LWljb24+XHJcblx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlRGV0YWlsc1BhbmVsKClcIj5cclxuXHRcdFx0XHRcdFx0PG1hdC1pY29uPiBjbG9zZTwvbWF0LWljb24+XHJcblx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8aDM+XHJcblx0XHRcdFx0XHR7eyByZXBvcnQubGFiZWwgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHQ8L2gzPlxyXG5cdFx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdFx0PC9hcHAtbmRmLXRhYmxlPlxyXG5cdDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBa0IsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakcsT0FBTyxFQUVOLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFZeEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFD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c0JBQXNCLENBQUMsSUFBSSxDQUFDO1lBQ2hDLEtBQUs7WUFDTCxTQUFTLEVBQUUsS0FBSztTQUNoQixDQUFDLENBQUM7SUFDSixDQUFDOztpSEFoUFcsbUJBQW1CO3FHQUFuQixtQkFBbUIsaVdBQ3BCLG9CQUFvQix1RUNsRGhDLHNuR0E2RUEsMHNNRDlCYSxDQUFDLGNBQWMsQ0FBQzs0RkFFaEIsbUJBQW1CO2tCQVYvQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxJQUFJLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLE9BQU8sRUFBRSxXQUFXO3FCQUNwQjtvQkFDRCxVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzVCOzhYQUVpQyxjQUFjO3NCQUE5QyxTQUFTO3VCQUFDLG9CQUFvQjtnQkEwQ3RCLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRU8sTUFBTTtzQkFBbEIsS0FBSztnQkFZSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XHJcbmltcG9ydCB7XHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcblx0Q29tcG9uZW50LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHROZ1pvbmUsXHJcblx0T25EZXN0cm95LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgRGVzdHJveVN1YmplY3QsIEZsdWlkSGVpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmb3JrSm9pbiwgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBmaW5hbGl6ZSwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQXBpUmVzcG9uc2VNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHtcclxuXHRGaWVsZENvbmZpZ01vZGVsLFxyXG5cdEZpbHRlclF1ZXJ5U2VydmljZSxcclxuXHRGaWx0ZXJzTWFwcGVyU2VydmljZSxcclxuXHRGb3JtUXVlcnlNb2RlbCxcclxuXHROZGZUYWJsZUNvbmZpZ1xyXG59IGZyb20gJy4uLy4uLy4uLy4uL3RhYmxlcyc7XHJcbmltcG9ydCB7IENyaXRlcmlhTW9kZWwsIE5kZlJlcG9ydHNDb25maWcsIFJlcG9ydENvbmZpZ01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgQ2hhcnRNYW5hZ2VyU2VydmljZSwgTmRmUmVwb3J0c1NlcnZpY2UsIFJlcG9ydHNTdGF0ZVNlcnZpY2UsIFJlcG9ydFRyYW5zZm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IG1hcFRvTmRmVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMnO1xyXG5pbXBvcnQgeyBOREZfRURJVE9SX1RZUEUgfSBmcm9tICcuLi8uLi8uLi8uLi9uZGYtY29uZmlnLWVkaXRvci9jb25zdGFudHMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IHNsaWRlQW5pbWF0aW9uID0gdHJpZ2dlcignc2xpZGVJbk91dCcsIFtcclxuXHRzdGF0ZSgnY2xvc2VkJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHZhcigtLW5kZi1yZXBvcnRzLWRldGFpbHMtdHJhbnNsYXRlWCwgLTEwMCUpKScgfSkpLFxyXG5cdHN0YXRlKCdvcGVuJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSksXHJcblx0dHJhbnNpdGlvbignY2xvc2VkIDw9PiBvcGVuJywgYW5pbWF0ZSgnMjAwbXMgZWFzZS1vdXQnKSlcclxuXSk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1uZGYtcmVwb3J0cycsXHJcblx0dGVtcGxhdGVVcmw6ICcuL25kZi1yZXBvcnRzLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9uZGYtcmVwb3J0cy5jb21wb25lbnQuc2NzcyddLFxyXG5cdGhvc3Q6IHtcclxuXHRcdGNsYXNzOiAnbmRmLXJlcG9ydHMnLFxyXG5cdFx0J1tkaXJdJzogJ2RpcmVjdGlvbidcclxuXHR9LFxyXG5cdGFuaW1hdGlvbnM6IFtzbGlkZUFuaW1hdGlvbl1cclxufSlcclxuZXhwb3J0IGNsYXNzIE5kZlJlcG9ydHNDb21wb25lbnQgZXh0ZW5kcyBEZXN0cm95U3ViamVjdCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHRAVmlld0NoaWxkKEZsdWlkSGVpZ2h0RGlyZWN0aXZlKSBmbHVpZERpcmVjdGl2ZTogRmx1aWRIZWlnaHREaXJlY3RpdmU7XHJcblx0X2lzSGVpZ2h0VXBkYXRlZCA9IGZhbHNlO1xyXG5cdGRpcmVjdGlvbjogRGlyZWN0aW9uID0gJ3J0bCc7XHJcblx0aXNQYW5lbE9wZW5lZCA9IGZhbHNlO1xyXG5cdGlzTG9hZGluZ1Jlc3VsdCA9IGZhbHNlO1xyXG5cdHJlcG9ydHNEYXRhJDogT2JzZXJ2YWJsZTxhbnk+O1xyXG5cdGlzRXhwYW5kZWQgPSBmYWxzZTtcclxuXHJcblx0YWN0aXZlUXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuXHRwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmVGaWx0ZXJzUXVlcnlTdWIgPSBuZXcgUmVwbGF5U3ViamVjdDxGb3JtUXVlcnlNb2RlbD4oKTtcclxuXHRyZWFkb25seSBhY3RpdmVGaWx0ZXJzUXVlcnkkID0gdGhpcy5fYWN0aXZlRmlsdGVyc1F1ZXJ5U3ViLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuXHRwcml2YXRlIHJlYWRvbmx5IF9jb25maWdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZGZSZXBvcnRzQ29uZmlnPihudWxsKTtcclxuXHRyZWFkb25seSByZXBvcnRDb25maWckID0gdGhpcy5fY29uZmlnU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuXHJcblx0cHJpdmF0ZSByZWFkb25seSBfZmlsdGVyc0NyaXRlcmlhU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q3JpdGVyaWFNb2RlbD4obnVsbCk7XHJcblx0cmVhZG9ubHkgZmlsdGVyc1BhcmFtcyQgPSB0aGlzLl9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuXHRwcml2YXRlIF9yZXBvcnREZXRhaWxzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8e1xyXG5cdFx0bGFiZWw/OiBzdHJpbmc7XHJcblx0XHRjb25maWc6IE5kZlRhYmxlQ29uZmlnO1xyXG5cdH0+KG51bGwpO1xyXG5cdHJlcG9ydERldGFpbHMkID0gdGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdGdldCBzaG93RGV0YWlscygpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiAhIXRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0LmdldFZhbHVlKCk7XHJcblx0fVxyXG5cclxuXHRpc0RldGFpbHNPcGVuZWQgPSBmYWxzZTtcclxuXHJcblx0Z2V0IGNvbmZpZygpIHtcclxuXHRcdHJldHVybiB0aGlzLl9jb25maWdTdWJqZWN0LmdldFZhbHVlKCk7XHJcblx0fVxyXG5cclxuXHRnZXQgZmlsdGVyc0NvbmZpZygpIHtcclxuXHRcdHJldHVybiB0aGlzLmNvbmZpZz8uZmlsdGVycztcclxuXHR9XHJcblxyXG5cdGdldCByZXBvcnRDb25maWcoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5jb25maWc/LnJlcG9ydHM7XHJcblx0fVxyXG5cclxuXHRASW5wdXQoKSBqc29uRWRpdG9yRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIHJlcG9ydHNLZXk6IHN0cmluZztcclxuXHRlZGl0b3JUeXBlID0gTkRGX0VESVRPUl9UWVBFLlJFUE9SVFM7XHJcblxyXG5cdEBJbnB1dCgpIG5hdmlnYXRlUm91dGU6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdEBJbnB1dCgpIHNldCBjb25maWcodmFsdWU6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdHRoaXMuX2NvbmZpZ1N1YmplY3QubmV4dCh2YWx1ZSk7XHJcblx0XHRpZiAodmFsdWU/LmFjdGl2ZVF1ZXJ5KSB7XHJcblx0XHRcdHRoaXMuX3VwZGF0ZUFjdGl2ZVF1ZXJ5KHZhbHVlPy5hY3RpdmVRdWVyeSk7XHJcblxyXG5cdFx0XHR0aGlzLl9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0Lm5leHQodGhpcy5fcHJlcGFyZU1hcHBlZFF1ZXJ5KHZhbHVlPy5hY3RpdmVRdWVyeSwgdGhpcy5maWx0ZXJzQ29uZmlnLm1vZGUpKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9IGZhbHNlO1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQobnVsbCk7XHJcblx0fVxyXG5cclxuXHRAT3V0cHV0KCkgb25RdWVyeUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblx0dHJhY2tCeUZuID0gKF86IG51bWJlciwgcmVwb3J0OiBSZXBvcnRDb25maWdNb2RlbCkgPT4ge1xyXG5cdFx0cmV0dXJuIHJlcG9ydC5pZDtcclxuXHR9O1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgX3RyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9maWx0ZXJzTWFwcGVyOiBGaWx0ZXJzTWFwcGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgX25kZlJlcG9ydHNTZXJ2aWNlOiBOZGZSZXBvcnRzU2VydmljZSxcclxuXHRcdHByaXZhdGUgX2NoYXJ0SGVscGVyU2VydmljZTogQ2hhcnRNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgX3RyYW5zZm9ybVNlcnZpY2U6IFJlcG9ydFRyYW5zZm9ybVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG5cdFx0cHJpdmF0ZSBfZmlsdGVyUXVlcnlTZXJ2aWNlOiBGaWx0ZXJRdWVyeVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9zdGF0ZVNlcnZpY2U6IFJlcG9ydHNTdGF0ZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuXHRcdHByaXZhdGUgX25nWm9uZTogTmdab25lXHJcblx0KSB7XHJcblx0XHRzdXBlcigpO1xyXG5cdFx0dGhpcy5fdHJhbnNsYXRlU2VydmljZS5vbkxhbmdDaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdHRoaXMuZGlyZWN0aW9uID0gcmVzLmxhbmcgPT09ICdhcicgPyAncnRsJyA6ICdsdHInO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMucmVwb3J0c0RhdGEkID0gdGhpcy5fcHJlcGFyZVJlcG9ydHMoKTtcclxuXHRcdHRoaXMuX2hhbmRsZUtleWJvYXJkRXZlbnQoKTtcclxuXHR9XHJcblxyXG5cdG9uTmF2aWdhdGUoZGF0YTogeyByZXBvcnQ6IFJlY29yZDxzdHJpbmcsIGFueT47IGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4gfSkge1xyXG5cdFx0Y29uc3QgcmVwb3J0ID0gZGF0YT8ucmVwb3J0O1xyXG5cdFx0Y29uc3QgX2N1c3RvbVJvdXRlID0gcmVwb3J0Lm5hdmlnYXRlPy5yb3V0ZSB8fCBbXTtcclxuXHRcdC8vIGxldCByb3V0ZSA9IFtSTVNfQkFTRS5yZXBsYWNlKC9cXC8kLywgJycpXTtcclxuXHRcdGxldCByb3V0ZSA9IHRoaXMubmF2aWdhdGVSb3V0ZTtcclxuXHRcdGlmICghIV9jdXN0b21Sb3V0ZS5sZW5ndGgpIHtcclxuXHRcdFx0cm91dGUgPSBbLi4ucm91dGUsIC4uLl9jdXN0b21Sb3V0ZV07XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgcXVlcnlQYXJhbXMgPSB7fTtcclxuXHRcdGlmIChyZXBvcnQubmF2aWdhdGU/LmluY2x1ZGVQYXJhbXMgPz8gdHJ1ZSkge1xyXG5cdFx0XHRpZiAoT2JqZWN0LmtleXModGhpcy5hY3RpdmVRdWVyeSB8fCB7fSkubGVuZ3RoKSB7XHJcblx0XHRcdFx0Y29uc3QgZGF0YSA9IHRoaXMuX2ZpbHRlclF1ZXJ5U2VydmljZS5lbmNvZGVRdWVyeSh0aGlzLmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0XHRpZiAoZGF0YSkge1xyXG5cdFx0XHRcdFx0cXVlcnlQYXJhbXNbJ2ZpbHRlcnMnXSA9IGRhdGE7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5fcm91dGVyLm5hdmlnYXRlKHJvdXRlLCB7IHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyB9KS50aGVuKCgpID0+IHt9KTtcclxuXHR9XHJcblxyXG5cdHRvZ2dsZVBhbmVsKCkge1xyXG5cdFx0dGhpcy5pc1BhbmVsT3BlbmVkID0gIXRoaXMuaXNQYW5lbE9wZW5lZDtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLl9jaGFydEhlbHBlclNlcnZpY2UucmVzaXplQ2hhcnRzKCk7XHJcblx0XHR9LCA1MDApO1xyXG5cdH1cclxuXHJcblx0ZmlsdGVyQ2hhbmdlZChjcml0ZXJpYTogUmVjb3JkPGFueSwgYW55Pikge1xyXG5cdFx0aWYgKF8uaXNFcXVhbCh0aGlzLmFjdGl2ZVF1ZXJ5LCBjcml0ZXJpYSkpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5vblF1ZXJ5Q2hhbmdlLmVtaXQoY3JpdGVyaWEpO1xyXG5cdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkoY3JpdGVyaWEpO1xyXG5cdFx0Y29uc3QgX2RhdGUgPSB0aGlzLl9wcmVwYXJlTWFwcGVkUXVlcnkoY3JpdGVyaWEsIHRoaXMuZmlsdGVyc0NvbmZpZy5tb2RlKTtcclxuXHRcdHRoaXMuX2ZpbHRlcnNDcml0ZXJpYVN1YmplY3QubmV4dChfZGF0ZSk7XHJcblx0fVxyXG5cclxuXHRvbkNvbnRlbnRTY3JvbGwoaXNTY3JvbGxpbmc6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHRcdHRoaXMuX3N0YXRlU2VydmljZS5vbkNvbnRlbnRTY3JvbGwoaXNTY3JvbGxpbmcpO1xyXG5cclxuXHRcdGlmIChpc1Njcm9sbGluZyAmJiAhdGhpcy5faXNIZWlnaHRVcGRhdGVkKSB7XHJcblx0XHRcdHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCA9IHRydWU7XHJcblx0XHRcdHRoaXMuZmx1aWREaXJlY3RpdmUuc2NoZWR1bGVTZXRIZWlnaHQoMTAwKTtcclxuXHRcdH0gZWxzZSBpZiAoIWlzU2Nyb2xsaW5nICYmIHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCkge1xyXG5cdFx0XHR0aGlzLl9pc0hlaWdodFVwZGF0ZWQgPSBmYWxzZTtcclxuXHRcdFx0dGhpcy5mbHVpZERpcmVjdGl2ZS5zY2hlZHVsZVNldEhlaWdodCgxMDApO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b3BlblJlcG9ydERldGFpbHMoXzogQ3JpdGVyaWFNb2RlbCwgckNvbmZpZzogUmVwb3J0Q29uZmlnTW9kZWwpIHtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQoe1xyXG5cdFx0XHRjb25maWc6IG1hcFRvTmRmVGFibGVDb25maWcodGhpcy5jb25maWcsIHJDb25maWcuZGV0YWlscyksXHJcblx0XHRcdGxhYmVsOiByQ29uZmlnLmxhYmVsXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGNsb3NlRGV0YWlsc1BhbmVsKCkge1xyXG5cdFx0dGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QubmV4dChudWxsKTtcclxuXHR9XHJcblxyXG5cdG9uRGV0YWlsc0FuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcclxuXHRcdHRoaXMuaXNEZXRhaWxzT3BlbmVkID0gZXZlbnQudG9TdGF0ZSA9PT0gJ29wZW4nO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHRzdXBlci5uZ09uRGVzdHJveSgpO1xyXG5cdFx0dGhpcy5fY2hhcnRIZWxwZXJTZXJ2aWNlLmRlc3Ryb3lBbGwoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgcHJlcGFyZUNyaXRlcmlhUGF5bG9hZChjcml0ZXJpYTogUmVjb3JkPGFueSwgYW55PiwgZmllbGRzOiBGaWVsZENvbmZpZ01vZGVsW10gPSB0aGlzLmZpbHRlcnNDb25maWcuZmllbGRzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fZmlsdGVyc01hcHBlci5wcmVwYXJlUGF5bG9hZChmaWVsZHMsIGNyaXRlcmlhKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3N0cmluZ2lmeVZhbHVlcyhjcml0ZXJpYTogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG5cdFx0cmV0dXJuIE9iamVjdC5lbnRyaWVzKGNyaXRlcmlhKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XHJcblx0XHRcdGFjY1trZXldID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgOiB2YWx1ZTtcclxuXHRcdFx0cmV0dXJuIGFjYztcclxuXHRcdH0sIHt9KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3ByZXBhcmVSZXBvcnRzKCkge1xyXG5cdFx0dGhpcy5pc0xvYWRpbmdSZXN1bHQgPSB0cnVlO1xyXG5cdFx0cmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xyXG5cdFx0XHR0aGlzLmZpbHRlcnNQYXJhbXMkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IF8uaXNFcXVhbChhLCBiKSkpLFxyXG5cdFx0XHR0aGlzLnJlcG9ydENvbmZpZyRcclxuXHRcdF0pLnBpcGUoXHJcblx0XHRcdHRhcCgoKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5pc0xvYWRpbmdSZXN1bHQgPSB0cnVlO1xyXG5cdFx0XHRcdHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdH0pLFxyXG5cdFx0XHRzd2l0Y2hNYXAoKFtjcml0ZXJpYSwgY29uZmlnXSkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHJlcXVlc3QgPSBjb25maWc/LnJlcXVlc3Q7XHJcblx0XHRcdFx0aWYgKCFyZXF1ZXN0KSB7XHJcblx0XHRcdFx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGxldCBfcGF5bG9hZCA9IGNyaXRlcmlhO1xyXG5cdFx0XHRcdGlmICghY3JpdGVyaWEgJiYgISFjb25maWcuYWN0aXZlUXVlcnkpIHtcclxuXHRcdFx0XHRcdF9wYXlsb2FkID0gdGhpcy5wcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNvbmZpZy5hY3RpdmVRdWVyeSk7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRjb25zdCBkYXRhJCA9IHRoaXMuX25kZlJlcG9ydHNTZXJ2aWNlLmdldERhdGEocmVxdWVzdCwgX3BheWxvYWQpLnBpcGUoXHJcblx0XHRcdFx0XHRzd2l0Y2hNYXAoKHJlcG9ydHM6IEFwaVJlc3BvbnNlTW9kZWwpID0+IHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMuX3RyYW5zZm9ybVNlcnZpY2UucHJlcGFyZURhdGEocmVwb3J0cywgY29uZmlnKTtcclxuXHRcdFx0XHRcdH0pLFxyXG5cdFx0XHRcdFx0ZmluYWxpemUoKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHR0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0XHRyZXR1cm4gZm9ya0pvaW4oW29mKGNvbmZpZyksIGRhdGEkXSk7XHJcblx0XHRcdH0pLFxyXG5cdFx0XHRtYXAoKFtjb25maWcsIHJlc3BvbnNlXSkgPT4ge1xyXG5cdFx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0XHRjb25maWcsXHJcblx0XHRcdFx0XHRyZXNwb25zZVxyXG5cdFx0XHRcdH07XHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfaGFuZGxlS2V5Ym9hcmRFdmVudCgpIHtcclxuXHRcdHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcblx0XHRcdGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pihkb2N1bWVudCwgJ2tleWRvd24nKVxyXG5cdFx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdFx0ZmlsdGVyKChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gZXZlbnQua2V5ID09PSAnRXNjYXBlJyAmJiB0aGlzLnNob3dEZXRhaWxzKSxcclxuXHRcdFx0XHRcdHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxyXG5cdFx0XHRcdClcclxuXHRcdFx0XHQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuY2xvc2VEZXRhaWxzUGFuZWwoKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfcHJlcGFyZU1hcHBlZFF1ZXJ5KGNyaXRlcmlhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBtb2RlOiAncGF5bG9hZCcgfCAncGFyYW1zJykge1xyXG5cdFx0cmV0dXJuIG1vZGUgPT0gJ3BheWxvYWQnXHJcblx0XHRcdD8gdGhpcy5wcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNyaXRlcmlhKVxyXG5cdFx0XHQ6IHtcclxuXHRcdFx0XHRcdHBhcmFtczogdGhpcy5fc3RyaW5naWZ5VmFsdWVzKGNyaXRlcmlhKVxyXG5cdFx0XHRcdH07XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF91cGRhdGVBY3RpdmVRdWVyeShxdWVyeTogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG5cdFx0dGhpcy5hY3RpdmVRdWVyeSA9IHF1ZXJ5O1xyXG5cdFx0dGhpcy5fYWN0aXZlRmlsdGVyc1F1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRxdWVyeSxcclxuXHRcdFx0ZW1pdEV2ZW50OiBmYWxzZVxyXG5cdFx0fSk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXZcclxuXHQqbmdJZj1cInJlcG9ydHNEYXRhJCB8IGFzeW5jIGFzIHJlcG9ydHNcIlxyXG5cdFtjbGFzcy5wYW5lbC1vcGVuZWRdPVwiaXNQYW5lbE9wZW5lZCAmJiBmaWx0ZXJzQ29uZmlnXCJcclxuXHRbZGlyXT1cImRpcmVjdGlvblwiXHJcblx0Y2xhc3M9XCJuZGYtcmVwb3J0c19fY29udGFpbmVyXCJcclxuXHRuZGZGbHVpZEhlaWdodFxyXG4+XHJcblx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19wYW5lbFwiICpuZ0lmPVwiISFmaWx0ZXJzQ29uZmlnPy5maWVsZHM/Lmxlbmd0aFwiPlxyXG5cdFx0PGFwcC1maWx0ZXJzLXBhbmVsXHJcblx0XHRcdFtmaWVsZHNdPVwiZmlsdGVyc0NvbmZpZz8uZmllbGRzXCJcclxuXHRcdFx0W2FnZ3JlZ2F0aW9uc109XCJyZXBvcnRzPy5yZXNwb25zZT8uYWdncmVnYXRpb25zXCJcclxuXHRcdFx0KGZpbHRlckNoYW5nZWQpPVwiZmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuXHRcdFx0W2FjdGl2ZVF1ZXJ5XT1cImFjdGl2ZUZpbHRlcnNRdWVyeSQgfCBhc3luY1wiXHJcblx0XHRcdGNsYXNzPVwibmRmLXJlcG9ydHNfX2ZpbHRlcnNcIlxyXG5cdFx0PjwvYXBwLWZpbHRlcnMtcGFuZWw+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fY29udGVudCBwLTQgcHQtMFwiIChzY3JvbGxlZCk9XCJvbkNvbnRlbnRTY3JvbGwoJGV2ZW50KVwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19oZWFkZXIgZmxleCBwdC00XCI+XHJcblx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiIChjbGljayk9XCJ0b2dnbGVQYW5lbCgpXCI+XHJcblx0XHRcdFx0PG1hdC1pY29uPiBmaWx0ZXJfYWx0PC9tYXQtaWNvbj5cclxuXHRcdFx0PC9idXR0b24+XHJcblx0XHRcdDxhcHAtZWRpdG9yLWJ1dHRvblxyXG5cdFx0XHRcdCpuZ0lmPVwianNvbkVkaXRvckVuYWJsZWQgJiYgcmVwb3J0c0tleVwiXHJcblx0XHRcdFx0W2tleV09XCJyZXBvcnRzS2V5XCJcclxuXHRcdFx0XHRbdHlwZV09XCJlZGl0b3JUeXBlXCJcclxuXHRcdFx0PjwvYXBwLWVkaXRvci1idXR0b24+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxtYXQtc3Bpbm5lciAqbmdJZj1cImlzTG9hZGluZ1Jlc3VsdFwiIGNsYXNzPVwibXQtNSBteC1hdXRvXCIgW2RpYW1ldGVyXT1cIjQ4XCI+PC9tYXQtc3Bpbm5lcj5cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwicmVwb3J0cy1ncmlkXCIgKm5nSWY9XCIhaXNMb2FkaW5nUmVzdWx0XCI+XHJcblx0XHRcdDxhcHAtbmRmLXJlcG9ydFxyXG5cdFx0XHRcdCpuZ0Zvcj1cImxldCBjb25maWcgb2YgcmVwb3J0Q29uZmlnLml0ZW1zOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG5cdFx0XHRcdFtjb25maWddPVwiY29uZmlnXCJcclxuXHRcdFx0XHRbZGF0YV09XCJyZXBvcnRzPy5yZXNwb25zZVwiXHJcblx0XHRcdFx0W2NyaXRlcmlhXT1cImZpbHRlcnNQYXJhbXMkIHwgYXN5bmNcIlxyXG5cdFx0XHRcdFtjbGFzcy5jb2wtc21hbGxdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoID09PSAnc21hbGwnXCJcclxuXHRcdFx0XHRbY2xhc3MuY29sLW1lZGl1bV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPT09ICdtZWRpdW0nXCJcclxuXHRcdFx0XHRbY2xhc3MuY29sLWhhbGZdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoID09PSAnaGFsZidcIlxyXG5cdFx0XHRcdFtjbGFzcy5jb2wtd2lkZV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPT09ICd3aWRlJ1wiXHJcblx0XHRcdFx0W2NsYXNzLmNvbC1leHRyYS13aWRlXT1cImNvbmZpZz8ubGF5b3V0Py53aWR0aCA9PT0gJ2V4dHJhJ1wiXHJcblx0XHRcdFx0W2NsYXNzLmNvbC1mdWxsXT1cImNvbmZpZz8ubGF5b3V0Py53aWR0aCA9PT0gJ2Z1bGwnXCJcclxuXHRcdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdFx0Y2xhc3M9XCJyZXBvcnRzLWdyaWRfX2l0ZW0ge3sgY29uZmlnPy5sYXlvdXQ/LnN0eWxlQ2xhc3MgfX1cIlxyXG5cdFx0XHRcdChvbk5hdmlnYXRlKT1cIm9uTmF2aWdhdGUoJGV2ZW50KVwiXHJcblx0XHRcdFx0KG9uT3Blbik9XCJvcGVuUmVwb3J0RGV0YWlscygkZXZlbnQsIGNvbmZpZylcIlxyXG5cdFx0XHQ+PC9hcHAtbmRmLXJlcG9ydD5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXZcclxuXHRcdGNsYXNzPVwibmRmLXJlcG9ydHNfX2RldGFpbHNcIlxyXG5cdFx0W2NsYXNzLm9wZW5lZF09XCJzaG93RGV0YWlsc1wiXHJcblx0XHRbQHNsaWRlSW5PdXRdPVwic2hvd0RldGFpbHMgPyAnb3BlbicgOiAnY2xvc2VkJ1wiXHJcblx0XHQoQHNsaWRlSW5PdXQuZG9uZSk9XCJvbkRldGFpbHNBbmltYXRpb25FbmQoJGV2ZW50KVwiXHJcblx0PlxyXG5cdFx0PGFwcC1uZGYtdGFibGVcclxuXHRcdFx0Km5nSWY9XCJyZXBvcnREZXRhaWxzJCB8IGFzeW5jIGFzIHJlcG9ydFwiXHJcblx0XHRcdFtjb25maWddPVwicmVwb3J0LmNvbmZpZ1wiXHJcblx0XHRcdFthY3RpdmVRdWVyeV09XCJhY3RpdmVGaWx0ZXJzUXVlcnkkIHwgYXN5bmNcIlxyXG5cdFx0XHRbY3VzdG9tQ3JpdGVyaWFdPVwiZmlsdGVyc1BhcmFtcyQgfCBhc3luY1wiXHJcblx0XHQ+XHJcblx0XHRcdDxuZy10ZW1wbGF0ZSBzZWFyY2hUYWJsZVRlbXBsYXRlPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fZGV0YWlsc19faGVhZGVyIGZsZXggZ2FwLTJcIj5cclxuXHRcdFx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiIChjbGljayk9XCJ0b2dnbGVQYW5lbCgpXCI+XHJcblx0XHRcdFx0XHRcdDxtYXQtaWNvbj4gZmlsdGVyX2FsdDwvbWF0LWljb24+XHJcblx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlRGV0YWlsc1BhbmVsKClcIj5cclxuXHRcdFx0XHRcdFx0PG1hdC1pY29uPiBjbG9zZTwvbWF0LWljb24+XHJcblx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8aDM+XHJcblx0XHRcdFx0XHR7eyByZXBvcnQubGFiZWwgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHQ8L2gzPlxyXG5cdFx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdFx0PC9hcHAtbmRmLXRhYmxlPlxyXG5cdDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -10,12 +10,15 @@ import { NgSelectModule } from '@ng-select/ng-select';
10
10
  import { TranslateModule } from '@ngx-translate/core';
11
11
  import { NuxeoDialogModule } from '../../../shared/components';
12
12
  import { DynamicFormModule } from '../../dynamic-form/dynamic-form.module';
13
- import { FiltersPanelModule, FluidHeightModule, NdfTableModule } from '../../tables';
13
+ import { FiltersPanelModule, NdfTableModule } from '../../tables';
14
14
  import { ChartsModule } from '../charts';
15
15
  import { DigitChartComponent, GraphChartComponent } from './charts-components';
16
16
  import { ChartPanelComponent, ChartPanelFooterComponent, ChartPanelHeaderComponent, ChartTypeSelectorComponent, DigitReportComponent, DynamicTimelineReportComponent, GraphDialogComponent, GraphReportComponent, TimeGroupSelectorComponent, TimelineDialogComponent } from './components';
17
17
  import { NdfReportComponent, NdfReportsComponent } from './containers';
18
18
  import { ScrollableDivDirective } from './directives';
19
+ import { FluidHeightModule } from '../../../shared/directives';
20
+ import { DirectiveModule } from '../../../directive/directive.module';
21
+ import { EditorNavigateButton } from '../../ndf-config-editor/public';
19
22
  import * as i0 from "@angular/core";
20
23
  const CONTAINERS = [NdfReportsComponent, NdfReportComponent];
21
24
  const DIRECTIVES = [ScrollableDivDirective];
@@ -54,7 +57,9 @@ NdfReportsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
54
57
  FiltersPanelModule,
55
58
  MatProgressSpinnerModule,
56
59
  NuxeoDialogModule,
57
- NdfTableModule], exports: [NdfReportsComponent, NdfReportComponent] });
60
+ NdfTableModule,
61
+ DirectiveModule,
62
+ EditorNavigateButton], exports: [NdfReportsComponent, NdfReportComponent] });
58
63
  NdfReportsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsModule, imports: [[
59
64
  CommonModule,
60
65
  TranslateModule,
@@ -71,7 +76,9 @@ NdfReportsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versio
71
76
  FiltersPanelModule,
72
77
  MatProgressSpinnerModule,
73
78
  NuxeoDialogModule,
74
- NdfTableModule
79
+ NdfTableModule,
80
+ DirectiveModule,
81
+ EditorNavigateButton
75
82
  ]] });
76
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsModule, decorators: [{
77
84
  type: NgModule,
@@ -93,9 +100,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
93
100
  FiltersPanelModule,
94
101
  MatProgressSpinnerModule,
95
102
  NuxeoDialogModule,
96
- NdfTableModule
103
+ NdfTableModule,
104
+ DirectiveModule,
105
+ EditorNavigateButton
97
106
  ],
98
107
  exports: [CONTAINERS]
99
108
  }]
100
109
  }] });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL25kZi1yZXBvcnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0UsT0FBTyxFQUNOLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQixvQkFBb0IsRUFDcEIsOEJBQThCLEVBQzlCLG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIsMEJBQTBCLEVBQzFCLHVCQUF1QixFQUN2QixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUV0RCxNQUFNLFVBQVUsR0FBRyxDQUFDLG1CQUFtQixFQUFFLGtCQUFrQixDQUFDLENBQUM7QUFFN0QsTUFBTSxVQUFVLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBRTVDLE1BQU0sTUFBTSxHQUFHLENBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztBQUUxRCxNQUFNLGdCQUFnQixHQUFHLENBQUMsbUJBQW1CLEVBQUUseUJBQXlCLEVBQUUseUJBQXlCLENBQUMsQ0FBQztBQUVyRyxNQUFNLFVBQVUsR0FBRztJQUNsQiwwQkFBMEI7SUFDMUIsb0JBQW9CO0lBQ3BCLG9CQUFvQjtJQUNwQiw4QkFBOEI7SUFDOUIsMEJBQTBCO0lBQzFCLG9CQUFvQjtJQUNwQix1QkFBdUI7Q0FDdkIsQ0FBQztBQXdCRixNQUFNLE9BQU8sZ0JBQWdCOzs4R0FBaEIsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBeENULG1CQUFtQixFQUFFLGtCQUFrQixFQVMxRCwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLG9CQUFvQjtRQUNwQiw4QkFBOEI7UUFDOUIsMEJBQTBCO1FBQzFCLG9CQUFvQjtRQUNwQix1QkFBdUIsRUFURSxtQkFBbUIsRUFBRSx5QkFBeUIsRUFBRSx5QkFBeUIsRUFKL0Usc0JBQXNCLEVBRTFCLG1CQUFtQixFQUFFLG1CQUFtQixhQWlCdEQsWUFBWTtRQUNaLGVBQWU7UUFDZixhQUFhO1FBQ2IsYUFBYTtRQUNiLGVBQWU7UUFDZixZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsY0FBYztRQUNkLGdCQUFnQjtRQUNoQixpQkFBaUI7UUFDakIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixpQkFBaUI7UUFDakIsY0FBYyxhQXBDSSxtQkFBbUIsRUFBRSxrQkFBa0I7K0dBd0M5QyxnQkFBZ0IsWUFwQm5CO1lBQ1IsWUFBWTtZQUNaLGVBQWU7WUFDZixhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixZQUFZO1lBQ1osaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsa0JBQWtCO1lBQ2xCLHdCQUF3QjtZQUN4QixpQkFBaUI7WUFDakIsY0FBYztTQUNkOzRGQUdXLGdCQUFnQjtrQkF0QjVCLFFBQVE7bUJBQUM7b0JBQ1QsWUFBWSxFQUFFLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDO29CQUM1RSxPQUFPLEVBQUU7d0JBQ1IsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IE51eGVvRGlhbG9nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBEeW5hbWljRm9ybU1vZHVsZSB9IGZyb20gJy4uLy4uL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0ubW9kdWxlJztcclxuaW1wb3J0IHsgRmlsdGVyc1BhbmVsTW9kdWxlLCBGbHVpZEhlaWdodE1vZHVsZSwgTmRmVGFibGVNb2R1bGUgfSBmcm9tICcuLi8uLi90YWJsZXMnO1xyXG5pbXBvcnQgeyBDaGFydHNNb2R1bGUgfSBmcm9tICcuLi9jaGFydHMnO1xyXG5pbXBvcnQgeyBEaWdpdENoYXJ0Q29tcG9uZW50LCBHcmFwaENoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jaGFydHMtY29tcG9uZW50cyc7XHJcbmltcG9ydCB7XHJcblx0Q2hhcnRQYW5lbENvbXBvbmVudCxcclxuXHRDaGFydFBhbmVsRm9vdGVyQ29tcG9uZW50LFxyXG5cdENoYXJ0UGFuZWxIZWFkZXJDb21wb25lbnQsXHJcblx0Q2hhcnRUeXBlU2VsZWN0b3JDb21wb25lbnQsXHJcblx0RGlnaXRSZXBvcnRDb21wb25lbnQsXHJcblx0RHluYW1pY1RpbWVsaW5lUmVwb3J0Q29tcG9uZW50LFxyXG5cdEdyYXBoRGlhbG9nQ29tcG9uZW50LFxyXG5cdEdyYXBoUmVwb3J0Q29tcG9uZW50LFxyXG5cdFRpbWVHcm91cFNlbGVjdG9yQ29tcG9uZW50LFxyXG5cdFRpbWVsaW5lRGlhbG9nQ29tcG9uZW50XHJcbn0gZnJvbSAnLi9jb21wb25lbnRzJztcclxuXHJcbmltcG9ydCB7IE5kZlJlcG9ydENvbXBvbmVudCwgTmRmUmVwb3J0c0NvbXBvbmVudCB9IGZyb20gJy4vY29udGFpbmVycyc7XHJcbmltcG9ydCB7IFNjcm9sbGFibGVEaXZEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xyXG5cclxuY29uc3QgQ09OVEFJTkVSUyA9IFtOZGZSZXBvcnRzQ29tcG9uZW50LCBOZGZSZXBvcnRDb21wb25lbnRdO1xyXG5cclxuY29uc3QgRElSRUNUSVZFUyA9IFtTY3JvbGxhYmxlRGl2RGlyZWN0aXZlXTtcclxuXHJcbmNvbnN0IENIQVJUUyA9IFtHcmFwaENoYXJ0Q29tcG9uZW50LCBEaWdpdENoYXJ0Q29tcG9uZW50XTtcclxuXHJcbmNvbnN0IFBBTkVMX0NPTVBPTkVOVFMgPSBbQ2hhcnRQYW5lbENvbXBvbmVudCwgQ2hhcnRQYW5lbEhlYWRlckNvbXBvbmVudCwgQ2hhcnRQYW5lbEZvb3RlckNvbXBvbmVudF07XHJcblxyXG5jb25zdCBDT01QT05FTlRTID0gW1xyXG5cdENoYXJ0VHlwZVNlbGVjdG9yQ29tcG9uZW50LFxyXG5cdERpZ2l0UmVwb3J0Q29tcG9uZW50LFxyXG5cdEdyYXBoUmVwb3J0Q29tcG9uZW50LFxyXG5cdER5bmFtaWNUaW1lbGluZVJlcG9ydENvbXBvbmVudCxcclxuXHRUaW1lR3JvdXBTZWxlY3RvckNvbXBvbmVudCxcclxuXHRHcmFwaERpYWxvZ0NvbXBvbmVudCxcclxuXHRUaW1lbGluZURpYWxvZ0NvbXBvbmVudFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuXHRkZWNsYXJhdGlvbnM6IFtDT05UQUlORVJTLCBDT01QT05FTlRTLCBQQU5FTF9DT01QT05FTlRTLCBESVJFQ1RJVkVTLCBDSEFSVFNdLFxyXG5cdGltcG9ydHM6IFtcclxuXHRcdENvbW1vbk1vZHVsZSxcclxuXHRcdFRyYW5zbGF0ZU1vZHVsZSxcclxuXHRcdE1hdE1lbnVNb2R1bGUsXHJcblx0XHRNYXRJY29uTW9kdWxlLFxyXG5cdFx0TWF0QnV0dG9uTW9kdWxlLFxyXG5cdFx0Q2hhcnRzTW9kdWxlLFxyXG5cdFx0RHluYW1pY0Zvcm1Nb2R1bGUsXHJcblx0XHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHROZ1NlbGVjdE1vZHVsZSxcclxuXHRcdE1hdFRvb2x0aXBNb2R1bGUsXHJcblx0XHRGbHVpZEhlaWdodE1vZHVsZSxcclxuXHRcdEZpbHRlcnNQYW5lbE1vZHVsZSxcclxuXHRcdE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcclxuXHRcdE51eGVvRGlhbG9nTW9kdWxlLFxyXG5cdFx0TmRmVGFibGVNb2R1bGVcclxuXHRdLFxyXG5cdGV4cG9ydHM6IFtDT05UQUlORVJTXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0c01vZHVsZSB7fVxyXG4iXX0=
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL25kZi1yZXBvcnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7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QU8sRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgTnV4ZW9EaWFsb2dNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IER5bmFtaWNGb3JtTW9kdWxlIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBGaWx0ZXJzUGFuZWxNb2R1bGUsIE5kZlRhYmxlTW9kdWxlIH0gZnJvbSAnLi4vLi4vdGFibGVzJztcclxuaW1wb3J0IHsgQ2hhcnRzTW9kdWxlIH0gZnJvbSAnLi4vY2hhcnRzJztcclxuaW1wb3J0IHsgRGlnaXRDaGFydENvbXBvbmVudCwgR3JhcGhDaGFydENvbXBvbmVudCB9IGZyb20gJy4vY2hhcnRzLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQge1xyXG5cdENoYXJ0UGFuZWxDb21wb25lbnQsXHJcblx0Q2hhcnRQYW5lbEZvb3RlckNvbXBvbmVudCxcclxuXHRDaGFydFBhbmVsSGVhZGVyQ29tcG9uZW50LFxyXG5cdENoYXJ0VHlwZVNlbGVjdG9yQ29tcG9uZW50LFxyXG5cdERpZ2l0UmVwb3J0Q29tcG9uZW50LFxyXG5cdER5bmFtaWNUaW1lbGluZVJlcG9ydENvbXBvbmVudCxcclxuXHRHcmFwaERpYWxvZ0NvbXBvbmVudCxcclxuXHRHcmFwaFJlcG9ydENvbXBvbmVudCxcclxuXHRUaW1lR3JvdXBTZWxlY3RvckNvbXBvbmVudCxcclxuXHRUaW1lbGluZURpYWxvZ0NvbXBvbmVudFxyXG59IGZyb20gJy4vY29tcG9uZW50cyc7XHJcblxyXG5pbXBvcnQgeyBOZGZSZXBvcnRDb21wb25lbnQsIE5kZlJlcG9ydHNDb21wb25lbnQgfSBmcm9tICcuL2NvbnRhaW5lcnMnO1xyXG5pbXBvcnQgeyBTY3JvbGxhYmxlRGl2RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzJztcclxuaW1wb3J0IHsgRmx1aWRIZWlnaHRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IERpcmVjdGl2ZU1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9kaXJlY3RpdmUubW9kdWxlJztcclxuaW1wb3J0IHsgRWRpdG9yTmF2aWdhdGVCdXR0b24gfSBmcm9tICcuLi8uLi9uZGYtY29uZmlnLWVkaXRvci9wdWJsaWMnO1xyXG5cclxuY29uc3QgQ09OVEFJTkVSUyA9IFtOZGZSZXBvcnRzQ29tcG9uZW50LCBOZGZSZXBvcnRDb21wb25lbnRdO1xyXG5cclxuY29uc3QgRElSRUNUSVZFUyA9IFtTY3JvbGxhYmxlRGl2RGlyZWN0aXZlXTtcclxuXHJcbmNvbnN0IENIQVJUUyA9IFtHcmFwaENoYXJ0Q29tcG9uZW50LCBEaWdpdENoYXJ0Q29tcG9uZW50XTtcclxuXHJcbmNvbnN0IFBBTkVMX0NPTVBPTkVOVFMgPSBbQ2hhcnRQYW5lbENvbXBvbmVudCwgQ2hhcnRQYW5lbEhlYWRlckNvbXBvbmVudCwgQ2hhcnRQYW5lbEZvb3RlckNvbXBvbmVudF07XHJcblxyXG5jb25zdCBDT01QT05FTlRTID0gW1xyXG5cdENoYXJ0VHlwZVNlbGVjdG9yQ29tcG9uZW50LFxyXG5cdERpZ2l0UmVwb3J0Q29tcG9uZW50LFxyXG5cdEdyYXBoUmVwb3J0Q29tcG9uZW50LFxyXG5cdER5bmFtaWNUaW1lbGluZVJlcG9ydENvbXBvbmVudCxcclxuXHRUaW1lR3JvdXBTZWxlY3RvckNvbXBvbmVudCxcclxuXHRHcmFwaERpYWxvZ0NvbXBvbmVudCxcclxuXHRUaW1lbGluZURpYWxvZ0NvbXBvbmVudFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuXHRkZWNsYXJhdGlvbnM6IFtDT05UQUlORVJTLCBDT01QT05FTlRTLCBQQU5FTF9DT01QT05FTlRTLCBESVJFQ1RJVkVTLCBDSEFSVFNdLFxyXG5cdGltcG9ydHM6IFtcclxuXHRcdENvbW1vbk1vZHVsZSxcclxuXHRcdFRyYW5zbGF0ZU1vZHVsZSxcclxuXHRcdE1hdE1lbnVNb2R1bGUsXHJcblx0XHRNYXRJY29uTW9kdWxlLFxyXG5cdFx0TWF0QnV0dG9uTW9kdWxlLFxyXG5cdFx0Q2hhcnRzTW9kdWxlLFxyXG5cdFx0RHluYW1pY0Zvcm1Nb2R1bGUsXHJcblx0XHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHROZ1NlbGVjdE1vZHVsZSxcclxuXHRcdE1hdFRvb2x0aXBNb2R1bGUsXHJcblx0XHRGbHVpZEhlaWdodE1vZHVsZSxcclxuXHRcdEZpbHRlcnNQYW5lbE1vZHVsZSxcclxuXHRcdE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcclxuXHRcdE51eGVvRGlhbG9nTW9kdWxlLFxyXG5cdFx0TmRmVGFibGVNb2R1bGUsXHJcblx0XHREaXJlY3RpdmVNb2R1bGUsXHJcblx0XHRFZGl0b3JOYXZpZ2F0ZUJ1dHRvblxyXG5cdF0sXHJcblx0ZXhwb3J0czogW0NPTlRBSU5FUlNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZGZSZXBvcnRzTW9kdWxlIHt9XHJcbiJdfQ==
@@ -13,6 +13,20 @@ export class ChartDataTransformers {
13
13
  registerGraphTransformer(key, Transformer) {
14
14
  this.graphTransformers.set(key, Transformer);
15
15
  }
16
+ /**
17
+ * Gets all registered graph Transformers
18
+ * @returns A map of all registered graph Transformers
19
+ */
20
+ getGraphTransformers() {
21
+ return this.graphTransformers;
22
+ }
23
+ /**
24
+ * Gets all registered digits Transformers
25
+ * @returns A map of all registered digits Transformers
26
+ */
27
+ getDigitsTransformers() {
28
+ return this.digitsTransformers;
29
+ }
16
30
  /**
17
31
  * Gets a graph Transformer function by its key
18
32
  * @param key The unique identifier for the Transformer
@@ -94,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
94
108
  type: Injectable,
95
109
  args: [{ providedIn: 'root' }]
96
110
  }] });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtZGF0YS10cmFuc2Zvcm1lcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvcmVwb3J0cy9uZGYtcmVwb3J0cy9zZXJ2aWNlcy9jaGFydC1kYXRhLXRyYW5zZm9ybWVycy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDLE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUFFa0Isc0JBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7UUFDeEQsdUJBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7S0E2RjFFO0lBM0ZBOzs7O09BSUc7SUFDSCx3QkFBd0IsQ0FBQyxHQUFXLEVBQUUsV0FBNkI7UUFDbEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBQyxHQUFXO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHlCQUF5QixDQUFDLEdBQVcsRUFBRSxXQUE2QjtRQUNuRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG9CQUFvQixDQUFDLEdBQVc7UUFDL0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7O09BR0c7SUFDSCx5QkFBeUIsQ0FBQyxZQUE4QztRQUN2RSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDM0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsMEJBQTBCLENBQUMsWUFBOEM7UUFDeEUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFO1lBQzNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBQyxHQUFXO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG9CQUFvQixDQUFDLEdBQVc7UUFDL0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsc0JBQXNCLENBQUMsR0FBVztRQUNqQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCx1QkFBdUIsQ0FBQyxHQUFXO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QyxDQUFDOzttSEE5RlcscUJBQXFCO3VIQUFyQixxQkFBcUIsY0FEUixNQUFNOzRGQUNuQixxQkFBcUI7a0JBRGpDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdGF0aXN0aWNCdWNrZXQgfSBmcm9tICcuLi8uLi9jaGFydHMnO1xyXG5cclxuZXhwb3J0IHR5cGUgR3JhcGhUcmFuc2Zvcm1lciA9IChkYXRhOiBhbnksIHJlc3BvbnNlPzogYW55LCBjdXJyZW50TGFuZ3VhZ2U/OiBzdHJpbmcpID0+IFN0YXRpc3RpY0J1Y2tldFtdO1xyXG5leHBvcnQgdHlwZSBEaWdpdFRyYW5zZm9ybWVyID0gKGRhdGE6IGFueSwgcmVzcG9uc2U/OiBhbnkpID0+IG51bWJlcjtcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBDaGFydERhdGFUcmFuc2Zvcm1lcnMge1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgZ3JhcGhUcmFuc2Zvcm1lcnMgPSBuZXcgTWFwPHN0cmluZywgR3JhcGhUcmFuc2Zvcm1lcj4oKTtcclxuXHRwcml2YXRlIHJlYWRvbmx5IGRpZ2l0c1RyYW5zZm9ybWVycyA9IG5ldyBNYXA8c3RyaW5nLCBEaWdpdFRyYW5zZm9ybWVyPigpO1xyXG5cclxuXHQvKipcclxuXHQgKiBSZWdpc3RlcnMgYSBncmFwaCBUcmFuc2Zvcm1lciBmdW5jdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBUcmFuc2Zvcm1lclxyXG5cdCAqIEBwYXJhbSBUcmFuc2Zvcm1lciBUaGUgVHJhbnNmb3JtZXIgZnVuY3Rpb24gdGhhdCB0cmFuc2Zvcm1zIGRhdGEgaW50byBTdGF0aXN0aWNCdWNrZXRbXVxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyR3JhcGhUcmFuc2Zvcm1lcihrZXk6IHN0cmluZywgVHJhbnNmb3JtZXI6IEdyYXBoVHJhbnNmb3JtZXIpOiB2b2lkIHtcclxuXHRcdHRoaXMuZ3JhcGhUcmFuc2Zvcm1lcnMuc2V0KGtleSwgVHJhbnNmb3JtZXIpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogR2V0cyBhIGdyYXBoIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVGhlIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmRcclxuXHQgKi9cclxuXHRnZXRHcmFwaFRyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogR3JhcGhUcmFuc2Zvcm1lciB8IHVuZGVmaW5lZCB7XHJcblx0XHRyZXR1cm4gdGhpcy5ncmFwaFRyYW5zZm9ybWVycy5nZXQoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJlZ2lzdGVycyBhIGRpZ2l0cyBUcmFuc2Zvcm1lciBmdW5jdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBUcmFuc2Zvcm1lclxyXG5cdCAqIEBwYXJhbSBUcmFuc2Zvcm1lciBUaGUgVHJhbnNmb3JtZXIgZnVuY3Rpb24gdGhhdCB0cmFuc2Zvcm1zIGRhdGEgaW50byBhIG51bWJlclxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyRGlnaXRzVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcsIFRyYW5zZm9ybWVyOiBEaWdpdFRyYW5zZm9ybWVyKTogdm9pZCB7XHJcblx0XHR0aGlzLmRpZ2l0c1RyYW5zZm9ybWVycy5zZXQoa2V5LCBUcmFuc2Zvcm1lcik7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBHZXRzIGEgZGlnaXRzIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVGhlIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmRcclxuXHQgKi9cclxuXHRnZXREaWdpdHNUcmFuc2Zvcm1lcihrZXk6IHN0cmluZyk6IERpZ2l0VHJhbnNmb3JtZXIgfCB1bmRlZmluZWQge1xyXG5cdFx0cmV0dXJuIHRoaXMuZGlnaXRzVHJhbnNmb3JtZXJzLmdldChrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXJzIG11bHRpcGxlIGdyYXBoIFRyYW5zZm9ybWVycyBhdCBvbmNlIHVzaW5nIGEga2V5LXZhbHVlIG9iamVjdFxyXG5cdCAqIEBwYXJhbSBUcmFuc2Zvcm1lcnMgQW4gb2JqZWN0IGNvbnRhaW5pbmcga2V5LVRyYW5zZm9ybWVyIHBhaXJzIHRvIHJlZ2lzdGVyXHJcblx0ICovXHJcblx0cmVnaXN0ZXJHcmFwaFRyYW5zZm9ybWVycyhUcmFuc2Zvcm1lcnM6IFJlY29yZDxzdHJpbmcsIEdyYXBoVHJhbnNmb3JtZXI+KTogdm9pZCB7XHJcblx0XHRPYmplY3QuZW50cmllcyhUcmFuc2Zvcm1lcnMpLmZvckVhY2goKFtrZXksIFRyYW5zZm9ybWVyXSkgPT4ge1xyXG5cdFx0XHR0aGlzLmdyYXBoVHJhbnNmb3JtZXJzLnNldChrZXksIFRyYW5zZm9ybWVyKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXJzIG11bHRpcGxlIGRpZ2l0cyBUcmFuc2Zvcm1lcnMgYXQgb25jZSB1c2luZyBhIGtleS12YWx1ZSBvYmplY3RcclxuXHQgKiBAcGFyYW0gVHJhbnNmb3JtZXJzIEFuIG9iamVjdCBjb250YWluaW5nIGtleS1UcmFuc2Zvcm1lciBwYWlycyB0byByZWdpc3RlclxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyRGlnaXRzVHJhbnNmb3JtZXJzKFRyYW5zZm9ybWVyczogUmVjb3JkPHN0cmluZywgRGlnaXRUcmFuc2Zvcm1lcj4pOiB2b2lkIHtcclxuXHRcdE9iamVjdC5lbnRyaWVzKFRyYW5zZm9ybWVycykuZm9yRWFjaCgoW2tleSwgVHJhbnNmb3JtZXJdKSA9PiB7XHJcblx0XHRcdHRoaXMuZGlnaXRzVHJhbnNmb3JtZXJzLnNldChrZXksIFRyYW5zZm9ybWVyKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQ2hlY2tzIGlmIGEgZ3JhcGggVHJhbnNmb3JtZXIgZXhpc3RzIHdpdGggdGhlIHNwZWNpZmllZCBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgVHJhbnNmb3JtZXIgZXhpc3RzLCBmYWxzZSBvdGhlcndpc2VcclxuXHQgKi9cclxuXHRoYXNHcmFwaFRyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5ncmFwaFRyYW5zZm9ybWVycy5oYXMoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIENoZWNrcyBpZiBhIGRpZ2l0cyBUcmFuc2Zvcm1lciBleGlzdHMgd2l0aCB0aGUgc3BlY2lmaWVkIGtleVxyXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgVHJhbnNmb3JtZXJcclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBUcmFuc2Zvcm1lciBleGlzdHMsIGZhbHNlIG90aGVyd2lzZVxyXG5cdCAqL1xyXG5cdGhhc0RpZ2l0c1RyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5kaWdpdHNUcmFuc2Zvcm1lcnMuaGFzKGtleSk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBEZWxldGVzIGEgZ3JhcGggVHJhbnNmb3JtZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGtleVxyXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgVHJhbnNmb3JtZXIgdG8gZGVsZXRlXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgVHJhbnNmb3JtZXIgd2FzIGRlbGV0ZWQsIGZhbHNlIGlmIGl0IGRpZG4ndCBleGlzdFxyXG5cdCAqL1xyXG5cdGRlbGV0ZUdyYXBoVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmdyYXBoVHJhbnNmb3JtZXJzLmRlbGV0ZShrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogRGVsZXRlcyBhIGRpZ2l0cyBUcmFuc2Zvcm1lciB3aXRoIHRoZSBzcGVjaWZpZWQga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBUcmFuc2Zvcm1lciB0byBkZWxldGVcclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBUcmFuc2Zvcm1lciB3YXMgZGVsZXRlZCwgZmFsc2UgaWYgaXQgZGlkbid0IGV4aXN0XHJcblx0ICovXHJcblx0ZGVsZXRlRGlnaXRzVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmRpZ2l0c1RyYW5zZm9ybWVycy5kZWxldGUoa2V5KTtcclxuXHR9XHJcbn1cclxuIl19
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtZGF0YS10cmFuc2Zvcm1lcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvcmVwb3J0cy9uZGYtcmVwb3J0cy9zZXJ2aWNlcy9jaGFydC1kYXRhLXRyYW5zZm9ybWVycy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDLE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUFFa0Isc0JBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7UUFDeEQsdUJBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQTRCLENBQUM7S0E2RzFFO0lBM0dBOzs7O09BSUc7SUFDSCx3QkFBd0IsQ0FBQyxHQUFXLEVBQUUsV0FBNkI7UUFDbEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILG9CQUFvQjtRQUNuQixPQUFPLElBQUksQ0FBQyxpQkFBMEQsQ0FBQztJQUN4RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gscUJBQXFCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGtCQUEyRCxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsR0FBVztRQUM5QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCx5QkFBeUIsQ0FBQyxHQUFXLEVBQUUsV0FBNkI7UUFDbkUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxvQkFBb0IsQ0FBQyxHQUFXO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gseUJBQXlCLENBQUMsWUFBOEM7UUFDdkUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFO1lBQzNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILDBCQUEwQixDQUFDLFlBQThDO1FBQ3hFLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRTtZQUMzRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsR0FBVztRQUM5QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxvQkFBb0IsQ0FBQyxHQUFXO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHNCQUFzQixDQUFDLEdBQVc7UUFDakMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsdUJBQXVCLENBQUMsR0FBVztRQUNsQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7bUhBOUdXLHFCQUFxQjt1SEFBckIscUJBQXFCLGNBRFIsTUFBTTs0RkFDbkIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RhdGlzdGljQnVja2V0IH0gZnJvbSAnLi4vLi4vY2hhcnRzJztcclxuXHJcbmV4cG9ydCB0eXBlIEdyYXBoVHJhbnNmb3JtZXIgPSAoZGF0YTogYW55LCByZXNwb25zZT86IGFueSwgY3VycmVudExhbmd1YWdlPzogc3RyaW5nKSA9PiBTdGF0aXN0aWNCdWNrZXRbXTtcclxuZXhwb3J0IHR5cGUgRGlnaXRUcmFuc2Zvcm1lciA9IChkYXRhOiBhbnksIHJlc3BvbnNlPzogYW55KSA9PiBudW1iZXI7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQ2hhcnREYXRhVHJhbnNmb3JtZXJzIHtcclxuXHRwcml2YXRlIHJlYWRvbmx5IGdyYXBoVHJhbnNmb3JtZXJzID0gbmV3IE1hcDxzdHJpbmcsIEdyYXBoVHJhbnNmb3JtZXI+KCk7XHJcblx0cHJpdmF0ZSByZWFkb25seSBkaWdpdHNUcmFuc2Zvcm1lcnMgPSBuZXcgTWFwPHN0cmluZywgRGlnaXRUcmFuc2Zvcm1lcj4oKTtcclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXJzIGEgZ3JhcGggVHJhbnNmb3JtZXIgZnVuY3Rpb24gd2l0aCB0aGUgc3BlY2lmaWVkIGtleVxyXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgVHJhbnNmb3JtZXJcclxuXHQgKiBAcGFyYW0gVHJhbnNmb3JtZXIgVGhlIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIHRoYXQgdHJhbnNmb3JtcyBkYXRhIGludG8gU3RhdGlzdGljQnVja2V0W11cclxuXHQgKi9cclxuXHRyZWdpc3RlckdyYXBoVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcsIFRyYW5zZm9ybWVyOiBHcmFwaFRyYW5zZm9ybWVyKTogdm9pZCB7XHJcblx0XHR0aGlzLmdyYXBoVHJhbnNmb3JtZXJzLnNldChrZXksIFRyYW5zZm9ybWVyKTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEdldHMgYWxsIHJlZ2lzdGVyZWQgZ3JhcGggVHJhbnNmb3JtZXJzXHJcblx0ICogQHJldHVybnMgQSBtYXAgb2YgYWxsIHJlZ2lzdGVyZWQgZ3JhcGggVHJhbnNmb3JtZXJzXHJcblx0ICovXHJcblx0Z2V0R3JhcGhUcmFuc2Zvcm1lcnMoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5ncmFwaFRyYW5zZm9ybWVycyBhcyBSZWFkb25seU1hcDxzdHJpbmcsIEdyYXBoVHJhbnNmb3JtZXI+O1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogR2V0cyBhbGwgcmVnaXN0ZXJlZCBkaWdpdHMgVHJhbnNmb3JtZXJzXHJcblx0ICogQHJldHVybnMgQSBtYXAgb2YgYWxsIHJlZ2lzdGVyZWQgZGlnaXRzIFRyYW5zZm9ybWVyc1xyXG5cdCAqL1xyXG5cdGdldERpZ2l0c1RyYW5zZm9ybWVycygpIHtcclxuXHRcdHJldHVybiB0aGlzLmRpZ2l0c1RyYW5zZm9ybWVycyBhcyBSZWFkb25seU1hcDxzdHJpbmcsIERpZ2l0VHJhbnNmb3JtZXI+O1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogR2V0cyBhIGdyYXBoIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVGhlIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmRcclxuXHQgKi9cclxuXHRnZXRHcmFwaFRyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogR3JhcGhUcmFuc2Zvcm1lciB8IHVuZGVmaW5lZCB7XHJcblx0XHRyZXR1cm4gdGhpcy5ncmFwaFRyYW5zZm9ybWVycy5nZXQoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJlZ2lzdGVycyBhIGRpZ2l0cyBUcmFuc2Zvcm1lciBmdW5jdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBUcmFuc2Zvcm1lclxyXG5cdCAqIEBwYXJhbSBUcmFuc2Zvcm1lciBUaGUgVHJhbnNmb3JtZXIgZnVuY3Rpb24gdGhhdCB0cmFuc2Zvcm1zIGRhdGEgaW50byBhIG51bWJlclxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyRGlnaXRzVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcsIFRyYW5zZm9ybWVyOiBEaWdpdFRyYW5zZm9ybWVyKTogdm9pZCB7XHJcblx0XHR0aGlzLmRpZ2l0c1RyYW5zZm9ybWVycy5zZXQoa2V5LCBUcmFuc2Zvcm1lcik7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBHZXRzIGEgZGlnaXRzIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVGhlIFRyYW5zZm9ybWVyIGZ1bmN0aW9uIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmRcclxuXHQgKi9cclxuXHRnZXREaWdpdHNUcmFuc2Zvcm1lcihrZXk6IHN0cmluZyk6IERpZ2l0VHJhbnNmb3JtZXIgfCB1bmRlZmluZWQge1xyXG5cdFx0cmV0dXJuIHRoaXMuZGlnaXRzVHJhbnNmb3JtZXJzLmdldChrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXJzIG11bHRpcGxlIGdyYXBoIFRyYW5zZm9ybWVycyBhdCBvbmNlIHVzaW5nIGEga2V5LXZhbHVlIG9iamVjdFxyXG5cdCAqIEBwYXJhbSBUcmFuc2Zvcm1lcnMgQW4gb2JqZWN0IGNvbnRhaW5pbmcga2V5LVRyYW5zZm9ybWVyIHBhaXJzIHRvIHJlZ2lzdGVyXHJcblx0ICovXHJcblx0cmVnaXN0ZXJHcmFwaFRyYW5zZm9ybWVycyhUcmFuc2Zvcm1lcnM6IFJlY29yZDxzdHJpbmcsIEdyYXBoVHJhbnNmb3JtZXI+KTogdm9pZCB7XHJcblx0XHRPYmplY3QuZW50cmllcyhUcmFuc2Zvcm1lcnMpLmZvckVhY2goKFtrZXksIFRyYW5zZm9ybWVyXSkgPT4ge1xyXG5cdFx0XHR0aGlzLmdyYXBoVHJhbnNmb3JtZXJzLnNldChrZXksIFRyYW5zZm9ybWVyKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXJzIG11bHRpcGxlIGRpZ2l0cyBUcmFuc2Zvcm1lcnMgYXQgb25jZSB1c2luZyBhIGtleS12YWx1ZSBvYmplY3RcclxuXHQgKiBAcGFyYW0gVHJhbnNmb3JtZXJzIEFuIG9iamVjdCBjb250YWluaW5nIGtleS1UcmFuc2Zvcm1lciBwYWlycyB0byByZWdpc3RlclxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyRGlnaXRzVHJhbnNmb3JtZXJzKFRyYW5zZm9ybWVyczogUmVjb3JkPHN0cmluZywgRGlnaXRUcmFuc2Zvcm1lcj4pOiB2b2lkIHtcclxuXHRcdE9iamVjdC5lbnRyaWVzKFRyYW5zZm9ybWVycykuZm9yRWFjaCgoW2tleSwgVHJhbnNmb3JtZXJdKSA9PiB7XHJcblx0XHRcdHRoaXMuZGlnaXRzVHJhbnNmb3JtZXJzLnNldChrZXksIFRyYW5zZm9ybWVyKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQ2hlY2tzIGlmIGEgZ3JhcGggVHJhbnNmb3JtZXIgZXhpc3RzIHdpdGggdGhlIHNwZWNpZmllZCBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFRyYW5zZm9ybWVyXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgVHJhbnNmb3JtZXIgZXhpc3RzLCBmYWxzZSBvdGhlcndpc2VcclxuXHQgKi9cclxuXHRoYXNHcmFwaFRyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5ncmFwaFRyYW5zZm9ybWVycy5oYXMoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIENoZWNrcyBpZiBhIGRpZ2l0cyBUcmFuc2Zvcm1lciBleGlzdHMgd2l0aCB0aGUgc3BlY2lmaWVkIGtleVxyXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgVHJhbnNmb3JtZXJcclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBUcmFuc2Zvcm1lciBleGlzdHMsIGZhbHNlIG90aGVyd2lzZVxyXG5cdCAqL1xyXG5cdGhhc0RpZ2l0c1RyYW5zZm9ybWVyKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5kaWdpdHNUcmFuc2Zvcm1lcnMuaGFzKGtleSk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBEZWxldGVzIGEgZ3JhcGggVHJhbnNmb3JtZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGtleVxyXG5cdCAqIEBwYXJhbSBrZXkgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgVHJhbnNmb3JtZXIgdG8gZGVsZXRlXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgVHJhbnNmb3JtZXIgd2FzIGRlbGV0ZWQsIGZhbHNlIGlmIGl0IGRpZG4ndCBleGlzdFxyXG5cdCAqL1xyXG5cdGRlbGV0ZUdyYXBoVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmdyYXBoVHJhbnNmb3JtZXJzLmRlbGV0ZShrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogRGVsZXRlcyBhIGRpZ2l0cyBUcmFuc2Zvcm1lciB3aXRoIHRoZSBzcGVjaWZpZWQga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBUcmFuc2Zvcm1lciB0byBkZWxldGVcclxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBUcmFuc2Zvcm1lciB3YXMgZGVsZXRlZCwgZmFsc2UgaWYgaXQgZGlkbid0IGV4aXN0XHJcblx0ICovXHJcblx0ZGVsZXRlRGlnaXRzVHJhbnNmb3JtZXIoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmRpZ2l0c1RyYW5zZm9ybWVycy5kZWxldGUoa2V5KTtcclxuXHR9XHJcbn1cclxuIl19
@@ -13,6 +13,14 @@ export class ChartPluginsRegistry {
13
13
  this._plugins.set(key, plugin);
14
14
  }
15
15
  }
16
+ /**
17
+ * Returns all registered chart plugins as a read-only map.
18
+ *
19
+ * @returns {ReadonlyMap<string, Plugin<ChartType>>} A map of plugin keys to plugin instances.
20
+ */
21
+ getAll() {
22
+ return this._plugins;
23
+ }
16
24
  /**
17
25
  * Check if a plugin exists with the given key
18
26
  * @param key The plugin key to check
@@ -46,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
46
54
  providedIn: 'root'
47
55
  }]
48
56
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtcGx1Z2lucy1yZWdpc3RyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL3NlcnZpY2VzL2NoYXJ0LXBsdWdpbnMtcmVnaXN0cnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBSWtCLGFBQVEsR0FBbUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztLQWdEdEU7SUFyQ0EsUUFBUSxDQUFDLEdBQStDLEVBQUUsTUFBMEI7UUFDbkYsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkUsT0FBTztTQUNQO1FBRUQsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksTUFBTSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvQjtJQUNGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksR0FBRyxDQUFDLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEdBQUcsQ0FBQyxHQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O2tIQWhEVyxvQkFBb0I7c0hBQXBCLG9CQUFvQixjQUZwQixNQUFNOzRGQUVOLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENoYXJ0VHlwZSwgUGx1Z2luIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhcnRQbHVnaW5zUmVnaXN0cnkge1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgX3BsdWdpbnM6IE1hcDxzdHJpbmcsIFBsdWdpbjxDaGFydFR5cGU+PiA9IG5ldyBNYXAoKTtcclxuXHJcblx0LyoqXHJcblx0ICogUmVnaXN0ZXIgYSBwbHVnaW4gb3IgbXVsdGlwbGUgcGx1Z2lucy5cclxuXHQgKlxyXG5cdCAqIEBwYXJhbSB7c3RyaW5nIHwgUmVjb3JkPHN0cmluZywgUGx1Z2luPENoYXJ0VHlwZT4+fSBrZXkgLSBUaGUga2V5IG9mIHRoZSBwbHVnaW4gdG8gcmVnaXN0ZXIgb3IgYW4gb2JqZWN0IGNvbnRhaW5pbmcgbXVsdGlwbGUgcGx1Z2lucy5cclxuXHQgKiBAcGFyYW0ge1BsdWdpbjxDaGFydFR5cGU+fSBbcGx1Z2luXSAtIFRoZSBwbHVnaW4gaW5zdGFuY2UgdG8gcmVnaXN0ZXIgKGlmIGBrZXlgIGlzIGEgc3RyaW5nKS5cclxuXHQgKiBAcmV0dXJucyB7dm9pZH1cclxuXHQgKi9cclxuXHRyZWdpc3RlcihrZXk6IHN0cmluZywgcGx1Z2luOiBQbHVnaW48Q2hhcnRUeXBlPik6IHZvaWQ7XHJcblx0cmVnaXN0ZXIocGx1Z2luczogUmVjb3JkPHN0cmluZywgUGx1Z2luPENoYXJ0VHlwZT4+KTogdm9pZDtcclxuXHRyZWdpc3RlcihrZXk6IHN0cmluZyB8IFJlY29yZDxzdHJpbmcsIFBsdWdpbjxDaGFydFR5cGU+PiwgcGx1Z2luPzogUGx1Z2luPENoYXJ0VHlwZT4pOiB2b2lkIHtcclxuXHRcdGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0Jykge1xyXG5cdFx0XHRPYmplY3QuZW50cmllcyhrZXkpLmZvckVhY2goKFtrZXksIGZuXSkgPT4gdGhpcy5fcGx1Z2lucy5zZXQoa2V5LCBmbikpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnICYmIHBsdWdpbikge1xyXG5cdFx0XHR0aGlzLl9wbHVnaW5zLnNldChrZXksIHBsdWdpbik7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBDaGVjayBpZiBhIHBsdWdpbiBleGlzdHMgd2l0aCB0aGUgZ2l2ZW4ga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgcGx1Z2luIGtleSB0byBjaGVja1xyXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIHBsdWdpbiBleGlzdHMsIGZhbHNlIG90aGVyd2lzZVxyXG5cdCAqL1xyXG5cdHB1YmxpYyBoYXMoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLl9wbHVnaW5zLmhhcyhrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogR2V0IGEgcGx1Z2luIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgb2YgdGhlIHBsdWdpbiB0byByZXRyaWV2ZVxyXG5cdCAqIEByZXR1cm5zIFRoZSBwbHVnaW4gaW5zdGFuY2Ugb3IgdW5kZWZpbmVkIGlmIG5vdCBmb3VuZFxyXG5cdCAqL1xyXG5cdHB1YmxpYyBnZXQoa2V5OiBzdHJpbmcpOiBQbHVnaW48Q2hhcnRUeXBlPiB8IHVuZGVmaW5lZCB7XHJcblx0XHRyZXR1cm4gdGhpcy5fcGx1Z2lucy5nZXQoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJlbW92ZSBhIHBsdWdpbiBieSBpdHMga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUga2V5IG9mIHRoZSBwbHVnaW4gdG8gcmVtb3ZlXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgcGx1Z2luIHdhcyByZW1vdmVkLCBmYWxzZSBpZiBpdCBkaWRuJ3QgZXhpc3RcclxuXHQgKi9cclxuXHRwdWJsaWMgZGVsZXRlKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5fcGx1Z2lucy5kZWxldGUoa2V5KTtcclxuXHR9XHJcbn1cclxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtcGx1Z2lucy1yZWdpc3RyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL3NlcnZpY2VzL2NoYXJ0LXBsdWdpbnMtcmVnaXN0cnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBSWtCLGFBQVEsR0FBbUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztLQXdEdEU7SUE3Q0EsUUFBUSxDQUFDLEdBQStDLEVBQUUsTUFBMEI7UUFDbkYsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkUsT0FBTztTQUNQO1FBRUQsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksTUFBTSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvQjtJQUNGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTTtRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQWtELENBQUM7SUFDaEUsQ0FBQztJQUNEOzs7O09BSUc7SUFDSSxHQUFHLENBQUMsR0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksR0FBRyxDQUFDLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxHQUFXO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7a0hBeERXLG9CQUFvQjtzSEFBcEIsb0JBQW9CLGNBRnBCLE1BQU07NEZBRU4sb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNYLFVBQVUsRUFBRSxNQUFNO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2hhcnRUeXBlLCBQbHVnaW4gfSBmcm9tICdjaGFydC5qcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGFydFBsdWdpbnNSZWdpc3RyeSB7XHJcblx0cHJpdmF0ZSByZWFkb25seSBfcGx1Z2luczogTWFwPHN0cmluZywgUGx1Z2luPENoYXJ0VHlwZT4+ID0gbmV3IE1hcCgpO1xyXG5cclxuXHQvKipcclxuXHQgKiBSZWdpc3RlciBhIHBsdWdpbiBvciBtdWx0aXBsZSBwbHVnaW5zLlxyXG5cdCAqXHJcblx0ICogQHBhcmFtIHtzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCBQbHVnaW48Q2hhcnRUeXBlPj59IGtleSAtIFRoZSBrZXkgb2YgdGhlIHBsdWdpbiB0byByZWdpc3RlciBvciBhbiBvYmplY3QgY29udGFpbmluZyBtdWx0aXBsZSBwbHVnaW5zLlxyXG5cdCAqIEBwYXJhbSB7UGx1Z2luPENoYXJ0VHlwZT59IFtwbHVnaW5dIC0gVGhlIHBsdWdpbiBpbnN0YW5jZSB0byByZWdpc3RlciAoaWYgYGtleWAgaXMgYSBzdHJpbmcpLlxyXG5cdCAqIEByZXR1cm5zIHt2b2lkfVxyXG5cdCAqL1xyXG5cdHJlZ2lzdGVyKGtleTogc3RyaW5nLCBwbHVnaW46IFBsdWdpbjxDaGFydFR5cGU+KTogdm9pZDtcclxuXHRyZWdpc3RlcihwbHVnaW5zOiBSZWNvcmQ8c3RyaW5nLCBQbHVnaW48Q2hhcnRUeXBlPj4pOiB2b2lkO1xyXG5cdHJlZ2lzdGVyKGtleTogc3RyaW5nIHwgUmVjb3JkPHN0cmluZywgUGx1Z2luPENoYXJ0VHlwZT4+LCBwbHVnaW4/OiBQbHVnaW48Q2hhcnRUeXBlPik6IHZvaWQge1xyXG5cdFx0aWYgKHR5cGVvZiBrZXkgPT09ICdvYmplY3QnKSB7XHJcblx0XHRcdE9iamVjdC5lbnRyaWVzKGtleSkuZm9yRWFjaCgoW2tleSwgZm5dKSA9PiB0aGlzLl9wbHVnaW5zLnNldChrZXksIGZuKSk7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiYgcGx1Z2luKSB7XHJcblx0XHRcdHRoaXMuX3BsdWdpbnMuc2V0KGtleSwgcGx1Z2luKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJldHVybnMgYWxsIHJlZ2lzdGVyZWQgY2hhcnQgcGx1Z2lucyBhcyBhIHJlYWQtb25seSBtYXAuXHJcblx0ICpcclxuXHQgKiBAcmV0dXJucyB7UmVhZG9ubHlNYXA8c3RyaW5nLCBQbHVnaW48Q2hhcnRUeXBlPj59IEEgbWFwIG9mIHBsdWdpbiBrZXlzIHRvIHBsdWdpbiBpbnN0YW5jZXMuXHJcblx0ICovXHJcblx0cHVibGljIGdldEFsbCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9wbHVnaW5zIGFzIFJlYWRvbmx5TWFwPHN0cmluZywgUGx1Z2luPENoYXJ0VHlwZT4+O1xyXG5cdH1cclxuXHQvKipcclxuXHQgKiBDaGVjayBpZiBhIHBsdWdpbiBleGlzdHMgd2l0aCB0aGUgZ2l2ZW4ga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUgcGx1Z2luIGtleSB0byBjaGVja1xyXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIHBsdWdpbiBleGlzdHMsIGZhbHNlIG90aGVyd2lzZVxyXG5cdCAqL1xyXG5cdHB1YmxpYyBoYXMoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLl9wbHVnaW5zLmhhcyhrZXkpO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogR2V0IGEgcGx1Z2luIGJ5IGl0cyBrZXlcclxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgb2YgdGhlIHBsdWdpbiB0byByZXRyaWV2ZVxyXG5cdCAqIEByZXR1cm5zIFRoZSBwbHVnaW4gaW5zdGFuY2Ugb3IgdW5kZWZpbmVkIGlmIG5vdCBmb3VuZFxyXG5cdCAqL1xyXG5cdHB1YmxpYyBnZXQoa2V5OiBzdHJpbmcpOiBQbHVnaW48Q2hhcnRUeXBlPiB8IHVuZGVmaW5lZCB7XHJcblx0XHRyZXR1cm4gdGhpcy5fcGx1Z2lucy5nZXQoa2V5KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJlbW92ZSBhIHBsdWdpbiBieSBpdHMga2V5XHJcblx0ICogQHBhcmFtIGtleSBUaGUga2V5IG9mIHRoZSBwbHVnaW4gdG8gcmVtb3ZlXHJcblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgcGx1Z2luIHdhcyByZW1vdmVkLCBmYWxzZSBpZiBpdCBkaWRuJ3QgZXhpc3RcclxuXHQgKi9cclxuXHRwdWJsaWMgZGVsZXRlKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5fcGx1Z2lucy5kZWxldGUoa2V5KTtcclxuXHR9XHJcbn1cclxuIl19
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
34
34
  ]
35
35
  }]
36
36
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlbGwtY2hlY2tlci1maWVsZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3NwZWxsLWNoZWNrZXItZmllbGQvc3BlbGwtY2hlY2tlci1maWVsZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7QUFrQi9HLE1BQU0sT0FBTyx1QkFBdUI7O3FIQUF2Qix1QkFBdUI7c0hBQXZCLHVCQUF1QixpQkFaaEMsOEJBQThCLGFBRzlCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZUFBZTtRQUNmLG1CQUFtQixhQUduQiw4QkFBOEI7c0hBR3JCLHVCQUF1QixZQVZ6QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLG1CQUFtQjtTQUNwQjs0RkFLVSx1QkFBdUI7a0JBZG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDhCQUE4QjtxQkFDL0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbmltcG9ydCB7IFNwZWxsQ2hlY2tlclRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vc3BlbGwtY2hlY2tlci10ZXh0LWZpZWxkL3NwZWxsLWNoZWNrZXItdGV4dC1maWVsZC5jb21wb25lbnQnO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU3BlbGxDaGVja2VyVGV4dEZpZWxkQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNwZWxsQ2hlY2tlclRleHRGaWVsZENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNwZWxsQ2hlY2tlckZpZWxkTW9kdWxlIHsgfVxuIl19
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlbGwtY2hlY2tlci1maWVsZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3NwZWxsLWNoZWNrZXItZmllbGQvc3BlbGwtY2hlY2tlci1maWVsZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQzs7QUFrQi9HLE1BQU0sT0FBTyx1QkFBdUI7O3FIQUF2Qix1QkFBdUI7c0hBQXZCLHVCQUF1QixpQkFaaEMsOEJBQThCLGFBRzlCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZUFBZTtRQUNmLG1CQUFtQixhQUduQiw4QkFBOEI7c0hBR3JCLHVCQUF1QixZQVZ6QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLG1CQUFtQjtTQUNwQjs0RkFLVSx1QkFBdUI7a0JBZG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDhCQUE4QjtxQkFDL0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVsbENoZWNrZXJUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3NwZWxsLWNoZWNrZXItdGV4dC1maWVsZC9zcGVsbC1jaGVja2VyLXRleHQtZmllbGQuY29tcG9uZW50JztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNwZWxsQ2hlY2tlclRleHRGaWVsZENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTcGVsbENoZWNrZXJUZXh0RmllbGRDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcGVsbENoZWNrZXJGaWVsZE1vZHVsZSB7IH1cclxuIl19