UNPKG

progress-button

Version:
67 lines 13 kB
import { Injectable, InjectionToken } from '@angular/core'; import * as i0 from "@angular/core"; /** * Button Config used to initialize button options */ export class ProgressButtonConfig { constructor() { this.progress = { animation: 'fill', direction: 'horizontal', statusTime: 1500, }; this.design = { background: '#222222', color: '#FFFFFF', successBackground: '#00e175', errorBackground: '#ff2948', successIconColor: '#ffffff', errorIconColor: '#ffffff', progressBackground: '#000000', progressInnerBackground: 'rgba(255, 255, 255,0.5)', linesSize: 10, radius: 0 }; } } /** @nocollapse */ ProgressButtonConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function ProgressButtonConfig_Factory() { return new ProgressButtonConfig(); }, token: ProgressButtonConfig, providedIn: "root" }); ProgressButtonConfig.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** * Merge an object with another * @param data Object to merge * @param source Original object */ export function mergeOptions(data, source) { if (data) { Object.keys(source).forEach((k) => { if ((data[k] !== null && typeof data[k] !== 'undefined' && data[k] !== '')) { source[k] = data[k]; } }); // Update lateral-lines animation direction to vertical if (typeof source !== 'undefined' && source.animation && source.animation === 'lateral-lines') { source.direction = 'vertical'; } } return source; } // Token that makes the raw options available to the following factory function. export let FOR_ROOT_CONFIG_TOKEN = new InjectionToken('forRoot() ProgressButtonService configuration.'); /** * Return an instance of ProgressButtonConfig * @param config The button config for the module * @return ProgressButtonConfig; */ export function progressButtonConfigFactory(config) { const options = new ProgressButtonConfig(); if (config) { options.progress = mergeOptions(config.progress, options.progress); options.design = mergeOptions(config.design, options.design); } return (options); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYnV0dG9uLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvZ3Jlc3MtYnV0dG9uL3NyYy9saWIvcHJvZ3Jlc3MtYnV0dG9uLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQW9JekQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0JBQW9CO0lBTmpDO1FBT0UsYUFBUSxHQUF1QjtZQUM3QixTQUFTLEVBQUUsTUFBTTtZQUNqQixTQUFTLEVBQUUsWUFBWTtZQUN2QixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDO1FBQ0YsV0FBTSxHQUF5QjtZQUM3QixVQUFVLEVBQUUsU0FBUztZQUNyQixLQUFLLEVBQUUsU0FBUztZQUNoQixpQkFBaUIsRUFBRSxTQUFTO1lBQzVCLGVBQWUsRUFBRSxTQUFTO1lBQzFCLGdCQUFnQixFQUFFLFNBQVM7WUFDM0IsY0FBYyxFQUFFLFNBQVM7WUFDekIsa0JBQWtCLEVBQUUsU0FBUztZQUM3Qix1QkFBdUIsRUFBRSx5QkFBeUI7WUFDbEQsU0FBUyxFQUFFLEVBQUU7WUFDYixNQUFNLEVBQUUsQ0FBQztTQUNWLENBQUM7S0FDSDs7OztZQXhCQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O0FBdUREOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQVMsRUFBRSxNQUFXO0lBQ2pELElBQUksSUFBSSxFQUFFO1FBQ1IsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFO2dCQUMxRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCx1REFBdUQ7UUFDdkQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksTUFBTSxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsU0FBUyxLQUFLLGVBQWUsRUFBRTtZQUM3RixNQUFNLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQztTQUMvQjtLQUNGO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELGdGQUFnRjtBQUNoRixNQUFNLENBQUMsSUFBSSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBNkIsZ0RBQWdELENBQUMsQ0FBQztBQUVwSTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLDJCQUEyQixDQUFDLE1BQW1DO0lBQzdFLE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztJQUMzQyxJQUFJLE1BQU0sRUFBRTtRQUNWLE9BQU8sQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE9BQU8sQ0FBQyxNQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzlEO0lBQ0QsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1Byb2dyZXNzQnV0dG9uU2VydmljZX0gZnJvbSAnLi9wcm9ncmVzcy1idXR0b24uc2VydmljZSc7XHJcbmltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIFR5cGUgb2YgYnV0dG9uc1xyXG4gKi9cclxuZXhwb3J0IHR5cGUgUHJvZ3Jlc3NCdXR0b25UeXBlID0gJ2J1dHRvbicgfCAncmVzZXQnIHwgJ3N1Ym1pdCc7XHJcbi8qKlxyXG4gKiBUeXBlcyBvZiBhbmltYXRpb24gZGlyZWN0aW9uc1xyXG4gKi9cclxuZXhwb3J0IHR5cGUgUHJvZ3Jlc3NCdXR0b25EaXJlY3Rpb24gPSAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnO1xyXG4vKipcclxuICogVHlwZXMgb2Ygc3RhdHVzXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBQcm9ncmVzc0J1dHRvblN0YXR1cyA9ICdzdWNjZXNzJyB8ICdlcnJvcic7XHJcbi8qKlxyXG4gKiBUeXBlcyBvZiBhbmltYXRpb25zXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBQcm9ncmVzc0J1dHRvbkFuaW1hdGlvbiA9XHJcbiAgJ2ZpbGwnXHJcbiAgfCAnc2hyaW5rJ1xyXG4gIHwgJ3JvdGF0ZS1hbmdsZS1ib3R0b20nXHJcbiAgfCAncm90YXRlLWFuZ2xlLXRvcCdcclxuICB8ICdyb3RhdGUtYW5nbGUtbGVmdCdcclxuICB8ICdyb3RhdGUtYW5nbGUtcmlnaHQnXHJcbiAgfCAncm90YXRlLXNpZGUtZG93bidcclxuICB8ICdyb3RhdGUtc2lkZS11cCdcclxuICB8ICdyb3RhdGUtc2lkZS1sZWZ0J1xyXG4gIHwgJ3JvdGF0ZS1zaWRlLXJpZ2h0J1xyXG4gIHwgJ3JvdGF0ZS1iYWNrJ1xyXG4gIHwgJ2ZsaXAtb3BlbidcclxuICB8ICdzbGlkZS1kb3duJ1xyXG4gIHwgJ21vdmUtdXAnXHJcbiAgfCAndG9wLWxpbmUnXHJcbiAgfCAnbGF0ZXJhbC1saW5lcyc7XHJcblxyXG4vKipcclxuICogR2VuZXJpYyBmb3JtIGRhdGEgZm9yIEJ1dHRvblxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQcm9ncmVzc0J1dHRvbkZvcm0ge1xyXG4gIC8qKlxyXG4gICAqIFNwZWNpZmllcyBvbmUgb3IgbW9yZSBmb3JtcyB0aGUgYnV0dG9uIGJlbG9uZ3MgdG9cclxuICAgKi9cclxuICBpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgLyoqXHJcbiAgICogU3BlY2lmaWVzIHdoZXJlIHRvIHNlbmQgdGhlIGZvcm0tZGF0YSB3aGVuIGEgZm9ybSBpcyBzdWJtaXR0ZWQuIE9ubHkgZm9yIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAqL1xyXG4gIGFjdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgLyoqXHJcbiAgICogU3BlY2lmaWVzIHRoYXQgdGhlIGZvcm0tZGF0YSBzaG91bGQgbm90IGJlIHZhbGlkYXRlZCBvbiBzdWJtaXNzaW9uLiBPbmx5IGZvciB0eXBlPVwic3VibWl0XCJcclxuICAgKi9cclxuICBub1ZhbGlkYXRlPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgLyoqXHJcbiAgICogU3BlY2lmaWVzIGhvdyBmb3JtLWRhdGEgc2hvdWxkIGJlIGVuY29kZWQgYmVmb3JlIHNlbmRpbmcgaXQgdG8gYSBzZXJ2ZXIuIE9ubHkgZm9yIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAqL1xyXG4gIGVuY3R5cGU/OiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyB8ICdtdWx0aXBhcnQvZm9ybS1kYXRhJyB8ICd0ZXh0L3BsYWluJyB8IG51bGw7XHJcbiAgLyoqXHJcbiAgICogU3BlY2lmaWVzIGhvdyB0byBzZW5kIHRoZSBmb3JtLWRhdGEgKHdoaWNoIEhUVFAgbWV0aG9kIHRvIHVzZSkuIE9ubHkgZm9yIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAqL1xyXG4gIG1ldGhvZD86ICdnZXQnIHwgJ3Bvc3QnIHwgbnVsbDtcclxuICAvKipcclxuICAgKiBTcGVjaWZpZXMgd2hlcmUgdG8gZGlzcGxheSB0aGUgcmVzcG9uc2UgYWZ0ZXIgc3VibWl0dGluZyB0aGUgZm9ybS4gT25seSBmb3IgdHlwZT1cInN1Ym1pdFwiXHJcbiAgICovXHJcbiAgdGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnIHwgbnVsbDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByb2dyZXNzIEJ1dHRvbiBEZXNpZ24gT3B0aW9ucyAoSW5wdXQpXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzQnV0dG9uRGVzaWduIHtcclxuICAvKipcclxuICAgKiBUaGUgYmFja2dyb3VuZCBvZiB0aGUgYnV0dG9uXHJcbiAgICovXHJcbiAgYmFja2dyb3VuZD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBUaGUgdGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uXHJcbiAgICovXHJcbiAgY29sb3I/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogVGhlIGJhY2tncm91bmQgb2YgdGhlIGJ1dHRvbiB3aGVuIHN0YXR1cyBpcyBzdWNjZXNzXHJcbiAgICovXHJcbiAgc3VjY2Vzc0JhY2tncm91bmQ/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogVGhlIGJhY2tncm91bmQgb2YgdGhlIGJ1dHRvbiB3aGVuIHN0YXR1cyBpcyBlcnJvclxyXG4gICAqL1xyXG4gIGVycm9yQmFja2dyb3VuZD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBUaGUgY29sb3Igb2YgdGhlIGljb24gd2hlbiBzdGF0dXMgaXMgc3VjY2Vzc1xyXG4gICAqL1xyXG4gIHN1Y2Nlc3NJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogVGhlIGNvbG9yIG9mIHRoZSBpY29uIHdoZW4gc3RhdHVzIGlzIGVycm9yXHJcbiAgICovXHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogVGhlIGJhY2tncm91bmQgb2YgdGhlIHByb2dyZXNzIGVsZW1lbnRcclxuICAgKi9cclxuICBwcm9ncmVzc0JhY2tncm91bmQ/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogVGhlIGJhY2tncm91bmQgb2YgdGhlIHByb2dyZXNzIGlubmVyIGVsZW1lbnRcclxuICAgKi9cclxuICBwcm9ncmVzc0lubmVyQmFja2dyb3VuZD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBUaGUgc2l6ZSBpbiBweCBvZiB0aGUgcHJvZ3Jlc3MgbGluZXMuIFRoaXMgdmFsdWUgaXMgdXNlZCBpbiB0aGUgYW5pbWF0aW9uIHN0eWxlcyB0b3AtbGluZSBhbmQgbGF0ZXJhbC1saW5lc1xyXG4gICAqL1xyXG4gIGxpbmVzU2l6ZT86IG51bWJlcjtcclxuICAvKipcclxuICAgKiBTZXRzIHJvdW5kZWQgc2hhcGUgdG8gYnV0dG9uIHdpdGggZ2l2ZW4gcmFkaXVzIHNpemVcclxuICAgKi9cclxuICByYWRpdXM/OiBudW1iZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcm9ncmVzcyBCdXR0b24gRGF0YSAoSW5wdXQpXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzQnV0dG9uRGF0YSB7XHJcbiAgLyoqXHJcbiAgICogRGVmaW5lcyB0aGUgcHJvZ3Jlc3MgYW5pbWF0aW9uIHN0eWxlXHJcbiAgICovXHJcbiAgYW5pbWF0aW9uPzogUHJvZ3Jlc3NCdXR0b25BbmltYXRpb247XHJcbiAgLyoqXHJcbiAgICogRGVmaW5lcyB0aGUgcHJvZ3Jlc3MgYW5pbWF0aW9uIGRpcmVjdGlvblxyXG4gICAqL1xyXG4gIGRpcmVjdGlvbj86IFByb2dyZXNzQnV0dG9uRGlyZWN0aW9uO1xyXG4gIC8qKlxyXG4gICAqIFRpbWUgaW4gbXMgdGhhdCB0aGUgc3RhdHVzIChzdWNjZXNzIG9yIGVycm9yKSB3aWxsIGJlIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIHN0YXR1c1RpbWU/OiBudW1iZXI7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuLyoqXHJcbiAqIEJ1dHRvbiBDb25maWcgdXNlZCB0byBpbml0aWFsaXplIGJ1dHRvbiBvcHRpb25zXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3NCdXR0b25Db25maWcge1xyXG4gIHByb2dyZXNzOiBQcm9ncmVzc0J1dHRvbkRhdGEgPSB7XHJcbiAgICBhbmltYXRpb246ICdmaWxsJyxcclxuICAgIGRpcmVjdGlvbjogJ2hvcml6b250YWwnLFxyXG4gICAgc3RhdHVzVGltZTogMTUwMCxcclxuICB9O1xyXG4gIGRlc2lnbjogUHJvZ3Jlc3NCdXR0b25EZXNpZ24gPSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAnIzIyMjIyMicsXHJcbiAgICBjb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgc3VjY2Vzc0JhY2tncm91bmQ6ICcjMDBlMTc1JyxcclxuICAgIGVycm9yQmFja2dyb3VuZDogJyNmZjI5NDgnLFxyXG4gICAgc3VjY2Vzc0ljb25Db2xvcjogJyNmZmZmZmYnLFxyXG4gICAgZXJyb3JJY29uQ29sb3I6ICcjZmZmZmZmJyxcclxuICAgIHByb2dyZXNzQmFja2dyb3VuZDogJyMwMDAwMDAnLFxyXG4gICAgcHJvZ3Jlc3NJbm5lckJhY2tncm91bmQ6ICdyZ2JhKDI1NSwgMjU1LCAyNTUsMC41KScsXHJcbiAgICBsaW5lc1NpemU6IDEwLFxyXG4gICAgcmFkaXVzOiAwXHJcbiAgfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByb2dyZXNzIFN0YXR1cyBEYXRhXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzQnV0dG9uRGF0YVN0YXR1cyB7XHJcbiAgcGVyc3BlY3RpdmU/OiAnJyB8IG51bGw7XHJcbiAgaXNQZXJzcGVjdGl2ZTogYm9vbGVhbjtcclxuICBpc0JvcmRlclJhZGl1czogYm9vbGVhbjtcclxuICBpc1JvdGF0ZUFuaW1hdGlvbjogYm9vbGVhbjtcclxuICBpc0ZsaXBBbmltYXRpb246IGJvb2xlYW47XHJcbiAgaXNTbGlkZURvd25BbmltYXRpb246IGJvb2xlYW47XHJcbiAgaXNNb3ZlVXBBbmltYXRpb246IGJvb2xlYW47XHJcbiAgaXNDb250ZW50QmFja2dyb3VuZDogYm9vbGVhbjtcclxuICBpc0hvcml6b250YWw6IGJvb2xlYW47XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTdHlsZXMgb2YgQnV0dG9uIGVsZW1lbnRzXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzQnV0dG9uU3R5bGVzIHtcclxuICBwcm9ncmVzc0lubmVyOiBhbnk7XHJcbiAgYnV0dG9uOiBhbnk7XHJcbiAgY29udGVudDogYW55O1xyXG59XHJcblxyXG4vKipcclxuICogT3B0aW9uYWwgQ29uZmlndXJhdGlvbiBEYXRhIHBhc3NlZCB0byB0aGUgZm9yUm9vdCgpIG1ldGhvZFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQcm9ncmVzc0J1dHRvbk1vZHVsZUNvbmZpZyB7XHJcbiAgcHJvZ3Jlc3M/OiBQcm9ncmVzc0J1dHRvbkRhdGE7XHJcbiAgZGVzaWduPzogUHJvZ3Jlc3NCdXR0b25EZXNpZ247XHJcbn1cclxuLyoqXHJcbiAqIE1lcmdlIGFuIG9iamVjdCB3aXRoIGFub3RoZXJcclxuICogQHBhcmFtIGRhdGEgT2JqZWN0IHRvIG1lcmdlXHJcbiAqIEBwYXJhbSBzb3VyY2UgT3JpZ2luYWwgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VPcHRpb25zKGRhdGE6IGFueSwgc291cmNlOiBhbnkpIHtcclxuICBpZiAoZGF0YSkge1xyXG4gICAgT2JqZWN0LmtleXMoc291cmNlKS5mb3JFYWNoKChrKSA9PiB7XHJcbiAgICAgIGlmICgoZGF0YVtrXSAhPT0gbnVsbCAmJiB0eXBlb2YgZGF0YVtrXSAhPT0gJ3VuZGVmaW5lZCcgJiYgZGF0YVtrXSAhPT0gJycpKSB7XHJcbiAgICAgICAgc291cmNlW2tdID0gZGF0YVtrXTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICAvLyBVcGRhdGUgbGF0ZXJhbC1saW5lcyBhbmltYXRpb24gZGlyZWN0aW9uIHRvIHZlcnRpY2FsXHJcbiAgICBpZiAodHlwZW9mIHNvdXJjZSAhPT0gJ3VuZGVmaW5lZCcgJiYgc291cmNlLmFuaW1hdGlvbiAmJiBzb3VyY2UuYW5pbWF0aW9uID09PSAnbGF0ZXJhbC1saW5lcycpIHtcclxuICAgICAgc291cmNlLmRpcmVjdGlvbiA9ICd2ZXJ0aWNhbCc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBzb3VyY2U7XHJcbn1cclxuXHJcbi8vIFRva2VuIHRoYXQgbWFrZXMgdGhlIHJhdyBvcHRpb25zIGF2YWlsYWJsZSB0byB0aGUgZm9sbG93aW5nIGZhY3RvcnkgZnVuY3Rpb24uXHJcbmV4cG9ydCBsZXQgRk9SX1JPT1RfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFByb2dyZXNzQnV0dG9uTW9kdWxlQ29uZmlnPignZm9yUm9vdCgpIFByb2dyZXNzQnV0dG9uU2VydmljZSBjb25maWd1cmF0aW9uLicpO1xyXG5cclxuLyoqXHJcbiAqIFJldHVybiBhbiBpbnN0YW5jZSBvZiBQcm9ncmVzc0J1dHRvbkNvbmZpZ1xyXG4gKiBAcGFyYW0gY29uZmlnIFRoZSBidXR0b24gY29uZmlnIGZvciB0aGUgbW9kdWxlXHJcbiAqIEByZXR1cm4gUHJvZ3Jlc3NCdXR0b25Db25maWc7XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcHJvZ3Jlc3NCdXR0b25Db25maWdGYWN0b3J5KGNvbmZpZz86IFByb2dyZXNzQnV0dG9uTW9kdWxlQ29uZmlnKTogUHJvZ3Jlc3NCdXR0b25Db25maWcge1xyXG4gIGNvbnN0IG9wdGlvbnMgPSBuZXcgUHJvZ3Jlc3NCdXR0b25Db25maWcoKTtcclxuICBpZiAoY29uZmlnKSB7XHJcbiAgICBvcHRpb25zLnByb2dyZXNzID0gbWVyZ2VPcHRpb25zKGNvbmZpZy5wcm9ncmVzcywgb3B0aW9ucy5wcm9ncmVzcyk7XHJcbiAgICBvcHRpb25zLmRlc2lnbiA9IG1lcmdlT3B0aW9ucyhjb25maWcuZGVzaWduLCBvcHRpb25zLmRlc2lnbik7XHJcbiAgfVxyXG4gIHJldHVybiAob3B0aW9ucyk7XHJcbn1cclxuIl19