@eui/ecl 15.0.0-next.20 → 15.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/docs/components/EclPaginationItemComponent.html +49 -1
  2. package/docs/dependencies.html +5 -3
  3. package/docs/js/menu-wc.js +3 -3
  4. package/docs/js/menu-wc_es5.js +1 -1
  5. package/docs/js/search/search_index.js +2 -2
  6. package/esm2020/lib/components/ecl-accordion/ecl-accordion-item.component.mjs +1 -1
  7. package/esm2020/lib/components/ecl-breadcrumb/deprecated/common/ecl-breadcrumb-segment.component.mjs +1 -1
  8. package/esm2020/lib/components/ecl-breadcrumb/ecl-breadcrumb-segment.component.mjs +1 -1
  9. package/esm2020/lib/components/ecl-breadcrumb/ecl-breadcrumb.component.mjs +1 -1
  10. package/esm2020/lib/components/ecl-checkbox/ecl-checkbox-label.component.mjs +1 -1
  11. package/esm2020/lib/components/ecl-checkbox/ecl-checkbox.directive.mjs +1 -1
  12. package/esm2020/lib/components/ecl-expandable/ecl-expandable.component.mjs +1 -1
  13. package/esm2020/lib/components/ecl-featured/ecl-featured.component.mjs +1 -1
  14. package/esm2020/lib/components/ecl-file/ecl-file-item/ecl-file-item.component.mjs +1 -1
  15. package/esm2020/lib/components/ecl-file/ecl-file-items/ecl-file-items.component.mjs +1 -1
  16. package/esm2020/lib/components/ecl-file/ecl-file.component.mjs +1 -1
  17. package/esm2020/lib/components/ecl-file-upload/ecl-file-upload.directive.mjs +2 -2
  18. package/esm2020/lib/components/ecl-form-label/ecl-form-label.component.mjs +1 -1
  19. package/esm2020/lib/components/ecl-gallery/ecl-gallery.component.mjs +1 -1
  20. package/esm2020/lib/components/ecl-help-block/ecl-help-block.directive.mjs +1 -1
  21. package/esm2020/lib/components/ecl-hero-banner/ecl-hero-banner.component.mjs +1 -1
  22. package/esm2020/lib/components/ecl-icon/ecl-icon.component.mjs +1 -1
  23. package/esm2020/lib/components/ecl-language-list/ecl-language-list-item.component.mjs +1 -1
  24. package/esm2020/lib/components/ecl-language-list/ecl-language-list.component.mjs +1 -1
  25. package/esm2020/lib/components/ecl-link/ecl-link.directive.mjs +1 -1
  26. package/esm2020/lib/components/ecl-list/ecl-list.directive.mjs +1 -1
  27. package/esm2020/lib/components/ecl-list-illustration/ecl-list-illustration-image.directive.mjs +1 -1
  28. package/esm2020/lib/components/ecl-list-illustration/ecl-list-illustration.component.mjs +1 -1
  29. package/esm2020/lib/components/ecl-menu/ecl-menu-mega/ecl-menu-mega-item.component.mjs +1 -1
  30. package/esm2020/lib/components/ecl-menu/ecl-menu-mega/ecl-menu-mega.component.mjs +1 -1
  31. package/esm2020/lib/components/ecl-message/ecl-message.component.mjs +1 -1
  32. package/esm2020/lib/components/ecl-multiselect/ecl-multiselect.component.mjs +1 -1
  33. package/esm2020/lib/components/ecl-navigation-list/ecl-navigation-list.component.mjs +1 -1
  34. package/esm2020/lib/components/ecl-news-ticker/ecl-news-ticker.component.mjs +1 -1
  35. package/esm2020/lib/components/ecl-page-banner/ecl-page-banner.component.mjs +1 -1
  36. package/esm2020/lib/components/ecl-page-header/ecl-page-header.component.mjs +1 -1
  37. package/esm2020/lib/components/ecl-pagination/ecl-pagination-item.component.mjs +14 -7
  38. package/esm2020/lib/components/ecl-pagination/ecl-pagination.component.mjs +2 -2
  39. package/esm2020/lib/components/ecl-pagination/ecl-pagination.module.mjs +5 -4
  40. package/esm2020/lib/components/ecl-radio/ecl-radio-help.component.mjs +1 -1
  41. package/esm2020/lib/components/ecl-radio/ecl-radio-label.component.mjs +1 -1
  42. package/esm2020/lib/components/ecl-radio/ecl-radio.directive.mjs +1 -1
  43. package/esm2020/lib/components/ecl-select/ecl-select.directive.mjs +1 -1
  44. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-core/ecl-footer-elements/ecl-footer-core-list.directive.mjs +1 -1
  45. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-core/ecl-footer-elements/ecl-footer-core-section.directive.mjs +1 -1
  46. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-harmonised/ecl-footer-elements/ecl-footer-harmonised-list.directive.mjs +1 -1
  47. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-harmonised/ecl-footer-elements/ecl-footer-harmonised-title.directive.mjs +1 -1
  48. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-standardised/ecl-footer-elements/ecl-footer-standardised-list.directive.mjs +1 -1
  49. package/esm2020/lib/components/ecl-site-footer/deprecated/ecl-footer-standardised/ecl-footer-elements/ecl-footer-standardised-title.directive.mjs +1 -1
  50. package/esm2020/lib/components/ecl-site-footer/ecl-footer-elements/ecl-site-footer-list.directive.mjs +1 -1
  51. package/esm2020/lib/components/ecl-site-footer/ecl-footer-elements/ecl-site-footer-section.directive.mjs +1 -1
  52. package/esm2020/lib/components/ecl-site-footer/ecl-footer-elements/ecl-site-footer-title.directive.mjs +1 -1
  53. package/esm2020/lib/components/ecl-site-footer/ecl-site-footer.component.mjs +1 -1
  54. package/esm2020/lib/components/ecl-site-header/deprecated/common/ecl-site-header-login.component.mjs +1 -1
  55. package/esm2020/lib/components/ecl-site-header/login/ecl-site-header-login.component.mjs +1 -1
  56. package/esm2020/lib/components/ecl-social-media-follow/ecl-social-media-follow.component.mjs +1 -1
  57. package/esm2020/lib/components/ecl-spinner/ecl-spinner.component.mjs +1 -1
  58. package/esm2020/lib/components/ecl-sticky-container/ecl-sticky-container.component.mjs +1 -1
  59. package/esm2020/lib/components/ecl-table/ecl-table.directive.mjs +6 -6
  60. package/esm2020/lib/components/ecl-tabs/ecl-tab.component.mjs +1 -1
  61. package/esm2020/lib/components/ecl-tabs/ecl-tabs.component.mjs +1 -1
  62. package/esm2020/lib/components/ecl-text-area/ecl-text-area.directive.mjs +1 -1
  63. package/esm2020/lib/components/ecl-text-input/ecl-text-input.directive.mjs +1 -1
  64. package/esm2020/lib/components/ecl-timeline/ecl-timeline-item.component.mjs +1 -1
  65. package/fesm2015/eui-ecl.mjs +18 -12
  66. package/fesm2015/eui-ecl.mjs.map +1 -1
  67. package/fesm2020/eui-ecl.mjs +18 -12
  68. package/fesm2020/eui-ecl.mjs.map +1 -1
  69. package/lib/components/ecl-pagination/ecl-pagination-item.component.d.ts +3 -1
  70. package/lib/components/ecl-pagination/ecl-pagination-item.component.d.ts.map +1 -1
  71. package/lib/components/ecl-pagination/ecl-pagination.module.d.ts +5 -4
  72. package/lib/components/ecl-pagination/ecl-pagination.module.d.ts.map +1 -1
  73. package/package.json +1 -1
@@ -405,4 +405,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
405
405
  type: HostListener,
406
406
  args: ['document:click', ['$event']]
407
407
  }] } });
