@symphony-talent/component-library 4.177.0 → 4.179.0

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 (31) hide show
  1. package/esm2020/lib/atoms/grid/framework/framework.module.mjs +8 -4
  2. package/esm2020/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.component.mjs +31 -0
  3. package/esm2020/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.module.mjs +21 -0
  4. package/esm2020/lib/atoms/grid/grid.component.mjs +4 -2
  5. package/esm2020/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.mjs +6 -3
  6. package/esm2020/projects/component-library/lib/atoms/grid/framework/framework.module.mjs +8 -4
  7. package/esm2020/projects/component-library/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.component.mjs +31 -0
  8. package/esm2020/projects/component-library/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.module.mjs +21 -0
  9. package/esm2020/projects/component-library/lib/atoms/grid/grid.component.mjs +4 -2
  10. package/esm2020/projects/component-library/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.mjs +6 -3
  11. package/esm2020/projects/component-library/public-api.mjs +3 -1
  12. package/esm2020/public-api.mjs +3 -1
  13. package/fesm2015/symphony-talent-component-library-projects-component-library.mjs +62 -7
  14. package/fesm2015/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
  15. package/fesm2015/symphony-talent-component-library.mjs +62 -7
  16. package/fesm2015/symphony-talent-component-library.mjs.map +1 -1
  17. package/fesm2020/symphony-talent-component-library-projects-component-library.mjs +60 -7
  18. package/fesm2020/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
  19. package/fesm2020/symphony-talent-component-library.mjs +60 -7
  20. package/fesm2020/symphony-talent-component-library.mjs.map +1 -1
  21. package/lib/atoms/grid/framework/framework.module.d.ts +2 -1
  22. package/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.component.d.ts +15 -0
  23. package/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.module.d.ts +8 -0
  24. package/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.d.ts +2 -1
  25. package/package.json +1 -1
  26. package/projects/component-library/lib/atoms/grid/framework/framework.module.d.ts +2 -1
  27. package/projects/component-library/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.component.d.ts +15 -0
  28. package/projects/component-library/lib/atoms/grid/framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.module.d.ts +8 -0
  29. package/projects/component-library/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.d.ts +2 -1
  30. package/projects/component-library/public-api.d.ts +2 -0
  31. package/public-api.d.ts +2 -0
@@ -12,6 +12,7 @@ import { GridNoRowsOverlayModule } from './grid-no-rows-overlay/grid-no-rows-ove
12
12
  import { ColoredTextIndicatorModule } from './colored-text-indicator/colored-text-indicator.module';
13
13
  import { StatusIndicatorModule } from './status-indicator/status-indicator.module';
14
14
  import { GridCellClickedOpenNewTabModule } from './grid-cell-clicked-open-new-tab/grid-cell-clicked-open-new-tab.module';
15
+ import { MergeContactClickedOpenModalModule } from './merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.module';
15
16
  import * as i0 from "@angular/core";
16
17
  export class FrameworkModule {
17
18
  }
@@ -28,7 +29,8 @@ FrameworkModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
28
29
  GridNoRowsOverlayModule,
29
30
  ColoredTextIndicatorModule,
30
31
  StatusIndicatorModule,
31
- GridCellClickedOpenNewTabModule] });
32
+ GridCellClickedOpenNewTabModule,
33
+ MergeContactClickedOpenModalModule] });
32
34
  FrameworkModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: FrameworkModule, imports: [[], ContactActivityScoreModule,
33
35
  RelevanceScoreModule,
34
36
  GridToggleCellRendererModule,
@@ -41,7 +43,8 @@ FrameworkModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
41
43
  GridNoRowsOverlayModule,
42
44
  ColoredTextIndicatorModule,
43
45
  StatusIndicatorModule,
44
- GridCellClickedOpenNewTabModule] });
46
+ GridCellClickedOpenNewTabModule,
47
+ MergeContactClickedOpenModalModule] });
45
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: FrameworkModule, decorators: [{
46
49
  type: NgModule,
47
50
  args: [{
@@ -60,8 +63,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
60
63
  GridNoRowsOverlayModule,
61
64
  ColoredTextIndicatorModule,
62
65
  StatusIndicatorModule,
63
- GridCellClickedOpenNewTabModule
66
+ GridCellClickedOpenNewTabModule,
67
+ MergeContactClickedOpenModalModule
64
68
  ],
65
69
  }]
66
70
  }] });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvZ3JpZC9mcmFtZXdvcmsvZnJhbWV3b3JrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdFQUF3RSxDQUFDOztBQW9CekgsTUFBTSxPQUFPLGVBQWU7OzRHQUFmLGVBQWU7NkdBQWYsZUFBZSxZQWZ4QiwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIsOEJBQThCO1FBQzlCLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsMEJBQTBCO1FBQzFCLHFCQUFxQjtRQUNyQiwrQkFBK0I7NkdBR3RCLGVBQWUsWUFqQmpCLEVBQUUsRUFFVCwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIsOEJBQThCO1FBQzlCLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsMEJBQTBCO1FBQzFCLHFCQUFxQjtRQUNyQiwrQkFBK0I7MkZBR3RCLGVBQWU7a0JBbkIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUU7d0JBQ1AsMEJBQTBCO3dCQUMxQixvQkFBb0I7d0JBQ3BCLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6Qix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsdUJBQXVCO3dCQUN2QiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsK0JBQStCO3FCQUNoQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250YWN0QWN0aXZpdHlTY29yZU1vZHVsZSB9IGZyb20gJy4vY29udGFjdC1hY3Rpdml0eS1zY29yZS9jb250YWN0LWFjdGl2aXR5LXNjb3JlLm1vZHVsZSc7XG5pbXBvcnQgeyBFdmVudFNldHRpbmdzTW9yZU9wdGlvbnNNb2R1bGUgfSBmcm9tICcuL2V2ZW50LXNldHRpbmdzLW1vcmUtb3B0aW9ucy9ldmVudC1zZXR0aW5ncy1tb3JlLW9wdGlvbnMubW9kdWxlJztcbmltcG9ydCB7IEdyaWRUb2dnbGVDZWxsUmVuZGVyZXJNb2R1bGUgfSBmcm9tICcuL2dyaWQtdG9nZ2xlLWNlbGwtcmVuZGVyZXIvZ3JpZC10b2dnbGUtY2VsbC1yZW5kZXJlci5tb2R1bGUnO1xuaW1wb3J0IHsgUmVsZXZhbmNlU2NvcmVNb2R1bGUgfSBmcm9tICcuL3JlbGV2YW5jZS1zY29yZS9yZWxldmFuY2Utc2NvcmUuY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBHcmlkQ2VsbExvYWRlck1vZHVsZSB9IGZyb20gJy4vZ3JpZC1jZWxsLWxvYWRlci9ncmlkLWNlbGwtbG9hZGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBBZHZlcnRpc2VkSm9ic0Nvc3RNb2R1bGUgfSBmcm9tICcuL2FkdmVydGlzZWQtam9icy1jb3N0L2FkdmVydGlzZWQtam9icy1jb3N0Lm1vZHVsZSc7XG5pbXBvcnQgeyBPdmVyZmxvd1RleHRUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi9vdmVyZmxvdy10ZXh0LXRvb2x0aXAvb3ZlcmZsb3ctdGV4dC10b29sdGlwLm1vZHVsZSc7XG5pbXBvcnQgeyBHcmlkQ2VsbENsaWNrYWJsZU1vZHVsZSB9IGZyb20gJy4vZ3JpZC1jZWxsLWNsaWNrYWJsZS9ncmlkLWNlbGwtY2xpY2thYmxlLm1vZHVsZSc7XG5pbXBvcnQgeyBPdmVyZmxvd1RleHRNb2R1bGUgfSBmcm9tICcuL292ZXJmbG93LXRleHQvb3ZlcmZsb3ctdGV4dC5tb2R1bGUnO1xuaW1wb3J0IHsgR3JpZE5vUm93c092ZXJsYXlNb2R1bGUgfSBmcm9tICcuL2dyaWQtbm8tcm93cy1vdmVybGF5L2dyaWQtbm8tcm93cy1vdmVybGF5Lm1vZHVsZSc7XG5pbXBvcnQgeyBDb2xvcmVkVGV4dEluZGljYXRvck1vZHVsZSB9IGZyb20gJy4vY29sb3JlZC10ZXh0LWluZGljYXRvci9jb2xvcmVkLXRleHQtaW5kaWNhdG9yLm1vZHVsZSc7XG5pbXBvcnQgeyBTdGF0dXNJbmRpY2F0b3JNb2R1bGUgfSBmcm9tICcuL3N0YXR1cy1pbmRpY2F0b3Ivc3RhdHVzLWluZGljYXRvci5tb2R1bGUnO1xuaW1wb3J0IHsgR3JpZENlbGxDbGlja2VkT3Blbk5ld1RhYk1vZHVsZSB9IGZyb20gJy4vZ3JpZC1jZWxsLWNsaWNrZWQtb3Blbi1uZXctdGFiL2dyaWQtY2VsbC1jbGlja2VkLW9wZW4tbmV3LXRhYi5tb2R1bGUnO1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtcbiAgICBDb250YWN0QWN0aXZpdHlTY29yZU1vZHVsZSxcbiAgICBSZWxldmFuY2VTY29yZU1vZHVsZSxcbiAgICBHcmlkVG9nZ2xlQ2VsbFJlbmRlcmVyTW9kdWxlLFxuICAgIEdyaWRDZWxsTG9hZGVyTW9kdWxlLFxuICAgIEV2ZW50U2V0dGluZ3NNb3JlT3B0aW9uc01vZHVsZSxcbiAgICBBZHZlcnRpc2VkSm9ic0Nvc3RNb2R1bGUsXG4gICAgT3ZlcmZsb3dUZXh0VG9vbHRpcE1vZHVsZSxcbiAgICBHcmlkQ2VsbENsaWNrYWJsZU1vZHVsZSxcbiAgICBPdmVyZmxvd1RleHRNb2R1bGUsXG4gICAgR3JpZE5vUm93c092ZXJsYXlNb2R1bGUsXG4gICAgQ29sb3JlZFRleHRJbmRpY2F0b3JNb2R1bGUsXG4gICAgU3RhdHVzSW5kaWNhdG9yTW9kdWxlLFxuICAgIEdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnJhbWV3b3JrTW9kdWxlIHt9XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvZ3JpZC9mcmFtZXdvcmsvZnJhbWV3b3JrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3pILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDRFQUE0RSxDQUFDOztBQXFCaEksTUFBTSxPQUFPLGVBQWU7OzRHQUFmLGVBQWU7NkdBQWYsZUFBZSxZQWhCeEIsMEJBQTBCO1FBQzFCLG9CQUFvQjtRQUNwQiw0QkFBNEI7UUFDNUIsb0JBQW9CO1FBQ3BCLDhCQUE4QjtRQUM5Qix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUN2QixrQkFBa0I7UUFDbEIsdUJBQXVCO1FBQ3ZCLDBCQUEwQjtRQUMxQixxQkFBcUI7UUFDckIsK0JBQStCO1FBQy9CLGtDQUFrQzs2R0FHekIsZUFBZSxZQWxCakIsRUFBRSxFQUVULDBCQUEwQjtRQUMxQixvQkFBb0I7UUFDcEIsNEJBQTRCO1FBQzVCLG9CQUFvQjtRQUNwQiw4QkFBOEI7UUFDOUIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsa0JBQWtCO1FBQ2xCLHVCQUF1QjtRQUN2QiwwQkFBMEI7UUFDMUIscUJBQXFCO1FBQ3JCLCtCQUErQjtRQUMvQixrQ0FBa0M7MkZBR3pCLGVBQWU7a0JBcEIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUU7d0JBQ1AsMEJBQTBCO3dCQUMxQixvQkFBb0I7d0JBQ3BCLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6Qix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsdUJBQXVCO3dCQUN2QiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsK0JBQStCO3dCQUMvQixrQ0FBa0M7cUJBQ25DO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRhY3RBY3Rpdml0eVNjb3JlTW9kdWxlIH0gZnJvbSAnLi9jb250YWN0LWFjdGl2aXR5LXNjb3JlL2NvbnRhY3QtYWN0aXZpdHktc2NvcmUubW9kdWxlJztcbmltcG9ydCB7IEV2ZW50U2V0dGluZ3NNb3JlT3B0aW9uc01vZHVsZSB9IGZyb20gJy4vZXZlbnQtc2V0dGluZ3MtbW9yZS1vcHRpb25zL2V2ZW50LXNldHRpbmdzLW1vcmUtb3B0aW9ucy5tb2R1bGUnO1xuaW1wb3J0IHsgR3JpZFRvZ2dsZUNlbGxSZW5kZXJlck1vZHVsZSB9IGZyb20gJy4vZ3JpZC10b2dnbGUtY2VsbC1yZW5kZXJlci9ncmlkLXRvZ2dsZS1jZWxsLXJlbmRlcmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBSZWxldmFuY2VTY29yZU1vZHVsZSB9IGZyb20gJy4vcmVsZXZhbmNlLXNjb3JlL3JlbGV2YW5jZS1zY29yZS5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IEdyaWRDZWxsTG9hZGVyTW9kdWxlIH0gZnJvbSAnLi9ncmlkLWNlbGwtbG9hZGVyL2dyaWQtY2VsbC1sb2FkZXIubW9kdWxlJztcbmltcG9ydCB7IEFkdmVydGlzZWRKb2JzQ29zdE1vZHVsZSB9IGZyb20gJy4vYWR2ZXJ0aXNlZC1qb2JzLWNvc3QvYWR2ZXJ0aXNlZC1qb2JzLWNvc3QubW9kdWxlJztcbmltcG9ydCB7IE92ZXJmbG93VGV4dFRvb2x0aXBNb2R1bGUgfSBmcm9tICcuL292ZXJmbG93LXRleHQtdG9vbHRpcC9vdmVyZmxvdy10ZXh0LXRvb2x0aXAubW9kdWxlJztcbmltcG9ydCB7IEdyaWRDZWxsQ2xpY2thYmxlTW9kdWxlIH0gZnJvbSAnLi9ncmlkLWNlbGwtY2xpY2thYmxlL2dyaWQtY2VsbC1jbGlja2FibGUubW9kdWxlJztcbmltcG9ydCB7IE92ZXJmbG93VGV4dE1vZHVsZSB9IGZyb20gJy4vb3ZlcmZsb3ctdGV4dC9vdmVyZmxvdy10ZXh0Lm1vZHVsZSc7XG5pbXBvcnQgeyBHcmlkTm9Sb3dzT3ZlcmxheU1vZHVsZSB9IGZyb20gJy4vZ3JpZC1uby1yb3dzLW92ZXJsYXkvZ3JpZC1uby1yb3dzLW92ZXJsYXkubW9kdWxlJztcbmltcG9ydCB7IENvbG9yZWRUZXh0SW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnLi9jb2xvcmVkLXRleHQtaW5kaWNhdG9yL2NvbG9yZWQtdGV4dC1pbmRpY2F0b3IubW9kdWxlJztcbmltcG9ydCB7IFN0YXR1c0luZGljYXRvck1vZHVsZSB9IGZyb20gJy4vc3RhdHVzLWluZGljYXRvci9zdGF0dXMtaW5kaWNhdG9yLm1vZHVsZSc7XG5pbXBvcnQgeyBHcmlkQ2VsbENsaWNrZWRPcGVuTmV3VGFiTW9kdWxlIH0gZnJvbSAnLi9ncmlkLWNlbGwtY2xpY2tlZC1vcGVuLW5ldy10YWIvZ3JpZC1jZWxsLWNsaWNrZWQtb3Blbi1uZXctdGFiLm1vZHVsZSc7XG5pbXBvcnQgeyBNZXJnZUNvbnRhY3RDbGlja2VkT3Blbk1vZGFsTW9kdWxlIH0gZnJvbSAnLi9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC5tb2R1bGUnO1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtcbiAgICBDb250YWN0QWN0aXZpdHlTY29yZU1vZHVsZSxcbiAgICBSZWxldmFuY2VTY29yZU1vZHVsZSxcbiAgICBHcmlkVG9nZ2xlQ2VsbFJlbmRlcmVyTW9kdWxlLFxuICAgIEdyaWRDZWxsTG9hZGVyTW9kdWxlLFxuICAgIEV2ZW50U2V0dGluZ3NNb3JlT3B0aW9uc01vZHVsZSxcbiAgICBBZHZlcnRpc2VkSm9ic0Nvc3RNb2R1bGUsXG4gICAgT3ZlcmZsb3dUZXh0VG9vbHRpcE1vZHVsZSxcbiAgICBHcmlkQ2VsbENsaWNrYWJsZU1vZHVsZSxcbiAgICBPdmVyZmxvd1RleHRNb2R1bGUsXG4gICAgR3JpZE5vUm93c092ZXJsYXlNb2R1bGUsXG4gICAgQ29sb3JlZFRleHRJbmRpY2F0b3JNb2R1bGUsXG4gICAgU3RhdHVzSW5kaWNhdG9yTW9kdWxlLFxuICAgIEdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJNb2R1bGUsXG4gICAgTWVyZ2VDb250YWN0Q2xpY2tlZE9wZW5Nb2RhbE1vZHVsZVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGcmFtZXdvcmtNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { Component, EventEmitter, Output, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class MergeContactClickedOpenModalComponent {
4
+ constructor() {
5
+ this.enableMergeButton = false;
6
+ this.clicked = new EventEmitter();
7
+ }
8
+ onClick() {
9
+ if (!this.enableMergeButton) {
10
+ this.clicked.emit(this.params?.data);
11
+ }
12
+ }
13
+ agInit(params) {
14
+ this.contact = params.data;
15
+ if (this.contact?.hasDuplicate === true) {
16
+ this.enableMergeButton = true;
17
+ }
18
+ }
19
+ refresh() {
20
+ return false;
21
+ }
22
+ }
23
+ MergeContactClickedOpenModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
+ MergeContactClickedOpenModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: MergeContactClickedOpenModalComponent, selector: "symphony-merge-contact-clicked-open-modal", outputs: { clicked: "clicked" }, ngImport: i0, template: "<button\n id=\"merge-contact-open-modal\"\n class=\"icon-merge-contact-clicked-open-modal sfx-font-bold sfx-cursor-pointer si-merge\"\n [disabled]=\"!enableMergeButton\"\n (click)=\"onClick()\"\n aria-label=\"Merge Contact\"\n type=\"button\"\n [title]=\"!enableMergeButton ? 'No Duplicates Exist' : 'Merge Duplicates'\"\n>\n</button>", styles: [".icon-merge-contact-clicked-open-modal{background:none;border:none;padding:0;margin:0;display:inline-block;align-items:center;font-size:14px;top:2px;position:relative;color:#334860;outline:none;cursor:pointer}button:disabled.icon-merge-contact-clicked-open-modal{cursor:not-allowed;opacity:70%}\n"], encapsulation: i0.ViewEncapsulation.None });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'symphony-merge-contact-clicked-open-modal', encapsulation: ViewEncapsulation.None, template: "<button\n id=\"merge-contact-open-modal\"\n class=\"icon-merge-contact-clicked-open-modal sfx-font-bold sfx-cursor-pointer si-merge\"\n [disabled]=\"!enableMergeButton\"\n (click)=\"onClick()\"\n aria-label=\"Merge Contact\"\n type=\"button\"\n [title]=\"!enableMergeButton ? 'No Duplicates Exist' : 'Merge Duplicates'\"\n>\n</button>", styles: [".icon-merge-contact-clicked-open-modal{background:none;border:none;padding:0;margin:0;display:inline-block;align-items:center;font-size:14px;top:2px;position:relative;color:#334860;outline:none;cursor:pointer}button:disabled.icon-merge-contact-clicked-open-modal{cursor:not-allowed;opacity:70%}\n"] }]
28
+ }], propDecorators: { clicked: [{
29
+ type: Output
30
+ }] } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9hdG9tcy9ncmlkL2ZyYW1ld29yay9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2dyaWQvZnJhbWV3b3JrL21lcmdlLWNvbnRhY3QtY2xpY2tlZC1vcGVuLW1vZGFsL21lcmdlLWNvbnRhY3QtY2xpY2tlZC1vcGVuLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFTLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVMUYsTUFBTSxPQUFPLHFDQUFxQztJQU5sRDtRQVNTLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNoQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQWtCaEQ7SUFoQkMsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsTUFBMkI7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzNCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7a0lBckJVLHFDQUFxQztzSEFBckMscUNBQXFDLGtIQ1ZsRCx1VkFTUzsyRkRDSSxxQ0FBcUM7a0JBTmpELFNBQVM7K0JBQ0UsMkNBQTJDLGlCQUd0QyxpQkFBaUIsQ0FBQyxJQUFJOzhCQU0zQixPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHsgSUNlbGxSZW5kZXJlclBhcmFtcyB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktbWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIE1lcmdlQ29udGFjdENsaWNrZWRPcGVuTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAge1xuICBwdWJsaWMgcGFyYW1zOiBhbnk7XG4gIHB1YmxpYyBjb250YWN0OiBhbnk7XG4gIHB1YmxpYyBlbmFibGVNZXJnZUJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBcbiAgb25DbGljaygpIHtcbiAgICBpZiAoIXRoaXMuZW5hYmxlTWVyZ2VCdXR0b24pIHtcbiAgICAgIHRoaXMuY2xpY2tlZC5lbWl0KHRoaXMucGFyYW1zPy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBhZ0luaXQocGFyYW1zOiBJQ2VsbFJlbmRlcmVyUGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy5jb250YWN0ID0gcGFyYW1zLmRhdGE7XG4gICAgaWYgKHRoaXMuY29udGFjdD8uaGFzRHVwbGljYXRlID09PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuZW5hYmxlTWVyZ2VCdXR0b24gPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCI8YnV0dG9uXG4gIGlkPVwibWVyZ2UtY29udGFjdC1vcGVuLW1vZGFsXCJcbiAgY2xhc3M9XCJpY29uLW1lcmdlLWNvbnRhY3QtY2xpY2tlZC1vcGVuLW1vZGFsIHNmeC1mb250LWJvbGQgc2Z4LWN1cnNvci1wb2ludGVyIHNpLW1lcmdlXCJcbiAgW2Rpc2FibGVkXT1cIiFlbmFibGVNZXJnZUJ1dHRvblwiXG4gIChjbGljayk9XCJvbkNsaWNrKClcIlxuICBhcmlhLWxhYmVsPVwiTWVyZ2UgQ29udGFjdFwiXG4gIHR5cGU9XCJidXR0b25cIlxuICBbdGl0bGVdPVwiIWVuYWJsZU1lcmdlQnV0dG9uID8gJ05vIER1cGxpY2F0ZXMgRXhpc3QnIDogJ01lcmdlIER1cGxpY2F0ZXMnXCJcbj5cbjwvYnV0dG9uPiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MergeContactClickedOpenModalComponent } from './merge-contact-clicked-open-modal.component';
4
+ import * as i0 from "@angular/core";
5
+ export class MergeContactClickedOpenModalModule {
6
+ }
7
+ MergeContactClickedOpenModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ MergeContactClickedOpenModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalModule, declarations: [MergeContactClickedOpenModalComponent], imports: [CommonModule] });
9
+ MergeContactClickedOpenModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalModule, imports: [[
10
+ CommonModule
11
+ ]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: MergeContactClickedOpenModalModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [MergeContactClickedOpenModalComponent],
16
+ imports: [
17
+ CommonModule
18
+ ]
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9hdG9tcy9ncmlkL2ZyYW1ld29yay9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC9tZXJnZS1jb250YWN0LWNsaWNrZWQtb3Blbi1tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBVXJHLE1BQU0sT0FBTyxrQ0FBa0M7OytIQUFsQyxrQ0FBa0M7Z0lBQWxDLGtDQUFrQyxpQkFMOUIscUNBQXFDLGFBRWxELFlBQVk7Z0lBR0gsa0NBQWtDLFlBSnBDO1lBQ1AsWUFBWTtTQUNiOzJGQUVVLGtDQUFrQztrQkFOOUMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxxQ0FBcUMsQ0FBQztvQkFDckQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1lcmdlQ29udGFjdENsaWNrZWRPcGVuTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL21lcmdlLWNvbnRhY3QtY2xpY2tlZC1vcGVuLW1vZGFsLmNvbXBvbmVudCc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtNZXJnZUNvbnRhY3RDbGlja2VkT3Blbk1vZGFsQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1lcmdlQ29udGFjdENsaWNrZWRPcGVuTW9kYWxNb2R1bGUgeyB9XG4iXX0=
@@ -12,6 +12,7 @@ import { OverflowTextTooltipComponent } from './framework/overflow-text-tooltip/
12
12
  import { ColoredTextIndicatorComponent } from './framework/colored-text-indicator/colored-text-indicator.component';
13
13
  import { StatusIndicatorComponent } from './framework/status-indicator/status-indicator.component';
14
14
  import { GridCellClickedOpenNewTabComponent } from './framework/grid-cell-clicked-open-new-tab/grid-cell-clicked-open-new-tab.component';
15
+ import { MergeContactClickedOpenModalComponent } from './framework/merge-contact-clicked-open-modal/merge-contact-clicked-open-modal.component';
15
16
  import * as i0 from "@angular/core";
16
17
  import * as i1 from "ag-grid-angular";
17
18
  import * as i2 from "@angular/common";
@@ -52,7 +53,8 @@ export class GridComponent {
52
53
  noRowsOverlay: GridNoRowsOverlayComponent,
53
54
  coloredTextIndicator: ColoredTextIndicatorComponent,
54
55
  statusIndicatorComponent: StatusIndicatorComponent,
55
- gridCellClickedOpenNewTabComponent: GridCellClickedOpenNewTabComponent
56
+ gridCellClickedOpenNewTabComponent: GridCellClickedOpenNewTabComponent,
57
+ mergeContactClickedOpenModalComponent: MergeContactClickedOpenModalComponent
56
58
  };
57
59
  }
