@snabcentr/client-core 2.42.4 → 2.44.0
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/cart/services/sc-cart.service.d.ts +11 -0
- package/contacts/dto/sc-i-direction-manager-contact.d.ts +2 -2
- package/esm2022/cart/services/sc-cart.service.mjs +24 -1
- package/esm2022/contacts/dto/sc-i-direction-manager-contact.mjs +1 -1
- package/esm2022/contacts/services/sc-requisites.service.mjs +1 -1
- package/esm2022/locations/dto/sc-i-city.mjs +1 -1
- package/esm2022/locations/dto/sc-i-region.mjs +1 -1
- package/esm2022/locations/services/sc-location.service.mjs +45 -39
- package/esm2022/user/services/sc-user.service.mjs +29 -26
- package/esm2022/user-metrika/enums/sc-user-metrika-goals-enum.mjs +5 -1
- package/fesm2022/snabcentr-client-core.mjs +93 -54
- package/fesm2022/snabcentr-client-core.mjs.map +1 -1
- package/locations/dto/sc-i-city.d.ts +17 -3
- package/locations/dto/sc-i-region.d.ts +13 -3
- package/locations/services/sc-location.service.d.ts +27 -24
- package/package.json +1 -1
- package/release_notes.tmp +3 -3
- package/user/services/sc-user.service.d.ts +18 -18
- package/user-metrika/enums/sc-user-metrika-goals-enum.d.ts +5 -1
|
@@ -2,6 +2,7 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import { ScAuthService } from '../../auth/services/sc-auth.service';
|
|
4
4
|
import { ScIUrls } from '../../config/sc-i-urls';
|
|
5
|
+
import { ScUploadedFile } from '../../contacts/dto/sc-uploaded-file';
|
|
5
6
|
import { ScOrder } from '../../order/dto/sc-order';
|
|
6
7
|
import { ScReferencesService } from '../../references/services/sc-references.service';
|
|
7
8
|
import { ScUIService } from '../../ui/services/sc-ui.service';
|
|
@@ -92,6 +93,16 @@ export declare class ScCartService {
|
|
|
92
93
|
* @param order Данные о заказе.
|
|
93
94
|
*/
|
|
94
95
|
getCartByOrder(order: ScOrder): ScCart;
|
|
96
|
+
/**
|
|
97
|
+
* Возвращает пример CSV файла для добавления продуктов в корзину.
|
|
98
|
+
*/
|
|
99
|
+
getCartCsvExample$(): Observable<Blob>;
|
|
100
|
+
/**
|
|
101
|
+
* Добавляет товары в корзину из файла CSV.
|
|
102
|
+
*
|
|
103
|
+
* @param file Загружаемый файл в формате base64.
|
|
104
|
+
*/
|
|
105
|
+
addProductsFromCsv$(file: ScUploadedFile): Observable<ScCart>;
|
|
95
106
|
static ɵfac: i0.ɵɵFactoryDeclaration<ScCartService, never>;
|
|
96
107
|
static ɵprov: i0.ɵɵInjectableDeclaration<ScCartService>;
|
|
97
108
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScIRegionWithCities } from '../../locations/dto';
|
|
2
2
|
/**
|
|
3
3
|
* DTO модель контактов менеджера по направлению продаж.
|
|
4
4
|
*/
|
|
@@ -34,7 +34,7 @@ export interface ScIDirectionManagerContact {
|
|
|
34
34
|
/**
|
|
35
35
|
* Список регионов менеджера.
|
|
36
36
|
*/
|
|
37
|
-
regions?:
|
|
37
|
+
regions?: ScIRegionWithCities[];
|
|
38
38
|
/**
|
|
39
39
|
* Список контактов подчиненных менеджеров.
|
|
40
40
|
*/
|
|
@@ -149,6 +149,29 @@ export class ScCartService {
|
|
|
149
149
|
directionsSum: { [order.direction]: new ScSum(order.sum) },
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* Возвращает пример CSV файла для добавления продуктов в корзину.
|
|
154
|
+
*/
|
|
155
|
+
getCartCsvExample$() {
|
|
156
|
+
return this.http
|
|
157
|
+
.get(`${this.urls.apiUrl}/cart/csv/example`, {
|
|
158
|
+
responseType: 'blob',
|
|
159
|
+
})
|
|
160
|
+
.pipe(map((blob) => new Blob([blob], { type: 'text/csv' })));
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Добавляет товары в корзину из файла CSV.
|
|
164
|
+
*
|
|
165
|
+
* @param file Загружаемый файл в формате base64.
|
|
166
|
+
*/
|
|
167
|
+
addProductsFromCsv$(file) {
|
|
168
|
+
return this.http.post(`${this.urls.apiUrl}/cart/csv`, { file }).pipe(map((cartDTO) => new ScCart(cartDTO)), tap((cart) => {
|
|
169
|
+
this.cart$.next(cart);
|
|
170
|
+
this.userMetrikaService.emitUserMetrikaEvent({
|
|
171
|
+
target: ScUserMetrikaGoalsEnum.cartCsvUpload,
|
|
172
|
+
});
|
|
173
|
+
}));
|
|
174
|
+
}
|
|
152
175
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCartService, deps: [{ token: i1.HttpClient }, { token: SC_URLS }, { token: i2.ScReferencesService }, { token: i3.ScUIService }, { token: i4.ScWarehouseService }, { token: i5.ScAuthService }, { token: i6.ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
153
176
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScCartService, providedIn: 'root' }); }
|
|
154
177
|
}
|
|
@@ -161,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
161
184
|
type: Inject,
|
|
162
185
|
args: [SC_URLS]
|
|
163
186
|
}] }, { type: i2.ScReferencesService }, { type: i3.ScUIService }, { type: i4.ScWarehouseService }, { type: i5.ScAuthService }, { type: i6.ScUserMetrikaService }] });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jYXJ0L3NlcnZpY2VzL3NjLWNhcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBYyxhQUFhLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUt0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBRzdGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7O0FBR3pFOztHQUVHO0FBSUgsTUFBTSxPQUFPLGFBQWE7SUFnQnRCOzs7Ozs7Ozs7O09BVUc7SUFDSCxZQUNxQixJQUFnQixFQUNDLElBQWEsRUFDOUIsaUJBQXNDLEVBQ3RDLFNBQXNCLEVBQ3RCLGdCQUFvQyxFQUNwQyxXQUEwQixFQUMxQixrQkFBd0M7UUFOeEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNDLFNBQUksR0FBSixJQUFJLENBQVM7UUFDOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFhO1FBQ3RCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFDcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUFDMUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtR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QUFRLElBQUksRUFBRTtZQUMzQixTQUFTLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUM3QixhQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7U0FDbkQsQ0FBQztJQUNoQixDQUFDOytHQTNMUSxhQUFhLDRDQTZCVixPQUFPO21IQTdCVixhQUFhLGNBRlYsTUFBTTs7NEZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQThCUSxNQUFNOzJCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2NBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL2F1dGgvc2VydmljZXMvc2MtYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IFNjSVVybHMgfSBmcm9tICcuLi8uLi9jb25maWcvc2MtaS11cmxzJztcbmltcG9ydCB7IFNjT3JkZXIgfSBmcm9tICcuLi8uLi9vcmRlci9kdG8vc2Mtb3JkZXInO1xuaW1wb3J0IHsgSVNfQlJPV1NFUiB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9zc3IucHJvdmlkZXJzJztcbmltcG9ydCB7IFNjUmVmZXJlbmNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9yZWZlcmVuY2VzL3NlcnZpY2VzL3NjLXJlZmVyZW5jZXMuc2VydmljZSc7XG5pbXBvcnQgeyBTQ19VUkxTIH0gZnJvbSAnLi4vLi4vdG9rZW5zL3NjLXVybHMnO1xuaW1wb3J0IHsgU2NVSVNlcnZpY2UgfSBmcm9tICcuLi8uLi91aS9zZXJ2aWNlcy9zYy11aS5zZXJ2aWNlJztcbmltcG9ydCB7IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0gfSBmcm9tICcuLi8uLi91c2VyLW1ldHJpa2EvZW51bXMvc2MtdXNlci1tZXRyaWthLWdvYWxzLWVudW0nO1xuaW1wb3J0IHsgU2NVc2VyTWV0cmlrYVNlcnZpY2UgfSBmcm9tICcuLi8uLi91c2VyLW1ldHJpa2Evc2VydmljZXMvc2MtdXNlci1tZXRyaWthLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NXYXJlaG91c2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vd2FyZWhvdXNlJztcbmltcG9ydCB7IFNjU3VtIH0gZnJvbSAnLi4vY2xhc3Nlcy9zYy1zdW0nO1xuaW1wb3J0IHsgU2NDYXJ0IH0gZnJvbSAnLi4vZHRvL3NjLWNhcnQnO1xuaW1wb3J0IHsgU2NDYXJ0SXRlbSB9IGZyb20gJy4uL2R0by9zYy1jYXJ0LWl0ZW0nO1xuaW1wb3J0IHsgU2NJTmV3Q2FydEl0ZW1CYXNlIH0gZnJvbSAnLi4vZHRvL3NjLWktbmV3LWNhcnQtaXRlbS1iYXNlJztcbmltcG9ydCB7IFNjSVNhbGVzRGlyZWN0aW9uQ2FydCB9IGZyb20gJy4uL2R0by9zYy1pLXNhbGVzLWRpcmVjdGlvbi1jYXJ0JztcbmltcG9ydCB7IFNjSUNhcnREVE8gfSBmcm9tICcuLi9pbnRlcm5hbC9zYy1pLWNhcnQtZHRvJztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQutC+0YDQt9C40L3QvtC5LlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NhcnRTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgUmVwbGF5U3ViamVjdH0g0LTQu9GPINGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90YsuXG4gICAgICovXG4gICAgcHJpdmF0ZSBjYXJ0JDogUmVwbGF5U3ViamVjdDxTY0NhcnQ+ID0gbmV3IFJlcGxheVN1YmplY3Q8U2NDYXJ0PigxKTtcblxuICAgIC8qKlxuICAgICAqIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRj9C8INC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhcnREaXJlY3Rpb25zJDogT2JzZXJ2YWJsZTxTY0lTYWxlc0RpcmVjdGlvbkNhcnRbXT47XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiwg0YfRgtC+INGB0LrRgNC40L/RgiDQstGL0L/QvtC70L3Rj9C10YLRgdGPINCyINCx0YDQsNGD0LfQtdGA0LUuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXI6IGJvb2xlYW4gPSBpbmplY3QoSVNfQlJPV1NFUik7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjQ2FydFNlcnZpY2V9LlxuICAgICAqXG4gICAgICogQHBhcmFtIGh0dHAg0KHQtdGA0LLQuNGBINC00LvRjyDQstGL0L/QvtC70L3QtdC90LjRjyBIVFRQLdC30LDQv9GA0L7RgdC+0LIuXG4gICAgICogQHBhcmFtIHVybHMg0KHQv9C40YHQvtC6INGB0YHRi9C70L7QuiDQvdCwINGA0LDQt9C00LXQu9GLIGJhY2tlbmQnYS5cbiAgICAgKiBAcGFyYW0gcmVmZXJlbmNlc1NlcnZpY2Ug0KHQtdGA0LLQuNGBINGB0L/RgNCw0LLQvtGH0L3QuNC60L7Qsi5cbiAgICAgKiBAcGFyYW0gdWlTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBIFVJLlxuICAgICAqIEBwYXJhbSB3YXJlaG91c2VTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGB0L4g0YHQutC70LDQtNCw0LzQuC5cbiAgICAgKiBAcGFyYW0gYXV0aFNlcnZpY2Ug0KHQtdGA0LLQuNGBINCw0YPRgtC10L3RgtC40YTQuNC60LDRhtC40LguXG4gICAgICogQHBhcmFtIHVzZXJNZXRyaWthU2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGB0LHQvtGA0LAg0LzQtdGC0YDQuNC6INC+INC00LXQudGB0YLQstC40Y/RhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgQEluamVjdChTQ19VUkxTKSBwcml2YXRlIHJlYWRvbmx5IHVybHM6IFNjSVVybHMsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcmVmZXJlbmNlc1NlcnZpY2U6IFNjUmVmZXJlbmNlc1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdWlTZXJ2aWNlOiBTY1VJU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB3YXJlaG91c2VTZXJ2aWNlOiBTY1dhcmVob3VzZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2U6IFNjQXV0aFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlck1ldHJpa2FTZXJ2aWNlOiBTY1VzZXJNZXRyaWthU2VydmljZVxuICAgICkge1xuICAgICAgICBpZiAodGhpcy5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgIGF1dGhTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmdldEF1dGhDaGFuZ2UoKVxuICAgICAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcCgoKSA9PiB0aGlzLnVwZGF0ZUNhcnQkKCkpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNhcnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYXJ0JC5uZXh0KGNhcnQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jYXJ0RGlyZWN0aW9ucyQgPSByZWZlcmVuY2VzU2VydmljZS5kaXJlY3Rpb25zJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKChkaXJlY3Rpb25zKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQucGlwZShcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChjYXJ0KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy53YXJlaG91c2VTZXJ2aWNlLmdldFdhcmVob3VzZVNlbGVjdENoYW5nZSQoKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgod2FyZWhvdXNlKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb25zXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkaXJlY3Rpb24pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTY0lTYWxlc0RpcmVjdGlvbkNhcnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXJ0Lml0ZW1zLmZpbHRlcigoY2FydEl0ZW0pID0+IGNhcnRJdGVtLnNhbGVzRGlyZWN0aW9uID09PSBkaXJlY3Rpb24uaWQpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FydC5kaXJlY3Rpb25zU3VtW2RpcmVjdGlvbi5pZF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJlaG91c2UuaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigoZGlyZWN0aW9uKSA9PiBkaXJlY3Rpb24uaXRlbXMubGVuZ3RoID4gMCB8fCBkaXJlY3Rpb24uaXRlbXNPbk9yZGVyLmxlbmd0aCA+IDAgfHwgZGlyZWN0aW9uLml0ZW1zTm90SW5XYXJlaG91c2VTdG9jay5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiB7QGxpbmsgT2JzZXJ2YWJsZX0g0YHQvtC00LXRgNC20LjQvNC+0LPQviDQutC+0YDQt9C40L3Riy5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q2FydENoYW5nZSQoKTogT2JzZXJ2YWJsZTxTY0NhcnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FydCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLINC4INC+0LHQvdC+0LLQu9GP0LXRgiDQutC+0YDQt9C40L3Rgywg0LLQvtC30LLRgNCw0YnQsNGPIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLLlxuICAgICAqL1xuICAgIHB1YmxpYyB1cGRhdGVDYXJ0JCgpOiBPYnNlcnZhYmxlPFNjQ2FydD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxTY0lDYXJ0RFRPPihgJHt0aGlzLnVybHMuYXBpVXJsfS9jYXJ0YCkucGlwZShcbiAgICAgICAgICAgIG1hcCgoY2FydERUTykgPT4gbmV3IFNjQ2FydChjYXJ0RFRPKSksXG4gICAgICAgICAgICB0YXAoKGNhcnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhcnQkLm5leHQoY2FydCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQtNC+0LHQsNCy0LvQtdC90LjRjyDRgtC+0LLQsNGA0LAg0LIg0LrQvtGA0LfQuNC90YMg0Lgg0LLQvtC30LLRgNCw0YnQsNC10YIge0BsaW5rIE9ic2VydmFibGV9INGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90YsuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2FydE5ld0l0ZW0g0J3QvtCy0YvQuSDRjdC70LXQvNC10L3RgiDQutC+0YDQt9C40L3Riy5cbiAgICAgKi9cbiAgICBwdWJsaWMgYWRkVG9DYXJ0JChjYXJ0TmV3SXRlbTogU2NJTmV3Q2FydEl0ZW1CYXNlKTogT2JzZXJ2YWJsZTxTY0NhcnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDxTY0lDYXJ0RFRPPihgJHt0aGlzLnVybHMuYXBpVXJsfS9jYXJ0YCwgY2FydE5ld0l0ZW0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGNhcnREVE8pID0+IG5ldyBTY0NhcnQoY2FydERUTykpLFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5jYXJ0SXRlbUFkZGVkLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgcHJvZHVjdF9pZDogY2FydE5ld0l0ZW0ucHJvZHVjdElkIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRhcCgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQubmV4dChjYXJ0KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC+0LHQvdC+0LLQu9C10L3QuNGPINC/0L7Qt9C40YbQuNC4INCyINC60L7RgNC30LjQvdC1INC4INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNhcnRJdGVtSWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0Y3Qu9C10LzQtdC90YLQsCDQutC+0YDQt9C40L3Riy5cbiAgICAgKiBAcGFyYW0gY2FydFBhdGNoSXRlbSDQndC+0LLRi9C1INC00LDQvdC90YvQtSDRjdC70LXQvNC10L3RgtCwINC60L7RgNC30LjQvdGLLlxuICAgICAqL1xuICAgIHB1YmxpYyBwYXRjaENhcnRJdGVtJChjYXJ0SXRlbUlkOiBudW1iZXIsIGNhcnRQYXRjaEl0ZW06IE9taXQ8U2NJTmV3Q2FydEl0ZW1CYXNlLCAncHJvZHVjdElkJz4pOiBPYnNlcnZhYmxlPFNjQ2FydD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoPFNjSUNhcnREVE8+KGAke3RoaXMudXJscy5hcGlVcmx9L2NhcnQvJHtjYXJ0SXRlbUlkfWAsIGNhcnRQYXRjaEl0ZW0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGNhcnREVE8pID0+IG5ldyBTY0NhcnQoY2FydERUTykpLFxuICAgICAgICAgICAgdGFwKChjYXJ0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXJ0JC5uZXh0KGNhcnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0YPQtNCw0LvQtdC90LjRjyDQv9C+0LfQuNGG0LjQuCDQuNC3INC60L7RgNC30LjQvdGLINC4INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNhcnRJdGVtINCX0LDQv9C40YHRjCDQutC+0YDQt9C40L3Riywg0LrQvtGC0L7RgNGD0Y4g0L3QtdC+0LHRhdC+0LTQuNC80L4g0YPQtNCw0LvQuNGC0YwuXG4gICAgICovXG4gICAgcHVibGljIGRlbGV0ZUNhcnRJdGVtJChjYXJ0SXRlbTogU2NDYXJ0SXRlbSk6IE9ic2VydmFibGU8U2NDYXJ0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFNjSUNhcnREVE8+KGAke3RoaXMudXJscy5hcGlVcmx9L2NhcnQvJHtjYXJ0SXRlbS5pZH1gKS5waXBlKFxuICAgICAgICAgICAgbWFwKChjYXJ0RFRPKSA9PiBuZXcgU2NDYXJ0KGNhcnREVE8pKSxcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0uY2FydEl0ZW1EZWxldGVkLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgcHJvZHVjdF9pZDogY2FydEl0ZW0ucHJvZHVjdC5pZCB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKGNhcnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhcnQkLm5leHQoY2FydCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQvtGH0LjRgdGC0LrQuCDQutC+0YDQt9C40L3Riy5cbiAgICAgKi9cbiAgICBwdWJsaWMgY2xlYXJDYXJ0JCgpOiBPYnNlcnZhYmxlPHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTx1bmRlZmluZWQ+KGAke3RoaXMudXJscy5hcGlVcmx9L2NhcnRgKS5waXBlKFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5jYXJ0Q2xlYXJlZCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVpU2VydmljZS5yZW1vdmVBbGxOZXdPcmRlcnNNZXRhZGF0YSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQubmV4dChuZXcgU2NDYXJ0KCkpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiB7QGxpbmsgT2JzZXJ2YWJsZX0g0YHQvtC00LXRgNC20LjQvNC+0LPQviDQutC+0YDQt9C40L3RiyDQv9C+INC90LDQv9GA0LDQstC70LXQvdC40Y/QvCDQv9GA0L7QtNCw0LYuXG4gICAgICovXG4gICAgcHVibGljIGdldENhcnREaXJlY3Rpb25zQ2hhbmdlJCgpOiBPYnNlcnZhYmxlPFNjSVNhbGVzRGlyZWN0aW9uQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhcnREaXJlY3Rpb25zJDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiB7QGxpbmsgT2JzZXJ2YWJsZX0g0L/QvtC30LjRhtC40Lkg0LIg0LrQvtGA0LfQuNC90LUg0YEg0YLQvtCy0LDRgNCw0LzQuCwg0LrQvtGC0L7RgNGL0LUg0LHRi9C70Lgg0YPQtNCw0LvQtdC90Ysg0LjQtyDQv9GA0LDQudGBLdC70LjRgtCwINC4INCx0L7Qu9GM0YjQtSDQvdC1INC/0YDQvtC00LDRjtGC0YHRjy5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0TnVsbENhcnRJdGVtcyQoKTogT2JzZXJ2YWJsZTxTY0NhcnRJdGVtW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2FydENoYW5nZSQoKS5waXBlKG1hcCgoY2FydCkgPT4gY2FydC5pdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ucHJvZHVjdC5pc051bGwpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0L7QsdGK0LXQutGCIHtAbGluayBTY0NhcnR9INC60L7RgNC30LjQvdGLLCDRgdC+0LfQtNCw0L3QvdGL0Lkg0LjQtyDQvtCx0YrQtdC60YLQsCDQt9Cw0LrQsNC30LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JkZXIg0JTQsNC90L3Ri9C1INC+INC30LDQutCw0LfQtS5cbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2xhc3MtbWV0aG9kcy11c2UtdGhpc1xuICAgIHB1YmxpYyBnZXRDYXJ0QnlPcmRlcihvcmRlcjogU2NPcmRlcik6IFNjQ2FydCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpdGVtczogb3JkZXIucHJvZHVjdHMgPz8gW10sXG4gICAgICAgICAgICByZXN1bHRTdW06IHsgcnViOiBvcmRlci5zdW0gfSxcbiAgICAgICAgICAgIGRpcmVjdGlvbnNTdW06IHsgW29yZGVyLmRpcmVjdGlvbl06IG5ldyBTY1N1bShvcmRlci5zdW0pIH0sXG4gICAgICAgIH0gYXMgU2NDYXJ0O1xuICAgIH1cbn1cbiJdfQ==
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jYXJ0L3NlcnZpY2VzL3NjLWNhcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBYyxhQUFhLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU10RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBRzdGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7O0FBR3pFOztHQUVHO0FBSUgsTUFBTSxPQUFPLGFBQWE7SUFnQnRCOzs7Ozs7Ozs7O09BVUc7SUFDSCxZQUNxQixJQUFnQixFQUNDLElBQWEsRUFDOUIsaUJBQXNDLEVBQ3RDLFNBQXNCLEVBQ3RCLGdCQUFvQyxFQUNwQyxXQUEwQixFQUMxQixrQkFBd0M7UUFOeEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNDLFNBQUksR0FBSixJQUFJLENBQVM7UUFDOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFhO1FBQ3RCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFDcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUFDMUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtR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QTZCVixPQUFPO21IQTdCVixhQUFhLGNBRlYsTUFBTTs7NEZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQThCUSxNQUFNOzJCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2NBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL2F1dGgvc2VydmljZXMvc2MtYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IFNjSVVybHMgfSBmcm9tICcuLi8uLi9jb25maWcvc2MtaS11cmxzJztcbmltcG9ydCB7IFNjVXBsb2FkZWRGaWxlIH0gZnJvbSAnLi4vLi4vY29udGFjdHMvZHRvL3NjLXVwbG9hZGVkLWZpbGUnO1xuaW1wb3J0IHsgU2NPcmRlciB9IGZyb20gJy4uLy4uL29yZGVyL2R0by9zYy1vcmRlcic7XG5pbXBvcnQgeyBJU19CUk9XU0VSIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL3Nzci5wcm92aWRlcnMnO1xuaW1wb3J0IHsgU2NSZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4uLy4uL3JlZmVyZW5jZXMvc2VydmljZXMvc2MtcmVmZXJlbmNlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFNDX1VSTFMgfSBmcm9tICcuLi8uLi90b2tlbnMvc2MtdXJscyc7XG5pbXBvcnQgeyBTY1VJU2VydmljZSB9IGZyb20gJy4uLy4uL3VpL3NlcnZpY2VzL3NjLXVpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NVc2VyTWV0cmlrYUdvYWxzRW51bSB9IGZyb20gJy4uLy4uL3VzZXItbWV0cmlrYS9lbnVtcy9zYy11c2VyLW1ldHJpa2EtZ29hbHMtZW51bSc7XG5pbXBvcnQgeyBTY1VzZXJNZXRyaWthU2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItbWV0cmlrYS9zZXJ2aWNlcy9zYy11c2VyLW1ldHJpa2Euc2VydmljZSc7XG5pbXBvcnQgeyBTY1dhcmVob3VzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi93YXJlaG91c2UnO1xuaW1wb3J0IHsgU2NTdW0gfSBmcm9tICcuLi9jbGFzc2VzL3NjLXN1bSc7XG5pbXBvcnQgeyBTY0NhcnQgfSBmcm9tICcuLi9kdG8vc2MtY2FydCc7XG5pbXBvcnQgeyBTY0NhcnRJdGVtIH0gZnJvbSAnLi4vZHRvL3NjLWNhcnQtaXRlbSc7XG5pbXBvcnQgeyBTY0lOZXdDYXJ0SXRlbUJhc2UgfSBmcm9tICcuLi9kdG8vc2MtaS1uZXctY2FydC1pdGVtLWJhc2UnO1xuaW1wb3J0IHsgU2NJU2FsZXNEaXJlY3Rpb25DYXJ0IH0gZnJvbSAnLi4vZHRvL3NjLWktc2FsZXMtZGlyZWN0aW9uLWNhcnQnO1xuaW1wb3J0IHsgU2NJQ2FydERUTyB9IGZyb20gJy4uL2ludGVybmFsL3NjLWktY2FydC1kdG8nO1xuXG4vKipcbiAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC60L7RgNC30LjQvdC+0LkuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNjQ2FydFNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIHtAbGluayBSZXBsYXlTdWJqZWN0fSDQtNC70Y8g0YHQvtC00LXRgNC20LjQvNC+0LPQviDQutC+0YDQt9C40L3Riy5cbiAgICAgKi9cbiAgICBwcml2YXRlIGNhcnQkOiBSZXBsYXlTdWJqZWN0PFNjQ2FydD4gPSBuZXcgUmVwbGF5U3ViamVjdDxTY0NhcnQ+KDEpO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90Ysg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGP0Lwg0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FydERpcmVjdGlvbnMkOiBPYnNlcnZhYmxlPFNjSVNhbGVzRGlyZWN0aW9uQ2FydFtdPjtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6LCDRh9GC0L4g0YHQutGA0LjQv9GCINCy0YvQv9C+0LvQvdGP0LXRgtGB0Y8g0LIg0LHRgNCw0YPQt9C10YDQtS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzQnJvd3NlcjogYm9vbGVhbiA9IGluamVjdChJU19CUk9XU0VSKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NDYXJ0U2VydmljZX0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaHR0cCDQodC10YDQstC40YEg0LTQu9GPINCy0YvQv9C+0LvQvdC10L3QuNGPIEhUVFAt0LfQsNC/0YDQvtGB0L7Qsi5cbiAgICAgKiBAcGFyYW0gdXJscyDQodC/0LjRgdC+0Log0YHRgdGL0LvQvtC6INC90LAg0YDQsNC30LTQtdC70YsgYmFja2VuZCdhLlxuICAgICAqIEBwYXJhbSByZWZlcmVuY2VzU2VydmljZSDQodC10YDQstC40YEg0YHQv9GA0LDQstC+0YfQvdC40LrQvtCyLlxuICAgICAqIEBwYXJhbSB1aVNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YEgVUkuXG4gICAgICogQHBhcmFtIHdhcmVob3VzZVNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YHQviDRgdC60LvQsNC00LDQvNC4LlxuICAgICAqIEBwYXJhbSBhdXRoU2VydmljZSDQodC10YDQstC40YEg0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuC5cbiAgICAgKiBAcGFyYW0gdXNlck1ldHJpa2FTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YHQsdC+0YDQsCDQvNC10YLRgNC40Log0L4g0LTQtdC50YHRgtCy0LjRj9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KFNDX1VSTFMpIHByaXZhdGUgcmVhZG9ubHkgdXJsczogU2NJVXJscyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByZWZlcmVuY2VzU2VydmljZTogU2NSZWZlcmVuY2VzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB1aVNlcnZpY2U6IFNjVUlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHdhcmVob3VzZVNlcnZpY2U6IFNjV2FyZWhvdXNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhdXRoU2VydmljZTogU2NBdXRoU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB1c2VyTWV0cmlrYVNlcnZpY2U6IFNjVXNlck1ldHJpa2FTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGlmICh0aGlzLmlzQnJvd3Nlcikge1xuICAgICAgICAgICAgYXV0aFNlcnZpY2VcbiAgICAgICAgICAgICAgICAuZ2V0QXV0aENoYW5nZSgpXG4gICAgICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRoaXMudXBkYXRlQ2FydCQoKSkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNhcnQkLm5leHQoY2FydCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNhcnREaXJlY3Rpb25zJCA9IHJlZmVyZW5jZXNTZXJ2aWNlLmRpcmVjdGlvbnMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKGRpcmVjdGlvbnMpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jYXJ0JC5waXBlKFxuICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKGNhcnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLndhcmVob3VzZVNlcnZpY2UuZ2V0V2FyZWhvdXNlU2VsZWN0Q2hhbmdlJCgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCh3YXJlaG91c2UpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRpcmVjdGlvbikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFNjSVNhbGVzRGlyZWN0aW9uQ2FydChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcnQuaXRlbXMuZmlsdGVyKChjYXJ0SXRlbSkgPT4gY2FydEl0ZW0uc2FsZXNEaXJlY3Rpb24gPT09IGRpcmVjdGlvbi5pZCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXJ0LmRpcmVjdGlvbnNTdW1bZGlyZWN0aW9uLmlkXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdhcmVob3VzZS5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKChkaXJlY3Rpb24pID0+IGRpcmVjdGlvbi5pdGVtcy5sZW5ndGggPiAwIHx8IGRpcmVjdGlvbi5pdGVtc09uT3JkZXIubGVuZ3RoID4gMCB8fCBkaXJlY3Rpb24uaXRlbXNOb3RJbldhcmVob3VzZVN0b2NrLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDYXJ0Q2hhbmdlJCgpOiBPYnNlcnZhYmxlPFNjQ2FydD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYXJ0JC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90Ysg0Lgg0L7QsdC90L7QstC70Y/QtdGCINC60L7RgNC30LjQvdGDLCDQstC+0LfQstGA0LDRidCw0Y8ge0BsaW5rIE9ic2VydmFibGV9INGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90YsuXG4gICAgICovXG4gICAgcHVibGljIHVwZGF0ZUNhcnQkKCk6IE9ic2VydmFibGU8U2NDYXJ0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFNjSUNhcnREVE8+KGAke3RoaXMudXJscy5hcGlVcmx9L2NhcnRgKS5waXBlKFxuICAgICAgICAgICAgbWFwKChjYXJ0RFRPKSA9PiBuZXcgU2NDYXJ0KGNhcnREVE8pKSxcbiAgICAgICAgICAgIHRhcCgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQubmV4dChjYXJ0KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC00L7QsdCw0LLQu9C10L3QuNGPINGC0L7QstCw0YDQsCDQsiDQutC+0YDQt9C40L3RgyDQuCDQstC+0LfQstGA0LDRidCw0LXRgiB7QGxpbmsgT2JzZXJ2YWJsZX0g0YHQvtC00LXRgNC20LjQvNC+0LPQviDQutC+0YDQt9C40L3Riy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjYXJ0TmV3SXRlbSDQndC+0LLRi9C5INGN0LvQtdC80LXQvdGCINC60L7RgNC30LjQvdGLLlxuICAgICAqL1xuICAgIHB1YmxpYyBhZGRUb0NhcnQkKGNhcnROZXdJdGVtOiBTY0lOZXdDYXJ0SXRlbUJhc2UpOiBPYnNlcnZhYmxlPFNjQ2FydD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoPFNjSUNhcnREVE8+KGAke3RoaXMudXJscy5hcGlVcmx9L2NhcnRgLCBjYXJ0TmV3SXRlbSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoY2FydERUTykgPT4gbmV3IFNjQ2FydChjYXJ0RFRPKSksXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLmNhcnRJdGVtQWRkZWQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogeyBwcm9kdWN0X2lkOiBjYXJ0TmV3SXRlbS5wcm9kdWN0SWQgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKChjYXJ0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXJ0JC5uZXh0KGNhcnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L7QsdC90L7QstC70LXQvdC40Y8g0L/QvtC30LjRhtC40Lgg0LIg0LrQvtGA0LfQuNC90LUg0Lgg0LLQvtC30LLRgNCw0YnQsNC10YIge0BsaW5rIE9ic2VydmFibGV9INGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90YsuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2FydEl0ZW1JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRjdC70LXQvNC10L3RgtCwINC60L7RgNC30LjQvdGLLlxuICAgICAqIEBwYXJhbSBjYXJ0UGF0Y2hJdGVtINCd0L7QstGL0LUg0LTQsNC90L3Ri9C1INGN0LvQtdC80LXQvdGC0LAg0LrQvtGA0LfQuNC90YsuXG4gICAgICovXG4gICAgcHVibGljIHBhdGNoQ2FydEl0ZW0kKGNhcnRJdGVtSWQ6IG51bWJlciwgY2FydFBhdGNoSXRlbTogT21pdDxTY0lOZXdDYXJ0SXRlbUJhc2UsICdwcm9kdWN0SWQnPik6IE9ic2VydmFibGU8U2NDYXJ0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2g8U2NJQ2FydERUTz4oYCR7dGhpcy51cmxzLmFwaVVybH0vY2FydC8ke2NhcnRJdGVtSWR9YCwgY2FydFBhdGNoSXRlbSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoY2FydERUTykgPT4gbmV3IFNjQ2FydChjYXJ0RFRPKSksXG4gICAgICAgICAgICB0YXAoKGNhcnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhcnQkLm5leHQoY2FydCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDRg9C00LDQu9C10L3QuNGPINC/0L7Qt9C40YbQuNC4INC40Lcg0LrQvtGA0LfQuNC90Ysg0Lgg0LLQvtC30LLRgNCw0YnQsNC10YIge0BsaW5rIE9ic2VydmFibGV9INGB0L7QtNC10YDQttC40LzQvtCz0L4g0LrQvtGA0LfQuNC90YsuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2FydEl0ZW0g0JfQsNC/0LjRgdGMINC60L7RgNC30LjQvdGLLCDQutC+0YLQvtGA0YPRjiDQvdC10L7QsdGF0L7QtNC40LzQviDRg9C00LDQu9C40YLRjC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGVsZXRlQ2FydEl0ZW0kKGNhcnRJdGVtOiBTY0NhcnRJdGVtKTogT2JzZXJ2YWJsZTxTY0NhcnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8U2NJQ2FydERUTz4oYCR7dGhpcy51cmxzLmFwaVVybH0vY2FydC8ke2NhcnRJdGVtLmlkfWApLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGNhcnREVE8pID0+IG5ldyBTY0NhcnQoY2FydERUTykpLFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5jYXJ0SXRlbURlbGV0ZWQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogeyBwcm9kdWN0X2lkOiBjYXJ0SXRlbS5wcm9kdWN0LmlkIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRhcCgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQubmV4dChjYXJ0KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC+0YfQuNGB0YLQutC4INC60L7RgNC30LjQvdGLLlxuICAgICAqL1xuICAgIHB1YmxpYyBjbGVhckNhcnQkKCk6IE9ic2VydmFibGU8dW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPHVuZGVmaW5lZD4oYCR7dGhpcy51cmxzLmFwaVVybH0vY2FydGApLnBpcGUoXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLmNhcnRDbGVhcmVkLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudWlTZXJ2aWNlLnJlbW92ZUFsbE5ld09yZGVyc01ldGFkYXRhKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jYXJ0JC5uZXh0KG5ldyBTY0NhcnQoKSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7RgNC30LjQvdGLINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRj9C8INC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q2FydERpcmVjdGlvbnNDaGFuZ2UkKCk6IE9ic2VydmFibGU8U2NJU2FsZXNEaXJlY3Rpb25DYXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FydERpcmVjdGlvbnMkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDQv9C+0LfQuNGG0LjQuSDQsiDQutC+0YDQt9C40L3QtSDRgSDRgtC+0LLQsNGA0LDQvNC4LCDQutC+0YLQvtGA0YvQtSDQsdGL0LvQuCDRg9C00LDQu9C10L3RiyDQuNC3INC/0YDQsNC50YEt0LvQuNGC0LAg0Lgg0LHQvtC70YzRiNC1INC90LUg0L/RgNC+0LTQsNGO0YLRgdGPLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROdWxsQ2FydEl0ZW1zJCgpOiBPYnNlcnZhYmxlPFNjQ2FydEl0ZW1bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDYXJ0Q2hhbmdlJCgpLnBpcGUobWFwKChjYXJ0KSA9PiBjYXJ0Lml0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5wcm9kdWN0LmlzTnVsbCkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvtCx0YrQtdC60YIge0BsaW5rIFNjQ2FydH0g0LrQvtGA0LfQuNC90YssINGB0L7Qt9C00LDQvdC90YvQuSDQuNC3INC+0LHRitC10LrRgtCwINC30LDQutCw0LfQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcmRlciDQlNCw0L3QvdGL0LUg0L4g0LfQsNC60LDQt9C1LlxuICAgICAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gICAgcHVibGljIGdldENhcnRCeU9yZGVyKG9yZGVyOiBTY09yZGVyKTogU2NDYXJ0IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGl0ZW1zOiBvcmRlci5wcm9kdWN0cyA/PyBbXSxcbiAgICAgICAgICAgIHJlc3VsdFN1bTogeyBydWI6IG9yZGVyLnN1bSB9LFxuICAgICAgICAgICAgZGlyZWN0aW9uc1N1bTogeyBbb3JkZXIuZGlyZWN0aW9uXTogbmV3IFNjU3VtKG9yZGVyLnN1bSkgfSxcbiAgICAgICAgfSBhcyBTY0NhcnQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0L/RgNC40LzQtdGAIENTViDRhNCw0LnQu9CwINC00LvRjyDQtNC+0LHQsNCy0LvQtdC90LjRjyDQv9GA0L7QtNGD0LrRgtC+0LIg0LIg0LrQvtGA0LfQuNC90YMuXG4gICAgICovXG4gICAgcHVibGljIGdldENhcnRDc3ZFeGFtcGxlJCgpOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldChgJHt0aGlzLnVybHMuYXBpVXJsfS9jYXJ0L2Nzdi9leGFtcGxlYCwge1xuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcCgoYmxvYikgPT4gbmV3IEJsb2IoW2Jsb2JdLCB7IHR5cGU6ICd0ZXh0L2NzdicgfSkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQlNC+0LHQsNCy0LvRj9C10YIg0YLQvtCy0LDRgNGLINCyINC60L7RgNC30LjQvdGDINC40Lcg0YTQsNC50LvQsCBDU1YuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZmlsZSDQl9Cw0LPRgNGD0LbQsNC10LzRi9C5INGE0LDQudC7INCyINGE0L7RgNC80LDRgtC1IGJhc2U2NC5cbiAgICAgKi9cbiAgICBwdWJsaWMgYWRkUHJvZHVjdHNGcm9tQ3N2JChmaWxlOiBTY1VwbG9hZGVkRmlsZSk6IE9ic2VydmFibGU8U2NDYXJ0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxTY0lDYXJ0RFRPPihgJHt0aGlzLnVybHMuYXBpVXJsfS9jYXJ0L2NzdmAsIHsgZmlsZSB9KS5waXBlKFxuICAgICAgICAgICAgbWFwKChjYXJ0RFRPKSA9PiBuZXcgU2NDYXJ0KGNhcnREVE8pKSxcbiAgICAgICAgICAgIHRhcCgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FydCQubmV4dChjYXJ0KTtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5jYXJ0Q3N2VXBsb2FkLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1kaXJlY3Rpb24tbWFuYWdlci1jb250YWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb250YWN0cy9kdG8vc2MtaS1kaXJlY3Rpb24tbWFuYWdlci1jb250YWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY0lSZWdpb25XaXRoQ2l0aWVzIH0gZnJvbSAnLi4vLi4vbG9jYXRpb25zL2R0byc7XG5cbi8qKlxuICogRFRPINC80L7QtNC10LvRjCDQutC+0L3RgtCw0LrRgtC+0LIg0LzQtdC90LXQtNC20LXRgNCwINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRjiDQv9GA0L7QtNCw0LYuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3Qge1xuICAgIC8qKlxuICAgICAqINCY0LzRjyDQvNC10L3QtdC00LbQtdGA0LAuXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog0J3QvtC80LXRgCDRgtC10LvQtdGE0L7QvdCwLlxuICAgICAqL1xuICAgIHBob25lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQkNC00YDQtdGBINGN0LvQtdC60YLRgNC+0L3QvdC+0Lkg0L/QvtGH0YLRiy5cbiAgICAgKi9cbiAgICBlbWFpbDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog0KDQvtC70Ywg0LzQtdC90LXQtNC20LXRgNCwLlxuICAgICAqL1xuICAgIHJvbGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC80LXQvdC10LTQttC10YDQsC5cbiAgICAgKi9cbiAgICBpZD86IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LDQv9GA0LDQstC70LXQvdC40Y8g0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIGRpcmVjdGlvbklkPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogVVJJINGE0L7RgtC+INC80LXQvdC10LTQttC10YDQsC5cbiAgICAgKi9cbiAgICBwaG90bz86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqINCh0L/QuNGB0L7QuiDRgNC10LPQuNC+0L3QvtCyINC80LXQvdC10LTQttC10YDQsC5cbiAgICAgKi9cbiAgICByZWdpb25zPzogU2NJUmVnaW9uV2l0aENpdGllc1tdO1xuXG4gICAgLyoqXG4gICAgICog0KHQv9C40YHQvtC6INC60L7QvdGC0LDQutGC0L7QsiDQv9C+0LTRh9C40L3QtdC90L3Ri9GFINC80LXQvdC10LTQttC10YDQvtCyLlxuICAgICAqL1xuICAgIG1hbmFnZXJzPzogU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3RbXTtcbn1cbiJdfQ==
|
|
@@ -137,4 +137,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
137
137
|
type: Inject,
|
|
138
138
|
args: [SC_URLS]
|
|
139
139
|
}] }, { type: i2.ScAuthService }] });
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcmVxdWlzaXRlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb250YWN0cy9zZXJ2aWNlcy9zYy1yZXF1aXNpdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFjLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSzVGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7QUFJdkM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBZ0U1Qjs7Ozs7O09BTUc7SUFDSCxZQUNxQixJQUFnQixFQUNDLElBQWEsRUFDOUIsV0FBMEI7UUFGMUIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNDLFNBQUksR0FBSixJQUFJLENBQVM7UUFDOUIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUF6RS9DOztXQUVHO1FBQ0ssZ0JBQVcsR0FBbUMsSUFBSSxlQUFlLENBQWdCLElBQUksQ0FBQyxDQUFDO1FBRS9GOztXQUVHO1FBQ0ssaUJBQVksR0FBNEMsSUFBSSxHQUFHLEVBQXNDLENBQUM7UUFFOUc7O1dBRUc7UUFDSSxjQUFTLEdBQW1DLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUNwRixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXFCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLFdBQVcsQ0FBQyxDQUFDLEVBQ2xGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDakIsQ0FBQztRQUVGOztXQUVHO1FBQ0ksY0FBUyxHQUFnQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUks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QUFFLEVBQUU7WUFDekQsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQVUsRUFBRSxDQUFVLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbEIsT0FBTyxDQUFDLENBQUM7Z0JBQ2IsQ0FBQztnQkFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNsQixPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNkLENBQUM7Z0JBRUQsT0FBTyxDQUFDLENBQUM7WUFDYixDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxjQUFjLENBQUMsU0FBaUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1QyxDQUFDOytHQXZKUSxtQkFBbUIsNENBeUVoQixPQUFPO21IQXpFVixtQkFBbUIsY0FGaEIsTUFBTTs7NEZBRVQsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBMEVRLE1BQU07MkJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXBhcmFtLXJlYXNzaWduICovXG5cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlyc3QsIG1hcCwgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNjQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9hdXRoJztcbmltcG9ydCB7IFNjSVVybHMgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuaW1wb3J0IHsgU2NJQ2l0eSwgU2NJUmVnaW9uIH0gZnJvbSAnLi4vLi4vbG9jYXRpb25zJztcbmltcG9ydCB7IFNDX1VSTFMgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xuaW1wb3J0IHsgU2NJQ29udGFjdEFuZE1lZGlhLCBTY0lEaXJlY3Rpb25NYW5hZ2VyQ29udGFjdCwgU2NJT3JnQ29udGFjdCwgU2NJUmVxdWlzaXRlcywgU2NJU29jaWFsTWVkaWEgfSBmcm9tICcuLi9kdG8nO1xuaW1wb3J0IHsgU2NJUmV0YWlsQ29udGFjdCB9IGZyb20gJy4uL2R0by9zYy1pLXJldGFpbC1jb250YWN0JztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDRgNC10LrQstC40LfQuNGC0LDQvNC4INC4INGBINC+0LHQvtC50L3QvtC5INGB0LLRj9C30YzRji5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NSZXF1aXNpdGVzU2VydmljZSB7XG4gICAgLyoqXG4gICAgICoge0BsaW5rIEJlaGF2aW9yU3ViamVjdH0g0L/QvtC40YHQutC+0LLQvtCz0L4g0LfQsNC/0YDQvtGB0LAg0L3QsCDRgdGC0YDQsNC90LjRhtC1INC60L7QvdGC0LDQutGC0L7Qsi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHNlYXJjaFRlcm0kOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE1hcH0g0LrQvtC70LvQtdC60YbQuNGPINC/0LDRgCDQutC70Y7Rhy3Qt9C90LDRh9C10L3QuNC1INC00LvRjyDQutC+0L3RgtCw0LrRgtC+0LIg0LzQtdC90LXQtNC20LXRgNCwINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRjiDQv9GA0L7QtNCw0LYuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpZE1hbmFnZXJNYXA6IE1hcDxudW1iZXIsIFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0PiA9IG5ldyBNYXA8bnVtYmVyLCBTY0lEaXJlY3Rpb25NYW5hZ2VyQ29udGFjdD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINCy0YHQtdGFINC60L7QvdGC0LDQutGC0L7Qsi5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29udGFjdHMkOiBPYnNlcnZhYmxlPFNjSUNvbnRhY3RBbmRNZWRpYT4gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhDaGFuZ2UoKS5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5odHRwLmdldDxTY0lDb250YWN0QW5kTWVkaWE+KGAke3RoaXMudXJscy5hcGlVcmx9L2NvbnRhY3RzYCkpLFxuICAgICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINGB0L/QuNGB0LrQsCDQutC+0L3RgtCw0LrRgtC+0LIg0LTQu9GPINGA0LXRiNC10L3QuNGPINCy0L7Qt9C90LjQutCw0Y7RidC40YUg0LLQvtC/0YDQvtGB0L7Qsi5cbiAgICAgKi9cbiAgICBwdWJsaWMgcGVyc29uYWwkOiBPYnNlcnZhYmxlPFNjSU9yZ0NvbnRhY3RbXT4gPSB0aGlzLmNvbnRhY3RzJC5waXBlKG1hcCgoY29udGFjdHM6IFNjSUNvbnRhY3RBbmRNZWRpYSkgPT4gY29udGFjdHMucGVyc29uYWwpKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINC60L7QvdGC0LDQutGC0L7QsiDRgNC+0LfQvdC40YfQvdGL0YUg0LzQsNCz0LDQt9C40L3QvtCyLlxuICAgICAqL1xuICAgIHB1YmxpYyByZXRhaWwkOiBPYnNlcnZhYmxlPFNjSVJldGFpbENvbnRhY3RbXSB8IHVuZGVmaW5lZD4gPSB0aGlzLmNvbnRhY3RzJC5waXBlKFxuICAgICAgICBtYXAoKGNvbnRhY3RzOiBTY0lDb250YWN0QW5kTWVkaWEpID0+IGNvbnRhY3RzLnJldGFpbCksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINGB0YHRi9C70L7QuiDQvdCwINGB0L7RhtC40LDQu9GM0L3Ri9C1INGB0LXRgtC4INC4INC00YDRg9Cz0LjQtSDQutCw0L3QsNC70Ysg0LrQvtC80LzRg9C90LjQutCw0YbQuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBzb2NpYWxNZWRpYSQ6IE9ic2VydmFibGU8U2NJU29jaWFsTWVkaWFbXT4gPSB0aGlzLmNvbnRhY3RzJC5waXBlKFxuICAgICAgICBtYXAoKGNvbnRhY3RzOiBTY0lDb250YWN0QW5kTWVkaWEpID0+IGNvbnRhY3RzLnNvY2lhbE1lZGlhKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0LrQvtC90YLQsNC60YLQvtCyINC80LXQvdC10LTQttC10YDQvtCyINC/0L4g0L3QsNC/0YDQsNCy0LvQtdC90LjRj9C8INC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGlyZWN0aW9ucyQ6IE9ic2VydmFibGU8UGFydGlhbDxSZWNvcmQ8bnVtYmVyLCBTY0lEaXJlY3Rpb25NYW5hZ2VyQ29udGFjdFtdPj4+ID0gdGhpcy5jb250YWN0cyQucGlwZShcbiAgICAgICAgbWFwKChjb250YWN0czogU2NJQ29udGFjdEFuZE1lZGlhKSA9PiBjb250YWN0cy5kaXJlY3Rpb25zKSxcbiAgICAgICAgdGFwKChkaXJlY3Rpb25zKSA9PiB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ3VhcmQtZm9yLWluLG5vLXJlc3RyaWN0ZWQtc3ludGF4XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBkaXJlY3Rpb25zKSB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uc1tOdW1iZXIucGFyc2VGbG9hdChrZXkpXT8uZm9yRWFjaCgobWFuYWdlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcE1hbmFnZXJzKE51bWJlci5wYXJzZUZsb2F0KGtleSksIG1hbmFnZXIpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0YDQtdC60LLQuNC30LjRgtC+0LIg0LrQvtC80L/QsNC90LjQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVxdWlzaXRlcyQ6IE9ic2VydmFibGU8U2NJUmVxdWlzaXRlcz4gPSB0aGlzLmh0dHAuZ2V0PFNjSVJlcXVpc2l0ZXM+KGAke3RoaXMudXJscy5hcGlVcmx9L3JlcXVpc2l0ZXNgKS5waXBlKHNoYXJlUmVwbGF5KDEpKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NSZXF1aXNpdGVzU2VydmljZX0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaHR0cCBIVFRQLdC60LvQuNC10L3Rgi5cbiAgICAgKiBAcGFyYW0gdXJscyDQodC/0LjRgdC+0Log0YHRgdGL0LvQvtC6INC90LAg0YDQsNC30LTQtdC70YsgYmFja2VuZCdhLlxuICAgICAqIEBwYXJhbSBhdXRoU2VydmljZSDQodC10YDQstC40YEg0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgQEluamVjdChTQ19VUkxTKSBwcml2YXRlIHJlYWRvbmx5IHVybHM6IFNjSVVybHMsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2U6IFNjQXV0aFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiDQo9GB0YLQsNC90LDQstC70LjQstCw0LXRgiDQv9C+0LjRgdC60L7QstGL0Lkg0LfQsNC/0YDQvtGBINCyIHtAbGluayBCZWhhdmlvclN1YmplY3R9LlxuICAgICAqXG4gICAgICogQHBhcmFtIHRlcm0g0J/QvtC40YHQutC+0LLRi9C5INC30LDQv9GA0L7RgS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0U2VhcmNoVGVybUNoYW5nZSh0ZXJtOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGVybSQubmV4dCh0ZXJtKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiB7QGxpbmsgT2JzZXJ2YWJsZX0g0L/QvtC40YHQutC+0LLQvtCz0L4g0LfQsNC/0YDQvtGB0LAuXG4gICAgICovXG4gICAgcHVibGljIGdldFNlYXJjaFRlcm1DaGFuZ2UkKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2hUZXJtJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQv9C+0LjRgdC60L7QstGL0Lkg0LfQsNC/0YDQvtGBLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDdXJyZW50U2VhcmNoVGVybSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoVGVybSQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0L7RhdC+0LTQuNGCINC/0L4g0LTRgNC10LLQvtCy0LjQtNC90L7QvNGDINC/0YDQtdC00YHRgtCw0LLQu9C10L3QuNGOINC60L7QvdGC0LDQutGC0L7QsiDQvNC10L3QtdC00LbQtdGA0L7QsiDQuCDQt9Cw0L/QuNGB0YvQstCw0LXRgiDQutCw0LbQtNC+0LPQviDQvNC10L3QtdC00LbQtdGA0LAg0LIge0BsaW5rIE1hcH0g0L/QviDQutC70Y7Rh9GDINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGlyZWN0aW9uSWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsNC/0YDQsNCy0LvQtdC90LjRjyDQv9GA0L7QtNCw0LYuXG4gICAgICogQHBhcmFtIG1hbmFnZXIg0JrQvtC90YLQsNC60YLRiyDQvNC10L3QtdC00LbQtdGA0LAg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGOINC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICBwcml2YXRlIG1hcE1hbmFnZXJzKGRpcmVjdGlvbklkOiBudW1iZXIsIG1hbmFnZXI6IFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0KTogdm9pZCB7XG4gICAgICAgIGlmICghbWFuYWdlci5pZCkgcmV0dXJuO1xuXG4gICAgICAgIG1hbmFnZXIuZGlyZWN0aW9uSWQgPSBkaXJlY3Rpb25JZDtcbiAgICAgICAgdGhpcy5pZE1hbmFnZXJNYXAuc2V0KG1hbmFnZXIuaWQsIHRoaXMuc29ydE1hbmFnZXJDaXRpZXMobWFuYWdlcikpO1xuXG4gICAgICAgIGlmICghbWFuYWdlci5tYW5hZ2VycykgcmV0dXJuO1xuXG4gICAgICAgIG1hbmFnZXIubWFuYWdlcnMuZm9yRWFjaCgoc3ViTWFuYWdlcikgPT4ge1xuICAgICAgICAgICAgdGhpcy5tYXBNYW5hZ2VycyhkaXJlY3Rpb25JZCwgc3ViTWFuYWdlcik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7RgNGC0LjRgNGD0LXRgiDQs9C+0YDQvtC00LAg0LzQtdC90LXQtNC20LXRgNCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1hbmFnZXIg0JrQvtC90YLQsNC60YLRiyDQvNC10L3QtdC00LbQtdGA0LAg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGOINC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2xhc3MtbWV0aG9kcy11c2UtdGhpc1xuICAgIHByaXZhdGUgc29ydE1hbmFnZXJDaXRpZXMobWFuYWdlcjogU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3QpOiBTY0lEaXJlY3Rpb25NYW5hZ2VyQ29udGFjdCB7XG4gICAgICAgIG1hbmFnZXIucmVnaW9ucyA9IG1hbmFnZXIucmVnaW9ucz8ubWFwPFNjSVJlZ2lvbj4oKHJlZ2lvbikgPT4ge1xuICAgICAgICAgICAgcmVnaW9uLmNpdGllcyA9IHJlZ2lvbi5jaXRpZXM/LnNvcnQoKGE6IFNjSUNpdHksIGI6IFNjSUNpdHkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoYS5uYW1lID4gYi5uYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChhLm5hbWUgPCBiLm5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVnaW9uO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gbWFuYWdlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQt9Cw0L/QuNGB0Ywg0LrQvtC90YLQsNC60YLQsCDQvNC10L3QtdC00LbQtdGA0LAg0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1hbmFnZXJJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQvNC10L3QtdC00LbQtdGA0LAuXG4gICAgICovXG4gICAgcHVibGljIGdldE1hbmFnZXJCeUlkKG1hbmFnZXJJZDogbnVtYmVyKTogU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3QgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5pZE1hbmFnZXJNYXAuZ2V0KG1hbmFnZXJJZCk7XG4gICAgfVxufVxuIl19
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcmVxdWlzaXRlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb250YWN0cy9zZXJ2aWNlcy9zYy1yZXF1aXNpdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFjLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSzVGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7QUFJdkM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBZ0U1Qjs7Ozs7O09BTUc7SUFDSCxZQUNxQixJQUFnQixFQUNDLElBQWEsRUFDOUIsV0FBMEI7UUFGMUIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNDLFNBQUksR0FBSixJQUFJLENBQVM7UUFDOUIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUF6RS9DOztXQUVHO1FBQ0ssZ0JBQVcsR0FBbUMsSUFBSSxlQUFlLENBQWdCLElBQUksQ0FBQyxDQUFDO1FBRS9GOztXQUVHO1FBQ0ssaUJBQVksR0FBNEMsSUFBSSxHQUFHLEVBQXNDLENBQUM7UUFFOUc7O1dBRUc7UUFDSSxjQUFTLEdBQW1DLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUNwRixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXFCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLFdBQVcsQ0FBQyxDQUFDLEVBQ2xGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDakIsQ0FBQztRQUVGOztXQUVHO1FBQ0ksY0FBUyxHQUFnQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUks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RUFBRSxFQUFFO1lBQ25FLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFVLEVBQUUsQ0FBVSxFQUFFLEVBQUU7Z0JBQzNELElBQUksQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2xCLE9BQU8sQ0FBQyxDQUFDO2dCQUNiLENBQUM7Z0JBRUQsSUFBSSxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbEIsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDZCxDQUFDO2dCQUVELE9BQU8sQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLE1BQU0sQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksY0FBYyxDQUFDLFNBQWlCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQzsrR0F2SlEsbUJBQW1CLDRDQXlFaEIsT0FBTzttSEF6RVYsbUJBQW1CLGNBRmhCLE1BQU07OzRGQUVULG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQTBFUSxNQUFNOzJCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpcnN0LCBtYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTY0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXV0aCc7XG5pbXBvcnQgeyBTY0lVcmxzIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcbmltcG9ydCB7IFNjSUNpdHksIFNjSVJlZ2lvbldpdGhDaXRpZXMgfSBmcm9tICcuLi8uLi9sb2NhdGlvbnMnO1xuaW1wb3J0IHsgU0NfVVJMUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XG5pbXBvcnQgeyBTY0lDb250YWN0QW5kTWVkaWEsIFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0LCBTY0lPcmdDb250YWN0LCBTY0lSZXF1aXNpdGVzLCBTY0lTb2NpYWxNZWRpYSB9IGZyb20gJy4uL2R0byc7XG5pbXBvcnQgeyBTY0lSZXRhaWxDb250YWN0IH0gZnJvbSAnLi4vZHRvL3NjLWktcmV0YWlsLWNvbnRhY3QnO1xuXG4vKipcbiAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINGA0LXQutCy0LjQt9C40YLQsNC80Lgg0Lgg0YEg0L7QsdC+0LnQvdC+0Lkg0YHQstGP0LfRjNGOLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY1JlcXVpc2l0ZXNTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgQmVoYXZpb3JTdWJqZWN0fSDQv9C+0LjRgdC60L7QstC+0LPQviDQt9Cw0L/RgNC+0YHQsCDQvdCwINGB0YLRgNCw0L3QuNGG0LUg0LrQvtC90YLQsNC60YLQvtCyLlxuICAgICAqL1xuICAgIHByaXZhdGUgc2VhcmNoVGVybSQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG5cbiAgICAvKipcbiAgICAgKiB7QGxpbmsgTWFwfSDQutC+0LvQu9C10LrRhtC40Y8g0L/QsNGAINC60LvRjtGHLdC30L3QsNGH0LXQvdC40LUg0LTQu9GPINC60L7QvdGC0LDQutGC0L7QsiDQvNC10L3QtdC00LbQtdGA0LAg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGOINC/0YDQvtC00LDQti5cbiAgICAgKi9cbiAgICBwcml2YXRlIGlkTWFuYWdlck1hcDogTWFwPG51bWJlciwgU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3Q+ID0gbmV3IE1hcDxudW1iZXIsIFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0PigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0LLRgdC10YUg0LrQvtC90YLQsNC60YLQvtCyLlxuICAgICAqL1xuICAgIHB1YmxpYyBjb250YWN0cyQ6IE9ic2VydmFibGU8U2NJQ29udGFjdEFuZE1lZGlhPiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aENoYW5nZSgpLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmh0dHAuZ2V0PFNjSUNvbnRhY3RBbmRNZWRpYT4oYCR7dGhpcy51cmxzLmFwaVVybH0vY29udGFjdHNgKSksXG4gICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINC60L7QvdGC0LDQutGC0L7QsiDQtNC70Y8g0YDQtdGI0LXQvdC40Y8g0LLQvtC30L3QuNC60LDRjtGJ0LjRhSDQstC+0L/RgNC+0YHQvtCyLlxuICAgICAqL1xuICAgIHB1YmxpYyBwZXJzb25hbCQ6IE9ic2VydmFibGU8U2NJT3JnQ29udGFjdFtdPiA9IHRoaXMuY29udGFjdHMkLnBpcGUobWFwKChjb250YWN0czogU2NJQ29udGFjdEFuZE1lZGlhKSA9PiBjb250YWN0cy5wZXJzb25hbCkpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0LrQvtC90YLQsNC60YLQvtCyINGA0L7Qt9C90LjRh9C90YvRhSDQvNCw0LPQsNC30LjQvdC+0LIuXG4gICAgICovXG4gICAgcHVibGljIHJldGFpbCQ6IE9ic2VydmFibGU8U2NJUmV0YWlsQ29udGFjdFtdIHwgdW5kZWZpbmVkPiA9IHRoaXMuY29udGFjdHMkLnBpcGUoXG4gICAgICAgIG1hcCgoY29udGFjdHM6IFNjSUNvbnRhY3RBbmRNZWRpYSkgPT4gY29udGFjdHMucmV0YWlsKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0YHRgdGL0LvQvtC6INC90LAg0YHQvtGG0LjQsNC70YzQvdGL0LUg0YHQtdGC0Lgg0Lgg0LTRgNGD0LPQuNC1INC60LDQvdCw0LvRiyDQutC+0LzQvNGD0L3QuNC60LDRhtC40LguXG4gICAgICovXG4gICAgcHVibGljIHNvY2lhbE1lZGlhJDogT2JzZXJ2YWJsZTxTY0lTb2NpYWxNZWRpYVtdPiA9IHRoaXMuY29udGFjdHMkLnBpcGUoXG4gICAgICAgIG1hcCgoY29udGFjdHM6IFNjSUNvbnRhY3RBbmRNZWRpYSkgPT4gY29udGFjdHMuc29jaWFsTWVkaWEpLFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINGB0L/QuNGB0LrQsCDQutC+0L3RgtCw0LrRgtC+0LIg0LzQtdC90LXQtNC20LXRgNC+0LIg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGP0Lwg0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIHB1YmxpYyBkaXJlY3Rpb25zJDogT2JzZXJ2YWJsZTxQYXJ0aWFsPFJlY29yZDxudW1iZXIsIFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0W10+Pj4gPSB0aGlzLmNvbnRhY3RzJC5waXBlKFxuICAgICAgICBtYXAoKGNvbnRhY3RzOiBTY0lDb250YWN0QW5kTWVkaWEpID0+IGNvbnRhY3RzLmRpcmVjdGlvbnMpLFxuICAgICAgICB0YXAoKGRpcmVjdGlvbnMpID0+IHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBndWFyZC1mb3ItaW4sbm8tcmVzdHJpY3RlZC1zeW50YXhcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGRpcmVjdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb25zW051bWJlci5wYXJzZUZsb2F0KGtleSldPy5mb3JFYWNoKChtYW5hZ2VyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWFwTWFuYWdlcnMoTnVtYmVyLnBhcnNlRmxvYXQoa2V5KSwgbWFuYWdlcik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINGB0L/QuNGB0LrQsCDRgNC10LrQstC40LfQuNGC0L7QsiDQutC+0LzQv9Cw0L3QuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZXF1aXNpdGVzJDogT2JzZXJ2YWJsZTxTY0lSZXF1aXNpdGVzPiA9IHRoaXMuaHR0cC5nZXQ8U2NJUmVxdWlzaXRlcz4oYCR7dGhpcy51cmxzLmFwaVVybH0vcmVxdWlzaXRlc2ApLnBpcGUoc2hhcmVSZXBsYXkoMSkpO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBTY1JlcXVpc2l0ZXNTZXJ2aWNlfS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBodHRwIEhUVFAt0LrQu9C40LXQvdGCLlxuICAgICAqIEBwYXJhbSB1cmxzINCh0L/QuNGB0L7QuiDRgdGB0YvQu9C+0Log0L3QsCDRgNCw0LfQtNC10LvRiyBiYWNrZW5kJ2EuXG4gICAgICogQHBhcmFtIGF1dGhTZXJ2aWNlINCh0LXRgNCy0LjRgSDQsNGD0YLQtdC90YLQuNGE0LjQutCw0YbQuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KFNDX1VSTFMpIHByaXZhdGUgcmVhZG9ubHkgdXJsczogU2NJVXJscyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhdXRoU2VydmljZTogU2NBdXRoU2VydmljZVxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqINCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINC/0L7QuNGB0LrQvtCy0YvQuSDQt9Cw0L/RgNC+0YEg0LIge0BsaW5rIEJlaGF2aW9yU3ViamVjdH0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGVybSDQn9C+0LjRgdC60L7QstGL0Lkg0LfQsNC/0YDQvtGBLlxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTZWFyY2hUZXJtQ2hhbmdlKHRlcm06IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hUZXJtJC5uZXh0KHRlcm0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCIHtAbGluayBPYnNlcnZhYmxlfSDQv9C+0LjRgdC60L7QstC+0LPQviDQt9Cw0L/RgNC+0YHQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U2VhcmNoVGVybUNoYW5nZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaFRlcm0kLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC/0L7QuNGB0LrQvtCy0YvQuSDQt9Cw0L/RgNC+0YEuXG4gICAgICovXG4gICAgcHVibGljIGdldEN1cnJlbnRTZWFyY2hUZXJtKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2hUZXJtJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCf0YDQvtGF0L7QtNC40YIg0L/QviDQtNGA0LXQstC+0LLQuNC00L3QvtC80YMg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y4g0LrQvtC90YLQsNC60YLQvtCyINC80LXQvdC10LTQttC10YDQvtCyINC4INC30LDQv9C40YHRi9Cy0LDQtdGCINC60LDQttC00L7Qs9C+INC80LXQvdC10LTQttC10YDQsCDQsiB7QGxpbmsgTWFwfSDQv9C+INC60LvRjtGH0YMg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkaXJlY3Rpb25JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQvdCw0L/RgNCw0LLQu9C10L3QuNGPINC/0YDQvtC00LDQti5cbiAgICAgKiBAcGFyYW0gbWFuYWdlciDQmtC+0L3RgtCw0LrRgtGLINC80LXQvdC10LTQttC10YDQsCDQv9C+INC90LDQv9GA0LDQstC70LXQvdC40Y4g0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIHByaXZhdGUgbWFwTWFuYWdlcnMoZGlyZWN0aW9uSWQ6IG51bWJlciwgbWFuYWdlcjogU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3QpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFtYW5hZ2VyLmlkKSByZXR1cm47XG5cbiAgICAgICAgbWFuYWdlci5kaXJlY3Rpb25JZCA9IGRpcmVjdGlvbklkO1xuICAgICAgICB0aGlzLmlkTWFuYWdlck1hcC5zZXQobWFuYWdlci5pZCwgdGhpcy5zb3J0TWFuYWdlckNpdGllcyhtYW5hZ2VyKSk7XG5cbiAgICAgICAgaWYgKCFtYW5hZ2VyLm1hbmFnZXJzKSByZXR1cm47XG5cbiAgICAgICAgbWFuYWdlci5tYW5hZ2Vycy5mb3JFYWNoKChzdWJNYW5hZ2VyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm1hcE1hbmFnZXJzKGRpcmVjdGlvbklkLCBzdWJNYW5hZ2VyKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtGA0YLQuNGA0YPQtdGCINCz0L7RgNC+0LTQsCDQvNC10L3QtdC00LbQtdGA0LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbWFuYWdlciDQmtC+0L3RgtCw0LrRgtGLINC80LXQvdC10LTQttC10YDQsCDQv9C+INC90LDQv9GA0LDQstC70LXQvdC40Y4g0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gICAgcHJpdmF0ZSBzb3J0TWFuYWdlckNpdGllcyhtYW5hZ2VyOiBTY0lEaXJlY3Rpb25NYW5hZ2VyQ29udGFjdCk6IFNjSURpcmVjdGlvbk1hbmFnZXJDb250YWN0IHtcbiAgICAgICAgbWFuYWdlci5yZWdpb25zID0gbWFuYWdlci5yZWdpb25zPy5tYXA8U2NJUmVnaW9uV2l0aENpdGllcz4oKHJlZ2lvbikgPT4ge1xuICAgICAgICAgICAgcmVnaW9uLmNpdGllcyA9IHJlZ2lvbi5jaXRpZXM/LnNvcnQoKGE6IFNjSUNpdHksIGI6IFNjSUNpdHkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoYS5uYW1lID4gYi5uYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChhLm5hbWUgPCBiLm5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVnaW9uO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gbWFuYWdlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQt9Cw0L/QuNGB0Ywg0LrQvtC90YLQsNC60YLQsCDQvNC10L3QtdC00LbQtdGA0LAg0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1hbmFnZXJJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQvNC10L3QtdC00LbQtdGA0LAuXG4gICAgICovXG4gICAgcHVibGljIGdldE1hbmFnZXJCeUlkKG1hbmFnZXJJZDogbnVtYmVyKTogU2NJRGlyZWN0aW9uTWFuYWdlckNvbnRhY3QgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5pZE1hbmFnZXJNYXAuZ2V0KG1hbmFnZXJJZCk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1jaXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9sb2NhdGlvbnMvZHRvL3NjLWktY2l0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2NJUmVnaW9uLCBTY0lSZWdpb25XaXRoQ291bnRyeSB9IGZyb20gJy4vc2MtaS1yZWdpb24nO1xuXG4vKipcbiAqINCc0L7QtNC10LvRjCDQtNCw0L3QvdGL0YUg0LPQvtGA0L7QtNCwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjSUNpdHkge1xuICAgIC8qKlxuICAgICAqINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINCz0L7RgNC+0LTQsC5cbiAgICAgKi9cbiAgICBpZDogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICog0J3QsNC40LzQtdC90L7QstCw0L3QuNC1INCz0L7RgNC+0LTQsC5cbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICog0JzQvtC00LXQu9GMINC00LDQvdC90YvRhSDQs9C+0YDQvtC00LAg0YEg0LjQvdGE0L7RgNC80LDRhtC40LXQuSDQviDRgNC10LPQuNC+0L3QtS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTY0lDaXR5V2l0aFJlZ2lvbiBleHRlbmRzIFNjSUNpdHkge1xuICAgIC8qKlxuICAgICAqINCU0LDQvdC90YvQtSDQviDRgNC10LPQuNC+0L3QtSAo0L7QsdGP0LfQsNGC0LXQu9GM0L3QvtC1INC/0L7Qu9C1KS5cbiAgICAgKi9cbiAgICByZWdpb246IFNjSVJlZ2lvbjtcbn1cblxuLyoqXG4gKiDQnNC+0LTQtdC70Ywg0LTQsNC90L3Ri9GFINCz0L7RgNC+0LTQsCDRgSDQuNC90YTQvtGA0LzQsNGG0LjQtdC5INC+INGA0LXQs9C40L7QvdC1INC4INGB0YLRgNCw0L3QtS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTY0lDaXR5V2l0aFJlZ2lvbkFuZENvdW50cnkgZXh0ZW5kcyBTY0lDaXR5V2l0aFJlZ2lvbiB7XG4gICAgLyoqXG4gICAgICog0JTQsNC90L3Ri9C1INC+INGA0LXQs9C40L7QvdC1INGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0YHRgtGA0LDQvdC1ICjQvtCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUpLlxuICAgICAqL1xuICAgIHJlZ2lvbjogU2NJUmVnaW9uV2l0aENvdW50cnk7XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1yZWdpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2xvY2F0aW9ucy9kdG8vc2MtaS1yZWdpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNjSUNpdHkgfSBmcm9tICcuL3NjLWktY2l0eSc7XG5pbXBvcnQgeyBTY0lDb3VudHJ5IH0gZnJvbSAnLi9zYy1pLWNvdW50cnknO1xuXG4vKipcbiAqINCc0L7QtNC10LvRjCDQtNCw0L3QvdGL0YUg0YDQtdCz0LjQvtC90LAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NJUmVnaW9uIHtcbiAgICAvKipcbiAgICAgKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgNC10LPQuNC+
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1yZWdpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2xvY2F0aW9ucy9kdG8vc2MtaS1yZWdpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNjSUNpdHkgfSBmcm9tICcuL3NjLWktY2l0eSc7XG5pbXBvcnQgeyBTY0lDb3VudHJ5IH0gZnJvbSAnLi9zYy1pLWNvdW50cnknO1xuXG4vKipcbiAqINCc0L7QtNC10LvRjCDQtNCw0L3QvdGL0YUg0YDQtdCz0LjQvtC90LAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NJUmVnaW9uIHtcbiAgICAvKipcbiAgICAgKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgNC10LPQuNC+0L3QsC5cbiAgICAgKi9cbiAgICBpZDogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICog0J3QsNC40LzQtdC90L7QstCw0L3QuNC1INGA0LXQs9C40L7QvdCwLlxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiDQnNC+0LTQtdC70Ywg0LTQsNC90L3Ri9GFINGA0LXQs9C40L7QvdCwINGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0LPQvtGA0L7QtNCw0YUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NJUmVnaW9uV2l0aENpdGllcyBleHRlbmRzIFNjSVJlZ2lvbiB7XG4gICAgLyoqXG4gICAgICog0KHQv9C40YHQvtC6INCz0L7RgNC+0LTQvtCyINGA0LXQs9C40L7QvdCwICjQvtCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUpLlxuICAgICAqL1xuICAgIGNpdGllcz86IFNjSUNpdHlbXTtcbn1cblxuLyoqXG4gKiDQnNC+0LTQtdC70Ywg0LTQsNC90L3Ri9GFINGA0LXQs9C40L7QvdCwINGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0YHRgtGA0LDQvdC1LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjSVJlZ2lvbldpdGhDb3VudHJ5IGV4dGVuZHMgU2NJUmVnaW9uIHtcbiAgICAvKipcbiAgICAgKiDQlNCw0L3QvdGL0LUg0L4g0YHRgtGA0LDQvdC1ICjQvtCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUpLlxuICAgICAqL1xuICAgIGNvdW50cnk6IFNjSUNvdW50cnk7XG59XG4iXX0=
|
|
@@ -1,34 +1,17 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
3
|
import { tuiPure } from '@taiga-ui/cdk';
|
|
4
|
-
import {
|
|
5
|
-
import { ScReferenceName } from '../../references';
|
|
4
|
+
import { ScReferenceName, ScReferencesService } from '../../references';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../auth";
|
|
8
|
-
import * as i2 from "../../references";
|
|
9
6
|
/**
|
|
10
7
|
* Сервис для получения списков стран, регионов, городов.
|
|
11
8
|
*/
|
|
12
9
|
export class ScLocationsService {
|
|
13
|
-
|
|
14
|
-
* Инициализирует экземпляр класса {@link ScLocationsService}.
|
|
15
|
-
*
|
|
16
|
-
* @param authService Сервис аутентификации.
|
|
17
|
-
* @param referencesService Сервис справочников.
|
|
18
|
-
*/
|
|
19
|
-
constructor(authService, referencesService) {
|
|
20
|
-
this.authService = authService;
|
|
21
|
-
this.referencesService = referencesService;
|
|
10
|
+
constructor() {
|
|
22
11
|
/**
|
|
23
|
-
*
|
|
12
|
+
* Сервис справочников.
|
|
24
13
|
*/
|
|
25
|
-
this.
|
|
26
|
-
authService
|
|
27
|
-
.getAuthChange()
|
|
28
|
-
.pipe(filter((state) => !state))
|
|
29
|
-
.subscribe(() => {
|
|
30
|
-
this.currentUserCity = undefined;
|
|
31
|
-
});
|
|
14
|
+
this.referencesService = inject(ScReferencesService);
|
|
32
15
|
}
|
|
33
16
|
/**
|
|
34
17
|
* Создает запрос получения списка стран.
|
|
@@ -42,6 +25,14 @@ export class ScLocationsService {
|
|
|
42
25
|
* @param countryId Идентификатор записи страны {@link number}.
|
|
43
26
|
*/
|
|
44
27
|
getRegions$(countryId) {
|
|
28
|
+
return this.referencesService.getReference$(ScReferenceName.region, { countryId: countryId });
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Создает запрос получения списка регионов указанной страны с информацией о стране.
|
|
32
|
+
*
|
|
33
|
+
* @param countryId Идентификатор записи страны {@link number}.
|
|
34
|
+
*/
|
|
35
|
+
getRegionsWithCountry$(countryId) {
|
|
45
36
|
return this.referencesService.getReference$(ScReferenceName.regionWithCountry, { countryId: countryId });
|
|
46
37
|
}
|
|
47
38
|
/**
|
|
@@ -51,10 +42,28 @@ export class ScLocationsService {
|
|
|
51
42
|
* @param regionId Идентификатор записи региона {@link regionId}.
|
|
52
43
|
*/
|
|
53
44
|
getCities$(countryId, regionId) {
|
|
45
|
+
return this.referencesService.getReference$(ScReferenceName.city, { countryId: countryId, regionId: regionId });
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Создает запрос получения списка городов указанного региона и страны с информацией о регионе.
|
|
49
|
+
*
|
|
50
|
+
* @param countryId Идентификатор записи страны {@link number}.
|
|
51
|
+
* @param regionId Идентификатор записи региона {@link regionId}.
|
|
52
|
+
*/
|
|
53
|
+
getCitiesWithRegion$(countryId, regionId) {
|
|
54
54
|
return this.referencesService.getReference$(ScReferenceName.cityWithRegion, { countryId: countryId, regionId: regionId });
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
|
-
* Создает запрос получения списка городов указанного
|
|
57
|
+
* Создает запрос получения списка городов указанного региона и страны с информацией о регионе и стране.
|
|
58
|
+
*
|
|
59
|
+
* @param countryId Идентификатор записи страны {@link number}.
|
|
60
|
+
* @param regionId Идентификатор записи региона {@link regionId}.
|
|
61
|
+
*/
|
|
62
|
+
getCityesWithRegionAndCountry$(countryId, regionId) {
|
|
63
|
+
return this.referencesService.getReference$(ScReferenceName.cityWithRegionAndCountry, { countryId: countryId, regionId: regionId });
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Создает запрос получения списка городов указанного региона и страны по поисковому запросу.
|
|
58
67
|
*
|
|
59
68
|
* @param term Поисковый запрос.
|
|
60
69
|
* @param countryId Идентификатор записи страны.
|
|
@@ -64,26 +73,14 @@ export class ScLocationsService {
|
|
|
64
73
|
return this.referencesService.getReferenceByTerm$(ScReferenceName.cityWithRegion, term, { countryId: countryId, regionId: regionId });
|
|
65
74
|
}
|
|
66
75
|
/**
|
|
67
|
-
* Создает запрос получения информации о городе
|
|
76
|
+
* Создает запрос получения информации о городе с информацией о регионе и стране.
|
|
68
77
|
*
|
|
69
78
|
* @param cityId Идентификатор записи города.
|
|
70
79
|
*/
|
|
71
80
|
getCityById$(cityId) {
|
|
72
81
|
return this.referencesService.getReferenceById$(ScReferenceName.cityWithRegionAndCountry, cityId);
|
|
73
82
|
}
|
|
74
|
-
|
|
75
|
-
* Создает запрос получения информации о городе текшего пользователя по идентификатору города.
|
|
76
|
-
*
|
|
77
|
-
* @param cityId Идентификатор записи города.
|
|
78
|
-
*/
|
|
79
|
-
getUserCity$(cityId) {
|
|
80
|
-
if (this.currentUserCity && this.currentUserCity.id === cityId) {
|
|
81
|
-
return of(this.currentUserCity);
|
|
82
|
-
}
|
|
83
|
-
// eslint-disable-next-line no-return-assign
|
|
84
|
-
return this.getCityById$(cityId).pipe(tap((city) => (this.currentUserCity = city)));
|
|
85
|
-
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScLocationsService, deps: [{ token: i1.ScAuthService }, { token: i2.ScReferencesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
83
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScLocationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
87
84
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScLocationsService, providedIn: 'root' }); }
|
|
88
85
|
}
|
|
89
86
|
__decorate([
|
|
@@ -92,9 +89,18 @@ __decorate([
|
|
|
92
89
|
__decorate([
|
|
93
90
|
tuiPure
|
|
94
91
|
], ScLocationsService.prototype, "getRegions$", null);
|
|
92
|
+
__decorate([
|
|
93
|
+
tuiPure
|
|
94
|
+
], ScLocationsService.prototype, "getRegionsWithCountry$", null);
|
|
95
95
|
__decorate([
|
|
96
96
|
tuiPure
|
|
97
97
|
], ScLocationsService.prototype, "getCities$", null);
|
|
98
|
+
__decorate([
|
|
99
|
+
tuiPure
|
|
100
|
+
], ScLocationsService.prototype, "getCitiesWithRegion$", null);
|
|
101
|
+
__decorate([
|
|
102
|
+
tuiPure
|
|
103
|
+
], ScLocationsService.prototype, "getCityesWithRegionAndCountry$", null);
|
|
98
104
|
__decorate([
|
|
99
105
|
tuiPure
|
|
100
106
|
], ScLocationsService.prototype, "getCitiesByTerm$", null);
|
|
@@ -106,5 +112,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
106
112
|
args: [{
|
|
107
113
|
providedIn: 'root',
|
|
108
114
|
}]
|
|
109
|
-
}],
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
}], propDecorators: { getCountries$: [], getRegions$: [], getRegionsWithCountry$: [], getCities$: [], getCitiesWithRegion$: [], getCityesWithRegionAndCountry$: [], getCitiesByTerm$: [], getCityById$: [] } });
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvbG9jYXRpb25zL3NlcnZpY2VzL3NjLWxvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUd4RTs7R0FFRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFIL0I7UUFJSTs7V0FFRztRQUNjLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBb0ZwRTtJQWxGRzs7T0FFRztJQUVJLGFBQWE7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFlLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQ7Ozs7T0FJRztJQUVJLFdBQVcsQ0FBQyxTQUFpQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQWMsZUFBZSxDQUFDLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRDs7OztPQUlHO0lBRUksc0JBQXNCLENBQUMsU0FBaUI7UUFDM0MsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUF5QixlQUFlLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNySSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFFSSxVQUFVLENBQUMsU0FBaUIsRUFBRSxRQUFnQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQVksZUFBZSxDQUFDLElBQUksRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDL0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBRUksb0JBQW9CLENBQUMsU0FBaUIsRUFBRSxRQUFnQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQXNCLGVBQWUsQ0FBQyxjQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ25KLENBQUM7SUFFRDs7Ozs7T0FLRztJQUVJLDhCQUE4QixDQUFDLFNBQWlCLEVBQUUsUUFBZ0I7UUFDckUsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFnQyxlQUFlLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZLLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFFSSxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsU0FBa0IsRUFBRSxRQUFpQjtRQUN2RSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBc0IsZUFBZSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQy9KLENBQUM7SUFFRDs7OztPQUlHO0lBRUksWUFBWSxDQUFDLE1BQWM7UUFDOUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQThCLGVBQWUsQ0FBQyx3QkFBd0IsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuSSxDQUFDOytHQXZGUSxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZmLE1BQU07O0FBWVg7SUFETixPQUFPO3VEQUdQO0FBUU07SUFETixPQUFPO3FEQUdQO0FBUU07SUFETixPQUFPO2dFQUdQO0FBU007SUFETixPQUFPO29EQUdQO0FBU007SUFETixPQUFPOzhEQUdQO0FBU007SUFETixPQUFPO3dFQUdQO0FBVU07SUFETixPQUFPOzBEQUdQO0FBUU07SUFETixPQUFPO3NEQUdQOzRGQXZGUSxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzhCQVdVLGFBQWEsTUFVYixXQUFXLE1BVVgsc0JBQXNCLE1BV3RCLFVBQVUsTUFXVixvQkFBb0IsTUFXcEIsOEJBQThCLE1BWTlCLGdCQUFnQixNQVVoQixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0dWlQdXJlIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNjUmVmZXJlbmNlTmFtZSwgU2NSZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJy4uLy4uL3JlZmVyZW5jZXMnO1xuaW1wb3J0IHsgU2NJQ2l0eSwgU2NJQ2l0eVdpdGhSZWdpb24sIFNjSUNpdHlXaXRoUmVnaW9uQW5kQ291bnRyeSwgU2NJQ291bnRyeSwgU2NJUmVnaW9uLCBTY0lSZWdpb25XaXRoQ291bnRyeSB9IGZyb20gJy4uL2R0byc7XG5cbi8qKlxuICog0KHQtdGA0LLQuNGBINC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutC+0LIg0YHRgtGA0LDQvSwg0YDQtdCz0LjQvtC90L7Qsiwg0LPQvtGA0L7QtNC+0LIuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNjTG9jYXRpb25zU2VydmljZSB7XG4gICAgLyoqXG4gICAgICog0KHQtdGA0LLQuNGBINGB0L/RgNCw0LLQvtGH0L3QuNC60L7Qsi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZmVyZW5jZXNTZXJ2aWNlID0gaW5qZWN0KFNjUmVmZXJlbmNlc1NlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0YHRgtGA0LDQvS5cbiAgICAgKi9cbiAgICBAdHVpUHVyZVxuICAgIHB1YmxpYyBnZXRDb3VudHJpZXMkKCk6IE9ic2VydmFibGU8U2NJQ291bnRyeVtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNTZXJ2aWNlLmdldFJlZmVyZW5jZSQ8U2NJQ291bnRyeVtdPihTY1JlZmVyZW5jZU5hbWUuY291bnRyeSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0YDQtdCz0LjQvtC90L7QsiDRg9C60LDQt9Cw0L3QvdC+0Lkg0YHRgtGA0LDQvdGLLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvdW50cnlJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YHRgtGA0LDQvdGLIHtAbGluayBudW1iZXJ9LlxuICAgICAqL1xuICAgIEB0dWlQdXJlXG4gICAgcHVibGljIGdldFJlZ2lvbnMkKGNvdW50cnlJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTY0lSZWdpb25bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzU2VydmljZS5nZXRSZWZlcmVuY2UkPFNjSVJlZ2lvbltdPihTY1JlZmVyZW5jZU5hbWUucmVnaW9uLCB7IGNvdW50cnlJZDogY291bnRyeUlkIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDQtdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINGA0LXQs9C40L7QvdC+0LIg0YPQutCw0LfQsNC90L3QvtC5INGB0YLRgNCw0L3RiyDRgSDQuNC90YTQvtGA0LzQsNGG0LjQtdC5INC+INGB0YLRgNCw0L3QtS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb3VudHJ5SWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC/0LjRgdC4INGB0YLRgNCw0L3RiyB7QGxpbmsgbnVtYmVyfS5cbiAgICAgKi9cbiAgICBAdHVpUHVyZVxuICAgIHB1YmxpYyBnZXRSZWdpb25zV2l0aENvdW50cnkkKGNvdW50cnlJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTY0lSZWdpb25XaXRoQ291bnRyeVtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNTZXJ2aWNlLmdldFJlZmVyZW5jZSQ8U2NJUmVnaW9uV2l0aENvdW50cnlbXT4oU2NSZWZlcmVuY2VOYW1lLnJlZ2lvbldpdGhDb3VudHJ5LCB7IGNvdW50cnlJZDogY291bnRyeUlkIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDQtdGCINC30LDQv9GA0L7RgSDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutCwINCz0L7RgNC+0LTQvtCyINGD0LrQsNC30LDQvdC90L7Qs9C+INGA0LXQs9C40L7QvdCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvdW50cnlJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YHRgtGA0LDQvdGLIHtAbGluayBudW1iZXJ9LlxuICAgICAqIEBwYXJhbSByZWdpb25JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YDQtdCz0LjQvtC90LAge0BsaW5rIHJlZ2lvbklkfS5cbiAgICAgKi9cbiAgICBAdHVpUHVyZVxuICAgIHB1YmxpYyBnZXRDaXRpZXMkKGNvdW50cnlJZDogbnVtYmVyLCByZWdpb25JZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTY0lDaXR5W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1NlcnZpY2UuZ2V0UmVmZXJlbmNlJDxTY0lDaXR5W10+KFNjUmVmZXJlbmNlTmFtZS5jaXR5LCB7IGNvdW50cnlJZDogY291bnRyeUlkLCByZWdpb25JZDogcmVnaW9uSWQgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0LPQvtGA0L7QtNC+0LIg0YPQutCw0LfQsNC90L3QvtCz0L4g0YDQtdCz0LjQvtC90LAg0Lgg0YHRgtGA0LDQvdGLINGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0YDQtdCz0LjQvtC90LUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY291bnRyeUlkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC30LDQv9C40YHQuCDRgdGC0YDQsNC90Ysge0BsaW5rIG51bWJlcn0uXG4gICAgICogQHBhcmFtIHJlZ2lvbklkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC30LDQv9C40YHQuCDRgNC10LPQuNC+0L3QsCB7QGxpbmsgcmVnaW9uSWR9LlxuICAgICAqL1xuICAgIEB0dWlQdXJlXG4gICAgcHVibGljIGdldENpdGllc1dpdGhSZWdpb24kKGNvdW50cnlJZDogbnVtYmVyLCByZWdpb25JZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTY0lDaXR5V2l0aFJlZ2lvbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNTZXJ2aWNlLmdldFJlZmVyZW5jZSQ8U2NJQ2l0eVdpdGhSZWdpb25bXT4oU2NSZWZlcmVuY2VOYW1lLmNpdHlXaXRoUmVnaW9uLCB7IGNvdW50cnlJZDogY291bnRyeUlkLCByZWdpb25JZDogcmVnaW9uSWQgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0LPQvtGA0L7QtNC+0LIg0YPQutCw0LfQsNC90L3QvtCz0L4g0YDQtdCz0LjQvtC90LAg0Lgg0YHRgtGA0LDQvdGLINGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0YDQtdCz0LjQvtC90LUg0Lgg0YHRgtGA0LDQvdC1LlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvdW50cnlJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YHRgtGA0LDQvdGLIHtAbGluayBudW1iZXJ9LlxuICAgICAqIEBwYXJhbSByZWdpb25JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YDQtdCz0LjQvtC90LAge0BsaW5rIHJlZ2lvbklkfS5cbiAgICAgKi9cbiAgICBAdHVpUHVyZVxuICAgIHB1YmxpYyBnZXRDaXR5ZXNXaXRoUmVnaW9uQW5kQ291bnRyeSQoY291bnRyeUlkOiBudW1iZXIsIHJlZ2lvbklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNjSUNpdHlXaXRoUmVnaW9uQW5kQ291bnRyeVtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNTZXJ2aWNlLmdldFJlZmVyZW5jZSQ8U2NJQ2l0eVdpdGhSZWdpb25BbmRDb3VudHJ5W10+KFNjUmVmZXJlbmNlTmFtZS5jaXR5V2l0aFJlZ2lvbkFuZENvdW50cnksIHsgY291bnRyeUlkOiBjb3VudHJ5SWQsIHJlZ2lvbklkOiByZWdpb25JZCB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0LXRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINGB0L/QuNGB0LrQsCDQs9C+0YDQvtC00L7QsiDRg9C60LDQt9Cw0L3QvdC+0LPQviDRgNC10LPQuNC+0L3QsCDQuCDRgdGC0YDQsNC90Ysg0L/QviDQv9C+0LjRgdC60L7QstC+0LzRgyDQt9Cw0L/RgNC+0YHRgy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0ZXJtINCf0L7QuNGB0LrQvtCy0YvQuSDQt9Cw0L/RgNC+0YEuXG4gICAgICogQHBhcmFtIGNvdW50cnlJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YHRgtGA0LDQvdGLLlxuICAgICAqIEBwYXJhbSByZWdpb25JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0L/QuNGB0Lgg0YDQtdCz0LjQvtC90LAuXG4gICAgICovXG4gICAgQHR1aVB1cmVcbiAgICBwdWJsaWMgZ2V0Q2l0aWVzQnlUZXJtJCh0ZXJtOiBzdHJpbmcsIGNvdW50cnlJZD86IG51bWJlciwgcmVnaW9uSWQ/OiBudW1iZXIpOiBPYnNlcnZhYmxlPFNjSUNpdHlXaXRoUmVnaW9uW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1NlcnZpY2UuZ2V0UmVmZXJlbmNlQnlUZXJtJDxTY0lDaXR5V2l0aFJlZ2lvbltdPihTY1JlZmVyZW5jZU5hbWUuY2l0eVdpdGhSZWdpb24sIHRlcm0sIHsgY291bnRyeUlkOiBjb3VudHJ5SWQsIHJlZ2lvbklkOiByZWdpb25JZCB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0LXRgiDQt9Cw0L/RgNC+0YEg0L/QvtC70YPRh9C10L3QuNGPINC40L3RhNC+0YDQvNCw0YbQuNC4INC+INCz0L7RgNC+0LTQtSDRgSDQuNC90YTQvtGA0LzQsNGG0LjQtdC5INC+INGA0LXQs9C40L7QvdC1INC4INGB0YLRgNCw0L3QtS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjaXR5SWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC/0LjRgdC4INCz0L7RgNC+0LTQsC5cbiAgICAgKi9cbiAgICBAdHVpUHVyZVxuICAgIHB1YmxpYyBnZXRDaXR5QnlJZCQoY2l0eUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNjSUNpdHlXaXRoUmVnaW9uQW5kQ291bnRyeT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzU2VydmljZS5nZXRSZWZlcmVuY2VCeUlkJDxTY0lDaXR5V2l0aFJlZ2lvbkFuZENvdW50cnk+KFNjUmVmZXJlbmNlTmFtZS5jaXR5V2l0aFJlZ2lvbkFuZENvdW50cnksIGNpdHlJZCk7XG4gICAgfVxufVxuIl19
|