408
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBRUgsU0FBUyxFQUNULGVBQWUsRUFHZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFFTixJQUFJLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN6RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU1uRixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZ0JBQWdCO0lBcUR6RCxZQUNrQyxTQUFvQixFQUMxQyxFQUFjLEVBQ2QsZ0JBQWtDLEVBQ2xDLE9BQXdCLEVBQ3hCLFNBQTJCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBTHNCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDMUMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLHFCQUFnQixHQUFoQixn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QjtnQkFDdEIsU0FBUztzQkFBakIsS0FBSztnQkFFUixjQUFjO3NCQUExQixLQUFLO2dCQVFGLFFBQVE7c0JBRFgsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxlQUFlO2dCQVc1QixPQUFPO3NCQUFmLEtBQUs7Z0JBR0YsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU87Z0JBT1YsU0FBUztzQkFBbEIsTUFBTTtnQkF1R1AsT0FBTztzQkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTZWxmLFxuICAgIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQ2hlY2tib3hMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uL2VjbC1jaGVja2JveC9lY2wtY2hlY2tib3gtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEVjbEljb25Db21wb25lbnQgfSBmcm9tICcuLi9lY2wtaWNvbi9lY2wtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuL2VjbC1tdWx0aXNlbGVjdC1vcHRpb24uZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzZWxlY3RbZWNsTXVsdGlzZWxlY3RdJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2VjbC1tdWx0aXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgRG9DaGVjaywgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gICAgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlKSBlY2xPcHRpb25JdGVtczogUXVlcnlMaXN0PEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlPjtcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBpc0ludmFsaWQ6IGJvb2xlYW4gfCBhbnkgID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZXQgZWNsUGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9lY2xQbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdElucHV0KSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicsIHRoaXMuX2VjbFBsYWNlaG9sZGVyIHx8ICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICBpZiAodGhpcy5uZ0NvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbC5kaXNhYmxlZCB8fCBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgYW55KSB7IHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBlY2xTaXplOiBzdHJpbmcgPSAnbSc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1zZWxlY3QnKSxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKSBlY2xDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIHByaXZhdGUgX2VjbFBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlPjtcbiAgICBwcml2YXRlIGhvc3RFbDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBob3N0UGFyZW50RWw6IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgaG9zdFdyYXBwZXJFbDogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBzZWxlY3RJY29uQ29udGFpbmVyRWw6IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgZWNsSWNvbkNvbXBvbmVudEVsOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG11bHRpc2VsZWN0V3JhcHBlcjogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBtdWx0aXNlbGVjdENvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBtdWx0aURyb3Bkb3duOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG9wdGlvbnNXcmFwcGVyOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG11bHRpU2VsZWN0T3B0aW9uczogSFRNTEVsZW1lbnRbXSA9IFtdO1xuICAgIHByaXZhdGUgbXVsdGlTZWxlY3RJbnB1dDogSFRNTElucHV0RWxlbWVudDtcbiAgICBwcml2YXRlIGNoZWNrYm94U2VsZWN0QWxsOiBIVE1MSW5wdXRFbGVtZW50O1xuICAgIHByaXZhdGUgc2VsZWN0ZWRWYWx1ZXM6IHN0cmluZ1tdID0gW107XG4gICAgcHJpdmF0ZSBjaGVja2JveExhYmVsOiBIVE1MTGFiZWxFbGVtZW50O1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHJvdGVjdGVkIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgZGlmZmVyczogSXRlcmFibGVEaWZmZXJzLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICAgICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmhvc3RFbCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICAgICAgdGhpcy5ob3N0UGFyZW50RWwgPSB0aGlzLmdldEhvc3RQYXJlbnRFbGVtZW50KHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsID0gdGhpcy5jcmVhdGVIb3N0V3JhcHBlckNvbnRhaW5lcigpO1xuICAgICAgICB0aGlzLnNlbGVjdEljb25Db250YWluZXJFbCA9IHRoaXMuY3JlYXRlSWNvbkNvbnRhaW5lcigpO1xuICAgICAgICB0aGlzLmVjbEljb25Db21wb25lbnRFbCA9IHRoaXMuY3JlYXRlSWNvbkNvbXBvbmVudCgpO1xuXG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyID0gdGhpcy5jcmVhdGVXcmFwcGVyTXVsdGlzZWxlY3QoKTtcbiAgICAgICAgdGhpcy5tdWx0aXNlbGVjdENvbnRhaW5lciA9IHRoaXMuY3JlYXRlU2VsZWN0Q29udGFpbmVyTXVsdGlzZWxlY3QoKTtcblxuICAgICAgICBpZiAodGhpcy5ob3N0UGFyZW50RWwgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5oaWRlT3JpZ2luYWxTZWxlY3RDb21wb25lbnQoKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSHRtbEVsZW1lbnRzKCk7XG5cbiAgICAgICAgICAgIHRoaXMuYnVpbGRNdWx0aXNlbGVjdERyb3Bkb3duKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaGFuZGxlVHJhbnNsYXRpb25zKCk7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCkge1xuXG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RDb250YWluZXIuY2xhc3NMaXN0LnRvZ2dsZSgnZWNsLXNlbGVjdF9fY29udGFpbmVyLS1kaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgICAgICB0aGlzLm11bHRpc2VsZWN0Q29udGFpbmVyLmNsYXNzTGlzdC50b2dnbGUoJ2VjbC1zZWxlY3RfX2NvbnRhaW5lci0taW52YWxpZCcsIHRoaXMuaXNJbnZhbGlkKTtcblxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsT3B0aW9uSXRlbXMpO1xuXG4gICAgICAgIGlmIChkaWZmKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUFsbE9wdGlvbnMoKTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RPcHRpb25zID0gW107XG4gICAgICAgICAgICBkaWZmLmZvckVhY2hJdGVtKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9uc1dyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5jcmVhdGVPcHRpb25XaXRoQ2hlY2tib3goaXRlbS5pdGVtKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMub25PcHRpb25zQ2hhbmdlKCk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUN1cnJlbnRWYWx1ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLm9uT3B0aW9uc0NoYW5nZSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnB1c2goZWwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRDb21wb25lbnQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gICAgb25LZXlVcChldjogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCBpc0NsaWNrSW5zaWRlID0gdGhpcy5tdWx0aURyb3Bkb3duLmNvbnRhaW5zKDxFbGVtZW50PmV2LnRhcmdldCkgfHwgdGhpcy5tdWx0aVNlbGVjdElucHV0LmNvbnRhaW5zKDxFbGVtZW50PmV2LnRhcmdldCk7XG4gICAgICAgIGlmICghaXNDbGlja0luc2lkZSkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUFsbE9wdGlvbnMoKSB7XG4gICAgICAgIHdoaWxlICh0aGlzLm9wdGlvbnNXcmFwcGVyLmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9uc1dyYXBwZXIuZmlyc3RDaGlsZC5yZW1vdmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25PcHRpb25zQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLmVjbE9wdGlvbkl0ZW1zLmZvckVhY2goaSA9PiBpLmNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICApLnN1YnNjcmliZShlID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyLnJlbW92ZUNoaWxkKHRoaXMubXVsdGlEcm9wZG93bik7XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RPcHRpb25zID0gW107XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnZhbHVlID0gbnVsbDtcbiAgICAgICAgICAgICAgICB0aGlzLmJ1aWxkTXVsdGlzZWxlY3REcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoaWRlT3JpZ2luYWxTZWxlY3RDb21wb25lbnQoKSB7XG4gICAgICAgIHRoaXMuaG9zdFBhcmVudEVsLnJlcGxhY2VDaGlsZCh0aGlzLmhvc3RXcmFwcGVyRWwsIHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsLmFwcGVuZENoaWxkKHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsLmNsYXNzTGlzdC5hZGQoJ2VjbC1zZWxlY3RfX2NvbnRhaW5lci0taGlkZGVuJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVIdG1sRWxlbWVudHMoKSB7XG4gICAgICAgIHRoaXMuaG9zdFBhcmVudEVsLmFwcGVuZENoaWxkKHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyKTtcbiAgICAgICAgdGhpcy5tdWx0aXNlbGVjdFdyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5tdWx0aXNlbGVjdENvbnRhaW5lcik7XG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5zZWxlY3RJY29uQ29udGFpbmVyRWwpO1xuICAgICAgICB0aGlzLnNlbGVjdEljb25Db250YWluZXJFbC5hcHBlbmRDaGlsZCh0aGlzLmVjbEljb25Db21wb25lbnRFbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGVUb3VjaGVkID0gKCkgPT4ge1xuICAgIH1cblxuICAgIHByaXZhdGUgYnVpbGRNdWx0aXNlbGVjdERyb3Bkb3duKHdpdGhPcHRpb25zOiBib29sZWFuKSB7XG5cbiAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duID0gdGhpcy5jcmVhdGVEcm9wZG93bkZvck11bHRpc2VsZWN0KCk7XG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyLmFwcGVuZENoaWxkKHRoaXMubXVsdGlEcm9wZG93bik7XG5cbiAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLmFwcGVuZENoaWxkKHRoaXMuY3JlYXRlU2VhcmNoRm9yTXVsdGlzZWxlY3QoKSk7XG4gICAgICAgIHRoaXMubXVsdGlEcm9wZG93bi5hcHBlbmRDaGlsZCh0aGlzLmNyZWF0ZU11bHRpU2VsZWN0QWxsKCkpO1xuICAgICAgICB0aGlzLm9wdGlvbnNXcmFwcGVyID0gdGhpcy5jcmVhdGVPcHRpb25zV3JhcHBlcigpO1xuICAgICAgICB0aGlzLm11bHRpRHJvcGRvd24uYXBwZW5kQ2hpbGQodGhpcy5vcHRpb25zV3JhcHBlcik7XG5cbiAgICAgICAgaWYgKHdpdGhPcHRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLmVjbE9wdGlvbkl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNXcmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuY3JlYXRlT3B0aW9uV2l0aENoZWNrYm94KGl0ZW0pKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIb3N0RWxlbWVudCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIb3N0UGFyZW50RWxlbWVudChob3N0RWw6IEhUTUxTZWxlY3RFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gaG9zdEVsLnBhcmVudEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVIb3N0V3JhcHBlckNvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IHdyYXBwZXJDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgd3JhcHBlckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXInKTtcbiAgICAgICAgd3JhcHBlckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKGBlY2wtc2VsZWN0X19jb250YWluZXItLSR7dGhpcy5lY2xTaXplfWApO1xuICAgICAgICByZXR1cm4gd3JhcHBlckNvbnRhaW5lcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZVdyYXBwZXJNdWx0aXNlbGVjdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IHdyYXBwZXJDb250YWluZXJNdWx0aSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICB3cmFwcGVyQ29udGFpbmVyTXVsdGkuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUnKTtcbiAgICAgICAgcmV0dXJuIHdyYXBwZXJDb250YWluZXJNdWx0aTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZVNlbGVjdENvbnRhaW5lck11bHRpc2VsZWN0KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0Q29udGFpbmVyTXVsdGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgc2VsZWN0Q29udGFpbmVyTXVsdGkuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fY29udGFpbmVyJyk7XG4gICAgICAgIHNlbGVjdENvbnRhaW5lck11bHRpLmNsYXNzTGlzdC5hZGQoYGVjbC1zZWxlY3RfX2NvbnRhaW5lci0tJHt0aGlzLmVjbFNpemV9YCk7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBzZWxlY3RDb250YWluZXJNdWx0aS5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXItLWRpc2FibGVkJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicsIHRoaXMuX2VjbFBsYWNlaG9sZGVyIHx8ICcnKTtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnJlYWRPbmx5ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnNldEF0dHJpYnV0ZSgndHlwZScsICd0ZXh0Jyk7XG4gICAgICAgIGlmICh0aGlzLmhvc3RFbC5oYXNBdHRyaWJ1dGUoJ2Zvcm1Db250cm9sTmFtZScpKSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtQ29udHJvbE5hbWUnLCB0aGlzLmhvc3RFbC5nZXRBdHRyaWJ1dGUoJ2Zvcm1Db250cm9sTmFtZScpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQub25jbGljayA9IChlKSA9PiB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLm11bHRpRHJvcGRvd24uc3R5bGUuZGlzcGxheSA9IHRoaXMubXVsdGlEcm9wZG93bi5zdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgPyAnYmxvY2snIDogJ25vbmUnO1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdCcpO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUtdG9nZ2xlJyk7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0Q29udGFpbmVyTXVsdGkuYXBwZW5kQ2hpbGQodGhpcy5tdWx0aVNlbGVjdElucHV0KTtcblxuICAgICAgICByZXR1cm4gc2VsZWN0Q29udGFpbmVyTXVsdGk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEcm9wZG93bkZvck11bHRpc2VsZWN0KCkge1xuICAgICAgICBjb25zdCBkcm9wZG93bkRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkcm9wZG93bkRpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19tdWx0aXBsZS1kcm9wZG93bicpO1xuICAgICAgICBkcm9wZG93bkRpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXInKTtcbiAgICAgICAgZHJvcGRvd25EaXYuY2xhc3NMaXN0LmFkZChgZWNsLXNlbGVjdF9fY29udGFpbmVyLS0ke3RoaXMuZWNsU2l6ZX1gKTtcbiAgICAgICAgZHJvcGRvd25EaXYuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgcmV0dXJuIGRyb3Bkb3duRGl2O1xuICAgIH1cblxuICAgIC8vIHNlYXJjaCBib3ggdG8gc2VhcmNoIGFtb25nIG9wdGlvbnNcbiAgICBwcml2YXRlIGNyZWF0ZVNlYXJjaEZvck11bHRpc2VsZWN0KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBtdWx0aVNlYXJjaCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICAgIG11bHRpU2VhcmNoLnR5cGUgPSAndGV4dCc7XG4gICAgICAgIG11bHRpU2VhcmNoLmNsYXNzTGlzdC5hZGQoJ2VjbC10ZXh0LWlucHV0Jyk7XG4gICAgICAgIG11bHRpU2VhcmNoLnBsYWNlaG9sZGVyID0gJ1NlYXJjaCc7XG4gICAgICAgIC8vIFNlYXJjaCBlbGVtZW50cy4gRWxlbWVudHMgdGhhdCBkb24ndCBtYXRjaCB0aGUgY3JpdGVyaWEgYXJlIGhpZGRlblxuICAgICAgICBtdWx0aVNlYXJjaC5vbmtleXVwID0gKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hPcHRpb25zKG11bHRpU2VhcmNoLnZhbHVlKTtcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIG11bHRpU2VhcmNoO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlT3B0aW9uV2l0aENoZWNrYm94KGVsOiBFY2xNdWx0aXNlbGVjdE9wdGlvbkRpcmVjdGl2ZSk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgaWRTdHIgPSAobmV3IERhdGUoKSkudG9JU09TdHJpbmcoKTtcbiAgICAgICAgY29uc3QgaWQgPSAnaWQtJyArIGVsLnZhbHVlICsgaWRTdHIuc3Vic3RyaW5nKGlkU3RyLmxhc3RJbmRleE9mKCcuJykgKyAxKTtcblxuICAgICAgICBjb25zdCBjaGVja2JveERpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgICAgIGlmIChlbC5jc3NDbGFzc2VzKSB7XG4gICAgICAgICAgICBlbC5jc3NDbGFzc2VzLnNwbGl0KCcgJykuZm9yRWFjaChjbCA9PiB7XG4gICAgICAgICAgICAgICAgY2hlY2tib3hEaXYuY2xhc3NMaXN0LmFkZChjbCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNoZWNrYm94SW5wdXQgPSB0aGlzLmNyZWF0ZUNoZWNrYm94SW5wdXQoaWQsIGVsLnZhbHVlKTtcbiAgICAgICAgaWYgKGVsLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBjaGVja2JveERpdi5jbGFzc0xpc3QuYWRkKCdlY2wtY2hlY2tib3gtLWRpc2FibGVkJyk7XG4gICAgICAgICAgICBjaGVja2JveElucHV0LmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNoZWNrYm94SW5wdXQub25jbGljayA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUN1cnJlbnRWYWx1ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMucHJvcGFnYXRlVG91Y2hlZCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuZWNsQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbC5zZWxlY3RlZCB8fCAodGhpcy5zZWxlY3RlZFZhbHVlcy5pbmRleE9mKGVsLnZhbHVlKSA+IC0xKSkge1xuICAgICAgICAgICAgY2hlY2tib3hJbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9PT0gJycgPyBlbC5sYWJlbCA6XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnZhbHVlICsgJywnICsgZWwubGFiZWw7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tib3hEaXYuYXBwZW5kQ2hpbGQoY2hlY2tib3hJbnB1dCk7XG5cbiAgICAgICAgY29uc3QgY2hlY2tib3hMYWJlbCA9IHRoaXMuY3JlYXRlQ2hlY2tib3hMYWJlbChlbC5sYWJlbCwgaWQpO1xuICAgICAgICBjaGVja2JveERpdi5hcHBlbmRDaGlsZChjaGVja2JveExhYmVsKTtcblxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5wdXNoKGNoZWNrYm94RGl2KTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94RGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQ2hlY2tib3hMYWJlbCh0ZXh0OiBzdHJpbmcsIGlkOiBzdHJpbmcpOiBIVE1MTGFiZWxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgY2hlY2tib3hMYWJlbCA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoRWNsQ2hlY2tib3hMYWJlbENvbXBvbmVudCk7XG4gICAgICAgIGNoZWNrYm94TGFiZWwubG9jYXRpb24ubmF0aXZlRWxlbWVudC5odG1sRm9yID0gaWQ7XG5cbiAgICAgICAgY29uc3QgdGV4dFNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgIHRleHRTcGFuLmlubmVySFRNTCA9IHRleHQ7XG5cbiAgICAgICAgY2hlY2tib3hMYWJlbC5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRleHRTcGFuKTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94TGFiZWwubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUNoZWNrYm94SW5wdXQoaWQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBjaGVja2JveElucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgICAgY2hlY2tib3hJbnB1dC50eXBlID0gJ2NoZWNrYm94JztcbiAgICAgICAgY2hlY2tib3hJbnB1dC5jbGFzc0xpc3QuYWRkKCdlY2wtY2hlY2tib3hfX2lucHV0Jyk7XG4gICAgICAgIGNoZWNrYm94SW5wdXQuaWQgPSBpZDtcbiAgICAgICAgY2hlY2tib3hJbnB1dC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gY2hlY2tib3hJbnB1dDtcbiAgICB9XG5cbiAgICAvLyBBZGQvcmVtb3ZlIHZhbHVlcyBmcm9tIHRoZSBzZWxlY3QgaW5wdXRcbiAgICBwcml2YXRlIHVwZGF0ZUN1cnJlbnRWYWx1ZSgpIHtcbiAgICAgICAgbGV0IHNlbGVjdGVkRWxlbWVudHNBcnJheSA9IFtdO1xuICAgICAgICBsZXQgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5ID0gW107XG4gICAgICAgIHRoaXMuY2hlY2tib3hTZWxlY3RBbGwuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZWwuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgICAgIGlmIChpbnB1dC5jaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5LnB1c2goKDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF0pLnZhbHVlKTtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEVsZW1lbnRzQXJyYXkucHVzaChlbC5jaGlsZE5vZGVzWzFdLnRleHRDb250ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSBzZWxlY3RlZEVsZW1lbnRzVmFsdWVzQXJyYXk7XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IHNlbGVjdGVkRWxlbWVudHNBcnJheS5qb2luKCcsJyk7XG4gICAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgIH1cblxuICAgIC8vIENoZWNrYm94IHRvIHNlbGVjdCBhbGwgdGhlIGVsZW1lbnRzXG4gICAgcHJpdmF0ZSBjcmVhdGVNdWx0aVNlbGVjdEFsbCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IGlkU3RyID0gKG5ldyBEYXRlKCkpLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IGNoZWNrYm94RGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNoZWNrYm94RGl2LmNsYXNzTGlzdC5hZGQoJ2VjbC1jaGVja2JveCcpO1xuICAgICAgICBjaGVja2JveERpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19tdWx0aXBsZS1hbGwnKTtcblxuICAgICAgICB0aGlzLmNoZWNrYm94U2VsZWN0QWxsID0gdGhpcy5jcmVhdGVDaGVja2JveElucHV0KCdzZWxlY3QtbXVsdGlwbGUtYWxsJyArIGlkU3RyLnN1YnN0cmluZyhpZFN0ci5sYXN0SW5kZXhPZignLicpICsgMSksICdhbGwnKTtcbiAgICAgICAgdGhpcy5jaGVja2JveFNlbGVjdEFsbC5vbmNsaWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5wcm9wYWdhdGVUb3VjaGVkKCk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdEFsbCgpO1xuICAgICAgICB9O1xuICAgICAgICBjaGVja2JveERpdi5hcHBlbmRDaGlsZCh0aGlzLmNoZWNrYm94U2VsZWN0QWxsKTtcblxuICAgICAgICB0aGlzLmNoZWNrYm94TGFiZWwgPSB0aGlzLmNyZWF0ZUNoZWNrYm94TGFiZWwoJ1NlbGVjdCBhbGwnLCAnc2VsZWN0LW11bHRpcGxlLWFsbCcgKyBpZFN0ci5zdWJzdHJpbmcoaWRTdHIubGFzdEluZGV4T2YoJy4nKSArIDEpKTtcbiAgICAgICAgY2hlY2tib3hEaXYuYXBwZW5kQ2hpbGQodGhpcy5jaGVja2JveExhYmVsKTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94RGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlT3B0aW9uc1dyYXBwZXIoKTogSFRNTEVsZW1lbnQge1xuXG4gICAgICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkaXYuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUtb3B0aW9ucycpO1xuICAgICAgICByZXR1cm4gZGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0QWxsKCkge1xuICAgICAgICBsZXQgc2VsZWN0ZWRFbGVtZW50c0FycmF5ID0gW107XG4gICAgICAgIGxldCBzZWxlY3RlZEVsZW1lbnRzVmFsdWVzQXJyYXkgPSBbXTtcbiAgICAgICAgLy8gU2VsZWN0IGFsbCB0aGUgZWxlbWVudHMsIHRoYXQgYXJlIG5vdCBkaXNhYmxlZFxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5maWx0ZXIoZWxlbSA9PiBlbGVtLnN0eWxlLmRpc3BsYXkgIT09ICdub25lJykuZm9yRWFjaChlbCA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja2JveFNlbGVjdEFsbC5jaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpbnB1dC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5LnB1c2goKDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF0pLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c0FycmF5LnB1c2goZWwuY2hpbGROb2Rlc1sxXS50ZXh0Q29udGVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpbnB1dC5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5O1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQudmFsdWUgPSBzZWxlY3RlZEVsZW1lbnRzQXJyYXkuam9pbignLCcpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGVkVmFsdWVzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUljb25Db21wb25lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICBjb25zdCBlY2xJY29uQ29tcG9uZW50ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChFY2xJY29uQ29tcG9uZW50KTtcbiAgICAgICAgZWNsSWNvbkNvbXBvbmVudC5pbnN0YW5jZS5zaXplID0gJ3MnO1xuICAgICAgICBlY2xJY29uQ29tcG9uZW50Lmluc3RhbmNlLmljb24gPSAnY29ybmVyLWFycm93JztcbiAgICAgICAgZWNsSWNvbkNvbXBvbmVudC5pbnN0YW5jZS50cmFuc2Zvcm0gPSAncm90YXRlLTE4MCc7XG4gICAgICAgIGVjbEljb25Db21wb25lbnQuaW5zdGFuY2UuY2xhc3MgPSAnZWNsLXNlbGVjdF9faWNvbi1zaGFwZSc7XG4gICAgICAgIHJldHVybiBlY2xJY29uQ29tcG9uZW50LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVJY29uQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0SWNvbkNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBzZWxlY3RJY29uQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2VjbC1zZWxlY3RfX2ljb24nKTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdEljb25Db250YWluZXI7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZWFyY2hPcHRpb25zKGtleXdvcmQ6IHN0cmluZyA9ICcnKSB7XG4gICAgICAgIGlmIChrZXl3b3JkID09PSAnJykge1xuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdE9wdGlvbnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5mb3JFYWNoKChpdGVtLCBjbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLnRleHRDb250ZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihrZXl3b3JkLnRvTG93ZXJDYXNlKCkpIDwgMCkge1xuICAgICAgICAgICAgICAgIGl0ZW0uc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldENvbXBvbmVudCgpIHtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdE9wdGlvbnMuZm9yRWFjaChlbCA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICBpZiAoaW5wdXQuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIGlucHV0LmNoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2hlY2tib3hTZWxlY3RBbGwuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gW107XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVUcmFuc2xhdGlvbnMoKSB7XG4gICAgICAgIHRoaXMudHJhbnNsYXRlXG4gICAgICAgICAgICAuc3RyZWFtKCdlY2wubXVsdGlzZWxlY3QuU0VMRUNULUFMTCcpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKCh0cmFuc2xhdGlvbjogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5jaGVja2JveExhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3hMYWJlbC50ZXh0Q29udGVudCA9IHRyYW5zbGF0aW9uO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD4iXX0=
408
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBRUgsU0FBUyxFQUNULGVBQWUsRUFHZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFFTixJQUFJLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN6RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU1uRixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZ0JBQWdCO0lBcUR6RCxZQUNrQyxTQUFvQixFQUMxQyxFQUFjLEVBQ2QsZ0JBQWtDLEVBQ2xDLE9BQXdCLEVBQ3hCLFNBQTJCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBTHNCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDMUMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLHFCQUFnQixHQUFoQixn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QUE2QjtnQkFDdEIsU0FBUztzQkFBakIsS0FBSztnQkFFUixjQUFjO3NCQUExQixLQUFLO2dCQVFGLFFBQVE7c0JBRFgsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxlQUFlO2dCQVc1QixPQUFPO3NCQUFmLEtBQUs7Z0JBR0YsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU87Z0JBT1YsU0FBUztzQkFBbEIsTUFBTTtnQkF1R1AsT0FBTztzQkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTZWxmLFxuICAgIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQ2hlY2tib3hMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uL2VjbC1jaGVja2JveC9lY2wtY2hlY2tib3gtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEVjbEljb25Db21wb25lbnQgfSBmcm9tICcuLi9lY2wtaWNvbi9lY2wtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuL2VjbC1tdWx0aXNlbGVjdC1vcHRpb24uZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzZWxlY3RbZWNsTXVsdGlzZWxlY3RdJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2VjbC1tdWx0aXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgRG9DaGVjaywgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gICAgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlKSBlY2xPcHRpb25JdGVtczogUXVlcnlMaXN0PEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlPjtcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBpc0ludmFsaWQ6IGJvb2xlYW4gfCBhbnkgID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZXQgZWNsUGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9lY2xQbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdElucHV0KSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicsIHRoaXMuX2VjbFBsYWNlaG9sZGVyIHx8ICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICBpZiAodGhpcy5uZ0NvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbC5kaXNhYmxlZCB8fCBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgYW55KSB7IHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBlY2xTaXplOiBzdHJpbmcgPSAnbSc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1zZWxlY3QnKSxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKSBlY2xDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIHByaXZhdGUgX2VjbFBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlPjtcbiAgICBwcml2YXRlIGhvc3RFbDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBob3N0UGFyZW50RWw6IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgaG9zdFdyYXBwZXJFbDogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBzZWxlY3RJY29uQ29udGFpbmVyRWw6IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgZWNsSWNvbkNvbXBvbmVudEVsOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG11bHRpc2VsZWN0V3JhcHBlcjogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBtdWx0aXNlbGVjdENvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBtdWx0aURyb3Bkb3duOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG9wdGlvbnNXcmFwcGVyOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIG11bHRpU2VsZWN0T3B0aW9uczogSFRNTEVsZW1lbnRbXSA9IFtdO1xuICAgIHByaXZhdGUgbXVsdGlTZWxlY3RJbnB1dDogSFRNTElucHV0RWxlbWVudDtcbiAgICBwcml2YXRlIGNoZWNrYm94U2VsZWN0QWxsOiBIVE1MSW5wdXRFbGVtZW50O1xuICAgIHByaXZhdGUgc2VsZWN0ZWRWYWx1ZXM6IHN0cmluZ1tdID0gW107XG4gICAgcHJpdmF0ZSBjaGVja2JveExhYmVsOiBIVE1MTGFiZWxFbGVtZW50O1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHJvdGVjdGVkIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgZGlmZmVyczogSXRlcmFibGVEaWZmZXJzLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICAgICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmhvc3RFbCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICAgICAgdGhpcy5ob3N0UGFyZW50RWwgPSB0aGlzLmdldEhvc3RQYXJlbnRFbGVtZW50KHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsID0gdGhpcy5jcmVhdGVIb3N0V3JhcHBlckNvbnRhaW5lcigpO1xuICAgICAgICB0aGlzLnNlbGVjdEljb25Db250YWluZXJFbCA9IHRoaXMuY3JlYXRlSWNvbkNvbnRhaW5lcigpO1xuICAgICAgICB0aGlzLmVjbEljb25Db21wb25lbnRFbCA9IHRoaXMuY3JlYXRlSWNvbkNvbXBvbmVudCgpO1xuXG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyID0gdGhpcy5jcmVhdGVXcmFwcGVyTXVsdGlzZWxlY3QoKTtcbiAgICAgICAgdGhpcy5tdWx0aXNlbGVjdENvbnRhaW5lciA9IHRoaXMuY3JlYXRlU2VsZWN0Q29udGFpbmVyTXVsdGlzZWxlY3QoKTtcblxuICAgICAgICBpZiAodGhpcy5ob3N0UGFyZW50RWwgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5oaWRlT3JpZ2luYWxTZWxlY3RDb21wb25lbnQoKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSHRtbEVsZW1lbnRzKCk7XG5cbiAgICAgICAgICAgIHRoaXMuYnVpbGRNdWx0aXNlbGVjdERyb3Bkb3duKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaGFuZGxlVHJhbnNsYXRpb25zKCk7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCkge1xuXG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RDb250YWluZXIuY2xhc3NMaXN0LnRvZ2dsZSgnZWNsLXNlbGVjdF9fY29udGFpbmVyLS1kaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgICAgICB0aGlzLm11bHRpc2VsZWN0Q29udGFpbmVyLmNsYXNzTGlzdC50b2dnbGUoJ2VjbC1zZWxlY3RfX2NvbnRhaW5lci0taW52YWxpZCcsIHRoaXMuaXNJbnZhbGlkKTtcblxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsT3B0aW9uSXRlbXMpO1xuXG4gICAgICAgIGlmIChkaWZmKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUFsbE9wdGlvbnMoKTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RPcHRpb25zID0gW107XG4gICAgICAgICAgICBkaWZmLmZvckVhY2hJdGVtKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9uc1dyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5jcmVhdGVPcHRpb25XaXRoQ2hlY2tib3goaXRlbS5pdGVtKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMub25PcHRpb25zQ2hhbmdlKCk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUN1cnJlbnRWYWx1ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLm9uT3B0aW9uc0NoYW5nZSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnB1c2goZWwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRDb21wb25lbnQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gICAgb25LZXlVcChldjogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCBpc0NsaWNrSW5zaWRlID0gdGhpcy5tdWx0aURyb3Bkb3duLmNvbnRhaW5zKDxFbGVtZW50PmV2LnRhcmdldCkgfHwgdGhpcy5tdWx0aVNlbGVjdElucHV0LmNvbnRhaW5zKDxFbGVtZW50PmV2LnRhcmdldCk7XG4gICAgICAgIGlmICghaXNDbGlja0luc2lkZSkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUFsbE9wdGlvbnMoKSB7XG4gICAgICAgIHdoaWxlICh0aGlzLm9wdGlvbnNXcmFwcGVyLmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9uc1dyYXBwZXIuZmlyc3RDaGlsZC5yZW1vdmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25PcHRpb25zQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLmVjbE9wdGlvbkl0ZW1zLmZvckVhY2goaSA9PiBpLmNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICApLnN1YnNjcmliZShlID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyLnJlbW92ZUNoaWxkKHRoaXMubXVsdGlEcm9wZG93bik7XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RPcHRpb25zID0gW107XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnZhbHVlID0gbnVsbDtcbiAgICAgICAgICAgICAgICB0aGlzLmJ1aWxkTXVsdGlzZWxlY3REcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoaWRlT3JpZ2luYWxTZWxlY3RDb21wb25lbnQoKSB7XG4gICAgICAgIHRoaXMuaG9zdFBhcmVudEVsLnJlcGxhY2VDaGlsZCh0aGlzLmhvc3RXcmFwcGVyRWwsIHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsLmFwcGVuZENoaWxkKHRoaXMuaG9zdEVsKTtcbiAgICAgICAgdGhpcy5ob3N0V3JhcHBlckVsLmNsYXNzTGlzdC5hZGQoJ2VjbC1zZWxlY3RfX2NvbnRhaW5lci0taGlkZGVuJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVIdG1sRWxlbWVudHMoKSB7XG4gICAgICAgIHRoaXMuaG9zdFBhcmVudEVsLmFwcGVuZENoaWxkKHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyKTtcbiAgICAgICAgdGhpcy5tdWx0aXNlbGVjdFdyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5tdWx0aXNlbGVjdENvbnRhaW5lcik7XG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5zZWxlY3RJY29uQ29udGFpbmVyRWwpO1xuICAgICAgICB0aGlzLnNlbGVjdEljb25Db250YWluZXJFbC5hcHBlbmRDaGlsZCh0aGlzLmVjbEljb25Db21wb25lbnRFbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGVUb3VjaGVkID0gKCkgPT4ge1xuICAgIH1cblxuICAgIHByaXZhdGUgYnVpbGRNdWx0aXNlbGVjdERyb3Bkb3duKHdpdGhPcHRpb25zOiBib29sZWFuKSB7XG5cbiAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duID0gdGhpcy5jcmVhdGVEcm9wZG93bkZvck11bHRpc2VsZWN0KCk7XG4gICAgICAgIHRoaXMubXVsdGlzZWxlY3RXcmFwcGVyLmFwcGVuZENoaWxkKHRoaXMubXVsdGlEcm9wZG93bik7XG5cbiAgICAgICAgdGhpcy5tdWx0aURyb3Bkb3duLmFwcGVuZENoaWxkKHRoaXMuY3JlYXRlU2VhcmNoRm9yTXVsdGlzZWxlY3QoKSk7XG4gICAgICAgIHRoaXMubXVsdGlEcm9wZG93bi5hcHBlbmRDaGlsZCh0aGlzLmNyZWF0ZU11bHRpU2VsZWN0QWxsKCkpO1xuICAgICAgICB0aGlzLm9wdGlvbnNXcmFwcGVyID0gdGhpcy5jcmVhdGVPcHRpb25zV3JhcHBlcigpO1xuICAgICAgICB0aGlzLm11bHRpRHJvcGRvd24uYXBwZW5kQ2hpbGQodGhpcy5vcHRpb25zV3JhcHBlcik7XG5cbiAgICAgICAgaWYgKHdpdGhPcHRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLmVjbE9wdGlvbkl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNXcmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuY3JlYXRlT3B0aW9uV2l0aENoZWNrYm94KGl0ZW0pKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIb3N0RWxlbWVudCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIb3N0UGFyZW50RWxlbWVudChob3N0RWw6IEhUTUxTZWxlY3RFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gaG9zdEVsLnBhcmVudEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVIb3N0V3JhcHBlckNvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IHdyYXBwZXJDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgd3JhcHBlckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXInKTtcbiAgICAgICAgd3JhcHBlckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKGBlY2wtc2VsZWN0X19jb250YWluZXItLSR7dGhpcy5lY2xTaXplfWApO1xuICAgICAgICByZXR1cm4gd3JhcHBlckNvbnRhaW5lcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZVdyYXBwZXJNdWx0aXNlbGVjdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IHdyYXBwZXJDb250YWluZXJNdWx0aSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICB3cmFwcGVyQ29udGFpbmVyTXVsdGkuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUnKTtcbiAgICAgICAgcmV0dXJuIHdyYXBwZXJDb250YWluZXJNdWx0aTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZVNlbGVjdENvbnRhaW5lck11bHRpc2VsZWN0KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0Q29udGFpbmVyTXVsdGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgc2VsZWN0Q29udGFpbmVyTXVsdGkuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fY29udGFpbmVyJyk7XG4gICAgICAgIHNlbGVjdENvbnRhaW5lck11bHRpLmNsYXNzTGlzdC5hZGQoYGVjbC1zZWxlY3RfX2NvbnRhaW5lci0tJHt0aGlzLmVjbFNpemV9YCk7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBzZWxlY3RDb250YWluZXJNdWx0aS5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXItLWRpc2FibGVkJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdwbGFjZWhvbGRlcicsIHRoaXMuX2VjbFBsYWNlaG9sZGVyIHx8ICcnKTtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnJlYWRPbmx5ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnNldEF0dHJpYnV0ZSgndHlwZScsICd0ZXh0Jyk7XG4gICAgICAgIGlmICh0aGlzLmhvc3RFbC5oYXNBdHRyaWJ1dGUoJ2Zvcm1Db250cm9sTmFtZScpKSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuc2V0QXR0cmlidXRlKCdmb3JtQ29udHJvbE5hbWUnLCB0aGlzLmhvc3RFbC5nZXRBdHRyaWJ1dGUoJ2Zvcm1Db250cm9sTmFtZScpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQub25jbGljayA9IChlKSA9PiB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLm11bHRpRHJvcGRvd24uc3R5bGUuZGlzcGxheSA9IHRoaXMubXVsdGlEcm9wZG93bi5zdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgPyAnYmxvY2snIDogJ25vbmUnO1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdCcpO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUtdG9nZ2xlJyk7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0Q29udGFpbmVyTXVsdGkuYXBwZW5kQ2hpbGQodGhpcy5tdWx0aVNlbGVjdElucHV0KTtcblxuICAgICAgICByZXR1cm4gc2VsZWN0Q29udGFpbmVyTXVsdGk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEcm9wZG93bkZvck11bHRpc2VsZWN0KCkge1xuICAgICAgICBjb25zdCBkcm9wZG93bkRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkcm9wZG93bkRpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19tdWx0aXBsZS1kcm9wZG93bicpO1xuICAgICAgICBkcm9wZG93bkRpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19jb250YWluZXInKTtcbiAgICAgICAgZHJvcGRvd25EaXYuY2xhc3NMaXN0LmFkZChgZWNsLXNlbGVjdF9fY29udGFpbmVyLS0ke3RoaXMuZWNsU2l6ZX1gKTtcbiAgICAgICAgZHJvcGRvd25EaXYuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgcmV0dXJuIGRyb3Bkb3duRGl2O1xuICAgIH1cblxuICAgIC8vIHNlYXJjaCBib3ggdG8gc2VhcmNoIGFtb25nIG9wdGlvbnNcbiAgICBwcml2YXRlIGNyZWF0ZVNlYXJjaEZvck11bHRpc2VsZWN0KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBtdWx0aVNlYXJjaCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICAgIG11bHRpU2VhcmNoLnR5cGUgPSAndGV4dCc7XG4gICAgICAgIG11bHRpU2VhcmNoLmNsYXNzTGlzdC5hZGQoJ2VjbC10ZXh0LWlucHV0Jyk7XG4gICAgICAgIG11bHRpU2VhcmNoLnBsYWNlaG9sZGVyID0gJ1NlYXJjaCc7XG4gICAgICAgIC8vIFNlYXJjaCBlbGVtZW50cy4gRWxlbWVudHMgdGhhdCBkb24ndCBtYXRjaCB0aGUgY3JpdGVyaWEgYXJlIGhpZGRlblxuICAgICAgICBtdWx0aVNlYXJjaC5vbmtleXVwID0gKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hPcHRpb25zKG11bHRpU2VhcmNoLnZhbHVlKTtcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIG11bHRpU2VhcmNoO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlT3B0aW9uV2l0aENoZWNrYm94KGVsOiBFY2xNdWx0aXNlbGVjdE9wdGlvbkRpcmVjdGl2ZSk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgaWRTdHIgPSAobmV3IERhdGUoKSkudG9JU09TdHJpbmcoKTtcbiAgICAgICAgY29uc3QgaWQgPSAnaWQtJyArIGVsLnZhbHVlICsgaWRTdHIuc3Vic3RyaW5nKGlkU3RyLmxhc3RJbmRleE9mKCcuJykgKyAxKTtcblxuICAgICAgICBjb25zdCBjaGVja2JveERpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgICAgIGlmIChlbC5jc3NDbGFzc2VzKSB7XG4gICAgICAgICAgICBlbC5jc3NDbGFzc2VzLnNwbGl0KCcgJykuZm9yRWFjaChjbCA9PiB7XG4gICAgICAgICAgICAgICAgY2hlY2tib3hEaXYuY2xhc3NMaXN0LmFkZChjbCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNoZWNrYm94SW5wdXQgPSB0aGlzLmNyZWF0ZUNoZWNrYm94SW5wdXQoaWQsIGVsLnZhbHVlKTtcbiAgICAgICAgaWYgKGVsLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBjaGVja2JveERpdi5jbGFzc0xpc3QuYWRkKCdlY2wtY2hlY2tib3gtLWRpc2FibGVkJyk7XG4gICAgICAgICAgICBjaGVja2JveElucHV0LmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNoZWNrYm94SW5wdXQub25jbGljayA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUN1cnJlbnRWYWx1ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMucHJvcGFnYXRlVG91Y2hlZCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuZWNsQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbC5zZWxlY3RlZCB8fCAodGhpcy5zZWxlY3RlZFZhbHVlcy5pbmRleE9mKGVsLnZhbHVlKSA+IC0xKSkge1xuICAgICAgICAgICAgY2hlY2tib3hJbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9PT0gJycgPyBlbC5sYWJlbCA6XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdElucHV0LnZhbHVlICsgJywnICsgZWwubGFiZWw7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tib3hEaXYuYXBwZW5kQ2hpbGQoY2hlY2tib3hJbnB1dCk7XG5cbiAgICAgICAgY29uc3QgY2hlY2tib3hMYWJlbCA9IHRoaXMuY3JlYXRlQ2hlY2tib3hMYWJlbChlbC5sYWJlbCwgaWQpO1xuICAgICAgICBjaGVja2JveERpdi5hcHBlbmRDaGlsZChjaGVja2JveExhYmVsKTtcblxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5wdXNoKGNoZWNrYm94RGl2KTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94RGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQ2hlY2tib3hMYWJlbCh0ZXh0OiBzdHJpbmcsIGlkOiBzdHJpbmcpOiBIVE1MTGFiZWxFbGVtZW50IHtcbiAgICAgICAgY29uc3QgY2hlY2tib3hMYWJlbCA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoRWNsQ2hlY2tib3hMYWJlbENvbXBvbmVudCk7XG4gICAgICAgIGNoZWNrYm94TGFiZWwubG9jYXRpb24ubmF0aXZlRWxlbWVudC5odG1sRm9yID0gaWQ7XG5cbiAgICAgICAgY29uc3QgdGV4dFNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgIHRleHRTcGFuLmlubmVySFRNTCA9IHRleHQ7XG5cbiAgICAgICAgY2hlY2tib3hMYWJlbC5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRleHRTcGFuKTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94TGFiZWwubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUNoZWNrYm94SW5wdXQoaWQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBjaGVja2JveElucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgICAgY2hlY2tib3hJbnB1dC50eXBlID0gJ2NoZWNrYm94JztcbiAgICAgICAgY2hlY2tib3hJbnB1dC5jbGFzc0xpc3QuYWRkKCdlY2wtY2hlY2tib3hfX2lucHV0Jyk7XG4gICAgICAgIGNoZWNrYm94SW5wdXQuaWQgPSBpZDtcbiAgICAgICAgY2hlY2tib3hJbnB1dC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gY2hlY2tib3hJbnB1dDtcbiAgICB9XG5cbiAgICAvLyBBZGQvcmVtb3ZlIHZhbHVlcyBmcm9tIHRoZSBzZWxlY3QgaW5wdXRcbiAgICBwcml2YXRlIHVwZGF0ZUN1cnJlbnRWYWx1ZSgpIHtcbiAgICAgICAgbGV0IHNlbGVjdGVkRWxlbWVudHNBcnJheSA9IFtdO1xuICAgICAgICBsZXQgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5ID0gW107XG4gICAgICAgIHRoaXMuY2hlY2tib3hTZWxlY3RBbGwuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZWwuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgICAgIGlmIChpbnB1dC5jaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5LnB1c2goKDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF0pLnZhbHVlKTtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEVsZW1lbnRzQXJyYXkucHVzaChlbC5jaGlsZE5vZGVzWzFdLnRleHRDb250ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSBzZWxlY3RlZEVsZW1lbnRzVmFsdWVzQXJyYXk7XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IHNlbGVjdGVkRWxlbWVudHNBcnJheS5qb2luKCcsJyk7XG4gICAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgIH1cblxuICAgIC8vIENoZWNrYm94IHRvIHNlbGVjdCBhbGwgdGhlIGVsZW1lbnRzXG4gICAgcHJpdmF0ZSBjcmVhdGVNdWx0aVNlbGVjdEFsbCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IGlkU3RyID0gKG5ldyBEYXRlKCkpLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IGNoZWNrYm94RGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNoZWNrYm94RGl2LmNsYXNzTGlzdC5hZGQoJ2VjbC1jaGVja2JveCcpO1xuICAgICAgICBjaGVja2JveERpdi5jbGFzc0xpc3QuYWRkKCdlY2wtc2VsZWN0X19tdWx0aXBsZS1hbGwnKTtcblxuICAgICAgICB0aGlzLmNoZWNrYm94U2VsZWN0QWxsID0gdGhpcy5jcmVhdGVDaGVja2JveElucHV0KCdzZWxlY3QtbXVsdGlwbGUtYWxsJyArIGlkU3RyLnN1YnN0cmluZyhpZFN0ci5sYXN0SW5kZXhPZignLicpICsgMSksICdhbGwnKTtcbiAgICAgICAgdGhpcy5jaGVja2JveFNlbGVjdEFsbC5vbmNsaWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5wcm9wYWdhdGVUb3VjaGVkKCk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdEFsbCgpO1xuICAgICAgICB9O1xuICAgICAgICBjaGVja2JveERpdi5hcHBlbmRDaGlsZCh0aGlzLmNoZWNrYm94U2VsZWN0QWxsKTtcblxuICAgICAgICB0aGlzLmNoZWNrYm94TGFiZWwgPSB0aGlzLmNyZWF0ZUNoZWNrYm94TGFiZWwoJ1NlbGVjdCBhbGwnLCAnc2VsZWN0LW11bHRpcGxlLWFsbCcgKyBpZFN0ci5zdWJzdHJpbmcoaWRTdHIubGFzdEluZGV4T2YoJy4nKSArIDEpKTtcbiAgICAgICAgY2hlY2tib3hEaXYuYXBwZW5kQ2hpbGQodGhpcy5jaGVja2JveExhYmVsKTtcbiAgICAgICAgcmV0dXJuIGNoZWNrYm94RGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlT3B0aW9uc1dyYXBwZXIoKTogSFRNTEVsZW1lbnQge1xuXG4gICAgICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBkaXYuY2xhc3NMaXN0LmFkZCgnZWNsLXNlbGVjdF9fbXVsdGlwbGUtb3B0aW9ucycpO1xuICAgICAgICByZXR1cm4gZGl2O1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0QWxsKCkge1xuICAgICAgICBsZXQgc2VsZWN0ZWRFbGVtZW50c0FycmF5ID0gW107XG4gICAgICAgIGxldCBzZWxlY3RlZEVsZW1lbnRzVmFsdWVzQXJyYXkgPSBbXTtcbiAgICAgICAgLy8gU2VsZWN0IGFsbCB0aGUgZWxlbWVudHMsIHRoYXQgYXJlIG5vdCBkaXNhYmxlZFxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5maWx0ZXIoZWxlbSA9PiBlbGVtLnN0eWxlLmRpc3BsYXkgIT09ICdub25lJykuZm9yRWFjaChlbCA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja2JveFNlbGVjdEFsbC5jaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpbnB1dC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5LnB1c2goKDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF0pLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVtZW50c0FycmF5LnB1c2goZWwuY2hpbGROb2Rlc1sxXS50ZXh0Q29udGVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpbnB1dC5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gc2VsZWN0ZWRFbGVtZW50c1ZhbHVlc0FycmF5O1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0SW5wdXQudmFsdWUgPSBzZWxlY3RlZEVsZW1lbnRzQXJyYXkuam9pbignLCcpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGVkVmFsdWVzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUljb25Db21wb25lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICBjb25zdCBlY2xJY29uQ29tcG9uZW50ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChFY2xJY29uQ29tcG9uZW50KTtcbiAgICAgICAgZWNsSWNvbkNvbXBvbmVudC5pbnN0YW5jZS5zaXplID0gJ3MnO1xuICAgICAgICBlY2xJY29uQ29tcG9uZW50Lmluc3RhbmNlLmljb24gPSAnY29ybmVyLWFycm93JztcbiAgICAgICAgZWNsSWNvbkNvbXBvbmVudC5pbnN0YW5jZS50cmFuc2Zvcm0gPSAncm90YXRlLTE4MCc7XG4gICAgICAgIGVjbEljb25Db21wb25lbnQuaW5zdGFuY2UuY2xhc3MgPSAnZWNsLXNlbGVjdF9faWNvbi1zaGFwZSc7XG4gICAgICAgIHJldHVybiBlY2xJY29uQ29tcG9uZW50LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVJY29uQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0SWNvbkNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBzZWxlY3RJY29uQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2VjbC1zZWxlY3RfX2ljb24nKTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdEljb25Db250YWluZXI7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZWFyY2hPcHRpb25zKGtleXdvcmQ6IHN0cmluZyA9ICcnKSB7XG4gICAgICAgIGlmIChrZXl3b3JkID09PSAnJykge1xuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdE9wdGlvbnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0T3B0aW9ucy5mb3JFYWNoKChpdGVtLCBjbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLnRleHRDb250ZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihrZXl3b3JkLnRvTG93ZXJDYXNlKCkpIDwgMCkge1xuICAgICAgICAgICAgICAgIGl0ZW0uc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldENvbXBvbmVudCgpIHtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdE9wdGlvbnMuZm9yRWFjaChlbCA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IDxIVE1MSW5wdXRFbGVtZW50PmVsLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICBpZiAoaW5wdXQuY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIGlucHV0LmNoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2hlY2tib3hTZWxlY3RBbGwuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gW107XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RJbnB1dC52YWx1ZSA9IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVUcmFuc2xhdGlvbnMoKSB7XG4gICAgICAgIHRoaXMudHJhbnNsYXRlXG4gICAgICAgICAgICAuc3RyZWFtKCdlY2wubXVsdGlzZWxlY3QuU0VMRUNULUFMTCcpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKCh0cmFuc2xhdGlvbjogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYodGhpcy5jaGVja2JveExhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3hMYWJlbC50ZXh0Q29udGVudCA9IHRyYW5zbGF0aW9uO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD4iXX0=
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
29
29
  type: HostBinding,
