@sabstravtech/obtservices 0.0.26051001 → 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/fetchers.d.ts +2 -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/services/enterprise-basket.service.d.ts +4 -4
- package/angular/lib/vendor/services/logon.service.d.ts +2 -2
- package/angular/lib/vendor/services/user.service.d.ts +5 -3
- package/angular/lib/vendor/types/graphql.angular.types.d.ts +389 -508
- package/angular/sabstravtech-obtservices-angular.metadata.json +1 -1
- package/base/fetchers.d.ts +2 -0
- package/base/lib/vendor/classes/base-enterprise.d.ts +3 -1
- package/base/lib/vendor/classes/cabhire-enterprise-search.d.ts +5 -1
- package/base/lib/vendor/classes/carhire-enterprise-search.d.ts +8 -1
- package/base/lib/vendor/classes/eurostar-enterprise-search.d.ts +11 -4
- package/base/lib/vendor/classes/fast-track-enterprise-search.d.ts +2 -1
- package/base/lib/vendor/classes/flight-enterprise-search.d.ts +11 -0
- package/base/lib/vendor/classes/hotel-enterprise-search.d.ts +4 -0
- package/base/lib/vendor/classes/irl-enterprise-search.d.ts +9 -4
- package/base/lib/vendor/classes/lounges-enterprise-search.d.ts +2 -1
- package/base/lib/vendor/classes/management-info-and-valid.d.ts +2 -2
- package/base/lib/vendor/classes/parking-enterprise-search.d.ts +2 -1
- package/base/lib/vendor/classes/rail-enterprise-search.d.ts +1 -1
- 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-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/search-users-can-book-for-fetcher.d.ts +2 -2
- package/base/lib/vendor/interfaces/Icabhire-enterprise-search.d.ts +1 -0
- package/base/lib/vendor/interfaces/Icarhire-enterprise-search.d.ts +2 -0
- package/base/lib/vendor/interfaces/Ienterprise-basket.service.d.ts +3 -2
- package/base/lib/vendor/interfaces/Iflight-enterprise-search.d.ts +6 -0
- package/base/lib/vendor/interfaces/Ihotel-enterprise-search.d.ts +3 -0
- package/base/lib/vendor/interfaces/Iirl-enterprise-search.d.ts +4 -4
- package/base/lib/vendor/interfaces/Imybookings.service.d.ts +3 -2
- package/base/lib/vendor/interfaces/Isearch.service.d.ts +1 -0
- package/base/lib/vendor/interfaces/Iuser.service.d.ts +10 -3
- package/base/lib/vendor/interfaces/rail-basket-item.interface.d.ts +2 -0
- package/base/lib/vendor/interfaces/summary-interface.d.ts +4 -0
- package/base/lib/vendor/models/traveller.object.d.ts +11 -1
- package/base/lib/vendor/services/enterprise-basket.service.d.ts +9 -7
- package/base/lib/vendor/services/logon.service.d.ts +3 -3
- package/base/lib/vendor/services/my-bookings.service.d.ts +3 -2
- package/base/lib/vendor/services/search.service.d.ts +3 -2
- package/base/lib/vendor/services/user.service.d.ts +18 -3
- package/base/lib/vendor/services/webtoken.service.d.ts +6 -4
- package/base/lib/vendor/types/graphql.types.d.ts +379 -508
- package/base/lib/vendor/types/types.d.ts +35 -7
- package/base/sabstravtech-obtservices-base.metadata.json +1 -1
- package/bundles/sabstravtech-obtservices-angular.umd.js +300 -201
- 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 +2143 -597
- 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/fetchers.js +3 -1
- 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/services/enterprise-basket.service.js +25 -25
- package/esm2015/angular/lib/vendor/services/logon.service.js +7 -7
- package/esm2015/angular/lib/vendor/services/ticket-queue.service.js +4 -1
- package/esm2015/angular/lib/vendor/services/user.service.js +13 -7
- package/esm2015/angular/lib/vendor/services/webtoken.service.js +2 -2
- package/esm2015/angular/lib/vendor/types/graphql.angular.types.js +808 -1231
- package/esm2015/base/fetchers.js +3 -1
- package/esm2015/base/lib/vendor/classes/base-enterprise.js +6 -3
- package/esm2015/base/lib/vendor/classes/bookable-basket.js +1 -3
- package/esm2015/base/lib/vendor/classes/cabhire-enterprise-search.js +155 -9
- package/esm2015/base/lib/vendor/classes/carhire-enterprise-search.js +129 -8
- package/esm2015/base/lib/vendor/classes/eurostar-enterprise-search.js +351 -20
- package/esm2015/base/lib/vendor/classes/fast-track-enterprise-search.js +8 -5
- package/esm2015/base/lib/vendor/classes/flight-enterprise-search.js +94 -14
- package/esm2015/base/lib/vendor/classes/helpers.js +15 -2
- package/esm2015/base/lib/vendor/classes/hotel-enterprise-search.js +86 -21
- package/esm2015/base/lib/vendor/classes/irl-enterprise-search.js +123 -18
- package/esm2015/base/lib/vendor/classes/lounges-enterprise-search.js +63 -8
- package/esm2015/base/lib/vendor/classes/management-info-and-valid.js +56 -33
- package/esm2015/base/lib/vendor/classes/parking-enterprise-search.js +109 -6
- package/esm2015/base/lib/vendor/classes/rail-enterprise-search.js +81 -7
- package/esm2015/base/lib/vendor/classes/supplementary-booking-info-impl.js +17 -1
- 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-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/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/Iflight-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Ihotel-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Iirl-enterprise-search.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Imybookings.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Isearch.service.js +1 -1
- package/esm2015/base/lib/vendor/interfaces/Iuser.service.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/models/traveller.object.js +21 -3
- package/esm2015/base/lib/vendor/services/enterprise-basket.service.js +42 -19
- package/esm2015/base/lib/vendor/services/logon.service.js +8 -5
- package/esm2015/base/lib/vendor/services/my-bookings.service.js +3 -2
- package/esm2015/base/lib/vendor/services/search.service.js +32 -24
- package/esm2015/base/lib/vendor/services/user.service.js +47 -3
- package/esm2015/base/lib/vendor/services/webtoken.service.js +12 -6
- package/esm2015/base/lib/vendor/types/graphql.types.js +15 -1
- package/esm2015/base/lib/vendor/types/types.js +4 -3
- package/fesm2015/sabstravtech-obtservices-angular.js +948 -1334
- package/fesm2015/sabstravtech-obtservices-angular.js.map +1 -1
- package/fesm2015/sabstravtech-obtservices-base.js +1984 -472
- package/fesm2015/sabstravtech-obtservices-base.js.map +1 -1
- package/package.json +1 -1
package/esm2015/base/fetchers.js
CHANGED
|
@@ -74,4 +74,6 @@ export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
|
|
|
74
74
|
export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
|
|
75
75
|
export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
|
|
76
76
|
export * from './lib/vendor/fetchers/get-user-guests.fetcher';
|
|
77
|
-
|
|
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,7 +2,7 @@ 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, searchService) {
|
|
5
|
+
constructor(storageService, helpers, searchService, userService) {
|
|
6
6
|
this.storageService = storageService;
|
|
7
7
|
this.helpers = helpers;
|
|
8
8
|
this.searchService = searchService;
|
|
@@ -50,6 +50,8 @@ export class BaseEnterpriseSearch {
|
|
|
50
50
|
try {
|
|
51
51
|
results.pipe(take(1)).subscribe((results1) => {
|
|
52
52
|
console.log('Got results', _.cloneDeep(results1));
|
|
53
|
+
this.rawResults = Object.freeze(results1);
|
|
54
|
+
this.storageService.setSessionItem(this.resultsSessionName + '_raw', this.rawResults);
|
|
53
55
|
this.fullResults = Object.freeze(this.processResults(results1));
|
|
54
56
|
this._cheapestResultPrice = this.updateLowestPrice(this.fullResults);
|
|
55
57
|
this.storageService.setSessionItem(this.resultsSessionName, this.makeSessionResults(this.fullResults));
|
|
@@ -59,8 +61,9 @@ export class BaseEnterpriseSearch {
|
|
|
59
61
|
resolve(false);
|
|
60
62
|
this.isLoading.next(false);
|
|
61
63
|
}, () => {
|
|
64
|
+
var _a;
|
|
62
65
|
this.isLoading.next(false);
|
|
63
|
-
resolve(this.fullResults.length !== 0);
|
|
66
|
+
resolve(((_a = this.fullResults) === null || _a === void 0 ? void 0 : _a.length) !== 0);
|
|
64
67
|
});
|
|
65
68
|
}
|
|
66
69
|
catch (err) {
|
|
@@ -128,4 +131,4 @@ export class BaseEnterpriseSearch {
|
|
|
128
131
|
this.results.next(this.helpers.clone(this.fullResults));
|
|
129
132
|
}
|
|
130
133
|
}
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lbnRlcnByaXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jhc2UtZW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFZNUIsTUFBTSxPQUFnQixvQkFBb0I7SUF1Q3hDLFlBQ1ksY0FBa0MsRUFDbEMsT0FBMkIsRUFDM0IsYUFBK0M7UUFGL0MsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQXpDakQseUJBQW9CLEdBQW1CO1lBQy9DLE1BQU0sRUFBRSxJQUFJO1lBQ1osWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQztRQUVLLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFJLEVBQU8sQ0FBQyxDQUFDO1FBQzlELGlCQUFZLEdBQTJCLElBQUksZUFBZSxDQUMvRCxFQUFPLENBQ1IsQ0FBQztRQUNLLGFBQVEsR0FBOEIsSUFBSSxlQUFlLENBQzlELEVBQUUsQ0FDSCxDQUFDO1FBQ0ssaUJBQVksR0FBOEIsSUFBSSxlQUFlLENBRWxFLEVBQUUsQ0FBQyxDQUFDO1FBQ0MsdUJBQWtCLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBQzVCLGNBQVMsR0FBNkIsSUFBSSxlQUFlLENBQzlELEtBQUssQ0FDTixDQUFDO1FBSVEsZUFBVSxHQUFNLEVBQU8sQ0FBQztRQUN4QixhQUFRLEdB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VyxHQUFHLEVBQU8sQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQU8sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRVMsa0JBQWtCLENBQUMsSUFBTztRQUNsQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFtQlMsWUFBWTtRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7XHJcbiAgQmFza2V0SXRlbSxcclxuICBTZWFyY2hMb3VuZ2VzUXVlcnlWYXJpYWJsZXMsXHJcbiAgU2VydmljZVR5cGVcclxufSBmcm9tICcuLi90eXBlcy9ncmFwaHFsLnR5cGVzJztcclxuaW1wb3J0IHsgSUNoZWFwZXN0UHJpY2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NoZWFwZXN0LXByaWNlJztcclxuaW1wb3J0IHsgUmVjZW50U2VhcmNoIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBCYXNlSGVscGVyUm91dGluZXMgfSBmcm9tICcuL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBCYXNlRW50ZXJwcmlzZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zZWFyY2guc2VydmljZSc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9Jc2VhcmNoLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VFbnRlcnByaXNlU2VhcmNoPFAsIFIsIE8gZXh0ZW5kcyBBcnJheTxhbnk+PiB7XHJcbiAgcHJvdGVjdGVkIF9jaGVhcGVzdFJlc3VsdFByaWNlOiBJQ2hlYXBlc3RQcmljZSA9IHtcclxuICAgIGFtb3VudDogbnVsbCxcclxuICAgIGN1cnJlbmN5Q29kZTogbnVsbFxyXG4gIH07XHJcbiAgcHJvdGVjdGVkIF9vcmlnaW5hbFVzZXJTZWFyY2g6IFA7XHJcbiAgcHVibGljIGlzVmFsaWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwdWJsaWMgcmVzdWx0czogQmVoYXZpb3JTdWJqZWN0PE8+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPPihbXSBhcyBPKTtcclxuICBwdWJsaWMgbXVsdGlSZXN1bHRzOiBCZWhhdmlvclN1YmplY3Q8T1tdW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPW11bXT4oXHJcbiAgICBbXSBhcyBPXHJcbiAgKTtcclxuICBwdWJsaWMgbWVzc2FnZXM6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmdbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPihcclxuICAgIFtdXHJcbiAgKTtcclxuICBwdWJsaWMgbWVzc2FnZXNJbmZvOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxcclxuICAgIHN0cmluZ1tdXHJcbiAgPihbXSk7XHJcbiAgcHVibGljIHZhbGlkYXRpb25NZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgaW5mb01lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG4gIHB1YmxpYyBpc0xvYWRpbmc6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oXHJcbiAgICBmYWxzZVxyXG4gICk7XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXN1bHRzU2Vzc2lvbk5hbWU6IHN0cmluZztcclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgbXVsdGlSZXN1bHRzU2Vzc2lvbk5hbWU6IHN0cmluZztcclxuICBwcm90ZWN0ZWQgdGVtcFBhcmFtczogUCA9IHt9IGFzIFA7XHJcbiAgcHJvdGVjdGVkIGRvQ2hlY2tzOiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgYWJzdHJhY3QgdHlwZTogU2VydmljZVR5cGU7XHJcbiAgcHVibGljIGZ1bGxSZXN1bHRzOiBPID0gW10gYXMgTzsgLy8gc2hvdWxkIGJlIGFuIGFycmF5IG9mIHR5cGUgc3BlY2lmaWVkIGJ5IE9cclxuICBwdWJsaWMgZnVsbE11bHRpUmVzdWx0czogT1tdW10gPSBbXTsgLy8gYW4gYXJyYXkgb2YgYXJyYXlzIG9mIHR5cGUgc3BlY2lmaWVkIGJ5IE9cclxuXHJcbiAgZ2V0IGNoZWFwZXN0UHJpY2UoKTogSUNoZWFwZXN0UHJpY2Uge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2U7XHJcbiAgfVxyXG5cclxuICBnZXQgb3JpZ2luYWxVc2VyU2VhcmNoKCk6IFAge1xyXG4gICAgcmV0dXJuIHRoaXMuX29yaWdpbmFsVXNlclNlYXJjaDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHN0b3JhZ2VTZXJ2aWNlOiBCYXNlU3RvcmFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaGVscGVyczogQmFzZUhlbHBlclJvdXRpbmVzLFxyXG4gICAgcHJvdGVjdGVkIHNlYXJjaFNlcnZpY2U6IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlXHJcbiAgKSB7fVxyXG5cclxuICBwZXJmb3JtU2VhcmNoKCkge1xyXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaF9vYmplY3RzW3RoaXMudHlwZV0uY2hvc2VuID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5kZXRlcm1pbmVIaWdoZXN0U2VhcmNoUHJpb3JpdHkoKTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5zdGFydFNlYXJjaGVzKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcHJvY2Vzc1Jlc3VsdHMocmVzdWx0czogUik6IE8ge1xyXG4gICAgcmV0dXJuIHJlc3VsdHMgYXMgdW5rbm93biBhcyBPO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHVwZGF0ZVRlbXBQYXJhbXModGVtcFBhcmFtczogUCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IGZhbHNlO1xyXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCB0ZW1wUGFyYW1zKTtcclxuICAgIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2UgPSBudWxsO1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX3N0YXJ0U2VhcmNoKHJlc3VsdHM6IE9ic2VydmFibGU8Uj4pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHRoaXMuaXNMb2FkaW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmZ1bGxSZXN1bHRzID0gW10gYXMgTztcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgIChyZXN1bHRzMTogUikgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnR290IHJlc3VsdHMnLCBfLmNsb25lRGVlcChyZXN1bHRzMSkpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5mdWxsUmVzdWx0cyA9IE9iamVjdC5mcmVlemUoXHJcbiAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSlcclxuICAgICAgICAgICAgKSBhcyBPO1xyXG4gICAgICAgICAgICB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZShcclxuICAgICAgICAgICAgICB0aGlzLmZ1bGxSZXN1bHRzXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgICAgICAgdGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsXHJcbiAgICAgICAgICAgICAgdGhpcy5tYWtlU2Vzc2lvblJlc3VsdHModGhpcy5mdWxsUmVzdWx0cylcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5fYXBwbHlGaWx0ZXIoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZy5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuZnVsbFJlc3VsdHMubGVuZ3RoICE9PSAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldFNlc3Npb25JdGVtKHRoaXMucmVzdWx0c1Nlc3Npb25OYW1lLCBbXSk7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcubmV4dChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5yZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9zdGFydE11bHRpU2VhcmNoKHJlc3VsdHNBcnJheTogT2JzZXJ2YWJsZTxSPltdKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICB0aGlzLmlzTG9hZGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5mdWxsTXVsdGlSZXN1bHRzID0gW107XHJcblxyXG4gICAgY29uc3QgYWxsUXVlcmllczogUHJvbWlzZTxib29sZWFuPltdID0gW107XHJcblxyXG4gICAgcmVzdWx0c0FycmF5LmZvckVhY2goKHJlc3VsdHMsIGluZGV4KSA9PiB7XHJcbiAgICAgIGFsbFF1ZXJpZXMucHVzaChcclxuICAgICAgICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICByZXN1bHRzLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgIChyZXN1bHRzMTogUikgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ0dvdCByZXN1bHRzJywgXy5jbG9uZURlZXAocmVzdWx0czEpKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG1hcHBlZFJlc3VsdHMgPSB0aGlzLnByb2Nlc3NSZXN1bHRzKHJlc3VsdHMxKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHNbaW5kZXhdID0gbWFwcGVkUmVzdWx0cztcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2UgPSB0aGlzLnVwZGF0ZUxvd2VzdFByaWNlKCAgLy8gcGVyZm9ybSB0aGVzZSBhZnRlciBhbGwgc2VhcmNoZXMgY29tcGxldGVcclxuICAgICAgICAgICAgICAgIC8vICAgdGhpcy5mdWxsUmVzdWx0c1xyXG4gICAgICAgICAgICAgICAgLy8gKTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMucmVzdWx0cy5uZXh0KHRoaXMuZnVsbFJlc3VsdHMpO1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShtYXBwZWRSZXN1bHRzLmxlbmd0aCAhPT0gMCk7XHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMubXVsdGlSZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICAgICAgICAgICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSwgW10pO1xyXG4gICAgICAgICAgICB0aGlzLm11bHRpUmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgICAgICByZWplY3QoZXJyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKGFsbFF1ZXJpZXMpLnRoZW4oKHZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcubmV4dChmYWxzZSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKCcrKysgTXVsdGlsb2FkaW5nIENvbXBsZXRlICsrKycpO1xyXG4gICAgICBjb25zb2xlLmxvZygnKysrIE11bHRpIFJlc3VsdHM6ICcsIHRoaXMuZnVsbE11bHRpUmVzdWx0cywgJyArKysnKTtcclxuXHJcbiAgICAgIC8vIHN0b3JlIHRoZSBmdWxsIHJlc3VsdHNcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbShcclxuICAgICAgICB0aGlzLm11bHRpUmVzdWx0c1Nlc3Npb25OYW1lLFxyXG4gICAgICAgIHRoaXMuZnVsbE11bHRpUmVzdWx0c1xyXG4gICAgICApO1xyXG5cclxuICAgICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dCh0aGlzLmZ1bGxNdWx0aVJlc3VsdHMpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVNlc3Npb25JdGVtKHRoaXMucmVzdWx0c1Nlc3Npb25OYW1lKTtcclxuICAgIHRyeSB7XHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlU2Vzc2lvbkl0ZW0odGhpcy5tdWx0aVJlc3VsdHNTZXNzaW9uTmFtZSk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge31cclxuICAgIHRoaXMuZnVsbFJlc3VsdHMgPSBbXSBhcyBPO1xyXG4gICAgdGhpcy5mdWxsTXVsdGlSZXN1bHRzID0gW107XHJcbiAgICB0aGlzLnJlc3VsdHMubmV4dChbXSBhcyBPKTtcclxuICAgIHRoaXMubXVsdGlSZXN1bHRzLm5leHQoW10pO1xyXG4gICAgdGhpcy5yZXNldFF1ZXJ5KCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgbWFrZVNlc3Npb25SZXN1bHRzKGRhdGE6IE8pOiBhbnkge1xyXG4gICAgcmV0dXJuIGRhdGE7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVzZXRRdWVyeSgpOiB2b2lkO1xyXG5cclxuICBhYnN0cmFjdCBzdGFydFNlYXJjaCgpOiBQcm9taXNlPGJvb2xlYW4+O1xyXG5cclxuICBhYnN0cmFjdCBzdGFydFJlY2VudFNlYXJjaChyZWNlbnRTZWFyY2g6IFJlY2VudFNlYXJjaCk6IHZvaWQ7XHJcblxyXG4gIGFic3RyYWN0IHVwZGF0ZUxvd2VzdFByaWNlKHJlc3VsdHM6IE8pOiBJQ2hlYXBlc3RQcmljZTtcclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBwcmV2aW91c0l0ZW1zIGJhc2tldGl0ZW1zIHRoYXQgYWxyZWFkeSBiZWVuIGFkZGVkLiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNldCB1cCB0aGUgZGVmYXVsdHMgZm9yIHRoZSBzZWFyY2guXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgdXBkYXRlRnJvbVByZXZpb3VzU2VhcmNoZXMoXHJcbiAgICBwcmV2aW91c0l0ZW1zOiBSZWNvcmQ8U2VydmljZVR5cGUsIEJhc2tldEl0ZW0+XHJcbiAgKTogdm9pZDtcclxuXHJcbiAgYWJzdHJhY3QgdXBkYXRlU2VhcmNoRnJvbUV4cGlyZWRCYXNrZXRJdGVtKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pOiB2b2lkO1xyXG5cclxuICBwcm90ZWN0ZWQgX2FwcGx5RmlsdGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXN1bHRzLm5leHQodGhpcy5oZWxwZXJzLmNsb25lKHRoaXMuZnVsbFJlc3VsdHMpKTtcclxuICB9XHJcbn1cclxuIl19
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lbnRlcnByaXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jhc2UtZW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFhNUIsTUFBTSxPQUFnQixvQkFBb0I7SUF1Q3hDLFlBQ1ksY0FBa0MsRUFDbEMsT0FBMkIsRUFDM0IsYUFBK0MsRUFDekQsV0FBaUM7UUFIdkIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQXpDakQseUJBQW9CLEdBQW1CO1lBQy9DLE1BQU0sRUFBRSxJQUFJO1lBQ1osWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQztRQUVLLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFJLEVBQU8sQ0FBQyxDQUFDO1FBQzlELGlCQUFZLEdBQTJCLElBQUksZUFBZSxDQUMvRCxFQUFPLENBQ1IsQ0FBQztRQUNLLGFBQVEsR0FBOEIsSUFBSSxlQUFlLENBQzlELEVBQUUsQ0FDSCxDQUFDO1FBQ0ssaUJBQVksR0FBOEIsSUFBSSxlQUFlLENBRWxFLEVBQUUsQ0FBQyxDQUFDO1FBQ0MsdUJBQWtCLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBQzVCLGNBQVMsR0FBNkIsSUFBSSxlQUFlLENBQzlELEtBQUssQ0FDTixDQUFDO1FBSVEsZUFBVSxHQUFNLEVBQU8sQ0FBQztR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Q0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDL0QsSUFBSTtZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDckU7UUFBQyxPQUFPLEtBQUssRUFBRSxHQUFHO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBTyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxJQUFPO1FBQ2xDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQW1CUyxZQUFZO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEJhc2VTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHtcclxuICBCYXNrZXRJdGVtLFxyXG4gIFNlYXJjaExvdW5nZXNRdWVyeVZhcmlhYmxlcyxcclxuICBTZXJ2aWNlVHlwZSxcclxuICBVaUNvbmZpZ1xyXG59IGZyb20gJy4uL3R5cGVzL2dyYXBocWwudHlwZXMnO1xyXG5pbXBvcnQgeyBJQ2hlYXBlc3RQcmljZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvY2hlYXBlc3QtcHJpY2UnO1xyXG5pbXBvcnQgeyBSZWNlbnRTZWFyY2gsIFVucGFja2VkLCBVc2VyVWlDb25maWdzUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBCYXNlSGVscGVyUm91dGluZXMgfSBmcm9tICcuL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBCYXNlRW50ZXJwcmlzZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zZWFyY2guc2VydmljZSc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9Jc2VhcmNoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSXVzZXIuc2VydmljZSc7XHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRW50ZXJwcmlzZVNlYXJjaDxQLCBSLCBPIGV4dGVuZHMgQXJyYXk8YW55Pj4ge1xyXG4gIHByb3RlY3RlZCBfY2hlYXBlc3RSZXN1bHRQcmljZTogSUNoZWFwZXN0UHJpY2UgPSB7XHJcbiAgICBhbW91bnQ6IG51bGwsXHJcbiAgICBjdXJyZW5jeUNvZGU6IG51bGxcclxuICB9O1xyXG4gIHByb3RlY3RlZCBfb3JpZ2luYWxVc2VyU2VhcmNoOiBQO1xyXG4gIHB1YmxpYyBpc1ZhbGlkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHVibGljIHJlc3VsdHM6IEJlaGF2aW9yU3ViamVjdDxPPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tz4oW10gYXMgTyk7XHJcbiAgcHVibGljIG11bHRpUmVzdWx0czogQmVoYXZpb3JTdWJqZWN0PE9bXVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T1tdW10+KFxyXG4gICAgW10gYXMgT1xyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmdbXT4oXHJcbiAgICBbXVxyXG4gICk7XHJcbiAgcHVibGljIG1lc3NhZ2VzSW5mbzogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XHJcbiAgICBzdHJpbmdbXVxyXG4gID4oW10pO1xyXG4gIHB1YmxpYyB2YWxpZGF0aW9uTWVzc2FnZXM6IHN0cmluZ1tdID0gW107XHJcbiAgcHVibGljIGluZm9NZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgaXNMb2FkaW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KFxyXG4gICAgZmFsc2VcclxuICApO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG11bHRpUmVzdWx0c1Nlc3Npb25OYW1lOiBzdHJpbmc7XHJcbiAgcHJvdGVjdGVkIHRlbXBQYXJhbXM6IFAgPSB7fSBhcyBQO1xyXG4gIHByb3RlY3RlZCBkb0NoZWNrczogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIGFic3RyYWN0IHR5cGU6IFNlcnZpY2VUeXBlO1xyXG4gIHB1YmxpYyBmdWxsUmVzdWx0czogTyA9IFtdIGFzIE87IC8vIHNob3VsZCBiZSBhbiBhcnJheSBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcbiAgcHVibGljIGZ1bGxNdWx0aVJlc3VsdHM6IE9bXVtdID0gW107IC8vIGFuIGFycmF5IG9mIGFycmF5cyBvZiB0eXBlIHNwZWNpZmllZCBieSBPXHJcbiAgcHVibGljIHJhd1Jlc3VsdHM6IFI7XHJcbiAgZ2V0IGNoZWFwZXN0UHJpY2UoKTogSUNoZWFwZXN0UHJpY2Uge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2U7XHJcbiAgfVxyXG5cclxuICBnZXQgb3JpZ2luYWxVc2VyU2VhcmNoKCk6IFAge1xyXG4gICAgcmV0dXJuIHRoaXMuX29yaWdpbmFsVXNlclNlYXJjaDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHN0b3JhZ2VTZXJ2aWNlOiBCYXNlU3RvcmFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaGVscGVyczogQmFzZUhlbHBlclJvdXRpbmVzLFxyXG4gICAgcHJvdGVjdGVkIHNlYXJjaFNlcnZpY2U6IEVudGVycHJpc2VTZWFyY2hTZXJ2aWNlSW50ZXJmYWNlLFxyXG4gICAgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlSW50ZXJmYWNlXHJcbiAgKSB7XHJcblxyXG4gXHJcbiAgfVxyXG5cclxuICBwZXJmb3JtU2VhcmNoKCkge1xyXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaF9vYmplY3RzW3RoaXMudHlwZV0uY2hvc2VuID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5kZXRlcm1pbmVIaWdoZXN0U2VhcmNoUHJpb3JpdHkoKTtcclxuICAgIHRoaXMuc2VhcmNoU2VydmljZS5zdGFydFNlYXJjaGVzKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcHJvY2Vzc1Jlc3VsdHMocmVzdWx0czogUik6IE8ge1xyXG4gICAgcmV0dXJuIHJlc3VsdHMgYXMgdW5rbm93biBhcyBPO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHVwZGF0ZVRlbXBQYXJhbXModGVtcFBhcmFtczogUCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IGZhbHNlO1xyXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCB0ZW1wUGFyYW1zKTtcclxuICAgIHRoaXMuX2NoZWFwZXN0UmVzdWx0UHJpY2UgPSBudWxsO1xyXG4gICAgdGhpcy5kb0NoZWNrcyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX3N0YXJ0U2VhcmNoKHJlc3VsdHM6IE9ic2VydmFibGU8Uj4pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHRoaXMuaXNMb2FkaW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmZ1bGxSZXN1bHRzID0gW10gYXMgTztcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgIChyZXN1bHRzMTogUikgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnR290IHJlc3VsdHMnLCBfLmNsb25lRGVlcChyZXN1bHRzMSkpO1xyXG4gICAgICAgICAgICB0aGlzLnJhd1Jlc3VsdHMgPSBPYmplY3QuZnJlZXplKHJlc3VsdHMxKTtcclxuICAgICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbShcclxuICAgICAgICAgICAgICB0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSArICdfcmF3JyxcclxuICAgICAgICAgICAgICB0aGlzLnJhd1Jlc3VsdHNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5mdWxsUmVzdWx0cyA9IE9iamVjdC5mcmVlemUoXHJcbiAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSlcclxuICAgICAgICAgICAgKSBhcyBPO1xyXG4gICAgICAgICAgICB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZShcclxuICAgICAgICAgICAgICB0aGlzLmZ1bGxSZXN1bHRzXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgICAgICAgdGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsXHJcbiAgICAgICAgICAgICAgdGhpcy5tYWtlU2Vzc2lvblJlc3VsdHModGhpcy5mdWxsUmVzdWx0cylcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgdGhpcy5fYXBwbHlGaWx0ZXIoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZXN1bHRzLm5leHQoW10gYXMgTyk7XHJcbiAgICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZy5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuZnVsbFJlc3VsdHM/Lmxlbmd0aCAhPT0gMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSwgW10pO1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfc3RhcnRNdWx0aVNlYXJjaChyZXN1bHRzQXJyYXk6IE9ic2VydmFibGU8Uj5bXSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZnVsbE11bHRpUmVzdWx0cyA9IFtdO1xyXG5cclxuICAgIGNvbnN0IGFsbFF1ZXJpZXM6IFByb21pc2U8Ym9vbGVhbj5bXSA9IFtdO1xyXG5cclxuICAgIHJlc3VsdHNBcnJheS5mb3JFYWNoKChyZXN1bHRzLCBpbmRleCkgPT4ge1xyXG4gICAgICBhbGxRdWVyaWVzLnB1c2goXHJcbiAgICAgICAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmVzdWx0cy5waXBlKHRha2UoMSkpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAocmVzdWx0czE6IFIpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdHb3QgcmVzdWx0cycsIF8uY2xvbmVEZWVwKHJlc3VsdHMxKSk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtYXBwZWRSZXN1bHRzID0gdGhpcy5wcm9jZXNzUmVzdWx0cyhyZXN1bHRzMSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWxsTXVsdGlSZXN1bHRzW2luZGV4XSA9IG1hcHBlZFJlc3VsdHM7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLl9jaGVhcGVzdFJlc3VsdFByaWNlID0gdGhpcy51cGRhdGVMb3dlc3RQcmljZSggIC8vIHBlcmZvcm0gdGhlc2UgYWZ0ZXIgYWxsIHNlYXJjaGVzIGNvbXBsZXRlXHJcbiAgICAgICAgICAgICAgICAvLyAgIHRoaXMuZnVsbFJlc3VsdHNcclxuICAgICAgICAgICAgICAgIC8vICk7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmZ1bGxSZXN1bHRzKTtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUobWFwcGVkUmVzdWx0cy5sZW5ndGggIT09IDApO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm11bHRpUmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0odGhpcy5yZXN1bHRzU2Vzc2lvbk5hbWUsIFtdKTtcclxuICAgICAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dChbXSBhcyBPKTtcclxuICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBQcm9taXNlLmFsbChhbGxRdWVyaWVzKS50aGVuKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nLm5leHQoZmFsc2UpO1xyXG4gICAgICBjb25zb2xlLmxvZygnKysrIE11bHRpbG9hZGluZyBDb21wbGV0ZSArKysnKTtcclxuICAgICAgY29uc29sZS5sb2coJysrKyBNdWx0aSBSZXN1bHRzOiAnLCB0aGlzLmZ1bGxNdWx0aVJlc3VsdHMsICcgKysrJyk7XHJcblxyXG4gICAgICAvLyBzdG9yZSB0aGUgZnVsbCByZXN1bHRzXHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbkl0ZW0oXHJcbiAgICAgICAgdGhpcy5tdWx0aVJlc3VsdHNTZXNzaW9uTmFtZSxcclxuICAgICAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHNcclxuICAgICAgKTtcclxuXHJcbiAgICAgIHRoaXMubXVsdGlSZXN1bHRzLm5leHQodGhpcy5mdWxsTXVsdGlSZXN1bHRzKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVTZXNzaW9uSXRlbSh0aGlzLnJlc3VsdHNTZXNzaW9uTmFtZSk7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVNlc3Npb25JdGVtKHRoaXMubXVsdGlSZXN1bHRzU2Vzc2lvbk5hbWUpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHsgfVxyXG4gICAgdGhpcy5mdWxsUmVzdWx0cyA9IFtdIGFzIE87XHJcbiAgICB0aGlzLmZ1bGxNdWx0aVJlc3VsdHMgPSBbXTtcclxuICAgIHRoaXMucmVzdWx0cy5uZXh0KFtdIGFzIE8pO1xyXG4gICAgdGhpcy5tdWx0aVJlc3VsdHMubmV4dChbXSk7XHJcbiAgICB0aGlzLnJlc2V0UXVlcnkoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBtYWtlU2Vzc2lvblJlc3VsdHMoZGF0YTogTyk6IGFueSB7XHJcbiAgICByZXR1cm4gZGF0YTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXNldFF1ZXJ5KCk6IHZvaWQ7XHJcblxyXG4gIGFic3RyYWN0IHN0YXJ0U2VhcmNoKCk6IFByb21pc2U8Ym9vbGVhbj47XHJcblxyXG4gIGFic3RyYWN0IHN0YXJ0UmVjZW50U2VhcmNoKHJlY2VudFNlYXJjaDogUmVjZW50U2VhcmNoKTogdm9pZDtcclxuXHJcbiAgYWJzdHJhY3QgdXBkYXRlTG93ZXN0UHJpY2UocmVzdWx0czogTyk6IElDaGVhcGVzdFByaWNlO1xyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHByZXZpb3VzSXRlbXMgYmFza2V0aXRlbXMgdGhhdCBhbHJlYWR5IGJlZW4gYWRkZWQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHVwIHRoZSBkZWZhdWx0cyBmb3IgdGhlIHNlYXJjaC5cclxuICAgKi9cclxuICBhYnN0cmFjdCB1cGRhdGVGcm9tUHJldmlvdXNTZWFyY2hlcyhcclxuICAgIHByZXZpb3VzSXRlbXM6IFJlY29yZDxTZXJ2aWNlVHlwZSwgQmFza2V0SXRlbT5cclxuICApOiB2b2lkO1xyXG5cclxuICBhYnN0cmFjdCB1cGRhdGVTZWFyY2hGcm9tRXhwaXJlZEJhc2tldEl0ZW0oYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IHZvaWQ7XHJcblxyXG4gIHByb3RlY3RlZCBfYXBwbHlGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc3VsdHMubmV4dCh0aGlzLmhlbHBlcnMuY2xvbmUodGhpcy5mdWxsUmVzdWx0cykpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -107,9 +107,7 @@ export class BookableBasket {
|
|
|
107
107
|
})) {
|
|
108
108
|
return this.workoutState(basket, BookingStatus.ApprovedPaymentOption);
|
|
109
109
|
}
|
|
110
|
-
console.log(basket.suppInfo);
|
|
111
110
|
const haveSuppDetails = basket.suppInfo.find((supp) => supp.hasDetails);
|
|
112
|
-
console.log(haveSuppDetails);
|
|
113
111
|
if (haveSuppDetails) {
|
|
114
112
|
status = BookingStatus.ApprovedSupplemtal;
|
|
115
113
|
}
|
|
@@ -260,4 +258,4 @@ export class BookableBasket {
|
|
|
260
258
|
return this.id;
|
|
261
259
|
}
|
|
262
260
|
}
|
|
263
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va2FibGUtYmFza2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jvb2thYmxlLWJhc2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBUXZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBRUwsWUFBWSxFQUVaLGFBQWEsRUFFYixXQUFXLEVBS1osTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLGFBQStDLEVBQy9DLE9BQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQUMvQyxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVpyQyxXQUFNLEdBQW1DLElBQUksZUFBZSxDQUMxRCxhQUFhLENBQUMsT0FBTyxDQUN0QixDQUFDO1FBRUYsV0FBTSxHQUFtQyxJQUFJLGVBQWUsQ0FDMUQsRUFBbUIsQ0FDcEIsQ0FBQztRQUNGLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkUsT0FBRSxHQUFXLElBQUksQ0FBQztJQUl2QixDQUFDO0lBRUosVUFBVSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENB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TSxDQUFDLElBQUksQ0FDZixhQUFhLElBQUksY0FBYyxDQUNoQyxDQUFDO29CQUNGLE1BQU07Z0JBQ1IsS0FBSyxhQUFhLENBQUMsS0FBSztvQkFDdEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2pCLGFBQWEsSUFBSSxjQUFjLENBQ2hDLENBQUM7b0JBQ0YsTUFBTTtnQkFDUixLQUFLLGFBQWEsQ0FBQyxNQUFNO29CQUN2QixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDaEIsYUFBYSxJQUFJLGNBQWMsQ0FDaEMsQ0FBQztvQkFDRixNQUFNO2FBQ1Q7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsRUFDRCxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQzFDLENBQUM7SUFDSixDQUFDO0lBRU8sU0FBUyxDQUFDLEtBQWEsRUFBRSxFQUFVO1FBQ3pDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVUsRUFBRSxFQUFFO1lBQy9CLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWMsRUFBRSxFQUFVO1FBQzNDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVcsRUFBRSxFQUFFO1lBQ2hDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJhdmVsbGVyIH0gZnJvbSAnLi4vbW9kZWxzL3RyYXZlbGxlci5vYmplY3QnO1xyXG5pbXBvcnQge1xyXG4gIEJhc2tldERldGFpbHMsXHJcbiAgQmFza2V0SXRlbU1hbmFnZW1lbnRJbmZvLFxyXG4gIE1pR3JvdXBEZXRhaWxcclxufSBmcm9tICcuLi9zZXJ2aWNlcy9lbnRlcnByaXNlLWJhc2tldC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZUhlbHBlclJvdXRpbmVzIH0gZnJvbSAnLi4vY2xhc3Nlcy9oZWxwZXJzJztcclxuaW1wb3J0IHsgQm9va2luZ1N0YXR1cyB9IGZyb20gJy4uL3R5cGVzL3R5cGVzJztcclxuaW1wb3J0IHsgRW50ZXJwcmlzZUJhc2tldFNlcnZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL0llbnRlcnByaXNlLWJhc2tldC5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBCYXNrZXRJdGVtLFxyXG4gIEJhc2tldFN0YXR1cyxcclxuICBHdWVzdCxcclxuICBQYXNzZW5nZXJUeXBlLFxyXG4gIFBheW1lbnRNZXRob2QsXHJcbiAgU2VydmljZVR5cGUsXHJcbiAgU3VwcGxlbWVudGFyeUJvb2tpbmdJbmZvLFxyXG4gIFVzZXIsXHJcbiAgVXNlck9yR3Vlc3QsXHJcbiAgVXNlclBhc3NlbmdlclR5cGVcclxufSBmcm9tICcuLi90eXBlcy9ncmFwaHFsLnR5cGVzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBCb29rYWJsZUJhc2tldCB7XHJcbiAgc3RhdHVzOiBCZWhhdmlvclN1YmplY3Q8Qm9va2luZ1N0YXR1cz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJvb2tpbmdTdGF0dXM+KFxyXG4gICAgQm9va2luZ1N0YXR1cy5Mb2FkaW5nXHJcbiAgKTtcclxuXHJcbiAgYmFza2V0OiBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJhc2tldERldGFpbHM+KFxyXG4gICAge30gYXMgQmFza2V0RGV0YWlsc1xyXG4gICk7XHJcbiAgbmVlZHNUb1ZpZXdNaTogYm9vbGVhbiA9IHRydWU7XHJcbiAgaXNVcGRhdGluZzogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcHJpdmF0ZSBpZDogc3RyaW5nID0gbnVsbDtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYmFza2V0U2VydmljZTogRW50ZXJwcmlzZUJhc2tldFNlcnZpY2VJbnRlcmZhY2UsXHJcbiAgICBwcml2YXRlIGhlbHBlcnM6IEJhc2VIZWxwZXJSb3V0aW5lc1xyXG4gICkge31cclxuXHJcbiAgbG9hZEJhc2tldChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmlkID0gaWQ7XHJcbiAgICB0aGlzLmJhc2tldCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4oe30gYXMgQmFza2V0RGV0YWlscyk7XHJcbiAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuTG9hZGluZyk7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuX2xvYWRCYXNrZXQoaWQpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgIExvYWRpbmcsXHJcbiAgMCAgQWRkaW5nSXRlbXMsXHJcbiAgMSAgQWRkaW5nVHJhdmVsbGVycyxcclxuICAyICBBZGRpbmdMZWFkUGFzc2VuZ2VyLFxyXG4gIDMgIEZhaWxlZCxcclxuICA0ICBSZXZhbGlkYXRlLFxyXG4gIDUgIFJldmFsaWRhdGluZ0Vycm9yLFxyXG4gIDYgIFJldmFsaWRhdGluZ0FjY2VwdGVkLFxyXG4gIDcgIENob29zZU1JR3JvdXAsXHJcbiAgOCAgUHJvdmlkZU1pLFxyXG4gIDkgIFNlbmRGb3JBcHByb3ZhbCxcclxuICAxMCBBd2FpdGluZ0FwcHJvdmFsLFxyXG4gIDExIEFwcHJvdmVkXHJcbiAgMTIgUGFydGlhbGx5Qm9va2VkLFxyXG4gIDEzIENvbXBsZXRlXHJcbiAgKi9cclxuXHJcbiAgcHJpdmF0ZSBfbG9hZEJhc2tldChpZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UubG9hZEJhc2tldChpZCk7XHJcblxyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnN1YnNyaWJlVG9CYXNrZXQoaWQsIHtcclxuICAgICAgbmV4dDogKGJhc2tldDogQmFza2V0RGV0YWlscykgPT4ge1xyXG4gICAgICAgIHRoaXMuYmFza2V0Lm5leHQoYmFza2V0KTtcclxuXHJcbiAgICAgICAgLy8gYmVmb3JlIHVwZGF0aW5nIHRoZSBiYXNrZXQgY2hlY2sgaWYgdGhlcmUgaXMgYW4gZXhwaXJlZCBiYXNrZXQgaXRlbS9zXHJcbiAgICAgICAgaWYgKHRoaXMuZXhwaXJlZEl0ZW1JblRoZUJhc2tldCgpKSB7XHJcbiAgICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuRXhwaXJlZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudXBkYXRlQmFza2V0KGJhc2tldCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmJhc2tldC5lcnJvcihlcnJvcik7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5iYXNrZXQuY29tcGxldGUoKTtcclxuICAgICAgICBjb25zb2xlLmxvZygnQmFza2V0IGNvbXBsZXRlZCcpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGV4cGlyZWRJdGVtSW5UaGVCYXNrZXQoKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dChmYWxzZSk7XHJcbiAgICBsZXQgZXhwaXJlZEl0ZW1JblRoZUJhc2tldDogYm9vbGVhbjtcclxuICAgIHRoaXMuYmFza2V0LnN1YnNjcmliZSgoYmFza2V0OiBCYXNrZXREZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgZXhwaXJlZEl0ZW1JblRoZUJhc2tldCA9IGJhc2tldC5iYXNrZXRJdGVtcy5zb21lKFxyXG4gICAgICAgICAgICAoaXRlbTogQmFza2V0SXRlbSkgPT4gaXRlbS5leHBpcmVkXHJcbiAgICAgICAgKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGV4cGlyZWRJdGVtSW5UaGVCYXNrZXQ7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVCYXNrZXQoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dChmYWxzZSk7XHJcbiAgICBzd2l0Y2ggKGJhc2tldC5zdGF0dXMpIHtcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuT3BlbjpcclxuICAgICAgICB0aGlzLndvcmtvdXRPcGVuU3RhdGUoYmFza2V0KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXdhaXRpbmdBcHByb3ZhbDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KFxyXG4gICAgICAgICAgdGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBCb29raW5nU3RhdHVzLkF3YWl0aW5nQXBwcm92YWwpXHJcbiAgICAgICAgKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldCkpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5Cb29rZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQ29tcGxldGUpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQm9va2luZ0ZhaWxlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgQm9va2luZ1N0YXR1cy5GYWlsZWQpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuRGlzYXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkZhaWxlZCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQmFza2V0U3RhdHVzLlBhcnRpYWxseUJvb2tlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuRmFpbGVkKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBjb25zdCB0bXA6IG5ldmVyID0gYmFza2V0LnN0YXR1cztcclxuICAgICAgICBjb25zb2xlLmxvZyh0bXApO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZW5kQmFza2V0Rm9yQXBwcm92YWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLnNlbmRCYXNrZXRGb3JBcHByb3ZhbCh0aGlzLmlkKTtcclxuICB9XHJcblxyXG4gIHdvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldDogQmFza2V0RGV0YWlscyk6IEJvb2tpbmdTdGF0dXMge1xyXG4gICAgbGV0IHN0YXR1cyA9IEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRCb29rO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICBiYXNrZXRJdGVtLmF2YWlsYWJsZVBheW1lbnRNZXRob2RzPy5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgICAhYmFza2V0SXRlbS5zZWxlY3RlZFBheW1lbnRNZXRob2RcclxuICAgICAgICApO1xyXG4gICAgICB9KVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRQYXltZW50T3B0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zb2xlLmxvZyhiYXNrZXQuc3VwcEluZm8pO1xyXG4gICAgY29uc3QgaGF2ZVN1cHBEZXRhaWxzID0gYmFza2V0LnN1cHBJbmZvLmZpbmQoKHN1cHApID0+IHN1cHAuaGFzRGV0YWlscyk7XHJcbiAgICBjb25zb2xlLmxvZyhoYXZlU3VwcERldGFpbHMpO1xyXG4gICAgaWYgKGhhdmVTdXBwRGV0YWlscykge1xyXG4gICAgICBzdGF0dXMgPSBCb29raW5nU3RhdHVzLkFwcHJvdmVkU3VwcGxlbXRhbDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIHN0YXR1cyk7XHJcbiAgfVxyXG5cclxuICB3b3Jrb3V0U3RhdGUoXHJcbiAgICBiYXNrZXQ6IEJhc2tldERldGFpbHMsXHJcbiAgICBkZWZhdWx0U3RhdGU6IEJvb2tpbmdTdGF0dXNcclxuICApOiBCb29raW5nU3RhdHVzIHtcclxuICAgIC8vIElzIHRoZSBiYXNrZXQgdmFsaWRhdGVkLlxyXG4gICAgaWYgKCFiYXNrZXQudmFsaWRhdGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLl9oYXNJbnZhbGlkUHJpY2UoYmFza2V0KSkge1xyXG4gICAgICAgIHJldHVybiBCb29raW5nU3RhdHVzLlJldmFsaWRhdGU7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIEJvb2tpbmdTdGF0dXMuUmV2YWxpZGF0ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBkZWZhdWx0U3RhdGU7XHJcbiAgfVxyXG5cclxuICB3b3Jrb3V0T3BlblN0YXRlKGJhc2tldDogQmFza2V0RGV0YWlscyk6IEJvb2tpbmdTdGF0dXMge1xyXG4gICAgLy8gSWYgYW55IG9mIHRoZSBiYXNrZXRJdGVtcyBkb24ndCBoYXZlIGVub3VnaCB0cmF2ZWxsZXJzLCB0aGVuIHdlIG5lZWQgdG8gYWRkIHRoZW0uXHJcbiAgICBpZiAoYmFza2V0LmJhc2tldEl0ZW1zLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQWRkaW5nSXRlbXMpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5fbmVlZHNDb3JyZWN0VHJhdmVsbGVycyhiYXNrZXQpKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5BZGRpbmdUcmF2ZWxsZXJzKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuX25lZWRMZWFkUGFzc2VuZ2VycyhiYXNrZXQpKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5BZGRpbmdMZWFkUGFzc2VuZ2VyKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgLy8gSXMgdGhlIGJhc2tldCB2YWxpZGF0ZWQuXHJcbiAgICBpZiAoIWJhc2tldC52YWxpZGF0ZWQpIHtcclxuICAgICAgaWYgKHRoaXMuX2hhc0ludmFsaWRQcmljZShiYXNrZXQpKSB7XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlJldmFsaWRhdGUpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuUmV2YWxpZGF0ZSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5fbmVlZHNNaUdyb3VwcyhiYXNrZXQpKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5DaG9vc2VNSUdyb3VwKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmhlbHBlcnMubmVlZHNNaShiYXNrZXQsIHRoaXMubmVlZHNUb1ZpZXdNaSkpIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlByb3ZpZGVNaSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuU2VuZEZvckFwcHJvdmFsKTtcclxuICB9XHJcblxyXG4gIHJldmFsaWRhdGUoKSB7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UucmV2YWxpZGF0ZSh0aGlzLmlkKTtcclxuICB9XHJcblxyXG4gIGFkZFRyYXZlbGxlcnMoXHJcbiAgICBiYXNrZXQ6IEJhc2tldERldGFpbHMsXHJcbiAgICBiYXNrZXRJdGVtOiBCYXNrZXRJdGVtLFxyXG4gICAgdHJhdmVsbGVyczogVHJhdmVsbGVyW10sXHJcbiAgICBpbmRleDogbnVtYmVyID0gMFxyXG4gICk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UuYWRkVHJhdmVsbGVycyhiYXNrZXQuaWQsIGJhc2tldEl0ZW0sIHRyYXZlbGxlcnMsIGluZGV4KTtcclxuICB9XHJcblxyXG4gIHNldExlYWRQYXNzZW5nZXIoXHJcbiAgICBiYXNrZXQ6IEJhc2tldERldGFpbHMsXHJcbiAgICBiYXNrZXRJdGVtOiBCYXNrZXRJdGVtLFxyXG4gICAgdHJhdmVsbGVyczogVHJhdmVsbGVyLFxyXG4gICAgaW5kZXg6IG51bWJlciA9IDBcclxuICApOiB2b2lkIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnNldExlYWRQYXNzZW5nZXIoXHJcbiAgICAgIGJhc2tldC5pZCxcclxuICAgICAgYmFza2V0SXRlbSxcclxuICAgICAgdHJhdmVsbGVycyxcclxuICAgICAgaW5kZXhcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXRCYXNrZXRJdGVtTWlHcm91cChiYXNrZXRJZDogc3RyaW5nLCBncm91cERldGFpbDogTWlHcm91cERldGFpbCkge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2Uuc2V0QmFza2V0SXRlbU1pR3JvdXAoXHJcbiAgICAgIGJhc2tldElkLFxyXG4gICAgICBncm91cERldGFpbC5iYXNrZXRJdGVtLmlkLFxyXG4gICAgICBncm91cERldGFpbC52YWx1ZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNhdmVNaUdyb3VwKG1pR3JvdXBEZXRhaWxzUmVzdWx0OiBNaUdyb3VwRGV0YWlsW10pIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgbWlHcm91cERldGFpbHNSZXN1bHQuZm9yRWFjaCgoZ3JvdXBEZXRhaWxzOiBNaUdyb3VwRGV0YWlsKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0QmFza2V0SXRlbU1pR3JvdXAodGhpcy5pZCwgZ3JvdXBEZXRhaWxzKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2F2ZU1pKHJlc3VsdHM6IEJhc2tldEl0ZW1NYW5hZ2VtZW50SW5mb1tdKSB7XHJcbiAgICB0aGlzLm5lZWRzVG9WaWV3TWkgPSBmYWxzZTtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgaWYgKHJlc3VsdHMpIHtcclxuICAgICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnNhdmVNaURhdGEodGhpcy5pZCwgcmVzdWx0cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW1vdmVFeHBpcmVkSXRlbXMoKSB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5yZW1vdmVFeHBpcmVkSXRlbXModGhpcy5pZCk7XHJcbiAgfVxyXG5cclxuICBzZXRCYXNrZXRJdGVtUGF5bWVudE9wdGlvbihcclxuICAgIGJhc2tldEl0ZW06IEJhc2tldEl0ZW0sXHJcbiAgICBwYXltZW50TWV0aG9kOiBzdHJpbmdcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgcmV0dXJuIHRoaXMuYmFza2V0U2VydmljZS5zZXRCYXNrZXRJdGVtUGF5bWVudE9wdGlvbihcclxuICAgICAgdGhpcy5iYXNrZXQudmFsdWUsXHJcbiAgICAgIGJhc2tldEl0ZW0sXHJcbiAgICAgIHBheW1lbnRNZXRob2RcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBib29rQmFza2V0KHJlc3VsdHM6IFN1cHBsZW1lbnRhcnlCb29raW5nSW5mb1tdKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIGlmIChyZXN1bHRzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmJhc2tldFNlcnZpY2UuYm9va0Jhc2tldCh0aGlzLmlkLCByZXN1bHRzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX25lZWRzTWlHcm91cHMoYmFza2V0OiBCYXNrZXREZXRhaWxzKSB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIGJhc2tldEl0ZW0ubWlHcm91cHNBdmFpbGFibGUubGVuZ3RoID4gMCAmJiAhYmFza2V0SXRlbS5taUdyb3VwU2VsZWN0ZWRcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbmVlZHNDb3JyZWN0VHJhdmVsbGVycyhiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKSA9PiB7XHJcbiAgICAgIGNvbnN0IHRyYXZlbGxlcnMgPSB0aGlzLl9zcGxpdFRyYXZlbGxlcnMoYmFza2V0SXRlbSk7XHJcbiAgICAgIGlmIChiYXNrZXRJdGVtLnNlcnZpY2UudHlwZSA9PT0gU2VydmljZVR5cGUuUGFya2luZykge1xyXG4gICAgICAgIHJldHVybiAhKGJhc2tldEl0ZW0uYWR1bHRzID09PSAxKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gIShcclxuICAgICAgICAgIHRyYXZlbGxlcnMuYWR1bHRzLmxlbmd0aCA9PT0gYmFza2V0SXRlbS5hZHVsdHMgJiZcclxuICAgICAgICAgIHRyYXZlbGxlcnMuY2hpbGRyZW4ubGVuZ3RoID09PSBiYXNrZXRJdGVtLmNoaWxkcmVuICYmXHJcbiAgICAgICAgICB0cmF2ZWxsZXJzLmluZmFudHMubGVuZ3RoID09PSBiYXNrZXRJdGVtLmluZmFudHNcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhc0ludmFsaWRQcmljZShiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKSA9PiB7XHJcbiAgICAgIHJldHVybiAhYmFza2V0SXRlbS5sYXRlc3RWYWxpZGF0aW9uUHJpY2VEaWZmZXJlbmNlIHx8IGJhc2tldEl0ZW0uZXhwaXJlZDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbmVlZExlYWRQYXNzZW5nZXJzKGJhc2tldDogQmFza2V0RGV0YWlscyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhYmFza2V0LmJhc2tldEl0ZW1zLmZpbmQoKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pID0+IHtcclxuICAgICAgcmV0dXJuICFiYXNrZXRJdGVtLmxlYWRQYXNzZW5nZXI7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NwbGl0VHJhdmVsbGVycyhiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKToge1xyXG4gICAgYWR1bHRzOiBVc2VyT3JHdWVzdFtdO1xyXG4gICAgY2hpbGRyZW46IFVzZXJPckd1ZXN0W107XHJcbiAgICBpbmZhbnRzOiBVc2VyT3JHdWVzdFtdO1xyXG4gIH0ge1xyXG4gICAgcmV0dXJuIChiYXNrZXRJdGVtLnVzZXJQYXNzZW5nZXJUeXBlcy5jb25jYXQoYmFza2V0SXRlbS5ndWVzdFBhc3NlbmdlclR5cGVzKSB8fCBbXSkucmVkdWNlKFxyXG4gICAgICAoXHJcbiAgICAgICAgYWNjdW06IHsgYWR1bHRzOiBVc2VyT3JHdWVzdFtdOyBjaGlsZHJlbjogVXNlck9yR3Vlc3RbXTsgaW5mYW50czogVXNlck9yR3Vlc3RbXSB9LFxyXG4gICAgICAgIHVzZXI6IFVzZXJQYXNzZW5nZXJUeXBlLFxyXG4gICAgICAgIGluZGV4OiBudW1iZXJcclxuICAgICAgKSA9PiB7XHJcblxyXG4gICAgICAgIGNvbnN0IHVzZXJQYXNzZW5nZXIgPSB0aGlzLl9maW5kVXNlcihiYXNrZXRJdGVtLnVzZXJzLCBOdW1iZXIodXNlci5pZCkpO1xyXG4gICAgICAgIGNvbnN0IGd1ZXN0UGFzc2VuZ2VyID0gdGhpcy5fZmluZEd1ZXN0KGJhc2tldEl0ZW0uZ3Vlc3RzLCBOdW1iZXIodXNlci5pZCkpO1xyXG5cclxuXHJcbiAgICAgICAgc3dpdGNoICh1c2VyLnBhc3NlbmdlclR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5BZHVsdDpcclxuICAgICAgICAgICAgYWNjdW0uYWR1bHRzLnB1c2goXHJcbiAgICAgICAgICAgICAgdXNlclBhc3NlbmdlciB8fCBndWVzdFBhc3NlbmdlclxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5DaGlsZDpcclxuICAgICAgICAgICAgYWNjdW0uY2hpbGRyZW4ucHVzaChcclxuICAgICAgICAgICAgICB1c2VyUGFzc2VuZ2VyIHx8IGd1ZXN0UGFzc2VuZ2VyXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkluZmFudDpcclxuICAgICAgICAgICAgYWNjdW0uaW5mYW50cy5wdXNoKFxyXG4gICAgICAgICAgICAgIHVzZXJQYXNzZW5nZXIgfHwgZ3Vlc3RQYXNzZW5nZXJcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBhY2N1bTtcclxuICAgICAgfSxcclxuICAgICAgeyBhZHVsdHM6IFtdLCBjaGlsZHJlbjogW10sIGluZmFudHM6IFtdIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maW5kVXNlcih1c2VyczogVXNlcltdLCBpZDogbnVtYmVyKTogVXNlciB7XHJcbiAgICByZXR1cm4gdXNlcnMuZmluZCgodXNlcjogVXNlcikgPT4ge1xyXG4gICAgICByZXR1cm4gTnVtYmVyKHVzZXIuaWQpID09PSBpZDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZmluZEd1ZXN0KHVzZXJzOiBHdWVzdFtdLCBpZDogbnVtYmVyKTogR3Vlc3Qge1xyXG4gICAgcmV0dXJuIHVzZXJzLmZpbmQoKHVzZXI6IEd1ZXN0KSA9PiB7XHJcbiAgICAgIHJldHVybiBOdW1iZXIodXNlci5pZCkgPT09IGlkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRJZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va2FibGUtYmFza2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2J0c2VydmljZXMvYmFzZS9zcmMvbGliL3ZlbmRvci9jbGFzc2VzL2Jvb2thYmxlLWJhc2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBUXZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxPQUFPLEVBRUwsWUFBWSxFQUVaLGFBQWEsRUFFYixXQUFXLEVBS1osTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLGFBQStDLEVBQy9DLE9BQTJCO1FBRDNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQztRQUMvQyxZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQVpyQyxXQUFNLEdBQW1DLElBQUksZUFBZSxDQUMxRCxhQUFhLENBQUMsT0FBTyxDQUN0QixDQUFDO1FBRUYsV0FBTSxHQUFtQyxJQUFJLGVBQWUsQ0FDMUQsRUFBbUIsQ0FDcEIsQ0FBQztRQUNGLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkUsT0FBRSxHQUFXLElBQUksQ0FBQztJQUl2QixDQUFDO0lBRUosVUFBVSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFtQixDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENB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Q0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxjQUFjLENBQUMsQ0FBQztvQkFDckQsTUFBTTtnQkFDUixLQUFLLGFBQWEsQ0FBQyxNQUFNO29CQUN2QixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksY0FBYyxDQUFDLENBQUM7b0JBQ3BELE1BQU07YUFDVDtZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxFQUNELEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FDMUMsQ0FBQztJQUNKLENBQUM7SUFFTyxTQUFTLENBQUMsS0FBYSxFQUFFLEVBQVU7UUFDekMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBVSxFQUFFLEVBQUU7WUFDL0IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBYyxFQUFFLEVBQVU7UUFDM0MsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBVyxFQUFFLEVBQUU7WUFDaEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUcmF2ZWxsZXIgfSBmcm9tICcuLi9tb2RlbHMvdHJhdmVsbGVyLm9iamVjdCc7XHJcbmltcG9ydCB7XHJcbiAgQmFza2V0RGV0YWlscyxcclxuICBCYXNrZXRJdGVtTWFuYWdlbWVudEluZm8sXHJcbiAgTWlHcm91cERldGFpbFxyXG59IGZyb20gJy4uL3NlcnZpY2VzL2VudGVycHJpc2UtYmFza2V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlSGVscGVyUm91dGluZXMgfSBmcm9tICcuLi9jbGFzc2VzL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBCb29raW5nU3RhdHVzIH0gZnJvbSAnLi4vdHlwZXMvdHlwZXMnO1xyXG5pbXBvcnQgeyBFbnRlcnByaXNlQmFza2V0U2VydmljZUludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSWVudGVycHJpc2UtYmFza2V0LnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEJhc2tldEl0ZW0sXHJcbiAgQmFza2V0U3RhdHVzLFxyXG4gIEd1ZXN0LFxyXG4gIFBhc3NlbmdlclR5cGUsXHJcbiAgUGF5bWVudE1ldGhvZCxcclxuICBTZXJ2aWNlVHlwZSxcclxuICBTdXBwbGVtZW50YXJ5Qm9va2luZ0luZm8sXHJcbiAgVXNlcixcclxuICBVc2VyT3JHdWVzdCxcclxuICBVc2VyUGFzc2VuZ2VyVHlwZVxyXG59IGZyb20gJy4uL3R5cGVzL2dyYXBocWwudHlwZXMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEJvb2thYmxlQmFza2V0IHtcclxuICBzdGF0dXM6IEJlaGF2aW9yU3ViamVjdDxCb29raW5nU3RhdHVzPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Qm9va2luZ1N0YXR1cz4oXHJcbiAgICBCb29raW5nU3RhdHVzLkxvYWRpbmdcclxuICApO1xyXG5cclxuICBiYXNrZXQ6IEJlaGF2aW9yU3ViamVjdDxCYXNrZXREZXRhaWxzPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QmFza2V0RGV0YWlscz4oXHJcbiAgICB7fSBhcyBCYXNrZXREZXRhaWxzXHJcbiAgKTtcclxuICBuZWVkc1RvVmlld01pOiBib29sZWFuID0gdHJ1ZTtcclxuICBpc1VwZGF0aW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIGlkOiBzdHJpbmcgPSBudWxsO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBiYXNrZXRTZXJ2aWNlOiBFbnRlcnByaXNlQmFza2V0U2VydmljZUludGVyZmFjZSxcclxuICAgIHByaXZhdGUgaGVscGVyczogQmFzZUhlbHBlclJvdXRpbmVzXHJcbiAgKSB7fVxyXG5cclxuICBsb2FkQmFza2V0KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuaWQgPSBpZDtcclxuICAgIHRoaXMuYmFza2V0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxCYXNrZXREZXRhaWxzPih7fSBhcyBCYXNrZXREZXRhaWxzKTtcclxuICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5Mb2FkaW5nKTtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5fbG9hZEJhc2tldChpZCk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgTG9hZGluZyxcclxuICAwICBBZGRpbmdJdGVtcyxcclxuICAxICBBZGRpbmdUcmF2ZWxsZXJzLFxyXG4gIDIgIEFkZGluZ0xlYWRQYXNzZW5nZXIsXHJcbiAgMyAgRmFpbGVkLFxyXG4gIDQgIFJldmFsaWRhdGUsXHJcbiAgNSAgUmV2YWxpZGF0aW5nRXJyb3IsXHJcbiAgNiAgUmV2YWxpZGF0aW5nQWNjZXB0ZWQsXHJcbiAgNyAgQ2hvb3NlTUlHcm91cCxcclxuICA4ICBQcm92aWRlTWksXHJcbiAgOSAgU2VuZEZvckFwcHJvdmFsLFxyXG4gIDEwIEF3YWl0aW5nQXBwcm92YWwsXHJcbiAgMTEgQXBwcm92ZWRcclxuICAxMiBQYXJ0aWFsbHlCb29rZWQsXHJcbiAgMTMgQ29tcGxldGVcclxuICAqL1xyXG5cclxuICBwcml2YXRlIF9sb2FkQmFza2V0KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5sb2FkQmFza2V0KGlkKTtcclxuXHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2Uuc3Vic3JpYmVUb0Jhc2tldChpZCwge1xyXG4gICAgICBuZXh0OiAoYmFza2V0OiBCYXNrZXREZXRhaWxzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5iYXNrZXQubmV4dChiYXNrZXQpO1xyXG5cclxuICAgICAgICAvLyBiZWZvcmUgdXBkYXRpbmcgdGhlIGJhc2tldCBjaGVjayBpZiB0aGVyZSBpcyBhbiBleHBpcmVkIGJhc2tldCBpdGVtL3NcclxuICAgICAgICBpZiAodGhpcy5leHBpcmVkSXRlbUluVGhlQmFza2V0KCkpIHtcclxuICAgICAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5FeHBpcmVkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVCYXNrZXQoYmFza2V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3I6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYmFza2V0LmVycm9yKGVycm9yKTtcclxuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcclxuICAgICAgfSxcclxuICAgICAgY29tcGxldGU6ICgpID0+IHtcclxuICAgICAgICB0aGlzLmJhc2tldC5jb21wbGV0ZSgpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdCYXNrZXQgY29tcGxldGVkJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZXhwaXJlZEl0ZW1JblRoZUJhc2tldCgpOiBib29sZWFuIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KGZhbHNlKTtcclxuICAgIGxldCBleHBpcmVkSXRlbUluVGhlQmFza2V0OiBib29sZWFuO1xyXG4gICAgdGhpcy5iYXNrZXQuc3Vic2NyaWJlKChiYXNrZXQ6IEJhc2tldERldGFpbHMpID0+IHtcclxuICAgICAgZXhwaXJlZEl0ZW1JblRoZUJhc2tldCA9IGJhc2tldC5iYXNrZXRJdGVtcy5zb21lKFxyXG4gICAgICAgIChpdGVtOiBCYXNrZXRJdGVtKSA9PiBpdGVtLmV4cGlyZWRcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGV4cGlyZWRJdGVtSW5UaGVCYXNrZXQ7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVCYXNrZXQoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dChmYWxzZSk7XHJcbiAgICBzd2l0Y2ggKGJhc2tldC5zdGF0dXMpIHtcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuT3BlbjpcclxuICAgICAgICB0aGlzLndvcmtvdXRPcGVuU3RhdGUoYmFza2V0KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXdhaXRpbmdBcHByb3ZhbDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KFxyXG4gICAgICAgICAgdGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBCb29raW5nU3RhdHVzLkF3YWl0aW5nQXBwcm92YWwpXHJcbiAgICAgICAgKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldCkpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEJhc2tldFN0YXR1cy5Cb29rZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dCh0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQ29tcGxldGUpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuQm9va2luZ0ZhaWxlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KHRoaXMud29ya291dFN0YXRlKGJhc2tldCwgQm9va2luZ1N0YXR1cy5GYWlsZWQpKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBCYXNrZXRTdGF0dXMuRGlzYXBwcm92ZWQ6XHJcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkZhaWxlZCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQmFza2V0U3RhdHVzLlBhcnRpYWxseUJvb2tlZDpcclxuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuRmFpbGVkKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBjb25zdCB0bXA6IG5ldmVyID0gYmFza2V0LnN0YXR1cztcclxuICAgICAgICBjb25zb2xlLmxvZyh0bXApO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZW5kQmFza2V0Rm9yQXBwcm92YWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLnNlbmRCYXNrZXRGb3JBcHByb3ZhbCh0aGlzLmlkKTtcclxuICB9XHJcblxyXG4gIHdvcmtvdXRBcHByb3ZlZFN0YXRlKGJhc2tldDogQmFza2V0RGV0YWlscyk6IEJvb2tpbmdTdGF0dXMge1xyXG4gICAgbGV0IHN0YXR1cyA9IEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRCb29rO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICBiYXNrZXRJdGVtLmF2YWlsYWJsZVBheW1lbnRNZXRob2RzPy5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgICAhYmFza2V0SXRlbS5zZWxlY3RlZFBheW1lbnRNZXRob2RcclxuICAgICAgICApO1xyXG4gICAgICB9KVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLndvcmtvdXRTdGF0ZShiYXNrZXQsIEJvb2tpbmdTdGF0dXMuQXBwcm92ZWRQYXltZW50T3B0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBoYXZlU3VwcERldGFpbHMgPSBiYXNrZXQuc3VwcEluZm8uZmluZCgoc3VwcCkgPT4gc3VwcC5oYXNEZXRhaWxzKTtcclxuICAgIGlmIChoYXZlU3VwcERldGFpbHMpIHtcclxuICAgICAgc3RhdHVzID0gQm9va2luZ1N0YXR1cy5BcHByb3ZlZFN1cHBsZW10YWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy53b3Jrb3V0U3RhdGUoYmFza2V0LCBzdGF0dXMpO1xyXG4gIH1cclxuXHJcbiAgd29ya291dFN0YXRlKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgZGVmYXVsdFN0YXRlOiBCb29raW5nU3RhdHVzXHJcbiAgKTogQm9va2luZ1N0YXR1cyB7XHJcbiAgICAvLyBJcyB0aGUgYmFza2V0IHZhbGlkYXRlZC5cclxuICAgIGlmICghYmFza2V0LnZhbGlkYXRlZCkge1xyXG4gICAgICBpZiAodGhpcy5faGFzSW52YWxpZFByaWNlKGJhc2tldCkpIHtcclxuICAgICAgICByZXR1cm4gQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBCb29raW5nU3RhdHVzLlJldmFsaWRhdGU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZGVmYXVsdFN0YXRlO1xyXG4gIH1cclxuXHJcbiAgd29ya291dE9wZW5TdGF0ZShiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBCb29raW5nU3RhdHVzIHtcclxuICAgIC8vIElmIGFueSBvZiB0aGUgYmFza2V0SXRlbXMgZG9uJ3QgaGF2ZSBlbm91Z2ggdHJhdmVsbGVycywgdGhlbiB3ZSBuZWVkIHRvIGFkZCB0aGVtLlxyXG4gICAgaWYgKGJhc2tldC5iYXNrZXRJdGVtcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLkFkZGluZ0l0ZW1zKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuX25lZWRzQ29ycmVjdFRyYXZlbGxlcnMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQWRkaW5nVHJhdmVsbGVycyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9uZWVkTGVhZFBhc3NlbmdlcnMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQWRkaW5nTGVhZFBhc3Nlbmdlcik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIC8vIElzIHRoZSBiYXNrZXQgdmFsaWRhdGVkLlxyXG4gICAgaWYgKCFiYXNrZXQudmFsaWRhdGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLl9oYXNJbnZhbGlkUHJpY2UoYmFza2V0KSkge1xyXG4gICAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5SZXZhbGlkYXRlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlJldmFsaWRhdGUpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuX25lZWRzTWlHcm91cHMoYmFza2V0KSkge1xyXG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEJvb2tpbmdTdGF0dXMuQ2hvb3NlTUlHcm91cCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5oZWxwZXJzLm5lZWRzTWkoYmFza2V0LCB0aGlzLm5lZWRzVG9WaWV3TWkpKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQm9va2luZ1N0YXR1cy5Qcm92aWRlTWkpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdGF0dXMubmV4dChCb29raW5nU3RhdHVzLlNlbmRGb3JBcHByb3ZhbCk7XHJcbiAgfVxyXG5cclxuICByZXZhbGlkYXRlKCkge1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnJldmFsaWRhdGUodGhpcy5pZCk7XHJcbiAgfVxyXG5cclxuICBhZGRUcmF2ZWxsZXJzKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgYmFza2V0SXRlbTogQmFza2V0SXRlbSxcclxuICAgIHRyYXZlbGxlcnM6IFRyYXZlbGxlcltdLFxyXG4gICAgaW5kZXg6IG51bWJlciA9IDBcclxuICApOiB2b2lkIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLmFkZFRyYXZlbGxlcnMoYmFza2V0LmlkLCBiYXNrZXRJdGVtLCB0cmF2ZWxsZXJzLCBpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzZXRMZWFkUGFzc2VuZ2VyKFxyXG4gICAgYmFza2V0OiBCYXNrZXREZXRhaWxzLFxyXG4gICAgYmFza2V0SXRlbTogQmFza2V0SXRlbSxcclxuICAgIHRyYXZlbGxlcnM6IFRyYXZlbGxlcixcclxuICAgIGluZGV4OiBudW1iZXIgPSAwXHJcbiAgKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuYmFza2V0U2VydmljZS5zZXRMZWFkUGFzc2VuZ2VyKFxyXG4gICAgICBiYXNrZXQuaWQsXHJcbiAgICAgIGJhc2tldEl0ZW0sXHJcbiAgICAgIHRyYXZlbGxlcnMsXHJcbiAgICAgIGluZGV4XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2V0QmFza2V0SXRlbU1pR3JvdXAoYmFza2V0SWQ6IHN0cmluZywgZ3JvdXBEZXRhaWw6IE1pR3JvdXBEZXRhaWwpIHtcclxuICAgIHRoaXMuaXNVcGRhdGluZy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5iYXNrZXRTZXJ2aWNlLnNldEJhc2tldEl0ZW1NaUdyb3VwKFxyXG4gICAgICBiYXNrZXRJZCxcclxuICAgICAgZ3JvdXBEZXRhaWwuYmFza2V0SXRlbS5pZCxcclxuICAgICAgZ3JvdXBEZXRhaWwudmFsdWVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzYXZlTWlHcm91cChtaUdyb3VwRGV0YWlsc1Jlc3VsdDogTWlHcm91cERldGFpbFtdKSB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIG1pR3JvdXBEZXRhaWxzUmVzdWx0LmZvckVhY2goKGdyb3VwRGV0YWlsczogTWlHcm91cERldGFpbCkgPT4ge1xyXG4gICAgICB0aGlzLnNldEJhc2tldEl0ZW1NaUdyb3VwKHRoaXMuaWQsIGdyb3VwRGV0YWlscyk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNhdmVNaShyZXN1bHRzOiBCYXNrZXRJdGVtTWFuYWdlbWVudEluZm9bXSkge1xyXG4gICAgdGhpcy5uZWVkc1RvVmlld01pID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIGlmIChyZXN1bHRzKSB7XHJcbiAgICAgIHRoaXMuYmFza2V0U2VydmljZS5zYXZlTWlEYXRhKHRoaXMuaWQsIHJlc3VsdHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlRXhwaXJlZEl0ZW1zKCkge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmJhc2tldFNlcnZpY2UucmVtb3ZlRXhwaXJlZEl0ZW1zKHRoaXMuaWQpO1xyXG4gIH1cclxuXHJcbiAgc2V0QmFza2V0SXRlbVBheW1lbnRPcHRpb24oXHJcbiAgICBiYXNrZXRJdGVtOiBCYXNrZXRJdGVtLFxyXG4gICAgcGF5bWVudE1ldGhvZDogc3RyaW5nXHJcbiAgKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmlzVXBkYXRpbmcubmV4dCh0cnVlKTtcclxuICAgIHJldHVybiB0aGlzLmJhc2tldFNlcnZpY2Uuc2V0QmFza2V0SXRlbVBheW1lbnRPcHRpb24oXHJcbiAgICAgIHRoaXMuYmFza2V0LnZhbHVlLFxyXG4gICAgICBiYXNrZXRJdGVtLFxyXG4gICAgICBwYXltZW50TWV0aG9kXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYm9va0Jhc2tldChyZXN1bHRzOiBTdXBwbGVtZW50YXJ5Qm9va2luZ0luZm9bXSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5pc1VwZGF0aW5nLm5leHQodHJ1ZSk7XHJcbiAgICBpZiAocmVzdWx0cykge1xyXG4gICAgICByZXR1cm4gdGhpcy5iYXNrZXRTZXJ2aWNlLmJvb2tCYXNrZXQodGhpcy5pZCwgcmVzdWx0cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9uZWVkc01pR3JvdXBzKGJhc2tldDogQmFza2V0RGV0YWlscykge1xyXG4gICAgcmV0dXJuICEhYmFza2V0LmJhc2tldEl0ZW1zLmZpbmQoKGJhc2tldEl0ZW06IEJhc2tldEl0ZW0pOiBib29sZWFuID0+IHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICBiYXNrZXRJdGVtLm1pR3JvdXBzQXZhaWxhYmxlLmxlbmd0aCA+IDAgJiYgIWJhc2tldEl0ZW0ubWlHcm91cFNlbGVjdGVkXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX25lZWRzQ29ycmVjdFRyYXZlbGxlcnMoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSkgPT4ge1xyXG4gICAgICBjb25zdCB0cmF2ZWxsZXJzID0gdGhpcy5fc3BsaXRUcmF2ZWxsZXJzKGJhc2tldEl0ZW0pO1xyXG4gICAgICBpZiAoYmFza2V0SXRlbS5zZXJ2aWNlLnR5cGUgPT09IFNlcnZpY2VUeXBlLlBhcmtpbmcpIHtcclxuICAgICAgICByZXR1cm4gIShiYXNrZXRJdGVtLmFkdWx0cyA9PT0gMSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuICEoXHJcbiAgICAgICAgICB0cmF2ZWxsZXJzLmFkdWx0cy5sZW5ndGggPT09IGJhc2tldEl0ZW0uYWR1bHRzICYmXHJcbiAgICAgICAgICB0cmF2ZWxsZXJzLmNoaWxkcmVuLmxlbmd0aCA9PT0gYmFza2V0SXRlbS5jaGlsZHJlbiAmJlxyXG4gICAgICAgICAgdHJhdmVsbGVycy5pbmZhbnRzLmxlbmd0aCA9PT0gYmFza2V0SXRlbS5pbmZhbnRzXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYXNJbnZhbGlkUHJpY2UoYmFza2V0OiBCYXNrZXREZXRhaWxzKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISFiYXNrZXQuYmFza2V0SXRlbXMuZmluZCgoYmFza2V0SXRlbTogQmFza2V0SXRlbSkgPT4ge1xyXG4gICAgICByZXR1cm4gIWJhc2tldEl0ZW0ubGF0ZXN0VmFsaWRhdGlvblByaWNlRGlmZmVyZW5jZSB8fCBiYXNrZXRJdGVtLmV4cGlyZWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX25lZWRMZWFkUGFzc2VuZ2VycyhiYXNrZXQ6IEJhc2tldERldGFpbHMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIWJhc2tldC5iYXNrZXRJdGVtcy5maW5kKChiYXNrZXRJdGVtOiBCYXNrZXRJdGVtKSA9PiB7XHJcbiAgICAgIHJldHVybiAhYmFza2V0SXRlbS5sZWFkUGFzc2VuZ2VyO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zcGxpdFRyYXZlbGxlcnMoYmFza2V0SXRlbTogQmFza2V0SXRlbSk6IHtcclxuICAgIGFkdWx0czogVXNlck9yR3Vlc3RbXTtcclxuICAgIGNoaWxkcmVuOiBVc2VyT3JHdWVzdFtdO1xyXG4gICAgaW5mYW50czogVXNlck9yR3Vlc3RbXTtcclxuICB9IHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIGJhc2tldEl0ZW0udXNlclBhc3NlbmdlclR5cGVzLmNvbmNhdChiYXNrZXRJdGVtLmd1ZXN0UGFzc2VuZ2VyVHlwZXMpIHx8IFtdXHJcbiAgICApLnJlZHVjZShcclxuICAgICAgKFxyXG4gICAgICAgIGFjY3VtOiB7XHJcbiAgICAgICAgICBhZHVsdHM6IFVzZXJPckd1ZXN0W107XHJcbiAgICAgICAgICBjaGlsZHJlbjogVXNlck9yR3Vlc3RbXTtcclxuICAgICAgICAgIGluZmFudHM6IFVzZXJPckd1ZXN0W107XHJcbiAgICAgICAgfSxcclxuICAgICAgICB1c2VyOiBVc2VyUGFzc2VuZ2VyVHlwZSxcclxuICAgICAgICBpbmRleDogbnVtYmVyXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHVzZXJQYXNzZW5nZXIgPSB0aGlzLl9maW5kVXNlcihiYXNrZXRJdGVtLnVzZXJzLCBOdW1iZXIodXNlci5pZCkpO1xyXG4gICAgICAgIGNvbnN0IGd1ZXN0UGFzc2VuZ2VyID0gdGhpcy5fZmluZEd1ZXN0KFxyXG4gICAgICAgICAgYmFza2V0SXRlbS5ndWVzdHMsXHJcbiAgICAgICAgICBOdW1iZXIodXNlci5pZClcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKHVzZXIucGFzc2VuZ2VyVHlwZSkge1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkFkdWx0OlxyXG4gICAgICAgICAgICBhY2N1bS5hZHVsdHMucHVzaCh1c2VyUGFzc2VuZ2VyIHx8IGd1ZXN0UGFzc2VuZ2VyKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIFBhc3NlbmdlclR5cGUuQ2hpbGQ6XHJcbiAgICAgICAgICAgIGFjY3VtLmNoaWxkcmVuLnB1c2godXNlclBhc3NlbmdlciB8fCBndWVzdFBhc3Nlbmdlcik7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkluZmFudDpcclxuICAgICAgICAgICAgYWNjdW0uaW5mYW50cy5wdXNoKHVzZXJQYXNzZW5nZXIgfHwgZ3Vlc3RQYXNzZW5nZXIpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGFjY3VtO1xyXG4gICAgICB9LFxyXG4gICAgICB7IGFkdWx0czogW10sIGNoaWxkcmVuOiBbXSwgaW5mYW50czogW10gfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ZpbmRVc2VyKHVzZXJzOiBVc2VyW10sIGlkOiBudW1iZXIpOiBVc2VyIHtcclxuICAgIHJldHVybiB1c2Vycy5maW5kKCh1c2VyOiBVc2VyKSA9PiB7XHJcbiAgICAgIHJldHVybiBOdW1iZXIodXNlci5pZCkgPT09IGlkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maW5kR3Vlc3QodXNlcnM6IEd1ZXN0W10sIGlkOiBudW1iZXIpOiBHdWVzdCB7XHJcbiAgICByZXR1cm4gdXNlcnMuZmluZCgodXNlcjogR3Vlc3QpID0+IHtcclxuICAgICAgcmV0dXJuIE51bWJlcih1c2VyLmlkKSA9PT0gaWQ7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldElkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pZDtcclxuICB9XHJcbn1cclxuIl19
|