UNPKG

nsrtm-gestionarchivo-npm-prueba2

Version:

Proyecto de Libreria Frontend para la Gestión de Archivos

185 lines 24.8 kB
/* tslint:disable */ /* eslint-disable */ import { Injectable } from '@angular/core'; import { HttpResponse } from '@angular/common/http'; import { BaseService } from '../base-service'; import { RequestBuilder } from '../request-builder'; import { map, filter } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "../api-configuration"; import * as i2 from "@angular/common/http"; export class ParametroComunControllerService extends BaseService { constructor(config, http) { super(config, http); } /** * Permite obtener los datos de un parámetro. * * Permite obtener los datos de un parámetro según Municipalidad y aplicación. * * This method provides access to the full `HttpResponse`, allowing access to response headers. * To access only the response body, use `listarPorMunicipalidadAplicacion()` instead. * * This method doesn't expect any request body. */ listarPorMunicipalidadAplicacion$Response(params) { const rb = new RequestBuilder(this.rootUrl, ParametroComunControllerService.ListarPorMunicipalidadAplicacionPath, 'get'); if (params) { rb.path('aplicacionId', params.aplicacionId, {}); } return this.http.request(rb.build({ responseType: 'json', accept: 'application/json', context: params?.context })).pipe(filter((r) => r instanceof HttpResponse), map((r) => { return r; })); } /** * Permite obtener los datos de un parámetro. * * Permite obtener los datos de un parámetro según Municipalidad y aplicación. * * This method provides access to only to the response body. * To access the full response (for headers, for example), `listarPorMunicipalidadAplicacion$Response()` instead. * * This method doesn't expect any request body. */ listarPorMunicipalidadAplicacion(params) { return this.listarPorMunicipalidadAplicacion$Response(params).pipe(map((r) => r.body)); } /** * Permite obtener los datos de un parámetro. * * Permite obtener los datos de un parámetro según Municipalidad, aplicación y id del parámetro. * * This method provides access to the full `HttpResponse`, allowing access to response headers. * To access only the response body, use `consultar()` instead. * * This method doesn't expect any request body. */ consultar$Response(params) { const rb = new RequestBuilder(this.rootUrl, ParametroComunControllerService.ConsultarPath, 'get'); if (params) { rb.path('aplicacionId', params.aplicacionId, {}); rb.path('parametroId', params.parametroId, {}); } return this.http.request(rb.build({ responseType: 'json', accept: 'application/json', context: params?.context })).pipe(filter((r) => r instanceof HttpResponse), map((r) => { return r; })); } /** * Permite obtener los datos de un parámetro. * * Permite obtener los datos de un parámetro según Municipalidad, aplicación y id del parámetro. * * This method provides access to only to the response body. * To access the full response (for headers, for example), `consultar$Response()` instead. * * This method doesn't expect any request body. */ consultar(params) { return this.consultar$Response(params).pipe(map((r) => r.body)); } /** * Permite obtener los datos de un tipo de parámetro. * * Permite obtener los datos de un tipo de parámetro según modulo y tipo parámetro. * * This method provides access to the full `HttpResponse`, allowing access to response headers. * To access only the response body, use `consultarParametroGlobal()` instead. * * This method doesn't expect any request body. */ consultarParametroGlobal$Response(params) { const rb = new RequestBuilder(this.rootUrl, ParametroComunControllerService.ConsultarParametroGlobalPath, 'get'); if (params) { rb.path('moduloId', params.moduloId, {}); rb.path('tipoParametroId', params.tipoParametroId, {}); } return this.http.request(rb.build({ responseType: 'json', accept: 'application/json', context: params?.context })).pipe(filter((r) => r instanceof HttpResponse), map((r) => { return r; })); } /** * Permite obtener los datos de un tipo de parámetro. * * Permite obtener los datos de un tipo de parámetro según modulo y tipo parámetro. * * This method provides access to only to the response body. * To access the full response (for headers, for example), `consultarParametroGlobal$Response()` instead. * * This method doesn't expect any request body. */ consultarParametroGlobal(params) { return this.consultarParametroGlobal$Response(params).pipe(map((r) => r.body)); } /** * Permite obtener todos los parámetros de sistema. * * Permite obtener todos los parámetros de sistema. * * This method provides access to the full `HttpResponse`, allowing access to response headers. * To access only the response body, use `listar()` instead. * * This method doesn't expect any request body. */ listar$Response(params) { const rb = new RequestBuilder(this.rootUrl, ParametroComunControllerService.ListarPath, 'get'); if (params) { } return this.http.request(rb.build({ responseType: 'json', accept: 'application/json', context: params?.context })).pipe(filter((r) => r instanceof HttpResponse), map((r) => { return r; })); } /** * Permite obtener todos los parámetros de sistema. * * Permite obtener todos los parámetros de sistema. * * This method provides access to only to the response body. * To access the full response (for headers, for example), `listar$Response()` instead. * * This method doesn't expect any request body. */ listar(params) { return this.listar$Response(params).pipe(map((r) => r.body)); } } /** * Path part for operation listarPorMunicipalidadAplicacion */ ParametroComunControllerService.ListarPorMunicipalidadAplicacionPath = '/parametros/{aplicacionId}'; /** * Path part for operation consultar */ ParametroComunControllerService.ConsultarPath = '/parametros/{aplicacionId}/{parametroId}'; /** * Path part for operation consultarParametroGlobal */ ParametroComunControllerService.ConsultarParametroGlobalPath = '/parametros/consultar-global/{moduloId}/{tipoParametroId}'; /** * Path part for operation listar */ ParametroComunControllerService.ListarPath = '/parametros/'; ParametroComunControllerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ParametroComunControllerService, deps: [{ token: i1.ApiConfiguration }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); ParametroComunControllerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ParametroComunControllerService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ParametroComunControllerService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: function () { return [{ type: i1.ApiConfiguration }, { type: i2.HttpClient }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldHJvLWNvbXVuLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2FyY2hpdm8vbnNydG0tZ2VzdGlvbmFyY2hpdm8tbnBtL3NyYy9hcHAvYXBpL3BhcmFtZXRyby1jb211bi9zZXJ2aWNlcy9wYXJhbWV0cm8tY29tdW4tY29udHJvbGxlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsWUFBWSxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBTTdDLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxXQUFXO0lBQzlELFlBQ0UsTUFBd0IsRUFDeEIsSUFBZ0I7UUFFaEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBT0Q7Ozs7Ozs7OztPQVNHO0lBQ0gseUNBQXlDLENBQUMsTUFHekM7UUFJQyxNQUFNLEVBQUUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLCtCQUErQixDQUFDLG9DQUFvQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pILElBQUksTUFBTSxFQUFFO1lBQ1YsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNsRDtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZ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QUFDYSw2Q0FBYSxHQUFHLDBDQUEyQyxDQUFBO0FBZ0UzRTs7R0FFRztBQUNhLDREQUE0QixHQUFHLDJEQUE0RCxDQUFBO0FBZ0UzRzs7R0FFRztBQUNhLDBDQUFVLEdBQUcsY0FBZSxDQUFBOzRIQWpOakMsK0JBQStCO2dJQUEvQiwrQkFBK0IsY0FGOUIsTUFBTTsyRkFFUCwrQkFBK0I7a0JBSDNDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cclxuLyogZXNsaW50LWRpc2FibGUgKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUmVzcG9uc2UsIEh0dHBDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBCYXNlU2VydmljZSB9IGZyb20gJy4uL2Jhc2Utc2VydmljZSc7XHJcbmltcG9ydCB7IEFwaUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9hcGktY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IFN0cmljdEh0dHBSZXNwb25zZSB9IGZyb20gJy4uL3N0cmljdC1odHRwLXJlc3BvbnNlJztcclxuaW1wb3J0IHsgUmVxdWVzdEJ1aWxkZXIgfSBmcm9tICcuLi9yZXF1ZXN0LWJ1aWxkZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYXJhbWV0cm9Db211bkNvbnRyb2xsZXJTZXJ2aWNlIGV4dGVuZHMgQmFzZVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29uZmlnOiBBcGlDb25maWd1cmF0aW9uLFxyXG4gICAgaHR0cDogSHR0cENsaWVudFxyXG4gICkge1xyXG4gICAgc3VwZXIoY29uZmlnLCBodHRwKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhdGggcGFydCBmb3Igb3BlcmF0aW9uIGxpc3RhclBvck11bmljaXBhbGlkYWRBcGxpY2FjaW9uXHJcbiAgICovXHJcbiAgc3RhdGljIHJlYWRvbmx5IExpc3RhclBvck11bmljaXBhbGlkYWRBcGxpY2FjaW9uUGF0aCA9ICcvcGFyYW1ldHJvcy97YXBsaWNhY2lvbklkfSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRyby5cclxuICAgKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRybyBzZWfDum4gTXVuaWNpcGFsaWRhZCB5IGFwbGljYWNpw7NuLlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBmdWxsIGBIdHRwUmVzcG9uc2VgLCBhbGxvd2luZyBhY2Nlc3MgdG8gcmVzcG9uc2UgaGVhZGVycy5cclxuICAgKiBUbyBhY2Nlc3Mgb25seSB0aGUgcmVzcG9uc2UgYm9keSwgdXNlIGBsaXN0YXJQb3JNdW5pY2lwYWxpZGFkQXBsaWNhY2lvbigpYCBpbnN0ZWFkLlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgZG9lc24ndCBleHBlY3QgYW55IHJlcXVlc3QgYm9keS5cclxuICAgKi9cclxuICBsaXN0YXJQb3JNdW5pY2lwYWxpZGFkQXBsaWNhY2lvbiRSZXNwb25zZShwYXJhbXM6IHtcclxuICAgIGFwbGljYWNpb25JZDogbnVtYmVyO1xyXG4gICAgY29udGV4dD86IEh0dHBDb250ZXh0XHJcbiAgfVxyXG4pOiBPYnNlcnZhYmxlPFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbn0+PiB7XHJcblxyXG4gICAgY29uc3QgcmIgPSBuZXcgUmVxdWVzdEJ1aWxkZXIodGhpcy5yb290VXJsLCBQYXJhbWV0cm9Db211bkNvbnRyb2xsZXJTZXJ2aWNlLkxpc3RhclBvck11bmljaXBhbGlkYWRBcGxpY2FjaW9uUGF0aCwgJ2dldCcpO1xyXG4gICAgaWYgKHBhcmFtcykge1xyXG4gICAgICByYi5wYXRoKCdhcGxpY2FjaW9uSWQnLCBwYXJhbXMuYXBsaWNhY2lvbklkLCB7fSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5yZXF1ZXN0KHJiLmJ1aWxkKHtcclxuICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgIGFjY2VwdDogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICBjb250ZXh0OiBwYXJhbXM/LmNvbnRleHRcclxuICAgIH0pKS5waXBlKFxyXG4gICAgICBmaWx0ZXIoKHI6IGFueSkgPT4gciBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXHJcbiAgICAgIG1hcCgocjogSHR0cFJlc3BvbnNlPGFueT4pID0+IHtcclxuICAgICAgICByZXR1cm4gciBhcyBTdHJpY3RIdHRwUmVzcG9uc2U8e1xyXG4gICAgICAgIH0+O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRyby5cclxuICAgKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRybyBzZWfDum4gTXVuaWNpcGFsaWRhZCB5IGFwbGljYWNpw7NuLlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgcHJvdmlkZXMgYWNjZXNzIHRvIG9ubHkgdG8gdGhlIHJlc3BvbnNlIGJvZHkuXHJcbiAgICogVG8gYWNjZXNzIHRoZSBmdWxsIHJlc3BvbnNlIChmb3IgaGVhZGVycywgZm9yIGV4YW1wbGUpLCBgbGlzdGFyUG9yTXVuaWNpcGFsaWRhZEFwbGljYWNpb24kUmVzcG9uc2UoKWAgaW5zdGVhZC5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIGRvZXNuJ3QgZXhwZWN0IGFueSByZXF1ZXN0IGJvZHkuXHJcbiAgICovXHJcbiAgbGlzdGFyUG9yTXVuaWNpcGFsaWRhZEFwbGljYWNpb24ocGFyYW1zOiB7XHJcbiAgICBhcGxpY2FjaW9uSWQ6IG51bWJlcjtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTx7XHJcbn0+IHtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5saXN0YXJQb3JNdW5pY2lwYWxpZGFkQXBsaWNhY2lvbiRSZXNwb25zZShwYXJhbXMpLnBpcGUoXHJcbiAgICAgIG1hcCgocjogU3RyaWN0SHR0cFJlc3BvbnNlPHtcclxufT4pID0+IHIuYm9keSBhcyB7XHJcbn0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGF0aCBwYXJ0IGZvciBvcGVyYXRpb24gY29uc3VsdGFyXHJcbiAgICovXHJcbiAgc3RhdGljIHJlYWRvbmx5IENvbnN1bHRhclBhdGggPSAnL3BhcmFtZXRyb3Mve2FwbGljYWNpb25JZH0ve3BhcmFtZXRyb0lkfSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRyby5cclxuICAgKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gcGFyw6FtZXRybyBzZWfDum4gTXVuaWNpcGFsaWRhZCwgYXBsaWNhY2nDs24geSBpZCBkZWwgcGFyw6FtZXRyby5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgZnVsbCBgSHR0cFJlc3BvbnNlYCwgYWxsb3dpbmcgYWNjZXNzIHRvIHJlc3BvbnNlIGhlYWRlcnMuXHJcbiAgICogVG8gYWNjZXNzIG9ubHkgdGhlIHJlc3BvbnNlIGJvZHksIHVzZSBgY29uc3VsdGFyKClgIGluc3RlYWQuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBkb2Vzbid0IGV4cGVjdCBhbnkgcmVxdWVzdCBib2R5LlxyXG4gICAqL1xyXG4gIGNvbnN1bHRhciRSZXNwb25zZShwYXJhbXM6IHtcclxuICAgIGFwbGljYWNpb25JZDogbnVtYmVyO1xyXG4gICAgcGFyYW1ldHJvSWQ6IG51bWJlcjtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTxTdHJpY3RIdHRwUmVzcG9uc2U8e1xyXG59Pj4ge1xyXG5cclxuICAgIGNvbnN0IHJiID0gbmV3IFJlcXVlc3RCdWlsZGVyKHRoaXMucm9vdFVybCwgUGFyYW1ldHJvQ29tdW5Db250cm9sbGVyU2VydmljZS5Db25zdWx0YXJQYXRoLCAnZ2V0Jyk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIHJiLnBhdGgoJ2FwbGljYWNpb25JZCcsIHBhcmFtcy5hcGxpY2FjaW9uSWQsIHt9KTtcclxuICAgICAgcmIucGF0aCgncGFyYW1ldHJvSWQnLCBwYXJhbXMucGFyYW1ldHJvSWQsIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnJlcXVlc3QocmIuYnVpbGQoe1xyXG4gICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgYWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgIGNvbnRleHQ6IHBhcmFtcz8uY29udGV4dFxyXG4gICAgfSkpLnBpcGUoXHJcbiAgICAgIGZpbHRlcigocjogYW55KSA9PiByIGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSxcclxuICAgICAgbWFwKChyOiBIdHRwUmVzcG9uc2U8YW55PikgPT4ge1xyXG4gICAgICAgIHJldHVybiByIGFzIFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbiAgICAgICAgfT47XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVybWl0ZSBvYnRlbmVyIGxvcyBkYXRvcyBkZSB1biBwYXLDoW1ldHJvLlxyXG4gICAqXHJcbiAgICogUGVybWl0ZSBvYnRlbmVyIGxvcyBkYXRvcyBkZSB1biBwYXLDoW1ldHJvIHNlZ8O6biBNdW5pY2lwYWxpZGFkLCBhcGxpY2FjacOzbiB5IGlkIGRlbCBwYXLDoW1ldHJvLlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgcHJvdmlkZXMgYWNjZXNzIHRvIG9ubHkgdG8gdGhlIHJlc3BvbnNlIGJvZHkuXHJcbiAgICogVG8gYWNjZXNzIHRoZSBmdWxsIHJlc3BvbnNlIChmb3IgaGVhZGVycywgZm9yIGV4YW1wbGUpLCBgY29uc3VsdGFyJFJlc3BvbnNlKClgIGluc3RlYWQuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBkb2Vzbid0IGV4cGVjdCBhbnkgcmVxdWVzdCBib2R5LlxyXG4gICAqL1xyXG4gIGNvbnN1bHRhcihwYXJhbXM6IHtcclxuICAgIGFwbGljYWNpb25JZDogbnVtYmVyO1xyXG4gICAgcGFyYW1ldHJvSWQ6IG51bWJlcjtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTx7XHJcbn0+IHtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5jb25zdWx0YXIkUmVzcG9uc2UocGFyYW1zKS5waXBlKFxyXG4gICAgICBtYXAoKHI6IFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbn0+KSA9PiByLmJvZHkgYXMge1xyXG59KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhdGggcGFydCBmb3Igb3BlcmF0aW9uIGNvbnN1bHRhclBhcmFtZXRyb0dsb2JhbFxyXG4gICAqL1xyXG4gIHN0YXRpYyByZWFkb25seSBDb25zdWx0YXJQYXJhbWV0cm9HbG9iYWxQYXRoID0gJy9wYXJhbWV0cm9zL2NvbnN1bHRhci1nbG9iYWwve21vZHVsb0lkfS97dGlwb1BhcmFtZXRyb0lkfSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciBsb3MgZGF0b3MgZGUgdW4gdGlwbyBkZSBwYXLDoW1ldHJvLlxyXG4gICAqXHJcbiAgICogUGVybWl0ZSBvYnRlbmVyIGxvcyBkYXRvcyBkZSB1biB0aXBvIGRlIHBhcsOhbWV0cm8gc2Vnw7puIG1vZHVsbyB5IHRpcG8gcGFyw6FtZXRyby5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgZnVsbCBgSHR0cFJlc3BvbnNlYCwgYWxsb3dpbmcgYWNjZXNzIHRvIHJlc3BvbnNlIGhlYWRlcnMuXHJcbiAgICogVG8gYWNjZXNzIG9ubHkgdGhlIHJlc3BvbnNlIGJvZHksIHVzZSBgY29uc3VsdGFyUGFyYW1ldHJvR2xvYmFsKClgIGluc3RlYWQuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBkb2Vzbid0IGV4cGVjdCBhbnkgcmVxdWVzdCBib2R5LlxyXG4gICAqL1xyXG4gIGNvbnN1bHRhclBhcmFtZXRyb0dsb2JhbCRSZXNwb25zZShwYXJhbXM6IHtcclxuICAgIG1vZHVsb0lkOiBudW1iZXI7XHJcbiAgICB0aXBvUGFyYW1ldHJvSWQ6IG51bWJlcjtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTxTdHJpY3RIdHRwUmVzcG9uc2U8e1xyXG59Pj4ge1xyXG5cclxuICAgIGNvbnN0IHJiID0gbmV3IFJlcXVlc3RCdWlsZGVyKHRoaXMucm9vdFVybCwgUGFyYW1ldHJvQ29tdW5Db250cm9sbGVyU2VydmljZS5Db25zdWx0YXJQYXJhbWV0cm9HbG9iYWxQYXRoLCAnZ2V0Jyk7XHJcbiAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgIHJiLnBhdGgoJ21vZHVsb0lkJywgcGFyYW1zLm1vZHVsb0lkLCB7fSk7XHJcbiAgICAgIHJiLnBhdGgoJ3RpcG9QYXJhbWV0cm9JZCcsIHBhcmFtcy50aXBvUGFyYW1ldHJvSWQsIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnJlcXVlc3QocmIuYnVpbGQoe1xyXG4gICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgYWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgIGNvbnRleHQ6IHBhcmFtcz8uY29udGV4dFxyXG4gICAgfSkpLnBpcGUoXHJcbiAgICAgIGZpbHRlcigocjogYW55KSA9PiByIGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSxcclxuICAgICAgbWFwKChyOiBIdHRwUmVzcG9uc2U8YW55PikgPT4ge1xyXG4gICAgICAgIHJldHVybiByIGFzIFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbiAgICAgICAgfT47XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVybWl0ZSBvYnRlbmVyIGxvcyBkYXRvcyBkZSB1biB0aXBvIGRlIHBhcsOhbWV0cm8uXHJcbiAgICpcclxuICAgKiBQZXJtaXRlIG9idGVuZXIgbG9zIGRhdG9zIGRlIHVuIHRpcG8gZGUgcGFyw6FtZXRybyBzZWfDum4gbW9kdWxvIHkgdGlwbyBwYXLDoW1ldHJvLlxyXG4gICAqXHJcbiAgICogVGhpcyBtZXRob2QgcHJvdmlkZXMgYWNjZXNzIHRvIG9ubHkgdG8gdGhlIHJlc3BvbnNlIGJvZHkuXHJcbiAgICogVG8gYWNjZXNzIHRoZSBmdWxsIHJlc3BvbnNlIChmb3IgaGVhZGVycywgZm9yIGV4YW1wbGUpLCBgY29uc3VsdGFyUGFyYW1ldHJvR2xvYmFsJFJlc3BvbnNlKClgIGluc3RlYWQuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBkb2Vzbid0IGV4cGVjdCBhbnkgcmVxdWVzdCBib2R5LlxyXG4gICAqL1xyXG4gIGNvbnN1bHRhclBhcmFtZXRyb0dsb2JhbChwYXJhbXM6IHtcclxuICAgIG1vZHVsb0lkOiBudW1iZXI7XHJcbiAgICB0aXBvUGFyYW1ldHJvSWQ6IG51bWJlcjtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTx7XHJcbn0+IHtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5jb25zdWx0YXJQYXJhbWV0cm9HbG9iYWwkUmVzcG9uc2UocGFyYW1zKS5waXBlKFxyXG4gICAgICBtYXAoKHI6IFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbn0+KSA9PiByLmJvZHkgYXMge1xyXG59KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhdGggcGFydCBmb3Igb3BlcmF0aW9uIGxpc3RhclxyXG4gICAqL1xyXG4gIHN0YXRpYyByZWFkb25seSBMaXN0YXJQYXRoID0gJy9wYXJhbWV0cm9zLyc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciB0b2RvcyBsb3MgcGFyw6FtZXRyb3MgZGUgc2lzdGVtYS5cclxuICAgKlxyXG4gICAqIFBlcm1pdGUgb2J0ZW5lciB0b2RvcyBsb3MgcGFyw6FtZXRyb3MgZGUgc2lzdGVtYS5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgZnVsbCBgSHR0cFJlc3BvbnNlYCwgYWxsb3dpbmcgYWNjZXNzIHRvIHJlc3BvbnNlIGhlYWRlcnMuXHJcbiAgICogVG8gYWNjZXNzIG9ubHkgdGhlIHJlc3BvbnNlIGJvZHksIHVzZSBgbGlzdGFyKClgIGluc3RlYWQuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBkb2Vzbid0IGV4cGVjdCBhbnkgcmVxdWVzdCBib2R5LlxyXG4gICAqL1xyXG4gIGxpc3RhciRSZXNwb25zZShwYXJhbXM/OiB7XHJcbiAgICBjb250ZXh0PzogSHR0cENvbnRleHRcclxuICB9XHJcbik6IE9ic2VydmFibGU8U3RyaWN0SHR0cFJlc3BvbnNlPHtcclxufT4+IHtcclxuXHJcbiAgICBjb25zdCByYiA9IG5ldyBSZXF1ZXN0QnVpbGRlcih0aGlzLnJvb3RVcmwsIFBhcmFtZXRyb0NvbXVuQ29udHJvbGxlclNlcnZpY2UuTGlzdGFyUGF0aCwgJ2dldCcpO1xyXG4gICAgaWYgKHBhcmFtcykge1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdChyYi5idWlsZCh7XHJcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICBhY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgY29udGV4dDogcGFyYW1zPy5jb250ZXh0XHJcbiAgICB9KSkucGlwZShcclxuICAgICAgZmlsdGVyKChyOiBhbnkpID0+IHIgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpLFxyXG4gICAgICBtYXAoKHI6IEh0dHBSZXNwb25zZTxhbnk+KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHIgYXMgU3RyaWN0SHR0cFJlc3BvbnNlPHtcclxuICAgICAgICB9PjtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQZXJtaXRlIG9idGVuZXIgdG9kb3MgbG9zIHBhcsOhbWV0cm9zIGRlIHNpc3RlbWEuXHJcbiAgICpcclxuICAgKiBQZXJtaXRlIG9idGVuZXIgdG9kb3MgbG9zIHBhcsOhbWV0cm9zIGRlIHNpc3RlbWEuXHJcbiAgICpcclxuICAgKiBUaGlzIG1ldGhvZCBwcm92aWRlcyBhY2Nlc3MgdG8gb25seSB0byB0aGUgcmVzcG9uc2UgYm9keS5cclxuICAgKiBUbyBhY2Nlc3MgdGhlIGZ1bGwgcmVzcG9uc2UgKGZvciBoZWFkZXJzLCBmb3IgZXhhbXBsZSksIGBsaXN0YXIkUmVzcG9uc2UoKWAgaW5zdGVhZC5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIGRvZXNuJ3QgZXhwZWN0IGFueSByZXF1ZXN0IGJvZHkuXHJcbiAgICovXHJcbiAgbGlzdGFyKHBhcmFtcz86IHtcclxuICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dFxyXG4gIH1cclxuKTogT2JzZXJ2YWJsZTx7XHJcbn0+IHtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5saXN0YXIkUmVzcG9uc2UocGFyYW1zKS5waXBlKFxyXG4gICAgICBtYXAoKHI6IFN0cmljdEh0dHBSZXNwb25zZTx7XHJcbn0+KSA9PiByLmJvZHkgYXMge1xyXG59KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==