30
30
  args: ['class']
31
31
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5hdmlnYXRpb24tbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW5hdmlnYXRpb24tbGlzdC9lY2wtbmF2aWdhdGlvbi1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmF2aWdhdGlvbi1saXN0L2VjbC1uYXZpZ2F0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQU16RCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsZ0JBQWdCO0lBSmhFOztRQU0yQixZQUFPLEdBQWlCLENBQUMsQ0FBQztLQVNwRDtJQVBHLElBQ0ksVUFBVTtRQUNWLE9BQU87WUFDSCxLQUFLLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDO1lBQzFDLDRCQUE0QixJQUFJLENBQUMsT0FBTyxFQUFFO1NBQzdDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O2lKQVZRLDBCQUEwQjtxSUFBMUIsMEJBQTBCLHdLQ1J2QywyQkFBeUI7O0lEVXBCLFlBQVk7MkRBQW9DO2tHQUZ4QywwQkFBMEI7a0JBSnRDLFNBQVM7K0JBQ0kscUJBQXFCOzhCQUtSLE9BQU87c0JBQWYsS0FBSztnQkFHaEIsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1uYXZpZ2F0aW9uLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnZWNsLW5hdmlnYXRpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbE5hdmlnYXRpb25MaXN0Q29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG5cbiAgICBAY29lcmNlTnVtYmVyIEBJbnB1dCgpIGNvbHVtbnM6IG51bWJlciB8IGFueSA9IDI7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1uYXZpZ2F0aW9uLWxpc3QnKSxcbiAgICAgICAgICAgIGBlY2wtbmF2aWdhdGlvbi1saXN0LS1jb2wtJHt0aGlzLmNvbHVtbnN9YCxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn0iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5hdmlnYXRpb24tbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW5hdmlnYXRpb24tbGlzdC9lY2wtbmF2aWdhdGlvbi1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmF2aWdhdGlvbi1saXN0L2VjbC1uYXZpZ2F0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQU16RCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsZ0JBQWdCO0lBSmhFOztRQU0yQixZQUFPLEdBQWlCLENBQUMsQ0FBQztLQVNwRDtJQVBHLElBQ0ksVUFBVTtRQUNWLE9BQU87WUFDSCxLQUFLLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDO1lBQzFDLDRCQUE0QixJQUFJLENBQUMsT0FBTyxFQUFFO1NBQzdDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O2lKQVZRLDBCQUEwQjtxSUFBMUIsMEJBQTBCLHdLQ1J2QywyQkFBeUI7QURVUDtJQUFiLFlBQVk7MkRBQW9DO2tHQUZ4QywwQkFBMEI7a0JBSnRDLFNBQVM7K0JBQ0kscUJBQXFCOzhCQUtSLE9BQU87c0JBQWYsS0FBSztnQkFHaEIsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1uYXZpZ2F0aW9uLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnZWNsLW5hdmlnYXRpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbE5hdmlnYXRpb25MaXN0Q29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG5cbiAgICBAY29lcmNlTnVtYmVyIEBJbnB1dCgpIGNvbHVtbnM6IG51bWJlciB8IGFueSA9IDI7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1uYXZpZ2F0aW9uLWxpc3QnKSxcbiAgICAgICAgICAgIGBlY2wtbmF2aWdhdGlvbi1saXN0LS1jb2wtJHt0aGlzLmNvbHVtbnN9YCxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn0iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19
@@ -193,4 +193,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
193
193
  type: HostListener,