58
60
  onGridReady(gridReadyEvent) {
@@ -112,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
112
114
  }], cellClick: [{
113
115
  type: Output
114
116
  }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2dyaWQvZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2dyaWQvZ3JpZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQVV2QixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNsSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQztBQUM1SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVoRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUUzRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsa0NBQWtD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c0JBRFYsTUFBTTtnQkFHUCxTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDZWxsQ2xpY2tlZEV2ZW50LFxuICBDb2xEZWYsXG4gIEdldERhdGFQYXRoLFxuICBHcmlkQXBpLFxuICBHcmlkT3B0aW9ucyxcbiAgR3JpZFJlYWR5RXZlbnQsXG4gIFNvcnRDaGFuZ2VkRXZlbnQsXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IENvbnRhY3RBY3Rpdml0eVNjb3JlQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvY29udGFjdC1hY3Rpdml0eS1zY29yZS9jb250YWN0LWFjdGl2aXR5LXNjb3JlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdmVudFNldHRpbmdzTW9yZU9wdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9ldmVudC1zZXR0aW5ncy1tb3JlLW9wdGlvbnMvZXZlbnQtc2V0dGluZ3MtbW9yZS1vcHRpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkVG9nZ2xlQ2VsbFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvZ3JpZC10b2dnbGUtY2VsbC1yZW5kZXJlci9ncmlkLXRvZ2dsZS1jZWxsLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWxldmFuY2VTY29yZUNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL3JlbGV2YW5jZS1zY29yZS9yZWxldmFuY2Utc2NvcmUuY29tcG9uZW50JztcbmltcG9ydCB7IGdyaWRUeXBlIH0gZnJvbSAnLi9ncmlkLm1vZGVsJztcbmltcG9ydCB7IEdyaWRMb2FkaW5nQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2dyaWQtY2VsbC1sb2FkZXIvZ3JpZC1jZWxsLWxvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWR2ZXJ0aXNlZEpvYnNDb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvYWR2ZXJ0aXNlZC1qb2JzLWNvc3QvYWR2ZXJ0aXNlZC1qb2JzLWNvc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE92ZXJmbG93VGV4dENvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL292ZXJmbG93LXRleHQvb3ZlcmZsb3ctdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZENlbGxDbGlja2FibGVDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9ncmlkLWNlbGwtY2xpY2thYmxlL2dyaWQtY2VsbC1jbGlja2FibGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdldFNlcnZlclNpZGVHcm91cEtleSwgSXNTZXJ2ZXJTaWRlR3JvdXAgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eS9kaXN0L2xpYi9lbnRpdGllcy9ncmlkT3B0aW9ucyc7XG5pbXBvcnQgeyBHcmlkTm9Sb3dzT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2dyaWQtbm8tcm93cy1vdmVybGF5L2dyaWQtbm8tcm93cy1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdmVyZmxvd1RleHRUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvb3ZlcmZsb3ctdGV4dC10b29sdGlwL292ZXJmbG93LXRleHQtdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sb3JlZFRleHRJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9jb2xvcmVkLXRleHQtaW5kaWNhdG9yL2NvbG9yZWQtdGV4dC1pbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFN0YXR1c0luZGljYXRvckNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL3N0YXR1cy1pbmRpY2F0b3Ivc3RhdHVzLWluZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZENlbGxDbGlja2VkT3Blbk5ld1RhYkNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2dyaWQtY2VsbC1jbGlja2VkLW9wZW4tbmV3LXRhYi9ncmlkLWNlbGwtY2xpY2tlZC1vcGVuLW5ldy10YWIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29sdW1uRGVmczogQ29sRGVmW107XG4gIEBJbnB1dCgpIGRlZmF1bHRDb2xEZWY6IGFueTtcbiAgQElucHV0KCkgcm93RGF0YTogYW55W107XG4gIEBJbnB1dCgpIG9uR3JpZFJlYWR5RnVuY3Rpb246IGFueTtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDIwO1xuICBASW5wdXQoKSByb3dNb2RlbFR5cGU6IGdyaWRUeXBlO1xuICBASW5wdXQoKSBzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJvd1NlbGVjdGlvbk1vZGU6IHN0cmluZyA9ICdzaW5nbGUnO1xuICBASW5wdXQoKSBoYXNOb1BhZGRpbmdsZWZ0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNHcmlkQ29sUGlubmVkTGVmdD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzU2VydmVyU2lkZUdyb3VwOiBJc1NlcnZlclNpZGVHcm91cDtcbiAgQElucHV0KCkgZ2V0U2VydmVyU2lkZUdyb3VwS2V5OiBHZXRTZXJ2ZXJTaWRlR3JvdXBLZXk7XG4gIEBJbnB1dCgpIGF1dG9Hcm91cENvbHVtbkRlZjogQ29sRGVmO1xuICBASW5wdXQoKSB0cmVlRGF0YSA9IGZhbHNlO1xuICBASW5wdXQoKSBnZXREYXRhUGF0aDogR2V0RGF0YVBhdGg7XG4gIEBJbnB1dCgpIHJvd0NsYXNzUnVsZXM7XG4gIEBJbnB1dCgpIGdyaWRDb250ZXh0TWVudT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGhhc1NvcnRpbmc/OiBib29sZWFuO1xuICBcbiAgcHVibGljIG5vUm93c092ZXJsYXlUZW1wbGF0ZSA9IFwibm9Sb3dzT3ZlcmxheVwiO1xuICBwdWJsaWMgZ2V0Um93SGVpZ2h0OiAoKSA9PiBudW1iZXI7XG4gIHB1YmxpYyBsb2FkaW5nQ2VsbFJlbmRlcmVyOiBhbnk7XG4gIHB1YmxpYyByb3dIZWlnaHRQYWdlID0gODA7XG4gIHB1YmxpYyBncmlkSGVpZ2h0ID0gMTAwO1xuICBwdWJsaWMgZ3JpZEFwaTogR3JpZEFwaTtcbiAgcHVibGljIGNhY2hlQmxvY2tTaXplID0gdGhpcy5wYWdlU2l6ZTtcbiAgcHVibGljIGZyYW1ld29ya0NvbXBvbmVudHMgPSB0aGlzLmdldEZyYW1ld29ya0NvbXBvbmVudHMoKTtcbiAgcHVibGljIGdyaWRPcHRpb25zOiBHcmlkT3B0aW9ucztcbiAgQE91dHB1dCgpXG4gIHNvcnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U29ydENoYW5nZWRFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBjZWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxDZWxsQ2xpY2tlZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmdldFJvd0hlaWdodCA9ICgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnJvd0hlaWdodFBhZ2U7XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubG9hZGluZ0NlbGxSZW5kZXJlciA9ICdsb2FkaW5nQ2VsbFJlbmRlcmVyJztcbiAgfVxuXG4gIHVwZGF0ZUdyaWRGaWx0ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5ncmlkQXBpLm9uRmlsdGVyQ2hhbmdlZCgpO1xuICB9XG5cbiAgZ2V0RnJhbWV3b3JrQ29tcG9uZW50cygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjb250YWN0QWN0aXZpdHlTY29yZTogQ29udGFjdEFjdGl2aXR5U2NvcmVDb21wb25lbnQsXG4gICAgICBmaXRTY29yZTogUmVsZXZhbmNlU2NvcmVDb21wb25lbnQsXG4gICAgICBncmlkVG9nZ2xlOiBHcmlkVG9nZ2xlQ2VsbFJlbmRlcmVyQ29tcG9uZW50LFxuICAgICAgbW9yZUFjdGlvbnM6IEV2ZW50U2V0dGluZ3NNb3JlT3B0aW9uc0NvbXBvbmVudCxcbiAgICAgIGxvYWRpbmdDZWxsUmVuZGVyZXI6IEdyaWRMb2FkaW5nQ2VsbENvbXBvbmVudCxcbiAgICAgIGFkdmVydGlzZWRKb2JzQ29zdDogQWR2ZXJ0aXNlZEpvYnNDb3N0Q29tcG9uZW50LFxuICAgICAgb3ZlcmZsb3dUZXh0OiBPdmVyZmxvd1RleHRDb21wb25lbnQsXG4gICAgICBvdmVyZmxvd1RleHRUb29sdGlwOiBPdmVyZmxvd1RleHRUb29sdGlwQ29tcG9uZW50LFxuICAgICAgZ3JpZENlbGxDbGlja2FibGU6IEdyaWRDZWxsQ2xpY2thYmxlQ29tcG9uZW50LFxuICAgICAgbm9Sb3dzT3ZlcmxheTogR3JpZE5vUm93c092ZXJsYXlDb21wb25lbnQsXG4gICAgICBjb2xvcmVkVGV4dEluZGljYXRvcjogQ29sb3JlZFRleHRJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICBzdGF0dXNJbmRpY2F0b3JDb21wb25lbnQ6IFN0YXR1c0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgIGdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJDb21wb25lbnQ6IEdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJDb21wb25lbnRcbiAgICB9O1xuICB9XG5cbiAgb25HcmlkUmVhZHkoZ3JpZFJlYWR5RXZlbnQ6IEdyaWRSZWFkeUV2ZW50KSB7XG4gICAgdGhpcy5ncmlkQXBpID0gZ3JpZFJlYWR5RXZlbnQuYXBpO1xuICAgIHRoaXMub25HcmlkUmVhZHlGdW5jdGlvbihncmlkUmVhZHlFdmVudCk7XG4gIH1cblxuICBvblNvcnRDaGFuZ2VkKGV2ZW50OiBTb3J0Q2hhbmdlZEV2ZW50KSB7XG4gICAgdGhpcy5zb3J0Q2hhbmdlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uQ2VsbENsaWNrKGV2ZW50OiBDZWxsQ2xpY2tlZEV2ZW50KSB7XG4gICAgdGhpcy5jZWxsQ2xpY2suZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxhZy1ncmlkLWFuZ3VsYXJcbiAgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmVcIlxuICBbbmdDbGFzc109XCJ7IG5vUGFkZGluZ0xlZnQ6IGhhc05vUGFkZGluZ2xlZnQsICdncmlkUGlubmVkTGVmdCc6IGlzR3JpZENvbFBpbm5lZExlZnQsJ3NmeC1saWItZ2lyZC1kcm9wZG93bicgOmdyaWRDb250ZXh0TWVudSwgJ3NmeC1ncmlkLWhhc1NvcnRpbmcnIDpoYXNTb3J0aW5nIH1cIlxuICBzdHlsZT1cIndpZHRoOiAxMDAlXCJcbiAgW3N0eWxlLmhlaWdodC52aF09XCJncmlkSGVpZ2h0XCJcbiAgW2dyaWRPcHRpb25zXT1cImdyaWRPcHRpb25zXCJcbiAgW2FwcGx5Q29sdW1uRGVmT3JkZXJdPVwidHJ1ZVwiXG4gIFtyb3dNb2RlbFR5cGVdPVwicm93TW9kZWxUeXBlXCJcbiAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiXG4gIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIlxuICBbZnJhbWV3b3JrQ29tcG9uZW50c109XCJmcmFtZXdvcmtDb21wb25lbnRzXCJcbiAgW2dldFJvd0hlaWdodF09XCJnZXRSb3dIZWlnaHRcIlxuICBbcGFnaW5hdGlvblBhZ2VTaXplXT1cInBhZ2VTaXplXCJcbiAgW2NhY2hlQmxvY2tTaXplXT1cImNhY2hlQmxvY2tTaXplXCJcbiAgW3Jvd0RhdGFdPVwicm93RGF0YVwiXG4gIFttYXhDb25jdXJyZW50RGF0YXNvdXJjZVJlcXVlc3RzXT1cIjFcIlxuICBbbG9hZGluZ0NlbGxSZW5kZXJlcl09XCJsb2FkaW5nQ2VsbFJlbmRlcmVyXCJcbiAgW3N1cHByZXNzUm93Q2xpY2tTZWxlY3Rpb25dPVwic3VwcHJlc3NSb3dDbGlja1NlbGVjdGlvblwiXG4gIFtyb3dTZWxlY3Rpb25dPVwicm93U2VsZWN0aW9uTW9kZVwiXG4gIFtlbmFibGVCcm93c2VyVG9vbHRpcHNdPVwidHJ1ZVwiXG4gIFtub1Jvd3NPdmVybGF5Q29tcG9uZW50XT1cIm5vUm93c092ZXJsYXlUZW1wbGF0ZVwiXG4gIFtzdXBwcmVzc0NvbnRleHRNZW51XT1cInRydWVcIlxuICBbdHJlZURhdGFdPVwidHJlZURhdGFcIlxuICBbaXNTZXJ2ZXJTaWRlR3JvdXBdPVwiaXNTZXJ2ZXJTaWRlR3JvdXBcIlxuICBbZ2V0U2VydmVyU2lkZUdyb3VwS2V5XT1cImdldFNlcnZlclNpZGVHcm91cEtleVwiXG4gIFthdXRvR3JvdXBDb2x1bW5EZWZdPVwiYXV0b0dyb3VwQ29sdW1uRGVmXCJcbiAgW3NlcnZlclNpZGVTb3J0aW5nQWx3YXlzUmVzZXRzXT1cInRydWVcIlxuICBbZ2V0RGF0YVBhdGhdPVwiZ2V0RGF0YVBhdGhcIlxuICBbcm93Q2xhc3NSdWxlc109XCJyb3dDbGFzc1J1bGVzXCJcbiAgKGdyaWRSZWFkeSk9XCJvbkdyaWRSZWFkeSgkZXZlbnQpXCJcbiAgKHNvcnRDaGFuZ2VkKT1cIm9uU29ydENoYW5nZWQoJGV2ZW50KVwiXG4gIChjZWxsQ2xpY2tlZCk9XCJvbkNlbGxDbGljaygkZXZlbnQpXCJcbj5cbjwvYWctZ3JpZC1hbmd1bGFyPlxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2dyaWQvZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2dyaWQvZ3JpZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQVV2QixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNsSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQztBQUM1SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVoRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUUzRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsa0NBQWtD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O3NCQUFyQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFZTixXQUFXO3NCQURWLE1BQU07Z0JBR1AsU0FBUztzQkFEUixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ2VsbENsaWNrZWRFdmVudCxcbiAgQ29sRGVmLFxuICBHZXREYXRhUGF0aCxcbiAgR3JpZEFwaSxcbiAgR3JpZE9wdGlvbnMsXG4gIEdyaWRSZWFkeUV2ZW50LFxuICBTb3J0Q2hhbmdlZEV2ZW50LFxufSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBDb250YWN0QWN0aXZpdHlTY29yZUNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2NvbnRhY3QtYWN0aXZpdHktc2NvcmUvY29udGFjdC1hY3Rpdml0eS1zY29yZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXZlbnRTZXR0aW5nc01vcmVPcHRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvZXZlbnQtc2V0dGluZ3MtbW9yZS1vcHRpb25zL2V2ZW50LXNldHRpbmdzLW1vcmUtb3B0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZFRvZ2dsZUNlbGxSZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2dyaWQtdG9nZ2xlLWNlbGwtcmVuZGVyZXIvZ3JpZC10b2dnbGUtY2VsbC1yZW5kZXJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVsZXZhbmNlU2NvcmVDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9yZWxldmFuY2Utc2NvcmUvcmVsZXZhbmNlLXNjb3JlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBncmlkVHlwZSB9IGZyb20gJy4vZ3JpZC5tb2RlbCc7XG5pbXBvcnQgeyBHcmlkTG9hZGluZ0NlbGxDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9ncmlkLWNlbGwtbG9hZGVyL2dyaWQtY2VsbC1sb2FkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFkdmVydGlzZWRKb2JzQ29zdENvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL2FkdmVydGlzZWQtam9icy1jb3N0L2FkdmVydGlzZWQtam9icy1jb3N0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdmVyZmxvd1RleHRDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9vdmVyZmxvdy10ZXh0L292ZXJmbG93LXRleHQuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRDZWxsQ2xpY2thYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvZ3JpZC1jZWxsLWNsaWNrYWJsZS9ncmlkLWNlbGwtY2xpY2thYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHZXRTZXJ2ZXJTaWRlR3JvdXBLZXksIElzU2VydmVyU2lkZUdyb3VwIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9saWIvZW50aXRpZXMvZ3JpZE9wdGlvbnMnO1xuaW1wb3J0IHsgR3JpZE5vUm93c092ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9ncmlkLW5vLXJvd3Mtb3ZlcmxheS9ncmlkLW5vLXJvd3Mtb3ZlcmxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3ZlcmZsb3dUZXh0VG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vZnJhbWV3b3JrL292ZXJmbG93LXRleHQtdG9vbHRpcC9vdmVyZmxvdy10ZXh0LXRvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IENvbG9yZWRUZXh0SW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvY29sb3JlZC10ZXh0LWluZGljYXRvci9jb2xvcmVkLXRleHQtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdGF0dXNJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9zdGF0dXMtaW5kaWNhdG9yL3N0YXR1cy1pbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJDb21wb25lbnQgfSBmcm9tICcuL2ZyYW1ld29yay9ncmlkLWNlbGwtY2xpY2tlZC1vcGVuLW5ldy10YWIvZ3JpZC1jZWxsLWNsaWNrZWQtb3Blbi1uZXctdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZXJnZUNvbnRhY3RDbGlja2VkT3Blbk1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9mcmFtZXdvcmsvbWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwvbWVyZ2UtY29udGFjdC1jbGlja2VkLW9wZW4tbW9kYWwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29sdW1uRGVmczogQ29sRGVmW107XG4gIEBJbnB1dCgpIGRlZmF1bHRDb2xEZWY6IGFueTtcbiAgQElucHV0KCkgcm93RGF0YTogYW55W107XG4gIEBJbnB1dCgpIG9uR3JpZFJlYWR5RnVuY3Rpb246IGFueTtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDIwO1xuICBASW5wdXQoKSByb3dNb2RlbFR5cGU6IGdyaWRUeXBlO1xuICBASW5wdXQoKSBzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJvd1NlbGVjdGlvbk1vZGU6IHN0cmluZyA9ICdzaW5nbGUnO1xuICBASW5wdXQoKSBoYXNOb1BhZGRpbmdsZWZ0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNHcmlkQ29sUGlubmVkTGVmdD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzU2VydmVyU2lkZUdyb3VwOiBJc1NlcnZlclNpZGVHcm91cDtcbiAgQElucHV0KCkgZ2V0U2VydmVyU2lkZUdyb3VwS2V5OiBHZXRTZXJ2ZXJTaWRlR3JvdXBLZXk7XG4gIEBJbnB1dCgpIGF1dG9Hcm91cENvbHVtbkRlZjogQ29sRGVmO1xuICBASW5wdXQoKSB0cmVlRGF0YSA9IGZhbHNlO1xuICBASW5wdXQoKSBnZXREYXRhUGF0aDogR2V0RGF0YVBhdGg7XG4gIEBJbnB1dCgpIHJvd0NsYXNzUnVsZXM7XG4gIEBJbnB1dCgpIGdyaWRDb250ZXh0TWVudT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGhhc1NvcnRpbmc/OiBib29sZWFuO1xuICBcbiAgcHVibGljIG5vUm93c092ZXJsYXlUZW1wbGF0ZSA9IFwibm9Sb3dzT3ZlcmxheVwiO1xuICBwdWJsaWMgZ2V0Um93SGVpZ2h0OiAoKSA9PiBudW1iZXI7XG4gIHB1YmxpYyBsb2FkaW5nQ2VsbFJlbmRlcmVyOiBhbnk7XG4gIHB1YmxpYyByb3dIZWlnaHRQYWdlID0gODA7XG4gIHB1YmxpYyBncmlkSGVpZ2h0ID0gMTAwO1xuICBwdWJsaWMgZ3JpZEFwaTogR3JpZEFwaTtcbiAgcHVibGljIGNhY2hlQmxvY2tTaXplID0gdGhpcy5wYWdlU2l6ZTtcbiAgcHVibGljIGZyYW1ld29ya0NvbXBvbmVudHMgPSB0aGlzLmdldEZyYW1ld29ya0NvbXBvbmVudHMoKTtcbiAgcHVibGljIGdyaWRPcHRpb25zOiBHcmlkT3B0aW9ucztcbiAgQE91dHB1dCgpXG4gIHNvcnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U29ydENoYW5nZWRFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBjZWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxDZWxsQ2xpY2tlZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmdldFJvd0hlaWdodCA9ICgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnJvd0hlaWdodFBhZ2U7XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubG9hZGluZ0NlbGxSZW5kZXJlciA9ICdsb2FkaW5nQ2VsbFJlbmRlcmVyJztcbiAgfVxuXG4gIHVwZGF0ZUdyaWRGaWx0ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5ncmlkQXBpLm9uRmlsdGVyQ2hhbmdlZCgpO1xuICB9XG5cbiAgZ2V0RnJhbWV3b3JrQ29tcG9uZW50cygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjb250YWN0QWN0aXZpdHlTY29yZTogQ29udGFjdEFjdGl2aXR5U2NvcmVDb21wb25lbnQsXG4gICAgICBmaXRTY29yZTogUmVsZXZhbmNlU2NvcmVDb21wb25lbnQsXG4gICAgICBncmlkVG9nZ2xlOiBHcmlkVG9nZ2xlQ2VsbFJlbmRlcmVyQ29tcG9uZW50LFxuICAgICAgbW9yZUFjdGlvbnM6IEV2ZW50U2V0dGluZ3NNb3JlT3B0aW9uc0NvbXBvbmVudCxcbiAgICAgIGxvYWRpbmdDZWxsUmVuZGVyZXI6IEdyaWRMb2FkaW5nQ2VsbENvbXBvbmVudCxcbiAgICAgIGFkdmVydGlzZWRKb2JzQ29zdDogQWR2ZXJ0aXNlZEpvYnNDb3N0Q29tcG9uZW50LFxuICAgICAgb3ZlcmZsb3dUZXh0OiBPdmVyZmxvd1RleHRDb21wb25lbnQsXG4gICAgICBvdmVyZmxvd1RleHRUb29sdGlwOiBPdmVyZmxvd1RleHRUb29sdGlwQ29tcG9uZW50LFxuICAgICAgZ3JpZENlbGxDbGlja2FibGU6IEdyaWRDZWxsQ2xpY2thYmxlQ29tcG9uZW50LFxuICAgICAgbm9Sb3dzT3ZlcmxheTogR3JpZE5vUm93c092ZXJsYXlDb21wb25lbnQsXG4gICAgICBjb2xvcmVkVGV4dEluZGljYXRvcjogQ29sb3JlZFRleHRJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICBzdGF0dXNJbmRpY2F0b3JDb21wb25lbnQ6IFN0YXR1c0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgIGdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJDb21wb25lbnQ6IEdyaWRDZWxsQ2xpY2tlZE9wZW5OZXdUYWJDb21wb25lbnQsXG4gICAgICBtZXJnZUNvbnRhY3RDbGlja2VkT3Blbk1vZGFsQ29tcG9uZW50OiBNZXJnZUNvbnRhY3RDbGlja2VkT3Blbk1vZGFsQ29tcG9uZW50XG4gICAgfTtcbiAgfVxuXG4gIG9uR3JpZFJlYWR5KGdyaWRSZWFkeUV2ZW50OiBHcmlkUmVhZHlFdmVudCkge1xuICAgIHRoaXMuZ3JpZEFwaSA9IGdyaWRSZWFkeUV2ZW50LmFwaTtcbiAgICB0aGlzLm9uR3JpZFJlYWR5RnVuY3Rpb24oZ3JpZFJlYWR5RXZlbnQpO1xuICB9XG5cbiAgb25Tb3J0Q2hhbmdlZChldmVudDogU29ydENoYW5nZWRFdmVudCkge1xuICAgIHRoaXMuc29ydENoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBvbkNlbGxDbGljayhldmVudDogQ2VsbENsaWNrZWRFdmVudCkge1xuICAgIHRoaXMuY2VsbENsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8YWctZ3JpZC1hbmd1bGFyXG4gIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lXCJcbiAgW25nQ2xhc3NdPVwieyBub1BhZGRpbmdMZWZ0OiBoYXNOb1BhZGRpbmdsZWZ0LCAnZ3JpZFBpbm5lZExlZnQnOiBpc0dyaWRDb2xQaW5uZWRMZWZ0LCdzZngtbGliLWdpcmQtZHJvcGRvd24nIDpncmlkQ29udGV4dE1lbnUsICdzZngtZ3JpZC1oYXNTb3J0aW5nJyA6aGFzU29ydGluZyB9XCJcbiAgc3R5bGU9XCJ3aWR0aDogMTAwJVwiXG4gIFtzdHlsZS5oZWlnaHQudmhdPVwiZ3JpZEhlaWdodFwiXG4gIFtncmlkT3B0aW9uc109XCJncmlkT3B0aW9uc1wiXG4gIFthcHBseUNvbHVtbkRlZk9yZGVyXT1cInRydWVcIlxuICBbcm93TW9kZWxUeXBlXT1cInJvd01vZGVsVHlwZVwiXG4gIFtjb2x1bW5EZWZzXT1cImNvbHVtbkRlZnNcIlxuICBbZGVmYXVsdENvbERlZl09XCJkZWZhdWx0Q29sRGVmXCJcbiAgW2ZyYW1ld29ya0NvbXBvbmVudHNdPVwiZnJhbWV3b3JrQ29tcG9uZW50c1wiXG4gIFtnZXRSb3dIZWlnaHRdPVwiZ2V0Um93SGVpZ2h0XCJcbiAgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXG4gIFtjYWNoZUJsb2NrU2l6ZV09XCJjYWNoZUJsb2NrU2l6ZVwiXG4gIFtyb3dEYXRhXT1cInJvd0RhdGFcIlxuICBbbWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0c109XCIxXCJcbiAgW2xvYWRpbmdDZWxsUmVuZGVyZXJdPVwibG9hZGluZ0NlbGxSZW5kZXJlclwiXG4gIFtzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uXT1cInN1cHByZXNzUm93Q2xpY2tTZWxlY3Rpb25cIlxuICBbcm93U2VsZWN0aW9uXT1cInJvd1NlbGVjdGlvbk1vZGVcIlxuICBbZW5hYmxlQnJvd3NlclRvb2x0aXBzXT1cInRydWVcIlxuICBbbm9Sb3dzT3ZlcmxheUNvbXBvbmVudF09XCJub1Jvd3NPdmVybGF5VGVtcGxhdGVcIlxuICBbc3VwcHJlc3NDb250ZXh0TWVudV09XCJ0cnVlXCJcbiAgW3RyZWVEYXRhXT1cInRyZWVEYXRhXCJcbiAgW2lzU2VydmVyU2lkZUdyb3VwXT1cImlzU2VydmVyU2lkZUdyb3VwXCJcbiAgW2dldFNlcnZlclNpZGVHcm91cEtleV09XCJnZXRTZXJ2ZXJTaWRlR3JvdXBLZXlcIlxuICBbYXV0b0dyb3VwQ29sdW1uRGVmXT1cImF1dG9Hcm91cENvbHVtbkRlZlwiXG4gIFtzZXJ2ZXJTaWRlU29ydGluZ0Fsd2F5c1Jlc2V0c109XCJ0cnVlXCJcbiAgW2dldERhdGFQYXRoXT1cImdldERhdGFQYXRoXCJcbiAgW3Jvd0NsYXNzUnVsZXNdPVwicm93Q2xhc3NSdWxlc1wiXG4gIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiXG4gIChzb3J0Q2hhbmdlZCk9XCJvblNvcnRDaGFuZ2VkKCRldmVudClcIlxuICAoY2VsbENsaWNrZWQpPVwib25DZWxsQ2xpY2soJGV2ZW50KVwiXG4+XG48L2FnLWdyaWQtYW5ndWxhcj5cbiJdfQ==
@@ -16,6 +16,7 @@ export class InputSearchCheckboxDropdownComponent {
16
16
  this.renderer = renderer;
17
17
  this.cdRef = cdRef;
18
18
  this.scrollHeightPercentage = 50; // setting the default to 50
19
+ this.hasCaptalise = true; // to check if the text should be capitalized or not
19
20
  this.deselectItem = new EventEmitter();
20
21
  this.selectItem = new EventEmitter();
21
22
  this.searchInputChange = new EventEmitter();
@@ -178,10 +179,10 @@ export class InputSearchCheckboxDropdownComponent {
178
179
  }
179
180
  }
180
181
  InputSearchCheckboxDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: InputSearchCheckboxDropdownComponent, deps: [{ token: i1.CapitalizeFirstCharacterPipe }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
181
- InputSearchCheckboxDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: InputSearchCheckboxDropdownComponent, selector: "symphony-input-search-checkbox-dropdown", inputs: { isDisabled: "isDisabled", multiSelectSearch: "multiSelectSearch", enablePlaceHolder: "enablePlaceHolder", scrollHeightPercentage: "scrollHeightPercentage", isLoadingData: "isLoadingData", isLoadingInitialData: "isLoadingInitialData", isInverse: "isInverse", size: "size", disableSearch: "disableSearch" }, outputs: { deselectItem: "deselectItem", selectItem: "selectItem", searchInputChange: "searchInputChange", selectionRetain: "selectionRetain", clearAll: "clearAll", conditionCheck: "conditionCheck", createNewItem: "createNewItem", scrollEnd: "scrollEnd", initializeDropdown: "initializeDropdown" }, viewQueries: [{ propertyName: "pop", first: true, predicate: ["pop"], descendants: true }, { propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n<div [ngClass]=\"{ 'isInverse': isInverse }\">\n <div\n *ngIf=\"multiSelectSearch.componentHeading\"\n class=\"sfx-filter-label sfx-d-inline-block\"\n >\n <b\n >{{ enablePlaceHolder ? \"\" : multiSelectSearch.componentHeading }}\n <span *ngIf=\"multiSelectSearch.required\" class=\"requiredField\">*</span>\n </b>\n </div>\n <div *ngIf=\"multiSelectSearch.condition\" class=\"sfx-switch-field pull-right\">\n <input\n type=\"radio\"\n id=\"radio-and-{{ conditionSelectionId }}\"\n name=\"radio-and-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' AND ')\"\n [checked]=\"multiSelectSearch.condition === ' AND '\"\n />\n <label class=\"Font400\" for=\"radio-and-{{ conditionSelectionId }}\"\n >and</label\n >\n <input\n type=\"radio\"\n id=\"radio-or-{{ conditionSelectionId }}\"\n name=\"radio-or-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' OR ')\"\n [checked]=\"multiSelectSearch.condition === ' OR '\"\n />\n <label class=\"Font400\" for=\"radio-or-{{ conditionSelectionId }}\">or</label>\n </div>\n <div\n class=\"sfx-custom-dropdown-wrap\"\n [ngClass]=\"{ open: openDropdown }\"\n dropdown\n #dropdown=\"bs-dropdown\"\n (onShown)=\"toggleDropdown()\"\n [insideClick]=\"true\"\n (onHidden)=\"onOkClick(true)\"\n >\n <input\n [ngClass]=\"{ 'invalid-control': isInvalid }\"\n (click)=\"dropdown.isOpen = true\"\n type=\"text\"\n id=\"dropdown-search-{{ multiSelectSearch.componentHeading | trimId}}\"\n [(ngModel)]=\"multiSelectSearch.searchInput\"\n (ngModelChange)=\"onSearchInputChange()\"\n dropdownToggle\n popover=\"{{ popOverText() }}\"\n containerClass=\"sfx-input-popover\"\n triggers=\"\"\n placement=\"top\"\n #pop=\"bs-popover\"\n (mouseenter)=\"showPop()\"\n (mouseleave)=\"onPopMouseLeave()\"\n (focus)=\"onFocusClick(true)\"\n (blur)=\"onFocusClick(false)\"\n class=\"sfx-placeholder\"\n placeholder=\"{{\n enablePlaceHolder ? multiSelectSearch.componentHeading : ''\n }}\"\n autocomplete=\"off\"\n [disabled]=\"isDisabled\"\n [readonly]=\"disableSearch\"\n />\n <symphony-icon *ngIf=\"!disableSearch\" [size]=\"size\" [icon]=\"'si-search-new'\"></symphony-icon>\n <div *dropdownMenu>\n <div class=\"sfx-custom-dropdown\" *ngIf=\"openDropdown\">\n <div *ngIf=\"multiSelectSearch.isSelectAllEnabled\" class=\"sfx-select-all-toggle\">\n <span class=\"sfx-font-bold sfx-mr-10\">Select All</span>\n <symphony-input-toggle\n [isToggled]=\"isAllToggled\"\n [isInverse]=\"false\"\n (toggleClick)=\"onToggleClick($event)\"\n ></symphony-input-toggle>\n </div>\n <!-- Create And Add Tags -->\n <div\n class=\"sfx-create-new-items\"\n *ngIf=\"\n multiSelectSearch.labelCreateNewItems &&\n multiSelectSearch.showCreateNewItems\n \"\n (click)=\"onCreateNewItem()\"\n [ngClass]=\"{\n 'sfx-font-bold': multiSelectSearch.showCreateNewModal\n }\"\n >\n {{ multiSelectSearch.labelCreateNewItems }}\n <span\n class=\"sfx-font-bold\"\n *ngIf=\"!multiSelectSearch.showCreateNewModal\"\n >&nbsp;&apos;\n {{ multiSelectSearch.searchInput | capitalizeFirstCharacter }}&apos;\n </span>\n <i class=\"sfx-icon-Plus sfx-create-new-items-icon\"></i>\n </div>\n <!-- Create And Add Tags ends here -->\n <!-- selected list div -->\n <div\n class=\"sfx-dropdown-selected sfx-custom-scroll\"\n *ngIf=\"multiSelectSearch.selectedDropdownList.length > 0 && !multiSelectSearch.isSelectAllEnabled\"\n >\n <div\n class=\"sfx-d-inline-block\"\n *ngFor=\"let selectedItem of multiSelectSearch.selectedDropdownList\"\n >\n <div\n (click)=\"onDeselectItem(selectedItem); $event.stopPropagation()\"\n class=\"sfx-checkbox sfx-d-inline-block\"\n >\n <input\n type=\"checkbox\"\n checked\n class=\"sfx-checkbox-input\"\n id=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n />\n <label\n class=\"Font400\"\n for=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n >{{ selectedItem.name | capitalizeFirstCharacter }}\n <br />\n <span\n *ngIf=\"selectedItem.additionalInfo\"\n class=\"selected-additional-info\"\n >\n {{ selectedItem.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n </div>\n <!-- selected list div ends here -->\n <!-- Search list -->\n <div\n class=\"sfx-dropdown-unselected sfx-custom-scroll\"\n (scroll)=\"scrollHandler($event)\"\n *ngIf=\"multiSelectSearch.searchedDropdownList.length > 0\"\n >\n <div\n id=\"dropdown-triggers-manually\"\n *ngFor=\"\n let filterDropdownOption of multiSelectSearch.searchedDropdownList\n \"\n >\n <div class=\"sfx-checkbox\">\n <input\n type=\"checkbox\"\n id=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n class=\"sfx-checkbox-input\"\n [disabled]=\"multiSelectSearch.hasMaxSelections\"\n (click)=\"\n onSelectItem(filterDropdownOption); $event.stopPropagation()\n \"\n [(ngModel)]=\"filterDropdownOption.isChecked\"\n />\n <label\n class=\"Font400\"\n for=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n >{{ filterDropdownOption.name | capitalizeFirstCharacter }}\n <br />\n <span\n *ngIf=\"filterDropdownOption.additionalInfo\"\n class=\"additional-info\"\n >\n {{ filterDropdownOption.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n <div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingData\"\n ></symphony-sfx-loader>\n </div>\n </div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingInitialData\"\n ></symphony-sfx-loader>\n <!-- search list ends here -->\n <!-- Footer -->\n <div *ngIf=\"openDropdown\" class=\"sfx-filter-item-footer\">\n <button\n type=\"button\"\n class=\"pull-left\"\n [disabled]=\"\n !(\n multiSelectSearch.selectedDropdownList &&\n multiSelectSearch.selectedDropdownList.length > 0\n )\n \"\n (click)=\"onClearAllClick()\"\n >\n Clear All\n </button>\n <a href=\"javascript:;\" (click)=\"onOkClick()\" class=\"pull-right\">OK</a>\n </div>\n <!-- End Footer -->\n </div>\n </div>\n </div>\n <div *ngIf=\"isInvalid\" class=\"error-message\">\n Please select a valid option\n </div>\n</div>", styles: [".sfx-input-popover{word-wrap:break-word;max-width:100%}.sfx-placeholder:-ms-input-placeholder{color:#000}.sfx-placeholder::-moz-placeholder{color:#000}.sfx-placeholder::placeholder{color:#000}.requiredField{color:#000}.error-message{color:#ac4463}.invalid-control{border:1px solid #AC4463!important}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #000;border-right:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#fff;border:2px solid #000}.sfx-custom-dropdown-wrap{position:relative;padding:.3rem;width:100%}.sfx-custom-dropdown-wrap input{width:100%;border:1px solid #d0d0d0;height:40px;border-radius:4px;background:#fff;color:#000;outline:none;padding-left:.9375rem;padding-right:1.875rem;line-height:25px}.sfx-custom-dropdown-wrap symphony-icon{right:17px;bottom:13px;position:absolute;color:#000;z-index:2}.sfx-custom-dropdown-wrap .sfx-custom-dropdown{background:#fff;position:absolute;width:100%;z-index:4;left:0;border-width:0px 1px 1px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox{margin:0;padding:.625rem 1.25rem}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox:hover{background:#E4E7EF;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected{border-bottom:1px solid #d9d9d9;padding-bottom:.625rem;padding-top:.625rem;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover{background:#fff;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked),.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked{position:absolute}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked)~label:after{border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:before{border-bottom-color:#000;border-right-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:after{background-color:#fff;border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected{padding-bottom:.625rem;padding-top:.625rem;border-bottom:1px solid #d9d9d9;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-select-all-toggle{padding:15px 20px;border-bottom:1px solid #d9d9d9}.sfx-custom-dropdown-wrap.open{background:#fff}.sfx-custom-dropdown-wrap.open .tree-node-checkbox{height:auto;width:auto}.sfx-custom-dropdown-wrap.open .sfx-create-new-items{padding:.625rem 1.5625rem .625rem 1.25rem;position:relative;border-bottom:1px solid #d0d0d0;cursor:pointer}.sfx-custom-dropdown-wrap.open .sfx-create-new-items .sfx-create-new-items-icon{font-size:.625rem;position:absolute;right:.9375rem;top:.9375rem}.sfx-custom-dropdown-wrap.open input{z-index:2;position:relative;background:#ffffff;color:#000}.sfx-custom-dropdown-wrap.open symphony-icon{color:#000}.sfx-custom-dropdown-wrap.open:after{content:\" \";position:absolute;top:0;left:0;display:inline-block;width:100%;height:100%;z-index:1;border-width:1px 1px 0px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar{width:12px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-track,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-track{box-shadow:inset 0 0 3px transparent;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb:hover,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb:hover{cursor:pointer}.sfx-filter-item-footer{display:inline-block;width:100%;padding:1.875rem 1.25rem 1.5625rem;font-family:runda,sans-serif;font-weight:500}.sfx-filter-item-footer a{cursor:pointer}.sfx-filter-item-footer button{color:#712ace;background:transparent;border:none;padding:0}.sfx-filter-item-footer button:disabled{opacity:.5;cursor:not-allowed}.sfx-checkbox .sfx-checkbox-input~label{color:#fff}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #fff;border-right:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#212121;border:2px solid #fff}.sfx-checkbox{margin:10px 0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sfx-checkbox .sfx-checkbox-input:not(:checked),.sfx-checkbox .sfx-checkbox-input:checked{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.sfx-checkbox .sfx-checkbox-input~label{display:inline-block;position:relative;cursor:pointer;height:100%;line-height:20px;font-size:14px;color:#000;padding-left:36px;font-family:runda,sans-serif;font-weight:400;margin:0;word-break:break-word}.sfx-checkbox .sfx-checkbox-input~label.sfx-font-reg{font-family:runda,sans-serif}.sfx-checkbox .sfx-checkbox-input~label:before{transform:translateZ(0);transition:all 0s ease-in;position:absolute;content:\"\";left:0;border-radius:2px}.sfx-checkbox .sfx-checkbox-input~label:after{position:absolute;content:\"\";left:0;border-radius:2px;top:0}.sfx-checkbox .sfx-checkbox-input~label .additional-info,.sfx-checkbox .sfx-checkbox-input~label .selected-additional-info{font-size:12px;color:#565656}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:before{width:9px;height:15px;border:none;top:1px;left:0;transform:rotate(37deg) scale(.1);transform-origin:100% 100%}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{width:20px;height:20px;border:2px solid #000;z-index:0;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:checked~label:before{top:3px;left:3px;width:6px;height:12px;border-top:0px solid transparent;border-left:0px solid transparent;border-bottom:2px solid #000;border-right:2px solid #000;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotate(37deg) scale(1);transform-origin:100% 100%;border-radius:0}.sfx-checkbox .sfx-checkbox-input:checked~label:after{width:20px;height:20px;background-color:#fff;border:2px solid #000;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:disabled~label{opacity:.3;pointer-events:none}.sfx-checkbox:hover .sfx-checkbox-input~label .additional-info{color:#fff}.sfx-filter-label{font-family:runda,sans-serif;font-weight:500;margin-bottom:.3rem;padding-left:.3rem;line-height:25px}.isInverse .sfx-custom-dropdown-wrap input{border-color:#5b6d80}\n"], components: [{ type: i2.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i3.InputToggleComponent, selector: "symphony-input-toggle", inputs: ["isToggled", "isInverse"], outputs: ["toggleClick"] }, { type: i4.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message", "hasCustomMessage"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.BsDropdownDirective, selector: "[bsDropdown],[dropdown]", inputs: ["autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen", "placement", "triggers", "container", "dropup"], outputs: ["onShown", "onHidden", "isOpenChange"], exportAs: ["bs-dropdown"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.PopoverDirective, selector: "[popover]", inputs: ["outsideClick", "containerClass", "isOpen", "adaptivePosition", "popover", "popoverContext", "popoverTitle", "placement", "triggers", "container", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }], pipes: { "trimId": i9.TrimIdPipe, "capitalizeFirstCharacter": i1.CapitalizeFirstCharacterPipe } });
182
+ InputSearchCheckboxDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", type: InputSearchCheckboxDropdownComponent, selector: "symphony-input-search-checkbox-dropdown", inputs: { isDisabled: "isDisabled", multiSelectSearch: "multiSelectSearch", enablePlaceHolder: "enablePlaceHolder", scrollHeightPercentage: "scrollHeightPercentage", isLoadingData: "isLoadingData", isLoadingInitialData: "isLoadingInitialData", isInverse: "isInverse", size: "size", disableSearch: "disableSearch", hasCaptalise: "hasCaptalise" }, outputs: { deselectItem: "deselectItem", selectItem: "selectItem", searchInputChange: "searchInputChange", selectionRetain: "selectionRetain", clearAll: "clearAll", conditionCheck: "conditionCheck", createNewItem: "createNewItem", scrollEnd: "scrollEnd", initializeDropdown: "initializeDropdown" }, viewQueries: [{ propertyName: "pop", first: true, predicate: ["pop"], descendants: true }, { propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n<div [ngClass]=\"{ 'isInverse': isInverse }\">\n <div\n *ngIf=\"multiSelectSearch.componentHeading\"\n class=\"sfx-filter-label sfx-d-inline-block\"\n >\n <b\n >{{ enablePlaceHolder ? \"\" : multiSelectSearch.componentHeading }}\n <span *ngIf=\"multiSelectSearch.required\" class=\"requiredField\">*</span>\n </b>\n </div>\n <div *ngIf=\"multiSelectSearch.condition\" class=\"sfx-switch-field pull-right\">\n <input\n type=\"radio\"\n id=\"radio-and-{{ conditionSelectionId }}\"\n name=\"radio-and-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' AND ')\"\n [checked]=\"multiSelectSearch.condition === ' AND '\"\n />\n <label class=\"Font400\" for=\"radio-and-{{ conditionSelectionId }}\"\n >and</label\n >\n <input\n type=\"radio\"\n id=\"radio-or-{{ conditionSelectionId }}\"\n name=\"radio-or-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' OR ')\"\n [checked]=\"multiSelectSearch.condition === ' OR '\"\n />\n <label class=\"Font400\" for=\"radio-or-{{ conditionSelectionId }}\">or</label>\n </div>\n <div\n class=\"sfx-custom-dropdown-wrap\"\n [ngClass]=\"{ open: openDropdown }\"\n dropdown\n #dropdown=\"bs-dropdown\"\n (onShown)=\"toggleDropdown()\"\n [insideClick]=\"true\"\n (onHidden)=\"onOkClick(true)\"\n >\n <input\n [ngClass]=\"{ 'invalid-control': isInvalid }\"\n (click)=\"dropdown.isOpen = true\"\n type=\"text\"\n id=\"dropdown-search-{{ multiSelectSearch.componentHeading | trimId}}\"\n [(ngModel)]=\"multiSelectSearch.searchInput\"\n (ngModelChange)=\"onSearchInputChange()\"\n dropdownToggle\n popover=\"{{ popOverText() }}\"\n containerClass=\"sfx-input-popover\"\n triggers=\"\"\n placement=\"top\"\n #pop=\"bs-popover\"\n (mouseenter)=\"showPop()\"\n (mouseleave)=\"onPopMouseLeave()\"\n (focus)=\"onFocusClick(true)\"\n (blur)=\"onFocusClick(false)\"\n class=\"sfx-placeholder\"\n placeholder=\"{{\n enablePlaceHolder ? multiSelectSearch.componentHeading : ''\n }}\"\n autocomplete=\"off\"\n [disabled]=\"isDisabled\"\n [readonly]=\"disableSearch\"\n />\n <symphony-icon *ngIf=\"!disableSearch\" [size]=\"size\" [icon]=\"'si-search-new'\"></symphony-icon>\n <div *dropdownMenu>\n <div class=\"sfx-custom-dropdown\" *ngIf=\"openDropdown\">\n <div *ngIf=\"multiSelectSearch.isSelectAllEnabled\" class=\"sfx-select-all-toggle\">\n <span class=\"sfx-font-bold sfx-mr-10\">Select All</span>\n <symphony-input-toggle\n [isToggled]=\"isAllToggled\"\n [isInverse]=\"false\"\n (toggleClick)=\"onToggleClick($event)\"\n ></symphony-input-toggle>\n </div>\n <!-- Create And Add Tags -->\n <div\n class=\"sfx-create-new-items\"\n *ngIf=\"\n multiSelectSearch.labelCreateNewItems &&\n multiSelectSearch.showCreateNewItems\n \"\n (click)=\"onCreateNewItem()\"\n [ngClass]=\"{\n 'sfx-font-bold': multiSelectSearch.showCreateNewModal\n }\"\n >\n {{ multiSelectSearch.labelCreateNewItems }}\n <span\n class=\"sfx-font-bold\"\n *ngIf=\"!multiSelectSearch.showCreateNewModal\"\n >&nbsp;&apos;\n {{ multiSelectSearch.searchInput | capitalizeFirstCharacter }}&apos;\n </span>\n <i class=\"sfx-icon-Plus sfx-create-new-items-icon\"></i>\n </div>\n <!-- Create And Add Tags ends here -->\n <!-- selected list div -->\n <div\n class=\"sfx-dropdown-selected sfx-custom-scroll\"\n *ngIf=\"multiSelectSearch.selectedDropdownList.length > 0 && !multiSelectSearch.isSelectAllEnabled\"\n >\n <div\n class=\"sfx-d-inline-block\"\n *ngFor=\"let selectedItem of multiSelectSearch.selectedDropdownList\"\n >\n <div\n (click)=\"onDeselectItem(selectedItem); $event.stopPropagation()\"\n class=\"sfx-checkbox sfx-d-inline-block\"\n >\n <input\n type=\"checkbox\"\n checked\n class=\"sfx-checkbox-input\"\n id=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n />\n <label\n class=\"Font400\"\n for=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n ><span *ngIf=\"hasCaptalise\">{{ selectedItem.name | capitalizeFirstCharacter }}</span><span *ngIf=\"!hasCaptalise\" style=\"white-space: pre\">{{ selectedItem.name }}</span>\n <br />\n <span\n *ngIf=\"selectedItem.additionalInfo\"\n class=\"selected-additional-info\"\n >\n {{ selectedItem.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n </div>\n <!-- selected list div ends here -->\n <!-- Search list -->\n <div\n class=\"sfx-dropdown-unselected sfx-custom-scroll\"\n (scroll)=\"scrollHandler($event)\"\n *ngIf=\"multiSelectSearch.searchedDropdownList.length > 0\"\n >\n <div\n id=\"dropdown-triggers-manually\"\n *ngFor=\"\n let filterDropdownOption of multiSelectSearch.searchedDropdownList\n \"\n >\n <div class=\"sfx-checkbox\">\n <input\n type=\"checkbox\"\n id=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n class=\"sfx-checkbox-input\"\n [disabled]=\"multiSelectSearch.hasMaxSelections\"\n (click)=\"\n onSelectItem(filterDropdownOption); $event.stopPropagation()\n \"\n [(ngModel)]=\"filterDropdownOption.isChecked\"\n />\n <label\n class=\"Font400\"\n for=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n ><span *ngIf=\"hasCaptalise\">{{ filterDropdownOption.name | capitalizeFirstCharacter }}</span><span *ngIf=\"!hasCaptalise\" style=\"white-space: pre\">{{ filterDropdownOption.name }}</span>\n <br />\n <span\n *ngIf=\"filterDropdownOption.additionalInfo\"\n class=\"additional-info\"\n >\n {{ filterDropdownOption.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n <div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingData\"\n ></symphony-sfx-loader>\n </div>\n </div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingInitialData\"\n ></symphony-sfx-loader>\n <!-- search list ends here -->\n <!-- Footer -->\n <div *ngIf=\"openDropdown\" class=\"sfx-filter-item-footer\">\n <button\n type=\"button\"\n class=\"pull-left\"\n [disabled]=\"\n !(\n multiSelectSearch.selectedDropdownList &&\n multiSelectSearch.selectedDropdownList.length > 0\n )\n \"\n (click)=\"onClearAllClick()\"\n >\n Clear All\n </button>\n <a href=\"javascript:;\" (click)=\"onOkClick()\" class=\"pull-right\">OK</a>\n </div>\n <!-- End Footer -->\n </div>\n </div>\n </div>\n <div *ngIf=\"isInvalid\" class=\"error-message\">\n Please select a valid option\n </div>\n</div>", styles: [".sfx-input-popover{word-wrap:break-word;max-width:100%}.sfx-placeholder:-ms-input-placeholder{color:#000}.sfx-placeholder::-moz-placeholder{color:#000}.sfx-placeholder::placeholder{color:#000}.requiredField{color:#000}.error-message{color:#ac4463}.invalid-control{border:1px solid #AC4463!important}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #000;border-right:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#fff;border:2px solid #000}.sfx-custom-dropdown-wrap{position:relative;padding:.3rem;width:100%}.sfx-custom-dropdown-wrap input{width:100%;border:1px solid #d0d0d0;height:40px;border-radius:4px;background:#fff;color:#000;outline:none;padding-left:.9375rem;padding-right:1.875rem;line-height:25px}.sfx-custom-dropdown-wrap symphony-icon{right:17px;bottom:13px;position:absolute;color:#000;z-index:2}.sfx-custom-dropdown-wrap .sfx-custom-dropdown{background:#fff;position:absolute;width:100%;z-index:4;left:0;border-width:0px 1px 1px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox{margin:0;padding:.625rem 1.25rem}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox:hover{background:#E4E7EF;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected{border-bottom:1px solid #d9d9d9;padding-bottom:.625rem;padding-top:.625rem;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover{background:#fff;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked),.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked{position:absolute}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked)~label:after{border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:before{border-bottom-color:#000;border-right-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:after{background-color:#fff;border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected{padding-bottom:.625rem;padding-top:.625rem;border-bottom:1px solid #d9d9d9;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-select-all-toggle{padding:15px 20px;border-bottom:1px solid #d9d9d9}.sfx-custom-dropdown-wrap.open{background:#fff}.sfx-custom-dropdown-wrap.open .tree-node-checkbox{height:auto;width:auto}.sfx-custom-dropdown-wrap.open .sfx-create-new-items{padding:.625rem 1.5625rem .625rem 1.25rem;position:relative;border-bottom:1px solid #d0d0d0;cursor:pointer}.sfx-custom-dropdown-wrap.open .sfx-create-new-items .sfx-create-new-items-icon{font-size:.625rem;position:absolute;right:.9375rem;top:.9375rem}.sfx-custom-dropdown-wrap.open input{z-index:2;position:relative;background:#ffffff;color:#000}.sfx-custom-dropdown-wrap.open symphony-icon{color:#000}.sfx-custom-dropdown-wrap.open:after{content:\" \";position:absolute;top:0;left:0;display:inline-block;width:100%;height:100%;z-index:1;border-width:1px 1px 0px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar{width:12px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-track,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-track{box-shadow:inset 0 0 3px transparent;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb:hover,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb:hover{cursor:pointer}.sfx-filter-item-footer{display:inline-block;width:100%;padding:1.875rem 1.25rem 1.5625rem;font-family:runda,sans-serif;font-weight:500}.sfx-filter-item-footer a{cursor:pointer}.sfx-filter-item-footer button{color:#712ace;background:transparent;border:none;padding:0}.sfx-filter-item-footer button:disabled{opacity:.5;cursor:not-allowed}.sfx-checkbox .sfx-checkbox-input~label{color:#fff}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #fff;border-right:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#212121;border:2px solid #fff}.sfx-checkbox{margin:10px 0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sfx-checkbox .sfx-checkbox-input:not(:checked),.sfx-checkbox .sfx-checkbox-input:checked{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.sfx-checkbox .sfx-checkbox-input~label{display:inline-block;position:relative;cursor:pointer;height:100%;line-height:20px;font-size:14px;color:#000;padding-left:36px;font-family:runda,sans-serif;font-weight:400;margin:0;word-break:break-word}.sfx-checkbox .sfx-checkbox-input~label.sfx-font-reg{font-family:runda,sans-serif}.sfx-checkbox .sfx-checkbox-input~label:before{transform:translateZ(0);transition:all 0s ease-in;position:absolute;content:\"\";left:0;border-radius:2px}.sfx-checkbox .sfx-checkbox-input~label:after{position:absolute;content:\"\";left:0;border-radius:2px;top:0}.sfx-checkbox .sfx-checkbox-input~label .additional-info,.sfx-checkbox .sfx-checkbox-input~label .selected-additional-info{font-size:12px;color:#565656}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:before{width:9px;height:15px;border:none;top:1px;left:0;transform:rotate(37deg) scale(.1);transform-origin:100% 100%}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{width:20px;height:20px;border:2px solid #000;z-index:0;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:checked~label:before{top:3px;left:3px;width:6px;height:12px;border-top:0px solid transparent;border-left:0px solid transparent;border-bottom:2px solid #000;border-right:2px solid #000;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotate(37deg) scale(1);transform-origin:100% 100%;border-radius:0}.sfx-checkbox .sfx-checkbox-input:checked~label:after{width:20px;height:20px;background-color:#fff;border:2px solid #000;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:disabled~label{opacity:.3;pointer-events:none}.sfx-checkbox:hover .sfx-checkbox-input~label .additional-info{color:#fff}.sfx-filter-label{font-family:runda,sans-serif;font-weight:500;margin-bottom:.3rem;padding-left:.3rem;line-height:25px}.isInverse .sfx-custom-dropdown-wrap input{border-color:#5b6d80}\n"], components: [{ type: i2.IconComponent, selector: "symphony-icon", inputs: ["icon", "isSecondary", "size", "iconColor"], outputs: ["clicked"] }, { type: i3.InputToggleComponent, selector: "symphony-input-toggle", inputs: ["isToggled", "isInverse"], outputs: ["toggleClick"] }, { type: i4.SfxLoaderComponent, selector: "symphony-sfx-loader", inputs: ["leftStyle", "message", "hasCustomMessage"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.BsDropdownDirective, selector: "[bsDropdown],[dropdown]", inputs: ["autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen", "placement", "triggers", "container", "dropup"], outputs: ["onShown", "onHidden", "isOpenChange"], exportAs: ["bs-dropdown"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.PopoverDirective, selector: "[popover]", inputs: ["outsideClick", "containerClass", "isOpen", "adaptivePosition", "popover", "popoverContext", "popoverTitle", "placement", "triggers", "container", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }], pipes: { "trimId": i9.TrimIdPipe, "capitalizeFirstCharacter": i1.CapitalizeFirstCharacterPipe } });
182
183
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: InputSearchCheckboxDropdownComponent, decorators: [{
183
184
  type: Component,
184
- args: [{ selector: 'symphony-input-search-checkbox-dropdown', template: "\n<div [ngClass]=\"{ 'isInverse': isInverse }\">\n <div\n *ngIf=\"multiSelectSearch.componentHeading\"\n class=\"sfx-filter-label sfx-d-inline-block\"\n >\n <b\n >{{ enablePlaceHolder ? \"\" : multiSelectSearch.componentHeading }}\n <span *ngIf=\"multiSelectSearch.required\" class=\"requiredField\">*</span>\n </b>\n </div>\n <div *ngIf=\"multiSelectSearch.condition\" class=\"sfx-switch-field pull-right\">\n <input\n type=\"radio\"\n id=\"radio-and-{{ conditionSelectionId }}\"\n name=\"radio-and-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' AND ')\"\n [checked]=\"multiSelectSearch.condition === ' AND '\"\n />\n <label class=\"Font400\" for=\"radio-and-{{ conditionSelectionId }}\"\n >and</label\n >\n <input\n type=\"radio\"\n id=\"radio-or-{{ conditionSelectionId }}\"\n name=\"radio-or-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' OR ')\"\n [checked]=\"multiSelectSearch.condition === ' OR '\"\n />\n <label class=\"Font400\" for=\"radio-or-{{ conditionSelectionId }}\">or</label>\n </div>\n <div\n class=\"sfx-custom-dropdown-wrap\"\n [ngClass]=\"{ open: openDropdown }\"\n dropdown\n #dropdown=\"bs-dropdown\"\n (onShown)=\"toggleDropdown()\"\n [insideClick]=\"true\"\n (onHidden)=\"onOkClick(true)\"\n >\n <input\n [ngClass]=\"{ 'invalid-control': isInvalid }\"\n (click)=\"dropdown.isOpen = true\"\n type=\"text\"\n id=\"dropdown-search-{{ multiSelectSearch.componentHeading | trimId}}\"\n [(ngModel)]=\"multiSelectSearch.searchInput\"\n (ngModelChange)=\"onSearchInputChange()\"\n dropdownToggle\n popover=\"{{ popOverText() }}\"\n containerClass=\"sfx-input-popover\"\n triggers=\"\"\n placement=\"top\"\n #pop=\"bs-popover\"\n (mouseenter)=\"showPop()\"\n (mouseleave)=\"onPopMouseLeave()\"\n (focus)=\"onFocusClick(true)\"\n (blur)=\"onFocusClick(false)\"\n class=\"sfx-placeholder\"\n placeholder=\"{{\n enablePlaceHolder ? multiSelectSearch.componentHeading : ''\n }}\"\n autocomplete=\"off\"\n [disabled]=\"isDisabled\"\n [readonly]=\"disableSearch\"\n />\n <symphony-icon *ngIf=\"!disableSearch\" [size]=\"size\" [icon]=\"'si-search-new'\"></symphony-icon>\n <div *dropdownMenu>\n <div class=\"sfx-custom-dropdown\" *ngIf=\"openDropdown\">\n <div *ngIf=\"multiSelectSearch.isSelectAllEnabled\" class=\"sfx-select-all-toggle\">\n <span class=\"sfx-font-bold sfx-mr-10\">Select All</span>\n <symphony-input-toggle\n [isToggled]=\"isAllToggled\"\n [isInverse]=\"false\"\n (toggleClick)=\"onToggleClick($event)\"\n ></symphony-input-toggle>\n </div>\n <!-- Create And Add Tags -->\n <div\n class=\"sfx-create-new-items\"\n *ngIf=\"\n multiSelectSearch.labelCreateNewItems &&\n multiSelectSearch.showCreateNewItems\n \"\n (click)=\"onCreateNewItem()\"\n [ngClass]=\"{\n 'sfx-font-bold': multiSelectSearch.showCreateNewModal\n }\"\n >\n {{ multiSelectSearch.labelCreateNewItems }}\n <span\n class=\"sfx-font-bold\"\n *ngIf=\"!multiSelectSearch.showCreateNewModal\"\n >&nbsp;&apos;\n {{ multiSelectSearch.searchInput | capitalizeFirstCharacter }}&apos;\n </span>\n <i class=\"sfx-icon-Plus sfx-create-new-items-icon\"></i>\n </div>\n <!-- Create And Add Tags ends here -->\n <!-- selected list div -->\n <div\n class=\"sfx-dropdown-selected sfx-custom-scroll\"\n *ngIf=\"multiSelectSearch.selectedDropdownList.length > 0 && !multiSelectSearch.isSelectAllEnabled\"\n >\n <div\n class=\"sfx-d-inline-block\"\n *ngFor=\"let selectedItem of multiSelectSearch.selectedDropdownList\"\n >\n <div\n (click)=\"onDeselectItem(selectedItem); $event.stopPropagation()\"\n class=\"sfx-checkbox sfx-d-inline-block\"\n >\n <input\n type=\"checkbox\"\n checked\n class=\"sfx-checkbox-input\"\n id=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n />\n <label\n class=\"Font400\"\n for=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n >{{ selectedItem.name | capitalizeFirstCharacter }}\n <br />\n <span\n *ngIf=\"selectedItem.additionalInfo\"\n class=\"selected-additional-info\"\n >\n {{ selectedItem.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n </div>\n <!-- selected list div ends here -->\n <!-- Search list -->\n <div\n class=\"sfx-dropdown-unselected sfx-custom-scroll\"\n (scroll)=\"scrollHandler($event)\"\n *ngIf=\"multiSelectSearch.searchedDropdownList.length > 0\"\n >\n <div\n id=\"dropdown-triggers-manually\"\n *ngFor=\"\n let filterDropdownOption of multiSelectSearch.searchedDropdownList\n \"\n >\n <div class=\"sfx-checkbox\">\n <input\n type=\"checkbox\"\n id=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n class=\"sfx-checkbox-input\"\n [disabled]=\"multiSelectSearch.hasMaxSelections\"\n (click)=\"\n onSelectItem(filterDropdownOption); $event.stopPropagation()\n \"\n [(ngModel)]=\"filterDropdownOption.isChecked\"\n />\n <label\n class=\"Font400\"\n for=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n >{{ filterDropdownOption.name | capitalizeFirstCharacter }}\n <br />\n <span\n *ngIf=\"filterDropdownOption.additionalInfo\"\n class=\"additional-info\"\n >\n {{ filterDropdownOption.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n <div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingData\"\n ></symphony-sfx-loader>\n </div>\n </div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingInitialData\"\n ></symphony-sfx-loader>\n <!-- search list ends here -->\n <!-- Footer -->\n <div *ngIf=\"openDropdown\" class=\"sfx-filter-item-footer\">\n <button\n type=\"button\"\n class=\"pull-left\"\n [disabled]=\"\n !(\n multiSelectSearch.selectedDropdownList &&\n multiSelectSearch.selectedDropdownList.length > 0\n )\n \"\n (click)=\"onClearAllClick()\"\n >\n Clear All\n </button>\n <a href=\"javascript:;\" (click)=\"onOkClick()\" class=\"pull-right\">OK</a>\n </div>\n <!-- End Footer -->\n </div>\n </div>\n </div>\n <div *ngIf=\"isInvalid\" class=\"error-message\">\n Please select a valid option\n </div>\n</div>", styles: [".sfx-input-popover{word-wrap:break-word;max-width:100%}.sfx-placeholder:-ms-input-placeholder{color:#000}.sfx-placeholder::-moz-placeholder{color:#000}.sfx-placeholder::placeholder{color:#000}.requiredField{color:#000}.error-message{color:#ac4463}.invalid-control{border:1px solid #AC4463!important}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #000;border-right:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#fff;border:2px solid #000}.sfx-custom-dropdown-wrap{position:relative;padding:.3rem;width:100%}.sfx-custom-dropdown-wrap input{width:100%;border:1px solid #d0d0d0;height:40px;border-radius:4px;background:#fff;color:#000;outline:none;padding-left:.9375rem;padding-right:1.875rem;line-height:25px}.sfx-custom-dropdown-wrap symphony-icon{right:17px;bottom:13px;position:absolute;color:#000;z-index:2}.sfx-custom-dropdown-wrap .sfx-custom-dropdown{background:#fff;position:absolute;width:100%;z-index:4;left:0;border-width:0px 1px 1px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox{margin:0;padding:.625rem 1.25rem}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox:hover{background:#E4E7EF;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected{border-bottom:1px solid #d9d9d9;padding-bottom:.625rem;padding-top:.625rem;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover{background:#fff;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked),.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked{position:absolute}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked)~label:after{border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:before{border-bottom-color:#000;border-right-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:after{background-color:#fff;border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected{padding-bottom:.625rem;padding-top:.625rem;border-bottom:1px solid #d9d9d9;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-select-all-toggle{padding:15px 20px;border-bottom:1px solid #d9d9d9}.sfx-custom-dropdown-wrap.open{background:#fff}.sfx-custom-dropdown-wrap.open .tree-node-checkbox{height:auto;width:auto}.sfx-custom-dropdown-wrap.open .sfx-create-new-items{padding:.625rem 1.5625rem .625rem 1.25rem;position:relative;border-bottom:1px solid #d0d0d0;cursor:pointer}.sfx-custom-dropdown-wrap.open .sfx-create-new-items .sfx-create-new-items-icon{font-size:.625rem;position:absolute;right:.9375rem;top:.9375rem}.sfx-custom-dropdown-wrap.open input{z-index:2;position:relative;background:#ffffff;color:#000}.sfx-custom-dropdown-wrap.open symphony-icon{color:#000}.sfx-custom-dropdown-wrap.open:after{content:\" \";position:absolute;top:0;left:0;display:inline-block;width:100%;height:100%;z-index:1;border-width:1px 1px 0px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar{width:12px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-track,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-track{box-shadow:inset 0 0 3px transparent;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb:hover,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb:hover{cursor:pointer}.sfx-filter-item-footer{display:inline-block;width:100%;padding:1.875rem 1.25rem 1.5625rem;font-family:runda,sans-serif;font-weight:500}.sfx-filter-item-footer a{cursor:pointer}.sfx-filter-item-footer button{color:#712ace;background:transparent;border:none;padding:0}.sfx-filter-item-footer button:disabled{opacity:.5;cursor:not-allowed}.sfx-checkbox .sfx-checkbox-input~label{color:#fff}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #fff;border-right:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#212121;border:2px solid #fff}.sfx-checkbox{margin:10px 0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sfx-checkbox .sfx-checkbox-input:not(:checked),.sfx-checkbox .sfx-checkbox-input:checked{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.sfx-checkbox .sfx-checkbox-input~label{display:inline-block;position:relative;cursor:pointer;height:100%;line-height:20px;font-size:14px;color:#000;padding-left:36px;font-family:runda,sans-serif;font-weight:400;margin:0;word-break:break-word}.sfx-checkbox .sfx-checkbox-input~label.sfx-font-reg{font-family:runda,sans-serif}.sfx-checkbox .sfx-checkbox-input~label:before{transform:translateZ(0);transition:all 0s ease-in;position:absolute;content:\"\";left:0;border-radius:2px}.sfx-checkbox .sfx-checkbox-input~label:after{position:absolute;content:\"\";left:0;border-radius:2px;top:0}.sfx-checkbox .sfx-checkbox-input~label .additional-info,.sfx-checkbox .sfx-checkbox-input~label .selected-additional-info{font-size:12px;color:#565656}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:before{width:9px;height:15px;border:none;top:1px;left:0;transform:rotate(37deg) scale(.1);transform-origin:100% 100%}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{width:20px;height:20px;border:2px solid #000;z-index:0;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:checked~label:before{top:3px;left:3px;width:6px;height:12px;border-top:0px solid transparent;border-left:0px solid transparent;border-bottom:2px solid #000;border-right:2px solid #000;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotate(37deg) scale(1);transform-origin:100% 100%;border-radius:0}.sfx-checkbox .sfx-checkbox-input:checked~label:after{width:20px;height:20px;background-color:#fff;border:2px solid #000;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:disabled~label{opacity:.3;pointer-events:none}.sfx-checkbox:hover .sfx-checkbox-input~label .additional-info{color:#fff}.sfx-filter-label{font-family:runda,sans-serif;font-weight:500;margin-bottom:.3rem;padding-left:.3rem;line-height:25px}.isInverse .sfx-custom-dropdown-wrap input{border-color:#5b6d80}\n"] }]
185
+ args: [{ selector: 'symphony-input-search-checkbox-dropdown', template: "\n<div [ngClass]=\"{ 'isInverse': isInverse }\">\n <div\n *ngIf=\"multiSelectSearch.componentHeading\"\n class=\"sfx-filter-label sfx-d-inline-block\"\n >\n <b\n >{{ enablePlaceHolder ? \"\" : multiSelectSearch.componentHeading }}\n <span *ngIf=\"multiSelectSearch.required\" class=\"requiredField\">*</span>\n </b>\n </div>\n <div *ngIf=\"multiSelectSearch.condition\" class=\"sfx-switch-field pull-right\">\n <input\n type=\"radio\"\n id=\"radio-and-{{ conditionSelectionId }}\"\n name=\"radio-and-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' AND ')\"\n [checked]=\"multiSelectSearch.condition === ' AND '\"\n />\n <label class=\"Font400\" for=\"radio-and-{{ conditionSelectionId }}\"\n >and</label\n >\n <input\n type=\"radio\"\n id=\"radio-or-{{ conditionSelectionId }}\"\n name=\"radio-or-{{ conditionSelectionId }}\"\n value=\"yes\"\n (click)=\"onConditionClick(' OR ')\"\n [checked]=\"multiSelectSearch.condition === ' OR '\"\n />\n <label class=\"Font400\" for=\"radio-or-{{ conditionSelectionId }}\">or</label>\n </div>\n <div\n class=\"sfx-custom-dropdown-wrap\"\n [ngClass]=\"{ open: openDropdown }\"\n dropdown\n #dropdown=\"bs-dropdown\"\n (onShown)=\"toggleDropdown()\"\n [insideClick]=\"true\"\n (onHidden)=\"onOkClick(true)\"\n >\n <input\n [ngClass]=\"{ 'invalid-control': isInvalid }\"\n (click)=\"dropdown.isOpen = true\"\n type=\"text\"\n id=\"dropdown-search-{{ multiSelectSearch.componentHeading | trimId}}\"\n [(ngModel)]=\"multiSelectSearch.searchInput\"\n (ngModelChange)=\"onSearchInputChange()\"\n dropdownToggle\n popover=\"{{ popOverText() }}\"\n containerClass=\"sfx-input-popover\"\n triggers=\"\"\n placement=\"top\"\n #pop=\"bs-popover\"\n (mouseenter)=\"showPop()\"\n (mouseleave)=\"onPopMouseLeave()\"\n (focus)=\"onFocusClick(true)\"\n (blur)=\"onFocusClick(false)\"\n class=\"sfx-placeholder\"\n placeholder=\"{{\n enablePlaceHolder ? multiSelectSearch.componentHeading : ''\n }}\"\n autocomplete=\"off\"\n [disabled]=\"isDisabled\"\n [readonly]=\"disableSearch\"\n />\n <symphony-icon *ngIf=\"!disableSearch\" [size]=\"size\" [icon]=\"'si-search-new'\"></symphony-icon>\n <div *dropdownMenu>\n <div class=\"sfx-custom-dropdown\" *ngIf=\"openDropdown\">\n <div *ngIf=\"multiSelectSearch.isSelectAllEnabled\" class=\"sfx-select-all-toggle\">\n <span class=\"sfx-font-bold sfx-mr-10\">Select All</span>\n <symphony-input-toggle\n [isToggled]=\"isAllToggled\"\n [isInverse]=\"false\"\n (toggleClick)=\"onToggleClick($event)\"\n ></symphony-input-toggle>\n </div>\n <!-- Create And Add Tags -->\n <div\n class=\"sfx-create-new-items\"\n *ngIf=\"\n multiSelectSearch.labelCreateNewItems &&\n multiSelectSearch.showCreateNewItems\n \"\n (click)=\"onCreateNewItem()\"\n [ngClass]=\"{\n 'sfx-font-bold': multiSelectSearch.showCreateNewModal\n }\"\n >\n {{ multiSelectSearch.labelCreateNewItems }}\n <span\n class=\"sfx-font-bold\"\n *ngIf=\"!multiSelectSearch.showCreateNewModal\"\n >&nbsp;&apos;\n {{ multiSelectSearch.searchInput | capitalizeFirstCharacter }}&apos;\n </span>\n <i class=\"sfx-icon-Plus sfx-create-new-items-icon\"></i>\n </div>\n <!-- Create And Add Tags ends here -->\n <!-- selected list div -->\n <div\n class=\"sfx-dropdown-selected sfx-custom-scroll\"\n *ngIf=\"multiSelectSearch.selectedDropdownList.length > 0 && !multiSelectSearch.isSelectAllEnabled\"\n >\n <div\n class=\"sfx-d-inline-block\"\n *ngFor=\"let selectedItem of multiSelectSearch.selectedDropdownList\"\n >\n <div\n (click)=\"onDeselectItem(selectedItem); $event.stopPropagation()\"\n class=\"sfx-checkbox sfx-d-inline-block\"\n >\n <input\n type=\"checkbox\"\n checked\n class=\"sfx-checkbox-input\"\n id=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n />\n <label\n class=\"Font400\"\n for=\"{{ selectedItem.id }}_{{ selectedItem.name }}\"\n ><span *ngIf=\"hasCaptalise\">{{ selectedItem.name | capitalizeFirstCharacter }}</span><span *ngIf=\"!hasCaptalise\" style=\"white-space: pre\">{{ selectedItem.name }}</span>\n <br />\n <span\n *ngIf=\"selectedItem.additionalInfo\"\n class=\"selected-additional-info\"\n >\n {{ selectedItem.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n </div>\n <!-- selected list div ends here -->\n <!-- Search list -->\n <div\n class=\"sfx-dropdown-unselected sfx-custom-scroll\"\n (scroll)=\"scrollHandler($event)\"\n *ngIf=\"multiSelectSearch.searchedDropdownList.length > 0\"\n >\n <div\n id=\"dropdown-triggers-manually\"\n *ngFor=\"\n let filterDropdownOption of multiSelectSearch.searchedDropdownList\n \"\n >\n <div class=\"sfx-checkbox\">\n <input\n type=\"checkbox\"\n id=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n class=\"sfx-checkbox-input\"\n [disabled]=\"multiSelectSearch.hasMaxSelections\"\n (click)=\"\n onSelectItem(filterDropdownOption); $event.stopPropagation()\n \"\n [(ngModel)]=\"filterDropdownOption.isChecked\"\n />\n <label\n class=\"Font400\"\n for=\"{{ filterDropdownOption.id }}_{{\n filterDropdownOption.name | trimId\n }}\"\n ><span *ngIf=\"hasCaptalise\">{{ filterDropdownOption.name | capitalizeFirstCharacter }}</span><span *ngIf=\"!hasCaptalise\" style=\"white-space: pre\">{{ filterDropdownOption.name }}</span>\n <br />\n <span\n *ngIf=\"filterDropdownOption.additionalInfo\"\n class=\"additional-info\"\n >\n {{ filterDropdownOption.additionalInfo }}</span\n >\n </label>\n </div>\n <div></div>\n </div>\n <div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingData\"\n ></symphony-sfx-loader>\n </div>\n </div>\n <symphony-sfx-loader\n [hidden]=\"!isLoadingInitialData\"\n ></symphony-sfx-loader>\n <!-- search list ends here -->\n <!-- Footer -->\n <div *ngIf=\"openDropdown\" class=\"sfx-filter-item-footer\">\n <button\n type=\"button\"\n class=\"pull-left\"\n [disabled]=\"\n !(\n multiSelectSearch.selectedDropdownList &&\n multiSelectSearch.selectedDropdownList.length > 0\n )\n \"\n (click)=\"onClearAllClick()\"\n >\n Clear All\n </button>\n <a href=\"javascript:;\" (click)=\"onOkClick()\" class=\"pull-right\">OK</a>\n </div>\n <!-- End Footer -->\n </div>\n </div>\n </div>\n <div *ngIf=\"isInvalid\" class=\"error-message\">\n Please select a valid option\n </div>\n</div>", styles: [".sfx-input-popover{word-wrap:break-word;max-width:100%}.sfx-placeholder:-ms-input-placeholder{color:#000}.sfx-placeholder::-moz-placeholder{color:#000}.sfx-placeholder::placeholder{color:#000}.requiredField{color:#000}.error-message{color:#ac4463}.invalid-control{border:1px solid #AC4463!important}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #000;border-right:2px solid #000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#fff;border:2px solid #000}.sfx-custom-dropdown-wrap{position:relative;padding:.3rem;width:100%}.sfx-custom-dropdown-wrap input{width:100%;border:1px solid #d0d0d0;height:40px;border-radius:4px;background:#fff;color:#000;outline:none;padding-left:.9375rem;padding-right:1.875rem;line-height:25px}.sfx-custom-dropdown-wrap symphony-icon{right:17px;bottom:13px;position:absolute;color:#000;z-index:2}.sfx-custom-dropdown-wrap .sfx-custom-dropdown{background:#fff;position:absolute;width:100%;z-index:4;left:0;border-width:0px 1px 1px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox{margin:0;padding:.625rem 1.25rem}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-checkbox:hover{background:#E4E7EF;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected{border-bottom:1px solid #d9d9d9;padding-bottom:.625rem;padding-top:.625rem;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover{background:#fff;color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked),.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked{position:absolute}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input~label{color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:not(:checked)~label:after{border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:before{border-bottom-color:#000;border-right-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected .sfx-checkbox:hover .sfx-checkbox-input:checked~label:after{background-color:#fff;border-color:#000}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected{padding-bottom:.625rem;padding-top:.625rem;border-bottom:1px solid #d9d9d9;max-height:220px;overflow-y:auto}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-select-all-toggle{padding:15px 20px;border-bottom:1px solid #d9d9d9}.sfx-custom-dropdown-wrap.open{background:#fff}.sfx-custom-dropdown-wrap.open .tree-node-checkbox{height:auto;width:auto}.sfx-custom-dropdown-wrap.open .sfx-create-new-items{padding:.625rem 1.5625rem .625rem 1.25rem;position:relative;border-bottom:1px solid #d0d0d0;cursor:pointer}.sfx-custom-dropdown-wrap.open .sfx-create-new-items .sfx-create-new-items-icon{font-size:.625rem;position:absolute;right:.9375rem;top:.9375rem}.sfx-custom-dropdown-wrap.open input{z-index:2;position:relative;background:#ffffff;color:#000}.sfx-custom-dropdown-wrap.open symphony-icon{color:#000}.sfx-custom-dropdown-wrap.open:after{content:\" \";position:absolute;top:0;left:0;display:inline-block;width:100%;height:100%;z-index:1;border-width:1px 1px 0px 1px;border-style:solid;border-color:#d9d9d9}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar{width:12px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-track,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-track{box-shadow:inset 0 0 3px transparent;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:30px}.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-selected::-webkit-scrollbar-thumb:hover,.sfx-custom-dropdown-wrap .sfx-custom-dropdown .sfx-dropdown-unselected::-webkit-scrollbar-thumb:hover{cursor:pointer}.sfx-filter-item-footer{display:inline-block;width:100%;padding:1.875rem 1.25rem 1.5625rem;font-family:runda,sans-serif;font-weight:500}.sfx-filter-item-footer a{cursor:pointer}.sfx-filter-item-footer button{color:#712ace;background:transparent;border:none;padding:0}.sfx-filter-item-footer button:disabled{opacity:.5;cursor:not-allowed}.sfx-checkbox .sfx-checkbox-input~label{color:#fff}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{border:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:before{border-bottom:2px solid #fff;border-right:2px solid #fff}.sfx-checkbox .sfx-checkbox-input:checked~label:after{background-color:#212121;border:2px solid #fff}.sfx-checkbox{margin:10px 0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sfx-checkbox .sfx-checkbox-input:not(:checked),.sfx-checkbox .sfx-checkbox-input:checked{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.sfx-checkbox .sfx-checkbox-input~label{display:inline-block;position:relative;cursor:pointer;height:100%;line-height:20px;font-size:14px;color:#000;padding-left:36px;font-family:runda,sans-serif;font-weight:400;margin:0;word-break:break-word}.sfx-checkbox .sfx-checkbox-input~label.sfx-font-reg{font-family:runda,sans-serif}.sfx-checkbox .sfx-checkbox-input~label:before{transform:translateZ(0);transition:all 0s ease-in;position:absolute;content:\"\";left:0;border-radius:2px}.sfx-checkbox .sfx-checkbox-input~label:after{position:absolute;content:\"\";left:0;border-radius:2px;top:0}.sfx-checkbox .sfx-checkbox-input~label .additional-info,.sfx-checkbox .sfx-checkbox-input~label .selected-additional-info{font-size:12px;color:#565656}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:before{width:9px;height:15px;border:none;top:1px;left:0;transform:rotate(37deg) scale(.1);transform-origin:100% 100%}.sfx-checkbox .sfx-checkbox-input:not(:checked)~label:after{width:20px;height:20px;border:2px solid #000;z-index:0;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:checked~label:before{top:3px;left:3px;width:6px;height:12px;border-top:0px solid transparent;border-left:0px solid transparent;border-bottom:2px solid #000;border-right:2px solid #000;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotate(37deg) scale(1);transform-origin:100% 100%;border-radius:0}.sfx-checkbox .sfx-checkbox-input:checked~label:after{width:20px;height:20px;background-color:#fff;border:2px solid #000;border-radius:4px}.sfx-checkbox .sfx-checkbox-input:disabled~label{opacity:.3;pointer-events:none}.sfx-checkbox:hover .sfx-checkbox-input~label .additional-info{color:#fff}.sfx-filter-label{font-family:runda,sans-serif;font-weight:500;margin-bottom:.3rem;padding-left:.3rem;line-height:25px}.isInverse .sfx-custom-dropdown-wrap input{border-color:#5b6d80}\n"] }]
185
186
  }], ctorParameters: function () { return [{ type: i1.CapitalizeFirstCharacterPipe }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { pop: [{
186
187
  type: ViewChild,
187
188
  args: ['pop', { static: false }]
@@ -206,6 +207,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
206
207
  type: Input
207
208
  }], disableSearch: [{
208
209
  type: Input
210
+ }], hasCaptalise: [{
211
+ type: Input
209
212
  }], deselectItem: [{
210
213
  type: Output
211
214
  }], selectItem: [{
@@ -225,4 +228,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
225
228
  }], initializeDropdown: [{
226
229
  type: Output
227
230
  }] } });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQW1DL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBN0J6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFPaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQzVDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMzQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUN4Qyx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBSXBELGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIseUJBQW9CLEdBQVcsRUFBRSxDQUFDO1FBRWxDLGNBQVMsR0FBRyxLQUFLLENBQUM7SUFPdEIsQ0FBQztJQUVKLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFFLE1BQU0sQ0FBQTtJQUNuQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLDhGQUE4RjtRQUM5RixJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRTtZQUMzQyxJQUFJLENBQUMsb0JBQW9CO2dCQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztZQUU3RCxvQkFBb0I7WUFDcEIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQzNELFlBQVksRUFDWixFQUFFLENBQ0gsQ0FBQztTQUNIO1FBQ0QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxFQUFFO1lBQzFDLElBQUksQ0FBQyxvQkFBb0I7Z0JBQ3ZCLElBQUksQ0FBQyxvQkFBb0I7b0JBQ3pCLEdBQUc7b0JBQ0gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzdEO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRTtZQUNqRCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFDRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUU7WUFDM0MsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ3BJLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBSztRQUNqQix3Q0FBd0M7UUFDeEMsSUFDRSxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDbEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsR0FBRyxDQUFDLEVBQy9EO1lBQ0EsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxjQUFjLENBQUMsY0FBYztRQUMzQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsWUFBWSxDQUFDLFlBQVk7UUFDdkIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLElBQUksSUFBSSxFQUFFO1lBQ3JELFlBQVksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO1lBQ2pELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0I7Z0JBQ3pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQ2hELENBQUMsZUFBZSxFQUFFLEVBQUU7b0JBQ2xCLE9BQU8sZUFBZSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUM7Z0JBQzNDLENBQUMsQ0FDRixDQUFDO1lBQ0osSUFDRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsb0JBQW9CLENBQUMsTUFBTTtnQkFDbEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFDbEQ7Z0JBQ0EsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7YUFDMUI7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7YUFDM0I7U0FDRjtRQUNELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsU0FBUyxDQUFDLFFBQVEsR0FBRyxLQUFLO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsc0JBQXNCLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDL0QsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsc0JBQXNCLEVBQUU7b0JBQ2xELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO2lCQUMzQjtnQkFDRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtvQkFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDN0I7Z0JBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRTtvQkFDbEQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQztpQkFDdEM7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BDO1FBQ0QsSUFBSSxDQUFDLHdCQUF3QixHQUFHLEtBQUssQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQztTQUMzQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUUxQixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNqQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUFpQjtRQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztnQkFFeEMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsb0JBQW9CLEVBQUU7b0JBQy9DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXO3dCQUNoQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsb0JBQW9COzZCQUN4QyxHQUFHLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUNwQixJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FDdEQ7NkJBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNqQjthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWtCO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBSztRQUNqQixJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDakIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FDakQsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FDbEQsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0I7Z0JBQ3pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQztTQUMvQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FDakQsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FDbkQsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7aUlBM05VLG9DQUFvQztxSEFBcEMsb0NBQW9DLDgzQkM3QmpELHNqUEFvTk07MkZEdkxPLG9DQUFvQztrQkFMaEQsU0FBUzsrQkFDRSx5Q0FBeUM7MktBT2QsR0FBRztzQkFBdkMsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNaLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFFWixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBPbkluaXQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0NoaWxkLFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFJlbmRlcmVyMixcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJzRHJvcGRvd25EaXJlY3RpdmUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duJztcblxuaW1wb3J0IHsgUG9wb3ZlckRpcmVjdGl2ZSB9IGZyb20gJ25neC1ib290c3RyYXAvcG9wb3Zlcic7XG5pbXBvcnQgeyB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyUGlwZSB9IGZyb20gJy4vY2FwaXRhbGl6ZS1maXJzdC1jaGFyYWN0ZXIucGlwZSc7XG5pbXBvcnQge1xuICBNdWx0aVNlbGVjdERhdGFNb2R1bGUsXG4gIE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3gsXG59IGZyb20gJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3ltcGhvbnktaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIElucHV0U2VhcmNoQ2hlY2tib3hEcm9wZG93bkNvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0XG57XG4gIEBWaWV3Q2hpbGQoJ3BvcCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwb3A6IFBvcG92ZXJEaXJlY3RpdmU7XG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duJykgZHJvcGRvd246IEJzRHJvcGRvd25EaXJlY3RpdmU7XG5cbiAgQElucHV0KCkgaXNEaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgbXVsdGlTZWxlY3RTZWFyY2g6IE11bHRpU2VsZWN0RGF0YU1vZHVsZTtcbiAgQElucHV0KCkgZW5hYmxlUGxhY2VIb2xkZXI6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNjcm9sbEhlaWdodFBlcmNlbnRhZ2U6IG51bWJlciA9IDUwOyAvLyBzZXR0aW5nIHRoZSBkZWZhdWx0IHRvIDUwXG4gIEBJbnB1dCgpIGlzTG9hZGluZ0RhdGE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzTG9hZGluZ0luaXRpYWxEYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0ludmVyc2U6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNpemU6IHN0cmluZztcbiAgQElucHV0KCkgZGlzYWJsZVNlYXJjaDogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgZGVzZWxlY3RJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94PigpO1xuICBAT3V0cHV0KCkgc2VsZWN0SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8TXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveD4oKTtcbiAgQE91dHB1dCgpIHNlYXJjaElucHV0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3Rpb25SZXRhaW4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjbGVhckFsbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNvbmRpdGlvbkNoZWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBjcmVhdGVOZXdJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBzY3JvbGxFbmQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBpbml0aWFsaXplRHJvcGRvd24gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgcHVibGljIGlzQWxsVG9nZ2xlZDogYm9vbGVhbjtcbiAgcHVibGljIHBvcE1vdXNlTGVmdDogYm9vbGVhbjtcbiAgcHVibGljIG9wZW5Ecm9wZG93biA9IGZhbHNlO1xuICBwdWJsaWMgc2VsZWN0ZWQgPSB0cnVlO1xuICBwdWJsaWMgY29uZGl0aW9uU2VsZWN0aW9uSWQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkOiBib29sZWFuO1xuICBwdWJsaWMgaXNJbkZvY3VzID0gZmFsc2U7XG4gIHB1YmxpYyBpc0ludmFsaWQ6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjYXBpdGFsaXplRmlyc3RDaGFyOiBDYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXJQaXBlLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtc1RleHQoKTtcbiAgICB0aGlzLnNpemU9ICcxNHB4J1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgIC8vIHJhZGlvIGJ1dHRvbiBpZCBnZW5lcmF0b3IsIHRvIHByb3ZpZGUgdW5pcXVlIGlkcyBmb3IgYWR2YW5jZWQgc2VhcmNoIGFuZCBlZGl0IHNtYXJ0IGZvbGRlci5cbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nKSB7XG4gICAgICB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkID1cbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nLnJlcGxhY2UoL1xccy9nLCAnJyk7XG5cbiAgICAgIC8vIEZvciBDdXN0b20gRmllbGRzXG4gICAgICB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkID0gdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZC5yZXBsYWNlKFxuICAgICAgICAvW15hLXpBLVpdL2csXG4gICAgICAgICcnXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5tb2RlbElkZW50aWZpZXIpIHtcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPVxuICAgICAgICB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkICtcbiAgICAgICAgJ18nICtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5tb2RlbElkZW50aWZpZXIucmVwbGFjZSgvXFxzL2csICcnKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgdGhpcy5kcm9wZG93bi5pc09wZW4gPSB0cnVlO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG4gIGZvY3VzT25TZWFyY2hJbnB1dCgpIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nKSB7XG4gICAgICBsZXQgZm9jdXNUZXh0ID0gdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudChgI2Ryb3Bkb3duLXNlYXJjaC0ke3RoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZy5yZXBsYWNlKC9bXlxcd10vZywgXCJcIil9YClcbiAgICAgIGZvY3VzVGV4dC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHNjcm9sbEhhbmRsZXIoZXZlbnQpOiB2b2lkIHtcbiAgICAvLyB0cmlnZ2VyIGFuIGV2ZW50IG9uIGVuZCBvZiB0aGUgc2Nyb2xsXG4gICAgaWYgKFxuICAgICAgZXZlbnQudGFyZ2V0Lm9mZnNldEhlaWdodCArIGV2ZW50LnRhcmdldC5zY3JvbGxUb3AgPj1cbiAgICAgIGV2ZW50LnRhcmdldC5zY3JvbGxIZWlnaHQgKiAodGhpcy5zY3JvbGxIZWlnaHRQZXJjZW50YWdlIC8gMTAwKVxuICAgICkge1xuICAgICAgdGhpcy5zY3JvbGxFbmQuZW1pdCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBvblNlYXJjaElucHV0Q2hhbmdlKCkge1xuICAgIHRoaXMuc2VhcmNoSW5wdXRDaGFuZ2UuZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRGVzZWxlY3RJdGVtKGRlc2VsZWN0ZWRJdGVtKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLmRlc2VsZWN0SXRlbS5lbWl0KGRlc2VsZWN0ZWRJdGVtKTtcbiAgfVxuXG4gIG9uU2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWQgPT0gdHJ1ZSkge1xuICAgICAgc2VsZWN0ZWRJdGVtLmlzQ2hlY2tlZCA9ICFzZWxlY3RlZEl0ZW0uaXNDaGVja2VkO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZmlsdGVyKFxuICAgICAgICAgIChzZWxlY3RlZEFsbEl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZEFsbEl0ZW0uaXNDaGVja2VkID09IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA9PVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0Lmxlbmd0aFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBcbiAgICB0aGlzLmZvY3VzT25TZWFyY2hJbnB1dCgpO1xuICAgIHRoaXMuc2VsZWN0SXRlbS5lbWl0KHNlbGVjdGVkSXRlbSk7XG4gIH1cblxuICBvbkNsZWFyQWxsQ2xpY2soKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG4gICAgdGhpcy5jbGVhckFsbC5lbWl0KCk7XG4gIH1cblxuICBvbk9rQ2xpY2soaXNIaWRkZW4gPSBmYWxzZSkge1xuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplIHx8ICFpc0hpZGRlbikge1xuICAgICAgaWYgKCF0aGlzLmlzSW5Gb2N1cykge1xuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgICAgIHRoaXMub3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgICAgICBpZiAoIXRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25SZXRhaW4uZW1pdCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICAgICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlRHJvcGRvd24oKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuICAgICAgdGhpcy5pbml0aWFsaXplRHJvcGRvd24uZW1pdCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSBmYWxzZTtcbiAgICB0aGlzLm9wZW5Ecm9wZG93biA9IHRydWU7XG4gIH1cblxuICBwb3BPdmVyVGV4dCgpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzaG93UG9wKCkge1xuICAgIHRoaXMucG9wTW91c2VMZWZ0ID0gZmFsc2U7XG5cbiAgICBjb25zdCBzY2hlZHVsZXIgPSB0aW1lcig1MDApO1xuICAgIHNjaGVkdWxlci5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnBvcE1vdXNlTGVmdCAmJiB0aGlzLnBvcCkge1xuICAgICAgICB0aGlzLnBvcC5zaG93KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBvblBvcE1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5wb3BNb3VzZUxlZnQgPSB0cnVlO1xuICAgIHRoaXMucG9wLmhpZGUoKTtcbiAgfVxuXG4gIG9uQ29uZGl0aW9uQ2xpY2soY29uZGl0aW9uOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbmRpdGlvbkNoZWNrLmVtaXQoY29uZGl0aW9uKTtcbiAgfVxuXG4gIHNldFNlbGVjdGVkSXRlbXNUZXh0KCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoKSB7XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcblxuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCkge1xuICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPVxuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgICAubWFwKChkcm9wZG93bmxpc3QpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplRmlyc3RDaGFyLnRyYW5zZm9ybShkcm9wZG93bmxpc3QubmFtZSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAuam9pbignLCAnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ3JlYXRlTmV3SXRlbSgpIHtcbiAgICB0aGlzLmNyZWF0ZU5ld0l0ZW0uZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRm9jdXNDbGljayhpc0luRm9jdXM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzSW5Gb2N1cyA9IGlzSW5Gb2N1cztcbiAgfVxuXG4gIG9uVG9nZ2xlQ2xpY2soZXZlbnQpIHtcbiAgICBpZiAoZXZlbnQgPT0gdHJ1ZSkge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5mb3JFYWNoKFxuICAgICAgICAoZHJvcGRvd25saXN0KSA9PiAoZHJvcGRvd25saXN0LmlzQ2hlY2tlZCA9IHRydWUpXG4gICAgICApO1xuICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3Q7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZvckVhY2goXG4gICAgICAgIChkcm9wZG93bmxpc3QpID0+IChkcm9wZG93bmxpc3QuaXNDaGVja2VkID0gZmFsc2UpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIiwiXG48ZGl2IFtuZ0NsYXNzXT1cInsgJ2lzSW52ZXJzZSc6IGlzSW52ZXJzZSB9XCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmdcIlxuICAgIGNsYXNzPVwic2Z4LWZpbHRlci1sYWJlbCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICA+XG4gICAgPGJcbiAgICAgID57eyBlbmFibGVQbGFjZUhvbGRlciA/IFwiXCIgOiBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIH19XG4gICAgICA8c3BhbiAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZEZpZWxkXCI+Kjwvc3Bhbj5cbiAgICA8L2I+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uXCIgY2xhc3M9XCJzZngtc3dpdGNoLWZpZWxkIHB1bGwtcmlnaHRcIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICBpZD1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICBuYW1lPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgQU5EICcpXCJcbiAgICAgIFtjaGVja2VkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvbiA9PT0gJyBBTkQgJ1wiXG4gICAgLz5cbiAgICA8bGFiZWwgY2xhc3M9XCJGb250NDAwXCIgZm9yPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgID5hbmQ8L2xhYmVsXG4gICAgPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgIGlkPVwicmFkaW8tb3Ite3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgbmFtZT1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgT1IgJylcIlxuICAgICAgW2NoZWNrZWRdPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uID09PSAnIE9SICdcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiRm9udDQwMFwiIGZvcj1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCI+b3I8L2xhYmVsPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93bi13cmFwXCJcbiAgICBbbmdDbGFzc109XCJ7IG9wZW46IG9wZW5Ecm9wZG93biB9XCJcbiAgICBkcm9wZG93blxuICAgICNkcm9wZG93bj1cImJzLWRyb3Bkb3duXCJcbiAgICAob25TaG93bik9XCJ0b2dnbGVEcm9wZG93bigpXCJcbiAgICBbaW5zaWRlQ2xpY2tdPVwidHJ1ZVwiXG4gICAgKG9uSGlkZGVuKT1cIm9uT2tDbGljayh0cnVlKVwiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2ludmFsaWQtY29udHJvbCc6IGlzSW52YWxpZCB9XCJcbiAgICAgIChjbGljayk9XCJkcm9wZG93bi5pc09wZW4gPSB0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGlkPVwiZHJvcGRvd24tc2VhcmNoLXt7IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgfCB0cmltSWR9fVwiXG4gICAgICBbKG5nTW9kZWwpXT1cIm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0XCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU2VhcmNoSW5wdXRDaGFuZ2UoKVwiXG4gICAgICBkcm9wZG93blRvZ2dsZVxuICAgICAgcG9wb3Zlcj1cInt7IHBvcE92ZXJUZXh0KCkgfX1cIlxuICAgICAgY29udGFpbmVyQ2xhc3M9XCJzZngtaW5wdXQtcG9wb3ZlclwiXG4gICAgICB0cmlnZ2Vycz1cIlwiXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgI3BvcD1cImJzLXBvcG92ZXJcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd1BvcCgpXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cIm9uUG9wTW91c2VMZWF2ZSgpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzQ2xpY2sodHJ1ZSlcIlxuICAgICAgKGJsdXIpPVwib25Gb2N1c0NsaWNrKGZhbHNlKVwiXG4gICAgICBjbGFzcz1cInNmeC1wbGFjZWhvbGRlclwiXG4gICAgICBwbGFjZWhvbGRlcj1cInt7XG4gICAgICAgIGVuYWJsZVBsYWNlSG9sZGVyID8gbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyA6ICcnXG4gICAgICB9fVwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cImRpc2FibGVTZWFyY2hcIlxuICAgIC8+XG4gICAgPHN5bXBob255LWljb24gKm5nSWY9XCIhZGlzYWJsZVNlYXJjaFwiIFtzaXplXT1cInNpemVcIiBbaWNvbl09XCInc2ktc2VhcmNoLW5ldydcIj48L3N5bXBob255LWljb24+XG4gICAgPGRpdiAqZHJvcGRvd25NZW51PlxuICAgICAgPGRpdiBjbGFzcz1cInNmeC1jdXN0b20tZHJvcGRvd25cIiAqbmdJZj1cIm9wZW5Ecm9wZG93blwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guaXNTZWxlY3RBbGxFbmFibGVkXCIgY2xhc3M9XCJzZngtc2VsZWN0LWFsbC10b2dnbGVcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNmeC1mb250LWJvbGQgc2Z4LW1yLTEwXCI+U2VsZWN0IEFsbDwvc3Bhbj5cbiAgICAgICAgICA8c3ltcGhvbnktaW5wdXQtdG9nZ2xlXG4gICAgICAgICAgW2lzVG9nZ2xlZF09XCJpc0FsbFRvZ2dsZWRcIlxuICAgICAgICAgIFtpc0ludmVyc2VdPVwiZmFsc2VcIlxuICAgICAgICAgICh0b2dnbGVDbGljayk9XCJvblRvZ2dsZUNsaWNrKCRldmVudClcIlxuICAgICAgICAgID48L3N5bXBob255LWlucHV0LXRvZ2dsZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWNyZWF0ZS1uZXctaXRlbXNcIlxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5sYWJlbENyZWF0ZU5ld0l0ZW1zICYmXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3SXRlbXNcbiAgICAgICAgICBcIlxuICAgICAgICAgIChjbGljayk9XCJvbkNyZWF0ZU5ld0l0ZW0oKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3NmeC1mb250LWJvbGQnOiBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3TW9kYWxcbiAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgfX1cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIW11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFwiXG4gICAgICAgICAgICA+Jm5ic3A7JmFwb3M7XG4gICAgICAgICAgICB7eyBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fSZhcG9zO1xuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aSBjbGFzcz1cInNmeC1pY29uLVBsdXMgc2Z4LWNyZWF0ZS1uZXctaXRlbXMtaWNvblwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gc2VsZWN0ZWQgbGlzdCBkaXYgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi1zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwICYmICFtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlbGVjdGVkSXRlbSBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25EZXNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3ggc2Z4LWQtaW5saW5lLWJsb2NrXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICBjaGVja2VkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgc2VsZWN0ZWRJdGVtLmlkIH19X3t7IHNlbGVjdGVkSXRlbS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgID57eyBzZWxlY3RlZEl0ZW0ubmFtZSB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fVxuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkSXRlbS5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdGVkLWFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PjwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gU2VhcmNoIGxpc3QgIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtZHJvcGRvd24tdW5zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKHNjcm9sbCk9XCJzY3JvbGxIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAgICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QubGVuZ3RoID4gMFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBpZD1cImRyb3Bkb3duLXRyaWdnZXJzLW1hbnVhbGx5XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgZmlsdGVyRHJvcGRvd25PcHRpb24gb2YgbXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3RcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1jaGVja2JveFwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5oYXNNYXhTZWxlY3Rpb25zXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgICAgICAgb25TZWxlY3RJdGVtKGZpbHRlckRyb3Bkb3duT3B0aW9uKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpbHRlckRyb3Bkb3duT3B0aW9uLmlzQ2hlY2tlZFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiRm9udDQwMFwiXG4gICAgICAgICAgICAgICAgZm9yPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgPnt7IGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCBjYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXIgfX1cbiAgICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmaWx0ZXJEcm9wZG93bk9wdGlvbi5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgZmlsdGVyRHJvcGRvd25PcHRpb24uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgICAgIFtoaWRkZW5dPVwiIWlzTG9hZGluZ0RhdGFcIlxuICAgICAgICAgICAgPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgW2hpZGRlbl09XCIhaXNMb2FkaW5nSW5pdGlhbERhdGFcIlxuICAgICAgICA+PC9zeW1waG9ueS1zZngtbG9hZGVyPlxuICAgICAgICA8IS0tIHNlYXJjaCBsaXN0IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBGb290ZXIgLS0+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJvcGVuRHJvcGRvd25cIiBjbGFzcz1cInNmeC1maWx0ZXItaXRlbS1mb290ZXJcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1sZWZ0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgIShcbiAgICAgICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCAmJlxuICAgICAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsZWFyQWxsQ2xpY2soKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQ2xlYXIgQWxsXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6O1wiIChjbGljayk9XCJvbk9rQ2xpY2soKVwiIGNsYXNzPVwicHVsbC1yaWdodFwiPk9LPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBFbmQgRm9vdGVyIC0tPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiaXNJbnZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XG4gICAgUGxlYXNlIHNlbGVjdCBhIHZhbGlkIG9wdGlvblxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQW9DL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBOUJ6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFNakUsaUJBQVksR0FBYSxJQUFJLENBQUMsQ0FBQyxvREFBb0Q7UUFFbEYsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFD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QTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBWaWV3Q2hpbGQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgUmVuZGVyZXIyLFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJ25neC1ib290c3RyYXAvZHJvcGRvd24nO1xuXG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3BvdmVyJztcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXJQaXBlIH0gZnJvbSAnLi9jYXBpdGFsaXplLWZpcnN0LWNoYXJhY3Rlci5waXBlJztcbmltcG9ydCB7XG4gIE11bHRpU2VsZWN0RGF0YU1vZHVsZSxcbiAgTXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveCxcbn0gZnJvbSAnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzeW1waG9ueS1pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDaGVja2JveERyb3Bkb3duQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXRcbntcbiAgQFZpZXdDaGlsZCgncG9wJywgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcDogUG9wb3ZlckRpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZCgnZHJvcGRvd24nKSBkcm9wZG93bjogQnNEcm9wZG93bkRpcmVjdGl2ZTtcblxuICBASW5wdXQoKSBpc0Rpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBtdWx0aVNlbGVjdFNlYXJjaDogTXVsdGlTZWxlY3REYXRhTW9kdWxlO1xuICBASW5wdXQoKSBlbmFibGVQbGFjZUhvbGRlcjogYm9vbGVhbjtcbiAgQElucHV0KCkgc2Nyb2xsSGVpZ2h0UGVyY2VudGFnZTogbnVtYmVyID0gNTA7IC8vIHNldHRpbmcgdGhlIGRlZmF1bHQgdG8gNTBcbiAgQElucHV0KCkgaXNMb2FkaW5nRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNMb2FkaW5nSW5pdGlhbERhdGE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzSW52ZXJzZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc2l6ZTogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNhYmxlU2VhcmNoOiBib29sZWFuO1xuICBASW5wdXQoKSBoYXNDYXB0YWxpc2UgOiBib29sZWFuID0gdHJ1ZTsgLy8gdG8gY2hlY2sgaWYgdGhlIHRleHQgc2hvdWxkIGJlIGNhcGl0YWxpemVkIG9yIG5vdFxuXG4gIEBPdXRwdXQoKSBkZXNlbGVjdEl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3g+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94PigpO1xuICBAT3V0cHV0KCkgc2VhcmNoSW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdGlvblJldGFpbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsZWFyQWxsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY29uZGl0aW9uQ2hlY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNyZWF0ZU5ld0l0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNjcm9sbEVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIGluaXRpYWxpemVEcm9wZG93biA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwdWJsaWMgaXNBbGxUb2dnbGVkOiBib29sZWFuO1xuICBwdWJsaWMgcG9wTW91c2VMZWZ0OiBib29sZWFuO1xuICBwdWJsaWMgb3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gIHB1YmxpYyBzZWxlY3RlZCA9IHRydWU7XG4gIHB1YmxpYyBjb25kaXRpb25TZWxlY3Rpb25JZDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBoYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBpc0luRm9jdXMgPSBmYWxzZTtcbiAgcHVibGljIGlzSW52YWxpZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhcGl0YWxpemVGaXJzdENoYXI6IENhcGl0YWxpemVGaXJzdENoYXJhY3RlclBpcGUsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgIHRoaXMuc2l6ZT0gJzE0cHgnXG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgLy8gcmFkaW8gYnV0dG9uIGlkIGdlbmVyYXRvciwgdG8gcHJvdmlkZSB1bmlxdWUgaWRzIGZvciBhZHZhbmNlZCBzZWFyY2ggYW5kIGVkaXQgc21hcnQgZm9sZGVyLlxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcucmVwbGFjZSgvXFxzL2csICcnKTtcblxuICAgICAgLy8gRm9yIEN1c3RvbSBGaWVsZHNcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPSB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkLnJlcGxhY2UoXG4gICAgICAgIC9bXmEtekEtWl0vZyxcbiAgICAgICAgJydcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllcikge1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9XG4gICAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgK1xuICAgICAgICAnXycgK1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllci5yZXBsYWNlKC9cXHMvZywgJycpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICB0aGlzLmRyb3Bkb3duLmlzT3BlbiA9IHRydWU7XG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cbiAgZm9jdXNPblNlYXJjaElucHV0KCkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIGxldCBmb2N1c1RleHQgPSB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KGAjZHJvcGRvd24tc2VhcmNoLSR7dGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nLnJlcGxhY2UoL1teXFx3XS9nLCBcIlwiKX1gKVxuICAgICAgZm9jdXNUZXh0LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgc2Nyb2xsSGFuZGxlcihldmVudCk6IHZvaWQge1xuICAgIC8vIHRyaWdnZXIgYW4gZXZlbnQgb24gZW5kIG9mIHRoZSBzY3JvbGxcbiAgICBpZiAoXG4gICAgICBldmVudC50YXJnZXQub2Zmc2V0SGVpZ2h0ICsgZXZlbnQudGFyZ2V0LnNjcm9sbFRvcCA+PVxuICAgICAgZXZlbnQudGFyZ2V0LnNjcm9sbEhlaWdodCAqICh0aGlzLnNjcm9sbEhlaWdodFBlcmNlbnRhZ2UgLyAxMDApXG4gICAgKSB7XG4gICAgICB0aGlzLnNjcm9sbEVuZC5lbWl0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uU2VhcmNoSW5wdXRDaGFuZ2UoKSB7XG4gICAgdGhpcy5zZWFyY2hJbnB1dENoYW5nZS5lbWl0KHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQpO1xuICB9XG5cbiAgb25EZXNlbGVjdEl0ZW0oZGVzZWxlY3RlZEl0ZW0pIHtcbiAgICB0aGlzLmZvY3VzT25TZWFyY2hJbnB1dCgpO1xuICAgIHRoaXMuZGVzZWxlY3RJdGVtLmVtaXQoZGVzZWxlY3RlZEl0ZW0pO1xuICB9XG5cbiAgb25TZWxlY3RJdGVtKHNlbGVjdGVkSXRlbSkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzU2VsZWN0QWxsRW5hYmxlZCA9PSB0cnVlKSB7XG4gICAgICBzZWxlY3RlZEl0ZW0uaXNDaGVja2VkID0gIXNlbGVjdGVkSXRlbS5pc0NoZWNrZWQ7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0ID1cbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5maWx0ZXIoXG4gICAgICAgICAgKHNlbGVjdGVkQWxsSXRlbSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGVkQWxsSXRlbS5pc0NoZWNrZWQgPT0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QubGVuZ3RoID09XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QubGVuZ3RoXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9IFxuICAgIHRoaXMuZm9jdXNPblNlYXJjaElucHV0KCk7XG4gICAgdGhpcy5zZWxlY3RJdGVtLmVtaXQoc2VsZWN0ZWRJdGVtKTtcbiAgfVxuXG4gIG9uQ2xlYXJBbGxDbGljaygpIHtcbiAgICB0aGlzLmZvY3VzT25TZWFyY2hJbnB1dCgpO1xuICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcbiAgICB0aGlzLmNsZWFyQWxsLmVtaXQoKTtcbiAgfVxuXG4gIG9uT2tDbGljayhpc0hpZGRlbiA9IGZhbHNlKSB7XG4gICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUgfHwgIWlzSGlkZGVuKSB7XG4gICAgICBpZiAoIXRoaXMuaXNJbkZvY3VzKSB7XG4gICAgICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICAgICAgdGhpcy5vcGVuRHJvcGRvd24gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgICAgIGlmICghdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGlvblJldGFpbi5lbWl0KCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUpIHtcbiAgICAgICAgICB0aGlzLmhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0b2dnbGVEcm9wZG93bigpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG4gICAgICB0aGlzLmluaXRpYWxpemVEcm9wZG93bi5lbWl0KHRydWUpO1xuICAgIH1cbiAgICB0aGlzLmhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZCA9IGZhbHNlO1xuICAgIHRoaXMub3BlbkRyb3Bkb3duID0gdHJ1ZTtcbiAgfVxuXG4gIHBvcE92ZXJUZXh0KCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHNob3dQb3AoKSB7XG4gICAgdGhpcy5wb3BNb3VzZUxlZnQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHNjaGVkdWxlciA9IHRpbWVyKDUwMCk7XG4gICAgc2NoZWR1bGVyLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucG9wTW91c2VMZWZ0ICYmIHRoaXMucG9wKSB7XG4gICAgICAgIHRoaXMucG9wLnNob3coKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uUG9wTW91c2VMZWF2ZSgpIHtcbiAgICB0aGlzLnBvcE1vdXNlTGVmdCA9IHRydWU7XG4gICAgdGhpcy5wb3AuaGlkZSgpO1xuICB9XG5cbiAgb25Db25kaXRpb25DbGljayhjb25kaXRpb246IHN0cmluZykge1xuICAgIHRoaXMuY29uZGl0aW9uQ2hlY2suZW1pdChjb25kaXRpb24pO1xuICB9XG5cbiAgc2V0U2VsZWN0ZWRJdGVtc1RleHQoKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2gpIHtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuXG4gICAgICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0KSB7XG4gICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0XG4gICAgICAgICAgICAgIC5tYXAoKGRyb3Bkb3dubGlzdCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmNhcGl0YWxpemVGaXJzdENoYXIudHJhbnNmb3JtKGRyb3Bkb3dubGlzdC5uYW1lKVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25DcmVhdGVOZXdJdGVtKCkge1xuICAgIHRoaXMuY3JlYXRlTmV3SXRlbS5lbWl0KHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQpO1xuICB9XG5cbiAgb25Gb2N1c0NsaWNrKGlzSW5Gb2N1czogYm9vbGVhbikge1xuICAgIHRoaXMuaXNJbkZvY3VzID0gaXNJbkZvY3VzO1xuICB9XG5cbiAgb25Ub2dnbGVDbGljayhldmVudCkge1xuICAgIGlmIChldmVudCA9PSB0cnVlKSB7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZvckVhY2goXG4gICAgICAgIChkcm9wZG93bmxpc3QpID0+IChkcm9wZG93bmxpc3QuaXNDaGVja2VkID0gdHJ1ZSlcbiAgICAgICk7XG4gICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IHRydWU7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0ID1cbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZm9yRWFjaChcbiAgICAgICAgKGRyb3Bkb3dubGlzdCkgPT4gKGRyb3Bkb3dubGlzdC5pc0NoZWNrZWQgPSBmYWxzZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iLCJcbjxkaXYgW25nQ2xhc3NdPVwieyAnaXNJbnZlcnNlJzogaXNJbnZlcnNlIH1cIj5cbiAgPGRpdlxuICAgICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZ1wiXG4gICAgY2xhc3M9XCJzZngtZmlsdGVyLWxhYmVsIHNmeC1kLWlubGluZS1ibG9ja1wiXG4gID5cbiAgICA8YlxuICAgICAgPnt7IGVuYWJsZVBsYWNlSG9sZGVyID8gXCJcIiA6IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgfX1cbiAgICAgIDxzcGFuICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2gucmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkRmllbGRcIj4qPC9zcGFuPlxuICAgIDwvYj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5jb25kaXRpb25cIiBjbGFzcz1cInNmeC1zd2l0Y2gtZmllbGQgcHVsbC1yaWdodFwiPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgIGlkPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIG5hbWU9XCJyYWRpby1hbmQte3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgdmFsdWU9XCJ5ZXNcIlxuICAgICAgKGNsaWNrKT1cIm9uQ29uZGl0aW9uQ2xpY2soJyBBTkQgJylcIlxuICAgICAgW2NoZWNrZWRdPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uID09PSAnIEFORCAnXCJcbiAgICAvPlxuICAgIDxsYWJlbCBjbGFzcz1cIkZvbnQ0MDBcIiBmb3I9XCJyYWRpby1hbmQte3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgPmFuZDwvbGFiZWxcbiAgICA+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgaWQ9XCJyYWRpby1vci17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICBuYW1lPVwicmFkaW8tb3Ite3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgdmFsdWU9XCJ5ZXNcIlxuICAgICAgKGNsaWNrKT1cIm9uQ29uZGl0aW9uQ2xpY2soJyBPUiAnKVwiXG4gICAgICBbY2hlY2tlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5jb25kaXRpb24gPT09ICcgT1IgJ1wiXG4gICAgLz5cbiAgICA8bGFiZWwgY2xhc3M9XCJGb250NDAwXCIgZm9yPVwicmFkaW8tb3Ite3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIj5vcjwvbGFiZWw+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzZngtY3VzdG9tLWRyb3Bkb3duLXdyYXBcIlxuICAgIFtuZ0NsYXNzXT1cInsgb3Blbjogb3BlbkRyb3Bkb3duIH1cIlxuICAgIGRyb3Bkb3duXG4gICAgI2Ryb3Bkb3duPVwiYnMtZHJvcGRvd25cIlxuICAgIChvblNob3duKT1cInRvZ2dsZURyb3Bkb3duKClcIlxuICAgIFtpbnNpZGVDbGlja109XCJ0cnVlXCJcbiAgICAob25IaWRkZW4pPVwib25Pa0NsaWNrKHRydWUpXCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgW25nQ2xhc3NdPVwieyAnaW52YWxpZC1jb250cm9sJzogaXNJbnZhbGlkIH1cIlxuICAgICAgKGNsaWNrKT1cImRyb3Bkb3duLmlzT3BlbiA9IHRydWVcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgaWQ9XCJkcm9wZG93bi1zZWFyY2gte3sgbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyB8IHRyaW1JZH19XCJcbiAgICAgIFsobmdNb2RlbCldPVwibXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXRcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWFyY2hJbnB1dENoYW5nZSgpXCJcbiAgICAgIGRyb3Bkb3duVG9nZ2xlXG4gICAgICBwb3BvdmVyPVwie3sgcG9wT3ZlclRleHQoKSB9fVwiXG4gICAgICBjb250YWluZXJDbGFzcz1cInNmeC1pbnB1dC1wb3BvdmVyXCJcbiAgICAgIHRyaWdnZXJzPVwiXCJcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICAjcG9wPVwiYnMtcG9wb3ZlclwiXG4gICAgICAobW91c2VlbnRlcik9XCJzaG93UG9wKClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwib25Qb3BNb3VzZUxlYXZlKClcIlxuICAgICAgKGZvY3VzKT1cIm9uRm9jdXNDbGljayh0cnVlKVwiXG4gICAgICAoYmx1cik9XCJvbkZvY3VzQ2xpY2soZmFsc2UpXCJcbiAgICAgIGNsYXNzPVwic2Z4LXBsYWNlaG9sZGVyXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwie3tcbiAgICAgICAgZW5hYmxlUGxhY2VIb2xkZXIgPyBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIDogJydcbiAgICAgIH19XCJcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gICAgICBbcmVhZG9ubHldPVwiZGlzYWJsZVNlYXJjaFwiXG4gICAgLz5cbiAgICA8c3ltcGhvbnktaWNvbiAqbmdJZj1cIiFkaXNhYmxlU2VhcmNoXCIgW3NpemVdPVwic2l6ZVwiIFtpY29uXT1cIidzaS1zZWFyY2gtbmV3J1wiPjwvc3ltcGhvbnktaWNvbj5cbiAgICA8ZGl2ICpkcm9wZG93bk1lbnU+XG4gICAgICA8ZGl2IGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93blwiICpuZ0lmPVwib3BlbkRyb3Bkb3duXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIiBjbGFzcz1cInNmeC1zZWxlY3QtYWxsLXRvZ2dsZVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2Z4LWZvbnQtYm9sZCBzZngtbXItMTBcIj5TZWxlY3QgQWxsPC9zcGFuPlxuICAgICAgICAgIDxzeW1waG9ueS1pbnB1dC10b2dnbGVcbiAgICAgICAgICBbaXNUb2dnbGVkXT1cImlzQWxsVG9nZ2xlZFwiXG4gICAgICAgICAgW2lzSW52ZXJzZV09XCJmYWxzZVwiXG4gICAgICAgICAgKHRvZ2dsZUNsaWNrKT1cIm9uVG9nZ2xlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtdG9nZ2xlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtY3JlYXRlLW5ldy1pdGVtc1wiXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgJiZcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdJdGVtc1xuICAgICAgICAgIFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ3JlYXRlTmV3SXRlbSgpXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnc2Z4LWZvbnQtYm9sZCc6IG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbXVsdGlTZWxlY3RTZWFyY2gubGFiZWxDcmVhdGVOZXdJdGVtcyB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cInNmeC1mb250LWJvbGRcIlxuICAgICAgICAgICAgKm5nSWY9XCIhbXVsdGlTZWxlY3RTZWFyY2guc2hvd0NyZWF0ZU5ld01vZGFsXCJcbiAgICAgICAgICAgID4mbmJzcDsmYXBvcztcbiAgICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0IHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19JmFwb3M7XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxpIGNsYXNzPVwic2Z4LWljb24tUGx1cyBzZngtY3JlYXRlLW5ldy1pdGVtcy1pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWRyb3Bkb3duLXNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDAgJiYgIW11bHRpU2VsZWN0U2VhcmNoLmlzU2VsZWN0QWxsRW5hYmxlZFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInNmeC1kLWlubGluZS1ibG9ja1wiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRJdGVtIG9mIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkRlc2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGNoZWNrZWRcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjbGFzcz1cIkZvbnQ0MDBcIlxuICAgICAgICAgICAgICAgIGZvcj1cInt7IHNlbGVjdGVkSXRlbS5pZCB9fV97eyBzZWxlY3RlZEl0ZW0ubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgPjxzcGFuICpuZ0lmPVwiaGFzQ2FwdGFsaXNlXCI+e3sgc2VsZWN0ZWRJdGVtLm5hbWUgfCBjYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXIgfX08L3NwYW4+PHNwYW4gKm5nSWY9XCIhaGFzQ2FwdGFsaXNlXCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogcHJlXCI+e3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0ZWQtYWRkaXRpb25hbC1pbmZvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBzZWxlY3RlZEl0ZW0uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIHNlbGVjdGVkIGxpc3QgZGl2IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBTZWFyY2ggbGlzdCAgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi11bnNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAoc2Nyb2xsKT1cInNjcm9sbEhhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGlkPVwiZHJvcGRvd24tdHJpZ2dlcnMtbWFudWFsbHlcIlxuICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgIGxldCBmaWx0ZXJEcm9wZG93bk9wdGlvbiBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2Z4LWNoZWNrYm94XCI+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmhhc01heFNlbGVjdGlvbnNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICBvblNlbGVjdEl0ZW0oZmlsdGVyRHJvcGRvd25PcHRpb24pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVyRHJvcGRvd25PcHRpb24uaXNDaGVja2VkXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICA+PHNwYW4gKm5nSWY9XCJoYXNDYXB0YWxpc2VcIj57eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5uYW1lIHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19PC9zcGFuPjxzcGFuICpuZ0lmPVwiIWhhc0NhcHRhbGlzZVwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZVwiPnt7IGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZmlsdGVyRHJvcGRvd25PcHRpb24uYWRkaXRpb25hbEluZm9cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZGRpdGlvbmFsLWluZm9cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGZpbHRlckRyb3Bkb3duT3B0aW9uLmFkZGl0aW9uYWxJbmZvIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PjwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8c3ltcGhvbnktc2Z4LWxvYWRlclxuICAgICAgICAgICAgICBbaGlkZGVuXT1cIiFpc0xvYWRpbmdEYXRhXCJcbiAgICAgICAgICAgID48L3N5bXBob255LXNmeC1sb2FkZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3ltcGhvbnktc2Z4LWxvYWRlclxuICAgICAgICAgIFtoaWRkZW5dPVwiIWlzTG9hZGluZ0luaXRpYWxEYXRhXCJcbiAgICAgICAgPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgPCEtLSBzZWFyY2ggbGlzdCBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gRm9vdGVyIC0tPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwib3BlbkRyb3Bkb3duXCIgY2xhc3M9XCJzZngtZmlsdGVyLWl0ZW0tZm9vdGVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cInB1bGwtbGVmdFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiXG4gICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgbXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QgJiZcbiAgICAgICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25DbGVhckFsbENsaWNrKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIENsZWFyIEFsbFxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OjtcIiAoY2xpY2spPVwib25Pa0NsaWNrKClcIiBjbGFzcz1cInB1bGwtcmlnaHRcIj5PSzwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gRW5kIEZvb3RlciAtLT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImlzSW52YWxpZFwiIGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiPlxuICAgIFBsZWFzZSBzZWxlY3QgYSB2YWxpZCBvcHRpb25cbiAgPC9kaXY+XG48L2Rpdj4iXX0=