@theseam/ui-common 0.3.7 → 0.3.9

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 (42) hide show
  1. package/breadcrumbs/_breadcrumbs-theme.scss +3 -3
  2. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +10 -10
  3. package/bundles/theseam-ui-common-framework.umd.js +40 -13
  4. package/bundles/theseam-ui-common-framework.umd.js.map +1 -1
  5. package/bundles/theseam-ui-common-google-maps.umd.js +1 -1
  6. package/bundles/theseam-ui-common-google-maps.umd.js.map +1 -1
  7. package/bundles/theseam-ui-common-utils.umd.js +83 -5
  8. package/bundles/theseam-ui-common-utils.umd.js.map +1 -1
  9. package/esm2015/framework/base-layout/base-layout.module.js +4 -1
  10. package/esm2015/framework/base-layout/directives/base-layout-side-bar-footer.directive.js +15 -0
  11. package/esm2015/framework/side-nav/side-nav.component.js +16 -6
  12. package/esm2015/framework/side-nav/side-nav.module.js +4 -2
  13. package/esm2015/framework/theseam-ui-common-framework.js +10 -9
  14. package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.js +2 -2
  15. package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.js +1 -1
  16. package/esm2015/utils/geo-json/coerce-feature-collection.js +1 -1
  17. package/esm2015/utils/geo-json/geo-json-to-area.js +1 -1
  18. package/esm2015/utils/geo-json/is-feature-collection.validator.js +1 -1
  19. package/esm2015/utils/geo-json/is-only-geometry-types.js +1 -1
  20. package/esm2015/utils/geo-json/is-only-geometry-types.validator.js +1 -1
  21. package/esm2015/utils/geo-json/merge-polygons.js +1 -1
  22. package/esm2015/utils/geo-json/min-max-points.validator.js +56 -0
  23. package/esm2015/utils/geo-json/no-inner-rings.validator.js +1 -1
  24. package/esm2015/utils/geo-json/no-kinks.validator.js +2 -2
  25. package/esm2015/utils/geo-json/split-multi-polygons.js +1 -1
  26. package/esm2015/utils/public-api.js +2 -1
  27. package/fesm2015/theseam-ui-common-framework.js +31 -6
  28. package/fesm2015/theseam-ui-common-framework.js.map +1 -1
  29. package/fesm2015/theseam-ui-common-google-maps.js +1 -1
  30. package/fesm2015/theseam-ui-common-google-maps.js.map +1 -1
  31. package/fesm2015/theseam-ui-common-utils.js +59 -6
  32. package/fesm2015/theseam-ui-common-utils.js.map +1 -1
  33. package/framework/base-layout/directives/base-layout-side-bar-footer.directive.d.ts +6 -0
  34. package/framework/side-nav/side-nav.component.d.ts +7 -2
  35. package/framework/theseam-ui-common-framework.d.ts +9 -8
  36. package/framework/theseam-ui-common-framework.metadata.json +1 -1
  37. package/framework/top-bar/_top-bar-theme.scss +5 -5
  38. package/google-maps/theseam-ui-common-google-maps.metadata.json +1 -1
  39. package/package.json +1 -1
  40. package/utils/geo-json/min-max-points.validator.d.ts +3 -0
  41. package/utils/public-api.d.ts +1 -0
  42. package/utils/theseam-ui-common-utils.metadata.json +1 -1
@@ -9,6 +9,7 @@ import { BaseLayoutContentFooterDirective } from './directives/base-layout-conte
9
9
  import { BaseLayoutContentHeaderDirective } from './directives/base-layout-content-header.directive';
10
10
  import { BaseLayoutContentDirective } from './directives/base-layout-content.directive';
11
11
  import { BaseLayoutNavToggleDirective } from './directives/base-layout-nav-toggle.directive';
12
+ import { BaseLayoutSideBarFooterDirective } from './directives/base-layout-side-bar-footer.directive';
12
13
  import { BaseLayoutSideBarDirective } from './directives/base-layout-side-bar.directive';
13
14
  import { BaseLayoutTopBarDirective } from './directives/base-layout-top-bar.directive';
14
15
  export class TheSeamBaseLayoutModule {
@@ -19,6 +20,7 @@ TheSeamBaseLayoutModule.decorators = [
19
20
  TheSeamBaseLayoutComponent,
20
21
  BaseLayoutContentDirective,
21
22
  BaseLayoutSideBarDirective,
23
+ BaseLayoutSideBarFooterDirective,
22
24
  BaseLayoutTopBarDirective,
23
25
  BaseLayoutNavToggleDirective,
24
26
  BaseLayoutContentHeaderDirective,
@@ -35,6 +37,7 @@ TheSeamBaseLayoutModule.decorators = [
35
37
  TheSeamBaseLayoutComponent,
36
38
  BaseLayoutContentDirective,
37
39
  BaseLayoutSideBarDirective,
40
+ BaseLayoutSideBarFooterDirective,
38
41
  BaseLayoutTopBarDirective,
39
42
  BaseLayoutNavToggleDirective,
40
43
  BaseLayoutContentHeaderDirective,
@@ -42,4 +45,4 @@ TheSeamBaseLayoutModule.decorators = [
42
45
  ]
43
46
  },] }
44
47
  ];
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9iYXNlLWxheW91dC9iYXNlLWxheW91dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBRXJFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBO0FBQ3ZGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQzVGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBO0FBK0J0RixNQUFNLE9BQU8sdUJBQXVCOzs7WUEzQm5DLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLDBCQUEwQjtvQkFDMUIseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLGdDQUFnQztvQkFDaEMsZ0NBQWdDO2lCQUNqQztnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLHNCQUFzQjtvQkFDdEIsaUJBQWlCO29CQUNqQixvQkFBb0I7aUJBQ3JCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCwwQkFBMEI7b0JBQzFCLDBCQUEwQjtvQkFDMUIsMEJBQTBCO29CQUMxQix5QkFBeUI7b0JBQ3pCLDRCQUE0QjtvQkFDNUIsZ0NBQWdDO29CQUNoQyxnQ0FBZ0M7aUJBQ2pDO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBUaGVTZWFtQnV0dG9uc01vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9idXR0b25zJ1xuaW1wb3J0IHsgVGhlU2VhbUljb25Nb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vaWNvbidcbmltcG9ydCB7IFRoZVNlYW1TY3JvbGxiYXJNb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vc2Nyb2xsYmFyJ1xuXG5pbXBvcnQgeyBUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1sYXlvdXQuY29tcG9uZW50J1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnRGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC1mb290ZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnRIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC1oZWFkZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0TmF2VG9nZ2xlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LW5hdi10b2dnbGUuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dFNpZGVCYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtc2lkZS1iYXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dFRvcEJhckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC10b3AtYmFyLmRpcmVjdGl2ZSdcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRoZVNlYW1CYXNlTGF5b3V0Q29tcG9uZW50LFxuICAgIEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRUb3BCYXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dE5hdlRvZ2dsZURpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEhlYWRlckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEZvb3RlckRpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgICBUaGVTZWFtU2Nyb2xsYmFyTW9kdWxlLFxuICAgIFRoZVNlYW1JY29uTW9kdWxlLFxuICAgIFRoZVNlYW1CdXR0b25zTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudCxcbiAgICBCYXNlTGF5b3V0Q29udGVudERpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0U2lkZUJhckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0VG9wQmFyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXROYXZUb2dnbGVEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dENvbnRlbnRIZWFkZXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dENvbnRlbnRGb290ZXJEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtQmFzZUxheW91dE1vZHVsZSB7IH1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9iYXNlLWxheW91dC9iYXNlLWxheW91dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBRXJFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBO0FBQ3ZGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQzVGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG9EQUFvRCxDQUFBO0FBQ3JHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBO0FBaUN0RixNQUFNLE9BQU8sdUJBQXVCOzs7WUE3Qm5DLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLDBCQUEwQjtvQkFDMUIsZ0NBQWdDO29CQUNoQyx5QkFBeUI7b0JBQ3pCLDRCQUE0QjtvQkFDNUIsZ0NBQWdDO29CQUNoQyxnQ0FBZ0M7aUJBQ2pDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFlBQVk7b0JBQ1osc0JBQXNCO29CQUN0QixpQkFBaUI7b0JBQ2pCLG9CQUFvQjtpQkFDckI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLDBCQUEwQjtvQkFDMUIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLGdDQUFnQztvQkFDaEMseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLGdDQUFnQztvQkFDaEMsZ0NBQWdDO2lCQUNqQzthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgVGhlU2VhbUJ1dHRvbnNNb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vYnV0dG9ucydcbmltcG9ydCB7IFRoZVNlYW1JY29uTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2ljb24nXG5pbXBvcnQgeyBUaGVTZWFtU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3Njcm9sbGJhcidcblxuaW1wb3J0IHsgVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtbGF5b3V0LmNvbXBvbmVudCdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQtZm9vdGVyLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50SGVhZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQtaGVhZGVyLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dE5hdlRvZ2dsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1uYXYtdG9nZ2xlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRTaWRlQmFyRm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXNpZGUtYmFyLWZvb3Rlci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0U2lkZUJhckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0VG9wQmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXRvcC1iYXIuZGlyZWN0aXZlJ1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQsXG4gICAgQmFzZUxheW91dENvbnRlbnREaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFNpZGVCYXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFNpZGVCYXJGb290ZXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFRvcEJhckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0TmF2VG9nZ2xlRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRDb250ZW50SGVhZGVyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRDb250ZW50Rm9vdGVyRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUG9ydGFsTW9kdWxlLFxuICAgIFRoZVNlYW1TY3JvbGxiYXJNb2R1bGUsXG4gICAgVGhlU2VhbUljb25Nb2R1bGUsXG4gICAgVGhlU2VhbUJ1dHRvbnNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRoZVNlYW1CYXNlTGF5b3V0Q29tcG9uZW50LFxuICAgIEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFyRm9vdGVyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRUb3BCYXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dE5hdlRvZ2dsZURpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEhlYWRlckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEZvb3RlckRpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1CYXNlTGF5b3V0TW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,15 @@
1
+ import { Directive, ElementRef } from '@angular/core';
2
+ export class BaseLayoutSideBarFooterDirective {
3
+ constructor(_elementRef) {
4
+ this._elementRef = _elementRef;
5
+ }
6
+ }
7
+ BaseLayoutSideBarFooterDirective.decorators = [
8
+ { type: Directive, args: [{
9
+ selector: '[seamBaseLayoutSideBarFooter]'
10
+ },] }
11
+ ];
12
+ BaseLayoutSideBarFooterDirective.ctorParameters = () => [
13
+ { type: ElementRef }
14
+ ];
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQtc2lkZS1iYXItZm9vdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvYmFzZS1sYXlvdXQvZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci1mb290ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBT3JELE1BQU0sT0FBTyxnQ0FBZ0M7SUFFM0MsWUFDUyxXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtJQUM1QixDQUFDOzs7WUFQTixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLCtCQUErQjthQUMxQzs7O1lBTm1CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBIYXNFbGVtZW50UmVmIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzZWFtQmFzZUxheW91dFNpZGVCYXJGb290ZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBCYXNlTGF5b3V0U2lkZUJhckZvb3RlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEhhc0VsZW1lbnRSZWYge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHsgfVxuXG59XG4iXX0=
@@ -1,13 +1,15 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { animate, animateChild, group, query, state, style, transition, trigger } from '@angular/animations';
3
3
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
- import { ChangeDetectionStrategy, Component, HostBinding, Inject, Input, Optional, ViewEncapsulation } from '@angular/core';
4
+ import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, Inject, Input, Optional, Output, TemplateRef, ViewContainerRef, ViewEncapsulation } from '@angular/core';
5
5
  import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
6
6
  import { distinctUntilChanged, map, shareReplay, switchMap, takeUntil, tap } from 'rxjs/operators';
7
7
  import { InputBoolean } from '@theseam/ui-common/core';
8
8
  import { TheSeamLayoutService } from '@theseam/ui-common/layout';
9
9
  import { THESEAM_BASE_LAYOUT_REF } from '../base-layout/index';
10
10
  import { TheSeamSideNavService } from './side-nav.service';
11
+ import { BaseLayoutSideBarFooterDirective } from '../base-layout/directives/base-layout-side-bar-footer.directive';
12
+ import { TemplatePortal } from '@angular/cdk/portal';
11
13
  const EXPANDED_STATE = 'expanded';
12
14
  const COLLAPSED_STATE = 'collapsed';
13
15
  const EXPANDED_OVERLAY_STATE = 'expanded-overlay';
@@ -36,7 +38,8 @@ export function sideNavExpandStateChangeFn(fromState, toState) {
36
38
  (EXPANDED_STATES.indexOf(toState) !== -1 && COLLAPSED_STATES.indexOf(fromState) !== -1)));
37
39
  }