194
194
  args: ['window:resize', ['$event']]
195
195
  }] } });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmV3cy10aWNrZXIvZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmV3cy10aWNrZXIvZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFFWixNQUFNLEVBR04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFFOUUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFlBQVk7SUFDcEQsWUFBbUIsU0FBaUI7UUFDaEMsS0FBSyxFQUFFLENBQUM7UUFETyxjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXBDLENBQUM7Q0FDSjtBQU1ELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUEwQnhELFlBQW9CLFNBQW9CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFEsY0FBUyxHQUFULFNBQVMsQ0FBVztRQXhCOUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUEwQixDQUFDO1FBYWxFLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUdyQixrQkFBYSxHQUFHLElBQUksQ0FB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YUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pHLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRU8sZUFBZSxDQUFDLFdBQXVDO1FBQzNELElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLElBQUcsSUFBSSxLQUFLLFdBQVcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OzZJQTVMUSxzQkFBc0I7aUlBQXRCLHNCQUFzQix3T0FHZCwwQkFBMEIsZ1hDL0IvQyx1aUVBd0RBOztJRHRCSyxhQUFhOytEQUE4RDtrR0FObkUsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNJLGlCQUFpQjtnR0FLakIsVUFBVTtzQkFBbkIsTUFBTTtnQkFDc0MsZUFBZTtzQkFBM0QsZUFBZTt1QkFBQywwQkFBMEI7Z0JBQ2IsZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0MsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBQ2tCLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUd2QyxVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTztnQkErQnBCLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VFbGVtZW50IH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsL2VjbC1iYXNlLmV2ZW50JztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2VjbC1uZXdzLXRpY2tlci1pdGVtLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBFY2xOZXdzVGlja2VySXRlbUV2ZW50IGV4dGVuZHMgRWNsQmFzZUV2ZW50IHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgaXRlbUluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLW5ld3MtdGlja2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsTmV3c1RpY2tlckNvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gICAgQE91dHB1dCgpIGl0ZW1Td2l0Y2ggPSBuZXcgRXZlbnRFbWl0dGVyPEVjbE5ld3NUaWNrZXJJdGVtRXZlbnQ+KCk7XG4gICAgQENvbnRlbnRDaGlsZHJlbihFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudCkgbmV3c1RpY2tlckl0ZW1zOiBRdWVyeUxpc3Q8RWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ2ZpcnN0SGlkZGVuSXRlbScpIGZpcnN0SGlkZGVuSXRlbTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQ7XG4gICAgQFZpZXdDaGlsZCgnbGFzdEhpZGRlbkl0ZW0nKSBsYXN0SGlkZGVuSXRlbTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQ7XG4gICAgQGNvZXJjZUVsZW1lbnQgQFZpZXdDaGlsZCgnc2xpZGVzQ29udGFpbmVyJykgc2xpZGVzQ29udGFpbmVyOiBFbGVtZW50IHwgYW55O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtbmV3cy10aWNrZXInKSxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIGl0ZW1JbmRleDogbnVtYmVyID0gMTtcbiAgICBwbGF5aW5nID0gZmFsc2U7XG4gICAgc2xpZGVzVHJhbnNmb3JtOiBzdHJpbmcgPSAnJztcbiAgICB0cmFuc2l0aW9uRHVyYXRpb246IG51bWJlcjtcbiAgICBwcml2YXRlIGludGVydmFsSWQ6IGFueTtcbiAgICBwcml2YXRlIFBMQVlfSU5URVJWQUwgPSA1MDAwO1xuICAgIHByaXZhdGUgSU5JVF9ERUxBWSA9IDMwMDtcbiAgICBwcml2YXRlIF9jb250YWluZXJIZWlnaHQ6IG51bWJlcjtcbiAgICBwcml2YXRlIF9jb250ZW50SGVpZ2h0OiBudW1iZXI7XG4gICAgcHJpdmF0ZSB1bnN1YnNjcmliZUxpc3RlbmVyOiAoKSA9PiB2b2lkO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjI6IFJlbmRlcmVyMikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldCBjb250YWluZXJIZWlnaHQoKSB7IHJldHVybiB0aGlzLl9jb250YWluZXJIZWlnaHQ7IH1cblxuICAgIGdldCBjb250ZW50SGVpZ2h0KCkgeyByZXR1cm4gdGhpcy5fY29udGVudEhlaWdodDsgfVxuXG4gICAgZ2V0IGl0ZW1zQ291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmV3c1RpY2tlckl0ZW1zLmxlbmd0aDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgICBvblJlc2l6ZShldmVudCkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplVGlja2VyKCk7XG4gICAgICAgICAgICB0aGlzLm1vdmVTbGlkZXModGhpcy5nZXRDdXJyZW50SXRlbSgpLCBmYWxzZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmluaXRDb250YWluZXIoKTtcbiAgICAgICAgfSwgdGhpcy5JTklUX0RFTEFZKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgaWYgKHRoaXMuaW50ZXJ2YWxJZCkge1xuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsSWQpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVMaXN0ZW5lcigpO1xuICAgIH1cblxuICAgIG9uUHJldmlvdXMoKSB7XG4gICAgICAgIHRoaXMuY2FuY2VsQXV0b3BsYXkoKTtcbiAgICAgICAgdGhpcy5wcmV2aW91c1NsaWRlKCk7XG4gICAgfVxuXG4gICAgcHJldmlvdXNTbGlkZSgpIHtcbiAgICAgICAgdGhpcy5pdGVtSW5kZXggPSB0aGlzLmdldFByZXZJbmRleCgpO1xuICAgICAgICBpZiAodGhpcy5pdGVtSW5kZXggPT09IHRoaXMuaXRlbXNDb3VudCkge1xuICAgICAgICAgICAgdGhpcy5tb3ZlU2xpZGVzKHRoaXMuZ2V0Rmlyc3RJdGVtKHRoaXMuZ2V0QWxsSXRlbXNBcnJheSgpKSwgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1vdmVTbGlkZXModGhpcy5nZXRDdXJyZW50SXRlbSgpLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLml0ZW1Td2l0Y2gubmV4dChuZXcgRWNsTmV3c1RpY2tlckl0ZW1FdmVudCh0aGlzLml0ZW1JbmRleCkpO1xuICAgIH1cblxuICAgIG9uTmV4dCgpIHtcbiAgICAgICAgdGhpcy5jYW5jZWxBdXRvcGxheSgpO1xuICAgICAgICB0aGlzLm5leHRTbGlkZSgpO1xuICAgIH1cblxuICAgIG5leHRTbGlkZSgpIHtcbiAgICAgICAgdGhpcy5pdGVtSW5kZXggPSB0aGlzLmdldE5leHRJbmRleCgpO1xuICAgICAgICBpZiAodGhpcy5pdGVtSW5kZXggPT09IDEpIHtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyh0aGlzLmdldExhc3RJdGVtKHRoaXMuZ2V0QWxsSXRlbXNBcnJheSgpKSwgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1vdmVTbGlkZXModGhpcy5nZXRDdXJyZW50SXRlbSgpLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLml0ZW1Td2l0Y2gubmV4dChuZXcgRWNsTmV3c1RpY2tlckl0ZW1FdmVudCh0aGlzLml0ZW1JbmRleCkpO1xuICAgIH1cblxuICAgIHRvZ2dsZVBsYXkoKSB7XG4gICAgICAgIGlmICghdGhpcy5wbGF5aW5nKSB7XG4gICAgICAgICAgICB0aGlzLmludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB0aGlzLm5leHRTbGlkZSgpLCB0aGlzLlBMQVlfSU5URVJWQUwpO1xuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWxJZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wbGF5aW5nID0gIXRoaXMucGxheWluZztcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbmNlbEF1dG9wbGF5KCkge1xuICAgICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWxJZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wbGF5aW5nID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb3ZlU2xpZGVzKGl0ZW06IEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50LCB3aXRoVHJhbnNpdGlvbjogYm9vbGVhbikge1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgY29uc3QgbmV3T2Zmc2V0ID0gaXRlbS5lbC5uYXRpdmVFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgICAgIGNvbnN0IG5ld0hlaWdodCA9IGl0ZW0uZWwubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgICAgICB0aGlzLl9jb250ZW50SGVpZ2h0ID0gbmV3SGVpZ2h0O1xuICAgICAgICAgICAgdGhpcy50cmFuc2l0aW9uRHVyYXRpb24gPSB3aXRoVHJhbnNpdGlvbiA/IDAuNCA6IDA7XG4gICAgICAgICAgICB0aGlzLnNsaWRlc1RyYW5zZm9ybSA9IGB0cmFuc2xhdGUzZCgwcHgsIC0ke25ld09mZnNldH1weCwgMHB4KWA7XG5cbiAgICAgICAgICAgIHRoaXMuc2V0Q3VycmVudFNsaWRlKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0Q29udGFpbmVyKCkge1xuICAgICAgICB0aGlzLmZpcnN0SGlkZGVuSXRlbS5lbC5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMuZ2V0TGFzdENvbnRlbnRDaGlsZCgpO1xuICAgICAgICB0aGlzLmxhc3RIaWRkZW5JdGVtLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5nZXRGaXJzdENvbnRlbnRDaGlsZCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyMi5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLnNsaWRlc0NvbnRhaW5lcixcbiAgICAgICAgICAgICd0cmFuc2l0aW9uZW5kJyxcbiAgICAgICAgICAgICgpID0+IHRoaXMuY2hlY2tJbmRleCgpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMucmVzaXplVGlja2VyKCk7XG4gICAgICAgIHRoaXMubW92ZVNsaWRlcyh0aGlzLmdldEZpcnN0SXRlbSh0aGlzLm5ld3NUaWNrZXJJdGVtcy50b0FycmF5KCkpLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0luZGV4KCkge1xuICAgICAgICBpZiAodGhpcy5pdGVtSW5kZXggPT09IDEpIHtcbiAgICAgICAgICAgIGxldCBpdGVtID0gdGhpcy5nZXRGaXJzdEl0ZW0odGhpcy5uZXdzVGlja2VySXRlbXMudG9BcnJheSgpKTtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyhpdGVtLCBmYWxzZSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pdGVtSW5kZXggPT09IHRoaXMuaXRlbXNDb3VudCkge1xuICAgICAgICAgICAgbGV0IGl0ZW0gPSB0aGlzLmdldExhc3RJdGVtKHRoaXMubmV3c1RpY2tlckl0ZW1zLnRvQXJyYXkoKSk7XG4gICAgICAgICAgICB0aGlzLm1vdmVTbGlkZXMoaXRlbSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNpemVUaWNrZXIoKSB7XG4gICAgICAgIGxldCBoaWdoZXN0U2xpZGUgPSAwO1xuICAgICAgICB0aGlzLm5ld3NUaWNrZXJJdGVtcy5mb3JFYWNoKChzbGlkZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc2xpZGVIZWlnaHQgPSBzbGlkZS5lbC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgICAgICAgIGhpZ2hlc3RTbGlkZSA9IGhpZ2hlc3RTbGlkZSA8IHNsaWRlSGVpZ2h0ID8gc2xpZGVIZWlnaHQgOiBoaWdoZXN0U2xpZGU7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9jb250YWluZXJIZWlnaHQgPSBoaWdoZXN0U2xpZGUgKyAxMDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE5leHRJbmRleCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5pdGVtSW5kZXggPT09IHRoaXMuaXRlbXNDb3VudCA/IDEgOiArK3RoaXMuaXRlbUluZGV4O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q3VycmVudEl0ZW0oKTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRBbGxJdGVtc0FycmF5KClbdGhpcy5pdGVtSW5kZXhdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHJldkluZGV4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1JbmRleCA9PT0gMSA/IHRoaXMuaXRlbXNDb3VudCA6IC0tdGhpcy5pdGVtSW5kZXg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaXJzdEl0ZW0oaXRlbXM6IEFycmF5PEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50Pik6IEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zLmxlbmd0aCA+IDAgPyBpdGVtc1swXSA6IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRMYXN0SXRlbShpdGVtczogQXJyYXk8RWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQ+KTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQge1xuICAgICAgICByZXR1cm4gaXRlbXNbaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRMYXN0Q29udGVudENoaWxkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ld3NUaWNrZXJJdGVtcy5sZW5ndGggPiAwID8gdGhpcy5uZXdzVGlja2VySXRlbXMuZ2V0KHRoaXMuaXRlbXNDb3VudCAtIDEpLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MIDogJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaXJzdENvbnRlbnRDaGlsZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uZXdzVGlja2VySXRlbXMubGVuZ3RoID4gMCA/IHRoaXMubmV3c1RpY2tlckl0ZW1zLmdldCgwKS5lbC5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA6ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0QWxsSXRlbXNBcnJheSgpOiBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudFtdIHtcbiAgICAgICAgcmV0dXJuIFsuLi5bdGhpcy5maXJzdEhpZGRlbkl0ZW1dLCAuLi50aGlzLm5ld3NUaWNrZXJJdGVtcy50b0FycmF5KCksIC4uLlt0aGlzLmxhc3RIaWRkZW5JdGVtXV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDdXJyZW50U2xpZGUoY3VycmVudEl0ZW06IEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMubmV3c1RpY2tlckl0ZW1zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICBpdGVtLmFyaWFIaWRkZW4gPSB0cnVlO1xuICAgICAgICAgICAgaWYoaXRlbSA9PT0gY3VycmVudEl0ZW0pIHtcbiAgICAgICAgICAgICAgICBpdGVtLmFyaWFIaWRkZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fY29udGFpbmVyXCJcbiAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImNvbnRhaW5lckhlaWdodFwiPlxuICAgIDxkaXYgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX2NvbnRlbnRcIlxuICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImNvbnRlbnRIZWlnaHRcIj5cbiAgICAgICAgPHVsIGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX19zbGlkZXNcIlxuICAgICAgICAgICAgW3N0eWxlLnRyYW5zaXRpb24tZHVyYXRpb24uc109XCJ0cmFuc2l0aW9uRHVyYXRpb25cIlxuICAgICAgICAgICAgW3N0eWxlLnRyYW5zZm9ybV09XCJzbGlkZXNUcmFuc2Zvcm1cIlxuICAgICAgICAgICAgI3NsaWRlc0NvbnRhaW5lciA+XG4gICAgICAgICAgICA8ZWNsLW5ld3MtdGlja2VyLWl0ZW0gI2ZpcnN0SGlkZGVuSXRlbT48L2VjbC1uZXdzLXRpY2tlci1pdGVtPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPGVjbC1uZXdzLXRpY2tlci1pdGVtICNsYXN0SGlkZGVuSXRlbT48L2VjbC1uZXdzLXRpY2tlci1pdGVtPlxuICAgICAgICA8L3VsPlxuICAgIDwvZGl2PlxuPC9kaXY+XG48ZWNsLWljb24gaWNvbj1cImluZm9ybWF0aW9uXCJcbiAgICBzaXplPVwibVwiXG4gICAgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX2ljb25cIj48L2VjbC1pY29uPlxuPGRpdiBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fY291bnRlclwiPlxuICAgIDxzcGFuIGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX19jb3VudGVyLS1jdXJyZW50XCI+IHt7IGl0ZW1JbmRleCB9fTwvc3Bhbj4gXG4gICAge3sgJ2VjbC5jb21tb24uT0YnIHwgdHJhbnNsYXRlIH19XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX2NvdW50ZXItLW1heFwiPnt7IGl0ZW1zQ291bnQgfX08L3NwYW4+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX2NvbnRyb2xzXCI+XG4gICAgPGJ1dHRvbiBlY2xCdXR0b25cbiAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fcHJldlwiXG4gICAgICAgIChjbGljayk9XCJvblByZXZpb3VzKClcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJlY2wtdS1zci1vbmx5XCI+XG4gICAgICAgICAgICB7eyAnZWNsLm5ld3MtdGlja2VyLlBSRVYtTkVXUycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUtMjcwXCI+PC9lY2wtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIGVjbEJ1dHRvblxuICAgICAgICB2YXJpYW50PVwicHJpbWFyeVwiXG4gICAgICAgIGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX190b2dnbGVcIlxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlUGxheSgpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZWNsLXUtc3Itb25seVwiPlxuICAgICAgICAgICAge3sgJ2VjbC5uZXdzLXRpY2tlci5BVVRPLVBMQVknIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGVjbC1pY29uIFtpY29uXT1cInBsYXlpbmcgPyAncGF1c2UnIDogJ3BsYXknXCIgc2l6ZT1cIm1cIj48L2VjbC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gZWNsQnV0dG9uXG4gICAgICAgIHZhcmlhbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX25leHRcIlxuICAgICAgICAoY2xpY2spPVwib25OZXh0KClcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJlY2wtdS1zci1vbmx5XCI+XG4gICAgICAgICAgICB7eyAnZWNsLm5ld3MtdGlja2VyLk5FWFQtTkVXUycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj5cbiAgICAgICAgPC9lY2wtaWNvbj5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmV3cy10aWNrZXIvZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbmV3cy10aWNrZXIvZWNsLW5ld3MtdGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFFWixNQUFNLEVBR04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFFOUUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFlBQVk7SUFDcEQsWUFBbUIsU0FBaUI7UUFDaEMsS0FBSyxFQUFFLENBQUM7UUFETyxjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXBDLENBQUM7Q0FDSjtBQU1ELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUEwQnhELFlBQW9CLFNBQW9CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFEsY0FBUyxHQUFULFNBQVMsQ0FBVztRQXhCOUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUEwQixDQUFDO1FBYWxFLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUdyQixrQkFBYSxHQUFHLElBQUksQ0FB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YUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pHLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRU8sZUFBZSxDQUFDLFdBQXVDO1FBQzNELElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLElBQUcsSUFBSSxLQUFLLFdBQVcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OzZJQTVMUSxzQkFBc0I7aUlBQXRCLHNCQUFzQix3T0FHZCwwQkFBMEIsZ1hDL0IvQyx1aUVBd0RBO0FEdEJtQjtJQUFkLGFBQWE7K0RBQThEO2tHQU5uRSxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0ksaUJBQWlCO2dHQUtqQixVQUFVO3NCQUFuQixNQUFNO2dCQUNzQyxlQUFlO3NCQUEzRCxlQUFlO3VCQUFDLDBCQUEwQjtnQkFDYixlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDQyxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDa0IsZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBR3ZDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPO2dCQStCcEIsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUVsZW1lbnQgfSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0IHsgRWNsQmFzZUV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWwvZWNsLWJhc2UuZXZlbnQnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZWNsLW5ld3MtdGlja2VyLWl0ZW0uY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIEVjbE5ld3NUaWNrZXJJdGVtRXZlbnQgZXh0ZW5kcyBFY2xCYXNlRXZlbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBpdGVtSW5kZXg6IG51bWJlcikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlY2wtbmV3cy10aWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtbmV3cy10aWNrZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xOZXdzVGlja2VyQ29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICBAT3V0cHV0KCkgaXRlbVN3aXRjaCA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsTmV3c1RpY2tlckl0ZW1FdmVudD4oKTtcbiAgICBAQ29udGVudENoaWxkcmVuKEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50KSBuZXdzVGlja2VySXRlbXM6IFF1ZXJ5TGlzdDxFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudD47XG4gICAgQFZpZXdDaGlsZCgnZmlyc3RIaWRkZW5JdGVtJykgZmlyc3RIaWRkZW5JdGVtOiBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudDtcbiAgICBAVmlld0NoaWxkKCdsYXN0SGlkZGVuSXRlbScpIGxhc3RIaWRkZW5JdGVtOiBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudDtcbiAgICBAY29lcmNlRWxlbWVudCBAVmlld0NoaWxkKCdzbGlkZXNDb250YWluZXInKSBzbGlkZXNDb250YWluZXI6IEVsZW1lbnQgfCBhbnk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1uZXdzLXRpY2tlcicpLFxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgaXRlbUluZGV4OiBudW1iZXIgPSAxO1xuICAgIHBsYXlpbmcgPSBmYWxzZTtcbiAgICBzbGlkZXNUcmFuc2Zvcm06IHN0cmluZyA9ICcnO1xuICAgIHRyYW5zaXRpb25EdXJhdGlvbjogbnVtYmVyO1xuICAgIHByaXZhdGUgaW50ZXJ2YWxJZDogYW55O1xuICAgIHByaXZhdGUgUExBWV9JTlRFUlZBTCA9IDUwMDA7XG4gICAgcHJpdmF0ZSBJTklUX0RFTEFZID0gMzAwO1xuICAgIHByaXZhdGUgX2NvbnRhaW5lckhlaWdodDogbnVtYmVyO1xuICAgIHByaXZhdGUgX2NvbnRlbnRIZWlnaHQ6IG51bWJlcjtcbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlTGlzdGVuZXI6ICgpID0+IHZvaWQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyMjogUmVuZGVyZXIyKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRhaW5lckhlaWdodCgpIHsgcmV0dXJuIHRoaXMuX2NvbnRhaW5lckhlaWdodDsgfVxuXG4gICAgZ2V0IGNvbnRlbnRIZWlnaHQoKSB7IHJldHVybiB0aGlzLl9jb250ZW50SGVpZ2h0OyB9XG5cbiAgICBnZXQgaXRlbXNDb3VudCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5uZXdzVGlja2VySXRlbXMubGVuZ3RoO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50KSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZXNpemVUaWNrZXIoKTtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyh0aGlzLmdldEN1cnJlbnRJdGVtKCksIGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW5pdENvbnRhaW5lcigpO1xuICAgICAgICB9LCB0aGlzLklOSVRfREVMQVkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWxJZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51bnN1YnNjcmliZUxpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgb25QcmV2aW91cygpIHtcbiAgICAgICAgdGhpcy5jYW5jZWxBdXRvcGxheSgpO1xuICAgICAgICB0aGlzLnByZXZpb3VzU2xpZGUoKTtcbiAgICB9XG5cbiAgICBwcmV2aW91c1NsaWRlKCkge1xuICAgICAgICB0aGlzLml0ZW1JbmRleCA9IHRoaXMuZ2V0UHJldkluZGV4KCk7XG4gICAgICAgIGlmICh0aGlzLml0ZW1JbmRleCA9PT0gdGhpcy5pdGVtc0NvdW50KSB7XG4gICAgICAgICAgICB0aGlzLm1vdmVTbGlkZXModGhpcy5nZXRGaXJzdEl0ZW0odGhpcy5nZXRBbGxJdGVtc0FycmF5KCkpLCB0cnVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyh0aGlzLmdldEN1cnJlbnRJdGVtKCksIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXRlbVN3aXRjaC5uZXh0KG5ldyBFY2xOZXdzVGlja2VySXRlbUV2ZW50KHRoaXMuaXRlbUluZGV4KSk7XG4gICAgfVxuXG4gICAgb25OZXh0KCkge1xuICAgICAgICB0aGlzLmNhbmNlbEF1dG9wbGF5KCk7XG4gICAgICAgIHRoaXMubmV4dFNsaWRlKCk7XG4gICAgfVxuXG4gICAgbmV4dFNsaWRlKCkge1xuICAgICAgICB0aGlzLml0ZW1JbmRleCA9IHRoaXMuZ2V0TmV4dEluZGV4KCk7XG4gICAgICAgIGlmICh0aGlzLml0ZW1JbmRleCA9PT0gMSkge1xuICAgICAgICAgICAgdGhpcy5tb3ZlU2xpZGVzKHRoaXMuZ2V0TGFzdEl0ZW0odGhpcy5nZXRBbGxJdGVtc0FycmF5KCkpLCB0cnVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyh0aGlzLmdldEN1cnJlbnRJdGVtKCksIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXRlbVN3aXRjaC5uZXh0KG5ldyBFY2xOZXdzVGlja2VySXRlbUV2ZW50KHRoaXMuaXRlbUluZGV4KSk7XG4gICAgfVxuXG4gICAgdG9nZ2xlUGxheSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnBsYXlpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuaW50ZXJ2YWxJZCA9IHNldEludGVydmFsKCgpID0+IHRoaXMubmV4dFNsaWRlKCksIHRoaXMuUExBWV9JTlRFUlZBTCk7XG5cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbElkKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnBsYXlpbmcgPSAhdGhpcy5wbGF5aW5nO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FuY2VsQXV0b3BsYXkoKSB7XG4gICAgICAgIGlmICh0aGlzLmludGVydmFsSWQpIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbElkKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnBsYXlpbmcgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdmVTbGlkZXMoaXRlbTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQsIHdpdGhUcmFuc2l0aW9uOiBib29sZWFuKSB7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdPZmZzZXQgPSBpdGVtLmVsLm5hdGl2ZUVsZW1lbnQub2Zmc2V0VG9wO1xuICAgICAgICAgICAgY29uc3QgbmV3SGVpZ2h0ID0gaXRlbS5lbC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgICAgICAgIHRoaXMuX2NvbnRlbnRIZWlnaHQgPSBuZXdIZWlnaHQ7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25EdXJhdGlvbiA9IHdpdGhUcmFuc2l0aW9uID8gMC40IDogMDtcbiAgICAgICAgICAgIHRoaXMuc2xpZGVzVHJhbnNmb3JtID0gYHRyYW5zbGF0ZTNkKDBweCwgLSR7bmV3T2Zmc2V0fXB4LCAwcHgpYDtcblxuICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50U2xpZGUoaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRDb250YWluZXIoKSB7XG4gICAgICAgIHRoaXMuZmlyc3RIaWRkZW5JdGVtLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5nZXRMYXN0Q29udGVudENoaWxkKCk7XG4gICAgICAgIHRoaXMubGFzdEhpZGRlbkl0ZW0uZWwubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSB0aGlzLmdldEZpcnN0Q29udGVudENoaWxkKCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuc2xpZGVzQ29udGFpbmVyLFxuICAgICAgICAgICAgJ3RyYW5zaXRpb25lbmQnLFxuICAgICAgICAgICAgKCkgPT4gdGhpcy5jaGVja0luZGV4KClcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5yZXNpemVUaWNrZXIoKTtcbiAgICAgICAgdGhpcy5tb3ZlU2xpZGVzKHRoaXMuZ2V0Rmlyc3RJdGVtKHRoaXMubmV3c1RpY2tlckl0ZW1zLnRvQXJyYXkoKSksIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrSW5kZXgoKSB7XG4gICAgICAgIGlmICh0aGlzLml0ZW1JbmRleCA9PT0gMSkge1xuICAgICAgICAgICAgbGV0IGl0ZW0gPSB0aGlzLmdldEZpcnN0SXRlbSh0aGlzLm5ld3NUaWNrZXJJdGVtcy50b0FycmF5KCkpO1xuICAgICAgICAgICAgdGhpcy5tb3ZlU2xpZGVzKGl0ZW0sIGZhbHNlKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLml0ZW1JbmRleCA9PT0gdGhpcy5pdGVtc0NvdW50KSB7XG4gICAgICAgICAgICBsZXQgaXRlbSA9IHRoaXMuZ2V0TGFzdEl0ZW0odGhpcy5uZXdzVGlja2VySXRlbXMudG9BcnJheSgpKTtcbiAgICAgICAgICAgIHRoaXMubW92ZVNsaWRlcyhpdGVtLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2l6ZVRpY2tlcigpIHtcbiAgICAgICAgbGV0IGhpZ2hlc3RTbGlkZSA9IDA7XG4gICAgICAgIHRoaXMubmV3c1RpY2tlckl0ZW1zLmZvckVhY2goKHNsaWRlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzbGlkZUhlaWdodCA9IHNsaWRlLmVsLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgICAgICAgICAgaGlnaGVzdFNsaWRlID0gaGlnaGVzdFNsaWRlIDwgc2xpZGVIZWlnaHQgPyBzbGlkZUhlaWdodCA6IGhpZ2hlc3RTbGlkZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2NvbnRhaW5lckhlaWdodCA9IGhpZ2hlc3RTbGlkZSArIDEwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TmV4dEluZGV4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1JbmRleCA9PT0gdGhpcy5pdGVtc0NvdW50ID8gMSA6ICsrdGhpcy5pdGVtSW5kZXg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDdXJyZW50SXRlbSgpOiBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEFsbEl0ZW1zQXJyYXkoKVt0aGlzLml0ZW1JbmRleF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQcmV2SW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbUluZGV4ID09PSAxID8gdGhpcy5pdGVtc0NvdW50IDogLS10aGlzLml0ZW1JbmRleDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZpcnN0SXRlbShpdGVtczogQXJyYXk8RWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQ+KTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQge1xuICAgICAgICByZXR1cm4gaXRlbXMubGVuZ3RoID4gMCA/IGl0ZW1zWzBdIDogbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldExhc3RJdGVtKGl0ZW1zOiBBcnJheTxFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudD4pOiBFY2xOZXdzVGlja2VySXRlbUNvbXBvbmVudCB7XG4gICAgICAgIHJldHVybiBpdGVtc1tpdGVtcy5sZW5ndGggLSAxXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldExhc3RDb250ZW50Q2hpbGQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmV3c1RpY2tlckl0ZW1zLmxlbmd0aCA+IDAgPyB0aGlzLm5ld3NUaWNrZXJJdGVtcy5nZXQodGhpcy5pdGVtc0NvdW50IC0gMSkuZWwubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgOiAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZpcnN0Q29udGVudENoaWxkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ld3NUaWNrZXJJdGVtcy5sZW5ndGggPiAwID8gdGhpcy5uZXdzVGlja2VySXRlbXMuZ2V0KDApLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MIDogJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBbGxJdGVtc0FycmF5KCk6IEVjbE5ld3NUaWNrZXJJdGVtQ29tcG9uZW50W10ge1xuICAgICAgICByZXR1cm4gWy4uLlt0aGlzLmZpcnN0SGlkZGVuSXRlbV0sIC4uLnRoaXMubmV3c1RpY2tlckl0ZW1zLnRvQXJyYXkoKSwgLi4uW3RoaXMubGFzdEhpZGRlbkl0ZW1dXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEN1cnJlbnRTbGlkZShjdXJyZW50SXRlbTogRWNsTmV3c1RpY2tlckl0ZW1Db21wb25lbnQpIHtcbiAgICAgICAgdGhpcy5uZXdzVGlja2VySXRlbXMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgIGl0ZW0uYXJpYUhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICBpZihpdGVtID09PSBjdXJyZW50SXRlbSkge1xuICAgICAgICAgICAgICAgIGl0ZW0uYXJpYUhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX19jb250YWluZXJcIlxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiY29udGFpbmVySGVpZ2h0XCI+XG4gICAgPGRpdiBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fY29udGVudFwiXG4gICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiY29udGVudEhlaWdodFwiPlxuICAgICAgICA8dWwgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX3NsaWRlc1wiXG4gICAgICAgICAgICBbc3R5bGUudHJhbnNpdGlvbi1kdXJhdGlvbi5zXT1cInRyYW5zaXRpb25EdXJhdGlvblwiXG4gICAgICAgICAgICBbc3R5bGUudHJhbnNmb3JtXT1cInNsaWRlc1RyYW5zZm9ybVwiXG4gICAgICAgICAgICAjc2xpZGVzQ29udGFpbmVyID5cbiAgICAgICAgICAgIDxlY2wtbmV3cy10aWNrZXItaXRlbSAjZmlyc3RIaWRkZW5JdGVtPjwvZWNsLW5ld3MtdGlja2VyLWl0ZW0+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8ZWNsLW5ld3MtdGlja2VyLWl0ZW0gI2xhc3RIaWRkZW5JdGVtPjwvZWNsLW5ld3MtdGlja2VyLWl0ZW0+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxlY2wtaWNvbiBpY29uPVwiaW5mb3JtYXRpb25cIlxuICAgIHNpemU9XCJtXCJcbiAgICBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9faWNvblwiPjwvZWNsLWljb24+XG48ZGl2IGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX19jb3VudGVyXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX2NvdW50ZXItLWN1cnJlbnRcIj4ge3sgaXRlbUluZGV4IH19PC9zcGFuPiBcbiAgICB7eyAnZWNsLmNvbW1vbi5PRicgfCB0cmFuc2xhdGUgfX1cbiAgICA8c3BhbiBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fY291bnRlci0tbWF4XCI+e3sgaXRlbXNDb3VudCB9fTwvc3Bhbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fY29udHJvbHNcIj5cbiAgICA8YnV0dG9uIGVjbEJ1dHRvblxuICAgICAgICB2YXJpYW50PVwicHJpbWFyeVwiXG4gICAgICAgIGNsYXNzPVwiZWNsLW5ld3MtdGlja2VyX19wcmV2XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXMoKVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImVjbC11LXNyLW9ubHlcIj5cbiAgICAgICAgICAgIHt7ICdlY2wubmV3cy10aWNrZXIuUFJFVi1ORVdTJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxlY2wtaWNvbiBpY29uPVwiY29ybmVyLWFycm93XCJcbiAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZS0yNzBcIj48L2VjbC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gZWNsQnV0dG9uXG4gICAgICAgIHZhcmlhbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgY2xhc3M9XCJlY2wtbmV3cy10aWNrZXJfX3RvZ2dsZVwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVQbGF5KClcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJlY2wtdS1zci1vbmx5XCI+XG4gICAgICAgICAgICB7eyAnZWNsLm5ld3MtdGlja2VyLkFVVE8tUExBWScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8ZWNsLWljb24gW2ljb25dPVwicGxheWluZyA/ICdwYXVzZScgOiAncGxheSdcIiBzaXplPVwibVwiPjwvZWNsLWljb24+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiBlY2xCdXR0b25cbiAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICBjbGFzcz1cImVjbC1uZXdzLXRpY2tlcl9fbmV4dFwiXG4gICAgICAgIChjbGljayk9XCJvbk5leHQoKVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImVjbC11LXNyLW9ubHlcIj5cbiAgICAgICAgICAgIHt7ICdlY2wubmV3cy10aWNrZXIuTkVYVC1ORVdTJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxlY2wtaWNvbiBpY29uPVwiY29ybmVyLWFycm93XCJcbiAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZS05MFwiPlxuICAgICAgICA8L2VjbC1pY29uPlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -57,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
