@sabstravtech/obtservices 0.0.22051001 → 0.1.6161600
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/angular/components/basket-panel.d.ts +1 -0
- package/angular/fetchers.d.ts +5 -0
- package/angular/lib/vendor/fetchers/get-companies.fetcher.d.ts +7 -0
- package/angular/lib/vendor/fetchers/get-company.fetcher.d.ts +7 -0
- package/angular/lib/vendor/fetchers/get-office.fetcher.d.ts +7 -0
- package/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +7 -0
- package/angular/lib/vendor/fetchers/get-user-guests.fetcher.d.ts +7 -0
- package/angular/lib/vendor/services/enterprise-basket.service.d.ts +4 -3
- package/angular/lib/vendor/services/logon.service.d.ts +2 -1
- package/angular/lib/vendor/services/user.service.d.ts +9 -3
- package/angular/lib/vendor/types/graphql.angular.types.d.ts +614 -550
- package/angular/lib/vendor/updaters/create-guest-updater.d.ts +6 -0
- package/angular/sabstravtech-obtservices-angular.metadata.json +1 -1
- package/angular/updaters.d.ts +1 -0
- package/base/fetchers.d.ts +5 -0
- package/base/lib/vendor/classes/base-enterprise.d.ts +7 -1
- package/base/lib/vendor/classes/basket-info-mi-details.impl.d.ts +2 -0
- package/base/lib/vendor/classes/bookable-basket.d.ts +2 -0
- package/base/lib/vendor/classes/cabhire-enterprise-search.d.ts +9 -4
- package/base/lib/vendor/classes/carhire-enterprise-search.d.ts +12 -4
- package/base/lib/vendor/classes/eurostar-enterprise-search.d.ts +14 -7
- package/base/lib/vendor/classes/fast-track-enterprise-search.d.ts +5 -4
- package/base/lib/vendor/classes/flight-enterprise-search.d.ts +16 -5
- package/base/lib/vendor/classes/helpers.d.ts +6 -1
- package/base/lib/vendor/classes/hotel-enterprise-search.d.ts +10 -3
- package/base/lib/vendor/classes/irl-enterprise-search.d.ts +13 -8
- package/base/lib/vendor/classes/lounges-enterprise-search.d.ts +5 -4
- package/base/lib/vendor/classes/management-info-and-valid.d.ts +3 -3
- package/base/lib/vendor/classes/modal-types.enum.d.ts +1 -0
- package/base/lib/vendor/classes/parking-enterprise-search.d.ts +5 -4
- package/base/lib/vendor/classes/rail-enterprise-search.d.ts +10 -8
- package/base/lib/vendor/classes/supplementary-booking-info-impl.d.ts +5 -3
- package/base/lib/vendor/classes/user-favourite.enum.d.ts +1 -0
- package/base/lib/vendor/fetchers/eurostar-quote.fetcher.d.ts +3 -1
- package/base/lib/vendor/fetchers/flight-quote.fetcher.d.ts +1 -0
- package/base/lib/vendor/fetchers/get-companies.fetcher.d.ts +21 -0
- package/base/lib/vendor/fetchers/get-company.fetcher.d.ts +20 -0
- package/base/lib/vendor/fetchers/get-office.fetcher.d.ts +20 -0
- package/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +21 -0
- package/base/lib/vendor/fetchers/get-user-guests.fetcher.d.ts +20 -0
- package/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.d.ts +2 -2
- package/base/lib/vendor/interfaces/Icabhire-enterprise-search.d.ts +2 -0
- package/base/lib/vendor/interfaces/Icarhire-enterprise-search.d.ts +5 -2
- package/base/lib/vendor/interfaces/Ienterprise-basket.service.d.ts +8 -6
- package/base/lib/vendor/interfaces/Ieurostar-enterprise-search.d.ts +1 -0
- package/base/lib/vendor/interfaces/Ifast-track-enterprise-search.d.ts +7 -5
- package/base/lib/vendor/interfaces/Iflight-enterprise-search.d.ts +8 -1
- package/base/lib/vendor/interfaces/Ihotel-enterprise-search.d.ts +8 -2
- package/base/lib/vendor/interfaces/Iirl-enterprise-search.d.ts +8 -7
- package/base/lib/vendor/interfaces/Ilounges-enterprise-search.d.ts +1 -0
- package/base/lib/vendor/interfaces/Imybookings.service.d.ts +3 -2
- package/base/lib/vendor/interfaces/Iparking-enterprise-search.d.ts +1 -0
- package/base/lib/vendor/interfaces/Irail-enterprise-search.d.ts +5 -2
- package/base/lib/vendor/interfaces/Isearch.service.d.ts +5 -2
- package/base/lib/vendor/interfaces/Isupplementary-booking-info-impl.d.ts +3 -2
- package/base/lib/vendor/interfaces/Iuser.service.d.ts +11 -3
- package/base/lib/vendor/interfaces/car-hire-search-arg.interface.d.ts +2 -3
- package/base/lib/vendor/interfaces/rail-basket-item.interface.d.ts +2 -0
- package/base/lib/vendor/interfaces/summary-interface.d.ts +6 -0
- package/base/lib/vendor/interfaces/user.data.d.ts +1 -0
- package/base/lib/vendor/models/traveller.object.d.ts +12 -2
- package/base/lib/vendor/services/enterprise-basket.service.d.ts +22 -9
- package/base/lib/vendor/services/logon.service.d.ts +5 -1
- package/base/lib/vendor/services/my-bookings.service.d.ts +3 -2
- package/base/lib/vendor/services/search.service.d.ts +27 -23
- package/base/lib/vendor/services/url.service.d.ts +2 -0
- package/base/lib/vendor/services/user.service.d.ts +36 -5
- package/base/lib/vendor/services/webtoken.service.d.ts +6 -0
- package/base/lib/vendor/types/graphql.types.d.ts +581 -549
- package/base/lib/vendor/types/types.d.ts +48 -6
- package/base/lib/vendor/updaters/create-guest-updater.d.ts +19 -0
- package/base/sabstravtech-obtservices-base.d.ts +1 -1
- package/base/sabstravtech-obtservices-base.metadata.json +1 -1
- package/base/updaters.d.ts +1 -0
- package/bundles/sabstravtech-obtservices-angular.umd.js +541 -252
- package/bundles/sabstravtech-obtservices-angular.umd.js.map +1 -1
- package/bundles/sabstravtech-obtservices-angular.umd.min.js +1 -1
- package/bundles/sabstravtech-obtservices-angular.umd.min.js.map +1 -1
- package/bundles/sabstravtech-obtservices-base.umd.js +4080 -1471
- package/bundles/sabstravtech-obtservices-base.umd.js.map +1 -1
- package/bundles/sabstravtech-obtservices-base.umd.min.js +2 -2
- package/bundles/sabstravtech-obtservices-base.umd.min.js.map +1 -1
- package/esm2015/angular/components/basket-panel.js +16 -7
- package/esm2015/angular/fetchers.js +6 -1
- package/esm2015/angular/lib/vendor/fetchers/get-companies.fetcher.js +25 -0
- package/esm2015/angular/lib/vendor/fetchers/get-company.fetcher.js +25 -0
- package/esm2015/angular/lib/vendor/fetchers/get-office.fetcher.js +25 -0
- package/esm2015/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +25 -0
- package/esm2015/angular/lib/vendor/fetchers/get-user-guests.fetcher.js +25 -0
- package/esm2015/angular/lib/vendor/services/enterprise-basket.service.js +24 -21
- package/esm2015/angular/lib/vendor/services/http-call.service.js +1 -1
- package/esm2015/angular/lib/vendor/services/logon.service.js +8 -5
- package/esm2015/angular/lib/vendor/services/search.service.js +1 -1
- package/esm2015/angular/lib/vendor/services/ticket-queue.service.js +4 -1
- package/esm2015/angular/lib/vendor/services/user.service.js +28 -10
- package/esm2015/angular/lib/vendor/services/webtoken.service.js +6 -2
- package/esm2015/angular/lib/vendor/types/graphql.angular.types.js +1023 -1220
- package/esm2015/angular/lib/vendor/updaters/create-guest-updater.js +22 -0
- package/esm2015/angular/updaters.js +2 -1
- package/esm2015/base/fetchers.js +6 -1
- package/esm2015/base/lib/vendor/classes/base-enterprise.js +12 -3
- package/esm2015/base/lib/vendor/classes/basket-info-mi-details.impl.js +14 -1
- package/esm2015/base/lib/vendor/classes/bookable-basket.js +27 -8
- package/esm2015/base/lib/vendor/classes/cabhire-enterprise-search.js +219 -18
- package/esm2015/base/lib/vendor/classes/carhire-enterprise-search.js +235 -67
- package/esm2015/base/lib/vendor/classes/eurostar-enterprise-search.js +462 -49
- package/esm2015/base/lib/vendor/classes/fast-track-enterprise-search.js +37 -13
- package/esm2015/base/lib/vendor/classes/flight-enterprise-search.js +281 -62
- package/esm2015/base/lib/vendor/classes/helpers.js +32 -3
- package/esm2015/base/lib/vendor/classes/hotel-enterprise-search.js +228 -54
- package/esm2015/base/lib/vendor/classes/irl-enterprise-search.js +221 -46
- package/esm2015/base/lib/vendor/classes/lounges-enterprise-search.js +101 -14
- package/esm2015/base/lib/vendor/classes/management-info-and-valid.js +67 -40
- package/esm2015/base/lib/vendor/classes/modal-types.enum.js +2 -1
- package/esm2015/base/lib/vendor/classes/parking-enterprise-search.js +146 -11
- package/esm2015/base/lib/vendor/classes/rail-enterprise-search.js +210 -25
- package/esm2015/base/lib/vendor/classes/supplementary-booking-info-impl.js +58 -4
- package/esm2015/base/lib/vendor/classes/user-favourite.enum.js +2 -1
- package/esm2015/base/lib/vendor/data/countries.json +484 -242
- package/esm2015/base/lib/vendor/fetchers/eurostar-quote.fetcher.js +3 -3
- package/esm2015/base/lib/vendor/fetchers/flight-quote.fetcher.js +3 -3
- package/esm2015/base/lib/vendor/fetchers/get-companies.fetcher.js +11 -0
- package/esm2015/base/lib/vendor/fetchers/get-company.fetcher.js +11 -0
- package/esm2015/base/lib/vendor/fetchers/get-office.fetcher.js +11 -0
- package/esm2015/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +10 -0
- package/esm2015/base/lib/vendor/fetchers/get-user-guests.fetcher.js +11 -0
- package/esm2015/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Icabhire-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Icarhire-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ienterprise-basket.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ieurostar-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ifast-track-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Iflight-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ihotel-enterprise-search.js +2 -1
- package/esm2015/base/lib/vendor/interfaces/Iirl-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ilounges-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Imybookings.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Iparking-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Irail-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Isearch.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Isupplementary-booking-info-impl.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Iuser.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/car-hire-search-arg.interface.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/rail-basket-item.interface.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/summary-interface.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/user.data.js +1 -1
- package/esm2015/base/lib/vendor/models/traveller.object.js +21 -3
- package/esm2015/base/lib/vendor/services/enterprise-basket.service.js +129 -43
- package/esm2015/base/lib/vendor/services/http-call.service.js +1 -1
- package/esm2015/base/lib/vendor/services/logon.service.js +40 -3
- package/esm2015/base/lib/vendor/services/my-bookings.service.js +3 -2
- package/esm2015/base/lib/vendor/services/requires-reason.service.js +14 -10
- package/esm2015/base/lib/vendor/services/search.service.js +100 -117
- package/esm2015/base/lib/vendor/services/url.service.js +3 -1
- package/esm2015/base/lib/vendor/services/user.service.js +90 -12
- package/esm2015/base/lib/vendor/services/webtoken.service.js +14 -1
- package/esm2015/base/lib/vendor/types/graphql.types.js +21 -2
- package/esm2015/base/lib/vendor/types/types.js +32 -14
- package/esm2015/base/lib/vendor/updaters/create-guest-updater.js +11 -0
- package/esm2015/base/sabstravtech-obtservices-base.js +1 -1
- package/esm2015/base/updaters.js +2 -1
- package/fesm2015/sabstravtech-obtservices-angular.js +1254 -1332
- package/fesm2015/sabstravtech-obtservices-angular.js.map +1 -1
- package/fesm2015/sabstravtech-obtservices-base.js +3324 -839
- package/fesm2015/sabstravtech-obtservices-base.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BaseCreateGuestUpdater } from '@sabstravtech/obtservices/base';
|
|
3
|
+
import { ModalOpenerService } from '../services/modal-opener.service';
|
|
4
|
+
import { CreateGuestGQL } from '../types/graphql.angular.types';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../types/graphql.angular.types";
|
|
7
|
+
import * as i2 from "../services/modal-opener.service";
|
|
8
|
+
export class CreateGuestUpdater extends BaseCreateGuestUpdater {
|
|
9
|
+
constructor(createGuestGQL, modalService) {
|
|
10
|
+
super(createGuestGQL, modalService);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
/** @nocollapse */ CreateGuestUpdater.ɵprov = i0.ɵɵdefineInjectable({ factory: function CreateGuestUpdater_Factory() { return new CreateGuestUpdater(i0.ɵɵinject(i1.CreateGuestGQL), i0.ɵɵinject(i2.ModalOpenerService)); }, token: CreateGuestUpdater, providedIn: "root" });
|
|
14
|
+
CreateGuestUpdater.decorators = [
|
|
15
|
+
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
16
|
+
];
|
|
17
|
+
/** @nocollapse */
|
|
18
|
+
CreateGuestUpdater.ctorParameters = () => [
|
|
19
|
+
{ type: CreateGuestGQL },
|
|
20
|
+
{ type: ModalOpenerService }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWd1ZXN0LXVwZGF0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vYnRzZXJ2aWNlcy9hbmd1bGFyL3NyYy9saWIvdmVuZG9yL3VwZGF0ZXJzL2NyZWF0ZS1ndWVzdC11cGRhdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7O0FBR2hFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBc0M7SUFDNUUsWUFDRSxjQUE4QixFQUM5QixZQUFnQztRQUVoQyxLQUFLLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Ozs7WUFQRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O1lBRnpCLGNBQWM7WUFEZCxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VDcmVhdGVHdWVzdFVwZGF0ZXIgfSBmcm9tICdAc2Fic3RyYXZ0ZWNoL29idHNlcnZpY2VzL2Jhc2UnO1xyXG5pbXBvcnQgeyBNb2RhbE9wZW5lclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9tb2RhbC1vcGVuZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENyZWF0ZUd1ZXN0R1FMIH0gZnJvbSAnLi4vdHlwZXMvZ3JhcGhxbC5hbmd1bGFyLnR5cGVzJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGVHdWVzdFVwZGF0ZXIgZXh0ZW5kcyBCYXNlQ3JlYXRlR3Vlc3RVcGRhdGVyPENyZWF0ZUd1ZXN0R1FMPiB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBjcmVhdGVHdWVzdEdRTDogQ3JlYXRlR3Vlc3RHUUwsXHJcbiAgICBtb2RhbFNlcnZpY2U6IE1vZGFsT3BlbmVyU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoY3JlYXRlR3Vlc3RHUUwsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -14,4 +14,5 @@ export * from './lib/vendor/updaters/set-payment-option.updater';
|
|
|
14
14
|
export * from './lib/vendor/updaters/cancel-booking-updater';
|
|
15
15
|
export * from './lib/vendor/updaters/save-favourite-search.updater';
|
|
16
16
|
export * from './lib/vendor/updaters/remove-favourite-search.updater';
|
|
17
|
-
|
|
17
|
+
export * from './lib/vendor/updaters/create-guest-updater';
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vYnRzZXJ2aWNlcy9hbmd1bGFyL3NyYy91cGRhdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvdXBkYXRlcnMvYWNjZXB0LW5ldy1wcmljZS51cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL2FkZC1pdGVtLXRvLWJhc2tldC51cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL2FkZFVzZXJUb0Jhc2tldEl0ZW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvdXBkYXRlcnMvYm9vay1iYXNrZXQtdXBkYXRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci91cGRhdGVycy9jcmVhdGUtYmFza2V0LXVwZGF0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvdXBkYXRlcnMvcmVtb3ZlLWJhc2tldC11cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL3JlbW92ZS1pdGVtLWZyb20tYmFza2V0LnVwZGF0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvdXBkYXRlcnMvcmV2YWxpZGF0ZS1iYXNrZXQtdXBkYXRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci91cGRhdGVycy9zYXZlLXVzZXItYWRkcmVzcy51cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL3NlbmQtYmFza2V0LWZvci1hcHByb3ZhbC51cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL3NldC1iYXNrZXQtaXRlbS1taS1ncm91cCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci91cGRhdGVycy9zZXQtYmFza2V0LWl0ZW0tbWktdmFsdWUtdXBkYXRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci91cGRhdGVycy9zZXQtcGF5bWVudC1vcHRpb24udXBkYXRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci91cGRhdGVycy9jYW5jZWwtYm9va2luZy11cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL3NhdmUtZmF2b3VyaXRlLXNlYXJjaC51cGRhdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL3VwZGF0ZXJzL3JlbW92ZS1mYXZvdXJpdGUtc2VhcmNoLnVwZGF0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvdXBkYXRlcnMvY3JlYXRlLWd1ZXN0LXVwZGF0ZXInO1xyXG4iXX0=
|
package/esm2015/base/fetchers.js
CHANGED
|
@@ -61,6 +61,8 @@ export * from './lib/vendor/fetchers/get-rail-live-departures.fetcher';
|
|
|
61
61
|
export * from './lib/vendor/fetchers/get-flight-seat-map-fetcher';
|
|
62
62
|
export * from './lib/vendor/fetchers/get-user-favourite-searches.fetcher';
|
|
63
63
|
export * from './lib/vendor/fetchers/get-conferma-room-images.fetcher';
|
|
64
|
+
export * from './lib/vendor/fetchers/get-companies.fetcher';
|
|
65
|
+
export * from './lib/vendor/fetchers/get-company.fetcher';
|
|
64
66
|
export * from './lib/vendor/fetchers/email-basket.fetcher';
|
|
65
67
|
export * from './lib/vendor/fetchers/fast-track-quote.fetcher';
|
|
66
68
|
export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
|
|
@@ -71,4 +73,7 @@ export * from './lib/vendor/fetchers/get-car-hire-providers.fetcher';
|
|
|
71
73
|
export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
|
|
72
74
|
export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
|
|
73
75
|
export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
|
|
74
|
-
|
|
76
|
+
export * from './lib/vendor/fetchers/get-user-guests.fetcher';
|
|
77
|
+
export * from './lib/vendor/fetchers/get-office.fetcher';
|
|
78
|
+
export * from './lib/vendor/fetchers/get-user-default-mi-value.fetcher';
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2hlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vYnRzZXJ2aWNlcy9iYXNlL3NyYy9mZXRjaGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5REFBeUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9hcHBseS1qaXQtZmxpZ2h0LXJ1bGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2FwcGx5LUpJVC1ob3RlbC1ydWxlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2Jhc2tldC1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2NhYmhpcmUtcXVvdGUtZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9jYXJoaXJlLWF2YWlsYWJpbGl0eS1kZXRhaWwuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9jYXJoaXJlLXF1b3RlLWZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtb2ZmaWNlLW5hbWVzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtb2ZmaWNlLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtcXVpY2tsaXN0LmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZXVyb3N0YXItcXVvdGUuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9mbGlnaHQtZmFyZS1ydWxlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2ZsaWdodC1xdW90ZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1jb3ZpZC1taWNyb3NpdGUtdG9rZW4uZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtcmFpbC1jYXJkcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1yYWlsLWxpdmUtZGVwYXJ0dXJlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1yYWlsLXN0YXRpb24uZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtaXJsLXN1cHBsaWVyLXN0YXRpb24uZmV0Y2hlcidcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1yaXNrLWFsZXJ0cy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC11c2VyLWNvbXBhbnktb2ZmaWNlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC11c2VyLWN1cnJlbnQtY2FyYm9uLWFsbG93YW5jZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC11c2VyLXJlY2VudC1zZWFyY2hlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC11c2Vycy1iYXNrZXRzLWZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0TWlBdXRvU3VnZXN0aW9ucy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2hvdGVsLWF2YWxpYWJpbGl0eS1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2hvdGVsLXF1b3RlLWZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvaXJsLWRpc2NvdW50LWNhcmQtZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9pcmwtcXVvdGUtZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9sb3VuZ2UtcXVvdGUuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9wYXJraW5nLXF1b3RlLWZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvcmFpbC1xdW90ZS1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1haXJsaW5lcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1haXJwb3J0cy1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1jaXRpZXMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9zZWFyY2gtY29uZmVybWEtY2l0aWVzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvc2VhcmNoLWRlcG90cy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1ob3RlbC1jaGFpbnMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9zZWFyY2gtaXJsLXN0YXRpb25zLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvc2VhcmNoLXBvc3Rjb2Rlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1yYWlsLXN0YXRpb25zLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvc2VhcmNoLXVzZXJzLWNhbi1ib29rLWZvci1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3VzZXItYWRkcmVzc2VzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvdXNlci1mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3VzZXItbWVzc2FnZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3VzZXItcHJvZHVjdHMtZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy91c2VyLXVpLWNvbmZpZ3MtZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy91c2VyLWFkZHJlc3Nlcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1kZXBvdHMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtdXNlci1jb21wYW55LW9mZmljZXMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9zZWFyY2gtaG90ZWwtY2hhaW5zLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtb2ZmaWNlLW5hbWVzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtb2ZmaWNlLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXVzZXItY3VycmVudC1jYXJib24tYWxsb3dhbmNlLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXJpc2stYWxlcnRzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvY29uZmVybWEtcXVpY2tsaXN0LmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXJhaWwtY2FyZHMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9ldXJvc3Rhci1xdW90ZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlYXJjaC1pcmwtc3RhdGlvbnMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtY292aWQtbWljcm9zaXRlLXRva2VuLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZmxpZ2h0LWZhcmUtcnVsZXMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtcmFpbC1saXZlLWRlcGFydHVyZXMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtZmxpZ2h0LXNlYXQtbWFwLWZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXVzZXItZmF2b3VyaXRlLXNlYXJjaGVzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LWNvbmZlcm1hLXJvb20taW1hZ2VzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LWNvbXBhbmllcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1jb21wYW55LmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZW1haWwtYmFza2V0LmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZmFzdC10cmFjay1xdW90ZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL3NlbmQtb2ZmbGluZS1ub3RpZmljYXRpb24uZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9nZXQtaG90ZWwtY2hhaW5zLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXJhaWwtcHJvdmlkZXJzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LWFsbC1haXJsaW5lcy5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC1jYXItaGlyZS1wcm92aWRlcnMuZmV0Y2hlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZlbmRvci9mZXRjaGVycy9zZW5kLW9mZmxpbmUtbm90aWZpY2F0aW9uLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LWNhbmNlbGxhdGlvbi1pbmZvLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LWNhbmNlbGxhdGlvbi1pbmZvLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LXVzZXItZ3Vlc3RzLmZldGNoZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92ZW5kb3IvZmV0Y2hlcnMvZ2V0LW9mZmljZS5mZXRjaGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdmVuZG9yL2ZldGNoZXJzL2dldC11c2VyLWRlZmF1bHQtbWktdmFsdWUuZmV0Y2hlcic7Il19
|
|
@@ -2,9 +2,10 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
2
2
|
import { take } from 'rxjs/operators';
|
|
3
3
|
import * as _ from 'lodash';
|
|
4
4
|
export class BaseEnterpriseSearch {
|
|
5
|
-
constructor(storageService, helpers) {
|
|
5
|
+
constructor(storageService, helpers, searchService, userService) {
|
|
6
6
|
this.storageService = storageService;
|
|
7
7
|
this.helpers = helpers;
|
|
8
|
+
this.searchService = searchService;
|
|
8
9
|
this._cheapestResultPrice = {
|
|
9
10
|
amount: null,
|
|
10
11
|
currencyCode: null
|
|
@@ -28,6 +29,11 @@ export class BaseEnterpriseSearch {
|
|
|
28
29
|
get originalUserSearch() {
|
|
29
30
|
return this._originalUserSearch;
|
|
30
31
|
}
|
|
32
|
+
performSearch() {
|
|
33
|
+
this.searchService.search_objects[this.type].chosen = true;
|
|
34
|
+
this.searchService.determineHighestSearchPriority();
|
|
35
|
+
this.searchService.startSearches();
|
|
36
|
+
}
|
|
31
37
|
processResults(results) {
|
|
32
38
|
return results;
|
|
33
39
|
}
|
|
@@ -44,6 +50,8 @@ export class BaseEnterpriseSearch {
|
|
|
44
50
|
try {
|
|
45
51
|
results.pipe(take(1)).subscribe((results1) => {
|
|
46
52
|
console.log('Got results', _.cloneDeep(results1));
|
|
53
|
+
this.rawResults = Object.freeze(results1);
|
|
54
|
+
this.storageService.setSessionItem(this.resultsSessionName + '_raw', this.rawResults);
|
|
47
55
|
this.fullResults = Object.freeze(this.processResults(results1));
|
|
48
56
|
this._cheapestResultPrice = this.updateLowestPrice(this.fullResults);
|
|
49
57
|
this.storageService.setSessionItem(this.resultsSessionName, this.makeSessionResults(this.fullResults));
|
|
@@ -53,8 +61,9 @@ export class BaseEnterpriseSearch {
|
|
|
53
61
|
resolve(false);
|
|
54
62
|
this.isLoading.next(false);
|
|
55
63
|
}, () => {
|
|
64
|
+
var _a;
|
|
56
65
|
this.isLoading.next(false);
|
|
57
|
-
resolve(this.fullResults.length !== 0);
|
|
66
|
+
resolve(((_a = this.fullResults) === null || _a === void 0 ? void 0 : _a.length) !== 0);
|
|
58
67
|
});
|
|
59
68
|
}
|
|
60
69
|
catch (err) {
|
|
@@ -122,4 +131,4 @@ export class BaseEnterpriseSearch {
|
|
|
122
131
|
this.results.next(this.helpers.clone(this.fullResults));
|
|
123
132
|
}
|
|
124
133
|
}
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lbnRlcnByaXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jhc2UtZW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFNNUIsTUFBTSxPQUFnQixvQkFBb0I7SUF1Q3hDLFlBQ1ksY0FBa0MsRUFDbEMsT0FBMkI7UUFEM0IsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBeEM3Qix5QkFBb0IsR0FBbUI7WUFDL0MsTUFBTSxFQUFFLElBQUk7WUFDWixZQUFZLEVBQUUsSUFBSTtTQUNuQixDQUFDO1FBRUssWUFBTyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzlDLFlBQU8sR0FBdUIsSUFBSSxlQUFlLENBQUksRUFBTyxDQUFDLENBQUM7UUFDOUQsaUJBQVksR0FBMkIsSUFBSSxlQUFlLENBQy9ELEVBQU8sQ0FDUixDQUFDO1FBQ0ssYUFBUSxHQUE4QixJQUFJLGVBQWUsQ0FDOUQsRUFBRSxDQUNILENBQUM7UUFDSyxpQkFBWSxHQUE4QixJQUFJLGVBQWUsQ0FFbEUsRUFBRSxDQUFDLENBQUM7UUFDQyx1QkFBa0IsR0FBYSxFQUFFLENBQUM7UUFDbEMsaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDNUIsY0FBUyxHQUE2QixJQUFJLGVBQWUsQ0FDOUQsS0FBSyxDQUNOLENBQUM7UUFJUSxlQUFVLEdBQU0sRUFBTyxDQUFDO1FBQ3hCLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFFNUIsZ0JBQVcsR0FBTSxFQUFPLENBQUMs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QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFpQlMsWUFBWTtRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IEJhc2tldEl0ZW0sIFNlcnZpY2VUeXBlIH0gZnJvbSAnLi4vdHlwZXMvZ3JhcGhxbC50eXBlcyc7XHJcbmltcG9ydCB7IElDaGVhcGVzdFByaWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9jaGVhcGVzdC1wcmljZSc7XHJcbmltcG9ydCB7IFJlY2VudFNlYXJjaCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgQmFzZUhlbHBlclJvdXRpbmVzIH0gZnJvbSAnLi9oZWxwZXJzJztcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRW50ZXJwcmlzZVNlYXJjaDxQLCBSLCBPIGV4dGVuZHMgQXJyYXk8YW55Pj4ge1xyXG4gIHByb3RlY3RlZCBfY2hlYXBlc3RSZXN1bHRQcmljZTogSUNoZWFwZXN0UHJpY2UgPSB7XHJcbiAgICBhbW91bnQ6IG51bGwsXHJcbiAgICBjdXJyZW5jeUNvZGU6IG51bGxcclxuICB9O1xyXG4gIHByb3RlY3RlZCBfb3JpZ2luYWxVc2VyU2VhcmNoOiBQO1xyXG4gIHB1YmxpYyBpc1ZhbGlkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHVibGljIHJlc3VsdHM6IEJlaGF2aW9yU3ViamVjdDxPPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tz4oW10gYXMgTyk7XHJcbiAgcHVibGljIG11bHRpUmVzdWx0czogQmVoYXZpb3JTdWJqZWN0PE9bXVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T1tdW10+KFxyXG4gICAgW10gYXMgT1xyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmdbXT4oXHJcbiAgICBbXVxyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzSW5mbzogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XHJcbiAgICBzdHJpbmdbXVxyXG4gID4oW10pO1xyXG4gIHB1YmxpYyB2YWxpZGF0aW9uTWVzc2FnZXM6IHN0cmluZ1tdID0gW107XHJcbiAgcHVibGljIGluZm9NZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgaXNMb2FkaW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KFxyXG4gICAgZmFsc2VcclxuICApO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG11bHRpUmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIHRlbXBQYXJhbXM6IFAgPSB7fSBhcyBQO1xyXG4gIHByb3RlY3RlZCBkb0NoZWNrczogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIGFic3RyYWN0IHR5cGU6IFNlcnZpY2VUeXBlO1xyXG4gIHB1YmxpYyBmdWxsUmVzdWx0czogTyA9IFtdIGFzIE87IC8vIHNob3VsZCBiZSBhbiBhcnJheSBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcbiAgcHVibGljIGZ1bGxNdWx0aVJlc3VsdHM6IE9bXVtdID0gW107IC8vIGFuIGFycmF5IG9mIGFycmF5cyBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcblxyXG4gIGdldCBjaGVhcGVzdFByaWNlKCk6IElDaGVhcGVzdFByaWNlIHtcclxuICAgIHJldHVybiB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG9yaWdpbmFsVXNlclNlYXJjaCgpOiBQIHtcclxuICAgIHJldHVybiB0aGlzLl9vcmlnaW5hbFVzZXJTZWFyY2g7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBzdG9yYWdlU2VydmljZTogQmFzZVN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGhlbHBlcnM6IEJhc2VIZWxwZXJSb3V0aW5lc1xyXG4gICkge31cclxuXHJcbiAgcHJvdGVjdGVkIHByb2Nlc3NSZXN1bHRzKHJlc3VsdHM6IFIpOiBPIHtcclxuICAgIHJldHVybiByZXN1bHRzIGFzIHVua25vd24gYXMgTztcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB1cGRhdGVUZW1wUGFyYW1zKHRlbXBQYXJhbXM6IFApOiB2b2lkIHtcclxuICAgIHRoaXMuZG9DaGVja3MgPSBmYWxzZTtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcywgdGVtcFBhcmFtcyk7XHJcbiAgICB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gbnVsbDtcclxuICAgIHRoaXMuZG9DaGVja3MgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9zdGFydFNlYXJjaChyZXN1bHRzOiBPYnNlcnZhYmxlPFI+KTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICB0aGlzLmlzTG9hZGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5mdWxsUmVzdWx0cyA9IFtdIGFzIE87XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHJlc3VsdHMucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAocmVzdWx0czE6IFIpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0dvdCByZXN1bHRzJywgXy5jbG9uZURlZXAocmVzdWx0czEpKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuZnVsbFJlc3VsdHMgPSBPYmplY3QuZnJlZXplKFxyXG4gICAgICAgICAgICAgIHRoaXMucHJvY2Vzc1Jlc3VsdHMocmVzdWx0czEpXHJcbiAgICAgICAgICAgICkgYXMgTztcclxuICAgICAgICAgICAgdGhpcy5fY2hlYXBlc3RSZXN1bHRQcmljZSA9IHRoaXMudXBkYXRlTG93ZXN0UHJpY2UoXHJcbiAgICAgICAgICAgICAgdGhpcy5mdWxsUmVzdWx0c1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldFNlc3Npb25JdGVtKFxyXG4gICAgICAgICAgICAgIHRoaXMucmVzdWx0c1Nlc3Npb25OYW1lLFxyXG4gICAgICAgICAgICAgIHRoaXMubWFrZVNlc3Npb25SZXN1bHRzKHRoaXMuZnVsbFJlc3VsdHMpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMuX2FwcGx5RmlsdGVyKCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZy5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLmZ1bGxSZXN1bHRzLmxlbmd0aCAhPT0gMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSwgW10pO1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfc3RhcnRNdWx0aVNlYXJjaChyZXN1bHRzQXJyYXk6IE9ic2VydmFibGU8Uj5bXSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZnVsbE11bHRpUmVzdWx0cyA9IFtdO1xyXG5cclxuICAgIGNvbnN0IGFsbFF1ZXJpZXM6IFByb21pc2U8Ym9vbGVhbj5bXSA9IFtdO1xyXG5cclxuICAgIHJlc3VsdHNBcnJheS5mb3JFYWNoKChyZXN1bHRzLCBpbmRleCkgPT4ge1xyXG4gICAgICBhbGxRdWVyaWVzLnB1c2goXHJcbiAgICAgICAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAocmVzdWx0czE6IFIpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdHb3QgcmVzdWx0cycsIF8uY2xvbmVEZWVwKHJlc3VsdHMxKSk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtYXBwZWRSZXN1bHRzID0gdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWxsTXVsdGlSZXN1bHRzW2luZGV4XSA9IG1hcHBlZFJlc3VsdHM7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZSggIC8vIHBlcmZvcm0gdGhlc2UgYWZ0ZXIgYWxsIHNlYXJjaGVzIGNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAvLyAgIHRoaXMuZnVsbFJlc3VsdHNcclxuICAgICAgICAgICAgICAgIC8vICk7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmZ1bGxSZXN1bHRzKTtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUobWFwcGVkUmVzdWx0cy5sZW5ndGggIT09IDApO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm11bHRpUmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0odGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsIFtdKTtcclxuICAgICAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dChbXSBhcyBPKTtcclxuICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBQcm9taXNlLmFsbChhbGxRdWVyaWVzKS50aGVuKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICBjb25zb2xlLmxvZygnKysrIE11bHRpbG9hZGluZyBDb21wbGV0ZSArKysnKTtcclxuICAgICAgY29uc29sZS5sb2coJysrKyBNdWx0aSBSZXN1bHRzOiAnLCB0aGlzLmZ1bGxNdWx0aVJlc3VsdHMsICcgKysrJyk7XHJcblxyXG4gICAgICAvLyBzdG9yZSB0aGUgZnVsbCByZXN1bHRzXHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHNTZXNzaW9uTmFtZSxcclxuICAgICAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHNcclxuICAgICAgKTtcclxuXHJcbiAgICAgIHRoaXMubXVsdGlSZXN1bHRzLm5leHQodGhpcy5mdWxsTXVsdGlSZXN1bHRzKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSk7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVNlc3Npb25JdGVtKHRoaXMubXVsdGlSZXN1bHRzU2Vzc2lvbk5hbWUpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHt9XHJcbiAgICB0aGlzLmZ1bGxSZXN1bHRzID0gW10gYXMgTztcclxuICAgIHRoaXMuZnVsbE11bHRpUmVzdWx0cyA9IFtdO1xyXG4gICAgdGhpcy5yZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICB0aGlzLm11bHRpUmVzdWx0cy5uZXh0KFtdKTtcclxuICAgIHRoaXMucmVzZXRRdWVyeSgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIG1ha2VTZXNzaW9uUmVzdWx0cyhkYXRhOiBPKTogYW55IHtcclxuICAgIHJldHVybiBkYXRhO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlc2V0UXVlcnkoKTogdm9pZDtcclxuXHJcbiAgYWJzdHJhY3Qgc3RhcnRTZWFyY2goKTogUHJvbWlzZTxib29sZWFuPjtcclxuXHJcbiAgYWJzdHJhY3Qgc3RhcnRSZWNlbnRTZWFyY2gocmVjZW50U2VhcmNoOiBSZWNlbnRTZWFyY2gpOiB2b2lkO1xyXG5cclxuICBhYnN0cmFjdCB1cGRhdGVMb3dlc3RQcmljZShyZXN1bHRzOiBPKTogSUNoZWFwZXN0UHJpY2U7XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gcHJldmlvdXNJdGVtcyBiYXNrZXRpdGVtcyB0aGF0IGFscmVhZHkgYmVlbiBhZGRlZC4gVGhpcyBjYW4gYmUgdXNlZCB0byBzZXQgdXAgdGhlIGRlZmF1bHRzIGZvciB0aGUgc2VhcmNoLlxyXG4gICAqL1xyXG4gIGFic3RyYWN0IHVwZGF0ZUZyb21QcmV2aW91c1NlYXJjaGVzKFxyXG4gICAgcHJldmlvdXNJdGVtczogUmVjb3JkPFNlcnZpY2VUeXBlLCBCYXNrZXRJdGVtPlxyXG4gICk6IHZvaWQ7XHJcblxyXG4gIHByb3RlY3RlZCBfYXBwbHlGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmhlbHBlcnMuY2xvbmUodGhpcy5mdWxsUmVzdWx0cykpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lbnRlcnByaXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jhc2UtZW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFhNUIsTUFBTSxPQUFnQixvQkFBb0I7SUF1Q3hDLFlBQ1ksY0FBa0MsRUFDbEMsT0FBMkIsRUFDM0IsYUFBK0MsRUFDekQsV0FBaUM7UUFIdkIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQXpDakQseUJBQW9CLEdBQW1CO1lBQy9DLE1BQU0sRUFBRSxJQUFJO1lBQ1osWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQztRQUVLLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFJLEVBQU8sQ0FBQyxDQUFDO1FBQzlELGlCQUFZLEdBQTJCLElBQUksZUFBZSxDQUMvRCxFQUFPLENBQ1IsQ0FBQztRQUNLLGFBQVEsR0FBOEIsSUFBSSxlQUFlLENBQzlELEVBQUUsQ0FDSCxDQUFDO1FBQ0ssaUJBQVksR0FBOEIsSUFBSSxlQUFlLENBRWxFLEVBQUUsQ0FBQyxDQUFDO1FBQ0MsdUJBQWtCLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBQzVCLGNBQVMsR0FBNkIsSUFBSSxlQUFlLENBQzlELEtBQUssQ0FDTixDQUFDO1FBSVEsZUFBVSxHQUFNLEVBQU8sQ0FBQztR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Q0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDL0QsSUFBSTtZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDckU7UUFBQyxPQUFPLEtBQUssRUFBRSxHQUFHO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBTyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxJQUFPO1FBQ2xDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQW1CUyxZQUFZO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEJhc2VTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHtcclxuICBCYXNrZXRJdGVtLFxyXG4gIFNlYXJjaExvdW5nZXNRdWVyeVZhcmlhYmxlcyxcclxuICBTZXJ2aWNlVHlwZSxcclxuICBVaUNvbmZpZ1xyXG59IGZyb20gJy4uL3R5cGVzL2dyYXBocWwudHlwZXMnO1xyXG5pbXBvcnQgeyBJQ2hlYXBlc3RQcmljZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvY2hlYXBlc3QtcHJpY2UnO1xyXG5pbXBvcnQgeyBSZWNlbnRTZWFyY2gsIFVucGFja2VkLCBVc2VyVWlDb25maWdzUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBCYXNlSGVscGVyUm91dGluZXMgfSBmcm9tICcuL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBCYXNlRW50ZXJwcmlzZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zZWFyY2guc2VydmljZSc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9Jc2VhcmNoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSXVzZXIuc2VydmljZSc7XHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRW50ZXJwcmlzZVNlYXJjaDxQLCBSLCBPIGV4dGVuZHMgQXJyYXk8YW55Pj4ge1xyXG4gIHByb3RlY3RlZCBfY2hlYXBlc3RSZXN1bHRQcmljZTogSUNoZWFwZXN0UHJpY2UgPSB7XHJcbiAgICBhbW91bnQ6IG51bGwsXHJcbiAgICBjdXJyZW5jeUNvZGU6IG51bGxcclxuICB9O1xyXG4gIHByb3RlY3RlZCBfb3JpZ2luYWxVc2VyU2VhcmNoOiBQO1xyXG4gIHB1YmxpYyBpc1ZhbGlkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHVibGljIHJlc3VsdHM6IEJlaGF2aW9yU3ViamVjdDxPPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tz4oW10gYXMgTyk7XHJcbiAgcHVibGljIG11bHRpUmVzdWx0czogQmVoYXZpb3JTdWJqZWN0PE9bXVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T1tdW10+KFxyXG4gICAgW10gYXMgT1xyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmdbXT4oXHJcbiAgICBbXVxyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzSW5mbzogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XHJcbiAgICBzdHJpbmdbXVxyXG4gID4oW10pO1xyXG4gIHB1YmxpYyB2YWxpZGF0aW9uTWVzc2FnZXM6IHN0cmluZ1tdID0gW107XHJcbiAgcHVibGljIGluZm9NZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgaXNMb2FkaW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KFxyXG4gICAgZmFsc2VcclxuICApO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG11bHRpUmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIHRlbXBQYXJhbXM6IFAgPSB7fSBhcyBQO1xyXG4gIHByb3RlY3RlZCBkb0NoZWNrczogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIGFic3RyYWN0IHR5cGU6IFNlcnZpY2VUeXBlO1xyXG4gIHB1YmxpYyBmdWxsUmVzdWx0czogTyA9IFtdIGFzIE87IC8vIHNob3VsZCBiZSBhbiBhcnJheSBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcbiAgcHVibGljIGZ1bGxNdWx0aVJlc3VsdHM6IE9bXVtdID0gW107IC8vIGFuIGFycmF5IG9mIGFycmF5cyBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcbiAgcHVibGljIHJhd1Jlc3VsdHM6IFI7XHJcbiAgZ2V0IGNoZWFwZXN0UHJpY2UoKTogSUNoZWFwZXN0UHJpY2Uge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2U7XHJcbiAgfVxyXG5cclxuICBnZXQgb3JpZ2luYWxVc2VyU2VhcmNoKCk6IFAge1xyXG4gICAgcmV0dXJuIHRoaXMuX29yaWdpbmFsVXNlclNlYXJjaDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHN0b3JhZ2VTZXJ2aWNlOiBCYXNlU3RvcmFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaGVscGVyczogQmFzZUhlbHBlclJvdXRpbmVzLFxyXG4gICAgcHJvdGVjdGVkIHNlYXJjaFNlcnZpY2U6IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlLFxyXG4gICAgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlSW50ZXJmYWNlXHJcbiAgKSB7XHJcblxyXG4gXHJcbiAgfVxyXG5cclxuICBwZXJmb3JtU2VhcmNoKCkge1xyXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaF9vYmplY3RzW3RoaXMudHlwZV0uY2hvc2VuID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5kZXRlcm1pbmVIaWdoZXN0U2VhcmNoUHJpb3JpdHkoKTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5zdGFydFNlYXJjaGVzKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcHJvY2Vzc1Jlc3VsdHMocmVzdWx0czogUik6IE8ge1xyXG4gICAgcmV0dXJuIHJlc3VsdHMgYXMgdW5rbm93biBhcyBPO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHVwZGF0ZVRlbXBQYXJhbXModGVtcFBhcmFtczogUCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IGZhbHNlO1xyXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCB0ZW1wUGFyYW1zKTtcclxuICAgIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2UgPSBudWxsO1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX3N0YXJ0U2VhcmNoKHJlc3VsdHM6IE9ic2VydmFibGU8Uj4pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHRoaXMuaXNMb2FkaW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmZ1bGxSZXN1bHRzID0gW10gYXMgTztcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgIChyZXN1bHRzMTogUikgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnR290IHJlc3VsdHMnLCBfLmNsb25lRGVlcChyZXN1bHRzMSkpO1xyXG4gICAgICAgICAgICB0aGlzLnJhd1Jlc3VsdHMgPSBPYmplY3QuZnJlZXplKHJlc3VsdHMxKTtcclxuICAgICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbShcclxuICAgICAgICAgICAgICB0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSArICdfcmF3JyxcclxuICAgICAgICAgICAgICB0aGlzLnJhd1Jlc3VsdHNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5mdWxsUmVzdWx0cyA9IE9iamVjdC5mcmVlemUoXHJcbiAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSlcclxuICAgICAgICAgICAgKSBhcyBPO1xyXG4gICAgICAgICAgICB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZShcclxuICAgICAgICAgICAgICB0aGlzLmZ1bGxSZXN1bHRzXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgICAgICAgdGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsXHJcbiAgICAgICAgICAgICAgdGhpcy5tYWtlU2Vzc2lvblJlc3VsdHModGhpcy5mdWxsUmVzdWx0cylcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5fYXBwbHlGaWx0ZXIoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZy5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuZnVsbFJlc3VsdHM/Lmxlbmd0aCAhPT0gMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSwgW10pO1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfc3RhcnRNdWx0aVNlYXJjaChyZXN1bHRzQXJyYXk6IE9ic2VydmFibGU8Uj5bXSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZnVsbE11bHRpUmVzdWx0cyA9IFtdO1xyXG5cclxuICAgIGNvbnN0IGFsbFF1ZXJpZXM6IFByb21pc2U8Ym9vbGVhbj5bXSA9IFtdO1xyXG5cclxuICAgIHJlc3VsdHNBcnJheS5mb3JFYWNoKChyZXN1bHRzLCBpbmRleCkgPT4ge1xyXG4gICAgICBhbGxRdWVyaWVzLnB1c2goXHJcbiAgICAgICAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAocmVzdWx0czE6IFIpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdHb3QgcmVzdWx0cycsIF8uY2xvbmVEZWVwKHJlc3VsdHMxKSk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtYXBwZWRSZXN1bHRzID0gdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWxsTXVsdGlSZXN1bHRzW2luZGV4XSA9IG1hcHBlZFJlc3VsdHM7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZSggIC8vIHBlcmZvcm0gdGhlc2UgYWZ0ZXIgYWxsIHNlYXJjaGVzIGNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAvLyAgIHRoaXMuZnVsbFJlc3VsdHNcclxuICAgICAgICAgICAgICAgIC8vICk7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmZ1bGxSZXN1bHRzKTtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUobWFwcGVkUmVzdWx0cy5sZW5ndGggIT09IDApO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm11bHRpUmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0odGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsIFtdKTtcclxuICAgICAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dChbXSBhcyBPKTtcclxuICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBQcm9taXNlLmFsbChhbGxRdWVyaWVzKS50aGVuKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICBjb25zb2xlLmxvZygnKysrIE11bHRpbG9hZGluZyBDb21wbGV0ZSArKysnKTtcclxuICAgICAgY29uc29sZS5sb2coJysrKyBNdWx0aSBSZXN1bHRzOiAnLCB0aGlzLmZ1bGxNdWx0aVJlc3VsdHMsICcgKysrJyk7XHJcblxyXG4gICAgICAvLyBzdG9yZSB0aGUgZnVsbCByZXN1bHRzXHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHNTZXNzaW9uTmFtZSxcclxuICAgICAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHNcclxuICAgICAgKTtcclxuXHJcbiAgICAgIHRoaXMubXVsdGlSZXN1bHRzLm5leHQodGhpcy5mdWxsTXVsdGlSZXN1bHRzKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSk7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVNlc3Npb25JdGVtKHRoaXMubXVsdGlSZXN1bHRzU2Vzc2lvbk5hbWUpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHsgfVxyXG4gICAgdGhpcy5mdWxsUmVzdWx0cyA9IFtdIGFzIE87XHJcbiAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHMgPSBbXTtcclxuICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dChbXSk7XHJcbiAgICB0aGlzLnJlc2V0UXVlcnkoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBtYWtlU2Vzc2lvblJlc3VsdHMoZGF0YTogTyk6IGFueSB7XHJcbiAgICByZXR1cm4gZGF0YTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXNldFF1ZXJ5KCk6IHZvaWQ7XHJcblxyXG4gIGFic3RyYWN0IHN0YXJ0U2VhcmNoKCk6IFByb21pc2U8Ym9vbGVhbj47XHJcblxyXG4gIGFic3RyYWN0IHN0YXJ0UmVjZW50U2VhcmNoKHJlY2VudFNlYXJjaDogUmVjZW50U2VhcmNoKTogdm9pZDtcclxuXHJcbiAgYWJzdHJhY3QgdXBkYXRlTG93ZXN0UHJpY2UocmVzdWx0czogTyk6IElDaGVhcGVzdFByaWNlO1xyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHByZXZpb3VzSXRlbXMgYmFza2V0aXRlbXMgdGhhdCBhbHJlYWR5IGJlZW4gYWRkZWQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHVwIHRoZSBkZWZhdWx0cyBmb3IgdGhlIHNlYXJjaC5cclxuICAgKi9cclxuICBhYnN0cmFjdCB1cGRhdGVGcm9tUHJldmlvdXNTZWFyY2hlcyhcclxuICAgIHByZXZpb3VzSXRlbXM6IFJlY29yZDxTZXJ2aWNlVHlwZSwgQmFza2V0SXRlbT5cclxuICApOiB2b2lkO1xyXG5cclxuICBhYnN0cmFjdCB1cGRhdGVTZWFyY2hGcm9tRXhwaXJlZEJhc2tldEl0ZW0oYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IHZvaWQ7XHJcblxyXG4gIHByb3RlY3RlZCBfYXBwbHlGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmhlbHBlcnMuY2xvbmUodGhpcy5mdWxsUmVzdWx0cykpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -32,7 +32,20 @@ export class BasketInfoMiDetailsImpl {
|
|
|
32
32
|
};
|
|
33
33
|
return userAccum;
|
|
34
34
|
}, {});
|
|
35
|
+
this.miPerGuest = item.guests.reduce((userAccum, user) => {
|
|
36
|
+
userAccum[user.id] = {
|
|
37
|
+
managementInfo: this.helpers
|
|
38
|
+
.clone(perUser)
|
|
39
|
+
.map((miItem) => {
|
|
40
|
+
const miItemObj = makeManagamentInfo(miItem, this.basketService);
|
|
41
|
+
this.isValidObservers.push(miItemObj);
|
|
42
|
+
return miItemObj;
|
|
43
|
+
})
|
|
44
|
+
};
|
|
45
|
+
return userAccum;
|
|
46
|
+
}, {});
|
|
35
47
|
this.users = Object.keys(this.miPerUser);
|
|
48
|
+
this.guests = Object.keys(this.miPerGuest);
|
|
36
49
|
}
|
|
37
50
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFza2V0LWluZm8tbWktZGV0YWlscy5pbXBsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jhc2tldC1pbmZvLW1pLWRldGFpbHMuaW1wbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsa0JBQWtCLEVBQ25CLE1BQU0sNkJBQTZCLENBQUM7QUFXckMsTUFBTSxPQUFPLHVCQUF1QjtJQVNsQyxZQUNFLElBQWdCLEVBQ1IsYUFBK0MsRUFDL0MsT0FBMkI7UUFEM0Isa0JBQWEsR0FBYixhQUFhLENBQWtDO1FBQy9DLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBTnJDLHFCQUFnQixHQUErQixFQUFFLENBQUM7UUFRaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FDckQsQ0FDRSxPQUdDLEVBQ0QsTUFBc0IsRUFDdEIsRUFBRTtZQUNGLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3pDLE9BQU8sT0FBTyxDQUFDO2FBQ2hCO1lBQ0QsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRXRDLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRTtnQkFDckIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDakM7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDakM7WUFFRCxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDLEVBQ0QsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FDN0IsQ0FBQztRQUVGLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ2hDLENBQUMsU0FBbUMsRUFBRSxJQUFVLEVBQUUsRUFBRTtZQUNsRCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHO2dCQUNuQixjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU87cUJBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUM7cUJBQ2QsR0FBRyxDQUFDLENBQUMsTUFBc0IsRUFBNEIsRUFBRTtvQkFDeEQsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztvQkFDakUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDdEMsT0FBTyxTQUFTLENBQUM7Z0JBQ25CLENBQUMsQ0FBQzthQUNMLENBQUM7WUFDRixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLEVBQ0QsRUFBRSxDQUNILENBQUM7UUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUNsQyxDQUFDLFNBQW1DLEVBQUUsSUFBVyxFQUFFLEVBQUU7WUFDbkQsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRztnQkFDbkIsY0FBYyxFQUFFLElBQUksQ0FBQyxPQUFPO3FCQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDO3FCQUNkLEdBQUcsQ0FBQyxDQUFDLE1BQXNCLEVBQTRCLEVBQUU7b0JBQ3hELE1BQU0sU0FBUyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7b0JBQ2pFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ3RDLE9BQU8sU0FBUyxDQUFDO2dCQUNuQixDQUFDLENBQUM7YUFDTCxDQUFDO1lBQ0YsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQyxFQUNELEVBQUUsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgTWFuYWdlbWVudEluZm9BbmRJc1ZhbGlkLFxyXG4gIG1ha2VNYW5hZ2FtZW50SW5mb1xyXG59IGZyb20gJy4vbWFuYWdlbWVudC1pbmZvLWFuZC12YWxpZCc7XHJcbmltcG9ydCB7IEJhc2VIZWxwZXJSb3V0aW5lcyB9IGZyb20gJy4vaGVscGVycyc7XHJcbmltcG9ydCB7IEJhc2tldEl0ZW0sIEd1ZXN0LCBNYW5hZ2VtZW50SW5mbywgVXNlciB9IGZyb20gJy4uL3R5cGVzL2dyYXBocWwudHlwZXMnO1xyXG5pbXBvcnQgeyBFbnRlcnByaXNlQmFza2V0U2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSWVudGVycHJpc2UtYmFza2V0LnNlcnZpY2UnO1xyXG5cclxuaW50ZXJmYWNlIFVzZXJNYW5hZ2VtZW50U3VwcGxlbWVudCB7XHJcbiAgW2tleTogc3RyaW5nXToge1xyXG4gICAgbWFuYWdlbWVudEluZm86IE1hbmFnZW1lbnRJbmZvQW5kSXNWYWxpZFtdO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBCYXNrZXRJbmZvTWlEZXRhaWxzSW1wbCB7XHJcbiAgbWlQZXJJdGVtOiBNYW5hZ2VtZW50SW5mb0FuZElzVmFsaWRbXTtcclxuICBtaVBlclVzZXI6IFVzZXJNYW5hZ2VtZW50U3VwcGxlbWVudDtcclxuICBtaVBlckd1ZXN0OiBVc2VyTWFuYWdlbWVudFN1cHBsZW1lbnQ7XHJcbiAgdXNlcnM6IHN0cmluZ1tdO1xyXG4gIGJhc2tldEl0ZW06IEJhc2tldEl0ZW07XHJcbiAgaXNWYWxpZE9ic2VydmVyczogTWFuYWdlbWVudEluZm9BbmRJc1ZhbGlkW10gPSBbXTtcclxuICBndWVzdHM6IHN0cmluZ1tdXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgaXRlbTogQmFza2V0SXRlbSxcclxuICAgIHByaXZhdGUgYmFza2V0U2VydmljZTogRW50ZXJwcmlzZUJhc2tldFNlcnZpY2VJbnRlcmZhY2UsXHJcbiAgICBwcml2YXRlIGhlbHBlcnM6IEJhc2VIZWxwZXJSb3V0aW5lc1xyXG4gICkge1xyXG4gICAgdGhpcy5iYXNrZXRJdGVtID0gaXRlbTtcclxuICAgIGNvbnN0IHsgcGVySXRlbSwgcGVyVXNlciB9ID0gaXRlbS5tYW5hZ2VtZW50SW5mby5yZWR1Y2UoXHJcbiAgICAgIChcclxuICAgICAgICBtaUFjY3VtOiB7XHJcbiAgICAgICAgICBwZXJJdGVtOiBNYW5hZ2VtZW50SW5mb0FuZElzVmFsaWRbXTtcclxuICAgICAgICAgIHBlclVzZXI6IE1hbmFnZW1lbnRJbmZvQW5kSXNWYWxpZFtdO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWlJdGVtOiBNYW5hZ2VtZW50SW5mb1xyXG4gICAgICApID0+IHtcclxuICAgICAgICBpZiAobWlJdGVtLnJlYXNvbiAmJiAhaXRlbS5yZXF1aXJlc1JlYXNvbikge1xyXG4gICAgICAgICAgcmV0dXJuIG1pQWNjdW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IG1pSXRlbU9iaiA9IG1ha2VNYW5hZ2FtZW50SW5mbyhtaUl0ZW0sIHRoaXMuYmFza2V0U2VydmljZSk7XHJcbiAgICAgICAgdGhpcy5pc1ZhbGlkT2JzZXJ2ZXJzLnB1c2gobWlJdGVtT2JqKTtcclxuXHJcbiAgICAgICAgaWYgKG1pSXRlbS5wZXJCb29raW5nKSB7XHJcbiAgICAgICAgICBtaUFjY3VtLnBlckl0ZW0ucHVzaChtaUl0ZW1PYmopO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBtaUFjY3VtLnBlclVzZXIucHVzaChtaUl0ZW1PYmopO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG1pQWNjdW07XHJcbiAgICAgIH0sXHJcbiAgICAgIHsgcGVySXRlbTogW10sIHBlclVzZXI6IFtdIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5taVBlckl0ZW0gPSBwZXJJdGVtO1xyXG4gICAgdGhpcy5taVBlclVzZXIgPSBpdGVtLnVzZXJzLnJlZHVjZShcclxuICAgICAgKHVzZXJBY2N1bTogVXNlck1hbmFnZW1lbnRTdXBwbGVtZW50LCB1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgICAgdXNlckFjY3VtW3VzZXIuaWRdID0ge1xyXG4gICAgICAgICAgbWFuYWdlbWVudEluZm86IHRoaXMuaGVscGVyc1xyXG4gICAgICAgICAgICAuY2xvbmUocGVyVXNlcilcclxuICAgICAgICAgICAgLm1hcCgobWlJdGVtOiBNYW5hZ2VtZW50SW5mbyk6IE1hbmFnZW1lbnRJbmZvQW5kSXNWYWxpZCA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbWlJdGVtT2JqID0gbWFrZU1hbmFnYW1lbnRJbmZvKG1pSXRlbSwgdGhpcy5iYXNrZXRTZXJ2aWNlKTtcclxuICAgICAgICAgICAgICB0aGlzLmlzVmFsaWRPYnNlcnZlcnMucHVzaChtaUl0ZW1PYmopO1xyXG4gICAgICAgICAgICAgIHJldHVybiBtaUl0ZW1PYmo7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdXNlckFjY3VtO1xyXG4gICAgICB9LFxyXG4gICAgICB7fVxyXG4gICAgKTtcclxuICAgIHRoaXMubWlQZXJHdWVzdCA9IGl0ZW0uZ3Vlc3RzLnJlZHVjZShcclxuICAgICAgKHVzZXJBY2N1bTogVXNlck1hbmFnZW1lbnRTdXBwbGVtZW50LCB1c2VyOiBHdWVzdCkgPT4ge1xyXG4gICAgICAgIHVzZXJBY2N1bVt1c2VyLmlkXSA9IHtcclxuICAgICAgICAgIG1hbmFnZW1lbnRJbmZvOiB0aGlzLmhlbHBlcnNcclxuICAgICAgICAgICAgLmNsb25lKHBlclVzZXIpXHJcbiAgICAgICAgICAgIC5tYXAoKG1pSXRlbTogTWFuYWdlbWVudEluZm8pOiBNYW5hZ2VtZW50SW5mb0FuZElzVmFsaWQgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IG1pSXRlbU9iaiA9IG1ha2VNYW5hZ2FtZW50SW5mbyhtaUl0ZW0sIHRoaXMuYmFza2V0U2VydmljZSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5pc1ZhbGlkT2JzZXJ2ZXJzLnB1c2gobWlJdGVtT2JqKTtcclxuICAgICAgICAgICAgICByZXR1cm4gbWlJdGVtT2JqO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgcmV0dXJuIHVzZXJBY2N1bTtcclxuICAgICAgfSxcclxuICAgICAge31cclxuICAgICk7XHJcbiAgICB0aGlzLnVzZXJzID0gT2JqZWN0LmtleXModGhpcy5taVBlclVzZXIpO1xyXG4gICAgdGhpcy5ndWVzdHMgPSBPYmplY3Qua2V5cyh0aGlzLm1pUGVyR3Vlc3QpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -40,7 +40,13 @@ export class BookableBasket {
|
|
|
40
40
|
this.basketService.subsribeToBasket(id, {
|
|
41
41
|
next: (basket) => {
|
|
42
42
|
this.basket.next(basket);
|
|
43
|
-
|
|
43
|
+
// before updating the basket check if there is an expired basket item/s
|
|
44
|
+
if (this.expiredItemInTheBasket()) {
|
|
45
|
+
this.status.next(BookingStatus.Expired);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
this.updateBasket(basket);
|
|
49
|
+
}
|
|
44
50
|
},
|
|
45
51
|
error: (error) => {
|
|
46
52
|
this.basket.error(error);
|
|
@@ -52,6 +58,14 @@ export class BookableBasket {
|
|
|
52
58
|
}
|
|
53
59
|
});
|
|
54
60
|
}
|
|
61
|
+
expiredItemInTheBasket() {
|
|
62
|
+
this.isUpdating.next(false);
|
|
63
|
+
let expiredItemInTheBasket;
|
|
64
|
+
this.basket.subscribe((basket) => {
|
|
65
|
+
expiredItemInTheBasket = basket.basketItems.some((item) => item.expired);
|
|
66
|
+
});
|
|
67
|
+
return expiredItemInTheBasket;
|
|
68
|
+
}
|
|
55
69
|
updateBasket(basket) {
|
|
56
70
|
this.isUpdating.next(false);
|
|
57
71
|
switch (basket.status) {
|
|
@@ -93,9 +107,7 @@ export class BookableBasket {
|
|
|
93
107
|
})) {
|
|
94
108
|
return this.workoutState(basket, BookingStatus.ApprovedPaymentOption);
|
|
95
109
|
}
|
|
96
|
-
console.log(basket.suppInfo);
|
|
97
110
|
const haveSuppDetails = basket.suppInfo.find((supp) => supp.hasDetails);
|
|
98
|
-
console.log(haveSuppDetails);
|
|
99
111
|
if (haveSuppDetails) {
|
|
100
112
|
status = BookingStatus.ApprovedSupplemtal;
|
|
101
113
|
}
|
|
@@ -215,16 +227,18 @@ export class BookableBasket {
|
|
|
215
227
|
});
|
|
216
228
|
}
|
|
217
229
|
_splitTravellers(basketItem) {
|
|
218
|
-
return (basketItem.userPassengerTypes || []).reduce((accum, user, index) => {
|
|
230
|
+
return (basketItem.userPassengerTypes.concat(basketItem.guestPassengerTypes) || []).reduce((accum, user, index) => {
|
|
231
|
+
const userPassenger = this._findUser(basketItem.users, Number(user.id));
|
|
232
|
+
const guestPassenger = this._findGuest(basketItem.guests, Number(user.id));
|
|
219
233
|
switch (user.passengerType) {
|
|
220
234
|
case PassengerType.Adult:
|
|
221
|
-
accum.adults.push(
|
|
235
|
+
accum.adults.push(userPassenger || guestPassenger);
|
|
222
236
|
break;
|
|
223
237
|
case PassengerType.Child:
|
|
224
|
-
accum.children.push(
|
|
238
|
+
accum.children.push(userPassenger || guestPassenger);
|
|
225
239
|
break;
|
|
226
240
|
case PassengerType.Infant:
|
|
227
|
-
accum.infants.push(
|
|
241
|
+
accum.infants.push(userPassenger || guestPassenger);
|
|
228
242
|
break;
|
|
229
243
|
}
|
|
230
244
|
return accum;
|
|
@@ -235,8 +249,13 @@ export class BookableBasket {
|
|
|
235
249
|
return Number(user.id) === id;
|
|
236
250
|
});
|
|
237
251
|
}
|
|
252
|
+
_findGuest(users, id) {
|
|
253
|
+
return users.find((user) => {
|
|
254
|
+
return Number(user.id) === id;
|
|
255
|
+
});
|
|
256
|
+
}
|
|
238
257
|
getId() {
|
|
239
258
|
return this.id;
|
|
240
259
|
}
|
|
241
260
|
}
|
|
242
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va2FibGUtYmFza2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jvb2thYmxlLWJhc2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBUXZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBRUwsWUFBWSxFQUNaLGFBQWEsRUFFYixXQUFXLEVBSVosTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLGFBQStDLEVBQy9DLE9BQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQUMvQyxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVpyQyxXQUFNLEdBQW1DLElBQUksZUFBZSxDQUMxRCxhQUFhLENBQUMsT0FBTyxDQUN0QixDQUFDO1FBRUYsV0FBTSxHQUFtQyxJQUFJLGVBQWUsQ0FDMUQsRUFBbUIsQ0FDcEIsQ0FBQztRQUNGLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkUsT0FBRSxHQUFXLElBQUksQ0FBQztJQUl2QixDQUFDO0lBRUosVUFBVSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENB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Q0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJhdmVsbGVyIH0gZnJvbSAnLi4vbW9kZWxzL3RyYXZlbGxlci5vYmplY3QnO1xyXG5pbXBvcnQge1xyXG4gIEJhc2tldERldGFpbHMsXHJcbiAgQmFza2V0SXRlbU1hbmFnZW1lbnRJbmZvLFxyXG4gIE1pR3JvdXBEZXRhaWxcclxufSBmcm9tICcuLi9zZXJ2aWNlcy9lbnRlcnByaXNlLWJhc2tldC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZUhlbHBlclJvdXRpbmVzIH0gZnJvbSAnLi4vY2xhc3Nlcy9oZWxwZXJzJztcclxuaW1wb3J0IHsgQm9va2luZ1N0YXR1cyB9IGZyb20gJy4uL3R5cGVzL3R5cGVzJztcclxuaW1wb3J0IHsgRW50ZXJwcmlzZUJhc2tldFNlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL0llbnRlcnByaXNlLWJhc2tldC5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBCYXNrZXRJdGVtLFxyXG4gIEJhc2tldFN0YXR1cyxcclxuICBQYXNzZW5nZXJUeXBlLFxyXG4gIFBheW1lbnRNZXRob2QsXHJcbiAgU2VydmljZVR5cGUsXHJcbiAgU3VwcGxlbWVudGFyeUJvb2tpbmdJbmZvLFxyXG4gIFVzZXIsXHJcbiAgVXNlclBhc3NlbmdlclR5cGVcclxufSBmcm9tICcuLi90eXBlcy9ncmFwaHFsLnR5cGVzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBCb29rYWJsZUJhc2tldCB7XHJcbiAgc3RhdHVzOiBCZWhhdmlvclN1YmplY3Q8Qm9va2luZ1N0YXR1cz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJvb2tpbmdTdGF0dXM+KFxyXG4gICAgQm9va2luZ1N0YXR1cy5Mb2FkaW5nXHJcbiAgKTtcclxuXHJcbiAgYmFza2V0OiBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJhc2tldERldGFpbHM+KFxyXG4gICAge30gYXMgQmFza2V0RGV0YWlsc1xyXG4gICk7XHJcbiAgbmVlZHNUb1ZpZXdNaTogYm9vbGVhbiA9IHRydWU7XHJcbiAgaXNVcGRhdGluZzogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHJpdmF0ZSBpZDogc3RyaW5nID0gbnVsbDtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYmFza2V0U2VydmljZTogRW50ZXJwcmlzZUJhc2tldFNlcnZpY2VJbnRlcmZhY2UsXHJcbiAgICBwcml2YXRlIGhlbHBlcnM6IEJhc2VIZWxwZXJSb3V0aW5lc1xyXG4gICkge31cclxuXHJcbiAgbG9hZEJhc2tldChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmlkID0gaWQ7XHJcbiAgICB0aGlzLmJhc2tldCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4oe30gYXMgQmFza2V0RGV0YWlscyk7XHJcbiAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuTG9hZGluZyk7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuX2xvYWRCYXNrZXQoaWQpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgIExvYWRpbmcsXHJcbiAgMCAgQWRkaW5nSXRlbXMsXHJcbiAgMSAgQWRkaW5nVHJhdmVsbGVycyxcclxuICAyICBBZGRpbmdMZWFkUGFzc2VuZ2VyLFxyXG4gIDMgIEZhaWxlZCxcclxuICA0ICBSZXZhbGlkYXRlLFxyXG4gIDUgIFJldmFsaWRhdGluZ0Vycm9yLFxyXG4gIDYgIFJldmFsaWRhdGluZ0FjY2VwdGVkLFxyXG4gIDcgIENob29zZU1JR3JvdXAsXHJcbiAgOCAgUHJvdmlkZU1pLFxyXG4gIDkgIFNlbmRGb3JBcHByb3ZhbCxcclxuICAxMCBBd2FpdGluZ0FwcHJvdmFsLFxyXG4gIDExIEFwcHJvdmVkXHJcbiAgMTIgUGFydGlhbGx5Qm9va2VkLFxyXG4gIDEzIENvbXBsZXRlXHJcbiAgKi9cclxuXHJcbiAgcHJpdmF0ZSBfbG9hZEJhc2tldChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UubG9hZEJhc2tldChpZCk7XHJcblxyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnN1YnNyaWJlVG9CYXNrZXQoaWQsIHtcclxuICAgICAgbmV4dDogKGJhc2tldDogQmFza2V0RGV0YWlscykgPT4ge1xyXG4gICAgICAgIHRoaXMuYmFza2V0Lm5leHQoYmFza2V0KTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUJhc2tldChiYXNrZXQpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmJhc2tldC5lcnJvcihlcnJvcik7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5iYXNrZXQuY29tcGxldGUoKTtcclxuICAgICAgICBjb25zb2xlLmxvZygnQmFza2V0IGNvbXBsZXRlZCcpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUJhc2tldChiYXNrZXQ6IEJhc2tldERldGFpbHMpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KGZhbHNlKTtcclxuICAgIHN3aXRjaCAoYmFza2V0LnN0YXR1cykge1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5PcGVuOlxyXG4gICAgICAgIHRoaXMud29ya291dE9wZW5TdGF0ZShiYXNrZXQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5Bd2FpdGluZ0FwcHJvdmFsOlxyXG4gICAgICAgIHRoaXMuc3RhdHVzLm5leHQoXHJcbiAgICAgICAgICB0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQXdhaXRpbmdBcHByb3ZhbClcclxuICAgICAgICApO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5BcHByb3ZlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KHRoaXMud29ya291dEFwcHJvdmVkU3RhdGUoYmFza2V0KSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQmFza2V0U3RhdHVzLkJvb2tlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgQm9va2luZ1N0YXR1cy5Db21wbGV0ZSkpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5Cb29raW5nRmFpbGVkOlxyXG4gICAgICAgIHRoaXMuc3RhdHVzLm5leHQodGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBCb29raW5nU3RhdHVzLkZhaWxlZCkpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5EaXNhcHByb3ZlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuRmFpbGVkKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuUGFydGlhbGx5Qm9va2VkOlxyXG4gICAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5GYWlsZWQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGNvbnN0IHRtcDogbmV2ZXIgPSBiYXNrZXQuc3RhdHVzO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKHRtcCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNlbmRCYXNrZXRGb3JBcHByb3ZhbCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLmJhc2tldFNlcnZpY2Uuc2VuZEJhc2tldEZvckFwcHJvdmFsKHRoaXMuaWQpO1xyXG4gIH1cclxuXHJcbiAgd29ya291dEFwcHJvdmVkU3RhdGUoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogQm9va2luZ1N0YXR1cyB7XHJcbiAgICBsZXQgc3RhdHVzID0gQm9va2luZ1N0YXR1cy5BcHByb3ZlZEJvb2s7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKTogYm9vbGVhbiA9PiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIGJhc2tldEl0ZW0uYXZhaWxhYmxlUGF5bWVudE1ldGhvZHM/Lmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgICFiYXNrZXRJdGVtLnNlbGVjdGVkUGF5bWVudE1ldGhvZFxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICApIHtcclxuICAgICAgcmV0dXJuIHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgQm9va2luZ1N0YXR1cy5BcHByb3ZlZFBheW1lbnRPcHRpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnNvbGUubG9nKGJhc2tldC5zdXBwSW5mbyk7XHJcbiAgICBjb25zdCBoYXZlU3VwcERldGFpbHMgPSBiYXNrZXQuc3VwcEluZm8uZmluZCgoc3VwcCkgPT4gc3VwcC5oYXNEZXRhaWxzKTtcclxuICAgIGNvbnNvbGUubG9nKGhhdmVTdXBwRGV0YWlscyk7XHJcbiAgICBpZiAoaGF2ZVN1cHBEZXRhaWxzKSB7XHJcbiAgICAgIHN0YXR1cyA9IEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRTdXBwbGVtdGFsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgc3RhdHVzKTtcclxuICB9XHJcblxyXG4gIHdvcmtvdXRTdGF0ZShcclxuICAgIGJhc2tldDogQmFza2V0RGV0YWlscyxcclxuICAgIGRlZmF1bHRTdGF0ZTogQm9va2luZ1N0YXR1c1xyXG4gICk6IEJvb2tpbmdTdGF0dXMge1xyXG4gICAgLy8gSXMgdGhlIGJhc2tldCB2YWxpZGF0ZWQuXHJcbiAgICBpZiAoIWJhc2tldC52YWxpZGF0ZWQpIHtcclxuICAgICAgaWYgKHRoaXMuX2hhc0ludmFsaWRQcmljZShiYXNrZXQpKSB7XHJcbiAgICAgICAgcmV0dXJuIEJvb2tpbmdTdGF0dXMuUmV2YWxpZGF0ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRlZmF1bHRTdGF0ZTtcclxuICB9XHJcblxyXG4gIHdvcmtvdXRPcGVuU3RhdGUoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogQm9va2luZ1N0YXR1cyB7XHJcbiAgICAvLyBJZiBhbnkgb2YgdGhlIGJhc2tldEl0ZW1zIGRvbid0IGhhdmUgZW5vdWdoIHRyYXZlbGxlcnMsIHRoZW4gd2UgbmVlZCB0byBhZGQgdGhlbS5cclxuICAgIGlmIChiYXNrZXQuYmFza2V0SXRlbXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5BZGRpbmdJdGVtcyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9uZWVkc0NvcnJlY3RUcmF2ZWxsZXJzKGJhc2tldCkpIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkFkZGluZ1RyYXZlbGxlcnMpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5fbmVlZExlYWRQYXNzZW5nZXJzKGJhc2tldCkpIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkFkZGluZ0xlYWRQYXNzZW5nZXIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICAvLyBJcyB0aGUgYmFza2V0IHZhbGlkYXRlZC5cclxuICAgIGlmICghYmFza2V0LnZhbGlkYXRlZCkge1xyXG4gICAgICBpZiAodGhpcy5faGFzSW52YWxpZFByaWNlKGJhc2tldCkpIHtcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuUmV2YWxpZGF0ZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9uZWVkc01pR3JvdXBzKGJhc2tldCkpIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkNob29zZU1JR3JvdXApO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaGVscGVycy5uZWVkc01pKGJhc2tldCwgdGhpcy5uZWVkc1RvVmlld01pKSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuUHJvdmlkZU1pKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5TZW5kRm9yQXBwcm92YWwpO1xyXG4gIH1cclxuXHJcbiAgcmV2YWxpZGF0ZSgpIHtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5yZXZhbGlkYXRlKHRoaXMuaWQpO1xyXG4gIH1cclxuXHJcbiAgYWRkVHJhdmVsbGVycyhcclxuICAgIGJhc2tldDogQmFza2V0RGV0YWlscyxcclxuICAgIGJhc2tldEl0ZW06IEJhc2tldEl0ZW0sXHJcbiAgICB0cmF2ZWxsZXJzOiBUcmF2ZWxsZXJbXSxcclxuICAgIGluZGV4OiBudW1iZXIgPSAwXHJcbiAgKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5hZGRUcmF2ZWxsZXJzKGJhc2tldC5pZCwgYmFza2V0SXRlbSwgdHJhdmVsbGVycywgaW5kZXgpO1xyXG4gIH1cclxuXHJcbiAgc2V0TGVhZFBhc3NlbmdlcihcclxuICAgIGJhc2tldDogQmFza2V0RGV0YWlscyxcclxuICAgIGJhc2tldEl0ZW06IEJhc2tldEl0ZW0sXHJcbiAgICB0cmF2ZWxsZXJzOiBUcmF2ZWxsZXIsXHJcbiAgICBpbmRleDogbnVtYmVyID0gMFxyXG4gICk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2Uuc2V0TGVhZFBhc3NlbmdlcihcclxuICAgICAgYmFza2V0LmlkLFxyXG4gICAgICBiYXNrZXRJdGVtLFxyXG4gICAgICB0cmF2ZWxsZXJzLFxyXG4gICAgICBpbmRleFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNldEJhc2tldEl0ZW1NaUdyb3VwKGJhc2tldElkOiBzdHJpbmcsIGdyb3VwRGV0YWlsOiBNaUdyb3VwRGV0YWlsKSB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5zZXRCYXNrZXRJdGVtTWlHcm91cChcclxuICAgICAgYmFza2V0SWQsXHJcbiAgICAgIGdyb3VwRGV0YWlsLmJhc2tldEl0ZW0uaWQsXHJcbiAgICAgIGdyb3VwRGV0YWlsLnZhbHVlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZU1pR3JvdXAobWlHcm91cERldGFpbHNSZXN1bHQ6IE1pR3JvdXBEZXRhaWxbXSkge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICBtaUdyb3VwRGV0YWlsc1Jlc3VsdC5mb3JFYWNoKChncm91cERldGFpbHM6IE1pR3JvdXBEZXRhaWwpID0+IHtcclxuICAgICAgdGhpcy5zZXRCYXNrZXRJdGVtTWlHcm91cCh0aGlzLmlkLCBncm91cERldGFpbHMpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzYXZlTWkocmVzdWx0czogQmFza2V0SXRlbU1hbmFnZW1lbnRJbmZvW10pIHtcclxuICAgIHRoaXMubmVlZHNUb1ZpZXdNaSA9IGZhbHNlO1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICBpZiAocmVzdWx0cykge1xyXG4gICAgICB0aGlzLmJhc2tldFNlcnZpY2Uuc2F2ZU1pRGF0YSh0aGlzLmlkLCByZXN1bHRzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZUV4cGlyZWRJdGVtcygpIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnJlbW92ZUV4cGlyZWRJdGVtcyh0aGlzLmlkKTtcclxuICB9XHJcblxyXG4gIHNldEJhc2tldEl0ZW1QYXltZW50T3B0aW9uKFxyXG4gICAgYmFza2V0SXRlbTogQmFza2V0SXRlbSxcclxuICAgIHBheW1lbnRNZXRob2Q6IHN0cmluZ1xyXG4gICk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLnNldEJhc2tldEl0ZW1QYXltZW50T3B0aW9uKFxyXG4gICAgICB0aGlzLmJhc2tldC52YWx1ZSxcclxuICAgICAgYmFza2V0SXRlbSxcclxuICAgICAgcGF5bWVudE1ldGhvZFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGJvb2tCYXNrZXQocmVzdWx0czogU3VwcGxlbWVudGFyeUJvb2tpbmdJbmZvW10pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgaWYgKHJlc3VsdHMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYmFza2V0U2VydmljZS5ib29rQmFza2V0KHRoaXMuaWQsIHJlc3VsdHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbmVlZHNNaUdyb3VwcyhiYXNrZXQ6IEJhc2tldERldGFpbHMpIHtcclxuICAgIHJldHVybiAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKTogYm9vbGVhbiA9PiB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgYmFza2V0SXRlbS5taUdyb3Vwc0F2YWlsYWJsZS5sZW5ndGggPiAwICYmICFiYXNrZXRJdGVtLm1pR3JvdXBTZWxlY3RlZFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9uZWVkc0NvcnJlY3RUcmF2ZWxsZXJzKGJhc2tldDogQmFza2V0RGV0YWlscyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhYmFza2V0LmJhc2tldEl0ZW1zLmZpbmQoKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pID0+IHtcclxuICAgICAgY29uc3QgdHJhdmVsbGVycyA9IHRoaXMuX3NwbGl0VHJhdmVsbGVycyhiYXNrZXRJdGVtKTtcclxuICAgICAgaWYgKGJhc2tldEl0ZW0uc2VydmljZS50eXBlID09PSBTZXJ2aWNlVHlwZS5QYXJraW5nKSB7XHJcbiAgICAgICAgcmV0dXJuICEoYmFza2V0SXRlbS5hZHVsdHMgPT09IDEpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiAhKFxyXG4gICAgICAgICAgdHJhdmVsbGVycy5hZHVsdHMubGVuZ3RoID09PSBiYXNrZXRJdGVtLmFkdWx0cyAmJlxyXG4gICAgICAgICAgdHJhdmVsbGVycy5jaGlsZHJlbi5sZW5ndGggPT09IGJhc2tldEl0ZW0uY2hpbGRyZW4gJiZcclxuICAgICAgICAgIHRyYXZlbGxlcnMuaW5mYW50cy5sZW5ndGggPT09IGJhc2tldEl0ZW0uaW5mYW50c1xyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFzSW52YWxpZFByaWNlKGJhc2tldDogQmFza2V0RGV0YWlscyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhYmFza2V0LmJhc2tldEl0ZW1zLmZpbmQoKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pID0+IHtcclxuICAgICAgcmV0dXJuICFiYXNrZXRJdGVtLmxhdGVzdFZhbGlkYXRpb25QcmljZURpZmZlcmVuY2UgfHwgYmFza2V0SXRlbS5leHBpcmVkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9uZWVkTGVhZFBhc3NlbmdlcnMoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSkgPT4ge1xyXG4gICAgICByZXR1cm4gIWJhc2tldEl0ZW0ubGVhZFBhc3NlbmdlcjtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3BsaXRUcmF2ZWxsZXJzKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pOiB7XHJcbiAgICBhZHVsdHM6IFVzZXJbXTtcclxuICAgIGNoaWxkcmVuOiBVc2VyW107XHJcbiAgICBpbmZhbnRzOiBVc2VyW107XHJcbiAgfSB7XHJcbiAgICByZXR1cm4gKGJhc2tldEl0ZW0udXNlclBhc3NlbmdlclR5cGVzIHx8IFtdKS5yZWR1Y2UoXHJcbiAgICAgIChcclxuICAgICAgICBhY2N1bTogeyBhZHVsdHM6IFVzZXJbXTsgY2hpbGRyZW46IFVzZXJbXTsgaW5mYW50czogVXNlcltdIH0sXHJcbiAgICAgICAgdXNlcjogVXNlclBhc3NlbmdlclR5cGUsXHJcbiAgICAgICAgaW5kZXg6IG51bWJlclxyXG4gICAgICApID0+IHtcclxuICAgICAgICBzd2l0Y2ggKHVzZXIucGFzc2VuZ2VyVHlwZSkge1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkFkdWx0OlxyXG4gICAgICAgICAgICBhY2N1bS5hZHVsdHMucHVzaChcclxuICAgICAgICAgICAgICB0aGlzLl9maW5kVXNlcihiYXNrZXRJdGVtLnVzZXJzLCBOdW1iZXIodXNlci5pZCkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkNoaWxkOlxyXG4gICAgICAgICAgICBhY2N1bS5jaGlsZHJlbi5wdXNoKFxyXG4gICAgICAgICAgICAgIHRoaXMuX2ZpbmRVc2VyKGJhc2tldEl0ZW0udXNlcnMsIE51bWJlcih1c2VyLmlkKSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIFBhc3NlbmdlclR5cGUuSW5mYW50OlxyXG4gICAgICAgICAgICBhY2N1bS5pbmZhbnRzLnB1c2goXHJcbiAgICAgICAgICAgICAgdGhpcy5fZmluZFVzZXIoYmFza2V0SXRlbS51c2VycywgTnVtYmVyKHVzZXIuaWQpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGFjY3VtO1xyXG4gICAgICB9LFxyXG4gICAgICB7IGFkdWx0czogW10sIGNoaWxkcmVuOiBbXSwgaW5mYW50czogW10gfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ZpbmRVc2VyKHVzZXJzOiBVc2VyW10sIGlkOiBudW1iZXIpOiBVc2VyIHtcclxuICAgIHJldHVybiB1c2Vycy5maW5kKCh1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgIHJldHVybiBOdW1iZXIodXNlci5pZCkgPT09IGlkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRJZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va2FibGUtYmFza2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jvb2thYmxlLWJhc2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBUXZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBRUwsWUFBWSxFQUVaLGFBQWEsRUFFYixXQUFXLEVBS1osTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLGFBQStDLEVBQy9DLE9BQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQUMvQyxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVpyQyxXQUFNLEdBQW1DLElBQUksZUFBZSxDQUMxRCxhQUFhLENBQUMsT0FBTyxDQUN0QixDQUFDO1FBRUYsV0FBTSxHQUFtQyxJQUFJLGVBQWUsQ0FDMUQsRUFBbUIsQ0FDcEIsQ0FBQztRQUNGLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkUsT0FBRSxHQUFXLElBQUksQ0FBQztJQUl2QixDQUFDO0lBRUosVUFBVSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7O01BZ0JFO0lBRU0sV0FBVyxDQUFDLEVBQVU7UUFDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxFQUFFLENBQUMsTUFBcUIsRUFBRSxFQUFFO2dCQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFekIsd0VBQXdFO2dCQUN4RSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxFQUFFO29CQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ3pDO3FCQUFNO29CQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzNCO1lBQ0gsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDekIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixDQUFDO1lBQ0QsUUFBUSxFQUFFLEdBQUcsRUFBRTtnQkFDYixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN2QixPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDbEMsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxzQkFBK0IsQ0FBQztRQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtZQUM5QyxzQkFBc0IsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDOUMsQ0FBQyxJQUFnQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUNuQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLHNCQUFzQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBcUI7UUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsUUFBUSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ3JCLEtBQUssWUFBWSxDQUFDLElBQUk7Z0JBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDOUIsTUFBTTtZQUNSLEtBQUssWUFBWSxDQUFDLGdCQUFnQjtnQkFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQzFELENBQUM7Z0JBQ0YsTUFBTTtZQUNSLEtBQUssWUFBWSxDQUFDLFFBQVE7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNwRCxNQUFNO1lBQ1IsS0FBSyxZQUFZLENBQUMsTUFBTTtnQkFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BFLE1BQU07WUFDUixLQUFLLFlBQVksQ0FBQyxhQUFhO2dCQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDbEUsTUFBTTtZQUNSLEtBQUssWUFBWSxDQUFDLFdBQVc7Z0JBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdkMsTUFBTTtZQUNSLEtBQUssWUFBWSxDQUFDLGVBQWU7Z0JBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdkMsTUFBTTtZQUNSO2dCQUNFLE1BQU0sR0FBRyxHQUFVLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBQ0QscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELG9CQUFvQixDQUFDLE1BQXFCO1FBQ3hDLElBQUksTUFBTSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUM7UUFFeEMsSUFDRSxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFzQixFQUFXLEVBQUU7O1lBQzVELE9BQU8sQ0FDTCxPQUFBLFVBQVUsQ0FBQyx1QkFBdUIsMENBQUUsTUFBTSxJQUFHLENBQUM7Z0JBQzlDLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUNsQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLEVBQ0Y7WUFDQSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQ3ZFO1FBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4RSxJQUFJLGVBQWUsRUFBRTtZQUNuQixNQUFNLEdBQUcsYUFBYSxDQUFDLGtCQUFrQixDQUFDO1NBQzNDO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsWUFBWSxDQUNWLE1BQXFCLEVBQ3JCLFlBQTJCO1FBRTNCLDJCQUEyQjtRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtZQUNyQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDakMsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDO2FBQ2pDO1lBQ0QsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDO1NBQ2pDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQXFCO1FBQ3BDLG9GQUFvRjtRQUNwRixJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDNUMsT0FBTztTQUNSO1FBQ0QsSUFBSSxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDakQsT0FBTztTQUNSO1FBQ0QsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDcEQsT0FBTztTQUNSO1FBQ0QsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzNDLE9BQU87YUFDUjtZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMzQyxPQUFPO1NBQ1I7UUFFRCxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzlDLE9BQU87U0FDUjtRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDMUMsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxhQUFhLENBQ1gsTUFBcUIsRUFDckIsVUFBc0IsRUFDdEIsVUFBdUIsRUFDdkIsUUFBZ0IsQ0FBQztRQUVqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGdCQUFnQixDQUNkLE1BQXFCLEVBQ3JCLFVBQXNCLEVBQ3RCLFVBQXFCLEVBQ3JCLFFBQWdCLENBQUM7UUFFakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FDakMsTUFBTSxDQUFDLEVBQUUsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztJQUVELG9CQUFvQixDQUFDLFFBQWdCLEVBQUUsV0FBMEI7UUFDL0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FDckMsUUFBUSxFQUNSLFdBQVcsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUN6QixXQUFXLENBQUMsS0FBSyxDQUNsQixDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxvQkFBcUM7UUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0Isb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBMkIsRUFBRSxFQUFFO1lBQzNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFtQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCwwQkFBMEIsQ0FDeEIsVUFBc0IsRUFDdEIsYUFBcUI7UUFFckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLDBCQUEwQixDQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFDakIsVUFBVSxFQUNWLGFBQWEsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFtQztRQUM1QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN4RDtJQUNILENBQUM7SUFFTyxjQUFjLENBQUMsTUFBcUI7UUFDMUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFzQixFQUFXLEVBQUU7WUFDbkUsT0FBTyxDQUNMLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FDdkUsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHVCQUF1QixDQUFDLE1BQXFCO1FBQ25ELE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBc0IsRUFBRSxFQUFFO1lBQzFELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNyRCxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxPQUFPLEVBQUU7Z0JBQ25ELE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDbkM7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLENBQ04sVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLE1BQU07b0JBQzlDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxRQUFRO29CQUNsRCxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxVQUFVLENBQUMsT0FBTyxDQUNqRCxDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUFxQjtRQUM1QyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQXNCLEVBQUUsRUFBRTtZQUMxRCxPQUFPLENBQUMsVUFBVSxDQUFDLCtCQUErQixJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUM7UUFDM0UsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsTUFBcUI7UUFDL0MsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFzQixFQUFFLEVBQUU7WUFDMUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsVUFBc0I7UUFLN0MsT0FBTyxDQUNMLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUMzRSxDQUFDLE1BQU0sQ0FDTixDQUNFLEtBSUMsRUFDRCxJQUF1QixFQUN2QixLQUFhLEVBQ2IsRUFBRTtZQUNGLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDeEUsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FDcEMsVUFBVSxDQUFDLE1BQU0sRUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FDaEIsQ0FBQztZQUVGLFFBQVEsSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDMUIsS0FBSyxhQUFhLENBQUMsS0FBSztvQkFDdEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLGNBQWMsQ0FBQyxDQUFDO29CQUNuRCxNQUFNO2dCQUNSLEtBQUssYUFBYSxDQUFDLEtBQUs7b0JBQ3RCLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxjQUFjLENBQUMsQ0FBQztvQkFDckQsTUFBTTtnQkFDUixLQUFLLGFBQWEsQ0FBQyxNQUFNO29CQUN2QixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksY0FBYyxDQUFDLENBQUM7b0JBQ3BELE1BQU07YUFDVDtZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxFQUNELEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FDMUMsQ0FBQztJQUNKLENBQUM7SUFFTyxTQUFTLENBQUMsS0FBYSxFQUFFLEVBQVU7UUFDekMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBVSxFQUFFLEVBQUU7WUFDL0IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBYyxFQUFFLEVBQVU7UUFDM0MsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBVyxFQUFFLEVBQUU7WUFDaEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUcmF2ZWxsZXIgfSBmcm9tICcuLi9tb2RlbHMvdHJhdmVsbGVyLm9iamVjdCc7XHJcbmltcG9ydCB7XHJcbiAgQmFza2V0RGV0YWlscyxcclxuICBCYXNrZXRJdGVtTWFuYWdlbWVudEluZm8sXHJcbiAgTWlHcm91cERldGFpbFxyXG59IGZyb20gJy4uL3NlcnZpY2VzL2VudGVycHJpc2UtYmFza2V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlSGVscGVyUm91dGluZXMgfSBmcm9tICcuLi9jbGFzc2VzL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBCb29raW5nU3RhdHVzIH0gZnJvbSAnLi4vdHlwZXMvdHlwZXMnO1xyXG5pbXBvcnQgeyBFbnRlcnByaXNlQmFza2V0U2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSWVudGVycHJpc2UtYmFza2V0LnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEJhc2tldEl0ZW0sXHJcbiAgQmFza2V0U3RhdHVzLFxyXG4gIEd1ZXN0LFxyXG4gIFBhc3NlbmdlclR5cGUsXHJcbiAgUGF5bWVudE1ldGhvZCxcclxuICBTZXJ2aWNlVHlwZSxcclxuICBTdXBwbGVtZW50YXJ5Qm9va2luZ0luZm8sXHJcbiAgVXNlcixcclxuICBVc2VyT3JHdWVzdCxcclxuICBVc2VyUGFzc2VuZ2VyVHlwZVxyXG59IGZyb20gJy4uL3R5cGVzL2dyYXBocWwudHlwZXMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEJvb2thYmxlQmFza2V0IHtcclxuICBzdGF0dXM6IEJlaGF2aW9yU3ViamVjdDxCb29raW5nU3RhdHVzPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Qm9va2luZ1N0YXR1cz4oXHJcbiAgICBCb29raW5nU3RhdHVzLkxvYWRpbmdcclxuICApO1xyXG5cclxuICBiYXNrZXQ6IEJlaGF2aW9yU3ViamVjdDxCYXNrZXREZXRhaWxzPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4oXHJcbiAgICB7fSBhcyBCYXNrZXREZXRhaWxzXHJcbiAgKTtcclxuICBuZWVkc1RvVmlld01pOiBib29sZWFuID0gdHJ1ZTtcclxuICBpc1VwZGF0aW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIGlkOiBzdHJpbmcgPSBudWxsO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBiYXNrZXRTZXJ2aWNlOiBFbnRlcnByaXNlQmFza2V0U2VydmljZUludGVyZmFjZSxcclxuICAgIHByaXZhdGUgaGVscGVyczogQmFzZUhlbHBlclJvdXRpbmVzXHJcbiAgKSB7fVxyXG5cclxuICBsb2FkQmFza2V0KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuaWQgPSBpZDtcclxuICAgIHRoaXMuYmFza2V0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxCYXNrZXREZXRhaWxzPih7fSBhcyBCYXNrZXREZXRhaWxzKTtcclxuICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5Mb2FkaW5nKTtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5fbG9hZEJhc2tldChpZCk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgTG9hZGluZyxcclxuICAwICBBZGRpbmdJdGVtcyxcclxuICAxICBBZGRpbmdUcmF2ZWxsZXJzLFxyXG4gIDIgIEFkZGluZ0xlYWRQYXNzZW5nZXIsXHJcbiAgMyAgRmFpbGVkLFxyXG4gIDQgIFJldmFsaWRhdGUsXHJcbiAgNSAgUmV2YWxpZGF0aW5nRXJyb3IsXHJcbiAgNiAgUmV2YWxpZGF0aW5nQWNjZXB0ZWQsXHJcbiAgNyAgQ2hvb3NlTUlHcm91cCxcclxuICA4ICBQcm92aWRlTWksXHJcbiAgOSAgU2VuZEZvckFwcHJvdmFsLFxyXG4gIDEwIEF3YWl0aW5nQXBwcm92YWwsXHJcbiAgMTEgQXBwcm92ZWRcclxuICAxMiBQYXJ0aWFsbHlCb29rZWQsXHJcbiAgMTMgQ29tcGxldGVcclxuICAqL1xyXG5cclxuICBwcml2YXRlIF9sb2FkQmFza2V0KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5sb2FkQmFza2V0KGlkKTtcclxuXHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2Uuc3Vic3JpYmVUb0Jhc2tldChpZCwge1xyXG4gICAgICBuZXh0OiAoYmFza2V0OiBCYXNrZXREZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5iYXNrZXQubmV4dChiYXNrZXQpO1xyXG5cclxuICAgICAgICAvLyBiZWZvcmUgdXBkYXRpbmcgdGhlIGJhc2tldCBjaGVjayBpZiB0aGVyZSBpcyBhbiBleHBpcmVkIGJhc2tldCBpdGVtL3NcclxuICAgICAgICBpZiAodGhpcy5leHBpcmVkSXRlbUluVGhlQmFza2V0KCkpIHtcclxuICAgICAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5FeHBpcmVkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVCYXNrZXQoYmFza2V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3I6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYmFza2V0LmVycm9yKGVycm9yKTtcclxuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcclxuICAgICAgfSxcclxuICAgICAgY29tcGxldGU6ICgpID0+IHtcclxuICAgICAgICB0aGlzLmJhc2tldC5jb21wbGV0ZSgpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdCYXNrZXQgY29tcGxldGVkJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZXhwaXJlZEl0ZW1JblRoZUJhc2tldCgpOiBib29sZWFuIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KGZhbHNlKTtcclxuICAgIGxldCBleHBpcmVkSXRlbUluVGhlQmFza2V0OiBib29sZWFuO1xyXG4gICAgdGhpcy5iYXNrZXQuc3Vic2NyaWJlKChiYXNrZXQ6IEJhc2tldERldGFpbHMpID0+IHtcclxuICAgICAgZXhwaXJlZEl0ZW1JblRoZUJhc2tldCA9IGJhc2tldC5iYXNrZXRJdGVtcy5zb21lKFxyXG4gICAgICAgIChpdGVtOiBCYXNrZXRJdGVtKSA9PiBpdGVtLmV4cGlyZWRcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGV4cGlyZWRJdGVtSW5UaGVCYXNrZXQ7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVCYXNrZXQoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dChmYWxzZSk7XHJcbiAgICBzd2l0Y2ggKGJhc2tldC5zdGF0dXMpIHtcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuT3BlbjpcclxuICAgICAgICB0aGlzLndvcmtvdXRPcGVuU3RhdGUoYmFza2V0KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXdhaXRpbmdBcHByb3ZhbDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KFxyXG4gICAgICAgICAgdGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBCb29raW5nU3RhdHVzLkF3YWl0aW5nQXBwcm92YWwpXHJcbiAgICAgICAgKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldCkpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5Cb29rZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQ29tcGxldGUpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQm9va2luZ0ZhaWxlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgQm9va2luZ1N0YXR1cy5GYWlsZWQpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuRGlzYXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkZhaWxlZCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQmFza2V0U3RhdHVzLlBhcnRpYWxseUJvb2tlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuRmFpbGVkKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBjb25zdCB0bXA6IG5ldmVyID0gYmFza2V0LnN0YXR1cztcclxuICAgICAgICBjb25zb2xlLmxvZyh0bXApO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZW5kQmFza2V0Rm9yQXBwcm92YWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLnNlbmRCYXNrZXRGb3JBcHByb3ZhbCh0aGlzLmlkKTtcclxuICB9XHJcblxyXG4gIHdvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldDogQmFza2V0RGV0YWlscyk6IEJvb2tpbmdTdGF0dXMge1xyXG4gICAgbGV0IHN0YXR1cyA9IEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRCb29rO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICBiYXNrZXRJdGVtLmF2YWlsYWJsZVBheW1lbnRNZXRob2RzPy5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgICAhYmFza2V0SXRlbS5zZWxlY3RlZFBheW1lbnRNZXRob2RcclxuICAgICAgICApO1xyXG4gICAgICB9KVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRQYXltZW50T3B0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBoYXZlU3VwcERldGFpbHMgPSBiYXNrZXQuc3VwcEluZm8uZmluZCgoc3VwcCkgPT4gc3VwcC5oYXNEZXRhaWxzKTtcclxuICAgIGlmIChoYXZlU3VwcERldGFpbHMpIHtcclxuICAgICAgc3RhdHVzID0gQm9va2luZ1N0YXR1cy5BcHByb3ZlZFN1cHBsZW10YWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBzdGF0dXMpO1xyXG4gIH1cclxuXHJcbiAgd29ya291dFN0YXRlKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgZGVmYXVsdFN0YXRlOiBCb29raW5nU3RhdHVzXHJcbiAgKTogQm9va2luZ1N0YXR1cyB7XHJcbiAgICAvLyBJcyB0aGUgYmFza2V0IHZhbGlkYXRlZC5cclxuICAgIGlmICghYmFza2V0LnZhbGlkYXRlZCkge1xyXG4gICAgICBpZiAodGhpcy5faGFzSW52YWxpZFByaWNlKGJhc2tldCkpIHtcclxuICAgICAgICByZXR1cm4gQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBCb29raW5nU3RhdHVzLlJldmFsaWRhdGU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZGVmYXVsdFN0YXRlO1xyXG4gIH1cclxuXHJcbiAgd29ya291dE9wZW5TdGF0ZShiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBCb29raW5nU3RhdHVzIHtcclxuICAgIC8vIElmIGFueSBvZiB0aGUgYmFza2V0SXRlbXMgZG9uJ3QgaGF2ZSBlbm91Z2ggdHJhdmVsbGVycywgdGhlbiB3ZSBuZWVkIHRvIGFkZCB0aGVtLlxyXG4gICAgaWYgKGJhc2tldC5iYXNrZXRJdGVtcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkFkZGluZ0l0ZW1zKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuX25lZWRzQ29ycmVjdFRyYXZlbGxlcnMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQWRkaW5nVHJhdmVsbGVycyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9uZWVkTGVhZFBhc3NlbmdlcnMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQWRkaW5nTGVhZFBhc3Nlbmdlcik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIC8vIElzIHRoZSBiYXNrZXQgdmFsaWRhdGVkLlxyXG4gICAgaWYgKCFiYXNrZXQudmFsaWRhdGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLl9oYXNJbnZhbGlkUHJpY2UoYmFza2V0KSkge1xyXG4gICAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlJldmFsaWRhdGUpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuX25lZWRzTWlHcm91cHMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQ2hvb3NlTUlHcm91cCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5oZWxwZXJzLm5lZWRzTWkoYmFza2V0LCB0aGlzLm5lZWRzVG9WaWV3TWkpKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5Qcm92aWRlTWkpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlNlbmRGb3JBcHByb3ZhbCk7XHJcbiAgfVxyXG5cclxuICByZXZhbGlkYXRlKCkge1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnJldmFsaWRhdGUodGhpcy5pZCk7XHJcbiAgfVxyXG5cclxuICBhZGRUcmF2ZWxsZXJzKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgYmFza2V0SXRlbTogQmFza2V0SXRlbSxcclxuICAgIHRyYXZlbGxlcnM6IFRyYXZlbGxlcltdLFxyXG4gICAgaW5kZXg6IG51bWJlciA9IDBcclxuICApOiB2b2lkIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLmFkZFRyYXZlbGxlcnMoYmFza2V0LmlkLCBiYXNrZXRJdGVtLCB0cmF2ZWxsZXJzLCBpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzZXRMZWFkUGFzc2VuZ2VyKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgYmFza2V0SXRlbTogQmFza2V0SXRlbSxcclxuICAgIHRyYXZlbGxlcnM6IFRyYXZlbGxlcixcclxuICAgIGluZGV4OiBudW1iZXIgPSAwXHJcbiAgKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5zZXRMZWFkUGFzc2VuZ2VyKFxyXG4gICAgICBiYXNrZXQuaWQsXHJcbiAgICAgIGJhc2tldEl0ZW0sXHJcbiAgICAgIHRyYXZlbGxlcnMsXHJcbiAgICAgIGluZGV4XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2V0QmFza2V0SXRlbU1pR3JvdXAoYmFza2V0SWQ6IHN0cmluZywgZ3JvdXBEZXRhaWw6IE1pR3JvdXBEZXRhaWwpIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnNldEJhc2tldEl0ZW1NaUdyb3VwKFxyXG4gICAgICBiYXNrZXRJZCxcclxuICAgICAgZ3JvdXBEZXRhaWwuYmFza2V0SXRlbS5pZCxcclxuICAgICAgZ3JvdXBEZXRhaWwudmFsdWVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzYXZlTWlHcm91cChtaUdyb3VwRGV0YWlsc1Jlc3VsdDogTWlHcm91cERldGFpbFtdKSB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIG1pR3JvdXBEZXRhaWxzUmVzdWx0LmZvckVhY2goKGdyb3VwRGV0YWlsczogTWlHcm91cERldGFpbCkgPT4ge1xyXG4gICAgICB0aGlzLnNldEJhc2tldEl0ZW1NaUdyb3VwKHRoaXMuaWQsIGdyb3VwRGV0YWlscyk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNhdmVNaShyZXN1bHRzOiBCYXNrZXRJdGVtTWFuYWdlbWVudEluZm9bXSkge1xyXG4gICAgdGhpcy5uZWVkc1RvVmlld01pID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIGlmIChyZXN1bHRzKSB7XHJcbiAgICAgIHRoaXMuYmFza2V0U2VydmljZS5zYXZlTWlEYXRhKHRoaXMuaWQsIHJlc3VsdHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlRXhwaXJlZEl0ZW1zKCkge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UucmVtb3ZlRXhwaXJlZEl0ZW1zKHRoaXMuaWQpO1xyXG4gIH1cclxuXHJcbiAgc2V0QmFza2V0SXRlbVBheW1lbnRPcHRpb24oXHJcbiAgICBiYXNrZXRJdGVtOiBCYXNrZXRJdGVtLFxyXG4gICAgcGF5bWVudE1ldGhvZDogc3RyaW5nXHJcbiAgKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHJldHVybiB0aGlzLmJhc2tldFNlcnZpY2Uuc2V0QmFza2V0SXRlbVBheW1lbnRPcHRpb24oXHJcbiAgICAgIHRoaXMuYmFza2V0LnZhbHVlLFxyXG4gICAgICBiYXNrZXRJdGVtLFxyXG4gICAgICBwYXltZW50TWV0aG9kXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYm9va0Jhc2tldChyZXN1bHRzOiBTdXBwbGVtZW50YXJ5Qm9va2luZ0luZm9bXSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICBpZiAocmVzdWx0cykge1xyXG4gICAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLmJvb2tCYXNrZXQodGhpcy5pZCwgcmVzdWx0cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9uZWVkc01pR3JvdXBzKGJhc2tldDogQmFza2V0RGV0YWlscykge1xyXG4gICAgcmV0dXJuICEhYmFza2V0LmJhc2tldEl0ZW1zLmZpbmQoKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pOiBib29sZWFuID0+IHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICBiYXNrZXRJdGVtLm1pR3JvdXBzQXZhaWxhYmxlLmxlbmd0aCA+IDAgJiYgIWJhc2tldEl0ZW0ubWlHcm91cFNlbGVjdGVkXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX25lZWRzQ29ycmVjdFRyYXZlbGxlcnMoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSkgPT4ge1xyXG4gICAgICBjb25zdCB0cmF2ZWxsZXJzID0gdGhpcy5fc3BsaXRUcmF2ZWxsZXJzKGJhc2tldEl0ZW0pO1xyXG4gICAgICBpZiAoYmFza2V0SXRlbS5zZXJ2aWNlLnR5cGUgPT09IFNlcnZpY2VUeXBlLlBhcmtpbmcpIHtcclxuICAgICAgICByZXR1cm4gIShiYXNrZXRJdGVtLmFkdWx0cyA9PT0gMSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuICEoXHJcbiAgICAgICAgICB0cmF2ZWxsZXJzLmFkdWx0cy5sZW5ndGggPT09IGJhc2tldEl0ZW0uYWR1bHRzICYmXHJcbiAgICAgICAgICB0cmF2ZWxsZXJzLmNoaWxkcmVuLmxlbmd0aCA9PT0gYmFza2V0SXRlbS5jaGlsZHJlbiAmJlxyXG4gICAgICAgICAgdHJhdmVsbGVycy5pbmZhbnRzLmxlbmd0aCA9PT0gYmFza2V0SXRlbS5pbmZhbnRzXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYXNJbnZhbGlkUHJpY2UoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSkgPT4ge1xyXG4gICAgICByZXR1cm4gIWJhc2tldEl0ZW0ubGF0ZXN0VmFsaWRhdGlvblByaWNlRGlmZmVyZW5jZSB8fCBiYXNrZXRJdGVtLmV4cGlyZWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX25lZWRMZWFkUGFzc2VuZ2VycyhiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKSA9PiB7XHJcbiAgICAgIHJldHVybiAhYmFza2V0SXRlbS5sZWFkUGFzc2VuZ2VyO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zcGxpdFRyYXZlbGxlcnMoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IHtcclxuICAgIGFkdWx0czogVXNlck9yR3Vlc3RbXTtcclxuICAgIGNoaWxkcmVuOiBVc2VyT3JHdWVzdFtdO1xyXG4gICAgaW5mYW50czogVXNlck9yR3Vlc3RbXTtcclxuICB9IHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIGJhc2tldEl0ZW0udXNlclBhc3NlbmdlclR5cGVzLmNvbmNhdChiYXNrZXRJdGVtLmd1ZXN0UGFzc2VuZ2VyVHlwZXMpIHx8IFtdXHJcbiAgICApLnJlZHVjZShcclxuICAgICAgKFxyXG4gICAgICAgIGFjY3VtOiB7XHJcbiAgICAgICAgICBhZHVsdHM6IFVzZXJPckd1ZXN0W107XHJcbiAgICAgICAgICBjaGlsZHJlbjogVXNlck9yR3Vlc3RbXTtcclxuICAgICAgICAgIGluZmFudHM6IFVzZXJPckd1ZXN0W107XHJcbiAgICAgICAgfSxcclxuICAgICAgICB1c2VyOiBVc2VyUGFzc2VuZ2VyVHlwZSxcclxuICAgICAgICBpbmRleDogbnVtYmVyXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHVzZXJQYXNzZW5nZXIgPSB0aGlzLl9maW5kVXNlcihiYXNrZXRJdGVtLnVzZXJzLCBOdW1iZXIodXNlci5pZCkpO1xyXG4gICAgICAgIGNvbnN0IGd1ZXN0UGFzc2VuZ2VyID0gdGhpcy5fZmluZEd1ZXN0KFxyXG4gICAgICAgICAgYmFza2V0SXRlbS5ndWVzdHMsXHJcbiAgICAgICAgICBOdW1iZXIodXNlci5pZClcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKHVzZXIucGFzc2VuZ2VyVHlwZSkge1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkFkdWx0OlxyXG4gICAgICAgICAgICBhY2N1bS5hZHVsdHMucHVzaCh1c2VyUGFzc2VuZ2VyIHx8IGd1ZXN0UGFzc2VuZ2VyKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIFBhc3NlbmdlclR5cGUuQ2hpbGQ6XHJcbiAgICAgICAgICAgIGFjY3VtLmNoaWxkcmVuLnB1c2godXNlclBhc3NlbmdlciB8fCBndWVzdFBhc3Nlbmdlcik7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkluZmFudDpcclxuICAgICAgICAgICAgYWNjdW0uaW5mYW50cy5wdXNoKHVzZXJQYXNzZW5nZXIgfHwgZ3Vlc3RQYXNzZW5nZXIpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGFjY3VtO1xyXG4gICAgICB9LFxyXG4gICAgICB7IGFkdWx0czogW10sIGNoaWxkcmVuOiBbXSwgaW5mYW50czogW10gfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ZpbmRVc2VyKHVzZXJzOiBVc2VyW10sIGlkOiBudW1iZXIpOiBVc2VyIHtcclxuICAgIHJldHVybiB1c2Vycy5maW5kKCh1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgIHJldHVybiBOdW1iZXIodXNlci5pZCkgPT09IGlkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maW5kR3Vlc3QodXNlcnM6IEd1ZXN0W10sIGlkOiBudW1iZXIpOiBHdWVzdCB7XHJcbiAgICByZXR1cm4gdXNlcnMuZmluZCgodXNlcjogR3Vlc3QpID0+IHtcclxuICAgICAgcmV0dXJuIE51bWJlcih1c2VyLmlkKSA9PT0gaWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldElkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pZDtcclxuICB9XHJcbn1cclxuIl19
|