@hmcts/rpx-xui-common-lib 1.7.0 → 1.8.0-angular-upgrade-9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/hmcts-rpx-xui-common-lib.umd.js +4078 -6583
- package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +15 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
- package/esm2015/hmcts-rpx-xui-common-lib.js +2 -7
- package/esm2015/lib/components/accessibility/accessibility.component.js +13 -17
- package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +45 -127
- package/esm2015/lib/components/contact-details/contact-details.component.js +16 -23
- package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +31 -78
- package/esm2015/lib/components/due-date/due-date.component.js +24 -110
- package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +29 -34
- package/esm2015/lib/components/find-location/find-location.component.js +61 -131
- package/esm2015/lib/components/find-person/find-person.component.js +93 -174
- package/esm2015/lib/components/generic-filter/generic-filter-utils.js +11 -55
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +54 -289
- package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +20 -29
- package/esm2015/lib/components/index.js +2 -7
- package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +23 -33
- package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +34 -35
- package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +16 -22
- package/esm2015/lib/components/pagination/pagination.component.js +28 -38
- package/esm2015/lib/components/public_api.js +33 -33
- package/esm2015/lib/components/search-judicials/search-judicials.component.js +70 -156
- package/esm2015/lib/components/search-location/search-location.component.js +76 -177
- package/esm2015/lib/components/search-venue/search-venue.component.js +62 -154
- package/esm2015/lib/components/selected-case/selected-case.component.js +54 -191
- package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +22 -53
- package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +38 -68
- package/esm2015/lib/components/service-message/service-message.component.js +23 -32
- package/esm2015/lib/components/service-messages/service-messages.component.js +29 -77
- package/esm2015/lib/components/share-case/share-case.component.js +45 -104
- package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +27 -50
- package/esm2015/lib/components/tab/tab.component.js +19 -37
- package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +20 -29
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +13 -17
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +13 -17
- package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +16 -23
- package/esm2015/lib/components/user-details/user-details.component.js +47 -57
- package/esm2015/lib/components/user-list/user-list.component.js +19 -28
- package/esm2015/lib/components/user-select/user-select.component.js +23 -64
- package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +21 -67
- package/esm2015/lib/directives/index.js +2 -7
- package/esm2015/lib/directives/let/let.directive.js +16 -49
- package/esm2015/lib/directives/public-api.js +3 -8
- package/esm2015/lib/exui-common-lib.module.js +31 -35
- package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +23 -34
- package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +18 -23
- package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +30 -68
- package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +19 -25
- package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +19 -28
- package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +23 -36
- package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +23 -28
- package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +24 -35
- package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +15 -22
- package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +23 -35
- package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +18 -23
- package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +27 -34
- package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +32 -47
- package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +22 -29
- package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +20 -26
- package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +26 -56
- package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +17 -27
- package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +40 -52
- package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +29 -36
- package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +18 -35
- package/esm2015/lib/gov-ui/components/index.js +2 -7
- package/esm2015/lib/gov-ui/components/public_api.js +21 -7
- package/esm2015/lib/gov-ui/directives/index.js +2 -0
- package/esm2015/lib/gov-ui/directives/public_api.js +2 -0
- package/esm2015/lib/gov-ui/directives/remove-host.directive.js +12 -30
- package/esm2015/lib/gov-ui/gov-ui.service.js +12 -16
- package/esm2015/lib/gov-ui/index.js +2 -7
- package/esm2015/lib/gov-ui/models/banner-data-model.js +1 -16
- package/esm2015/lib/gov-ui/models/checkboxes-model.js +1 -22
- package/esm2015/lib/gov-ui/models/error-messages-model.js +1 -16
- package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +1 -36
- package/esm2015/lib/gov-ui/models/index.js +1 -7
- package/esm2015/lib/gov-ui/models/isession-storage.interface.js +1 -24
- package/esm2015/lib/gov-ui/models/public_api.js +1 -10
- package/esm2015/lib/gov-ui/public_api.js +5 -9
- package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +4 -14
- package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
- package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
- package/esm2015/lib/gov-ui/validators/date.validator.js +3 -20
- package/esm2015/lib/gov-ui/validators/index.js +2 -7
- package/esm2015/lib/gov-ui/validators/public_api.js +4 -9
- package/esm2015/lib/gov-ui/validators/radio-group.validator.js +3 -15
- package/esm2015/lib/models/case-share.model.js +1 -26
- package/esm2015/lib/models/contact-details.model.js +7 -31
- package/esm2015/lib/models/due-date.model.js +7 -14
- package/esm2015/lib/models/feature-user.js +1 -16
- package/esm2015/lib/models/filter.model.js +1 -112
- package/esm2015/lib/models/idle-config.model.js +1 -20
- package/esm2015/lib/models/index.js +6 -18
- package/esm2015/lib/models/location.model.js +1 -108
- package/esm2015/lib/models/person.model.js +17 -92
- package/esm2015/lib/models/public_api.js +4 -11
- package/esm2015/lib/models/search-options.model.js +1 -22
- package/esm2015/lib/models/tcDocument.model.js +1 -18
- package/esm2015/lib/models/timeout-notification.model.js +1 -18
- package/esm2015/lib/models/user-details.model.js +1 -22
- package/esm2015/lib/models/user.model.js +1 -25
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +19 -92
- package/esm2015/lib/services/cookie/cookie.service.js +19 -78
- package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +16 -51
- package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +11 -35
- package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +21 -101
- package/esm2015/lib/services/filter/filter.service.js +11 -63
- package/esm2015/lib/services/find-person/find-person.service.js +25 -130
- package/esm2015/lib/services/google-analytics/google-analytics.service.js +21 -70
- package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +23 -71
- package/esm2015/lib/services/index.js +2 -7
- package/esm2015/lib/services/loading/loading.service.js +11 -48
- package/esm2015/lib/services/locations/location.service.js +22 -35
- package/esm2015/lib/services/manage-session/manage-session.services.js +21 -70
- package/esm2015/lib/services/public-api.js +13 -18
- package/esm2015/lib/services/role-guard/role.guard.js +24 -61
- package/esm2015/lib/services/role-guard/role.service.js +11 -28
- package/esm2015/lib/services/session-storage/session-storage.service.js +12 -24
- package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +20 -82
- package/esm2015/lib/window.js +1 -10
- package/esm2015/public-api.js +8 -13
- package/esm5/hmcts-rpx-xui-common-lib.js +2 -7
- package/esm5/lib/components/accessibility/accessibility.component.js +10 -15
- package/esm5/lib/components/checkbox-list/checkbox-list.component.js +57 -232
- package/esm5/lib/components/contact-details/contact-details.component.js +14 -22
- package/esm5/lib/components/cookie-banner/cookie-banner.component.js +36 -106
- package/esm5/lib/components/due-date/due-date.component.js +29 -142
- package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +27 -33
- package/esm5/lib/components/find-location/find-location.component.js +71 -167
- package/esm5/lib/components/find-person/find-person.component.js +97 -193
- package/esm5/lib/components/generic-filter/generic-filter-utils.js +13 -57
- package/esm5/lib/components/generic-filter/generic-filter.component.js +83 -408
- package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +19 -32
- package/esm5/lib/components/index.js +2 -7
- package/esm5/lib/components/invite-user-form/invite-user-form.component.js +23 -37
- package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +32 -34
- package/esm5/lib/components/loading-spinner/loading-spinner.component.js +14 -21
- package/esm5/lib/components/pagination/pagination.component.js +28 -45
- package/esm5/lib/components/public_api.js +33 -33
- package/esm5/lib/components/search-judicials/search-judicials.component.js +78 -198
- package/esm5/lib/components/search-location/search-location.component.js +84 -207
- package/esm5/lib/components/search-venue/search-venue.component.js +71 -199
- package/esm5/lib/components/selected-case/selected-case.component.js +72 -279
- package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +22 -61
- package/esm5/lib/components/selected-case-list/selected-case-list.component.js +39 -82
- package/esm5/lib/components/service-message/service-message.component.js +22 -36
- package/esm5/lib/components/service-messages/service-messages.component.js +30 -91
- package/esm5/lib/components/share-case/share-case.component.js +52 -138
- package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +25 -49
- package/esm5/lib/components/tab/tab.component.js +18 -41
- package/esm5/lib/components/tc-confirm/tc-confirm.component.js +19 -32
- package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +10 -15
- package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +10 -15
- package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +14 -22
- package/esm5/lib/components/user-details/user-details.component.js +48 -71
- package/esm5/lib/components/user-list/user-list.component.js +18 -32
- package/esm5/lib/components/user-select/user-select.component.js +27 -92
- package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +21 -70
- package/esm5/lib/directives/index.js +2 -7
- package/esm5/lib/directives/let/let.directive.js +15 -51
- package/esm5/lib/directives/public-api.js +3 -8
- package/esm5/lib/exui-common-lib.module.js +22 -28
- package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +22 -37
- package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +16 -22
- package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +32 -89
- package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +17 -24
- package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +18 -31
- package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +23 -43
- package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +21 -27
- package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +24 -45
- package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +13 -21
- package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +18 -44
- package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +16 -22
- package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +26 -37
- package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +31 -51
- package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +21 -32
- package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +18 -25
- package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +28 -71
- package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +16 -27
- package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +41 -60
- package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +28 -36
- package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +16 -34
- package/esm5/lib/gov-ui/components/index.js +2 -7
- package/esm5/lib/gov-ui/components/public_api.js +21 -7
- package/esm5/lib/gov-ui/directives/index.js +2 -0
- package/esm5/lib/gov-ui/directives/public_api.js +2 -0
- package/esm5/lib/gov-ui/directives/remove-host.directive.js +10 -29
- package/esm5/lib/gov-ui/gov-ui.service.js +9 -14
- package/esm5/lib/gov-ui/index.js +2 -7
- package/esm5/lib/gov-ui/models/banner-data-model.js +1 -16
- package/esm5/lib/gov-ui/models/checkboxes-model.js +1 -22
- package/esm5/lib/gov-ui/models/error-messages-model.js +1 -16
- package/esm5/lib/gov-ui/models/gov-ui-config-model.js +1 -36
- package/esm5/lib/gov-ui/models/index.js +1 -7
- package/esm5/lib/gov-ui/models/isession-storage.interface.js +1 -24
- package/esm5/lib/gov-ui/models/public_api.js +1 -10
- package/esm5/lib/gov-ui/public_api.js +5 -9
- package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +3 -34
- package/esm5/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
- package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
- package/esm5/lib/gov-ui/validators/date.validator.js +3 -20
- package/esm5/lib/gov-ui/validators/index.js +2 -7
- package/esm5/lib/gov-ui/validators/public_api.js +4 -9
- package/esm5/lib/gov-ui/validators/radio-group.validator.js +3 -15
- package/esm5/lib/models/case-share.model.js +1 -26
- package/esm5/lib/models/contact-details.model.js +7 -31
- package/esm5/lib/models/due-date.model.js +7 -14
- package/esm5/lib/models/feature-user.js +1 -16
- package/esm5/lib/models/filter.model.js +1 -112
- package/esm5/lib/models/idle-config.model.js +1 -20
- package/esm5/lib/models/index.js +6 -18
- package/esm5/lib/models/location.model.js +1 -108
- package/esm5/lib/models/person.model.js +17 -92
- package/esm5/lib/models/public_api.js +4 -11
- package/esm5/lib/models/search-options.model.js +1 -22
- package/esm5/lib/models/tcDocument.model.js +1 -18
- package/esm5/lib/models/timeout-notification.model.js +1 -18
- package/esm5/lib/models/user-details.model.js +1 -22
- package/esm5/lib/models/user.model.js +1 -25
- package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +27 -132
- package/esm5/lib/services/cookie/cookie.service.js +21 -104
- package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +13 -61
- package/esm5/lib/services/feature-toggle/feature-toggle.service.js +12 -70
- package/esm5/lib/services/feature-toggle/launch-darkly.service.js +21 -142
- package/esm5/lib/services/filter/filter.service.js +15 -101
- package/esm5/lib/services/find-person/find-person.service.js +27 -152
- package/esm5/lib/services/google-analytics/google-analytics.service.js +21 -78
- package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +23 -79
- package/esm5/lib/services/index.js +2 -7
- package/esm5/lib/services/loading/loading.service.js +14 -69
- package/esm5/lib/services/locations/location.service.js +11 -50
- package/esm5/lib/services/manage-session/manage-session.services.js +20 -73
- package/esm5/lib/services/public-api.js +13 -18
- package/esm5/lib/services/role-guard/role.guard.js +22 -60
- package/esm5/lib/services/role-guard/role.service.js +10 -28
- package/esm5/lib/services/session-storage/session-storage.service.js +12 -61
- package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +19 -111
- package/esm5/lib/window.js +1 -10
- package/esm5/public-api.js +8 -13
- package/fesm2015/hmcts-rpx-xui-common-lib.js +3152 -4924
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
- package/fesm5/hmcts-rpx-xui-common-lib.js +3458 -6178
- package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
- package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
- package/lib/components/checkbox-list/checkbox-list.component.d.ts +6 -5
- package/lib/components/due-date/due-date.component.d.ts +4 -4
- package/lib/components/find-location/find-location.component.d.ts +4 -2
- package/lib/components/generic-filter/generic-filter.component.d.ts +4 -2
- package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +1 -1
- package/lib/components/invite-user-form/invite-user-form.component.d.ts +2 -2
- package/lib/components/public_api.d.ts +9 -4
- package/lib/components/search-judicials/search-judicials.component.d.ts +1 -1
- package/lib/components/search-location/search-location.component.d.ts +4 -2
- package/lib/components/search-venue/search-venue.component.d.ts +1 -1
- package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
- package/lib/directives/let/let.directive.d.ts +1 -1
- package/lib/exui-common-lib.module.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
- package/lib/gov-ui/components/public_api.d.ts +19 -0
- package/lib/gov-ui/directives/index.d.ts +1 -0
- package/lib/gov-ui/directives/public_api.d.ts +1 -0
- package/lib/gov-ui/public_api.d.ts +2 -1
- package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
- package/lib/services/loading/loading.service.d.ts +2 -2
- package/lib/services/role-guard/role.service.d.ts +2 -1
- package/lib/window.d.ts +2 -2
- package/package.json +2 -6
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* Generated from: lib/components/search-judicials/search-judicials.component.ts
|
|
4
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
|
-
*/
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
6
2
|
import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
7
|
-
import { AbstractControl, FormArray, FormBuilder, FormControl } from '@angular/forms';
|
|
3
|
+
import { AbstractControl, FormArray, FormBuilder, FormControl, FormGroup } from '@angular/forms';
|
|
8
4
|
import { Subject } from 'rxjs';
|
|
9
5
|
import { debounceTime, mergeMap } from 'rxjs/operators';
|
|
10
6
|
import { FindAPersonService } from '../../services/find-person/find-person.service';
|
|
@@ -28,13 +24,7 @@ var SearchJudicialsComponent = /** @class */ (function () {
|
|
|
28
24
|
selectedFormControl: [null]
|
|
29
25
|
});
|
|
30
26
|
}
|
|
31
|
-
|
|
32
|
-
* @return {?}
|
|
33
|
-
*/
|
|
34
|
-
SearchJudicialsComponent.prototype.ngOnInit = /**
|
|
35
|
-
* @return {?}
|
|
36
|
-
*/
|
|
37
|
-
function () {
|
|
27
|
+
SearchJudicialsComponent.prototype.ngOnInit = function () {
|
|
38
28
|
var _this = this;
|
|
39
29
|
this.displayedJudicials = [];
|
|
40
30
|
if (this.control) {
|
|
@@ -43,94 +33,34 @@ var SearchJudicialsComponent = /** @class */ (function () {
|
|
|
43
33
|
this.formGroup.controls.formControl.setValue(this.getControlValueDisplayText());
|
|
44
34
|
}
|
|
45
35
|
}
|
|
46
|
-
this.keyUpSubject$.pipe(debounceTime(500)).subscribe((
|
|
47
|
-
* @param {?} searchValue
|
|
48
|
-
* @return {?}
|
|
49
|
-
*/
|
|
50
|
-
function (searchValue) { return _this.search((/** @type {?} */ (searchValue))); }));
|
|
36
|
+
this.keyUpSubject$.pipe(debounceTime(500)).subscribe(function (searchValue) { return _this.search(searchValue); });
|
|
51
37
|
};
|
|
52
|
-
|
|
53
|
-
* @return {?}
|
|
54
|
-
*/
|
|
55
|
-
SearchJudicialsComponent.prototype.onKeyDown = /**
|
|
56
|
-
* @return {?}
|
|
57
|
-
*/
|
|
58
|
-
function () {
|
|
38
|
+
SearchJudicialsComponent.prototype.onKeyDown = function () {
|
|
59
39
|
this.judicialChanged.emit();
|
|
60
40
|
};
|
|
61
|
-
|
|
62
|
-
* @param {?} event
|
|
63
|
-
* @return {?}
|
|
64
|
-
*/
|
|
65
|
-
SearchJudicialsComponent.prototype.onKeyUp = /**
|
|
66
|
-
* @param {?} event
|
|
67
|
-
* @return {?}
|
|
68
|
-
*/
|
|
69
|
-
function (event) {
|
|
41
|
+
SearchJudicialsComponent.prototype.onKeyUp = function (event) {
|
|
70
42
|
this.showAutocomplete = false;
|
|
71
43
|
this.keyUpSubject$.next(event.target.value);
|
|
72
44
|
};
|
|
73
|
-
|
|
74
|
-
* @return {?}
|
|
75
|
-
*/
|
|
76
|
-
SearchJudicialsComponent.prototype.onFocus = /**
|
|
77
|
-
* @return {?}
|
|
78
|
-
*/
|
|
79
|
-
function () {
|
|
45
|
+
SearchJudicialsComponent.prototype.onFocus = function () {
|
|
80
46
|
this.showAutocomplete = false;
|
|
81
47
|
};
|
|
82
48
|
Object.defineProperty(SearchJudicialsComponent.prototype, "displayedJudicialsDuplicationFiltered", {
|
|
83
|
-
get:
|
|
84
|
-
* @return {?}
|
|
85
|
-
*/
|
|
86
|
-
function () {
|
|
49
|
+
get: function () {
|
|
87
50
|
var _this = this;
|
|
88
|
-
return this.displayedJudicials.filter((
|
|
89
|
-
* @param {?} judicial
|
|
90
|
-
* @return {?}
|
|
91
|
-
*/
|
|
92
|
-
function (judicial) { return !_this.selectedJudicials.map((/**
|
|
93
|
-
* @param {?} selectedJudicial
|
|
94
|
-
* @return {?}
|
|
95
|
-
*/
|
|
96
|
-
function (selectedJudicial) { return selectedJudicial.idamId; })).includes(judicial.idamId); }));
|
|
51
|
+
return this.displayedJudicials.filter(function (judicial) { return !_this.selectedJudicials.map(function (selectedJudicial) { return selectedJudicial.idamId; }).includes(judicial.idamId); });
|
|
97
52
|
},
|
|
98
53
|
enumerable: true,
|
|
99
54
|
configurable: true
|
|
100
55
|
});
|
|
101
|
-
|
|
102
|
-
* @param {?} term
|
|
103
|
-
* @return {?}
|
|
104
|
-
*/
|
|
105
|
-
SearchJudicialsComponent.prototype.filter = /**
|
|
106
|
-
* @param {?} term
|
|
107
|
-
* @return {?}
|
|
108
|
-
*/
|
|
109
|
-
function (term) {
|
|
56
|
+
SearchJudicialsComponent.prototype.filter = function (term) {
|
|
110
57
|
var _this = this;
|
|
111
|
-
this.searchJudicials(term, this.serviceId).pipe(mergeMap((
|
|
112
|
-
|
|
113
|
-
* @return {?}
|
|
114
|
-
*/
|
|
115
|
-
function (apiData) {
|
|
116
|
-
/** @type {?} */
|
|
117
|
-
var apiFilter = apiData.filter((/**
|
|
118
|
-
* @param {?} apiJudicial
|
|
119
|
-
* @return {?}
|
|
120
|
-
*/
|
|
121
|
-
function (apiJudicial) { return !_this.selectedJudicials.map((/**
|
|
122
|
-
* @param {?} selectedJudicial
|
|
123
|
-
* @return {?}
|
|
124
|
-
*/
|
|
125
|
-
function (selectedJudicial) { return selectedJudicial.idamId; })).includes(apiJudicial.idamId); }));
|
|
58
|
+
this.searchJudicials(term, this.serviceId).pipe(mergeMap(function (apiData) {
|
|
59
|
+
var apiFilter = apiData.filter(function (apiJudicial) { return !_this.selectedJudicials.map(function (selectedJudicial) { return selectedJudicial.idamId; }).includes(apiJudicial.idamId); });
|
|
126
60
|
_this.displayedJudicials = apiFilter;
|
|
127
61
|
_this.searchInProgress = false;
|
|
128
62
|
return apiFilter;
|
|
129
|
-
}))
|
|
130
|
-
* @param {?} judicial
|
|
131
|
-
* @return {?}
|
|
132
|
-
*/
|
|
133
|
-
function (judicial) {
|
|
63
|
+
})).subscribe(function (judicial) {
|
|
134
64
|
if (term === judicial.knownAs) {
|
|
135
65
|
_this.formGroup.controls.selectedFormControl.setValue(judicial);
|
|
136
66
|
_this.displayedJudicials = [];
|
|
@@ -138,34 +68,18 @@ var SearchJudicialsComponent = /** @class */ (function () {
|
|
|
138
68
|
_this.showAutocomplete = false;
|
|
139
69
|
}
|
|
140
70
|
_this.searchInProgress = false;
|
|
141
|
-
})
|
|
71
|
+
});
|
|
142
72
|
};
|
|
143
|
-
|
|
144
|
-
* @param {?=} selection
|
|
145
|
-
* @return {?}
|
|
146
|
-
*/
|
|
147
|
-
SearchJudicialsComponent.prototype.onSelectionChange = /**
|
|
148
|
-
* @param {?=} selection
|
|
149
|
-
* @return {?}
|
|
150
|
-
*/
|
|
151
|
-
function (selection) {
|
|
73
|
+
SearchJudicialsComponent.prototype.onSelectionChange = function (selection) {
|
|
152
74
|
if (this.formGroup.controls.formControl instanceof FormArray) {
|
|
153
|
-
|
|
75
|
+
this.formGroup.controls.selectedFormControl.push(new FormControl(selection.idamId));
|
|
154
76
|
}
|
|
155
77
|
else {
|
|
156
78
|
this.formGroup.controls.selectedFormControl.setValue(selection);
|
|
157
79
|
}
|
|
158
80
|
this.judicialChanged.emit(selection);
|
|
159
81
|
};
|
|
160
|
-
|
|
161
|
-
* @param {?} currentValue
|
|
162
|
-
* @return {?}
|
|
163
|
-
*/
|
|
164
|
-
SearchJudicialsComponent.prototype.search = /**
|
|
165
|
-
* @param {?} currentValue
|
|
166
|
-
* @return {?}
|
|
167
|
-
*/
|
|
168
|
-
function (currentValue) {
|
|
82
|
+
SearchJudicialsComponent.prototype.search = function (currentValue) {
|
|
169
83
|
this.searchInProgress = true;
|
|
170
84
|
this.showAutocomplete = !!currentValue && (currentValue.length >= this.minSearchCharacters);
|
|
171
85
|
if (!!currentValue) {
|
|
@@ -181,111 +95,77 @@ var SearchJudicialsComponent = /** @class */ (function () {
|
|
|
181
95
|
this.searchInProgress = false;
|
|
182
96
|
}
|
|
183
97
|
};
|
|
184
|
-
|
|
185
|
-
* @param {?} selectedJudicial
|
|
186
|
-
* @return {?}
|
|
187
|
-
*/
|
|
188
|
-
SearchJudicialsComponent.prototype.getDisplayName = /**
|
|
189
|
-
* @param {?} selectedJudicial
|
|
190
|
-
* @return {?}
|
|
191
|
-
*/
|
|
192
|
-
function (selectedJudicial) {
|
|
98
|
+
SearchJudicialsComponent.prototype.getDisplayName = function (selectedJudicial) {
|
|
193
99
|
return selectedJudicial.knownAs + " (" + selectedJudicial.emailId + ")";
|
|
194
100
|
};
|
|
195
|
-
|
|
196
|
-
* @param {?} term
|
|
197
|
-
* @param {?} serviceId
|
|
198
|
-
* @return {?}
|
|
199
|
-
*/
|
|
200
|
-
SearchJudicialsComponent.prototype.searchJudicials = /**
|
|
201
|
-
* @param {?} term
|
|
202
|
-
* @param {?} serviceId
|
|
203
|
-
* @return {?}
|
|
204
|
-
*/
|
|
205
|
-
function (term, serviceId) {
|
|
101
|
+
SearchJudicialsComponent.prototype.searchJudicials = function (term, serviceId) {
|
|
206
102
|
return this.judicialService.searchJudicial(term, serviceId);
|
|
207
103
|
};
|
|
208
|
-
|
|
209
|
-
* @return {?}
|
|
210
|
-
*/
|
|
211
|
-
SearchJudicialsComponent.prototype.getControlValueDisplayText = /**
|
|
212
|
-
* @return {?}
|
|
213
|
-
*/
|
|
214
|
-
function () {
|
|
104
|
+
SearchJudicialsComponent.prototype.getControlValueDisplayText = function () {
|
|
215
105
|
return this.formGroup && this.formGroup.controls && this.formGroup.controls.selectedFormControl.value ?
|
|
216
|
-
this.getDisplayName(
|
|
106
|
+
this.getDisplayName(this.formGroup.controls.selectedFormControl.value) : '';
|
|
217
107
|
};
|
|
218
|
-
SearchJudicialsComponent.decorators = [
|
|
219
|
-
{ type: Component, args: [{
|
|
220
|
-
selector: 'xuilib-search-judicials',
|
|
221
|
-
template: "<div class=\"govuk-form-group\">\n <input id=\"inputSelectPerson{{idValue}}\" [placeholder]=\"placeholderContent\" [formControl]=\"formGroup.controls.formControl\"\n [matAutocomplete]=\"autoComplete\" (keydown)=\"onKeyDown()\" (keyup)=\"onKeyUp($event)\" (focus)=\"onFocus()\"\n class=\"govuk-input\" [attr.disabled]=\"!disabled ? null: disabled\" [value]=\"getControlValueDisplayText()\"\n #inputSelection>\n <mat-autocomplete autoActiveFirstOption #autoComplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let judicial of displayedJudicialsDuplicationFiltered\" class=\"select-option\"\n [value]=\"getDisplayName(judicial)\" (onSelectionChange)=\"onSelectionChange(judicial)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(judicial) }}\n </mat-option>\n <mat-option class=\"select-option\"\n *ngIf=\"!displayedJudicialsDuplicationFiltered?.length && showAutocomplete && !searchInProgress\">\n {{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n</div>\n",
|
|
222
|
-
styles: [".hide-autocomplete{display:none}.mat-option:hover{background:#2596be}.mat-option.select-option:hover{background:#1d70b8;color:#fff}"]
|
|
223
|
-
}] }
|
|
224
|
-
];
|
|
225
|
-
/** @nocollapse */
|
|
226
108
|
SearchJudicialsComponent.ctorParameters = function () { return [
|
|
227
109
|
{ type: FindAPersonService },
|
|
228
110
|
{ type: FormBuilder }
|
|
229
111
|
]; };
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
112
|
+
__decorate([
|
|
113
|
+
Input(),
|
|
114
|
+
__metadata("design:type", AbstractControl)
|
|
115
|
+
], SearchJudicialsComponent.prototype, "control", void 0);
|
|
116
|
+
__decorate([
|
|
117
|
+
Input(),
|
|
118
|
+
__metadata("design:type", Boolean)
|
|
119
|
+
], SearchJudicialsComponent.prototype, "disabled", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
Input(),
|
|
122
|
+
__metadata("design:type", Array)
|
|
123
|
+
], SearchJudicialsComponent.prototype, "selectedJudicials", void 0);
|
|
124
|
+
__decorate([
|
|
125
|
+
Input(),
|
|
126
|
+
__metadata("design:type", Boolean)
|
|
127
|
+
], SearchJudicialsComponent.prototype, "submitted", void 0);
|
|
128
|
+
__decorate([
|
|
129
|
+
Input(),
|
|
130
|
+
__metadata("design:type", String)
|
|
131
|
+
], SearchJudicialsComponent.prototype, "placeholderContent", void 0);
|
|
132
|
+
__decorate([
|
|
133
|
+
Input(),
|
|
134
|
+
__metadata("design:type", Boolean)
|
|
135
|
+
], SearchJudicialsComponent.prototype, "showAutocomplete", void 0);
|
|
136
|
+
__decorate([
|
|
137
|
+
Input(),
|
|
138
|
+
__metadata("design:type", Array)
|
|
139
|
+
], SearchJudicialsComponent.prototype, "displayedJudicials", void 0);
|
|
140
|
+
__decorate([
|
|
141
|
+
Output(),
|
|
142
|
+
__metadata("design:type", Object)
|
|
143
|
+
], SearchJudicialsComponent.prototype, "judicialChanged", void 0);
|
|
144
|
+
__decorate([
|
|
145
|
+
Input(),
|
|
146
|
+
__metadata("design:type", String)
|
|
147
|
+
], SearchJudicialsComponent.prototype, "idValue", void 0);
|
|
148
|
+
__decorate([
|
|
149
|
+
Input(),
|
|
150
|
+
__metadata("design:type", String)
|
|
151
|
+
], SearchJudicialsComponent.prototype, "errorMessage", void 0);
|
|
152
|
+
__decorate([
|
|
153
|
+
Input(),
|
|
154
|
+
__metadata("design:type", String)
|
|
155
|
+
], SearchJudicialsComponent.prototype, "serviceId", void 0);
|
|
156
|
+
__decorate([
|
|
157
|
+
ViewChild('inputSelection', { read: ElementRef }),
|
|
158
|
+
__metadata("design:type", ElementRef)
|
|
159
|
+
], SearchJudicialsComponent.prototype, "autoCompleteInputBox", void 0);
|
|
160
|
+
SearchJudicialsComponent = __decorate([
|
|
161
|
+
Component({
|
|
162
|
+
selector: 'xuilib-search-judicials',
|
|
163
|
+
template: "<div class=\"govuk-form-group\">\n <input id=\"inputSelectPerson{{idValue}}\" [placeholder]=\"placeholderContent\" [formControl]=\"formGroup.controls.formControl\"\n [matAutocomplete]=\"autoComplete\" (keydown)=\"onKeyDown()\" (keyup)=\"onKeyUp($event)\" (focus)=\"onFocus()\"\n class=\"govuk-input\" [attr.disabled]=\"!disabled ? null: disabled\" [value]=\"getControlValueDisplayText()\"\n #inputSelection>\n <mat-autocomplete autoActiveFirstOption #autoComplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let judicial of displayedJudicialsDuplicationFiltered\" class=\"select-option\"\n [value]=\"getDisplayName(judicial)\" (onSelectionChange)=\"onSelectionChange(judicial)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(judicial) }}\n </mat-option>\n <mat-option class=\"select-option\"\n *ngIf=\"!displayedJudicialsDuplicationFiltered?.length && showAutocomplete && !searchInProgress\">\n {{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n</div>\n",
|
|
164
|
+
styles: [".hide-autocomplete{display:none}.mat-option:hover{background:#2596be}.mat-option.select-option:hover{background:#1d70b8;color:#fff}"]
|
|
165
|
+
}),
|
|
166
|
+
__metadata("design:paramtypes", [FindAPersonService, FormBuilder])
|
|
167
|
+
], SearchJudicialsComponent);
|
|
244
168
|
return SearchJudicialsComponent;
|
|
245
169
|
}());
|
|
246
170
|
export { SearchJudicialsComponent };
|
|
247
|
-
if (false) {
|
|
248
|
-
/** @type {?} */
|
|
249
|
-
SearchJudicialsComponent.prototype.formGroup;
|
|
250
|
-
/** @type {?} */
|
|
251
|
-
SearchJudicialsComponent.prototype.control;
|
|
252
|
-
/** @type {?} */
|
|
253
|
-
SearchJudicialsComponent.prototype.disabled;
|
|
254
|
-
/** @type {?} */
|
|
255
|
-
SearchJudicialsComponent.prototype.selectedJudicials;
|
|
256
|
-
/** @type {?} */
|
|
257
|
-
SearchJudicialsComponent.prototype.submitted;
|
|
258
|
-
/** @type {?} */
|
|
259
|
-
SearchJudicialsComponent.prototype.placeholderContent;
|
|
260
|
-
/** @type {?} */
|
|
261
|
-
SearchJudicialsComponent.prototype.showAutocomplete;
|
|
262
|
-
/** @type {?} */
|
|
263
|
-
SearchJudicialsComponent.prototype.displayedJudicials;
|
|
264
|
-
/** @type {?} */
|
|
265
|
-
SearchJudicialsComponent.prototype.judicialChanged;
|
|
266
|
-
/** @type {?} */
|
|
267
|
-
SearchJudicialsComponent.prototype.idValue;
|
|
268
|
-
/** @type {?} */
|
|
269
|
-
SearchJudicialsComponent.prototype.errorMessage;
|
|
270
|
-
/** @type {?} */
|
|
271
|
-
SearchJudicialsComponent.prototype.serviceId;
|
|
272
|
-
/** @type {?} */
|
|
273
|
-
SearchJudicialsComponent.prototype.autoCompleteInputBox;
|
|
274
|
-
/** @type {?} */
|
|
275
|
-
SearchJudicialsComponent.prototype.selectedJudicial;
|
|
276
|
-
/**
|
|
277
|
-
* @type {?}
|
|
278
|
-
* @private
|
|
279
|
-
*/
|
|
280
|
-
SearchJudicialsComponent.prototype.minSearchCharacters;
|
|
281
|
-
/** @type {?} */
|
|
282
|
-
SearchJudicialsComponent.prototype.keyUpSubject$;
|
|
283
|
-
/** @type {?} */
|
|
284
|
-
SearchJudicialsComponent.prototype.searchInProgress;
|
|
285
|
-
/**
|
|
286
|
-
* @type {?}
|
|
287
|
-
* @private
|
|
288
|
-
*/
|
|
289
|
-
SearchJudicialsComponent.prototype.judicialService;
|
|
290
|
-
}
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc2VhcmNoLWp1ZGljaWFscy9zZWFyY2gtanVkaWNpYWxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDakcsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRXBGO0lBd0JFLGtDQUE2QixlQUFtQyxFQUFFLEVBQWU7UUFBcEQsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBaEJoRCxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLHNCQUFpQixHQUF3QixFQUFFLENBQUM7UUFDNUMsY0FBUyxHQUFhLElBQUksQ0FBQztRQUMzQix1QkFBa0IsR0FBVyxFQUFFLENBQUM7UUFDaEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBRWpDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDekQsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixpQkFBWSxHQUFXLHdCQUF3QixDQUFDO1FBQ2hELGNBQVMsR0FBVyxFQUFFLENBQUM7UUFHdEIsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7UUFDL0MscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBR3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUM7WUFDbkIsbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLENBQUM7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVNLDJDQUFROzs7SUFBZjtRQUFBLGlCQVNDO1FBUkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUM3QixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFO2dCQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUM7YUFDakY7U0FDRjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLFdBQVcsSUFBSSxPQUFBLEtBQUksQ0FBQyxNQUFNLENBQUMsbUJBQUEsV0FBVyxFQUFVLENBQUMsRUFBbEMsQ0FBa0MsRUFBQyxDQUFDO0lBQzFHLENBQUM7Ozs7SUFFTSw0Q0FBUzs7O0lBQWhCO1FBQ0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDOzs7OztJQUVNLDBDQUFPOzs7O0lBQWQsVUFBZSxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDOzs7O0lBRU0sMENBQU87OztJQUFkO1FBQ0UsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsc0JBQVcsMkVBQXFDOzs7O1FBQWhEO1lBQUEsaUJBSUM7WUFIQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNOzs7O1lBQ25DLFVBQUEsUUFBUSxJQUFJLE9BQUEsQ0FBQyxLQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsZ0JBQWdCLElBQUksT0FBQSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQXZCLENBQXVCLEVBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFsRyxDQUFrRyxFQUMvRyxDQUFDO1FBQ0osQ0FBQzs7O09BQUE7Ozs7O0lBRU0seUNBQU07Ozs7SUFBYixVQUFjLElBQVk7UUFBMUIsaUJBbUJDO1FBbEJDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQzdDLFFBQVE7Ozs7UUFBQyxVQUFDLE9BQTRCOztnQkFDOUIsU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNOzs7O1lBQzlCLFVBQUEsV0FBVyxJQUFJLE9BQUEsQ0FBQyxLQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsZ0JBQWdCLElBQUksT0FBQSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQXZCLENBQXVCLEVBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxFQUFyRyxDQUFxRyxFQUNySDtZQUNELEtBQUksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUM7WUFDcEMsS0FBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztZQUM5QixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLEVBQUMsQ0FDSCxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLFFBQVE7WUFDbEIsSUFBSSxJQUFJLEtBQUssUUFBUSxDQUFDLE9BQU8sRUFBRTtnQkFDN0IsS0FBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvRCxLQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO2dCQUM3QixLQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDcEMsS0FBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQzthQUMvQjtZQUNELEtBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDaEMsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVNLG9EQUFpQjs7OztJQUF4QixVQUF5QixTQUE2QjtRQUNwRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFdBQVcsWUFBWSxTQUFTLEVBQUU7WUFDNUQsQ0FBQyxtQkFBQSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3BHO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDakU7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2QyxDQUFDOzs7OztJQUVNLHlDQUFNOzs7O0lBQWIsVUFBYyxZQUFvQjtRQUNoQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUM1RixJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDM0Q7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3JEO1FBQ0QsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzQjthQUFNO1lBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztTQUMvQjtJQUNILENBQUM7Ozs7O0lBRU0saURBQWM7Ozs7SUFBckIsVUFBc0IsZ0JBQW1DO1FBQ3ZELE9BQVUsZ0JBQWdCLENBQUMsT0FBTyxVQUFLLGdCQUFnQixDQUFDLE9BQU8sTUFBRyxDQUFDO0lBQ3JFLENBQUM7Ozs7OztJQUVNLGtEQUFlOzs7OztJQUF0QixVQUF1QixJQUFZLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7OztJQUVNLDZEQUEwQjs7O0lBQWpDO1FBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JHLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNyRyxDQUFDOztnQkFySEYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLDhoQ0FBZ0Q7O2lCQUVqRDs7OztnQkFOUSxrQkFBa0I7Z0JBSlUsV0FBVzs7OzBCQWE3QyxLQUFLOzJCQUNMLEtBQUs7b0NBQ0wsS0FBSzs0QkFDTCxLQUFLO3FDQUNMLEtBQUs7bUNBQ0wsS0FBSztxQ0FDTCxLQUFLO2tDQUNMLE1BQU07MEJBQ04sS0FBSzsrQkFDTCxLQUFLOzRCQUNMLEtBQUs7dUNBQ0wsU0FBUyxTQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTs7SUFvR25ELCtCQUFDO0NBQUEsQUF0SEQsSUFzSEM7U0FqSFksd0JBQXdCOzs7SUFDbkMsNkNBQTRCOztJQUM1QiwyQ0FBeUM7O0lBQ3pDLDRDQUF5Qzs7SUFDekMscURBQTREOztJQUM1RCw2Q0FBMkM7O0lBQzNDLHNEQUFnRDs7SUFDaEQsb0RBQWtEOztJQUNsRCxzREFBd0Q7O0lBQ3hELG1EQUF5RTs7SUFDekUsMkNBQXFDOztJQUNyQyxnREFBZ0U7O0lBQ2hFLDZDQUF1Qzs7SUFDdkMsd0RBQTZHOztJQUM3RyxvREFBMkM7Ozs7O0lBQzNDLHVEQUF5Qzs7SUFDekMsaURBQXNEOztJQUN0RCxvREFBeUM7Ozs7O0lBRTdCLG1EQUFvRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEp1ZGljaWFsVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEZpbmRBUGVyc29uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItc2VhcmNoLWp1ZGljaWFscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtanVkaWNpYWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEp1ZGljaWFsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkSnVkaWNpYWxzOiBKdWRpY2lhbFVzZXJNb2RlbFtdID0gW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyQ29udGVudDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QXV0b2NvbXBsZXRlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNwbGF5ZWRKdWRpY2lhbHM6IEp1ZGljaWFsVXNlck1vZGVsW107XG4gIEBPdXRwdXQoKSBwdWJsaWMganVkaWNpYWxDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxKdWRpY2lhbFVzZXJNb2RlbD4oKTtcbiAgQElucHV0KCkgcHVibGljIGlkVmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnWW91IG11c3Qgc2VsZWN0IGEgbmFtZSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXJ2aWNlSWQ6IHN0cmluZyA9ICcnO1xuICBAVmlld0NoaWxkKCdpbnB1dFNlbGVjdGlvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBwdWJsaWMgYXV0b0NvbXBsZXRlSW5wdXRCb3g6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIHB1YmxpYyBzZWxlY3RlZEp1ZGljaWFsOiBKdWRpY2lhbFVzZXJNb2RlbDtcbiAgcHJpdmF0ZSByZWFkb25seSBtaW5TZWFyY2hDaGFyYWN0ZXJzID0gMztcbiAgcHVibGljIGtleVVwU3ViamVjdCQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0KCk7XG4gIHB1YmxpYyBzZWFyY2hJblByb2dyZXNzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBqdWRpY2lhbFNlcnZpY2U6IEZpbmRBUGVyc29uU2VydmljZSwgZmI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSBmYi5ncm91cCh7XG4gICAgICBmb3JtQ29udHJvbDogW251bGxdLFxuICAgICAgc2VsZWN0ZWRGb3JtQ29udHJvbDogW251bGxdXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5ZWRKdWRpY2lhbHMgPSBbXTtcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICBpZiAodGhpcy5mb3JtR3JvdXAgJiYgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMpIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbCA9IHRoaXMuY29udHJvbDtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy5nZXRDb250cm9sVmFsdWVEaXNwbGF5VGV4dCgpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5rZXlVcFN1YmplY3QkLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpLnN1YnNjcmliZShzZWFyY2hWYWx1ZSA9PiB0aGlzLnNlYXJjaChzZWFyY2hWYWx1ZSBhcyBzdHJpbmcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbktleURvd24oKTogdm9pZCB7XG4gICAgdGhpcy5qdWRpY2lhbENoYW5nZWQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uS2V5VXAoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICAgIHRoaXMua2V5VXBTdWJqZWN0JC5uZXh0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1cygpIHtcbiAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheWVkSnVkaWNpYWxzRHVwbGljYXRpb25GaWx0ZXJlZCgpOiBKdWRpY2lhbFVzZXJNb2RlbFtdIHtcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5ZWRKdWRpY2lhbHMuZmlsdGVyKFxuICAgICAganVkaWNpYWwgPT4gIXRoaXMuc2VsZWN0ZWRKdWRpY2lhbHMubWFwKHNlbGVjdGVkSnVkaWNpYWwgPT4gc2VsZWN0ZWRKdWRpY2lhbC5pZGFtSWQpLmluY2x1ZGVzKGp1ZGljaWFsLmlkYW1JZClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGZpbHRlcih0ZXJtOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaEp1ZGljaWFscyh0ZXJtLCB0aGlzLnNlcnZpY2VJZCkucGlwZShcbiAgICAgIG1lcmdlTWFwKChhcGlEYXRhOiBKdWRpY2lhbFVzZXJNb2RlbFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGFwaUZpbHRlciA9IGFwaURhdGEuZmlsdGVyKFxuICAgICAgICAgIGFwaUp1ZGljaWFsID0+ICF0aGlzLnNlbGVjdGVkSnVkaWNpYWxzLm1hcChzZWxlY3RlZEp1ZGljaWFsID0+IHNlbGVjdGVkSnVkaWNpYWwuaWRhbUlkKS5pbmNsdWRlcyhhcGlKdWRpY2lhbC5pZGFtSWQpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZGlzcGxheWVkSnVkaWNpYWxzID0gYXBpRmlsdGVyO1xuICAgICAgICB0aGlzLnNlYXJjaEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGFwaUZpbHRlcjtcbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoanVkaWNpYWwgPT4ge1xuICAgICAgaWYgKHRlcm0gPT09IGp1ZGljaWFsLmtub3duQXMpIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC5zZXRWYWx1ZShqdWRpY2lhbCk7XG4gICAgICAgIHRoaXMuZGlzcGxheWVkSnVkaWNpYWxzID0gW107XG4gICAgICAgIHRoaXMuanVkaWNpYWxDaGFuZ2VkLmVtaXQoanVkaWNpYWwpO1xuICAgICAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2VhcmNoSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0aW9uQ2hhbmdlKHNlbGVjdGlvbj86IEp1ZGljaWFsVXNlck1vZGVsKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLmZvcm1Db250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAodGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbCBhcyBGb3JtQXJyYXkpLnB1c2gobmV3IEZvcm1Db250cm9sKHNlbGVjdGlvbi5pZGFtSWQpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC5zZXRWYWx1ZShzZWxlY3Rpb24pO1xuICAgIH1cbiAgICB0aGlzLmp1ZGljaWFsQ2hhbmdlZC5lbWl0KHNlbGVjdGlvbik7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoKGN1cnJlbnRWYWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gdHJ1ZTtcbiAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSAhIWN1cnJlbnRWYWx1ZSAmJiAoY3VycmVudFZhbHVlLmxlbmd0aCA+PSB0aGlzLm1pblNlYXJjaENoYXJhY3RlcnMpO1xuICAgIGlmICghIWN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC5tYXJrQXNEaXJ0eSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLnJlc2V0KCk7XG4gICAgfVxuICAgIGlmICh0aGlzLnNob3dBdXRvY29tcGxldGUpIHtcbiAgICAgIHRoaXMuZmlsdGVyKGN1cnJlbnRWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VhcmNoSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXREaXNwbGF5TmFtZShzZWxlY3RlZEp1ZGljaWFsOiBKdWRpY2lhbFVzZXJNb2RlbCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3NlbGVjdGVkSnVkaWNpYWwua25vd25Bc30gKCR7c2VsZWN0ZWRKdWRpY2lhbC5lbWFpbElkfSlgO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEp1ZGljaWFscyh0ZXJtOiBzdHJpbmcsIHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxKdWRpY2lhbFVzZXJNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuanVkaWNpYWxTZXJ2aWNlLnNlYXJjaEp1ZGljaWFsKHRlcm0sIHNlcnZpY2VJZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29udHJvbFZhbHVlRGlzcGxheVRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAgJiYgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMgJiYgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC52YWx1ZSA/XG4gICAgICB0aGlzLmdldERpc3BsYXlOYW1lKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wudmFsdWUgYXMgSnVkaWNpYWxVc2VyTW9kZWwpIDogJyc7XG4gIH1cbn1cbiJdfQ==
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvc2VhcmNoLWp1ZGljaWFscy9zZWFyY2gtanVkaWNpYWxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakcsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBT3BGO0lBbUJFLGtDQUE2QixlQUFtQyxFQUFFLEVBQWU7UUFBcEQsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBaEJoRCxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLHNCQUFpQixHQUF3QixFQUFFLENBQUM7UUFDNUMsY0FBUyxHQUFhLElBQUksQ0FBQztRQUMzQix1QkFBa0IsR0FBVyxFQUFFLENBQUM7UUFDaEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBRWpDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDekQsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixpQkFBWSxHQUFXLHdCQUF3QixDQUFDO1FBQ2hELGNBQVMsR0FBVyxFQUFFLENBQUM7UUFHdEIsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQW9CLElBQUksT0FBTyxFQUFFLENBQUM7UUFD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RTs7a0VBQXdEO0lBQ3ZEO1FBQVIsS0FBSyxFQUFFOzsrREFBK0I7SUFDWTtRQUFsRCxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUM7a0NBQThCLFVBQVU7MEVBQW1CO0lBYmxHLHdCQUF3QjtRQUxwQyxTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLDhoQ0FBZ0Q7O1NBRWpELENBQUM7eUNBb0I4QyxrQkFBa0IsRUFBTSxXQUFXO09BbkJ0RSx3QkFBd0IsQ0FpSHBDO0lBQUQsK0JBQUM7Q0FBQSxBQWpIRCxJQWlIQztTQWpIWSx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBKdWRpY2lhbFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBGaW5kQVBlcnNvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9maW5kLXBlcnNvbi9maW5kLXBlcnNvbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneHVpbGliLXNlYXJjaC1qdWRpY2lhbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1qdWRpY2lhbHMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hKdWRpY2lhbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbiA9IG51bGw7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RlZEp1ZGljaWFsczogSnVkaWNpYWxVc2VyTW9kZWxbXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgc3VibWl0dGVkPzogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlckNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd0F1dG9jb21wbGV0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzcGxheWVkSnVkaWNpYWxzOiBKdWRpY2lhbFVzZXJNb2RlbFtdO1xuICBAT3V0cHV0KCkgcHVibGljIGp1ZGljaWFsQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8SnVkaWNpYWxVc2VyTW9kZWw+KCk7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZFZhbHVlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGVycm9yTWVzc2FnZTogc3RyaW5nID0gJ1lvdSBtdXN0IHNlbGVjdCBhIG5hbWUnO1xuICBASW5wdXQoKSBwdWJsaWMgc2VydmljZUlkOiBzdHJpbmcgPSAnJztcbiAgQFZpZXdDaGlsZCgnaW5wdXRTZWxlY3Rpb24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgcHVibGljIGF1dG9Db21wbGV0ZUlucHV0Qm94OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBwdWJsaWMgc2VsZWN0ZWRKdWRpY2lhbDogSnVkaWNpYWxVc2VyTW9kZWw7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWluU2VhcmNoQ2hhcmFjdGVycyA9IDM7XG4gIHB1YmxpYyBrZXlVcFN1YmplY3QkOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdCgpO1xuICBwdWJsaWMgc2VhcmNoSW5Qcm9ncmVzczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkganVkaWNpYWxTZXJ2aWNlOiBGaW5kQVBlcnNvblNlcnZpY2UsIGZiOiBGb3JtQnVpbGRlcikge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gZmIuZ3JvdXAoe1xuICAgICAgZm9ybUNvbnRyb2w6IFtudWxsXSxcbiAgICAgIHNlbGVjdGVkRm9ybUNvbnRyb2w6IFtudWxsXVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheWVkSnVkaWNpYWxzID0gW107XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgaWYgKHRoaXMuZm9ybUdyb3VwICYmIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzKSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wgPSB0aGlzLmNvbnRyb2w7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuZ2V0Q29udHJvbFZhbHVlRGlzcGxheVRleHQoKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMua2V5VXBTdWJqZWN0JC5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoc2VhcmNoVmFsdWUgPT4gdGhpcy5zZWFyY2goc2VhcmNoVmFsdWUgYXMgc3RyaW5nKSk7XG4gIH1cblxuICBwdWJsaWMgb25LZXlEb3duKCk6IHZvaWQge1xuICAgIHRoaXMuanVkaWNpYWxDaGFuZ2VkLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbktleVVwKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSBmYWxzZTtcbiAgICB0aGlzLmtleVVwU3ViamVjdCQubmV4dChldmVudC50YXJnZXQudmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG9uRm9jdXMoKSB7XG4gICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc3BsYXllZEp1ZGljaWFsc0R1cGxpY2F0aW9uRmlsdGVyZWQoKTogSnVkaWNpYWxVc2VyTW9kZWxbXSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheWVkSnVkaWNpYWxzLmZpbHRlcihcbiAgICAgIGp1ZGljaWFsID0+ICF0aGlzLnNlbGVjdGVkSnVkaWNpYWxzLm1hcChzZWxlY3RlZEp1ZGljaWFsID0+IHNlbGVjdGVkSnVkaWNpYWwuaWRhbUlkKS5pbmNsdWRlcyhqdWRpY2lhbC5pZGFtSWQpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIodGVybTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hKdWRpY2lhbHModGVybSwgdGhpcy5zZXJ2aWNlSWQpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoYXBpRGF0YTogSnVkaWNpYWxVc2VyTW9kZWxbXSkgPT4ge1xuICAgICAgICBjb25zdCBhcGlGaWx0ZXIgPSBhcGlEYXRhLmZpbHRlcihcbiAgICAgICAgICBhcGlKdWRpY2lhbCA9PiAhdGhpcy5zZWxlY3RlZEp1ZGljaWFscy5tYXAoc2VsZWN0ZWRKdWRpY2lhbCA9PiBzZWxlY3RlZEp1ZGljaWFsLmlkYW1JZCkuaW5jbHVkZXMoYXBpSnVkaWNpYWwuaWRhbUlkKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmRpc3BsYXllZEp1ZGljaWFscyA9IGFwaUZpbHRlcjtcbiAgICAgICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBhcGlGaWx0ZXI7XG4gICAgICB9KVxuICAgICkuc3Vic2NyaWJlKGp1ZGljaWFsID0+IHtcbiAgICAgIGlmICh0ZXJtID09PSBqdWRpY2lhbC5rbm93bkFzKSB7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wuc2V0VmFsdWUoanVkaWNpYWwpO1xuICAgICAgICB0aGlzLmRpc3BsYXllZEp1ZGljaWFscyA9IFtdO1xuICAgICAgICB0aGlzLmp1ZGljaWFsQ2hhbmdlZC5lbWl0KGp1ZGljaWFsKTtcbiAgICAgICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gZmFsc2U7XG4gICAgICB9XG4gICAgICB0aGlzLnNlYXJjaEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlbGVjdGlvbkNoYW5nZShzZWxlY3Rpb24/OiBKdWRpY2lhbFVzZXJNb2RlbCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZvcm1Hcm91cC5jb250cm9scy5mb3JtQ29udHJvbCBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wgYXMgRm9ybUFycmF5KS5wdXNoKG5ldyBGb3JtQ29udHJvbChzZWxlY3Rpb24uaWRhbUlkKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wuc2V0VmFsdWUoc2VsZWN0aW9uKTtcbiAgICB9XG4gICAgdGhpcy5qdWRpY2lhbENoYW5nZWQuZW1pdChzZWxlY3Rpb24pO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaChjdXJyZW50VmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gISFjdXJyZW50VmFsdWUgJiYgKGN1cnJlbnRWYWx1ZS5sZW5ndGggPj0gdGhpcy5taW5TZWFyY2hDaGFyYWN0ZXJzKTtcbiAgICBpZiAoISFjdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wubWFya0FzRGlydHkoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC5yZXNldCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5zaG93QXV0b2NvbXBsZXRlKSB7XG4gICAgICB0aGlzLmZpbHRlcihjdXJyZW50VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlYXJjaEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0RGlzcGxheU5hbWUoc2VsZWN0ZWRKdWRpY2lhbDogSnVkaWNpYWxVc2VyTW9kZWwpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzZWxlY3RlZEp1ZGljaWFsLmtub3duQXN9ICgke3NlbGVjdGVkSnVkaWNpYWwuZW1haWxJZH0pYDtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hKdWRpY2lhbHModGVybTogc3RyaW5nLCBzZXJ2aWNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8SnVkaWNpYWxVc2VyTW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmp1ZGljaWFsU2VydmljZS5zZWFyY2hKdWRpY2lhbCh0ZXJtLCBzZXJ2aWNlSWQpO1xuICB9XG5cbiAgcHVibGljIGdldENvbnRyb2xWYWx1ZURpc3BsYXlUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwICYmIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzICYmIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wudmFsdWUgP1xuICAgICAgdGhpcy5nZXREaXNwbGF5TmFtZSh0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLnZhbHVlIGFzIEp1ZGljaWFsVXNlck1vZGVsKSA6ICcnO1xuICB9XG59XG4iXX0=
|