57
57
  type: HostBinding,
58
58
  args: ['class']
59
59
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1iYW5uZXIvZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1iYW5uZXIvZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxVQUFVLEVBQW9CLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBTWxFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFKNUQ7O1FBS2EsWUFBTyxHQUErRixTQUFTLENBQUM7UUFFakcsZUFBVSxHQUFtQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBbUIsS0FBSyxDQUFDO0tBeUIvRDtJQXJCRyxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QyxvQkFBb0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUN4RCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQztZQUM3QyxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7NklBNUJRLHNCQUFzQjtpSUFBdEIsc0JBQXNCLHdSQU1HLGdCQUFnQix3RENmdEQsMHJCQWVNOztJREhELGFBQWE7MERBQTRDOztJQUN6RCxhQUFhOzJEQUE4QztrR0FKbkQsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNJLGlCQUFpQjs4QkFJbEIsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDa0IsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVnQyxpQkFBaUI7c0JBQXJFLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUcvQyxVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFF1ZXJ5TGlzdCwgZm9yd2FyZFJlZiwgQWZ0ZXJDb250ZW50SW5pdCwgQ29udGVudENoaWxkcmVuLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IEVjbExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtbGluay9lY2wtbGluay5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1wYWdlLWJhbm5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VjbC1wYWdlLWJhbm5lci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFBhZ2VCYW5uZXJDb21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQElucHV0KCkgdmFyaWFudDogJ2RlZmF1bHQnIHwgJ2ltYWdlJyB8ICdpbWFnZS1zaGFkZScgfCAnaW1hZ2UtZ3JhZGllbnQnIHwgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnd2hpdGUnID0gJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIGltYWdlOiBzdHJpbmc7XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgaXNDZW50ZXJlZDogYm9vbGVhbiB8IGFueSAgPSB0cnVlO1xuICAgIEBjb2VyY2VCb29sZWFuIEBJbnB1dCgpIGlzRnVsbFdpZHRoOiBib29sZWFuIHwgYW55ICA9IGZhbHNlO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbExpbmtEaXJlY3RpdmUpKSBlY2xMaW5rQ29tcG9uZW50czogUXVlcnlMaXN0PEVjbExpbmtEaXJlY3RpdmU+O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtcGFnZS1iYW5uZXInKSxcbiAgICAgICAgICAgIGBlY2wtcGFnZS1iYW5uZXItLSR7dGhpcy52YXJpYW50fWAsXG4gICAgICAgICAgICB0aGlzLmlzQ2VudGVyZWQgPyBgZWNsLXBhZ2UtYmFubmVyLS1jZW50ZXJlZGAgOiAnJyxcbiAgICAgICAgICAgIHRoaXMuaXNGdWxsV2lkdGggPyBgZWNsLXBhZ2UtYmFubmVyLS1mdWxsLXdpZHRoYCA6ICcnLFxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICBpZiAodGhpcy5lY2xMaW5rQ29tcG9uZW50cykge1xuICAgICAgICAgICAgdGhpcy5lY2xMaW5rQ29tcG9uZW50cy5mb3JFYWNoKGxpbmsgPT4ge1xuICAgICAgICAgICAgICAgIGxpbmsuY2xhc3MgPSAnZWNsLXBhZ2UtYmFubmVyX19saW5rLWN0YSc7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBoYXNDdGFMaW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lY2xMaW5rQ29tcG9uZW50cy5sZW5ndGggPiAwO1xuICAgIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJpbWFnZVwiXG4gICAgIGNsYXNzPVwiZWNsLXBhZ2UtYmFubmVyX19pbWFnZVwiXG4gICAgIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoJyArIGltYWdlICsgJyknfVwiPjwvZGl2PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2VjbFBhZ2VCYW5uZXJDcmVkaXRdXCI+PC9uZy1jb250ZW50PlxuPGRpdiBjbGFzcz1cImVjbC1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZWNsLXBhZ2UtYmFubmVyX19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVjbC1wYWdlLWJhbm5lcl9fY29udGVudFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2VjbFBhZ2VCYW5uZXJUaXRsZV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZWNsUGFnZUJhbm5lckRlc2NyaXB0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoYXNDdGFMaW5rXCIgY2xhc3M9XCJlY2wtcGFnZS1iYW5uZXJfX2N0YVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltlY2xMaW5rXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PiJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1iYW5uZXIvZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1iYW5uZXIvZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxVQUFVLEVBQW9CLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBTWxFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFKNUQ7O1FBS2EsWUFBTyxHQUErRixTQUFTLENBQUM7UUFFakcsZUFBVSxHQUFtQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBbUIsS0FBSyxDQUFDO0tBeUIvRDtJQXJCRyxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QyxvQkFBb0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUN4RCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQztZQUM3QyxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7NklBNUJRLHNCQUFzQjtpSUFBdEIsc0JBQXNCLHdSQU1HLGdCQUFnQix3RENmdEQsMHJCQWVNO0FESGE7SUFBZCxhQUFhOzBEQUE0QztBQUMzQztJQUFkLGFBQWE7MkRBQThDO2tHQUpuRCxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0ksaUJBQWlCOzhCQUlsQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNrQixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRWdDLGlCQUFpQjtzQkFBckUsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBRy9DLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgUXVlcnlMaXN0LCBmb3J3YXJkUmVmLCBBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW4sIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTGlua0RpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1saW5rL2VjbC1saW5rLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLXBhZ2UtYmFubmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLXBhZ2UtYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsUGFnZUJhbm5lckNvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKSB2YXJpYW50OiAnZGVmYXVsdCcgfCAnaW1hZ2UnIHwgJ2ltYWdlLXNoYWRlJyB8ICdpbWFnZS1ncmFkaWVudCcgfCAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICd3aGl0ZScgPSAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgaW1hZ2U6IHN0cmluZztcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBpc0NlbnRlcmVkOiBib29sZWFuIHwgYW55ICA9IHRydWU7XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgaXNGdWxsV2lkdGg6IGJvb2xlYW4gfCBhbnkgID0gZmFsc2U7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gRWNsTGlua0RpcmVjdGl2ZSkpIGVjbExpbmtDb21wb25lbnRzOiBRdWVyeUxpc3Q8RWNsTGlua0RpcmVjdGl2ZT47XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1wYWdlLWJhbm5lcicpLFxuICAgICAgICAgICAgYGVjbC1wYWdlLWJhbm5lci0tJHt0aGlzLnZhcmlhbnR9YCxcbiAgICAgICAgICAgIHRoaXMuaXNDZW50ZXJlZCA/IGBlY2wtcGFnZS1iYW5uZXItLWNlbnRlcmVkYCA6ICcnLFxuICAgICAgICAgICAgdGhpcy5pc0Z1bGxXaWR0aCA/IGBlY2wtcGFnZS1iYW5uZXItLWZ1bGwtd2lkdGhgIDogJycsXG4gICAgICAgIF0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmVjbExpbmtDb21wb25lbnRzKSB7XG4gICAgICAgICAgICB0aGlzLmVjbExpbmtDb21wb25lbnRzLmZvckVhY2gobGluayA9PiB7XG4gICAgICAgICAgICAgICAgbGluay5jbGFzcyA9ICdlY2wtcGFnZS1iYW5uZXJfX2xpbmstY3RhJztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGhhc0N0YUxpbmsoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVjbExpbmtDb21wb25lbnRzLmxlbmd0aCA+IDA7XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImltYWdlXCJcbiAgICAgY2xhc3M9XCJlY2wtcGFnZS1iYW5uZXJfX2ltYWdlXCJcbiAgICAgW25nU3R5bGVdPVwieydiYWNrZ3JvdW5kLWltYWdlJzogJ3VybCgnICsgaW1hZ2UgKyAnKSd9XCI+PC9kaXY+XG48bmctY29udGVudCBzZWxlY3Q9XCJbZWNsUGFnZUJhbm5lckNyZWRpdF1cIj48L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwiZWNsLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJlY2wtcGFnZS1iYW5uZXJfX2NvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZWNsLXBhZ2UtYmFubmVyX19jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZWNsUGFnZUJhbm5lclRpdGxlXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltlY2xQYWdlQmFubmVyRGVzY3JpcHRpb25dXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhhc0N0YUxpbmtcIiBjbGFzcz1cImVjbC1wYWdlLWJhbm5lcl9fY3RhXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2VjbExpbmtdXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
53
53
  type: HostBinding,