38
40
  export class SideNavComponent {
39
- constructor(_layout, _sideNav, _baseLayoutRef) {
41
+ constructor(_viewContainerRef, _layout, _sideNav, _baseLayoutRef) {
42
+ this._viewContainerRef = _viewContainerRef;
40
43
  this._layout = _layout;
41
44
  this._sideNav = _sideNav;
42
45
  this._baseLayoutRef = _baseLayoutRef;
@@ -48,9 +51,10 @@ export class SideNavComponent {
48
51
  this.hasHeaderToggle = true;
49
52
  this._items = new BehaviorSubject([]);
50
53
  this._expanded = new BehaviorSubject(true);
51
- this.expanded$ = this._expanded.asObservable();
54
+ this.expanded$ = this._expanded.asObservable().pipe(tap(expanded => this.toggleExpand.emit(expanded)));
52
55
  this._overlay = new BehaviorSubject(false);
53
56
  this.overlay$ = this._overlay.asObservable();
57
+ this.toggleExpand = new EventEmitter();
54
58
  this._backdropHidden = new BehaviorSubject(true);
55
59
  this.items$ = this._items.asObservable().pipe(switchMap(items => this._sideNav.createItemsObservable(items)), shareReplay({ bufferSize: 1, refCount: true }));
56
60
  this.isMobile$ = this._layout.isMobile$.pipe(tap(isMobile => isMobile && this.collapse()));
@@ -74,6 +78,9 @@ export class SideNavComponent {
74
78
  this.sideNavExpandedState$
75
79
  .pipe(takeUntil(this._ngUnsubscribe))
76
80
  .subscribe(v => this._sideNavExpand = v);
81
+ if (this._sideBarFooterTpl) {
82
+ this._sideBarFooterPortal = new TemplatePortal(this._sideBarFooterTpl, this._viewContainerRef);
83
+ }
77
84
  }
78
85
  ngOnDestroy() {
79
86
  this._ngUnsubscribe.next();
@@ -105,7 +112,7 @@ export class SideNavComponent {
105
112
  SideNavComponent.decorators = [
106
113
  { type: Component, args: [{
107
114
  selector: 'seam-side-nav',
108
- template: "<div class=\"side-nav-backdrop\" *ngIf=\"isMobile$ | async\"\n [@sideNavBackdrop]=\"_sideNavExpand\"\n [class.side-nav-backdrop-hidden]=\"_backdropHidden | async\"></div>\n\n<div class=\"side-nav-inner-wrapper\" [@sideNavExpand]=\"_sideNavExpand\"\n (@sideNavExpand.start)=\"animateStart()\"\n (@sideNavExpand.done)=\"animateEnd()\">\n <nav class=\"nav side-nav-content\">\n <seam-side-nav-toggle *ngIf=\"hasHeaderToggle\"\n [expanded]=\"expanded$ | async\"\n (toggleExpand)=\"toggle()\">\n </seam-side-nav-toggle>\n <div class=\"side-nav-items-container\" seamOverlayScrollbar>\n <seam-side-nav-item *ngFor=\"let item of items$ | async\"\n [compact]=\"!(expanded$ | async)\"\n [itemType]=\"$any(item)?.itemType\"\n [icon]=\"$any(item)?.icon\"\n [label]=\"$any(item)?.label\"\n [link]=\"$any(item)?.link\"\n [badgeText]=\"$any(item)?.badge?.text\"\n [badgeTheme]=\"$any(item)?.badge?.theme || 'danger'\"\n [badgeSrContent]=\"$any(item)?.badge?.srContent\"\n [badgeTooltip]=\"$any(item)?.badge?.tooltip\"\n [queryParams]=\"$any(item)?.queryParams\"\n [children]=\"$any(item)?.children\"\n [active]=\"$any(item).__state.active\"\n [expanded]=\"$any(item).__state.expanded\">\n </seam-side-nav-item>\n </div>\n </nav>\n</div>\n",
115
+ template: "<div class=\"side-nav-backdrop\" *ngIf=\"isMobile$ | async\"\n [@sideNavBackdrop]=\"_sideNavExpand\"\n [class.side-nav-backdrop-hidden]=\"_backdropHidden | async\"></div>\n\n<div class=\"side-nav-inner-wrapper\" [@sideNavExpand]=\"_sideNavExpand\"\n (@sideNavExpand.start)=\"animateStart()\"\n (@sideNavExpand.done)=\"animateEnd()\">\n <nav class=\"nav side-nav-content\">\n <seam-side-nav-toggle *ngIf=\"hasHeaderToggle\"\n [expanded]=\"expanded$ | async\"\n (toggleExpand)=\"toggle()\">\n </seam-side-nav-toggle>\n <div class=\"side-nav-items-container\" seamOverlayScrollbar>\n <seam-side-nav-item *ngFor=\"let item of items$ | async\"\n [compact]=\"!(expanded$ | async)\"\n [itemType]=\"$any(item)?.itemType\"\n [icon]=\"$any(item)?.icon\"\n [label]=\"$any(item)?.label\"\n [link]=\"$any(item)?.link\"\n [badgeText]=\"$any(item)?.badge?.text\"\n [badgeTheme]=\"$any(item)?.badge?.theme || 'danger'\"\n [badgeSrContent]=\"$any(item)?.badge?.srContent\"\n [badgeTooltip]=\"$any(item)?.badge?.tooltip\"\n [queryParams]=\"$any(item)?.queryParams\"\n [children]=\"$any(item)?.children\"\n [active]=\"$any(item).__state.active\"\n [expanded]=\"$any(item).__state.expanded\">\n </seam-side-nav-item>\n </div>\n <ng-template [cdkPortalOutlet]=\"_sideBarFooterPortal\"></ng-template>\n </nav>\n</div>\n",
109
116
  providers: [
110
117
  TheSeamSideNavService
111
118
  ],
@@ -178,6 +185,7 @@ SideNavComponent.decorators = [
178
185
  },] }
179
186
  ];
180
187
  SideNavComponent.ctorParameters = () => [
188
+ { type: ViewContainerRef },
181
189
  { type: TheSeamLayoutService },
182
190
  { type: TheSeamSideNavService },
183
191
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [THESEAM_BASE_LAYOUT_REF,] }] }
@@ -187,9 +195,11 @@ SideNavComponent.propDecorators = {
187
195
  hasHeaderToggle: [{ type: Input }],
188
196
  items: [{ type: Input }],
189
197
  expanded: [{ type: Input }],
190
- overlay: [{ type: Input }]
198
+ overlay: [{ type: Input }],
199
+ toggleExpand: [{ type: Output }],
200
+ _sideBarFooterTpl: [{ type: ContentChild, args: [BaseLayoutSideBarFooterDirective, { static: true, read: TemplateRef },] }]
191
201
  };
192
202
  __decorate([
193
203
  InputBoolean()
194
204
  ], SideNavComponent.prototype, "hasHeaderToggle", void 0);
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zaWRlLW5hdi9zaWRlLW5hdi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUE7QUFDNUIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUU5SSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFVLEdBQUcsRUFBbUIsV0FBVyxFQUFhLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFdEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBRWhFLE9BQU8sRUFBZ0QsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUc1RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUUxRCxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUE7QUFDakMsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFBO0FBRW5DLE1BQU0sc0JBQXNCLEdBQUcsa0JBQWtCLENBQUE7QUFDakQsTUFBTSx1QkFBdUIsR0FBRyxtQkFBbUIs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OzRCQUNkLEtBQUssRUFBRSxvQkFBb0I7NEJBQzNCLFNBQVMsRUFBRSxlQUFlO3lCQUMzQixDQUFDLENBQUM7d0JBQ0gsS0FBSyxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQzs0QkFDbkMsUUFBUSxFQUFFLFVBQVU7NEJBQ3BCLEdBQUcsRUFBRSxDQUFDOzRCQUNOLE1BQU0sRUFBRSxNQUFNOzRCQUNkLE1BQU0sRUFBRSxDQUFDOzRCQUNULElBQUksRUFBRSxDQUFDOzRCQUNQLEtBQUssRUFBRSxNQUFNOzRCQUNiLE1BQU0sRUFBRSxNQUFNOzRCQUNkLEtBQUssRUFBRSxvQkFBb0I7NEJBQzNCLFNBQVMsRUFBRSxpQ0FBaUM7NEJBQzVDLFlBQVksRUFBRSxRQUFRO3lCQUN2QixDQUFDLENBQUM7d0JBRUgsdUZBQXVGO3dCQUV2RixVQUFVLENBQUMsMEJBQTBCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7d0JBRW5FLDJEQUEyRDt3QkFDM0QsNERBQTREO3dCQUM1RCw0REFBNEQ7d0JBQzVELFlBQVk7d0JBQ1osMkRBQTJEO3dCQUMzRCwyREFBMkQ7d0JBQzNELGlFQUFpRTt3QkFDakUsa0NBQWtDO3dCQUNsQyxPQUFPO3dCQUNQLE1BQU07cUJBQ1AsQ0FBQztpQkFDSDtnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7O2FBQ3RDOzs7WUEzSFEsb0JBQW9CO1lBS3BCLHFCQUFxQjs0Q0E2SnpCLFFBQVEsWUFBSSxNQUFNLFNBQUMsdUJBQXVCOzs7NkJBN0I1QyxXQUFXLFNBQUMsY0FBYzs4QkFFMUIsS0FBSztvQkFFTCxLQUFLO3VCQU1MLEtBQUs7c0JBTUwsS0FBSzs7QUFkbUI7SUFBZixZQUFZLEVBQUU7eURBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgYW5pbWF0ZUNoaWxkLFxuICBncm91cCxcbiAgcXVlcnksXG4gIHN0YXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlclxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJ1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgbWFwVG8sIHBhaXJ3aXNlLCBzaGFyZVJlcGxheSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgVGhlU2VhbUxheW91dFNlcnZpY2UgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vbGF5b3V0J1xuXG5pbXBvcnQgeyBJVGhlU2VhbUJhc2VMYXlvdXROYXYsIElUaGVTZWFtQmFzZUxheW91dFJlZiwgVEhFU0VBTV9CQVNFX0xBWU9VVF9SRUYgfSBmcm9tICcuLi9iYXNlLWxheW91dC9pbmRleCdcblxuaW1wb3J0IHsgSVNpZGVOYXZJdGVtIH0gZnJvbSAnLi9zaWRlLW5hdi5tb2RlbHMnXG5pbXBvcnQgeyBUaGVTZWFtU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL3NpZGUtbmF2LnNlcnZpY2UnXG5cbmNvbnN0IEVYUEFOREVEX1NUQVRFID0gJ2V4cGFuZGVkJ1xuY29uc3QgQ09MTEFQU0VEX1NUQVRFID0gJ2NvbGxhcHNlZCdcblxuY29uc3QgRVhQQU5ERURfT1ZFUkxBWV9TVEFURSA9ICdleHBhbmRlZC1vdmVybGF5J1xuY29uc3QgQ09MTEFQU0VEX09WRVJMQVlfU1RBVEUgPSAnY29sbGFwc2VkLW92ZXJsYXknXG5cbmNvbnN0IEVYUEFOREVEX1NUQVRFUyA9IFsgRVhQQU5ERURfU1RBVEUsIEVYUEFOREVEX09WRVJMQVlfU1RBVEUgXVxuY29uc3QgQ09MTEFQU0VEX1NUQVRFUyA9IFsgQ09MTEFQU0VEX1NUQVRFLCBDT0xMQVBTRURfT1ZFUkxBWV9TVEFURSBdXG5jb25zdCBFWFBBTkRfU1RBVEVTID0gWyAuLi5FWFBBTkRFRF9TVEFURVMsIC4uLkNPTExBUFNFRF9TVEFURVMgXVxuXG5leHBvcnQgZnVuY3Rpb24gc2lkZU5hdkV4cGFuZFN0YXRlQ2hhbmdlRm4oZnJvbVN0YXRlOiBzdHJpbmcsIHRvU3RhdGU6IHN0cmluZykge1xuICAvLyBjb25zb2xlLmxvZyh7IGZyb21TdGF0ZSwgdG9TdGF0ZSB9KVxuICByZXR1cm4gZnJvbVN0YXRlICE9PSB0b1N0YXRlICYmXG4gICAgKFxuICAgICAgLy8gTk9URTogVGhlIGN1cnJlbnQgd2F5IHRoZSBzaWRlIG5hdiBpcyBiZWluZyB1c2VkIGl0IGNhdXNlcyB0aGVcbiAgICAgIC8vIGNvbXBvbmVudCB0byBzb21ldGltZXMgZ2V0IHBsYWNlZCBpbiB0aGUgd3JvbmcgbG9jYXRpb24gaW5pdGlhbGx5LiBJdFxuICAgICAgLy8gaXMgZmFzdCBlbm91Z2ggdG8gbm90IGJlIG5vdGljZWQgd2l0aG91dCBhbiBpbml0aWFsIGFuaW1hdGlvbiB1c3VhbGx5LFxuICAgICAgLy8gc28gaXQgaXMgY29tbWVudGVkIG91dCBiZWxvdyB1bnRpbCB0aGUgaW5pdGlhbCBwbGFjZW1lbnQgaXNzdWUgaXRcbiAgICAgIC8vIGZpeGVkLlxuICAgICAgLy9cbiAgICAgIC8vIChcbiAgICAgIC8vICAgZnJvbVN0YXRlID09PSAndm9pZCcgJiYgRVhQQU5EX1NUQVRFUy5pbmRleE9mKHRvU3RhdGUpICE9PSAtMVxuICAgICAgLy8gICB8fFxuICAgICAgLy8gICB0b1N0YXRlID09PSAndm9pZCcgJiYgRVhQQU5EX1NUQVRFUy5pbmRleE9mKGZyb21TdGF0ZSkgIT09IC0xXG4gICAgICAvLyApXG4gICAgICAvLyB8fFxuICAgICAgKFxuICAgICAgICAoRVhQQU5ERURfU1RBVEVTLmluZGV4T2YoZnJvbVN0YXRlKSAhPT0gLTEgJiYgQ09MTEFQU0VEX1NUQVRFUy5pbmRleE9mKHRvU3RhdGUpICE9PSAtMSlcbiAgICAgICAgfHxcbiAgICAgICAgKEVYUEFOREVEX1NUQVRFUy5pbmRleE9mKHRvU3RhdGUpICE9PSAtMSAmJiBDT0xMQVBTRURfU1RBVEVTLmluZGV4T2YoZnJvbVN0YXRlKSAhPT0gLTEpXG4gICAgICApXG4gICAgKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXNpZGUtbmF2JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGUtbmF2LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lkZS1uYXYuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgVGhlU2VhbVNpZGVOYXZTZXJ2aWNlXG4gIF0sXG4gIGFuaW1hdGlvbnM6IFtcblxuICAgIC8vXG4gICAgLy8gVE9ETzogVGhpcyBhbmltYXRpb24gY29kZSB0dXJuZWQgaW50byBhIG1lc3MuIENsZWFuIGl0IHVwIGFuZCBtYWtlIGl0XG4gICAgLy8gbW9yZSBzbW9vdGguXG4gICAgLy9cblxuICAgIHRyaWdnZXIoJ3NpZGVOYXZBbmltJywgW1xuICAgICAgdHJhbnNpdGlvbihzaWRlTmF2RXhwYW5kU3RhdGVDaGFuZ2VGbiwgW1xuICAgICAgICBncm91cChbXG4gICAgICAgICAgcXVlcnkoJ0BzaWRlTmF2QmFja2Ryb3AnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgICAgICBxdWVyeSgnQHNpZGVOYXZFeHBhbmQnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgICAgXSksXG4gICAgICBdKSxcbiAgICBdKSxcblxuICAgIHRyaWdnZXIoJ3NpZGVOYXZCYWNrZHJvcCcsIFtcbiAgICAgIHN0YXRlKEVYUEFOREVEX09WRVJMQVlfU1RBVEUsIHN0eWxlKHsgb3BhY2l0eTogJzEnIH0pKSxcbiAgICAgIHN0YXRlKENPTExBUFNFRF9PVkVSTEFZX1NUQVRFLCBzdHlsZSh7IG9wYWNpdHk6ICcwJyB9KSksXG5cbiAgICAgIC8vIHRyYW5zaXRpb24oKGZyb21TdGF0ZSwgdG9TdGF0ZSwgZWxlbWVudCwgcGFyYW1zKSA9PiB7XG4gICAgICAvLyAgIGNvbnNvbGUubG9nKCdzaWRlTmF2QmFja2Ryb3AgdicsIGZyb21TdGF0ZSwgdG9TdGF0ZSwgZWxlbWVudCwgcGFyYW1zKVxuICAgICAgLy8gICByZXR1cm4gZmFsc2VcbiAgICAgIC8vIH0sIFtdKSxcblxuICAgICAgdHJhbnNpdGlvbihzaWRlTmF2RXhwYW5kU3RhdGVDaGFuZ2VGbiwgYW5pbWF0ZSgnMC4ycyBlYXNlLWluLW91dCcpKSxcbiAgICBdKSxcblxuICAgIHRyaWdnZXIoJ3NpZGVOYXZFeHBhbmQnLCBbXG4gICAgICAvLyBUT0RPOiBNYWtlIHdpZHRoIGNvbmZpZ3VyYWJsZS5cbiAgICAgIHN0YXRlKEVYUEFOREVEX1NUQVRFLCBzdHlsZSh7IHdpZHRoOiAnMjYwcHgnIH0pKSxcbiAgICAgIHN0YXRlKENPTExBUFNFRF9TVEFURSwgc3R5bGUoeyB3aWR0aDogJzUwcHgnLCAnb3ZlcmZsb3cteCc6ICdoaWRkZW4nIH0pKSxcblxuICAgICAgc3RhdGUoRVhQQU5ERURfT1ZFUkxBWV9TVEFURSwgc3R5bGUoe1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgdG9wOiAwLFxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICBsZWZ0OiAwLFxuICAgICAgICBmbG9hdDogJ2xlZnQnLFxuICAgICAgICB6SW5kZXg6ICc5OTk5JyxcbiAgICAgICAgd2lkdGg6ICdjYWxjKDEwMHZ3IC0gNTBweCknLFxuICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJ1xuICAgICAgfSkpLFxuICAgICAgc3RhdGUoQ09MTEFQU0VEX09WRVJMQVlfU1RBVEUsIHN0eWxlKHtcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHRvcDogMCxcbiAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgIGJvdHRvbTogMCxcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgZmxvYXQ6ICdsZWZ0JyxcbiAgICAgICAgekluZGV4OiAnOTk5OScsXG4gICAgICAgIHdpZHRoOiAnY2FsYygxMDB2dyAtIDUwcHgpJyxcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWChjYWxjKC0xMDB2dyArIDUwcHgpKScsXG4gICAgICAgICdvdmVyZmxvdy14JzogJ2hpZGRlbidcbiAgICAgIH0pKSxcblxuICAgICAgLy8gdHJhbnNpdGlvbihgJHtFWFBBTkRFRF9TVEFURX0gPD0+ICR7Q09MTEFQU0VEX1NUQVRFfWAsIGFuaW1hdGUoJzAuMnMgZWFzZS1pbi1vdXQnKSksXG5cbiAgICAgIHRyYW5zaXRpb24oc2lkZU5hdkV4cGFuZFN0YXRlQ2hhbmdlRm4sIGFuaW1hdGUoJzAuMnMgZWFzZS1pbi1vdXQnKSksXG5cbiAgICAgIC8vIHRyYW5zaXRpb24oYCR7RVhQQU5ERURfU1RBVEV9IDw9PiAke0NPTExBUFNFRF9TVEFURX1gLCBbXG4gICAgICAvLyAgIC8vIHF1ZXJ5KCc6bGVhdmUnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIC8vICAgLy8gcXVlcnkoJzplbnRlcicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgLy8gICBncm91cChbXG4gICAgICAvLyAgICAgcXVlcnkoJzpsZWF2ZScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgLy8gICAgIHF1ZXJ5KCc6ZW50ZXInLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIC8vICAgICBxdWVyeSgnQGNvbXBhY3RBbmltJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAvLyAgICAgYW5pbWF0ZSgnNS4ycyBlYXNlLWluLW91dCcpXG4gICAgICAvLyAgIF0pXG4gICAgICAvLyBdKSxcbiAgICBdKVxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBTaWRlTmF2Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIElUaGVTZWFtQmFzZUxheW91dE5hdiB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9oYXNIZWFkZXJUb2dnbGU6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpXG5cbiAgLy8gQEhvc3RCaW5kaW5nKCdAc2lkZU5hdkV4cGFuZCcpIF9zaWRlTmF2RXhwYW5kID0gRVhQQU5ERURfU1RBVEVcbiAgLy8gX3NpZGVOYXZFeHBhbmQgPSBFWFBBTkRFRF9TVEFURVxuXG4gIC8vIEBIb3N0QmluZGluZygnQHNpZGVOYXZBbmltJykgX3NpZGVOYXZFeHBhbmQgPSBFWFBBTkRFRF9TVEFURVxuICBASG9zdEJpbmRpbmcoJ0BzaWRlTmF2QW5pbScpIF9zaWRlTmF2RXhwYW5kID0gJ2luaXRpYWwnXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGhhc0hlYWRlclRvZ2dsZSA9IHRydWVcblxuICBASW5wdXQoKVxuICBnZXQgaXRlbXMoKTogSVNpZGVOYXZJdGVtW10geyByZXR1cm4gdGhpcy5faXRlbXMudmFsdWUgfVxuICBzZXQgaXRlbXModmFsdWU6IElTaWRlTmF2SXRlbVtdKSB7IHRoaXMuX2l0ZW1zLm5leHQodmFsdWUpIH1cbiAgcHJpdmF0ZSBfaXRlbXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElTaWRlTmF2SXRlbVtdPihbXSlcbiAgcHVibGljIHJlYWRvbmx5IGl0ZW1zJDogT2JzZXJ2YWJsZTxJU2lkZU5hdkl0ZW1bXT5cblxuICBASW5wdXQoKVxuICBnZXQgZXhwYW5kZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9leHBhbmRlZC52YWx1ZSB9XG4gIHNldCBleHBhbmRlZCh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLl9leHBhbmRlZC5uZXh0KGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpIH1cbiAgcHJpdmF0ZSBfZXhwYW5kZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpXG4gIHB1YmxpYyByZWFkb25seSBleHBhbmRlZCQgPSB0aGlzLl9leHBhbmRlZC5hc09ic2VydmFibGUoKVxuXG4gIEBJbnB1dCgpXG4gIGdldCBvdmVybGF5KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fb3ZlcmxheS52YWx1ZSB9XG4gIHNldCBvdmVybGF5KHZhbHVlOiBib29sZWFuKSB7IHRoaXMuX292ZXJsYXkubmV4dChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpKSB9XG4gIHByaXZhdGUgX292ZXJsYXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICBwdWJsaWMgcmVhZG9ubHkgb3ZlcmxheSQgPSB0aGlzLl9vdmVybGF5LmFzT2JzZXJ2YWJsZSgpXG5cbiAgcHVibGljIHJlYWRvbmx5IGlzTW9iaWxlJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuICBwdWJsaWMgcmVhZG9ubHkgc2lkZU5hdkV4cGFuZGVkU3RhdGUkOiBPYnNlcnZhYmxlPHN0cmluZz5cbiAgcHVibGljIF9iYWNrZHJvcEhpZGRlbiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9sYXlvdXQ6IFRoZVNlYW1MYXlvdXRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3NpZGVOYXY6IFRoZVNlYW1TaWRlTmF2U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fQkFTRV9MQVlPVVRfUkVGKSBwcml2YXRlIHJlYWRvbmx5IF9iYXNlTGF5b3V0UmVmOiBJVGhlU2VhbUJhc2VMYXlvdXRSZWZcbiAgKSB7XG4gICAgdGhpcy5pdGVtcyQgPSB0aGlzLl9pdGVtcy5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKGl0ZW1zID0+IHRoaXMuX3NpZGVOYXYuY3JlYXRlSXRlbXNPYnNlcnZhYmxlKGl0ZW1zKSksXG4gICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICAgIClcblxuICAgIHRoaXMuaXNNb2JpbGUkID0gdGhpcy5fbGF5b3V0LmlzTW9iaWxlJC5waXBlKFxuICAgICAgdGFwKGlzTW9iaWxlID0+IGlzTW9iaWxlICYmIHRoaXMuY29sbGFwc2UoKSlcbiAgICApXG5cbiAgICB0aGlzLnNpZGVOYXZFeHBhbmRlZFN0YXRlJCA9IGNvbWJpbmVMYXRlc3QoWyB0aGlzLmV4cGFuZGVkJCwgdGhpcy5vdmVybGF5JCBdKS5waXBlKFxuICAgICAgbWFwKChbIGV4cGFuZGVkLCBvdmVybGF5IF0pID0+IGV4cGFuZGVkXG4gICAgICAgID8gb3ZlcmxheSA/IEVYUEFOREVEX09WRVJMQVlfU1RBVEUgOiBFWFBBTkRFRF9TVEFURVxuICAgICAgICA6IG92ZXJsYXkgPyBDT0xMQVBTRURfT1ZFUkxBWV9TVEFURSA6IENPTExBUFNFRF9TVEFURVxuICAgICAgKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5fYmFzZUxheW91dFJlZikgeyB0aGlzLl9iYXNlTGF5b3V0UmVmLnJlZ2lzdGVyTmF2KHRoaXMpIH1cblxuICAgIHRoaXMuaXNNb2JpbGUkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKGIgPT4gdGhpcy5vdmVybGF5ID0gYilcblxuICAgIHRoaXMuc2lkZU5hdkV4cGFuZGVkU3RhdGUkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHYgPT4gdGhpcy5fc2lkZU5hdkV4cGFuZCA9IHYpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICAgIGlmICh0aGlzLl9iYXNlTGF5b3V0UmVmKSB7IHRoaXMuX2Jhc2VMYXlvdXRSZWYudW5yZWdpc3Rlck5hdih0aGlzKSB9XG4gIH1cblxuICBwdWJsaWMgZXhwYW5kKCkge1xuICAgIHRoaXMuZXhwYW5kZWQgPSB0cnVlXG4gIH1cblxuICBwdWJsaWMgY29sbGFwc2UoKSB7XG4gICAgdGhpcy5leHBhbmRlZCA9IGZhbHNlXG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKCkge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZFxuICB9XG5cbiAgcHVibGljIGFuaW1hdGVTdGFydCgpIHtcbiAgICBpZiAodGhpcy5leHBhbmRlZCkge1xuICAgICAgdGhpcy5fYmFja2Ryb3BIaWRkZW4ubmV4dChmYWxzZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYW5pbWF0ZUVuZCgpIHtcbiAgICBpZiAoIXRoaXMuZXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuX2JhY2tkcm9wSGlkZGVuLm5leHQodHJ1ZSlcbiAgICB9XG4gIH1cblxufVxuIl19
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zaWRlLW5hdi9zaWRlLW5hdi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUE7QUFDNUIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFak4sT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBVSxHQUFHLEVBQW1CLFdBQVcsRUFBYSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXRJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUVoRSxPQUFPLEVBQWdELHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFHNUcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDMUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0saUVBQWlFLENBQUE7QUFDbEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFN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RCxZQUFZO3dCQUNaLDJEQUEyRDt3QkFDM0QsMkRBQTJEO3dCQUMzRCxpRUFBaUU7d0JBQ2pFLGtDQUFrQzt3QkFDbEMsT0FBTzt3QkFDUCxNQUFNO3FCQUNQLENBQUM7aUJBQ0g7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJOzthQUN0Qzs7O1lBbklzSixnQkFBZ0I7WUFNOUosb0JBQW9CO1lBS3BCLHFCQUFxQjs0Q0F1S3pCLFFBQVEsWUFBSSxNQUFNLFNBQUMsdUJBQXVCOzs7NkJBckM1QyxXQUFXLFNBQUMsY0FBYzs4QkFFMUIsS0FBSztvQkFFTCxLQUFLO3VCQU1MLEtBQUs7c0JBUUwsS0FBSzsyQkFNTCxNQUFNO2dDQU1OLFlBQVksU0FBQyxnQ0FBZ0MsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTs7QUE1QjFEO0lBQWYsWUFBWSxFQUFFO3lEQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFuaW1hdGUsXG4gIGFuaW1hdGVDaGlsZCxcbiAgZ3JvdXAsXG4gIHF1ZXJ5LFxuICBzdGF0ZSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXJcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBtYXBUbywgcGFpcndpc2UsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBUaGVTZWFtTGF5b3V0U2VydmljZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9sYXlvdXQnXG5cbmltcG9ydCB7IElUaGVTZWFtQmFzZUxheW91dE5hdiwgSVRoZVNlYW1CYXNlTGF5b3V0UmVmLCBUSEVTRUFNX0JBU0VfTEFZT1VUX1JFRiB9IGZyb20gJy4uL2Jhc2UtbGF5b3V0L2luZGV4J1xuXG5pbXBvcnQgeyBJU2lkZU5hdkl0ZW0gfSBmcm9tICcuL3NpZGUtbmF2Lm1vZGVscydcbmltcG9ydCB7IFRoZVNlYW1TaWRlTmF2U2VydmljZSB9IGZyb20gJy4vc2lkZS1uYXYuc2VydmljZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRTaWRlQmFyRm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vYmFzZS1sYXlvdXQvZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci1mb290ZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJ1xuXG5jb25zdCBFWFBBTkRFRF9TVEFURSA9ICdleHBhbmRlZCdcbmNvbnN0IENPTExBUFNFRF9TVEFURSA9ICdjb2xsYXBzZWQnXG5cbmNvbnN0IEVYUEFOREVEX09WRVJMQVlfU1RBVEUgPSAnZXhwYW5kZWQtb3ZlcmxheSdcbmNvbnN0IENPTExBUFNFRF9PVkVSTEFZX1NUQVRFID0gJ2NvbGxhcHNlZC1vdmVybGF5J1xuXG5jb25zdCBFWFBBTkRFRF9TVEFURVMgPSBbIEVYUEFOREVEX1NUQVRFLCBFWFBBTkRFRF9PVkVSTEFZX1NUQVRFIF1cbmNvbnN0IENPTExBUFNFRF9TVEFURVMgPSBbIENPTExBUFNFRF9TVEFURSwgQ09MTEFQU0VEX09WRVJMQVlfU1RBVEUgXVxuY29uc3QgRVhQQU5EX1NUQVRFUyA9IFsgLi4uRVhQQU5ERURfU1RBVEVTLCAuLi5DT0xMQVBTRURfU1RBVEVTIF1cblxuZXhwb3J0IGZ1bmN0aW9uIHNpZGVOYXZFeHBhbmRTdGF0ZUNoYW5nZUZuKGZyb21TdGF0ZTogc3RyaW5nLCB0b1N0YXRlOiBzdHJpbmcpIHtcbiAgLy8gY29uc29sZS5sb2coeyBmcm9tU3RhdGUsIHRvU3RhdGUgfSlcbiAgcmV0dXJuIGZyb21TdGF0ZSAhPT0gdG9TdGF0ZSAmJlxuICAgIChcbiAgICAgIC8vIE5PVEU6IFRoZSBjdXJyZW50IHdheSB0aGUgc2lkZSBuYXYgaXMgYmVpbmcgdXNlZCBpdCBjYXVzZXMgdGhlXG4gICAgICAvLyBjb21wb25lbnQgdG8gc29tZXRpbWVzIGdldCBwbGFjZWQgaW4gdGhlIHdyb25nIGxvY2F0aW9uIGluaXRpYWxseS4gSXRcbiAgICAgIC8vIGlzIGZhc3QgZW5vdWdoIHRvIG5vdCBiZSBub3RpY2VkIHdpdGhvdXQgYW4gaW5pdGlhbCBhbmltYXRpb24gdXN1YWxseSxcbiAgICAgIC8vIHNvIGl0IGlzIGNvbW1lbnRlZCBvdXQgYmVsb3cgdW50aWwgdGhlIGluaXRpYWwgcGxhY2VtZW50IGlzc3VlIGl0XG4gICAgICAvLyBmaXhlZC5cbiAgICAgIC8vXG4gICAgICAvLyAoXG4gICAgICAvLyAgIGZyb21TdGF0ZSA9PT0gJ3ZvaWQnICYmIEVYUEFORF9TVEFURVMuaW5kZXhPZih0b1N0YXRlKSAhPT0gLTFcbiAgICAgIC8vICAgfHxcbiAgICAgIC8vICAgdG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIEVYUEFORF9TVEFURVMuaW5kZXhPZihmcm9tU3RhdGUpICE9PSAtMVxuICAgICAgLy8gKVxuICAgICAgLy8gfHxcbiAgICAgIChcbiAgICAgICAgKEVYUEFOREVEX1NUQVRFUy5pbmRleE9mKGZyb21TdGF0ZSkgIT09IC0xICYmIENPTExBUFNFRF9TVEFURVMuaW5kZXhPZih0b1N0YXRlKSAhPT0gLTEpXG4gICAgICAgIHx8XG4gICAgICAgIChFWFBBTkRFRF9TVEFURVMuaW5kZXhPZih0b1N0YXRlKSAhPT0gLTEgJiYgQ09MTEFQU0VEX1NUQVRFUy5pbmRleE9mKGZyb21TdGF0ZSkgIT09IC0xKVxuICAgICAgKVxuICAgIClcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS1zaWRlLW5hdicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLW5hdi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZGUtbmF2LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIFRoZVNlYW1TaWRlTmF2U2VydmljZVxuICBdLFxuICBhbmltYXRpb25zOiBbXG5cbiAgICAvL1xuICAgIC8vIFRPRE86IFRoaXMgYW5pbWF0aW9uIGNvZGUgdHVybmVkIGludG8gYSBtZXNzLiBDbGVhbiBpdCB1cCBhbmQgbWFrZSBpdFxuICAgIC8vIG1vcmUgc21vb3RoLlxuICAgIC8vXG5cbiAgICB0cmlnZ2VyKCdzaWRlTmF2QW5pbScsIFtcbiAgICAgIHRyYW5zaXRpb24oc2lkZU5hdkV4cGFuZFN0YXRlQ2hhbmdlRm4sIFtcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgIHF1ZXJ5KCdAc2lkZU5hdkJhY2tkcm9wJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgICAgcXVlcnkoJ0BzaWRlTmF2RXhwYW5kJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAgIF0pLFxuICAgICAgXSksXG4gICAgXSksXG5cbiAgICB0cmlnZ2VyKCdzaWRlTmF2QmFja2Ryb3AnLCBbXG4gICAgICBzdGF0ZShFWFBBTkRFRF9PVkVSTEFZX1NUQVRFLCBzdHlsZSh7IG9wYWNpdHk6ICcxJyB9KSksXG4gICAgICBzdGF0ZShDT0xMQVBTRURfT1ZFUkxBWV9TVEFURSwgc3R5bGUoeyBvcGFjaXR5OiAnMCcgfSkpLFxuXG4gICAgICAvLyB0cmFuc2l0aW9uKChmcm9tU3RhdGUsIHRvU3RhdGUsIGVsZW1lbnQsIHBhcmFtcykgPT4ge1xuICAgICAgLy8gICBjb25zb2xlLmxvZygnc2lkZU5hdkJhY2tkcm9wIHYnLCBmcm9tU3RhdGUsIHRvU3RhdGUsIGVsZW1lbnQsIHBhcmFtcylcbiAgICAgIC8vICAgcmV0dXJuIGZhbHNlXG4gICAgICAvLyB9LCBbXSksXG5cbiAgICAgIHRyYW5zaXRpb24oc2lkZU5hdkV4cGFuZFN0YXRlQ2hhbmdlRm4sIGFuaW1hdGUoJzAuMnMgZWFzZS1pbi1vdXQnKSksXG4gICAgXSksXG5cbiAgICB0cmlnZ2VyKCdzaWRlTmF2RXhwYW5kJywgW1xuICAgICAgLy8gVE9ETzogTWFrZSB3aWR0aCBjb25maWd1cmFibGUuXG4gICAgICBzdGF0ZShFWFBBTkRFRF9TVEFURSwgc3R5bGUoeyB3aWR0aDogJzI2MHB4JyB9KSksXG4gICAgICBzdGF0ZShDT0xMQVBTRURfU1RBVEUsIHN0eWxlKHsgd2lkdGg6ICc1MHB4JywgJ292ZXJmbG93LXgnOiAnaGlkZGVuJyB9KSksXG5cbiAgICAgIHN0YXRlKEVYUEFOREVEX09WRVJMQVlfU1RBVEUsIHN0eWxlKHtcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHRvcDogMCxcbiAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgIGJvdHRvbTogMCxcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgZmxvYXQ6ICdsZWZ0JyxcbiAgICAgICAgekluZGV4OiAnOTk5OScsXG4gICAgICAgIHdpZHRoOiAnY2FsYygxMDB2dyAtIDUwcHgpJyxcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwKSdcbiAgICAgIH0pKSxcbiAgICAgIHN0YXRlKENPTExBUFNFRF9PVkVSTEFZX1NUQVRFLCBzdHlsZSh7XG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgICBib3R0b206IDAsXG4gICAgICAgIGxlZnQ6IDAsXG4gICAgICAgIGZsb2F0OiAnbGVmdCcsXG4gICAgICAgIHpJbmRleDogJzk5OTknLFxuICAgICAgICB3aWR0aDogJ2NhbGMoMTAwdncgLSA1MHB4KScsXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoY2FsYygtMTAwdncgKyA1MHB4KSknLFxuICAgICAgICAnb3ZlcmZsb3cteCc6ICdoaWRkZW4nXG4gICAgICB9KSksXG5cbiAgICAgIC8vIHRyYW5zaXRpb24oYCR7RVhQQU5ERURfU1RBVEV9IDw9PiAke0NPTExBUFNFRF9TVEFURX1gLCBhbmltYXRlKCcwLjJzIGVhc2UtaW4tb3V0JykpLFxuXG4gICAgICB0cmFuc2l0aW9uKHNpZGVOYXZFeHBhbmRTdGF0ZUNoYW5nZUZuLCBhbmltYXRlKCcwLjJzIGVhc2UtaW4tb3V0JykpLFxuXG4gICAgICAvLyB0cmFuc2l0aW9uKGAke0VYUEFOREVEX1NUQVRFfSA8PT4gJHtDT0xMQVBTRURfU1RBVEV9YCwgW1xuICAgICAgLy8gICAvLyBxdWVyeSgnOmxlYXZlJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAvLyAgIC8vIHF1ZXJ5KCc6ZW50ZXInLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIC8vICAgZ3JvdXAoW1xuICAgICAgLy8gICAgIHF1ZXJ5KCc6bGVhdmUnLCBhbmltYXRlQ2hpbGQoKSwgeyBvcHRpb25hbDogdHJ1ZSB9KSxcbiAgICAgIC8vICAgICBxdWVyeSgnOmVudGVyJywgYW5pbWF0ZUNoaWxkKCksIHsgb3B0aW9uYWw6IHRydWUgfSksXG4gICAgICAvLyAgICAgcXVlcnkoJ0Bjb21wYWN0QW5pbScsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pLFxuICAgICAgLy8gICAgIGFuaW1hdGUoJzUuMnMgZWFzZS1pbi1vdXQnKVxuICAgICAgLy8gICBdKVxuICAgICAgLy8gXSksXG4gICAgXSlcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgU2lkZU5hdkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBJVGhlU2VhbUJhc2VMYXlvdXROYXYge1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaGFzSGVhZGVyVG9nZ2xlOiBCb29sZWFuSW5wdXRcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKVxuXG4gIC8vIEBIb3N0QmluZGluZygnQHNpZGVOYXZFeHBhbmQnKSBfc2lkZU5hdkV4cGFuZCA9IEVYUEFOREVEX1NUQVRFXG4gIC8vIF9zaWRlTmF2RXhwYW5kID0gRVhQQU5ERURfU1RBVEVcblxuICAvLyBASG9zdEJpbmRpbmcoJ0BzaWRlTmF2QW5pbScpIF9zaWRlTmF2RXhwYW5kID0gRVhQQU5ERURfU1RBVEVcbiAgQEhvc3RCaW5kaW5nKCdAc2lkZU5hdkFuaW0nKSBfc2lkZU5hdkV4cGFuZCA9ICdpbml0aWFsJ1xuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBoYXNIZWFkZXJUb2dnbGUgPSB0cnVlXG5cbiAgQElucHV0KClcbiAgZ2V0IGl0ZW1zKCk6IElTaWRlTmF2SXRlbVtdIHsgcmV0dXJuIHRoaXMuX2l0ZW1zLnZhbHVlIH1cbiAgc2V0IGl0ZW1zKHZhbHVlOiBJU2lkZU5hdkl0ZW1bXSkgeyB0aGlzLl9pdGVtcy5uZXh0KHZhbHVlKSB9XG4gIHByaXZhdGUgX2l0ZW1zID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJU2lkZU5hdkl0ZW1bXT4oW10pXG4gIHB1YmxpYyByZWFkb25seSBpdGVtcyQ6IE9ic2VydmFibGU8SVNpZGVOYXZJdGVtW10+XG5cbiAgQElucHV0KClcbiAgZ2V0IGV4cGFuZGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXhwYW5kZWQudmFsdWUgfVxuICBzZXQgZXhwYW5kZWQodmFsdWU6IGJvb2xlYW4pIHsgdGhpcy5fZXhwYW5kZWQubmV4dChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpKSB9XG4gIHByaXZhdGUgX2V4cGFuZGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKVxuICBwdWJsaWMgcmVhZG9ubHkgZXhwYW5kZWQkID0gdGhpcy5fZXhwYW5kZWQuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICB0YXAoZXhwYW5kZWQgPT4gdGhpcy50b2dnbGVFeHBhbmQuZW1pdChleHBhbmRlZCkpXG4gIClcblxuICBASW5wdXQoKVxuICBnZXQgb3ZlcmxheSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX292ZXJsYXkudmFsdWUgfVxuICBzZXQgb3ZlcmxheSh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLl9vdmVybGF5Lm5leHQoY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKSkgfVxuICBwcml2YXRlIF9vdmVybGF5ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSlcbiAgcHVibGljIHJlYWRvbmx5IG92ZXJsYXkkID0gdGhpcy5fb3ZlcmxheS5hc09ic2VydmFibGUoKVxuXG4gIEBPdXRwdXQoKSB0b2dnbGVFeHBhbmQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcblxuICBwdWJsaWMgcmVhZG9ubHkgaXNNb2JpbGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG4gIHB1YmxpYyByZWFkb25seSBzaWRlTmF2RXhwYW5kZWRTdGF0ZSQ6IE9ic2VydmFibGU8c3RyaW5nPlxuICBwdWJsaWMgX2JhY2tkcm9wSGlkZGVuID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKVxuXG4gIEBDb250ZW50Q2hpbGQoQmFzZUxheW91dFNpZGVCYXJGb290ZXJEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KSBfc2lkZUJhckZvb3RlclRwbD86IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsXG4gIF9zaWRlQmFyRm9vdGVyUG9ydGFsPzogVGVtcGxhdGVQb3J0YWxcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2xheW91dDogVGhlU2VhbUxheW91dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfc2lkZU5hdjogVGhlU2VhbVNpZGVOYXZTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEhFU0VBTV9CQVNFX0xBWU9VVF9SRUYpIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2VMYXlvdXRSZWY6IElUaGVTZWFtQmFzZUxheW91dFJlZlxuICApIHtcbiAgICB0aGlzLml0ZW1zJCA9IHRoaXMuX2l0ZW1zLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoaXRlbXMgPT4gdGhpcy5fc2lkZU5hdi5jcmVhdGVJdGVtc09ic2VydmFibGUoaXRlbXMpKSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICAgKVxuXG4gICAgdGhpcy5pc01vYmlsZSQgPSB0aGlzLl9sYXlvdXQuaXNNb2JpbGUkLnBpcGUoXG4gICAgICB0YXAoaXNNb2JpbGUgPT4gaXNNb2JpbGUgJiYgdGhpcy5jb2xsYXBzZSgpKVxuICAgIClcblxuICAgIHRoaXMuc2lkZU5hdkV4cGFuZGVkU3RhdGUkID0gY29tYmluZUxhdGVzdChbIHRoaXMuZXhwYW5kZWQkLCB0aGlzLm92ZXJsYXkkIF0pLnBpcGUoXG4gICAgICBtYXAoKFsgZXhwYW5kZWQsIG92ZXJsYXkgXSkgPT4gZXhwYW5kZWRcbiAgICAgICAgPyBvdmVybGF5ID8gRVhQQU5ERURfT1ZFUkxBWV9TVEFURSA6IEVYUEFOREVEX1NUQVRFXG4gICAgICAgIDogb3ZlcmxheSA/IENPTExBUFNFRF9PVkVSTEFZX1NUQVRFIDogQ09MTEFQU0VEX1NUQVRFXG4gICAgICApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgIClcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLl9iYXNlTGF5b3V0UmVmKSB7IHRoaXMuX2Jhc2VMYXlvdXRSZWYucmVnaXN0ZXJOYXYodGhpcykgfVxuXG4gICAgdGhpcy5pc01vYmlsZSRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoYiA9PiB0aGlzLm92ZXJsYXkgPSBiKVxuXG4gICAgdGhpcy5zaWRlTmF2RXhwYW5kZWRTdGF0ZSRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUodiA9PiB0aGlzLl9zaWRlTmF2RXhwYW5kID0gdilcblxuICAgIGlmICh0aGlzLl9zaWRlQmFyRm9vdGVyVHBsKSB7XG4gICAgICB0aGlzLl9zaWRlQmFyRm9vdGVyUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX3NpZGVCYXJGb290ZXJUcGwsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgICBpZiAodGhpcy5fYmFzZUxheW91dFJlZikgeyB0aGlzLl9iYXNlTGF5b3V0UmVmLnVucmVnaXN0ZXJOYXYodGhpcykgfVxuICB9XG5cbiAgcHVibGljIGV4cGFuZCgpIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gdHJ1ZVxuICB9XG5cbiAgcHVibGljIGNvbGxhcHNlKCkge1xuICAgIHRoaXMuZXhwYW5kZWQgPSBmYWxzZVxuICB9XG5cbiAgcHVibGljIHRvZ2dsZSgpIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWRcbiAgfVxuXG4gIHB1YmxpYyBhbmltYXRlU3RhcnQoKSB7XG4gICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuX2JhY2tkcm9wSGlkZGVuLm5leHQoZmFsc2UpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFuaW1hdGVFbmQoKSB7XG4gICAgaWYgKCF0aGlzLmV4cGFuZGVkKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcEhpZGRlbi5uZXh0KHRydWUpXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -1,3 +1,4 @@
1
+ import { PortalModule } from '@angular/cdk/portal';
1
2
  import { A11yModule } from '@angular/cdk/a11y';
2
3
  import { CommonModule } from '@angular/common';
3
4
  import { NgModule } from '@angular/core';
@@ -25,7 +26,8 @@ TheSeamSideNavModule.decorators = [
25
26
  A11yModule,
26
27
  TheSeamScrollbarModule,
27
28
  TheSeamLayoutModule,
28
- NgbTooltipModule
29
+ NgbTooltipModule,
30
+ PortalModule
29
31
  ],
30
32
  exports: [
31
33
  SideNavItemComponent,
@@ -34,4 +36,4 @@ TheSeamSideNavModule.decorators = [
34
36
  ]
35
37
  },] }
36
38
  ];
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zaWRlLW5hdi9zaWRlLW5hdi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUU3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUVyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQTtBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQXVCdkQsTUFBTSxPQUFPLG9CQUFvQjs7O1lBckJoQyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixzQkFBc0I7aUJBQ3ZCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFlBQVk7b0JBQ1osaUJBQWlCO29CQUNqQixVQUFVO29CQUNWLHNCQUFzQjtvQkFDdEIsbUJBQW1CO29CQUNuQixnQkFBZ0I7aUJBQ2pCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxvQkFBb0I7b0JBQ3BCLGdCQUFnQjtvQkFDaEIsc0JBQXNCO2lCQUN2QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5J1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuXG5pbXBvcnQgeyBOZ2JUb29sdGlwTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnXG5cbmltcG9ydCB7IFRoZVNlYW1JY29uTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2ljb24nXG5pbXBvcnQgeyBUaGVTZWFtTGF5b3V0TW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2xheW91dCdcbmltcG9ydCB7IFRoZVNlYW1TY3JvbGxiYXJNb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vc2Nyb2xsYmFyJ1xuXG5pbXBvcnQgeyBTaWRlTmF2SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vc2lkZS1uYXYtaXRlbS9zaWRlLW5hdi1pdGVtLmNvbXBvbmVudCdcbmltcG9ydCB7IFNpZGVOYXZUb2dnbGVDb21wb25lbnQgfSBmcm9tICcuL3NpZGUtbmF2LXRvZ2dsZS9zaWRlLW5hdi10b2dnbGUuY29tcG9uZW50J1xuaW1wb3J0IHsgU2lkZU5hdkNvbXBvbmVudCB9IGZyb20gJy4vc2lkZS1uYXYuY29tcG9uZW50J1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTaWRlTmF2SXRlbUNvbXBvbmVudCxcbiAgICBTaWRlTmF2Q29tcG9uZW50LFxuICAgIFNpZGVOYXZUb2dnbGVDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgVGhlU2VhbUljb25Nb2R1bGUsXG4gICAgQTExeU1vZHVsZSxcbiAgICBUaGVTZWFtU2Nyb2xsYmFyTW9kdWxlLFxuICAgIFRoZVNlYW1MYXlvdXRNb2R1bGUsXG4gICAgTmdiVG9vbHRpcE1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2lkZU5hdkl0ZW1Db21wb25lbnQsXG4gICAgU2lkZU5hdkNvbXBvbmVudCxcbiAgICBTaWRlTmF2VG9nZ2xlQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVNpZGVOYXZNb2R1bGUgeyB9XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1uYXYubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zaWRlLW5hdi9zaWRlLW5hdi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFFckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUE7QUFDcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUF3QnZELE1BQU0sT0FBTyxvQkFBb0I7OztZQXRCaEMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixvQkFBb0I7b0JBQ3BCLGdCQUFnQjtvQkFDaEIsc0JBQXNCO2lCQUN2QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLGlCQUFpQjtvQkFDakIsVUFBVTtvQkFDVixzQkFBc0I7b0JBQ3RCLG1CQUFtQjtvQkFDbkIsZ0JBQWdCO29CQUNoQixZQUFZO2lCQUNiO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxvQkFBb0I7b0JBQ3BCLGdCQUFnQjtvQkFDaEIsc0JBQXNCO2lCQUN2QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcblxuaW1wb3J0IHsgTmdiVG9vbHRpcE1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJ1xuXG5pbXBvcnQgeyBUaGVTZWFtSWNvbk1vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9pY29uJ1xuaW1wb3J0IHsgVGhlU2VhbUxheW91dE1vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9sYXlvdXQnXG5pbXBvcnQgeyBUaGVTZWFtU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3Njcm9sbGJhcidcblxuaW1wb3J0IHsgU2lkZU5hdkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3NpZGUtbmF2LWl0ZW0vc2lkZS1uYXYtaXRlbS5jb21wb25lbnQnXG5pbXBvcnQgeyBTaWRlTmF2VG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi9zaWRlLW5hdi10b2dnbGUvc2lkZS1uYXYtdG9nZ2xlLmNvbXBvbmVudCdcbmltcG9ydCB7IFNpZGVOYXZDb21wb25lbnQgfSBmcm9tICcuL3NpZGUtbmF2LmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2lkZU5hdkl0ZW1Db21wb25lbnQsXG4gICAgU2lkZU5hdkNvbXBvbmVudCxcbiAgICBTaWRlTmF2VG9nZ2xlQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIFRoZVNlYW1JY29uTW9kdWxlLFxuICAgIEExMXlNb2R1bGUsXG4gICAgVGhlU2VhbVNjcm9sbGJhck1vZHVsZSxcbiAgICBUaGVTZWFtTGF5b3V0TW9kdWxlLFxuICAgIE5nYlRvb2x0aXBNb2R1bGUsXG4gICAgUG9ydGFsTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTaWRlTmF2SXRlbUNvbXBvbmVudCxcbiAgICBTaWRlTmF2Q29tcG9uZW50LFxuICAgIFNpZGVOYXZUb2dnbGVDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtU2lkZU5hdk1vZHVsZSB7IH1cbiJdfQ==
@@ -2,12 +2,13 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './public-api';
5
- export { TheSeamSchemaFormCheckboxComponent as ɵc } from './schema-form-controls/schema-form-checkbox/schema-form-checkbox.component';
6
- export { TheSeamSchemaFormControlsModule as ɵb } from './schema-form-controls/schema-form-controls.module';
7
- export { TheSeamSchemaFormInputComponent as ɵf } from './schema-form-controls/schema-form-input/schema-form-input.component';
8
- export { TheSeamSchemaFormNumberComponent as ɵg } from './schema-form-controls/schema-form-number/schema-form-number.component';
9
- export { TheSeamSchemaFormSelectComponent as ɵe } from './schema-form-controls/schema-form-select/schema-form-select.component';
10
- export { TheSeamSchemaFormSubmitSplitComponent as ɵh } from './schema-form-controls/schema-form-submit-split/schema-form-submit-split.component';
11
- export { TheSeamSchemaFormSubmitComponent as ɵd } from './schema-form-controls/schema-form-submit/schema-form-submit.component';
12
- export { TheSeamSideNavService as ɵa } from './side-nav/side-nav.service';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlc2VhbS11aS1jb21tb24tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay90aGVzZWFtLXVpLWNvbW1vbi1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsa0NBQWtDLElBQUksRUFBRSxFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDcEksT0FBTyxFQUFDLCtCQUErQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pHLE9BQU8sRUFBQywrQkFBK0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUMzSCxPQUFPLEVBQUMsZ0NBQWdDLElBQUksRUFBRSxFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDOUgsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQzlILE9BQU8sRUFBQyxxQ0FBcUMsSUFBSSxFQUFFLEVBQUMsTUFBTSxvRkFBb0YsQ0FBQztBQUMvSSxPQUFPLEVBQUMsZ0NBQWdDLElBQUksRUFBRSxFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDOUgsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtQ2hlY2tib3hDb21wb25lbnQgYXMgybVjfSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWNoZWNrYm94L3NjaGVtYS1mb3JtLWNoZWNrYm94LmNvbXBvbmVudCc7XG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtQ29udHJvbHNNb2R1bGUgYXMgybVifSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWNvbnRyb2xzLm1vZHVsZSc7XG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWlucHV0L3NjaGVtYS1mb3JtLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtTnVtYmVyQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1udW1iZXIvc2NoZW1hLWZvcm0tbnVtYmVyLmNvbXBvbmVudCc7XG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtU2VsZWN0Q29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1zZWxlY3Qvc2NoZW1hLWZvcm0tc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQge1RoZVNlYW1TY2hlbWFGb3JtU3VibWl0U3BsaXRDb21wb25lbnQgYXMgybVofSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXN1Ym1pdC1zcGxpdC9zY2hlbWEtZm9ybS1zdWJtaXQtc3BsaXQuY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXN1Ym1pdC9zY2hlbWEtZm9ybS1zdWJtaXQuY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNpZGVOYXZTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9zaWRlLW5hdi9zaWRlLW5hdi5zZXJ2aWNlJzsiXX0=
5
+ export { BaseLayoutSideBarFooterDirective as ɵa } from './base-layout/directives/base-layout-side-bar-footer.directive';
6
+ export { TheSeamSchemaFormCheckboxComponent as ɵd } from './schema-form-controls/schema-form-checkbox/schema-form-checkbox.component';
7
+ export { TheSeamSchemaFormControlsModule as ɵc } from './schema-form-controls/schema-form-controls.module';
8
+ export { TheSeamSchemaFormInputComponent as ɵg } from './schema-form-controls/schema-form-input/schema-form-input.component';
9
+ export { TheSeamSchemaFormNumberComponent as ɵh } from './schema-form-controls/schema-form-number/schema-form-number.component';
10
+ export { TheSeamSchemaFormSelectComponent as ɵf } from './schema-form-controls/schema-form-select/schema-form-select.component';
11
+ export { TheSeamSchemaFormSubmitSplitComponent as ɵi } from './schema-form-controls/schema-form-submit-split/schema-form-submit-split.component';
12
+ export { TheSeamSchemaFormSubmitComponent as ɵe } from './schema-form-controls/schema-form-submit/schema-form-submit.component';
13
+ export { TheSeamSideNavService as ɵb } from './side-nav/side-nav.service';
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlc2VhbS11aS1jb21tb24tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay90aGVzZWFtLXVpLWNvbW1vbi1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsZ0NBQWdDLElBQUksRUFBRSxFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDdEgsT0FBTyxFQUFDLGtDQUFrQyxJQUFJLEVBQUUsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQ3BJLE9BQU8sRUFBQywrQkFBK0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUN6RyxPQUFPLEVBQUMsK0JBQStCLElBQUksRUFBRSxFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFDM0gsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQzlILE9BQU8sRUFBQyxnQ0FBZ0MsSUFBSSxFQUFFLEVBQUMsTUFBTSx3RUFBd0UsQ0FBQztBQUM5SCxPQUFPLEVBQUMscUNBQXFDLElBQUksRUFBRSxFQUFDLE1BQU0sb0ZBQW9GLENBQUM7QUFDL0ksT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQzlILE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtCYXNlTGF5b3V0U2lkZUJhckZvb3RlckRpcmVjdGl2ZSBhcyDJtWF9IGZyb20gJy4vYmFzZS1sYXlvdXQvZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci1mb290ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1DaGVja2JveENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tY2hlY2tib3gvc2NoZW1hLWZvcm0tY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1Db250cm9sc01vZHVsZSBhcyDJtWN9IGZyb20gJy4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tY29udHJvbHMubW9kdWxlJztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1JbnB1dENvbXBvbmVudCBhcyDJtWd9IGZyb20gJy4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0taW5wdXQvc2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1OdW1iZXJDb21wb25lbnQgYXMgybVofSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLW51bWJlci9zY2hlbWEtZm9ybS1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1TZWxlY3RDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXNlbGVjdC9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCB7VGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRTcGxpdENvbXBvbmVudCBhcyDJtWl9IGZyb20gJy4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0LXNwbGl0L3NjaGVtYS1mb3JtLXN1Ym1pdC1zcGxpdC5jb21wb25lbnQnO1xuZXhwb3J0IHtUaGVTZWFtU2NoZW1hRm9ybVN1Ym1pdENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0L3NjaGVtYS1mb3JtLXN1Ym1pdC5jb21wb25lbnQnO1xuZXhwb3J0IHtUaGVTZWFtU2lkZU5hdlNlcnZpY2UgYXMgybVifSBmcm9tICcuL3NpZGUtbmF2L3NpZGUtbmF2LnNlcnZpY2UnOyJdfQ==
@@ -164,7 +164,7 @@ export class TheSeamGoogleMapsPlacesAutoCompleteComponent {
164
164
  TheSeamGoogleMapsPlacesAutoCompleteComponent.decorators = [
165
165
  { type: Component, args: [{
166
166
  selector: 'seam-google-maps-places-autocomplete',
167
- template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\r\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\r\n</div>\r\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\r\n<input #inp=\"seamInput\"\r\n seamInput\r\n seamGoogleMapsPlacesAutocomplete\r\n [disabled]=\"disabled\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.autocorrect]=\"autocorrect\"\r\n [attr.autocapitalize]=\"autocapitalize\"\r\n [options]=\"_options\"\r\n/>\r\n",
167
+ template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\n</div>\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\n<input #inp=\"seamInput\"\n seamInput\n seamGoogleMapsPlacesAutocomplete\n [disabled]=\"disabled\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocorrect]=\"autocorrect\"\n [attr.autocapitalize]=\"autocapitalize\"\n [options]=\"_options\"\n/>\n",
168
168
  changeDetection: ChangeDetectionStrategy.OnPush,
169
169
  exportAs: 'seamGoogleMapsPlacesAutoComplete',
170
170
  styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0px}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"]
@@ -192,4 +192,4 @@ TheSeamGoogleMapsPlacesAutoCompleteComponent.propDecorators = {
192
192
  __decorate([
193
193
  InputBoolean()
194
194
  ], TheSeamGoogleMapsPlacesAutoCompleteComponent.prototype, "disabled", void 0);
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZ29vZ2xlLW1hcHMvZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzFFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFNLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQTtBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBRzlELE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBSzNKOztHQUVHO0FBUUgsTUFBTSxPQUFPLDRDQUE0QztJQTJFdkQsWUFDbUIsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUF6RXpCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtRQUNwQyw4QkFBeUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBRWxELHlCQUFvQixHQUFtRSxFQUFFLENBQUE7UUFJeEYsVUFBSyxHQUE4QixrQ0FBa0MsQ0FBQTtRQUVyRSxTQUFJLEdBQWdDLGdCQUFnQixDQUFBO1FBRXBDLGFBQVEsR0FBaUIsS0FBSyxDQUFBO1FBRTlDLGdCQUFXLEdBQThCLDhCQUE4QixDQUFBO1FBRXZFLGdCQUFXLEdBQW9DLEtBQUssQ0FBQTtRQUVwRCxtQkFBYyxHQUFvQyxLQUFLLENBQUE7UUFVdkQsY0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFBO1FBTXZCLGFBQVEsR0FBMkMsK0NBQStDLENBQUE7UUEwQ2hHLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FDckQsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUNwQixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLDZCQUE2QixFQUFPLENBQUMsQ0FDM0QsQ0FBQTtJQUNILENBQUM7SUE1REQ7Ozs7T0FJRztJQUNGLElBQ0ksUUFBUSxDQUFDLEtBQWEsSUFBSSxJQUFJLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFBLENBQUMsQ0FBQztJQUM1RSxJQUFJLFFBQVEsS0FBYSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUEsQ0FBQyxDQUFDO0lBR2pELElBQ0ksT0FBTyxDQUFDLEtBQWdFO1FBQzFFLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxJQUFJLCtDQUErQyxDQUFBO0lBQzFFLENBQUM7SUFnQkQsSUFDSSx1QkFBdUIsQ0FBQyxLQUFtRDtRQUM3RSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFBO1FBQ25DLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNqRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUE7WUFDNUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO1lBQzlGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxFQUFFLENBQUE7UUFDaEMsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBR0QsSUFDSSxhQUFhLEtBQUssT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFBLENBQUMsQ0FBQztJQUd4RSxRQUFRLENBQUMsS0FBaUI7UUFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUM5QixDQUFDO0lBR0QsUUFBUTs7UUFDTixNQUFBLElBQUksQ0FBQyxlQUFlLDBDQUFFLEtBQUssRUFBRSxDQUFBO0lBQy9CLENBQUM7SUFXRCxRQUFRLEtBQUssQ0FBQztJQUVkLGNBQWM7SUFDZCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUN2QixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsRUFDeEQsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FDakIsQ0FBQTtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLFNBQVM7UUFDZixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUN6QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxTQUFTO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsT0FBUSxJQUFJLENBQUMsWUFBb0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFFBQVE7UUFDZCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUN6QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDckMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFNBQVMsQ0FBQyxNQUFtRTtRQUNsRixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUN6QixrREFBa0Q7UUFDbEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxNQUFPLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHdCQUF3QixDQUFDLFlBQXVEO1FBQ3JGLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQ3pCLGtEQUFrRDtRQUNsRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsd0JBQXdCLENBQUMsWUFBYSxDQUFDLENBQUE7SUFDbEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsTUFBaUI7UUFDaEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsa0RBQWtEO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsTUFBTyxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVELE1BQU07SUFDQyxVQUFVLENBQUMsT0FBZ0Q7UUFDaEUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsa0RBQWtEO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBUSxDQUFDLENBQUE7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxRQUFRLENBQUMsS0FBZ0I7UUFDOUIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsa0RBQWtEO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBTSxDQUFDLENBQUE7SUFDM0MsQ0FBQztJQUVELHlCQUF5QjtJQUNsQixLQUFLO1FBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDeEMsQ0FBQztJQUVELDJCQUEyQjtJQUNwQixJQUFJO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDdkMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQTtJQUN2QyxDQUFDO0lBRU8sNkJBQTZCO1FBQ25DLE1BQU0sVUFBVSxHQUFHLElBQUksVUFBVSxDQUFJLFVBQVUsQ0FBQyxFQUFFO1lBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUN0QixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUE7Z0JBQzFELE9BQU8sU0FBUyxDQUFBO2FBQ2pCO1lBRUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUE7WUFFMUUsT0FBTyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDaEMsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLFVBQVUsQ0FBQTtJQUNuQixDQUFDO0lBRUQsaURBQWlEO0lBQ3pDLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUMsRUFBRTtZQUN6RSxNQUFNLEtBQUssQ0FDVCxtRkFBbUY7Z0JBQ2pGLG9FQUFvRSxDQUN2RSxDQUFBO1NBQ0Y7SUFDSCxDQUFDOzs7WUE3TkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxzQ0FBc0M7Z0JBQ2hELHdpQkFBK0Q7Z0JBRS9ELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxRQUFRLEVBQUUsa0NBQWtDOzthQUM3Qzs7O1lBL0JDLFVBQVU7OztvQkEwQ1QsS0FBSzttQkFFTCxLQUFLO3VCQUVMLEtBQUs7MEJBRUwsS0FBSzswQkFFTCxLQUFLOzZCQUVMLEtBQUs7dUJBT0osS0FBSztzQkFLTixLQUFLOzJCQWVMLE1BQU07OEJBRU4sU0FBUyxTQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtzQ0FFdkQsU0FBUyxTQUFDLDRDQUE0QyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs0QkFXeEUsV0FBVyxTQUFDLGVBQWU7dUJBRzNCLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxPQUFPLENBQUU7dUJBS2pDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUU7O0FBeERWO0lBQWYsWUFBWSxFQUFFOzhFQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXHJcbmltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBpbnRlcnZhbCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIFN1YnNjcmliZXIgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcFRvLCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcblxyXG5pbXBvcnQgeyBmYVNlYXJjaExvY2F0aW9uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xyXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vY29yZSdcclxuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZm9ybS1maWVsZCdcclxuaW1wb3J0IHsgU2VhbUljb24gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vaWNvbidcclxuXHJcbmltcG9ydCB7IFNFQU1fR09PR0xFX1BMQUNFU19BVVRPQ09NUExFVEVfREVGQVVMVF9PUFRJT05TLCBUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUnXHJcblxyXG5kZWNsYXJlIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbiB8IHVuZGVmaW5lZFxyXG50eXBlIFdpdGhSZXF1aXJlZDxULCBLIGV4dGVuZHMga2V5b2YgVD4gPSBUICYgeyBbUCBpbiBLXS0/OiBUW1BdIH1cclxuXHJcbi8qKlxyXG4gKlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZWFtLWdvb2dsZS1tYXBzLXBsYWNlcy1hdXRvY29tcGxldGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZXhwb3J0QXM6ICdzZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9Db21wbGV0ZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b0NvbXBsZXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0b0NvbXBsZXRlUmVhZHlTdWJqZWN0ID0gbmV3IFN1YmplY3QoKVxyXG5cclxuICBwcml2YXRlIF9wbGFjZUNoYW5nZWRQZW5kaW5nOiB7IG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55Piwgc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxhbnk+IH1bXSA9IFtdXHJcblxyXG4gIHB1YmxpYyBhdXRvQ29tcGxldGU/OiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlXHJcblxyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsID0gJ1NlYXJjaCBieSBhZGRyZXNzLCBwbGFjZSBvciBuYW1lJ1xyXG5cclxuICBASW5wdXQoKSBpY29uOiBTZWFtSWNvbiB8IHVuZGVmaW5lZCB8IG51bGwgPSBmYVNlYXJjaExvY2F0aW9uXHJcblxyXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZDogQm9vbGVhbklucHV0ID0gZmFsc2VcclxuXHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSAnRW50ZXIgYWRkcmVzcywgcGxhY2Ugb3IgbmFtZSdcclxuXHJcbiAgQElucHV0KCkgYXV0b2NvcnJlY3Q6ICdvZmYnIHwgJ29uJyB8IHVuZGVmaW5lZCB8IG51bGwgPSAnb2ZmJ1xyXG5cclxuICBASW5wdXQoKSBhdXRvY2FwaXRhbGl6ZTogJ29mZicgfCAnb24nIHwgdW5kZWZpbmVkIHwgbnVsbCA9ICdvZmYnXHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCB0aGUgdGFiIGluZGV4IHRvIGAtMWAgdG8gYWxsb3cgdGhlIHJvb3QgZWxlbWVudCBvZiB0aGVcclxuICAgKiBjb21wb25lbnQgdG8gcmVjZWl2ZSBgZm9jdXNgIGV2ZW50IGZyb20gamF2YXNjcmlwdCwgYnV0IG5vdCBnZXQgZm9jdXNlZCBieVxyXG4gICAqIGtleWJvYXJkIG5hdmlnYXRpb24uXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpXHJcbiAgIHNldCB0YWJJbmRleCh2YWx1ZTogbnVtYmVyKSB7IHRoaXMuX3RhYkluZGV4ID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpIH1cclxuICAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl90YWJJbmRleCB9XHJcbiAgIHByaXZhdGUgX3RhYkluZGV4ID0gLTFcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgb3B0aW9ucyh2YWx1ZTogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMgfCB1bmRlZmluZWQgfCBudWxsKSB7XHJcbiAgICB0aGlzLl9vcHRpb25zID0gdmFsdWUgfHwgU0VBTV9HT09HTEVfUExBQ0VTX0FVVE9DT01QTEVURV9ERUZBVUxUX09QVElPTlNcclxuICB9XHJcbiAgX29wdGlvbnM6IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVPcHRpb25zID0gU0VBTV9HT09HTEVfUExBQ0VTX0FVVE9DT01QTEVURV9ERUZBVUxUX09QVElPTlNcclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBldmVudCBpcyBmaXJlZCB3aGVuIGEgUGxhY2VSZXN1bHQgaXMgbWFkZSBhdmFpbGFibGUgZm9yIGEgUGxhY2UgdGhlXHJcbiAgICogdXNlciBoYXMgc2VsZWN0ZWQuIElmIHRoZSB1c2VyIGVudGVycyB0aGUgbmFtZSBvZiBhIFBsYWNlIHRoYXQgd2FzIG5vdFxyXG4gICAqIHN1Z2dlc3RlZCBieSB0aGUgY29udHJvbCBhbmQgcHJlc3NlcyB0aGUgRW50ZXIga2V5LCBvciBpZiBhIFBsYWNlIERldGFpbHNcclxuICAgKiByZXF1ZXN0IGZhaWxzLCB0aGUgUGxhY2VSZXN1bHQgY29udGFpbnMgdGhlIHVzZXIgaW5wdXQgaW4gdGhlIG5hbWVcclxuICAgKiBwcm9wZXJ0eSwgd2l0aCBubyBvdGhlciBwcm9wZXJ0aWVzIGRlZmluZWQuXHJcbiAgICpcclxuICAgKiBTZWU6IGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JlZmVyZW5jZS9wbGFjZXMtd2lkZ2V0I0F1dG9jb21wbGV0ZS5wbGFjZV9jaGFuZ2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHBsYWNlQ2hhbmdlZDogT2JzZXJ2YWJsZTx2b2lkPlxyXG5cclxuICBAVmlld0NoaWxkKCdpbnAnLCB7IHJlYWQ6IElucHV0RGlyZWN0aXZlLCBzdGF0aWM6IHRydWUgfSkgX2lucHV0RGlyZWN0aXZlITogSW5wdXREaXJlY3RpdmVcclxuXHJcbiAgQFZpZXdDaGlsZChUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcclxuICBzZXQgX19hdXRvY29tcGxldGVEaXJlY3RpdmUodmFsdWU6IFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b2NvbXBsZXRlRGlyZWN0aXZlKSB7XHJcbiAgICB0aGlzLl9hdXRvQ29tcGxldGVEaXJlY3RpdmUgPSB2YWx1ZVxyXG4gICAgdGhpcy5fdW50aWxBdXRvQ29tcGxldGVSZWFkeSgpLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmF1dG9Db21wbGV0ZSA9IHRoaXMuX2F1dG9Db21wbGV0ZURpcmVjdGl2ZS5hdXRvQ29tcGxldGVcclxuICAgICAgdGhpcy5fcGxhY2VDaGFuZ2VkUGVuZGluZy5mb3JFYWNoKHBlbmRpbmcgPT4gcGVuZGluZy5vYnNlcnZhYmxlLnN1YnNjcmliZShwZW5kaW5nLnN1YnNjcmliZXIpKVxyXG4gICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nID0gW11cclxuICAgIH0pXHJcbiAgfVxyXG4gIF9hdXRvQ29tcGxldGVEaXJlY3RpdmUhOiBUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZVxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxyXG4gIGdldCBfYXR0clRhYkluZGV4KCkgeyByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogKHRoaXMudGFiSW5kZXggfHwgMCkgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsgJ2V2ZW50JyBdKVxyXG4gIF9vbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICB0aGlzLl9pbnB1dERpcmVjdGl2ZS5mb2N1cygpXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdmb2N1cycsIFsgJyRldmVudCcgXSlcclxuICBfb25Gb2N1cygpIHtcclxuICAgIHRoaXMuX2lucHV0RGlyZWN0aXZlPy5mb2N1cygpXHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgKSB7XHJcbiAgICB0aGlzLnBsYWNlQ2hhbmdlZCA9IHRoaXMuX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdC5waXBlKFxyXG4gICAgICBzdGFydFdpdGgodW5kZWZpbmVkKSxcclxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2NyZWF0ZVBsYWNlQ2hhbmdlZE9ic2VydmFibGU8YW55PigpKVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7IH1cclxuXHJcbiAgLyoqIEBpZ25vcmUgKi9cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXHJcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3VudGlsQXV0b0NvbXBsZXRlUmVhZHkoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gaW50ZXJ2YWwoNTAwKS5waXBlKFxyXG4gICAgICBmaWx0ZXIoKCkgPT4gISF0aGlzLl9hdXRvQ29tcGxldGVEaXJlY3RpdmUuYXV0b0NvbXBsZXRlKSxcclxuICAgICAgdGFrZSgxKSxcclxuICAgICAgbWFwVG8odW5kZWZpbmVkKSxcclxuICAgIClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIGJvdW5kcyB0byB3aGljaCBwcmVkaWN0aW9ucyBhcmUgYmlhc2VkLlxyXG4gICAqL1xyXG4gICBwdWJsaWMgZ2V0Qm91bmRzKCk6IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyB8IHVuZGVmaW5lZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuZ2V0Qm91bmRzKClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIGZpZWxkcyB0byBiZSBpbmNsdWRlZCBmb3IgdGhlIFBsYWNlIGluIHRoZSBkZXRhaWxzIHJlc3BvbnNlXHJcbiAgICogd2hlbiB0aGUgZGV0YWlscyBhcmUgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC4gRm9yIGEgbGlzdCBvZiBmaWVsZHMgc2VlXHJcbiAgICogW1BsYWNlUmVzdWx0XShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9yZWZlcmVuY2UvcGxhY2VzLXNlcnZpY2UjUGxhY2VSZXN1bHQpLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRGaWVsZHMoKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xyXG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxyXG4gICAgcmV0dXJuICh0aGlzLmF1dG9Db21wbGV0ZSBhcyBhbnkpLmdldEZpZWxkcygpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBkZXRhaWxzIG9mIHRoZSBQbGFjZSBzZWxlY3RlZCBieSB1c2VyIGlmIHRoZSBkZXRhaWxzIHdlcmVcclxuICAgKiBzdWNjZXNzZnVsbHkgcmV0cmlldmVkLiBPdGhlcndpc2UgcmV0dXJucyBhIHN0dWIgUGxhY2Ugb2JqZWN0LCB3aXRoIHRoZVxyXG4gICAqIG5hbWUgcHJvcGVydHkgc2V0IHRvIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSBpbnB1dCBmaWVsZC5cclxuICAgKi9cclxuICAgcHVibGljIGdldFBsYWNlKCk6IGdvb2dsZS5tYXBzLnBsYWNlcy5QbGFjZVJlc3VsdCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuZ2V0UGxhY2UoKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyB0aGUgcHJlZmVycmVkIGFyZWEgd2l0aGluIHdoaWNoIHRvIHJldHVybiBQbGFjZSByZXN1bHRzLiBSZXN1bHRzIGFyZVxyXG4gICAqIGJpYXNlZCB0b3dhcmRzLCBidXQgbm90IHJlc3RyaWN0ZWQgdG8sIHRoaXMgYXJlYS5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0Qm91bmRzKGJvdW5kcz86IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyB8IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kc0xpdGVyYWwpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0Qm91bmRzKGJvdW5kcyEpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBjb21wb25lbnQgcmVzdHJpY3Rpb25zLiBDb21wb25lbnQgcmVzdHJpY3Rpb25zIGFyZSB1c2VkIHRvXHJcbiAgICogcmVzdHJpY3QgcHJlZGljdGlvbnMgdG8gb25seSB0aG9zZSB3aXRoaW4gdGhlIHBhcmVudCBjb21wb25lbnQuIEZvclxyXG4gICAqIGV4YW1wbGUsIHRoZSBjb3VudHJ5LlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRDb21wb25lbnRSZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zPzogZ29vZ2xlLm1hcHMucGxhY2VzLkNvbXBvbmVudFJlc3RyaWN0aW9ucyk6IHZvaWQge1xyXG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5zZXRDb21wb25lbnRSZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zISlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIGZpZWxkcyB0byBiZSBpbmNsdWRlZCBmb3IgdGhlIFBsYWNlIGluIHRoZSBkZXRhaWxzIHJlc3BvbnNlIHdoZW5cclxuICAgKiB0aGUgZGV0YWlscyBhcmUgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC4gRm9yIGEgbGlzdCBvZiBmaWVsZHMgc2VlXHJcbiAgICogW1BsYWNlUmVzdWx0XShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9yZWZlcmVuY2UvcGxhY2VzLXNlcnZpY2UjUGxhY2VSZXN1bHQpLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRGaWVsZHMoZmllbGRzPzogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0RmllbGRzKGZpZWxkcyEpXHJcbiAgfVxyXG5cclxuICAvKiogKi9cclxuICBwdWJsaWMgc2V0T3B0aW9ucyhvcHRpb25zPzogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0T3B0aW9ucyhvcHRpb25zISlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIHR5cGVzIG9mIHByZWRpY3Rpb25zIHRvIGJlIHJldHVybmVkLiBGb3Igc3VwcG9ydGVkIHR5cGVzLCBzZWUgdGhlXHJcbiAgICogW2RldmVsb3BlcidzIGd1aWRlXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9wbGFjZXMtYXV0b2NvbXBsZXRlI2NvbnN0cmFpbi1wbGFjZS10eXBlcykuXHJcbiAgICogSWYgbm8gdHlwZXMgYXJlIHNwZWNpZmllZCwgYWxsIHR5cGVzIHdpbGwgYmUgcmV0dXJuZWQuXHJcbiAgICovXHJcbiAgcHVibGljIHNldFR5cGVzKHR5cGVzPzogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0VHlwZXModHlwZXMhKVxyXG4gIH1cclxuXHJcbiAgLyoqIEZvY3VzZXMgdGhlIGlucHV0LiAqL1xyXG4gIHB1YmxpYyBmb2N1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXHJcbiAgfVxyXG5cclxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cclxuICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcclxuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5ibHVyKClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRIb3N0RWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHtcclxuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NyZWF0ZVBsYWNlQ2hhbmdlZE9ic2VydmFibGU8VD4oKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICBjb25zdCBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGU8VD4oc3Vic2NyaWJlciA9PiB7XHJcbiAgICAgIGlmICghdGhpcy5hdXRvQ29tcGxldGUpIHtcclxuICAgICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nLnB1c2goeyBvYnNlcnZhYmxlLCBzdWJzY3JpYmVyIH0pXHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl9hdXRvQ29tcGxldGVEaXJlY3RpdmUucGxhY2VDaGFuZ2VkLnN1YnNjcmliZShzdWJzY3JpYmVyKVxyXG5cclxuICAgICAgcmV0dXJuICgpID0+IHN1Yi51bnN1YnNjcmliZSgpXHJcbiAgICB9KVxyXG4gICAgcmV0dXJuIG9ic2VydmFibGVcclxuICB9XHJcblxyXG4gIC8qKiBBc3NlcnRzIHRoYXQgdGhlIG1hcCBoYXMgYmVlbiBpbml0aWFsaXplZC4gKi9cclxuICBwcml2YXRlIF9hc3NlcnRJbml0aWFsaXplZCgpOiBhc3NlcnRzIHRoaXMgaXMgV2l0aFJlcXVpcmVkPFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b0NvbXBsZXRlQ29tcG9uZW50LCAnYXV0b0NvbXBsZXRlJz4ge1xyXG4gICAgaWYgKCF0aGlzLmF1dG9Db21wbGV0ZSAmJiAodHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlKSkge1xyXG4gICAgICB0aHJvdyBFcnJvcihcclxuICAgICAgICAnQ2Fubm90IGFjY2VzcyBHb29nbGUgTWFwIFBsYWNlcyBpbmZvcm1hdGlvbiBiZWZvcmUgdGhlIEFQSSBoYXMgYmVlbiBpbml0aWFsaXplZC4gJyArXHJcbiAgICAgICAgICAnUGxlYXNlIHdhaXQgZm9yIHRoZSBBUEkgdG8gbG9hZCBiZWZvcmUgdHJ5aW5nIHRvIGludGVyYWN0IHdpdGggaXQuJyxcclxuICAgICAgKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZ29vZ2xlLW1hcHMvZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzFFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFNLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQTtBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBRzlELE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBSzNKOztHQUVHO0FBUUgsTUFBTSxPQUFPLDRDQUE0QztJQTJFdkQsWUFDbUIsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUF6RXpCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtRQUNwQyw4QkFBeUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFB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QWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxRQUFRLEVBQUUsa0NBQWtDOzthQUM3Qzs7O1lBL0JDLFVBQVU7OztvQkEwQ1QsS0FBSzttQkFFTCxLQUFLO3VCQUVMLEtBQUs7MEJBRUwsS0FBSzswQkFFTCxLQUFLOzZCQUVMLEtBQUs7dUJBT0osS0FBSztzQkFLTixLQUFLOzJCQWVMLE1BQU07OEJBRU4sU0FBUyxTQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtzQ0FFdkQsU0FBUyxTQUFDLDRDQUE0QyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs0QkFXeEUsV0FBVyxTQUFDLGVBQWU7dUJBRzNCLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxPQUFPLENBQUU7dUJBS2pDLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUU7O0FBeERWO0lBQWYsWUFBWSxFQUFFOzhFQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgaW50ZXJ2YWwsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGZpbHRlciwgbWFwVG8sIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgZmFTZWFyY2hMb2NhdGlvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZm9ybS1maWVsZCdcbmltcG9ydCB7IFNlYW1JY29uIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2ljb24nXG5cbmltcG9ydCB7IFNFQU1fR09PR0xFX1BMQUNFU19BVVRPQ09NUExFVEVfREVGQVVMVF9PUFRJT05TLCBUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUnXG5cbmRlY2xhcmUgY29uc3QgbmdEZXZNb2RlOiBib29sZWFuIHwgdW5kZWZpbmVkXG50eXBlIFdpdGhSZXF1aXJlZDxULCBLIGV4dGVuZHMga2V5b2YgVD4gPSBUICYgeyBbUCBpbiBLXS0/OiBUW1BdIH1cblxuLyoqXG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLWdvb2dsZS1tYXBzLXBsYWNlcy1hdXRvY29tcGxldGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dvb2dsZS1tYXBzLXBsYWNlcy1hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGV4cG9ydEFzOiAnc2VhbUdvb2dsZU1hcHNQbGFjZXNBdXRvQ29tcGxldGUnXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b0NvbXBsZXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG4gIHByaXZhdGUgcmVhZG9ubHkgX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdCA9IG5ldyBTdWJqZWN0KClcblxuICBwcml2YXRlIF9wbGFjZUNoYW5nZWRQZW5kaW5nOiB7IG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55Piwgc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxhbnk+IH1bXSA9IFtdXG5cbiAgcHVibGljIGF1dG9Db21wbGV0ZT86IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVcblxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCA9ICdTZWFyY2ggYnkgYWRkcmVzcywgcGxhY2Ugb3IgbmFtZSdcblxuICBASW5wdXQoKSBpY29uOiBTZWFtSWNvbiB8IHVuZGVmaW5lZCB8IG51bGwgPSBmYVNlYXJjaExvY2F0aW9uXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGRpc2FibGVkOiBCb29sZWFuSW5wdXQgPSBmYWxzZVxuXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsID0gJ0VudGVyIGFkZHJlc3MsIHBsYWNlIG9yIG5hbWUnXG5cbiAgQElucHV0KCkgYXV0b2NvcnJlY3Q6ICdvZmYnIHwgJ29uJyB8IHVuZGVmaW5lZCB8IG51bGwgPSAnb2ZmJ1xuXG4gIEBJbnB1dCgpIGF1dG9jYXBpdGFsaXplOiAnb2ZmJyB8ICdvbicgfCB1bmRlZmluZWQgfCBudWxsID0gJ29mZidcblxuICAvKipcbiAgICogU2V0IHRoZSB0YWIgaW5kZXggdG8gYC0xYCB0byBhbGxvdyB0aGUgcm9vdCBlbGVtZW50IG9mIHRoZVxuICAgKiBjb21wb25lbnQgdG8gcmVjZWl2ZSBgZm9jdXNgIGV2ZW50IGZyb20gamF2YXNjcmlwdCwgYnV0IG5vdCBnZXQgZm9jdXNlZCBieVxuICAgKiBrZXlib2FyZCBuYXZpZ2F0aW9uLlxuICAgKi9cbiAgIEBJbnB1dCgpXG4gICBzZXQgdGFiSW5kZXgodmFsdWU6IG51bWJlcikgeyB0aGlzLl90YWJJbmRleCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSB9XG4gICBnZXQgdGFiSW5kZXgoKTogbnVtYmVyIHsgcmV0dXJuIHRoaXMuX3RhYkluZGV4IH1cbiAgIHByaXZhdGUgX3RhYkluZGV4ID0gLTFcblxuICBASW5wdXQoKVxuICBzZXQgb3B0aW9ucyh2YWx1ZTogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IHZhbHVlIHx8IFNFQU1fR09PR0xFX1BMQUNFU19BVVRPQ09NUExFVEVfREVGQVVMVF9PUFRJT05TXG4gIH1cbiAgX29wdGlvbnM6IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVPcHRpb25zID0gU0VBTV9HT09HTEVfUExBQ0VTX0FVVE9DT01QTEVURV9ERUZBVUxUX09QVElPTlNcblxuICAvKipcbiAgICogVGhpcyBldmVudCBpcyBmaXJlZCB3aGVuIGEgUGxhY2VSZXN1bHQgaXMgbWFkZSBhdmFpbGFibGUgZm9yIGEgUGxhY2UgdGhlXG4gICAqIHVzZXIgaGFzIHNlbGVjdGVkLiBJZiB0aGUgdXNlciBlbnRlcnMgdGhlIG5hbWUgb2YgYSBQbGFjZSB0aGF0IHdhcyBub3RcbiAgICogc3VnZ2VzdGVkIGJ5IHRoZSBjb250cm9sIGFuZCBwcmVzc2VzIHRoZSBFbnRlciBrZXksIG9yIGlmIGEgUGxhY2UgRGV0YWlsc1xuICAgKiByZXF1ZXN0IGZhaWxzLCB0aGUgUGxhY2VSZXN1bHQgY29udGFpbnMgdGhlIHVzZXIgaW5wdXQgaW4gdGhlIG5hbWVcbiAgICogcHJvcGVydHksIHdpdGggbm8gb3RoZXIgcHJvcGVydGllcyBkZWZpbmVkLlxuICAgKlxuICAgKiBTZWU6IGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JlZmVyZW5jZS9wbGFjZXMtd2lkZ2V0I0F1dG9jb21wbGV0ZS5wbGFjZV9jaGFuZ2VkXG4gICAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgcGxhY2VDaGFuZ2VkOiBPYnNlcnZhYmxlPHZvaWQ+XG5cbiAgQFZpZXdDaGlsZCgnaW5wJywgeyByZWFkOiBJbnB1dERpcmVjdGl2ZSwgc3RhdGljOiB0cnVlIH0pIF9pbnB1dERpcmVjdGl2ZSE6IElucHV0RGlyZWN0aXZlXG5cbiAgQFZpZXdDaGlsZChUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgc2V0IF9fYXV0b2NvbXBsZXRlRGlyZWN0aXZlKHZhbHVlOiBUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSkge1xuICAgIHRoaXMuX2F1dG9Db21wbGV0ZURpcmVjdGl2ZSA9IHZhbHVlXG4gICAgdGhpcy5fdW50aWxBdXRvQ29tcGxldGVSZWFkeSgpLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5hdXRvQ29tcGxldGUgPSB0aGlzLl9hdXRvQ29tcGxldGVEaXJlY3RpdmUuYXV0b0NvbXBsZXRlXG4gICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nLmZvckVhY2gocGVuZGluZyA9PiBwZW5kaW5nLm9ic2VydmFibGUuc3Vic2NyaWJlKHBlbmRpbmcuc3Vic2NyaWJlcikpXG4gICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nID0gW11cbiAgICB9KVxuICB9XG4gIF9hdXRvQ29tcGxldGVEaXJlY3RpdmUhOiBUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIGdldCBfYXR0clRhYkluZGV4KCkgeyByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogKHRoaXMudGFiSW5kZXggfHwgMCkgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyAnZXZlbnQnIF0pXG4gIF9vbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5faW5wdXREaXJlY3RpdmUuZm9jdXMoKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbICckZXZlbnQnIF0pXG4gIF9vbkZvY3VzKCkge1xuICAgIHRoaXMuX2lucHV0RGlyZWN0aXZlPy5mb2N1cygpXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICApIHtcbiAgICB0aGlzLnBsYWNlQ2hhbmdlZCA9IHRoaXMuX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdC5waXBlKFxuICAgICAgc3RhcnRXaXRoKHVuZGVmaW5lZCksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5fY3JlYXRlUGxhY2VDaGFuZ2VkT2JzZXJ2YWJsZTxhbnk+KCkpXG4gICAgKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7IH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfdW50aWxBdXRvQ29tcGxldGVSZWFkeSgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gaW50ZXJ2YWwoNTAwKS5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+ICEhdGhpcy5fYXV0b0NvbXBsZXRlRGlyZWN0aXZlLmF1dG9Db21wbGV0ZSksXG4gICAgICB0YWtlKDEpLFxuICAgICAgbWFwVG8odW5kZWZpbmVkKSxcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgYm91bmRzIHRvIHdoaWNoIHByZWRpY3Rpb25zIGFyZSBiaWFzZWQuXG4gICAqL1xuICAgcHVibGljIGdldEJvdW5kcygpOiBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHMgfCB1bmRlZmluZWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuZ2V0Qm91bmRzKClcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBmaWVsZHMgdG8gYmUgaW5jbHVkZWQgZm9yIHRoZSBQbGFjZSBpbiB0aGUgZGV0YWlscyByZXNwb25zZVxuICAgKiB3aGVuIHRoZSBkZXRhaWxzIGFyZSBzdWNjZXNzZnVsbHkgcmV0cmlldmVkLiBGb3IgYSBsaXN0IG9mIGZpZWxkcyBzZWVcbiAgICogW1BsYWNlUmVzdWx0XShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9yZWZlcmVuY2UvcGxhY2VzLXNlcnZpY2UjUGxhY2VSZXN1bHQpLlxuICAgKi9cbiAgcHVibGljIGdldEZpZWxkcygpOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHJldHVybiAodGhpcy5hdXRvQ29tcGxldGUgYXMgYW55KS5nZXRGaWVsZHMoKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGRldGFpbHMgb2YgdGhlIFBsYWNlIHNlbGVjdGVkIGJ5IHVzZXIgaWYgdGhlIGRldGFpbHMgd2VyZVxuICAgKiBzdWNjZXNzZnVsbHkgcmV0cmlldmVkLiBPdGhlcndpc2UgcmV0dXJucyBhIHN0dWIgUGxhY2Ugb2JqZWN0LCB3aXRoIHRoZVxuICAgKiBuYW1lIHByb3BlcnR5IHNldCB0byB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICAgcHVibGljIGdldFBsYWNlKCk6IGdvb2dsZS5tYXBzLnBsYWNlcy5QbGFjZVJlc3VsdCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5nZXRQbGFjZSgpXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcHJlZmVycmVkIGFyZWEgd2l0aGluIHdoaWNoIHRvIHJldHVybiBQbGFjZSByZXN1bHRzLiBSZXN1bHRzIGFyZVxuICAgKiBiaWFzZWQgdG93YXJkcywgYnV0IG5vdCByZXN0cmljdGVkIHRvLCB0aGlzIGFyZWEuXG4gICAqL1xuICBwdWJsaWMgc2V0Qm91bmRzKGJvdW5kcz86IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyB8IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kc0xpdGVyYWwpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0Qm91bmRzKGJvdW5kcyEpXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY29tcG9uZW50IHJlc3RyaWN0aW9ucy4gQ29tcG9uZW50IHJlc3RyaWN0aW9ucyBhcmUgdXNlZCB0b1xuICAgKiByZXN0cmljdCBwcmVkaWN0aW9ucyB0byBvbmx5IHRob3NlIHdpdGhpbiB0aGUgcGFyZW50IGNvbXBvbmVudC4gRm9yXG4gICAqIGV4YW1wbGUsIHRoZSBjb3VudHJ5LlxuICAgKi9cbiAgcHVibGljIHNldENvbXBvbmVudFJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnM/OiBnb29nbGUubWFwcy5wbGFjZXMuQ29tcG9uZW50UmVzdHJpY3Rpb25zKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldENvbXBvbmVudFJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnMhKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZpZWxkcyB0byBiZSBpbmNsdWRlZCBmb3IgdGhlIFBsYWNlIGluIHRoZSBkZXRhaWxzIHJlc3BvbnNlIHdoZW5cbiAgICogdGhlIGRldGFpbHMgYXJlIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQuIEZvciBhIGxpc3Qgb2YgZmllbGRzIHNlZVxuICAgKiBbUGxhY2VSZXN1bHRdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JlZmVyZW5jZS9wbGFjZXMtc2VydmljZSNQbGFjZVJlc3VsdCkuXG4gICAqL1xuICBwdWJsaWMgc2V0RmllbGRzKGZpZWxkcz86IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldEZpZWxkcyhmaWVsZHMhKVxuICB9XG5cbiAgLyoqICovXG4gIHB1YmxpYyBzZXRPcHRpb25zKG9wdGlvbnM/OiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5zZXRPcHRpb25zKG9wdGlvbnMhKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHR5cGVzIG9mIHByZWRpY3Rpb25zIHRvIGJlIHJldHVybmVkLiBGb3Igc3VwcG9ydGVkIHR5cGVzLCBzZWUgdGhlXG4gICAqIFtkZXZlbG9wZXIncyBndWlkZV0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcGxhY2VzLWF1dG9jb21wbGV0ZSNjb25zdHJhaW4tcGxhY2UtdHlwZXMpLlxuICAgKiBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkLCBhbGwgdHlwZXMgd2lsbCBiZSByZXR1cm5lZC5cbiAgICovXG4gIHB1YmxpYyBzZXRUeXBlcyh0eXBlcz86IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldFR5cGVzKHR5cGVzISlcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gIH1cblxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmJsdXIoKVxuICB9XG5cbiAgcHVibGljIGdldEhvc3RFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZVBsYWNlQ2hhbmdlZE9ic2VydmFibGU8VD4oKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlPFQ+KHN1YnNjcmliZXIgPT4ge1xuICAgICAgaWYgKCF0aGlzLmF1dG9Db21wbGV0ZSkge1xuICAgICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nLnB1c2goeyBvYnNlcnZhYmxlLCBzdWJzY3JpYmVyIH0pXG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICAgIH1cblxuICAgICAgY29uc3Qgc3ViID0gdGhpcy5fYXV0b0NvbXBsZXRlRGlyZWN0aXZlLnBsYWNlQ2hhbmdlZC5zdWJzY3JpYmUoc3Vic2NyaWJlcilcblxuICAgICAgcmV0dXJuICgpID0+IHN1Yi51bnN1YnNjcmliZSgpXG4gICAgfSlcbiAgICByZXR1cm4gb2JzZXJ2YWJsZVxuICB9XG5cbiAgLyoqIEFzc2VydHMgdGhhdCB0aGUgbWFwIGhhcyBiZWVuIGluaXRpYWxpemVkLiAqL1xuICBwcml2YXRlIF9hc3NlcnRJbml0aWFsaXplZCgpOiBhc3NlcnRzIHRoaXMgaXMgV2l0aFJlcXVpcmVkPFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b0NvbXBsZXRlQ29tcG9uZW50LCAnYXV0b0NvbXBsZXRlJz4ge1xuICAgIGlmICghdGhpcy5hdXRvQ29tcGxldGUgJiYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICAnQ2Fubm90IGFjY2VzcyBHb29nbGUgTWFwIFBsYWNlcyBpbmZvcm1hdGlvbiBiZWZvcmUgdGhlIEFQSSBoYXMgYmVlbiBpbml0aWFsaXplZC4gJyArXG4gICAgICAgICAgJ1BsZWFzZSB3YWl0IGZvciB0aGUgQVBJIHRvIGxvYWQgYmVmb3JlIHRyeWluZyB0byBpbnRlcmFjdCB3aXRoIGl0LicsXG4gICAgICApXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -160,4 +160,4 @@ TheSeamGoogleMapsPlacesAutocompleteDirective.propDecorators = {
160
160
  placeChanged: [{ type: Output }],
161
161
  _attrType: [{ type: HostBinding, args: ['attr.type',] }]
162
162
  };
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZ29vZ2xlLW1hcHMvZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZ0MsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQTtBQUN0SSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDaEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFLckYsTUFBTSxDQUFDLE1BQU0sK0NBQStDLEdBQTJDO0lBQ3JHLHFCQUFxQixFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtDQUN6QyxDQUFBO0FBTUQsTUFBTSxPQUFPLDRDQUE0QztJQTRCdkQsWUFDbUIsV0FBeUMsRUFDekMsT0FBZTtRQURmLGdCQUFXLEdBQVgsV0FBVyxDQUE4QjtRQUN6QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBN0JqQiw4QkFBeUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBQ3pDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUV2Qyx5QkFBb0IsR0FBbUUsRUFBRSxDQUFBO1FBQ3pGLGVBQVUsR0FBb0MsRUFBRSxDQUFBO1FBUWhELGFBQVEsR0FBMkMsK0NBQStDLENBQUE7UUFhaEYsY0FBUyxHQUFHLE1BQU0sQ0FBQTtRQU0xQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQ3JELFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFDcEIsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsRUFBTyxDQUFDLENBQzNELENBQUE7SUFDSCxDQUFDO0lBM0JELElBQ0ksT0FBTyxDQUFDLEtBQWdFO1FBQzFFLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxJQUFJLCtDQUErQyxDQUFBO0lBQzFFLENBQUM7SUEwQkQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDbkYsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUU3RixJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUE7Z0JBRTlGLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUN2QyxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFBO1FBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFBO1FBRXBCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1NBQzVDO0lBQ0gsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQ3ZCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ25GLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxLQUFLLENBQUMsU0FBUyxDQUFDLENBQ2pCLENBQUE7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxTQUFTO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksU0FBUztRQUNkLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQ3pCLE9BQVEsSUFBSSxDQUFDLFlBQW9CLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ3JDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsTUFBbUU7UUFDbEYsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFDekIsa0RBQWtEO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsTUFBTyxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx3QkFBd0IsQ0FBQyxZQUF1RDtRQUNyRixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUN6QixrREFBa0Q7UUFDbEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLHdCQUF3QixDQUFDLFlBQWEsQ0FBQyxDQUFBO0lBQ2xFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksU0FBUyxDQUFDLE1BQWlCO1FBQ2hDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQ3pCLGtEQUFrRDtRQUNsRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU8sQ0FBQyxDQUFBO0lBQzdDLENBQUM7SUFFRCxNQUFNO0lBQ0MsVUFBVSxDQUFDLE9BQWdEO1FBQ2hFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQ3pCLGtEQUFrRDtRQUNsRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQVEsQ0FBQyxDQUFBO0lBQy9DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksUUFBUSxDQUFDLEtBQWdCO1FBQzlCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQ3pCLGtEQUFrRDtRQUNsRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQU0sQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCx5QkFBeUI7SUFDbEIsS0FBSztRQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3hDLENBQUM7SUFFRCwyQkFBMkI7SUFDcEIsSUFBSTtRQUNULElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3ZDLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUE7SUFDdkMsQ0FBQztJQUVPLDZCQUE2QjtRQUNuQyxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBSSxVQUFVLENBQUMsRUFBRTtZQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDdEIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBO2dCQUMxRCxPQUFPLFNBQVMsQ0FBQTthQUNqQjtZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDLEtBQVEsRUFBRSxFQUFFO2dCQUMzRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7WUFDaEQsQ0FBQyxDQUFDLENBQUE7WUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUU5QixPQUFPLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNoQyxDQUFDLENBQUMsQ0FBQTtRQUNGLE9BQU8sVUFBVSxDQUFBO0lBQ25CLENBQUM7SUFFRCxpREFBaUQ7SUFDekMsa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsQ0FBQyxFQUFFO1lBQ3pFLE1BQU0sS0FBSyxDQUNULG1GQUFtRjtnQkFDakYsb0VBQW9FLENBQ3ZFLENBQUE7U0FDRjtJQUNILENBQUM7OztZQWhNRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlDQUF5QztnQkFDbkQsUUFBUSxFQUFFLGtDQUFrQzthQUM3Qzs7O1lBZG1CLFVBQVU7WUFBc0IsTUFBTTs7O3NCQXdCdkQsS0FBSzsyQkFlTCxNQUFNO3dCQUVOLFdBQVcsU0FBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE5nWm9uZSwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgaW50ZXJ2YWwsIE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmliZXIgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcFRvLCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcblxyXG5kZWNsYXJlIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbiB8IHVuZGVmaW5lZFxyXG50eXBlIFdpdGhSZXF1aXJlZDxULCBLIGV4dGVuZHMga2V5b2YgVD4gPSBUICYgeyBbUCBpbiBLXS0/OiBUW1BdIH1cclxuXHJcbmV4cG9ydCBjb25zdCBTRUFNX0dPT0dMRV9QTEFDRVNfQVVUT0NPTVBMRVRFX0RFRkFVTFRfT1BUSU9OUzogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMgPSB7XHJcbiAgY29tcG9uZW50UmVzdHJpY3Rpb25zOiB7IGNvdW50cnk6ICdVUycgfVxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ2lucHV0W3NlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b2NvbXBsZXRlXScsXHJcbiAgZXhwb3J0QXM6ICdzZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b2NvbXBsZXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0b0NvbXBsZXRlUmVhZHlTdWJqZWN0ID0gbmV3IFN1YmplY3QoKVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpXHJcblxyXG4gIHByaXZhdGUgX3BsYWNlQ2hhbmdlZFBlbmRpbmc6IHsgb2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxhbnk+LCBzdWJzY3JpYmVyOiBTdWJzY3JpYmVyPGFueT4gfVtdID0gW11cclxuICBwcml2YXRlIF9saXN0ZW5lcnM6IGdvb2dsZS5tYXBzLk1hcHNFdmVudExpc3RlbmVyW10gPSBbXVxyXG5cclxuICBwdWJsaWMgYXV0b0NvbXBsZXRlPzogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBvcHRpb25zKHZhbHVlOiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlT3B0aW9ucyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcclxuICAgIHRoaXMuX29wdGlvbnMgPSB2YWx1ZSB8fCBTRUFNX0dPT0dMRV9QTEFDRVNfQVVUT0NPTVBMRVRFX0RFRkFVTFRfT1BUSU9OU1xyXG4gIH1cclxuICBwcml2YXRlIF9vcHRpb25zOiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlT3B0aW9ucyA9IFNFQU1fR09PR0xFX1BMQUNFU19BVVRPQ09NUExFVEVfREVGQVVMVF9PUFRJT05TXHJcblxyXG4gIC8qKlxyXG4gICAqIFRoaXMgZXZlbnQgaXMgZmlyZWQgd2hlbiBhIFBsYWNlUmVzdWx0IGlzIG1hZGUgYXZhaWxhYmxlIGZvciBhIFBsYWNlIHRoZVxyXG4gICAqIHVzZXIgaGFzIHNlbGVjdGVkLiBJZiB0aGUgdXNlciBlbnRlcnMgdGhlIG5hbWUgb2YgYSBQbGFjZSB0aGF0IHdhcyBub3RcclxuICAgKiBzdWdnZXN0ZWQgYnkgdGhlIGNvbnRyb2wgYW5kIHByZXNzZXMgdGhlIEVudGVyIGtleSwgb3IgaWYgYSBQbGFjZSBEZXRhaWxzXHJcbiAgICogcmVxdWVzdCBmYWlscywgdGhlIFBsYWNlUmVzdWx0IGNvbnRhaW5zIHRoZSB1c2VyIGlucHV0IGluIHRoZSBuYW1lXHJcbiAgICogcHJvcGVydHksIHdpdGggbm8gb3RoZXIgcHJvcGVydGllcyBkZWZpbmVkLlxyXG4gICAqXHJcbiAgICogU2VlOiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9yZWZlcmVuY2UvcGxhY2VzLXdpZGdldCNBdXRvY29tcGxldGUucGxhY2VfY2hhbmdlZFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkb25seSBwbGFjZUNoYW5nZWQ6IE9ic2VydmFibGU8YW55PlxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2F0dHIudHlwZScpIF9hdHRyVHlwZSA9ICd0ZXh0J1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcclxuICApIHtcclxuICAgIHRoaXMucGxhY2VDaGFuZ2VkID0gdGhpcy5fYXV0b0NvbXBsZXRlUmVhZHlTdWJqZWN0LnBpcGUoXHJcbiAgICAgIHN0YXJ0V2l0aCh1bmRlZmluZWQpLFxyXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5fY3JlYXRlUGxhY2VDaGFuZ2VkT2JzZXJ2YWJsZTxhbnk+KCkpXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIHRoaXMuX3VudGlsR29vZ2xlTWFwc0FwaUxvYWRlZCgpLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuYXV0b0NvbXBsZXRlID0gbmV3IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGUodGhpcy5nZXRIb3N0RWxlbWVudCgpLCB0aGlzLl9vcHRpb25zKVxyXG5cclxuICAgICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nLmZvckVhY2gocGVuZGluZyA9PiBwZW5kaW5nLm9ic2VydmFibGUuc3Vic2NyaWJlKHBlbmRpbmcuc3Vic2NyaWJlcikpXHJcblxyXG4gICAgICAgIHRoaXMuX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdC5uZXh0KClcclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2xpc3RlbmVycy5mb3JFYWNoKGwgPT4gbC5yZW1vdmUoKSlcclxuICAgIHRoaXMuX2xpc3RlbmVycyA9IFtdXHJcblxyXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcclxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXV0b0NvbXBsZXRlICYmIGNoYW5nZXNbJ29wdGlvbnMnXSkge1xyXG4gICAgICB0aGlzLmF1dG9Db21wbGV0ZS5zZXRPcHRpb25zKHRoaXMuX29wdGlvbnMpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91bnRpbEdvb2dsZU1hcHNBcGlMb2FkZWQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gaW50ZXJ2YWwoNTAwKS5waXBlKFxyXG4gICAgICBmaWx0ZXIoKCkgPT4gISEod2luZG93Lmdvb2dsZSAmJiB3aW5kb3cuZ29vZ2xlLm1hcHMgJiYgd2luZG93Lmdvb2dsZS5tYXBzLnZlcnNpb24pKSxcclxuICAgICAgdGFrZSgxKSxcclxuICAgICAgbWFwVG8odW5kZWZpbmVkKSxcclxuICAgIClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIGJvdW5kcyB0byB3aGljaCBwcmVkaWN0aW9ucyBhcmUgYmlhc2VkLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRCb3VuZHMoKTogZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzIHwgdW5kZWZpbmVkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5nZXRCb3VuZHMoKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB0aGUgZmllbGRzIHRvIGJlIGluY2x1ZGVkIGZvciB0aGUgUGxhY2UgaW4gdGhlIGRldGFpbHMgcmVzcG9uc2VcclxuICAgKiB3aGVuIHRoZSBkZXRhaWxzIGFyZSBzdWNjZXNzZnVsbHkgcmV0cmlldmVkLiBGb3IgYSBsaXN0IG9mIGZpZWxkcyBzZWVcclxuICAgKiBbUGxhY2VSZXN1bHRdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JlZmVyZW5jZS9wbGFjZXMtc2VydmljZSNQbGFjZVJlc3VsdCkuXHJcbiAgICovXHJcbiAgcHVibGljIGdldEZpZWxkcygpOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICByZXR1cm4gKHRoaXMuYXV0b0NvbXBsZXRlIGFzIGFueSkuZ2V0RmllbGRzKClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIGRldGFpbHMgb2YgdGhlIFBsYWNlIHNlbGVjdGVkIGJ5IHVzZXIgaWYgdGhlIGRldGFpbHMgd2VyZVxyXG4gICAqIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQuIE90aGVyd2lzZSByZXR1cm5zIGEgc3R1YiBQbGFjZSBvYmplY3QsIHdpdGggdGhlXHJcbiAgICogbmFtZSBwcm9wZXJ0eSBzZXQgdG8gdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGlucHV0IGZpZWxkLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRQbGFjZSgpOiBnb29nbGUubWFwcy5wbGFjZXMuUGxhY2VSZXN1bHQge1xyXG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxyXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLmdldFBsYWNlKClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIHByZWZlcnJlZCBhcmVhIHdpdGhpbiB3aGljaCB0byByZXR1cm4gUGxhY2UgcmVzdWx0cy4gUmVzdWx0cyBhcmVcclxuICAgKiBiaWFzZWQgdG93YXJkcywgYnV0IG5vdCByZXN0cmljdGVkIHRvLCB0aGlzIGFyZWEuXHJcbiAgICovXHJcbiAgcHVibGljIHNldEJvdW5kcyhib3VuZHM/OiBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHMgfCBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHNMaXRlcmFsKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxyXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldEJvdW5kcyhib3VuZHMhKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyB0aGUgY29tcG9uZW50IHJlc3RyaWN0aW9ucy4gQ29tcG9uZW50IHJlc3RyaWN0aW9ucyBhcmUgdXNlZCB0b1xyXG4gICAqIHJlc3RyaWN0IHByZWRpY3Rpb25zIHRvIG9ubHkgdGhvc2Ugd2l0aGluIHRoZSBwYXJlbnQgY29tcG9uZW50LiBGb3JcclxuICAgKiBleGFtcGxlLCB0aGUgY291bnRyeS5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0Q29tcG9uZW50UmVzdHJpY3Rpb25zKHJlc3RyaWN0aW9ucz86IGdvb2dsZS5tYXBzLnBsYWNlcy5Db21wb25lbnRSZXN0cmljdGlvbnMpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0Q29tcG9uZW50UmVzdHJpY3Rpb25zKHJlc3RyaWN0aW9ucyEpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBmaWVsZHMgdG8gYmUgaW5jbHVkZWQgZm9yIHRoZSBQbGFjZSBpbiB0aGUgZGV0YWlscyByZXNwb25zZSB3aGVuXHJcbiAgICogdGhlIGRldGFpbHMgYXJlIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQuIEZvciBhIGxpc3Qgb2YgZmllbGRzIHNlZVxyXG4gICAqIFtQbGFjZVJlc3VsdF0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcmVmZXJlbmNlL3BsYWNlcy1zZXJ2aWNlI1BsYWNlUmVzdWx0KS5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0RmllbGRzKGZpZWxkcz86IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxyXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldEZpZWxkcyhmaWVsZHMhKVxyXG4gIH1cclxuXHJcbiAgLyoqICovXHJcbiAgcHVibGljIHNldE9wdGlvbnMob3B0aW9ucz86IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVPcHRpb25zKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxyXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldE9wdGlvbnMob3B0aW9ucyEpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSB0eXBlcyBvZiBwcmVkaWN0aW9ucyB0byBiZSByZXR1cm5lZC4gRm9yIHN1cHBvcnRlZCB0eXBlcywgc2VlIHRoZVxyXG4gICAqIFtkZXZlbG9wZXIncyBndWlkZV0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcGxhY2VzLWF1dG9jb21wbGV0ZSNjb25zdHJhaW4tcGxhY2UtdHlwZXMpLlxyXG4gICAqIElmIG5vIHR5cGVzIGFyZSBzcGVjaWZpZWQsIGFsbCB0eXBlcyB3aWxsIGJlIHJldHVybmVkLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRUeXBlcyh0eXBlcz86IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxyXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldFR5cGVzKHR5cGVzISlcclxuICB9XHJcblxyXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cclxuICBwdWJsaWMgZm9jdXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxyXG4gIH1cclxuXHJcbiAgLyoqIFVuZm9jdXNlcyB0aGUgaW5wdXQuICovXHJcbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuYmx1cigpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0SG9zdEVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jcmVhdGVQbGFjZUNoYW5nZWRPYnNlcnZhYmxlPFQ+KCk6IE9ic2VydmFibGU8VD4ge1xyXG4gICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlPFQ+KHN1YnNjcmliZXIgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuYXV0b0NvbXBsZXRlKSB7XHJcbiAgICAgICAgdGhpcy5fcGxhY2VDaGFuZ2VkUGVuZGluZy5wdXNoKHsgb2JzZXJ2YWJsZSwgc3Vic2NyaWJlciB9KVxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBsaXN0ZW5lciA9IHRoaXMuYXV0b0NvbXBsZXRlLmFkZExpc3RlbmVyKCdwbGFjZV9jaGFuZ2VkJywgKGV2ZW50OiBUKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiBzdWJzY3JpYmVyLm5leHQoZXZlbnQpKVxyXG4gICAgICB9KVxyXG4gICAgICB0aGlzLl9saXN0ZW5lcnMucHVzaChsaXN0ZW5lcilcclxuXHJcbiAgICAgIHJldHVybiAoKSA9PiBsaXN0ZW5lci5yZW1vdmUoKVxyXG4gICAgfSlcclxuICAgIHJldHVybiBvYnNlcnZhYmxlXHJcbiAgfVxyXG5cclxuICAvKiogQXNzZXJ0cyB0aGF0IHRoZSBtYXAgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuICovXHJcbiAgcHJpdmF0ZSBfYXNzZXJ0SW5pdGlhbGl6ZWQoKTogYXNzZXJ0cyB0aGlzIGlzIFdpdGhSZXF1aXJlZDxUaGVTZWFtR29vZ2xlTWFwc1BsYWNlc0F1dG9jb21wbGV0ZURpcmVjdGl2ZSwgJ2F1dG9Db21wbGV0ZSc+IHtcclxuICAgIGlmICghdGhpcy5hdXRvQ29tcGxldGUgJiYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoXHJcbiAgICAgICAgJ0Nhbm5vdCBhY2Nlc3MgR29vZ2xlIE1hcCBQbGFjZXMgaW5mb3JtYXRpb24gYmVmb3JlIHRoZSBBUEkgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuICcgK1xyXG4gICAgICAgICAgJ1BsZWFzZSB3YWl0IGZvciB0aGUgQVBJIHRvIGxvYWQgYmVmb3JlIHRyeWluZyB0byBpbnRlcmFjdCB3aXRoIGl0LicsXHJcbiAgICAgIClcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZ29vZ2xlLW1hcHMvZ29vZ2xlLW1hcHMtcGxhY2VzLWF1dG9jb21wbGV0ZS9nb29nbGUtbWFwcy1wbGFjZXMtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZ0MsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQTtBQUN0SSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDaEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFLckYsTUFBTSxDQUFDLE1BQU0sK0NBQStDLEdBQTJDO0lBQ3JHLHFCQUFxQixFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtDQUN6QyxDQUFBO0FBTUQsTUFBTSxPQUFPLDRDQUE0QztJQTRCdkQsWUFDbUIsV0FBeUMsRUFDekMsT0FBZTtRQURmLGdCQUFXLEdBQVgsV0FBVyxDQUE4QjtRQUN6QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBN0JqQiw4QkFBeUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBQ3pDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUV2Qyx5QkFBb0IsR0FBbUUsRUFBRSxDQUFBO1FBQ3pGLGVBQVUsR0FBb0MsRUFBRSxDQUFBO1FBUWhELGFBQVEsR0FBMkMsK0NBQStDLENBQUE7UUFhaEYsY0FBUyxHQUFHLE1BQU0sQ0FBQTtRQU0xQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUks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SSxVQUFVLENBQUMsRUFBRTtZQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDdEIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBO2dCQUMxRCxPQUFPLFNBQVMsQ0FBQTthQUNqQjtZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDLEtBQVEsRUFBRSxFQUFFO2dCQUMzRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7WUFDaEQsQ0FBQyxDQUFDLENBQUE7WUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUU5QixPQUFPLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNoQyxDQUFDLENBQUMsQ0FBQTtRQUNGLE9BQU8sVUFBVSxDQUFBO0lBQ25CLENBQUM7SUFFRCxpREFBaUQ7SUFDekMsa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsQ0FBQyxFQUFFO1lBQ3pFLE1BQU0sS0FBSyxDQUNULG1GQUFtRjtnQkFDakYsb0VBQW9FLENBQ3ZFLENBQUE7U0FDRjtJQUNILENBQUM7OztZQWhNRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlDQUF5QztnQkFDbkQsUUFBUSxFQUFFLGtDQUFrQzthQUM3Qzs7O1lBZG1CLFVBQVU7WUFBc0IsTUFBTTs7O3NCQXdCdkQsS0FBSzsyQkFlTCxNQUFNO3dCQUVOLFdBQVcsU0FBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE5nWm9uZSwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGludGVydmFsLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGZpbHRlciwgbWFwVG8sIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuZGVjbGFyZSBjb25zdCBuZ0Rldk1vZGU6IGJvb2xlYW4gfCB1bmRlZmluZWRcbnR5cGUgV2l0aFJlcXVpcmVkPFQsIEsgZXh0ZW5kcyBrZXlvZiBUPiA9IFQgJiB7IFtQIGluIEtdLT86IFRbUF0gfVxuXG5leHBvcnQgY29uc3QgU0VBTV9HT09HTEVfUExBQ0VTX0FVVE9DT01QTEVURV9ERUZBVUxUX09QVElPTlM6IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVPcHRpb25zID0ge1xuICBjb21wb25lbnRSZXN0cmljdGlvbnM6IHsgY291bnRyeTogJ1VTJyB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W3NlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b2NvbXBsZXRlXScsXG4gIGV4cG9ydEFzOiAnc2VhbUdvb2dsZU1hcHNQbGFjZXNBdXRvY29tcGxldGUnXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1Hb29nbGVNYXBzUGxhY2VzQXV0b2NvbXBsZXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdCA9IG5ldyBTdWJqZWN0KClcbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KClcblxuICBwcml2YXRlIF9wbGFjZUNoYW5nZWRQZW5kaW5nOiB7IG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55Piwgc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxhbnk+IH1bXSA9IFtdXG4gIHByaXZhdGUgX2xpc3RlbmVyczogZ29vZ2xlLm1hcHMuTWFwc0V2ZW50TGlzdGVuZXJbXSA9IFtdXG5cbiAgcHVibGljIGF1dG9Db21wbGV0ZT86IGdvb2dsZS5tYXBzLnBsYWNlcy5BdXRvY29tcGxldGVcblxuICBASW5wdXQoKVxuICBzZXQgb3B0aW9ucyh2YWx1ZTogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IHZhbHVlIHx8IFNFQU1fR09PR0xFX1BMQUNFU19BVVRPQ09NUExFVEVfREVGQVVMVF9PUFRJT05TXG4gIH1cbiAgcHJpdmF0ZSBfb3B0aW9uczogZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZU9wdGlvbnMgPSBTRUFNX0dPT0dMRV9QTEFDRVNfQVVUT0NPTVBMRVRFX0RFRkFVTFRfT1BUSU9OU1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGlzIGZpcmVkIHdoZW4gYSBQbGFjZVJlc3VsdCBpcyBtYWRlIGF2YWlsYWJsZSBmb3IgYSBQbGFjZSB0aGVcbiAgICogdXNlciBoYXMgc2VsZWN0ZWQuIElmIHRoZSB1c2VyIGVudGVycyB0aGUgbmFtZSBvZiBhIFBsYWNlIHRoYXQgd2FzIG5vdFxuICAgKiBzdWdnZXN0ZWQgYnkgdGhlIGNvbnRyb2wgYW5kIHByZXNzZXMgdGhlIEVudGVyIGtleSwgb3IgaWYgYSBQbGFjZSBEZXRhaWxzXG4gICAqIHJlcXVlc3QgZmFpbHMsIHRoZSBQbGFjZVJlc3VsdCBjb250YWlucyB0aGUgdXNlciBpbnB1dCBpbiB0aGUgbmFtZVxuICAgKiBwcm9wZXJ0eSwgd2l0aCBubyBvdGhlciBwcm9wZXJ0aWVzIGRlZmluZWQuXG4gICAqXG4gICAqIFNlZTogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcmVmZXJlbmNlL3BsYWNlcy13aWRnZXQjQXV0b2NvbXBsZXRlLnBsYWNlX2NoYW5nZWRcbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBwbGFjZUNoYW5nZWQ6IE9ic2VydmFibGU8YW55PlxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50eXBlJykgX2F0dHJUeXBlID0gJ3RleHQnXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcbiAgKSB7XG4gICAgdGhpcy5wbGFjZUNoYW5nZWQgPSB0aGlzLl9hdXRvQ29tcGxldGVSZWFkeVN1YmplY3QucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh1bmRlZmluZWQpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2NyZWF0ZVBsYWNlQ2hhbmdlZE9ic2VydmFibGU8YW55PigpKVxuICAgIClcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0aGlzLl91bnRpbEdvb2dsZU1hcHNBcGlMb2FkZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5hdXRvQ29tcGxldGUgPSBuZXcgZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZSh0aGlzLmdldEhvc3RFbGVtZW50KCksIHRoaXMuX29wdGlvbnMpXG5cbiAgICAgICAgdGhpcy5fcGxhY2VDaGFuZ2VkUGVuZGluZy5mb3JFYWNoKHBlbmRpbmcgPT4gcGVuZGluZy5vYnNlcnZhYmxlLnN1YnNjcmliZShwZW5kaW5nLnN1YnNjcmliZXIpKVxuXG4gICAgICAgIHRoaXMuX2F1dG9Db21wbGV0ZVJlYWR5U3ViamVjdC5uZXh0KClcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2xpc3RlbmVycy5mb3JFYWNoKGwgPT4gbC5yZW1vdmUoKSlcbiAgICB0aGlzLl9saXN0ZW5lcnMgPSBbXVxuXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hdXRvQ29tcGxldGUgJiYgY2hhbmdlc1snb3B0aW9ucyddKSB7XG4gICAgICB0aGlzLmF1dG9Db21wbGV0ZS5zZXRPcHRpb25zKHRoaXMuX29wdGlvbnMpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdW50aWxHb29nbGVNYXBzQXBpTG9hZGVkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBpbnRlcnZhbCg1MDApLnBpcGUoXG4gICAgICBmaWx0ZXIoKCkgPT4gISEod2luZG93Lmdvb2dsZSAmJiB3aW5kb3cuZ29vZ2xlLm1hcHMgJiYgd2luZG93Lmdvb2dsZS5tYXBzLnZlcnNpb24pKSxcbiAgICAgIHRha2UoMSksXG4gICAgICBtYXBUbyh1bmRlZmluZWQpLFxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBib3VuZHMgdG8gd2hpY2ggcHJlZGljdGlvbnMgYXJlIGJpYXNlZC5cbiAgICovXG4gIHB1YmxpYyBnZXRCb3VuZHMoKTogZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzIHwgdW5kZWZpbmVkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLmdldEJvdW5kcygpXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZmllbGRzIHRvIGJlIGluY2x1ZGVkIGZvciB0aGUgUGxhY2UgaW4gdGhlIGRldGFpbHMgcmVzcG9uc2VcbiAgICogd2hlbiB0aGUgZGV0YWlscyBhcmUgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC4gRm9yIGEgbGlzdCBvZiBmaWVsZHMgc2VlXG4gICAqIFtQbGFjZVJlc3VsdF0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcmVmZXJlbmNlL3BsYWNlcy1zZXJ2aWNlI1BsYWNlUmVzdWx0KS5cbiAgICovXG4gIHB1YmxpYyBnZXRGaWVsZHMoKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICByZXR1cm4gKHRoaXMuYXV0b0NvbXBsZXRlIGFzIGFueSkuZ2V0RmllbGRzKClcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBkZXRhaWxzIG9mIHRoZSBQbGFjZSBzZWxlY3RlZCBieSB1c2VyIGlmIHRoZSBkZXRhaWxzIHdlcmVcbiAgICogc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC4gT3RoZXJ3aXNlIHJldHVybnMgYSBzdHViIFBsYWNlIG9iamVjdCwgd2l0aCB0aGVcbiAgICogbmFtZSBwcm9wZXJ0eSBzZXQgdG8gdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgcHVibGljIGdldFBsYWNlKCk6IGdvb2dsZS5tYXBzLnBsYWNlcy5QbGFjZVJlc3VsdCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5nZXRQbGFjZSgpXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcHJlZmVycmVkIGFyZWEgd2l0aGluIHdoaWNoIHRvIHJldHVybiBQbGFjZSByZXN1bHRzLiBSZXN1bHRzIGFyZVxuICAgKiBiaWFzZWQgdG93YXJkcywgYnV0IG5vdCByZXN0cmljdGVkIHRvLCB0aGlzIGFyZWEuXG4gICAqL1xuICBwdWJsaWMgc2V0Qm91bmRzKGJvdW5kcz86IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcyB8IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kc0xpdGVyYWwpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgpXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICByZXR1cm4gdGhpcy5hdXRvQ29tcGxldGUuc2V0Qm91bmRzKGJvdW5kcyEpXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY29tcG9uZW50IHJlc3RyaWN0aW9ucy4gQ29tcG9uZW50IHJlc3RyaWN0aW9ucyBhcmUgdXNlZCB0b1xuICAgKiByZXN0cmljdCBwcmVkaWN0aW9ucyB0byBvbmx5IHRob3NlIHdpdGhpbiB0aGUgcGFyZW50IGNvbXBvbmVudC4gRm9yXG4gICAqIGV4YW1wbGUsIHRoZSBjb3VudHJ5LlxuICAgKi9cbiAgcHVibGljIHNldENvbXBvbmVudFJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnM/OiBnb29nbGUubWFwcy5wbGFjZXMuQ29tcG9uZW50UmVzdHJpY3Rpb25zKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldENvbXBvbmVudFJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnMhKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZpZWxkcyB0byBiZSBpbmNsdWRlZCBmb3IgdGhlIFBsYWNlIGluIHRoZSBkZXRhaWxzIHJlc3BvbnNlIHdoZW5cbiAgICogdGhlIGRldGFpbHMgYXJlIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQuIEZvciBhIGxpc3Qgb2YgZmllbGRzIHNlZVxuICAgKiBbUGxhY2VSZXN1bHRdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JlZmVyZW5jZS9wbGFjZXMtc2VydmljZSNQbGFjZVJlc3VsdCkuXG4gICAqL1xuICBwdWJsaWMgc2V0RmllbGRzKGZpZWxkcz86IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldEZpZWxkcyhmaWVsZHMhKVxuICB9XG5cbiAgLyoqICovXG4gIHB1YmxpYyBzZXRPcHRpb25zKG9wdGlvbnM/OiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKClcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIHJldHVybiB0aGlzLmF1dG9Db21wbGV0ZS5zZXRPcHRpb25zKG9wdGlvbnMhKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHR5cGVzIG9mIHByZWRpY3Rpb25zIHRvIGJlIHJldHVybmVkLiBGb3Igc3VwcG9ydGVkIHR5cGVzLCBzZWUgdGhlXG4gICAqIFtkZXZlbG9wZXIncyBndWlkZV0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcGxhY2VzLWF1dG9jb21wbGV0ZSNjb25zdHJhaW4tcGxhY2UtdHlwZXMpLlxuICAgKiBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkLCBhbGwgdHlwZXMgd2lsbCBiZSByZXR1cm5lZC5cbiAgICovXG4gIHB1YmxpYyBzZXRUeXBlcyh0eXBlcz86IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoKVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgcmV0dXJuIHRoaXMuYXV0b0NvbXBsZXRlLnNldFR5cGVzKHR5cGVzISlcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gIH1cblxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmJsdXIoKVxuICB9XG5cbiAgcHVibGljIGdldEhvc3RFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZVBsYWNlQ2hhbmdlZE9ic2VydmFibGU8VD4oKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlPFQ+KHN1YnNjcmliZXIgPT4ge1xuICAgICAgaWYgKCF0aGlzLmF1dG9Db21wbGV0ZSkge1xuICAgICAgICB0aGlzLl9wbGFjZUNoYW5nZWRQZW5kaW5nLnB1c2goeyBvYnNlcnZhYmxlLCBzdWJzY3JpYmVyIH0pXG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICAgIH1cbiAgICAgIGNvbnN0IGxpc3RlbmVyID0gdGhpcy5hdXRvQ29tcGxldGUuYWRkTGlzdGVuZXIoJ3BsYWNlX2NoYW5nZWQnLCAoZXZlbnQ6IFQpID0+IHtcbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiBzdWJzY3JpYmVyLm5leHQoZXZlbnQpKVxuICAgICAgfSlcbiAgICAgIHRoaXMuX2xpc3RlbmVycy5wdXNoKGxpc3RlbmVyKVxuXG4gICAgICByZXR1cm4gKCkgPT4gbGlzdGVuZXIucmVtb3ZlKClcbiAgICB9KVxuICAgIHJldHVybiBvYnNlcnZhYmxlXG4gIH1cblxuICAvKiogQXNzZXJ0cyB0aGF0IHRoZSBtYXAgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuICovXG4gIHByaXZhdGUgX2Fzc2VydEluaXRpYWxpemVkKCk6IGFzc2VydHMgdGhpcyBpcyBXaXRoUmVxdWlyZWQ8VGhlU2VhbUdvb2dsZU1hcHNQbGFjZXNBdXRvY29tcGxldGVEaXJlY3RpdmUsICdhdXRvQ29tcGxldGUnPiB7XG4gICAgaWYgKCF0aGlzLmF1dG9Db21wbGV0ZSAmJiAodHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlKSkge1xuICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgYWNjZXNzIEdvb2dsZSBNYXAgUGxhY2VzIGluZm9ybWF0aW9uIGJlZm9yZSB0aGUgQVBJIGhhcyBiZWVuIGluaXRpYWxpemVkLiAnICtcbiAgICAgICAgICAnUGxlYXNlIHdhaXQgZm9yIHRoZSBBUEkgdG8gbG9hZCBiZWZvcmUgdHJ5aW5nIHRvIGludGVyYWN0IHdpdGggaXQuJyxcbiAgICAgIClcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -41,4 +41,4 @@ function isFeatureCollectionValue(value) {
41
41
  }
42
42
  return value.type === 'FeatureCollection' && Array.isArray(value.features);
43
43
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9jb2VyY2UtZmVhdHVyZS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGlFQUFpRTtBQUNqRSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsS0FBVTtJQUNoRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUMxQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxVQUFVLENBQUMsS0FBVTtJQUM1QixNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN0QyxJQUFJLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFBO0tBQ2Q7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQVU7SUFDbEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtTQUN6QjtRQUFDLFdBQU07WUFDTixPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLHdCQUF3QixDQUFDLEtBQVU7SUFDMUMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDekMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUNELE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxtQkFBbUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLy8gVE9ETzogTWFrZSB0aGlzIG1vcmUgdGhvcm91Z2ggYW5kIG1heWJlIGVycm9yIG9uIHVucmVjb2duaXplZC5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUZlYXR1cmVDb2xsZWN0aW9uKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xyXG4gIHJldHVybiBwYXJzZVZhbHVlKHZhbHVlKVxyXG59XHJcblxyXG4vKipcclxuICogUGFyc2VzIHRoZSB2YWx1ZSB0byBhIEZlYXR1cmVDb2xsZWN0aW9uIG9iamVjdCBvciBudWxsIGlmIGl0IGlzIG5vdCBhXHJcbiAqIEZlYXR1cmVDb2xsZWN0aW9uLlxyXG4gKi9cclxuZnVuY3Rpb24gcGFyc2VWYWx1ZSh2YWx1ZTogYW55KTogRmVhdHVyZUNvbGxlY3Rpb24gfCBudWxsIHtcclxuICBjb25zdCBfdmFsdWUgPSBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlKVxyXG4gIGlmIChpc0ZlYXR1cmVDb2xsZWN0aW9uVmFsdWUoX3ZhbHVlKSkge1xyXG4gICAgcmV0dXJuIF92YWx1ZVxyXG4gIH1cclxuICByZXR1cm4gbnVsbFxyXG59XHJcblxyXG4vKipcclxuICogVHJpZXMgdG8gcGFyc2UgdGhlIHZhbHVlIHRvIGFuIG9iamVjdCwgaW4gY2FzZSB0aGUgdmFsdWUgaXMgYSBzdHJpbmdpZmllZFxyXG4gKiBqc29uLlxyXG4gKi9cclxuZnVuY3Rpb24gcGFyc2VTdHJpbmdWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcclxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgcmV0dXJuIEpTT04ucGFyc2UodmFsdWUpXHJcbiAgICB9IGNhdGNoIHtcclxuICAgICAgcmV0dXJuIG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiB2YWx1ZVxyXG59XHJcblxyXG4vKipcclxuICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIEZlYXR1cmVDb2xsZWN0aW9uLlxyXG4gKlxyXG4gKiBOT1RFOiBUaGlzIGlzIG5vdCBhIHRob3JvdWdoIEZlYXR1cmVDb2xsZWN0aW9uIGNoZWNrLiBJdCBvbmx5IGNoZWNrcyB0aGF0IHRoZVxyXG4gKiB2YWx1ZSBpcyBhbiBvYmplY3QgcmVzZW1ibGluZyBhIEdlb0pTT04uRmVhdHVyZUNvbGxlY3Rpb24sIGVub3VnaCBmb3IgdGhlXHJcbiAqIHZhbGlkYXRvci5cclxuICovXHJcbmZ1bmN0aW9uIGlzRmVhdHVyZUNvbGxlY3Rpb25WYWx1ZSh2YWx1ZTogYW55KTogdmFsdWUgaXMgRmVhdHVyZUNvbGxlY3Rpb24ge1xyXG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XHJcbiAgICByZXR1cm4gZmFsc2VcclxuICB9XHJcbiAgcmV0dXJuIHZhbHVlLnR5cGUgPT09ICdGZWF0dXJlQ29sbGVjdGlvbicgJiYgQXJyYXkuaXNBcnJheSh2YWx1ZS5mZWF0dXJlcylcclxufVxyXG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9jb2VyY2UtZmVhdHVyZS1jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGlFQUFpRTtBQUNqRSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsS0FBVTtJQUNoRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUMxQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxVQUFVLENBQUMsS0FBVTtJQUM1QixNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN0QyxJQUFJLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFBO0tBQ2Q7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQVU7SUFDbEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtTQUN6QjtRQUFDLFdBQU07WUFDTixPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLHdCQUF3QixDQUFDLEtBQVU7SUFDMUMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDekMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUNELE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxtQkFBbUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuXG4vLyBUT0RPOiBNYWtlIHRoaXMgbW9yZSB0aG9yb3VnaCBhbmQgbWF5YmUgZXJyb3Igb24gdW5yZWNvZ25pemVkLlxuZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUZlYXR1cmVDb2xsZWN0aW9uKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xuICByZXR1cm4gcGFyc2VWYWx1ZSh2YWx1ZSlcbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIHZhbHVlIHRvIGEgRmVhdHVyZUNvbGxlY3Rpb24gb2JqZWN0IG9yIG51bGwgaWYgaXQgaXMgbm90IGFcbiAqIEZlYXR1cmVDb2xsZWN0aW9uLlxuICovXG5mdW5jdGlvbiBwYXJzZVZhbHVlKHZhbHVlOiBhbnkpOiBGZWF0dXJlQ29sbGVjdGlvbiB8IG51bGwge1xuICBjb25zdCBfdmFsdWUgPSBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlKVxuICBpZiAoaXNGZWF0dXJlQ29sbGVjdGlvblZhbHVlKF92YWx1ZSkpIHtcbiAgICByZXR1cm4gX3ZhbHVlXG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuLyoqXG4gKiBUcmllcyB0byBwYXJzZSB0aGUgdmFsdWUgdG8gYW4gb2JqZWN0LCBpbiBjYXNlIHRoZSB2YWx1ZSBpcyBhIHN0cmluZ2lmaWVkXG4gKiBqc29uLlxuICovXG5mdW5jdGlvbiBwYXJzZVN0cmluZ1ZhbHVlKHZhbHVlOiBhbnkpOiBhbnkge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZSlcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbHVlXG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIEZlYXR1cmVDb2xsZWN0aW9uLlxuICpcbiAqIE5PVEU6IFRoaXMgaXMgbm90IGEgdGhvcm91Z2ggRmVhdHVyZUNvbGxlY3Rpb24gY2hlY2suIEl0IG9ubHkgY2hlY2tzIHRoYXQgdGhlXG4gKiB2YWx1ZSBpcyBhbiBvYmplY3QgcmVzZW1ibGluZyBhIEdlb0pTT04uRmVhdHVyZUNvbGxlY3Rpb24sIGVub3VnaCBmb3IgdGhlXG4gKiB2YWxpZGF0b3IuXG4gKi9cbmZ1bmN0aW9uIGlzRmVhdHVyZUNvbGxlY3Rpb25WYWx1ZSh2YWx1ZTogYW55KTogdmFsdWUgaXMgRmVhdHVyZUNvbGxlY3Rpb24ge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIHJldHVybiB2YWx1ZS50eXBlID09PSAnRmVhdHVyZUNvbGxlY3Rpb24nICYmIEFycmF5LmlzQXJyYXkodmFsdWUuZmVhdHVyZXMpXG59XG4iXX0=
@@ -8,4 +8,4 @@ export function geoJsonToArea(geoJson, units = 'acres') {
8
8
  const acres = convertArea(area_mSqr, 'meters', units);
9
9
  return acres;
10
10
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLWpzb24tdG8tYXJlYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9nZW8tanNvbi10by1hcmVhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLFlBQVksQ0FBQTtBQUM3QixPQUFPLEVBQUUsV0FBVyxFQUEyRCxNQUFNLGVBQWUsQ0FBQTtBQUdwRzs7R0FFRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQzNCLE9BQTJGLEVBQzNGLFFBQWUsT0FBTztJQUV0QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBYyxDQUFDLENBQUE7SUFDdEMsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDckQsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFyZWEgZnJvbSAnQHR1cmYvYXJlYSdcclxuaW1wb3J0IHsgY29udmVydEFyZWEsIEZlYXR1cmUsIEZlYXR1cmVDb2xsZWN0aW9uLCBHZW9tZXRyeSwgUHJvcGVydGllcywgVW5pdHMgfSBmcm9tICdAdHVyZi9oZWxwZXJzJ1xyXG5pbXBvcnQgeyBHZW9KU09OIH0gZnJvbSAnZ2VvanNvbidcclxuXHJcbi8qKlxyXG4gKlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlb0pzb25Ub0FyZWEoXHJcbiAgZ2VvSnNvbjogR2VvSlNPTiB8IEZlYXR1cmU8YW55LCBQcm9wZXJ0aWVzPiB8IEZlYXR1cmVDb2xsZWN0aW9uPGFueSwgUHJvcGVydGllcz4gfCBHZW9tZXRyeSxcclxuICB1bml0czogVW5pdHMgPSAnYWNyZXMnXHJcbik6IG51bWJlciB7XHJcbiAgY29uc3QgYXJlYV9tU3FyID0gYXJlYShnZW9Kc29uIGFzIGFueSlcclxuICBjb25zdCBhY3JlcyA9IGNvbnZlcnRBcmVhKGFyZWFfbVNxciwgJ21ldGVycycsIHVuaXRzKVxyXG4gIHJldHVybiBhY3Jlc1xyXG59XHJcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLWpzb24tdG8tYXJlYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9nZW8tanNvbi10by1hcmVhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLFlBQVksQ0FBQTtBQUM3QixPQUFPLEVBQUUsV0FBVyxFQUEyRCxNQUFNLGVBQWUsQ0FBQTtBQUdwRzs7R0FFRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQzNCLE9BQTJGLEVBQzNGLFFBQWUsT0FBTztJQUV0QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBYyxDQUFDLENBQUE7SUFDdEMsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDckQsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFyZWEgZnJvbSAnQHR1cmYvYXJlYSdcbmltcG9ydCB7IGNvbnZlcnRBcmVhLCBGZWF0dXJlLCBGZWF0dXJlQ29sbGVjdGlvbiwgR2VvbWV0cnksIFByb3BlcnRpZXMsIFVuaXRzIH0gZnJvbSAnQHR1cmYvaGVscGVycydcbmltcG9ydCB7IEdlb0pTT04gfSBmcm9tICdnZW9qc29uJ1xuXG4vKipcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW9Kc29uVG9BcmVhKFxuICBnZW9Kc29uOiBHZW9KU09OIHwgRmVhdHVyZTxhbnksIFByb3BlcnRpZXM+IHwgRmVhdHVyZUNvbGxlY3Rpb248YW55LCBQcm9wZXJ0aWVzPiB8IEdlb21ldHJ5LFxuICB1bml0czogVW5pdHMgPSAnYWNyZXMnXG4pOiBudW1iZXIge1xuICBjb25zdCBhcmVhX21TcXIgPSBhcmVhKGdlb0pzb24gYXMgYW55KVxuICBjb25zdCBhY3JlcyA9IGNvbnZlcnRBcmVhKGFyZWFfbVNxciwgJ21ldGVycycsIHVuaXRzKVxuICByZXR1cm4gYWNyZXNcbn1cbiJdfQ==
@@ -18,4 +18,4 @@ export function isFeatureCollectionValidator() {
18
18
  return null;
19
19
  };
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZmVhdHVyZS1jb2xsZWN0aW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1mZWF0dXJlLWNvbGxlY3Rpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLHVCQUF1QixDQUFBO0FBRTNFLE1BQU0sVUFBVSw0QkFBNEI7SUFDMUMsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxxRkFBcUY7UUFDckYsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUEsQ0FBQyx5REFBeUQ7U0FDdEU7UUFFRCxNQUFNLEtBQUssR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFcEQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU87Z0JBQ0wsQ0FBQyxvQ0FBb0MsQ0FBQyxFQUFFO29CQUN0QyxNQUFNLEVBQUUsOEJBQThCO2lCQUN2QzthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmltcG9ydCB7IGlzRW1wdHlJbnB1dFZhbHVlIH0gZnJvbSAnLi4vZm9ybS9pcy1lbXB0eS1pbnB1dC12YWx1ZSdcclxuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXHJcblxyXG5leHBvcnQgY29uc3QgSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FID0gJ2lzLWZlYXR1cmUtY29sbGVjdGlvbidcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ZlYXR1cmVDb2xsZWN0aW9uVmFsaWRhdG9yKCk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xyXG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxyXG4gICAgaWYgKGlzRW1wdHlJbnB1dFZhbHVlKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsIC8vIGRvbid0IHZhbGlkYXRlIGVtcHR5IHZhbHVlcyB0byBhbGxvdyBvcHRpb25hbCBjb250cm9sc1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24oY29udHJvbC52YWx1ZSlcclxuXHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBbSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FXToge1xyXG4gICAgICAgICAgcmVhc29uOiBgTXVzdCBiZSBhIEZlYXR1cmVDb2xsZWN0aW9uLmAsXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGxcclxuICB9XHJcbn1cclxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZmVhdHVyZS1jb2xsZWN0aW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1mZWF0dXJlLWNvbGxlY3Rpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLHVCQUF1QixDQUFBO0FBRTNFLE1BQU0sVUFBVSw0QkFBNEI7SUFDMUMsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxxRkFBcUY7UUFDckYsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUEsQ0FBQyx5REFBeUQ7U0FDdEU7UUFFRCxNQUFNLEtBQUssR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFcEQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLE9BQU87Z0JBQ0wsQ0FBQyxvQ0FBb0MsQ0FBQyxFQUFFO29CQUN0QyxNQUFNLEVBQUUsOEJBQThCO2lCQUN2QzthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgaXNFbXB0eUlucHV0VmFsdWUgfSBmcm9tICcuLi9mb3JtL2lzLWVtcHR5LWlucHV0LXZhbHVlJ1xuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXG5cbmV4cG9ydCBjb25zdCBJU19GRUFUVVJFX0NPTExFQ1RJT05fVkFMSURBVE9SX05BTUUgPSAnaXMtZmVhdHVyZS1jb2xsZWN0aW9uJ1xuXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlQ29sbGVjdGlvblZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxuICAgIGlmIChpc0VtcHR5SW5wdXRWYWx1ZShjb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGwgLy8gZG9uJ3QgdmFsaWRhdGUgZW1wdHkgdmFsdWVzIHRvIGFsbG93IG9wdGlvbmFsIGNvbnRyb2xzXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbihjb250cm9sLnZhbHVlKVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbSVNfRkVBVFVSRV9DT0xMRUNUSU9OX1ZBTElEQVRPUl9OQU1FXToge1xuICAgICAgICAgIHJlYXNvbjogYE11c3QgYmUgYSBGZWF0dXJlQ29sbGVjdGlvbi5gLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuIl19
@@ -20,4 +20,4 @@ export function isOnlyGeometryTypes(featureCollection, types) {
20
20
  }
21
21
  return true;
22
22
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1vbmx5LWdlb21ldHJ5LXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGlCQUFvQyxFQUFFLEtBQXlCO0lBQ2pHLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QywyRUFBMkU7WUFDM0UsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFNO1lBQ0wsb0VBQW9FO1lBQ3BFLCtDQUErQztZQUMvQyxPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxPQUFPLEtBQUssQ0FBQTtTQUNiO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlQ29sbGVjdGlvbiwgR2VvbWV0cnkgfSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLyoqXHJcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgR2VvSlNPTiBpcyBvbmx5IHNwZWNpZmllcyBnZW9tZXRyaWVzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzT25seUdlb21ldHJ5VHlwZXMoZmVhdHVyZUNvbGxlY3Rpb246IEZlYXR1cmVDb2xsZWN0aW9uLCB0eXBlczogR2VvbWV0cnlbJ3R5cGUnXVtdKTogYm9vbGVhbiB7XHJcbiAgaWYgKHR5cGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgaWYgKGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgLy8gSWYgbm8gdHlwZXMgYXJlIHNwZWNpZmllZCB0aGVuIHRoZXJlIGNhbid0IGJlIGFueSBzcGVjaWZpZWQgdHlwZXMgZm91bmQuXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gSWYgbm8gdHlwZXMgYXJlIHNwZWNpZmllZCBhbmQgdGhlcmUgYXJlIG5vIGZlYXR1cmVzIHRoZW4gdGhlcmUgaXNcclxuICAgICAgLy8gbm90aGluZyB0byBzYXkgYSBzcGVjaWZpZWQgdHlwZSBpc24ndCBmb3VuZC5cclxuICAgICAgcmV0dXJuIHRydWVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvciAoY29uc3QgZiBvZiBmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcykge1xyXG4gICAgaWYgKHR5cGVzLmluZGV4T2YoZi5nZW9tZXRyeS50eXBlKSA9PT0gLTEpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZVxyXG59XHJcbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi91dGlscy9nZW8tanNvbi9pcy1vbmx5LWdlb21ldHJ5LXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGlCQUFvQyxFQUFFLEtBQXlCO0lBQ2pHLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QywyRUFBMkU7WUFDM0UsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFNO1lBQ0wsb0VBQW9FO1lBQ3BFLCtDQUErQztZQUMvQyxPQUFPLElBQUksQ0FBQTtTQUNaO0tBQ0Y7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsRUFBRTtRQUMxQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxPQUFPLEtBQUssQ0FBQTtTQUNiO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlQ29sbGVjdGlvbiwgR2VvbWV0cnkgfSBmcm9tICdnZW9qc29uJ1xuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgR2VvSlNPTiBpcyBvbmx5IHNwZWNpZmllcyBnZW9tZXRyaWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNPbmx5R2VvbWV0cnlUeXBlcyhmZWF0dXJlQ29sbGVjdGlvbjogRmVhdHVyZUNvbGxlY3Rpb24sIHR5cGVzOiBHZW9tZXRyeVsndHlwZSddW10pOiBib29sZWFuIHtcbiAgaWYgKHR5cGVzLmxlbmd0aCA9PT0gMCkge1xuICAgIGlmIChmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlcy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkIHRoZW4gdGhlcmUgY2FuJ3QgYmUgYW55IHNwZWNpZmllZCB0eXBlcyBmb3VuZC5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJZiBubyB0eXBlcyBhcmUgc3BlY2lmaWVkIGFuZCB0aGVyZSBhcmUgbm8gZmVhdHVyZXMgdGhlbiB0aGVyZSBpc1xuICAgICAgLy8gbm90aGluZyB0byBzYXkgYSBzcGVjaWZpZWQgdHlwZSBpc24ndCBmb3VuZC5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgZm9yIChjb25zdCBmIG9mIGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzKSB7XG4gICAgaWYgKHR5cGVzLmluZGV4T2YoZi5nZW9tZXRyeS50eXBlKSA9PT0gLTEpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG4iXX0=
@@ -29,4 +29,4 @@ export function isOnlyGeometryTypesValidator(types) {
29
29
  return null;
30
30
  };
31
31
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vaXMtb25seS1nZW9tZXRyeS10eXBlcy52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFOUQsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsd0JBQXdCLENBQUE7QUFFN0UsTUFBTSxVQUFVLDRCQUE0QixDQUFDLEtBQXlCO0lBQ3BFLE9BQU8sQ0FBQyxPQUF3QixFQUFFLEVBQUU7UUFDbEMscUZBQXFGO1FBQ3JGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFBLENBQUMseURBQXlEO1NBQ3RFO1FBRUQsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRXBELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQix3RUFBd0U7WUFDeEUsMEVBQTBFO1lBQzFFLE9BQU8sSUFBSSxDQUFBO1NBQ1o7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ3RDLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRO2lCQUNuQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztpQkFDekIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO1lBQ3BFLE9BQU87Z0JBQ0wsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFO29CQUN2QyxNQUFNLEVBQUUscUJBQXFCLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztvQkFDM0YsNEJBQTRCLEVBQUUsdUJBQXVCO2lCQUN0RDthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnZ2VvanNvbidcclxuXHJcbmltcG9ydCB7IGlzRW1wdHlJbnB1dFZhbHVlIH0gZnJvbSAnLi4vZm9ybS9pcy1lbXB0eS1pbnB1dC12YWx1ZSdcclxuaW1wb3J0IHsgY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICcuL2NvZXJjZS1mZWF0dXJlLWNvbGxlY3Rpb24nXHJcbmltcG9ydCB7IGlzT25seUdlb21ldHJ5VHlwZXMgfSBmcm9tICcuL2lzLW9ubHktZ2VvbWV0cnktdHlwZXMnXHJcblxyXG5leHBvcnQgY29uc3QgSVNfT05MWV9HRU9NRVRSWV9UWVBFU19WQUxJREFUT1JfTkFNRSA9ICdpcy1vbmx5LWdlb21ldHJ5LXR5cGVzJ1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzT25seUdlb21ldHJ5VHlwZXNWYWxpZGF0b3IodHlwZXM6IEdlb21ldHJ5Wyd0eXBlJ11bXSk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xyXG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxyXG4gICAgaWYgKGlzRW1wdHlJbnB1dFZhbHVlKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsIC8vIGRvbid0IHZhbGlkYXRlIGVtcHR5IHZhbHVlcyB0byBhbGxvdyBvcHRpb25hbCBjb250cm9sc1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbHVlID0gY29lcmNlRmVhdHVyZUNvbGxlY3Rpb24oY29udHJvbC52YWx1ZSlcclxuXHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcclxuICAgICAgLy8gSWYgdGhlcmUgaXNuJ3QgYSBGZWF0dXJlQ29sbGVjdGlvbiB0aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gdmFsaWRhdGUuXHJcbiAgICAgIC8vIFVzZSAnaXNGZWF0dXJlQ29sbGVjdGlvbicgdG8gdmFsaWRhdGUgdGhlIHZhbHVlIGlzIGEgRmVhdHVyZUNvbGxlY3Rpb24uXHJcbiAgICAgIHJldHVybiBudWxsXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFpc09ubHlHZW9tZXRyeVR5cGVzKHZhbHVlLCB0eXBlcykpIHtcclxuICAgICAgY29uc3QgdHlwZXNOb3RBbGxvd2VkID0gdmFsdWUuZmVhdHVyZXNcclxuICAgICAgICAubWFwKGYgPT4gZi5nZW9tZXRyeS50eXBlKVxyXG4gICAgICAgIC5maWx0ZXIodCA9PiB0eXBlcy5pbmRleE9mKHQpID09PSAtMSlcclxuICAgICAgY29uc3QgZGlzdGluY3RUeXBlc05vdEFsbG93ZWQgPSBBcnJheS5mcm9tKG5ldyBTZXQodHlwZXNOb3RBbGxvd2VkKSlcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBbSVNfT05MWV9HRU9NRVRSWV9UWVBFU19WQUxJREFUT1JfTkFNRV06IHtcclxuICAgICAgICAgIHJlYXNvbjogYE9ubHkgZ2VvbWV0cnkgdHlwZSR7KHR5cGVzLmxlbmd0aCA9PT0gMSA/ICcnIDogJ3MnKX0gJHt0eXBlcy5qb2luKCcsICcpfSBhbGxvd2VkLmAsXHJcbiAgICAgICAgICBub3RBbGxvd2VkR2VvbWV0cnlUeXBlc0ZvdW5kOiBkaXN0aW5jdFR5cGVzTm90QWxsb3dlZCxcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbFxyXG4gIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtb25seS1nZW9tZXRyeS10eXBlcy52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vaXMtb25seS1nZW9tZXRyeS10eXBlcy52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFOUQsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsd0JBQXdCLENBQUE7QUFFN0UsTUFBTSxVQUFVLDRCQUE0QixDQUFDLEtBQXlCO0lBQ3BFLE9BQU8sQ0FBQyxPQUF3QixFQUFFLEVBQUU7UUFDbEMscUZBQXFGO1FBQ3JGLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFBLENBQUMseURBQXlEO1NBQ3RFO1FBRUQsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRXBELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQix3RUFBd0U7WUFDeEUsMEVBQTBFO1lBQzFFLE9BQU8sSUFBSSxDQUFBO1NBQ1o7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ3RDLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRO2lCQUNuQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztpQkFDekIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO1lBQ3BFLE9BQU87Z0JBQ0wsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFO29CQUN2QyxNQUFNLEVBQUUscUJBQXFCLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztvQkFDM0YsNEJBQTRCLEVBQUUsdUJBQXVCO2lCQUN0RDthQUNGLENBQUE7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgR2VvbWV0cnkgfSBmcm9tICdnZW9qc29uJ1xuXG5pbXBvcnQgeyBpc0VtcHR5SW5wdXRWYWx1ZSB9IGZyb20gJy4uL2Zvcm0vaXMtZW1wdHktaW5wdXQtdmFsdWUnXG5pbXBvcnQgeyBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbiB9IGZyb20gJy4vY29lcmNlLWZlYXR1cmUtY29sbGVjdGlvbidcbmltcG9ydCB7IGlzT25seUdlb21ldHJ5VHlwZXMgfSBmcm9tICcuL2lzLW9ubHktZ2VvbWV0cnktdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBJU19PTkxZX0dFT01FVFJZX1RZUEVTX1ZBTElEQVRPUl9OQU1FID0gJ2lzLW9ubHktZ2VvbWV0cnktdHlwZXMnXG5cbmV4cG9ydCBmdW5jdGlvbiBpc09ubHlHZW9tZXRyeVR5cGVzVmFsaWRhdG9yKHR5cGVzOiBHZW9tZXRyeVsndHlwZSddW10pOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgLy8gRG9uJ3QgbmVlZCB0byB2YWxpZGF0ZSBpZiB0aGVyZSBpc24ndCBhIHZhbHVlLiBVc2UgYFZhbGlkYXRvcnMucmVxdWlyZWRgIGZvciB0aGF0LlxuICAgIGlmIChpc0VtcHR5SW5wdXRWYWx1ZShjb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGwgLy8gZG9uJ3QgdmFsaWRhdGUgZW1wdHkgdmFsdWVzIHRvIGFsbG93IG9wdGlvbmFsIGNvbnRyb2xzXG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBjb2VyY2VGZWF0dXJlQ29sbGVjdGlvbihjb250cm9sLnZhbHVlKVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAvLyBJZiB0aGVyZSBpc24ndCBhIEZlYXR1cmVDb2xsZWN0aW9uIHRoZW4gdGhlcmUgaXMgbm90aGluZyB0byB2YWxpZGF0ZS5cbiAgICAgIC8vIFVzZSAnaXNGZWF0dXJlQ29sbGVjdGlvbicgdG8gdmFsaWRhdGUgdGhlIHZhbHVlIGlzIGEgRmVhdHVyZUNvbGxlY3Rpb24uXG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIGlmICghaXNPbmx5R2VvbWV0cnlUeXBlcyh2YWx1ZSwgdHlwZXMpKSB7XG4gICAgICBjb25zdCB0eXBlc05vdEFsbG93ZWQgPSB2YWx1ZS5mZWF0dXJlc1xuICAgICAgICAubWFwKGYgPT4gZi5nZW9tZXRyeS50eXBlKVxuICAgICAgICAuZmlsdGVyKHQgPT4gdHlwZXMuaW5kZXhPZih0KSA9PT0gLTEpXG4gICAgICBjb25zdCBkaXN0aW5jdFR5cGVzTm90QWxsb3dlZCA9IEFycmF5LmZyb20obmV3IFNldCh0eXBlc05vdEFsbG93ZWQpKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW0lTX09OTFlfR0VPTUVUUllfVFlQRVNfVkFMSURBVE9SX05BTUVdOiB7XG4gICAgICAgICAgcmVhc29uOiBgT25seSBnZW9tZXRyeSB0eXBlJHsodHlwZXMubGVuZ3RoID09PSAxID8gJycgOiAncycpfSAke3R5cGVzLmpvaW4oJywgJyl9IGFsbG93ZWQuYCxcbiAgICAgICAgICBub3RBbGxvd2VkR2VvbWV0cnlUeXBlc0ZvdW5kOiBkaXN0aW5jdFR5cGVzTm90QWxsb3dlZCxcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuXG4iXX0=