54
54
  args: ['class']
55
55
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1oZWFkZXIvZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1oZWFkZXIvZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7OztBQVdwRixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBVDVEOztRQVVhLG9CQUFlLEdBQVcsSUFBSSxDQUFDO0tBK0IzQztJQXpCRyxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUN2RCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN2RixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsT0FBTyw2QkFBNkIsQ0FBQztJQUN6QyxDQUFDOzs2SUEvQlEsc0JBQXNCO2lJQUF0QixzQkFBc0IsaVNBSWpCLHNCQUFzQix1RUNsQnhDLG1OQU9NOztJRFNELGFBQWE7MERBQXFGO2tHQUYxRixzQkFBc0I7a0JBVGxDLFNBQVM7K0JBQ0ksaUJBQWlCOzhCQVNsQixlQUFlO3NCQUF2QixLQUFLO2dCQUNrRSxVQUFVO3NCQUFsRSxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLGlDQUFpQztnQkFHdEUsc0JBQXNCO3NCQURyQixZQUFZO3VCQUFDLHNCQUFzQjtnQkFJaEMsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4uL2VjbC1icmVhZGNydW1iL2VjbC1icmVhZGNydW1iLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLXBhZ2UtaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZXM6IFtgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgYF1cbn0pXG5leHBvcnQgY2xhc3MgRWNsUGFnZUhlYWRlckNvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIGJhY2tncm91bmRJbWFnZTogc3RyaW5nID0gbnVsbDtcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmVjbC1wYWdlLWhlYWRlci0tbmVnYXRpdmUnKSBpc05lZ2F0aXZlOiBib29sZWFuIHwgYW55IDtcblxuICAgIEBDb250ZW50Q2hpbGQoRWNsQnJlYWRjcnVtYkNvbXBvbmVudClcbiAgICBlY2xCcmVhZGNydW1iQ29tcG9uZW50OiBFY2xCcmVhZGNydW1iQ29tcG9uZW50O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtcGFnZS1oZWFkZXInKSxcbiAgICAgICAgICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID8gJ2VjbC1wYWdlLWhlYWRlci0taW1hZ2UnIDogJydcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZWNsQnJlYWRjcnVtYkNvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy5lY2xCcmVhZGNydW1iQ29tcG9uZW50LmNsYXNzID0gdGhpcy5nZXRCcmVhZGNydW1iQ2xhc3MoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhhc0JhY2tncm91bmRJbWFnZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5iYWNrZ3JvdW5kSW1hZ2U7XG4gICAgfVxuXG4gICAgZ2V0QmFja2dyb3VuZEltYWdlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0JhY2tncm91bmRJbWFnZSgpID8gJ3VybCgnICsgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgKyAnKScgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgZ2V0QnJlYWRjcnVtYkNsYXNzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnZWNsLXBhZ2UtaGVhZGVyX19icmVhZGNydW1iJztcbiAgICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaGFzQmFja2dyb3VuZEltYWdlKClcIiBcbiAgY2xhc3M9XCJlY2wtcGFnZS1oZWFkZXJfX2JhY2tncm91bmRcIlxuICBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCJnZXRCYWNrZ3JvdW5kSW1hZ2UoKVwiPlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJlY2wtY29udGFpbmVyXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PiJdfQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1oZWFkZXIvZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnZS1oZWFkZXIvZWNsLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7OztBQVdwRixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBVDVEOztRQVVhLG9CQUFlLEdBQVcsSUFBSSxDQUFDO0tBK0IzQztJQXpCRyxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUN2RCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN2RixDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsT0FBTyw2QkFBNkIsQ0FBQztJQUN6QyxDQUFDOzs2SUEvQlEsc0JBQXNCO2lJQUF0QixzQkFBc0IsaVNBSWpCLHNCQUFzQix1RUNsQnhDLG1OQU9NO0FEU2E7SUFBZCxhQUFhOzBEQUFxRjtrR0FGMUYsc0JBQXNCO2tCQVRsQyxTQUFTOytCQUNJLGlCQUFpQjs4QkFTbEIsZUFBZTtzQkFBdkIsS0FBSztnQkFDa0UsVUFBVTtzQkFBbEUsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxpQ0FBaUM7Z0JBR3RFLHNCQUFzQjtzQkFEckIsWUFBWTt1QkFBQyxzQkFBc0I7Z0JBSWhDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IEVjbEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuLi9lY2wtYnJlYWRjcnVtYi9lY2wtYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1wYWdlLWhlYWRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VjbC1wYWdlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVzOiBbYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIGBdXG59KVxuZXhwb3J0IGNsYXNzIEVjbFBhZ2VIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKSBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZyA9IG51bGw7XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtcGFnZS1oZWFkZXItLW5lZ2F0aXZlJykgaXNOZWdhdGl2ZTogYm9vbGVhbiB8IGFueSA7XG5cbiAgICBAQ29udGVudENoaWxkKEVjbEJyZWFkY3J1bWJDb21wb25lbnQpXG4gICAgZWNsQnJlYWRjcnVtYkNvbXBvbmVudDogRWNsQnJlYWRjcnVtYkNvbXBvbmVudDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXBhZ2UtaGVhZGVyJyksXG4gICAgICAgICAgICB0aGlzLmJhY2tncm91bmRJbWFnZSA/ICdlY2wtcGFnZS1oZWFkZXItLWltYWdlJyA6ICcnXG4gICAgICAgIF0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmVjbEJyZWFkY3J1bWJDb21wb25lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuZWNsQnJlYWRjcnVtYkNvbXBvbmVudC5jbGFzcyA9IHRoaXMuZ2V0QnJlYWRjcnVtYkNsYXNzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYXNCYWNrZ3JvdW5kSW1hZ2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuYmFja2dyb3VuZEltYWdlO1xuICAgIH1cblxuICAgIGdldEJhY2tncm91bmRJbWFnZSgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNCYWNrZ3JvdW5kSW1hZ2UoKSA/ICd1cmwoJyArIHRoaXMuYmFja2dyb3VuZEltYWdlICsgJyknIDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGdldEJyZWFkY3J1bWJDbGFzcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ2VjbC1wYWdlLWhlYWRlcl9fYnJlYWRjcnVtYic7XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImhhc0JhY2tncm91bmRJbWFnZSgpXCIgXG4gIGNsYXNzPVwiZWNsLXBhZ2UtaGVhZGVyX19iYWNrZ3JvdW5kXCJcbiAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiZ2V0QmFja2dyb3VuZEltYWdlKClcIj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiZWNsLWNvbnRhaW5lclwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj4iXX0=
@@ -5,15 +5,18 @@ import { coerceBoolean } from '@eui/base';
5
5
  import { ECLBaseDirective } from '../ecl-base.directive';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/common";
8
- import * as i2 from "../ecl-icon/ecl-icon.component";
9
- import * as i3 from "../ecl-link/ecl-link.directive";
10
- import * as i4 from "../ecl-link/ecl-link-label.directive";
11
- import * as i5 from "@ngx-translate/core";
8
+ import * as i2 from "@angular/router";
9
+ import * as i3 from "../ecl-icon/ecl-icon.component";
10
+ import * as i4 from "../ecl-link/ecl-link.directive";
11
+ import * as i5 from "../ecl-link/ecl-link-label.directive";
12
+ import * as i6 from "@ngx-translate/core";
12
13
  export class EclPaginationItemClickEvent extends EclBaseEvent {
13
14
  }
14
15
  export class EclPaginationItemComponent extends ECLBaseDirective {
15
16
  constructor() {
16
17
  super(...arguments);
18
+ this.routerLink = null;
19
+ this.queryParams = null;
17
20
  this.href = '';
18
21
  this.pageClick = new EventEmitter();
19
22
  }
@@ -56,7 +59,7 @@ export class EclPaginationItemComponent extends ECLBaseDirective {
56
59
  }
57
60
  }
58
61
  /** @nocollapse */ EclPaginationItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
59
- /** @nocollapse */ EclPaginationItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0-next.4", type: EclPaginationItemComponent, selector: "ecl-pagination-item", inputs: { label: "label", ariaLabel: "ariaLabel", isCurrent: "isCurrent", isNext: "isNext", isPrevious: "isPrevious", href: "href" }, outputs: { pageClick: "pageClick" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<a *ngIf=\"!isCurrent\"\n eclLink\n (click)=\"onPageClick($event)\"\n variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate:{ pageNumber: label} }}\"\n [href]=\"href\"\n class=\"ecl-pagination__link\">\n <ng-container *ngIf=\"isPrevious\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n </ng-container>\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n <ng-container *ngIf=\"isNext\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n </ng-container>\n</a>\n\n<ng-container *ngIf=\"isCurrent\">\n <span class=\"ecl-pagination__text ecl-pagination__text--summary\"\n aria-current=\"true\">\n {{ label }}\n </span>\n <span class=\"ecl-pagination__text ecl-pagination__text--full\"\n aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate:{ pageNumber: label} }}\n </span>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "isInverted", "ariaHidden", "focusable"] }, { kind: "directive", type: i3.EclLinkDirective, selector: "[eclLink]", inputs: ["variant", "isNegative", "isNoVisited"] }, { kind: "directive", type: i4.EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
62
+ /** @nocollapse */ EclPaginationItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0-next.4", type: EclPaginationItemComponent, selector: "ecl-pagination-item", inputs: { label: "label", ariaLabel: "ariaLabel", isCurrent: "isCurrent", isNext: "isNext", isPrevious: "isPrevious", routerLink: "routerLink", queryParams: "queryParams", href: "href" }, outputs: { pageClick: "pageClick" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<a *ngIf=\"!isCurrent\"\n eclLink\n (click)=\"onPageClick($event)\"\n variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate:{ pageNumber: label} }}\"\n [routerLink]=\"routerLink\"\n [queryParams]=\"queryParams\"\n [href]=\"href\"\n class=\"ecl-pagination__link\">\n <ng-container *ngIf=\"isPrevious\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n </ng-container>\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n <ng-container *ngIf=\"isNext\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n </ng-container>\n</a>\n\n<ng-container *ngIf=\"isCurrent\">\n <span class=\"ecl-pagination__text ecl-pagination__text--summary\"\n aria-current=\"true\">\n {{ label }}\n </span>\n <span class=\"ecl-pagination__text ecl-pagination__text--full\"\n aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate:{ pageNumber: label} }}\n </span>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "isInverted", "ariaHidden", "focusable"] }, { kind: "directive", type: i4.EclLinkDirective, selector: "[eclLink]", inputs: ["variant", "isNegative", "isNoVisited"] }, { kind: "directive", type: i5.EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
60
63
  __decorate([
61
64
  coerceBoolean
62
65
  ], EclPaginationItemComponent.prototype, "isCurrent", void 0);
@@ -68,7 +71,7 @@ __decorate([
68
71
  ], EclPaginationItemComponent.prototype, "isPrevious", void 0);
69
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationItemComponent, decorators: [{
70
73
  type: Component,
71
- args: [{ selector: 'ecl-pagination-item', template: "<a *ngIf=\"!isCurrent\"\n eclLink\n (click)=\"onPageClick($event)\"\n variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate:{ pageNumber: label} }}\"\n [href]=\"href\"\n class=\"ecl-pagination__link\">\n <ng-container *ngIf=\"isPrevious\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n </ng-container>\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n <ng-container *ngIf=\"isNext\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n </ng-container>\n</a>\n\n<ng-container *ngIf=\"isCurrent\">\n <span class=\"ecl-pagination__text ecl-pagination__text--summary\"\n aria-current=\"true\">\n {{ label }}\n </span>\n <span class=\"ecl-pagination__text ecl-pagination__text--full\"\n aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate:{ pageNumber: label} }}\n </span>\n</ng-container>\n" }]
74
+ args: [{ selector: 'ecl-pagination-item', template: "<a *ngIf=\"!isCurrent\"\n eclLink\n (click)=\"onPageClick($event)\"\n variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate:{ pageNumber: label} }}\"\n [routerLink]=\"routerLink\"\n [queryParams]=\"queryParams\"\n [href]=\"href\"\n class=\"ecl-pagination__link\">\n <ng-container *ngIf=\"isPrevious\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n </ng-container>\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n <ng-container *ngIf=\"isNext\">\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n </ng-container>\n</a>\n\n<ng-container *ngIf=\"isCurrent\">\n <span class=\"ecl-pagination__text ecl-pagination__text--summary\"\n aria-current=\"true\">\n {{ label }}\n </span>\n <span class=\"ecl-pagination__text ecl-pagination__text--full\"\n aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate:{ pageNumber: label} }}\n </span>\n</ng-container>\n" }]
72
75
  }], propDecorators: { cssClasses: [{
73
76
  type: HostBinding,
74
77
  args: ['class']
@@ -82,9 +85,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
82
85
  type: Input
83
86
  }], isPrevious: [{
84
87
  type: Input
88
+ }], routerLink: [{
89
+ type: Input
90
+ }], queryParams: [{
91
+ type: Input
85
92
  }], href: [{
86
93
  type: Input
87
94
  }], pageClick: [{
88
95
  type: Output
89
96
  }] } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFFekQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLFlBQVk7Q0FBSTtBQU1qRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsZ0JBQWdCO0lBSmhFOztRQXFCYSxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBRWpCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztLQWdDekU7SUFqREcsSUFDSSxVQUFVO1FBQ1YsT0FBTztZQUNILEtBQUssQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7WUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsK0JBQStCLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDMUQsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQVdELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSwyQkFBMkIsRUFBRSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWixHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRUQsdUJBQXVCO1FBQ25CLElBQUksR0FBRyxHQUFXLEVBQUUsQ0FBQztRQUVyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixHQUFHLEdBQUcsZ0NBQWdDLENBQUM7U0FDMUM7YUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDeEIsR0FBRyxHQUFHLGdDQUFnQyxDQUFDO1NBQzFDO2FBQU07WUFDSCxHQUFHLEdBQUcsMkJBQTJCLENBQUM7U0FDckM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLEdBQUcsR0FBVyxFQUFFLENBQUM7UUFFckIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2IsR0FBRyxHQUFHLHFCQUFxQixDQUFDO1NBQy9CO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3hCLEdBQUcsR0FBRyx5QkFBeUIsQ0FBQztTQUNuQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQzs7aUpBbERRLDBCQUEwQjtxSUFBMUIsMEJBQTBCLG1UQ1h2QyxvZ0NBMEJBOztJRERLLGFBQWE7NkRBQW9DOztJQUNqRCxhQUFhOzBEQUFpQzs7SUFDOUMsYUFBYTs4REFBcUM7a0dBaEIxQywwQkFBMEI7a0JBSnRDLFNBQVM7K0JBQ0kscUJBQXFCOzhCQU0zQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTztnQkFVWCxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDa0IsU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDWixJQUFJO3NCQUFaLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWNsQmFzZUV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWwvZWNsLWJhc2UuZXZlbnQnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNsYXNzIEVjbFBhZ2luYXRpb25JdGVtQ2xpY2tFdmVudCBleHRlbmRzIEVjbEJhc2VFdmVudCB7IH1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlY2wtcGFnaW5hdGlvbi1pdGVtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFBhZ2luYXRpb25JdGVtQ29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1wYWdpbmF0aW9uX19pdGVtJyksXG4gICAgICAgICAgICB0aGlzLmlzQ3VycmVudCA/ICdlY2wtcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCcgOiAnJyxcbiAgICAgICAgICAgIHRoaXMuaXNOZXh0ID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1uZXh0JyA6ICcnLFxuICAgICAgICAgICAgdGhpcy5pc1ByZXZpb3VzID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91cycgOiAnJyxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgaXNDdXJyZW50OiBib29sZWFuIHwgYW55IDtcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBpc05leHQ6IGJvb2xlYW4gfCBhbnkgO1xuICAgIEBjb2VyY2VCb29sZWFuIEBJbnB1dCgpIGlzUHJldmlvdXM6IGJvb2xlYW4gfCBhbnkgO1xuICAgIEBJbnB1dCgpIGhyZWY6IHN0cmluZyA9ICcnO1xuXG4gICAgQE91dHB1dCgpIHBhZ2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsUGFnaW5hdGlvbkl0ZW1DbGlja0V2ZW50PigpO1xuXG4gICAgb25QYWdlQ2xpY2soZXZ0KSB7XG4gICAgICAgIHRoaXMucGFnZUNsaWNrLm5leHQobmV3IEVjbFBhZ2luYXRpb25JdGVtQ2xpY2tFdmVudCgpKTtcbiAgICAgICAgaWYgKCF0aGlzLmhyZWYpIHtcbiAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0aTE4blBhZ2VBcmlhTGFiZWxLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGtleTogc3RyaW5nID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uR08tVE8tTkVYVC1QQUdFJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzUHJldmlvdXMpIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5HTy1UTy1QUkVWLVBBR0UnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAga2V5ID0gJ2VjbC5wYWdpbmF0aW9uLkdPLVRPLVBBR0UnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxuXG4gICAgZ2V0aTE4blBhZ2VMYWJlbEtleSgpOiBzdHJpbmcge1xuICAgICAgICBsZXQga2V5OiBzdHJpbmcgPSAnJztcblxuICAgICAgICBpZiAodGhpcy5pc05leHQpIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5ORVhUJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzUHJldmlvdXMpIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5QUkVWSU9VUyc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGtleTtcbiAgICB9XG59XG4iLCI8YSAqbmdJZj1cIiFpc0N1cnJlbnRcIlxuICAgIGVjbExpbmtcbiAgICAoY2xpY2spPVwib25QYWdlQ2xpY2soJGV2ZW50KVwiXG4gICAgdmFyaWFudD1cInN0YW5kYWxvbmVcIlxuICAgIGF0dHIuYXJpYS1sYWJlbD1cInt7IGFyaWFMYWJlbCB8fCBnZXRpMThuUGFnZUFyaWFMYWJlbEtleSgpIHwgdHJhbnNsYXRlOnsgcGFnZU51bWJlcjogbGFiZWx9IH19XCJcbiAgICBbaHJlZl09XCJocmVmXCJcbiAgICBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX19saW5rXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzUHJldmlvdXNcIj5cbiAgICAgICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtMjcwXCI+PC9lY2wtaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc05leHRcIj5cbiAgICAgICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9hPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiaXNDdXJyZW50XCI+XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtcGFnaW5hdGlvbl9fdGV4dCBlY2wtcGFnaW5hdGlvbl9fdGV4dC0tc3VtbWFyeVwiXG4gICAgICAgIGFyaWEtY3VycmVudD1cInRydWVcIj5cbiAgICAgICAge3sgbGFiZWwgfX1cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtcGFnaW5hdGlvbl9fdGV4dCBlY2wtcGFnaW5hdGlvbl9fdGV4dC0tZnVsbFwiXG4gICAgICAgIGFyaWEtY3VycmVudD1cInRydWVcIj5cbiAgICAgICAge3sgJ2VjbC5wYWdpbmF0aW9uLlBBR0UnIHwgdHJhbnNsYXRlOnsgcGFnZU51bWJlcjogbGFiZWx9IH19XG4gICAgPC9zcGFuPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7O0FBRXpELE1BQU0sT0FBTywyQkFBNEIsU0FBUSxZQUFZO0NBQUk7QUFNakUsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQUpoRTs7UUFxQmEsZUFBVSxHQUFRLElBQUksQ0FBQztRQUN2QixnQkFBVyxHQUFRLElBQUksQ0FBQztRQUN4QixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBRWpCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztLQWdDekU7SUFuREcsSUFDSSxVQUFVO1FBQ1YsT0FBTztZQUNILEtBQUssQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7WUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsK0JBQStCLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDMUQsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQWFELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSwyQkFBMkIsRUFBRSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWixHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRUQsdUJBQXVCO1FBQ25CLElBQUksR0FBRyxHQUFXLEVBQUUsQ0FBQztRQUVyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixHQUFHLEdBQUcsZ0NBQWdDLENBQUM7U0FDMUM7YUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDeEIsR0FBRyxHQUFHLGdDQUFnQyxDQUFDO1NBQzFDO2FBQU07WUFDSCxHQUFHLEdBQUcsMkJBQTJCLENBQUM7U0FDckM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLEdBQUcsR0FBVyxFQUFFLENBQUM7UUFFckIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2IsR0FBRyxHQUFHLHFCQUFxQixDQUFDO1NBQy9CO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3hCLEdBQUcsR0FBRyx5QkFBeUIsQ0FBQztTQUNuQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQzs7aUpBcERRLDBCQUEwQjtxSUFBMUIsMEJBQTBCLHlXQ1h2Qyx3a0NBNEJBO0FESG1CO0lBQWQsYUFBYTs2REFBb0M7QUFDbkM7SUFBZCxhQUFhOzBEQUFpQztBQUNoQztJQUFkLGFBQWE7OERBQXFDO2tHQWhCMUMsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNJLHFCQUFxQjs4QkFNM0IsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU87Z0JBVVgsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ2tCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ1osVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFY2xCYXNlRXZlbnQgfSBmcm9tICcuLi8uLi9tb2RlbC9lY2wtYmFzZS5ldmVudCc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkl0ZW1DbGlja0V2ZW50IGV4dGVuZHMgRWNsQmFzZUV2ZW50IHsgfVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1wYWdpbmF0aW9uLWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtcGFnaW5hdGlvbi1pdGVtLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkl0ZW1Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIHtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXBhZ2luYXRpb25fX2l0ZW0nKSxcbiAgICAgICAgICAgIHRoaXMuaXNDdXJyZW50ID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50JyA6ICcnLFxuICAgICAgICAgICAgdGhpcy5pc05leHQgPyAnZWNsLXBhZ2luYXRpb25fX2l0ZW0tLW5leHQnIDogJycsXG4gICAgICAgICAgICB0aGlzLmlzUHJldmlvdXMgPyAnZWNsLXBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzJyA6ICcnLFxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcbiAgICBAY29lcmNlQm9vbGVhbiBASW5wdXQoKSBpc0N1cnJlbnQ6IGJvb2xlYW4gfCBhbnkgO1xuICAgIEBjb2VyY2VCb29sZWFuIEBJbnB1dCgpIGlzTmV4dDogYm9vbGVhbiB8IGFueSA7XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgaXNQcmV2aW91czogYm9vbGVhbiB8IGFueSA7XG4gICAgQElucHV0KCkgcm91dGVyTGluazogYW55ID0gbnVsbDtcbiAgICBASW5wdXQoKSBxdWVyeVBhcmFtczogYW55ID0gbnVsbDtcbiAgICBASW5wdXQoKSBocmVmOiBzdHJpbmcgPSAnJztcblxuICAgIEBPdXRwdXQoKSBwYWdlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFBhZ2luYXRpb25JdGVtQ2xpY2tFdmVudD4oKTtcblxuICAgIG9uUGFnZUNsaWNrKGV2dCkge1xuICAgICAgICB0aGlzLnBhZ2VDbGljay5uZXh0KG5ldyBFY2xQYWdpbmF0aW9uSXRlbUNsaWNrRXZlbnQoKSk7XG4gICAgICAgIGlmICghdGhpcy5ocmVmKSB7XG4gICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldGkxOG5QYWdlQXJpYUxhYmVsS2V5KCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBrZXk6IHN0cmluZyA9ICcnO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTmV4dCkge1xuICAgICAgICAgICAga2V5ID0gJ2VjbC5wYWdpbmF0aW9uLkdPLVRPLU5FWFQtUEFHRSc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1ByZXZpb3VzKSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uR08tVE8tUFJFVi1QQUdFJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5HTy1UTy1QQUdFJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ga2V5O1xuICAgIH1cblxuICAgIGdldGkxOG5QYWdlTGFiZWxLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGtleTogc3RyaW5nID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uTkVYVCc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1ByZXZpb3VzKSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uUFJFVklPVVMnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxufVxuIiwiPGEgKm5nSWY9XCIhaXNDdXJyZW50XCJcbiAgICBlY2xMaW5rXG4gICAgKGNsaWNrKT1cIm9uUGFnZUNsaWNrKCRldmVudClcIlxuICAgIHZhcmlhbnQ9XCJzdGFuZGFsb25lXCJcbiAgICBhdHRyLmFyaWEtbGFiZWw9XCJ7eyBhcmlhTGFiZWwgfHwgZ2V0aTE4blBhZ2VBcmlhTGFiZWxLZXkoKSB8IHRyYW5zbGF0ZTp7IHBhZ2VOdW1iZXI6IGxhYmVsfSB9fVwiXG4gICAgW3JvdXRlckxpbmtdPVwicm91dGVyTGlua1wiXG4gICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICBbaHJlZl09XCJocmVmXCJcbiAgICBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX19saW5rXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzUHJldmlvdXNcIj5cbiAgICAgICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtMjcwXCI+PC9lY2wtaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc05leHRcIj5cbiAgICAgICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9hPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiaXNDdXJyZW50XCI+XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtcGFnaW5hdGlvbl9fdGV4dCBlY2wtcGFnaW5hdGlvbl9fdGV4dC0tc3VtbWFyeVwiXG4gICAgICAgIGFyaWEtY3VycmVudD1cInRydWVcIj5cbiAgICAgICAge3sgbGFiZWwgfX1cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJlY2wtcGFnaW5hdGlvbl9fdGV4dCBlY2wtcGFnaW5hdGlvbl9fdGV4dC0tZnVsbFwiXG4gICAgICAgIGFyaWEtY3VycmVudD1cInRydWVcIj5cbiAgICAgICAge3sgJ2VjbC5wYWdpbmF0aW9uLlBBR0UnIHwgdHJhbnNsYXRlOnsgcGFnZU51bWJlcjogbGFiZWx9IH19XG4gICAgPC9zcGFuPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -66,7 +66,7 @@ export class EclPaginationComponent extends ECLBaseDirective {
66
66
  }
67
67
  }
68
68
  /** @nocollapse */ EclPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
69
- /** @nocollapse */ EclPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0-next.4", type: EclPaginationComponent, selector: "ecl-pagination", inputs: { mode: "mode", totalItems: "totalItems", pageSize: "pageSize", currentPage: "currentPage", pageWindowSize: "pageWindowSize" }, outputs: { page: "page" }, host: { properties: { "class.ecl-pagination": "this.cmpClass", "attr.role": "this.role" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ul class=\"ecl-pagination__list\">\n <ng-container *ngIf=\"isModeAuto()\">\n <ecl-pagination-item \n *ngIf=\"model.hasPreviousPage()\"\n [isPrevious]=\"true\" \n (click)=\"onPreviousPage()\">\n </ecl-pagination-item>\n\n <ecl-pagination-item \n *ngFor=\"let page of model.getPages()\" \n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (click)=\"onPage(page)\">\n </ecl-pagination-item>\n\n <ecl-pagination-item \n *ngIf=\"model.hasNextPage()\"\n [isNext]=\"true\" \n (click)=\"onNextPage()\">\n </ecl-pagination-item>\n </ng-container>\n\n <ng-container *ngIf=\"!isModeAuto()\">\n <ng-content></ng-content>\n </ng-container>\n</ul>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EclPaginationItemComponent, selector: "ecl-pagination-item", inputs: ["label", "ariaLabel", "isCurrent", "isNext", "isPrevious", "href"], outputs: ["pageClick"] }] });
69
+ /** @nocollapse */ EclPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0-next.4", type: EclPaginationComponent, selector: "ecl-pagination", inputs: { mode: "mode", totalItems: "totalItems", pageSize: "pageSize", currentPage: "currentPage", pageWindowSize: "pageWindowSize" }, outputs: { page: "page" }, host: { properties: { "class.ecl-pagination": "this.cmpClass", "attr.role": "this.role" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ul class=\"ecl-pagination__list\">\n <ng-container *ngIf=\"isModeAuto()\">\n <ecl-pagination-item \n *ngIf=\"model.hasPreviousPage()\"\n [isPrevious]=\"true\" \n (click)=\"onPreviousPage()\">\n </ecl-pagination-item>\n\n <ecl-pagination-item \n *ngFor=\"let page of model.getPages()\" \n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (click)=\"onPage(page)\">\n </ecl-pagination-item>\n\n <ecl-pagination-item \n *ngIf=\"model.hasNextPage()\"\n [isNext]=\"true\" \n (click)=\"onNextPage()\">\n </ecl-pagination-item>\n </ng-container>\n\n <ng-container *ngIf=\"!isModeAuto()\">\n <ng-content></ng-content>\n </ng-container>\n</ul>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EclPaginationItemComponent, selector: "ecl-pagination-item", inputs: ["label", "ariaLabel", "isCurrent", "isNext", "isPrevious", "routerLink", "queryParams", "href"], outputs: ["pageClick"] }] });
70
70
  __decorate([
71
71
  coerceNumber
72
72
  ], EclPaginationComponent.prototype, "totalItems", void 0);
@@ -101,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4",
101
101
  type: HostBinding,
102
102
  args: ['attr.role']
103
103
  }] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1wYWdpbmF0aW9uL2VjbC1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnaW5hdGlvbi9lY2wtcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBRXpELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBQ2hELFlBQ29CLElBQVksRUFDWixXQUFtQixFQUNuQixTQUFpQjtRQUNqQyxLQUFLLEVBQUUsQ0FBQztRQUhRLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXJDLENBQUM7Q0FDSjtBQVVELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFUNUQ7O1FBVWEsU0FBSSxHQUFzQixRQUFRLENBQUM7UUFDckIsZUFBVSxHQUFpQixhQUFhLENBQUMsVUFBVSxDQUFDO1FBQ3BELGFBQVEsR0FBaUIsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUNoRCxnQkFBVyxHQUFpQixhQUFhLENBQUMsV0FBVyxDQUFDO1FBQ3RELG1CQUFjLEdBQWlCLGFBQWEsQ0FBQyxjQUFjLENBQUM7UUFFekUsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRW5CLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDMUIsU0FBSSxHQUFHLFlBQVksQ0FBQztRQUV2QyxVQUFLLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO0tBaUR6QztJQS9DRyxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDbkIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO2dCQUM5QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDdEMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTyxhQUFhO1FBQ2pCLE1BQU0sR0FBRyxHQUFHLElBQUksa0JBQWtCLENBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQzVCLENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDOzs2SUE1RFEsc0JBQXNCO2lJQUF0QixzQkFBc0Isa1dDdkJuQyx3MEJBMEJBOztJRERLLFlBQVk7MERBQThEOztJQUMxRSxZQUFZO3dEQUEwRDs7SUFDdEUsWUFBWTsyREFBZ0U7O0lBQzVFLFlBQVk7OERBQXNFO2tHQUwxRSxzQkFBc0I7a0JBVGxDLFNBQVM7K0JBQ0ksZ0JBQWdCOzhCQVNqQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ2lCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRVYsSUFBSTtzQkFBYixNQUFNO2dCQUU4QixRQUFRO3NCQUE1QyxXQUFXO3VCQUFDLHNCQUFzQjtnQkFDVCxJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZWZhdWx0Q29uZmlnLCBFdWlQYWdpbmF0aW9uIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsL2VjbC1iYXNlLmV2ZW50JztcbmltcG9ydCB7IGNvZXJjZU51bWJlciB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNsYXNzIEVjbFBhZ2luYXRpb25FdmVudCBleHRlbmRzIEVjbEJhc2VFdmVudCB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBwYWdlOiBudW1iZXIsXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBzaG93aW5nRnJvbTogbnVtYmVyLFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd2luZ1RvOiBudW1iZXIpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG59XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1wYWdpbmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLXBhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlczogW2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICBgXVxufSlcbmV4cG9ydCBjbGFzcyBFY2xQYWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBtb2RlOiAnbWFudWFsJyB8ICdhdXRvJyA9ICdtYW51YWwnO1xuICAgIEBjb2VyY2VOdW1iZXIgQElucHV0KCkgdG90YWxJdGVtczogbnVtYmVyIHwgYW55ID0gRGVmYXVsdENvbmZpZy50b3RhbEl0ZW1zO1xuICAgIEBjb2VyY2VOdW1iZXIgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciB8IGFueSA9IERlZmF1bHRDb25maWcucGFnZVNpemU7XG4gICAgQGNvZXJjZU51bWJlciBASW5wdXQoKSBjdXJyZW50UGFnZTogbnVtYmVyIHwgYW55ID0gRGVmYXVsdENvbmZpZy5jdXJyZW50UGFnZTtcbiAgICBAY29lcmNlTnVtYmVyIEBJbnB1dCgpIHBhZ2VXaW5kb3dTaXplOiBudW1iZXIgfCBhbnkgPSBEZWZhdWx0Q29uZmlnLnBhZ2VXaW5kb3dTaXplO1xuXG4gICAgQE91dHB1dCgpIHBhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFBhZ2luYXRpb25FdmVudD4oKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZWNsLXBhZ2luYXRpb24nKSBjbXBDbGFzcyA9IHRydWVcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAnbmF2aWdhdGlvbic7XG5cbiAgICBwdWJsaWMgbW9kZWwgPSBFdWlQYWdpbmF0aW9uLmNyZWF0ZSgpO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9kZUF1dG8oKSkge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5maXJlUGFnZUV2ZW50KCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKCkge1xuICAgICAgICBpZiAodGhpcy5pc01vZGVBdXRvKCkpIHtcbiAgICAgICAgICAgIHRoaXMubW9kZWwgPSBFdWlQYWdpbmF0aW9uLmNyZWF0ZSh7XG4gICAgICAgICAgICAgICAgdG90YWxJdGVtczogdGhpcy50b3RhbEl0ZW1zLFxuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLFxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYWdlOiB0aGlzLmN1cnJlbnRQYWdlLFxuICAgICAgICAgICAgICAgIHBhZ2VXaW5kb3dTaXplOiB0aGlzLnBhZ2VXaW5kb3dTaXplXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uUHJldmlvdXNQYWdlKCkge1xuICAgICAgICB0aGlzLm1vZGVsLmdvVG9QcmV2aW91c1BhZ2UoKTtcbiAgICAgICAgdGhpcy5maXJlUGFnZUV2ZW50KCk7XG4gICAgfVxuXG4gICAgb25OZXh0UGFnZSgpIHtcbiAgICAgICAgdGhpcy5tb2RlbC5nb1RvTmV4dFBhZ2UoKTtcbiAgICAgICAgdGhpcy5maXJlUGFnZUV2ZW50KCk7XG4gICAgfVxuXG4gICAgb25QYWdlKHBhZ2U6IG51bWJlcikge1xuICAgICAgICB0aGlzLm1vZGVsLmdvVG9QYWdlKHBhZ2UpO1xuICAgICAgICB0aGlzLmZpcmVQYWdlRXZlbnQoKTtcbiAgICB9XG5cbiAgICBpc01vZGVBdXRvKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlID09ICdhdXRvJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpcmVQYWdlRXZlbnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGV2dCA9IG5ldyBFY2xQYWdpbmF0aW9uRXZlbnQoXG4gICAgICAgICAgICB0aGlzLm1vZGVsLmdldEN1cnJlbnRQYWdlKCksXG4gICAgICAgICAgICB0aGlzLm1vZGVsLmdldFNob3dpbmdGcm9tKCksXG4gICAgICAgICAgICB0aGlzLm1vZGVsLmdldFNob3dpbmdUbygpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5wYWdlLm5leHQoZXZ0KTtcbiAgICB9XG59XG4iLCI8dWwgY2xhc3M9XCJlY2wtcGFnaW5hdGlvbl9fbGlzdFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc01vZGVBdXRvKClcIj5cbiAgICAgICAgPGVjbC1wYWdpbmF0aW9uLWl0ZW0gXG4gICAgICAgICAgICAqbmdJZj1cIm1vZGVsLmhhc1ByZXZpb3VzUGFnZSgpXCJcbiAgICAgICAgICAgIFtpc1ByZXZpb3VzXT1cInRydWVcIiBcbiAgICAgICAgICAgIChjbGljayk9XCJvblByZXZpb3VzUGFnZSgpXCI+XG4gICAgICAgIDwvZWNsLXBhZ2luYXRpb24taXRlbT5cblxuICAgICAgICA8ZWNsLXBhZ2luYXRpb24taXRlbSBcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBwYWdlIG9mIG1vZGVsLmdldFBhZ2VzKClcIiBcbiAgICAgICAgICAgIFtsYWJlbF09XCJwYWdlLnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgW2lzQ3VycmVudF09XCJtb2RlbC5nZXRDdXJyZW50UGFnZSgpID09PSBwYWdlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblBhZ2UocGFnZSlcIj5cbiAgICAgICAgPC9lY2wtcGFnaW5hdGlvbi1pdGVtPlxuXG4gICAgICAgIDxlY2wtcGFnaW5hdGlvbi1pdGVtIFxuICAgICAgICAgICAgKm5nSWY9XCJtb2RlbC5oYXNOZXh0UGFnZSgpXCJcbiAgICAgICAgICAgIFtpc05leHRdPVwidHJ1ZVwiIFxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uTmV4dFBhZ2UoKVwiPlxuICAgICAgICA8L2VjbC1wYWdpbmF0aW9uLWl0ZW0+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTW9kZUF1dG8oKVwiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG48L3VsPlxuIl19
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1wYWdpbmF0aW9uL2VjbC1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtcGFnaW5hdGlvbi9lY2wtcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBRXpELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBQ2hELFlBQ29CLElBQVksRUFDWixXQUFtQixFQUNuQixTQUFpQjtRQUNqQyxLQUFLLEVBQUUsQ0FBQztRQUhRLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXJDLENBQUM7Q0FDSjtBQVVELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFUNUQ7O1FBVWEsU0FBSSxHQUFzQixRQUFRLENBQUM7UUFDckIsZUFBVSxHQUFpQixhQUFhLENBQUMsVUFBVSxDQUFDO1FBQ3BELGFBQVEsR0FBaUIsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUNoRCxnQkFBVyxHQUFpQixhQUFhLENBQUMsV0FBVyxDQUFDO1FBQ3RELG1CQUFjLEdBQWlCLGFBQWEsQ0FBQyxjQUFjLENBQUM7UUFFekUsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRW5CLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDMUIsU0FBSSxHQUFHLFlBQVksQ0FBQztRQUV2QyxVQUFLLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO0tBaUR6QztJQS9DRyxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDbkIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO2dCQUM5QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDdEMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTyxhQUFhO1FBQ2pCLE1BQU0sR0FBRyxHQUFHLElBQUksa0JBQWtCLENBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQzVCLENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDOzs2SUE1RFEsc0JBQXNCO2lJQUF0QixzQkFBc0Isa1dDdkJuQyx3MEJBMEJBO0FERGtCO0lBQWIsWUFBWTswREFBOEQ7QUFDN0Q7SUFBYixZQUFZO3dEQUEwRDtBQUN6RDtJQUFiLFlBQVk7MkRBQWdFO0FBQy9EO0lBQWIsWUFBWTs4REFBc0U7a0dBTDFFLHNCQUFzQjtrQkFUbEMsU0FBUzsrQkFDSSxnQkFBZ0I7OEJBU2pCLElBQUk7c0JBQVosS0FBSztnQkFDaUIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFVixJQUFJO3NCQUFiLE1BQU07Z0JBRThCLFFBQVE7c0JBQTVDLFdBQVc7dUJBQUMsc0JBQXNCO2dCQUNULElBQUk7c0JBQTdCLFdBQVc7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlZmF1bHRDb25maWcsIEV1aVBhZ2luYXRpb24gfSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0IHsgRWNsQmFzZUV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWwvZWNsLWJhc2UuZXZlbnQnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyIH0gZnJvbSAnQGV1aS9iYXNlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkV2ZW50IGV4dGVuZHMgRWNsQmFzZUV2ZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhZ2U6IG51bWJlcixcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHNob3dpbmdGcm9tOiBudW1iZXIsXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBzaG93aW5nVG86IG51bWJlcikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbn1cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLXBhZ2luYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVzOiBbYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIGBdXG59KVxuZXhwb3J0IGNsYXNzIEVjbFBhZ2luYXRpb25Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIG1vZGU6ICdtYW51YWwnIHwgJ2F1dG8nID0gJ21hbnVhbCc7XG4gICAgQGNvZXJjZU51bWJlciBASW5wdXQoKSB0b3RhbEl0ZW1zOiBudW1iZXIgfCBhbnkgPSBEZWZhdWx0Q29uZmlnLnRvdGFsSXRlbXM7XG4gICAgQGNvZXJjZU51bWJlciBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyIHwgYW55ID0gRGVmYXVsdENvbmZpZy5wYWdlU2l6ZTtcbiAgICBAY29lcmNlTnVtYmVyIEBJbnB1dCgpIGN1cnJlbnRQYWdlOiBudW1iZXIgfCBhbnkgPSBEZWZhdWx0Q29uZmlnLmN1cnJlbnRQYWdlO1xuICAgIEBjb2VyY2VOdW1iZXIgQElucHV0KCkgcGFnZVdpbmRvd1NpemU6IG51bWJlciB8IGFueSA9IERlZmF1bHRDb25maWcucGFnZVdpbmRvd1NpemU7XG5cbiAgICBAT3V0cHV0KCkgcGFnZSA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsUGFnaW5hdGlvbkV2ZW50PigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtcGFnaW5hdGlvbicpIGNtcENsYXNzID0gdHJ1ZVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJykgcm9sZSA9ICduYXZpZ2F0aW9uJztcblxuICAgIHB1YmxpYyBtb2RlbCA9IEV1aVBhZ2luYXRpb24uY3JlYXRlKCk7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2RlQXV0bygpKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpcmVQYWdlRXZlbnQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9kZUF1dG8oKSkge1xuICAgICAgICAgICAgdGhpcy5tb2RlbCA9IEV1aVBhZ2luYXRpb24uY3JlYXRlKHtcbiAgICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiB0aGlzLnRvdGFsSXRlbXMsXG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IHRoaXMucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsXG4gICAgICAgICAgICAgICAgcGFnZVdpbmRvd1NpemU6IHRoaXMucGFnZVdpbmRvd1NpemVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25QcmV2aW91c1BhZ2UoKSB7XG4gICAgICAgIHRoaXMubW9kZWwuZ29Ub1ByZXZpb3VzUGFnZSgpO1xuICAgICAgICB0aGlzLmZpcmVQYWdlRXZlbnQoKTtcbiAgICB9XG5cbiAgICBvbk5leHRQYWdlKCkge1xuICAgICAgICB0aGlzLm1vZGVsLmdvVG9OZXh0UGFnZSgpO1xuICAgICAgICB0aGlzLmZpcmVQYWdlRXZlbnQoKTtcbiAgICB9XG5cbiAgICBvblBhZ2UocGFnZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubW9kZWwuZ29Ub1BhZ2UocGFnZSk7XG4gICAgICAgIHRoaXMuZmlyZVBhZ2VFdmVudCgpO1xuICAgIH1cblxuICAgIGlzTW9kZUF1dG8oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGUgPT0gJ2F1dG8nO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmlyZVBhZ2VFdmVudCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZXZ0ID0gbmV3IEVjbFBhZ2luYXRpb25FdmVudChcbiAgICAgICAgICAgIHRoaXMubW9kZWwuZ2V0Q3VycmVudFBhZ2UoKSxcbiAgICAgICAgICAgIHRoaXMubW9kZWwuZ2V0U2hvd2luZ0Zyb20oKSxcbiAgICAgICAgICAgIHRoaXMubW9kZWwuZ2V0U2hvd2luZ1RvKClcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLnBhZ2UubmV4dChldnQpO1xuICAgIH1cbn1cbiIsIjx1bCBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX19saXN0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTW9kZUF1dG8oKVwiPlxuICAgICAgICA8ZWNsLXBhZ2luYXRpb24taXRlbSBcbiAgICAgICAgICAgICpuZ0lmPVwibW9kZWwuaGFzUHJldmlvdXNQYWdlKClcIlxuICAgICAgICAgICAgW2lzUHJldmlvdXNdPVwidHJ1ZVwiIFxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXNQYWdlKClcIj5cbiAgICAgICAgPC9lY2wtcGFnaW5hdGlvbi1pdGVtPlxuXG4gICAgICAgIDxlY2wtcGFnaW5hdGlvbi1pdGVtIFxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgbW9kZWwuZ2V0UGFnZXMoKVwiIFxuICAgICAgICAgICAgW2xhYmVsXT1cInBhZ2UudG9TdHJpbmcoKVwiXG4gICAgICAgICAgICBbaXNDdXJyZW50XT1cIm1vZGVsLmdldEN1cnJlbnRQYWdlKCkgPT09IHBhZ2VcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUGFnZShwYWdlKVwiPlxuICAgICAgICA8L2VjbC1wYWdpbmF0aW9uLWl0ZW0+XG5cbiAgICAgICAgPGVjbC1wYWdpbmF0aW9uLWl0ZW0gXG4gICAgICAgICAgICAqbmdJZj1cIm1vZGVsLmhhc05leHRQYWdlKClcIlxuICAgICAgICAgICAgW2lzTmV4dF09XCJ0cnVlXCIgXG4gICAgICAgICAgICAoY2xpY2spPVwib25OZXh0UGFnZSgpXCI+XG4gICAgICAgIDwvZWNsLXBhZ2luYXRpb24taXRlbT5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNNb2RlQXV0bygpXCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvdWw+XG4iXX0=
@@ -1,5 +1,6 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
+ import { RouterModule } from '@angular/router';
3
4
  import { EclIconComponentModule } from '../ecl-icon/ecl-icon.module';
4
5
  import { EclLinkDirectiveModule } from '../ecl-link/ecl-link.module';
5
6
  import { EclPaginationComponent } from './ecl-pagination.component';
@@ -9,14 +10,14 @@ import * as i0 from "@angular/core";
9
10
  export class EclPaginationComponentModule {
10
11
  }
11
12
  /** @nocollapse */ EclPaginationComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- /** @nocollapse */ EclPaginationComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, declarations: [EclPaginationComponent, EclPaginationItemComponent], imports: [CommonModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule], exports: [EclPaginationComponent, EclPaginationItemComponent] });
13
- /** @nocollapse */ EclPaginationComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, imports: [CommonModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule] });
13
+ /** @nocollapse */ EclPaginationComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, declarations: [EclPaginationComponent, EclPaginationItemComponent], imports: [CommonModule, RouterModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule], exports: [EclPaginationComponent, EclPaginationItemComponent] });
14
+ /** @nocollapse */ EclPaginationComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, imports: [CommonModule, RouterModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule] });
14
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0-next.4", ngImport: i0, type: EclPaginationComponentModule, decorators: [{
15
16
  type: NgModule,
16
17
  args: [{
17
- imports: [CommonModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule],
18
+ imports: [CommonModule, RouterModule, EclIconComponentModule, EclLinkDirectiveModule, TranslateModule],
18
19
  exports: [EclPaginationComponent, EclPaginationItemComponent],
19
20
  declarations: [EclPaginationComponent, EclPaginationItemComponent]
20
21
  }]
21
22
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1wYWdpbmF0aW9uL2VjbC1wYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBT3RELE1BQU0sT0FBTyw0QkFBNEI7O21KQUE1Qiw0QkFBNEI7b0pBQTVCLDRCQUE0QixpQkFGdEIsc0JBQXNCLEVBQUUsMEJBQTBCLGFBRnZELFlBQVksRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLGFBQzdFLHNCQUFzQixFQUFFLDBCQUEwQjtvSkFHbkQsNEJBQTRCLFlBSjNCLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlO2tHQUk5RSw0QkFBNEI7a0JBTHhDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLGVBQWUsQ0FBQztvQkFDeEYsT0FBTyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLENBQUM7b0JBQzdELFlBQVksRUFBRSxDQUFDLHNCQUFzQixFQUFFLDBCQUEwQixDQUFDO2lCQUNyRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRWNsSWNvbkNvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uL2VjbC1pY29uL2VjbC1pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBFY2xMaW5rRGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnLi4vZWNsLWxpbmsvZWNsLWxpbmsubW9kdWxlJztcbmltcG9ydCB7IEVjbFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2VjbC1wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xQYWdpbmF0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRWNsSWNvbkNvbXBvbmVudE1vZHVsZSwgRWNsTGlua0RpcmVjdGl2ZU1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbRWNsUGFnaW5hdGlvbkNvbXBvbmVudCwgRWNsUGFnaW5hdGlvbkl0ZW1Db21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW0VjbFBhZ2luYXRpb25Db21wb25lbnQsIEVjbFBhZ2luYXRpb25JdGVtQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBFY2xQYWdpbmF0aW9uQ29tcG9uZW50TW9kdWxlIHtcbn1cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1wYWdpbmF0aW9uL2VjbC1wYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU90RCxNQUFNLE9BQU8sNEJBQTRCOzttSkFBNUIsNEJBQTRCO29KQUE1Qiw0QkFBNEIsaUJBRnRCLHNCQUFzQixFQUFFLDBCQUEwQixhQUZ2RCxZQUFZLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLGVBQWUsYUFDM0Ysc0JBQXNCLEVBQUUsMEJBQTBCO29KQUduRCw0QkFBNEIsWUFKM0IsWUFBWSxFQUFFLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlO2tHQUk1Riw0QkFBNEI7a0JBTHhDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLENBQUM7b0JBQ3RHLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixFQUFFLDBCQUEwQixDQUFDO29CQUM3RCxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSwwQkFBMEIsQ0FBQztpQkFDckUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFY2xJY29uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vZWNsLWljb24vZWNsLWljb24ubW9kdWxlJztcbmltcG9ydCB7IEVjbExpbmtEaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi9lY2wtbGluay9lY2wtbGluay5tb2R1bGUnO1xuaW1wb3J0IHsgRWNsUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZWNsLXBhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEVjbFBhZ2luYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtcGFnaW5hdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJNb2R1bGUsIEVjbEljb25Db21wb25lbnRNb2R1bGUsIEVjbExpbmtEaXJlY3RpdmVNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gICAgZXhwb3J0czogW0VjbFBhZ2luYXRpb25Db21wb25lbnQsIEVjbFBhZ2luYXRpb25JdGVtQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFY2xQYWdpbmF0aW9uQ29tcG9uZW50LCBFY2xQYWdpbmF0aW9uSXRlbUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkNvbXBvbmVudE1vZHVsZSB7XG59XG4iXX0=