Socket
Socket
Sign inDemoInstall

angular-svg-icon

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-svg-icon - npm Package Compare versions

Comparing version 11.0.0 to 11.1.0

7

bundles/angular-svg-icon.umd.js

@@ -470,2 +470,9 @@ (function (global, factory) {

if (changeRecord.klass) {
var elem = this.element.nativeElement;
if (changeRecord.klass.previousValue) {
this.renderer.removeClass(elem, changeRecord.klass.previousValue);
}
if (changeRecord.klass.currentValue) {
this.renderer.addClass(elem, changeRecord.klass.currentValue);
}
if (this.applyClass) {

@@ -472,0 +479,0 @@ this.setClass(changeRecord.klass.previousValue, changeRecord.klass.currentValue);

4

bundles/angular-svg-icon.umd.min.js

@@ -1,2 +0,2 @@

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("rxjs"),require("rxjs/operators"),require("@angular/common/http")):"function"==typeof define&&define.amd?define("angular-svg-icon",["exports","@angular/core","@angular/common","rxjs","rxjs/operators","@angular/common/http"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["angular-svg-icon"]={},t.ng.core,t.ng.common,t.rxjs,t.rxjs.operators,t.ng.common.http)}(this,(function(t,e,r,n,i,s){"use strict";
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("rxjs"),require("rxjs/operators"),require("@angular/common/http")):"function"==typeof define&&define.amd?define("angular-svg-icon",["exports","@angular/core","@angular/common","rxjs","rxjs/operators","@angular/common/http"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["angular-svg-icon"]={},t.ng.core,t.ng.common,t.rxjs,t.rxjs.operators,t.ng.common.http)}(this,(function(t,e,r,s,n,i){"use strict";
/*! *****************************************************************************

@@ -15,3 +15,3 @@ Copyright (c) Microsoft Corporation.

PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */var o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};Object.create;function a(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function l(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,s=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=s.next()).done;)o.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=s.return)&&r.call(s)}finally{if(i)throw i.error}}return o}Object.create;var c=function(){},h=function(t){function e(e){var r=t.call(this)||this;return r.http=e,r}return function(t,e){function r(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype.getSvg=function(t){return this.http.get(t,{responseType:"text"})},e}(c);h.decorators=[{type:e.Injectable}],h.ctorParameters=function(){return[{type:s.HttpClient}]};var u=new e.InjectionToken("SERVER_URL"),p=function(){function t(t,e,r,n){this.loader=t,this.platformId=e,this.serverUrl=r,this._document=n,this.iconsByUrl=new Map,this.iconsLoadingByUrl=new Map,this.document=this._document}return t.prototype.addSvg=function(t,e){if(!this.iconsByUrl.has(t)){var r=this.document.createElement("DIV");r.innerHTML=e;var n=r.querySelector("svg");this.iconsByUrl.set(t,n)}},t.prototype.loadSvg=function(t,e){var r=this;if(void 0===e&&(e=t),this.serverUrl&&null===t.match(/^(http(s)?):/)&&(t=this.serverUrl+t,e=t),this.iconsByUrl.has(e))return n.of(this.iconsByUrl.get(e));if(this.iconsLoadingByUrl.has(e))return this.iconsLoadingByUrl.get(e);var s=this.loader.getSvg(t).pipe(i.map((function(t){var e=r.document.createElement("DIV");return e.innerHTML=t,e.querySelector("svg")})),i.tap((function(t){return r.iconsByUrl.set(e,t)})),i.catchError((function(t){return console.error(t),n.throwError(t)})),i.finalize((function(){return r.iconsLoadingByUrl.delete(e)})),i.share());return this.iconsLoadingByUrl.set(e,s),s},t.prototype.getSvgByName=function(t){return this.iconsByUrl.has(t)?n.of(this.iconsByUrl.get(t)):this.iconsLoadingByUrl.has(t)?this.iconsLoadingByUrl.get(t):n.throwError("No svg with name '"+t+"' has been loaded")},t.prototype.unloadSvg=function(t){this.iconsByUrl.has(t)&&this.iconsByUrl.delete(t)},t}();function d(t,e,r,n,i){return t||new p(e,r,n,i)}p.decorators=[{type:e.Injectable}],p.ctorParameters=function(){return[{type:c},{type:Object,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:String,decorators:[{type:e.Optional},{type:e.Inject,args:[u]}]},{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[r.DOCUMENT]}]}]};var f={provide:p,deps:[[new e.Optional,new e.SkipSelf,p],c,[e.PLATFORM_ID],[new e.Optional,u],[new e.Optional,r.DOCUMENT]],useFactory:d},y=function(){function t(t,e,r,n,i){this.element=t,this.differs=e,this.renderer=r,this.iconReg=n,this.cdr=i,this.stretch=!1,this.applyClass=!1,this.applyCss=!1,this.loaded=!1}return Object.defineProperty(t.prototype,"svgStyle",{set:function(t){this._svgStyle=t,!this.differ&&t&&(this.differ=this.differs.find(t).create())},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){this.init()},t.prototype.ngOnDestroy=function(){this.destroy()},t.prototype.ngOnChanges=function(t){(t.src||t.name)&&(this.loaded&&this.destroy(),this.init()),t.stretch&&this.stylize(),t.applyClass&&(this.applyClass?this.setClass(null,this.klass):this.setClass(this.klass,null)),t.svgClass&&this.setClass(t.svgClass.previousValue,t.svgClass.currentValue),t.klass&&(this.applyClass?this.setClass(t.klass.previousValue,t.klass.currentValue):this.setClass(t.klass.previousValue,null)),t.viewBox&&(this.loaded&&this.destroy(),this.init()),t.applyCss&&(console.warn("applyCss deprecated since 9.1.0, will be removed in 10.0.0"),console.warn("use applyClass instead"))},t.prototype.ngDoCheck=function(){if(this.svg&&this.differ){var t=this.differ.diff(this._svgStyle);t&&this.applyChanges(t)}},t.prototype.init=function(){if(this.name)this.icnSub=this.iconReg.getSvgByName(this.name).subscribe(this.initSvg.bind(this));else if(this.src)this.icnSub=this.iconReg.loadSvg(this.src).subscribe(this.initSvg.bind(this));else{this.element.nativeElement.innerHTML="",this.cdr.markForCheck()}},t.prototype.initSvg=function(t){this.loaded||(this.setSvg(t),this.resetDiffer())},t.prototype.destroy=function(){this.svg=void 0,this.differ=void 0,this.loaded=!1,this.icnSub&&this.icnSub.unsubscribe()},t.prototype.resetDiffer=function(){this._svgStyle&&!this.differ&&(this.differ=this.differs.find(this._svgStyle).create())},t.prototype.setSvg=function(t){if(!this.loaded&&t){this.svg=t;var e=t.cloneNode(!0),r=this.element.nativeElement;if(this.copyNgContentAttribute(r,e),this.klass&&this.applyClass&&this.renderer.setAttribute(e,"class",this.klass),this.svgClass&&this.renderer.setAttribute(e,"class",this.svgClass),this.viewBox)if("auto"===this.viewBox){var n=e.getAttribute("width"),i=e.getAttribute("height");if(i&&n){var s="0 0 "+n+" "+i;this.renderer.setAttribute(e,"viewBox",s),this.renderer.removeAttribute(e,"width"),this.renderer.removeAttribute(e,"height")}}else""!==this.viewBox&&(this.renderer.setAttribute(e,"viewBox",this.viewBox),this.renderer.removeAttribute(e,"width"),this.renderer.removeAttribute(e,"height"));r.innerHTML="",this.renderer.appendChild(r,e),this.loaded=!0,this.stylize(),this.cdr.markForCheck()}},t.prototype.copyNgContentAttribute=function(t,e){for(var r=t.attributes,n=r.length,i=0;i<n;i+=1){var s=r.item(i);if(s.name.startsWith("_ngcontent")){this.setNgContentAttribute(e,s.name);break}}},t.prototype.setNgContentAttribute=function(t,e){this.renderer.setAttribute(t,e,"");for(var r=t.childNodes.length,n=0;n<r;n+=1){var i=t.childNodes[n];i instanceof Element&&this.setNgContentAttribute(i,e)}},t.prototype.stylize=function(){if(this.svg){var t=this.element.nativeElement.firstChild;!0===this.stretch?this.renderer.setAttribute(t,"preserveAspectRatio","none"):!1===this.stretch&&this.renderer.removeAttribute(t,"preserveAspectRatio")}},t.prototype.applyChanges=function(t){var e=this;t.forEachRemovedItem((function(t){return e.setStyle(t.key,null)})),t.forEachAddedItem((function(t){return e.setStyle(t.key,t.currentValue)})),t.forEachChangedItem((function(t){return e.setStyle(t.key,t.currentValue)}))},t.prototype.setStyle=function(t,e){var r=l(t.split("."),2),n=r[0],i=r[1];e=null!==e&&i?""+e+i:e;var s=this.element.nativeElement.firstChild;null!==e?this.renderer.setStyle(s,n,e):this.renderer.removeStyle(s,n)},t.prototype.setClass=function(t,e){var r,n,i=this.element.nativeElement.firstChild;if(i&&(t&&this.renderer.removeClass(i,t),e)){var s=e.split(" ");try{for(var o=a(s),l=o.next();!l.done;l=o.next()){var c=l.value;this.renderer.addClass(i,c)}}catch(t){r={error:t}}finally{try{l&&!l.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}}},t}();y.decorators=[{type:e.Component,args:[{selector:"svg-icon",template:"<ng-content></ng-content>"}]}],y.ctorParameters=function(){return[{type:e.ElementRef},{type:e.KeyValueDiffers},{type:e.Renderer2},{type:p},{type:e.ChangeDetectorRef}]},y.propDecorators={src:[{type:e.Input}],name:[{type:e.Input}],stretch:[{type:e.Input}],applyClass:[{type:e.Input}],applyCss:[{type:e.Input}],svgClass:[{type:e.Input}],klass:[{type:e.Input,args:["class"]}],viewBox:[{type:e.Input}],svgStyle:[{type:e.Input}]};var v=function(){function t(){}return t.forRoot=function(e){return void 0===e&&(e={}),{ngModule:t,providers:[f,e.loader||{provide:c,useClass:h}]}},t}();v.decorators=[{type:e.NgModule,args:[{imports:[r.CommonModule],declarations:[y],exports:[y]}]}],t.AngularSvgIconModule=v,t.SERVER_URL=u,t.SVG_ICON_REGISTRY_PROVIDER=f,t.SVG_ICON_REGISTRY_PROVIDER_FACTORY=d,t.SvgHttpLoader=h,t.SvgIconComponent=y,t.SvgIconRegistryService=p,t.SvgLoader=c,Object.defineProperty(t,"__esModule",{value:!0})}));
***************************************************************************** */var o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};Object.create;function a(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],s=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&s>=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function l(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var s,n,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(s=i.next()).done;)o.push(s.value)}catch(t){n={error:t}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}Object.create;var c=function(){},h=function(t){function e(e){var r=t.call(this)||this;return r.http=e,r}return function(t,e){function r(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype.getSvg=function(t){return this.http.get(t,{responseType:"text"})},e}(c);h.decorators=[{type:e.Injectable}],h.ctorParameters=function(){return[{type:i.HttpClient}]};var u=new e.InjectionToken("SERVER_URL"),p=function(){function t(t,e,r,s){this.loader=t,this.platformId=e,this.serverUrl=r,this._document=s,this.iconsByUrl=new Map,this.iconsLoadingByUrl=new Map,this.document=this._document}return t.prototype.addSvg=function(t,e){if(!this.iconsByUrl.has(t)){var r=this.document.createElement("DIV");r.innerHTML=e;var s=r.querySelector("svg");this.iconsByUrl.set(t,s)}},t.prototype.loadSvg=function(t,e){var r=this;if(void 0===e&&(e=t),this.serverUrl&&null===t.match(/^(http(s)?):/)&&(t=this.serverUrl+t,e=t),this.iconsByUrl.has(e))return s.of(this.iconsByUrl.get(e));if(this.iconsLoadingByUrl.has(e))return this.iconsLoadingByUrl.get(e);var i=this.loader.getSvg(t).pipe(n.map((function(t){var e=r.document.createElement("DIV");return e.innerHTML=t,e.querySelector("svg")})),n.tap((function(t){return r.iconsByUrl.set(e,t)})),n.catchError((function(t){return console.error(t),s.throwError(t)})),n.finalize((function(){return r.iconsLoadingByUrl.delete(e)})),n.share());return this.iconsLoadingByUrl.set(e,i),i},t.prototype.getSvgByName=function(t){return this.iconsByUrl.has(t)?s.of(this.iconsByUrl.get(t)):this.iconsLoadingByUrl.has(t)?this.iconsLoadingByUrl.get(t):s.throwError("No svg with name '"+t+"' has been loaded")},t.prototype.unloadSvg=function(t){this.iconsByUrl.has(t)&&this.iconsByUrl.delete(t)},t}();function d(t,e,r,s,n){return t||new p(e,r,s,n)}p.decorators=[{type:e.Injectable}],p.ctorParameters=function(){return[{type:c},{type:Object,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:String,decorators:[{type:e.Optional},{type:e.Inject,args:[u]}]},{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[r.DOCUMENT]}]}]};var f={provide:p,deps:[[new e.Optional,new e.SkipSelf,p],c,[e.PLATFORM_ID],[new e.Optional,u],[new e.Optional,r.DOCUMENT]],useFactory:d},y=function(){function t(t,e,r,s,n){this.element=t,this.differs=e,this.renderer=r,this.iconReg=s,this.cdr=n,this.stretch=!1,this.applyClass=!1,this.applyCss=!1,this.loaded=!1}return Object.defineProperty(t.prototype,"svgStyle",{set:function(t){this._svgStyle=t,!this.differ&&t&&(this.differ=this.differs.find(t).create())},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){this.init()},t.prototype.ngOnDestroy=function(){this.destroy()},t.prototype.ngOnChanges=function(t){if((t.src||t.name)&&(this.loaded&&this.destroy(),this.init()),t.stretch&&this.stylize(),t.applyClass&&(this.applyClass?this.setClass(null,this.klass):this.setClass(this.klass,null)),t.svgClass&&this.setClass(t.svgClass.previousValue,t.svgClass.currentValue),t.klass){var e=this.element.nativeElement;t.klass.previousValue&&this.renderer.removeClass(e,t.klass.previousValue),t.klass.currentValue&&this.renderer.addClass(e,t.klass.currentValue),this.applyClass?this.setClass(t.klass.previousValue,t.klass.currentValue):this.setClass(t.klass.previousValue,null)}t.viewBox&&(this.loaded&&this.destroy(),this.init()),t.applyCss&&(console.warn("applyCss deprecated since 9.1.0, will be removed in 10.0.0"),console.warn("use applyClass instead"))},t.prototype.ngDoCheck=function(){if(this.svg&&this.differ){var t=this.differ.diff(this._svgStyle);t&&this.applyChanges(t)}},t.prototype.init=function(){if(this.name)this.icnSub=this.iconReg.getSvgByName(this.name).subscribe(this.initSvg.bind(this));else if(this.src)this.icnSub=this.iconReg.loadSvg(this.src).subscribe(this.initSvg.bind(this));else{this.element.nativeElement.innerHTML="",this.cdr.markForCheck()}},t.prototype.initSvg=function(t){this.loaded||(this.setSvg(t),this.resetDiffer())},t.prototype.destroy=function(){this.svg=void 0,this.differ=void 0,this.loaded=!1,this.icnSub&&this.icnSub.unsubscribe()},t.prototype.resetDiffer=function(){this._svgStyle&&!this.differ&&(this.differ=this.differs.find(this._svgStyle).create())},t.prototype.setSvg=function(t){if(!this.loaded&&t){this.svg=t;var e=t.cloneNode(!0),r=this.element.nativeElement;if(this.copyNgContentAttribute(r,e),this.klass&&this.applyClass&&this.renderer.setAttribute(e,"class",this.klass),this.svgClass&&this.renderer.setAttribute(e,"class",this.svgClass),this.viewBox)if("auto"===this.viewBox){var s=e.getAttribute("width"),n=e.getAttribute("height");if(n&&s){var i="0 0 "+s+" "+n;this.renderer.setAttribute(e,"viewBox",i),this.renderer.removeAttribute(e,"width"),this.renderer.removeAttribute(e,"height")}}else""!==this.viewBox&&(this.renderer.setAttribute(e,"viewBox",this.viewBox),this.renderer.removeAttribute(e,"width"),this.renderer.removeAttribute(e,"height"));r.innerHTML="",this.renderer.appendChild(r,e),this.loaded=!0,this.stylize(),this.cdr.markForCheck()}},t.prototype.copyNgContentAttribute=function(t,e){for(var r=t.attributes,s=r.length,n=0;n<s;n+=1){var i=r.item(n);if(i.name.startsWith("_ngcontent")){this.setNgContentAttribute(e,i.name);break}}},t.prototype.setNgContentAttribute=function(t,e){this.renderer.setAttribute(t,e,"");for(var r=t.childNodes.length,s=0;s<r;s+=1){var n=t.childNodes[s];n instanceof Element&&this.setNgContentAttribute(n,e)}},t.prototype.stylize=function(){if(this.svg){var t=this.element.nativeElement.firstChild;!0===this.stretch?this.renderer.setAttribute(t,"preserveAspectRatio","none"):!1===this.stretch&&this.renderer.removeAttribute(t,"preserveAspectRatio")}},t.prototype.applyChanges=function(t){var e=this;t.forEachRemovedItem((function(t){return e.setStyle(t.key,null)})),t.forEachAddedItem((function(t){return e.setStyle(t.key,t.currentValue)})),t.forEachChangedItem((function(t){return e.setStyle(t.key,t.currentValue)}))},t.prototype.setStyle=function(t,e){var r=l(t.split("."),2),s=r[0],n=r[1];e=null!==e&&n?""+e+n:e;var i=this.element.nativeElement.firstChild;null!==e?this.renderer.setStyle(i,s,e):this.renderer.removeStyle(i,s)},t.prototype.setClass=function(t,e){var r,s,n=this.element.nativeElement.firstChild;if(n&&(t&&this.renderer.removeClass(n,t),e)){var i=e.split(" ");try{for(var o=a(i),l=o.next();!l.done;l=o.next()){var c=l.value;this.renderer.addClass(n,c)}}catch(t){r={error:t}}finally{try{l&&!l.done&&(s=o.return)&&s.call(o)}finally{if(r)throw r.error}}}},t}();y.decorators=[{type:e.Component,args:[{selector:"svg-icon",template:"<ng-content></ng-content>"}]}],y.ctorParameters=function(){return[{type:e.ElementRef},{type:e.KeyValueDiffers},{type:e.Renderer2},{type:p},{type:e.ChangeDetectorRef}]},y.propDecorators={src:[{type:e.Input}],name:[{type:e.Input}],stretch:[{type:e.Input}],applyClass:[{type:e.Input}],applyCss:[{type:e.Input}],svgClass:[{type:e.Input}],klass:[{type:e.Input,args:["class"]}],viewBox:[{type:e.Input}],svgStyle:[{type:e.Input}]};var v=function(){function t(){}return t.forRoot=function(e){return void 0===e&&(e={}),{ngModule:t,providers:[f,e.loader||{provide:c,useClass:h}]}},t}();v.decorators=[{type:e.NgModule,args:[{imports:[r.CommonModule],declarations:[y],exports:[y]}]}],t.AngularSvgIconModule=v,t.SERVER_URL=u,t.SVG_ICON_REGISTRY_PROVIDER=f,t.SVG_ICON_REGISTRY_PROVIDER_FACTORY=d,t.SvgHttpLoader=h,t.SvgIconComponent=y,t.SvgIconRegistryService=p,t.SvgLoader=c,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=angular-svg-icon.umd.min.js.map

@@ -51,2 +51,9 @@ import { ChangeDetectorRef, Component, ElementRef, Input, KeyValueDiffers, Renderer2 } from '@angular/core';

if (changeRecord.klass) {
const elem = this.element.nativeElement;
if (changeRecord.klass.previousValue) {
this.renderer.removeClass(elem, changeRecord.klass.previousValue);
}
if (changeRecord.klass.currentValue) {
this.renderer.addClass(elem, changeRecord.klass.currentValue);
}
if (this.applyClass) {

@@ -234,2 +241,2 @@ this.setClass(changeRecord.klass.previousValue, changeRecord.klass.currentValue);

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc3ZnLWljb24vc3JjLyIsInNvdXJjZXMiOlsibGliL3N2Zy1pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFXLFVBQVUsRUFBRSxLQUFLLEVBQ1QsZUFBZSxFQUN4QyxTQUFTLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBSS9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTXJFLE1BQU0sT0FBTyxnQkFBZ0I7SUEyQjVCLFlBQ1MsT0FBbUIsRUFDbkIsT0FBd0IsRUFDeEIsUUFBbUIsRUFDbkIsT0FBK0IsRUFDL0IsR0FBc0I7UUFKdEIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBQy9CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBN0J0QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDNUIsOEJBQThCO1FBQ3JCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFtQmxCLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFRdkIsQ0FBQztJQXJCRCx1QkFBdUI7SUFDdkIsSUFDSSxRQUFRLENBQUMsQ0FBMkI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDNUM7SUFDRixDQUFDO0lBZ0JELFFBQVE7UUFDUCxJQUFJ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QUNEO0lBQ0YsQ0FBQzs7O1lBblBELFNBQVMsU0FBQztnQkFDVixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsUUFBUSxFQUFFLDJCQUEyQjthQUNyQzs7O1lBWCtDLFVBQVU7WUFDRixlQUFlO1lBQ3hDLFNBQVM7WUFJL0Isc0JBQXNCO1lBTnRCLGlCQUFpQjs7O2tCQWF4QixLQUFLO21CQUNMLEtBQUs7c0JBQ0wsS0FBSzt5QkFDTCxLQUFLO3VCQUVMLEtBQUs7dUJBQ0wsS0FBSztvQkFFTCxLQUFLLFNBQUMsT0FBTztzQkFDYixLQUFLO3VCQUdMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBEb0NoZWNrLCBFbGVtZW50UmVmLCBJbnB1dCxcblx0S2V5VmFsdWVDaGFuZ2VSZWNvcmQsIEtleVZhbHVlQ2hhbmdlcywgS2V5VmFsdWVEaWZmZXIsIEtleVZhbHVlRGlmZmVycyxcblx0T25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTdmdJY29uUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi9zdmctaWNvbi1yZWdpc3RyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnc3ZnLWljb24nLFxuXHR0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nXG59KVxuZXhwb3J0IGNsYXNzIFN2Z0ljb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBEb0NoZWNrIHtcblx0QElucHV0KCkgc3JjOiBzdHJpbmc7XG5cdEBJbnB1dCgpIG5hbWU6IHN0cmluZztcblx0QElucHV0KCkgc3RyZXRjaCA9IGZhbHNlO1xuXHRASW5wdXQoKSBhcHBseUNsYXNzID0gZmFsc2U7XG5cdC8qKiBAZGVwcmVjYXRlZCBzaW5jZSA5LjEuMCAqL1xuXHRASW5wdXQoKSBhcHBseUNzcyA9IGZhbHNlO1xuXHRASW5wdXQoKSBzdmdDbGFzczogc3RyaW5nO1xuXHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG5cdEBJbnB1dCgnY2xhc3MnKSBrbGFzczogc3RyaW5nO1xuXHRASW5wdXQoKSB2aWV3Qm94OiBzdHJpbmc7XG5cblx0Ly8gQWRhcHRlZCBmcm9tIG5nU3R5bGVcblx0QElucHV0KClcblx0c2V0IHN2Z1N0eWxlKHY6IHtba2V5OiBzdHJpbmddOiBzdHJpbmcgfSkge1xuXHRcdHRoaXMuX3N2Z1N0eWxlID0gdjtcblx0XHRpZiAoIXRoaXMuZGlmZmVyICYmIHYpIHtcblx0XHRcdHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQodikuY3JlYXRlKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBzdmc6IFNWR0VsZW1lbnQ7XG5cdHByaXZhdGUgaWNuU3ViOiBTdWJzY3JpcHRpb247XG5cdHByaXZhdGUgZGlmZmVyOiBLZXlWYWx1ZURpZmZlcjxzdHJpbmcsIHN0cmluZ3xudW1iZXI+O1xuXHRwcml2YXRlIF9zdmdTdHlsZToge1trZXk6IHN0cmluZ106IHN0cmluZ307XG5cdHByaXZhdGUgbG9hZGVkID0gZmFsc2U7XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuXHRcdHByaXZhdGUgZGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuXHRcdHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcblx0XHRwcml2YXRlIGljb25SZWc6IFN2Z0ljb25SZWdpc3RyeVNlcnZpY2UsXG5cdFx0cHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG5cdH1cblxuXHRuZ09uSW5pdCgpIHtcblx0XHR0aGlzLmluaXQoKTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuZGVzdHJveSgpO1xuXHR9XG5cblx0bmdPbkNoYW5nZXMoY2hhbmdlUmVjb3JkOiBTaW1wbGVDaGFuZ2VzKSB7XG5cdFx0aWYgKGNoYW5nZVJlY29yZC5zcmMgfHwgY2hhbmdlUmVjb3JkLm5hbWUpIHtcblx0XHRcdGlmICh0aGlzLmxvYWRlZCkge1xuXHRcdFx0XHR0aGlzLmRlc3Ryb3koKTtcblx0XHRcdH1cblx0XHRcdHRoaXMuaW5pdCgpO1xuXHRcdH1cblx0XHRpZiAoY2hhbmdlUmVjb3JkLnN0cmV0Y2gpIHtcblx0XHRcdHRoaXMuc3R5bGl6ZSgpO1xuXHRcdH1cblxuXHRcdGlmIChjaGFuZ2VSZWNvcmQuYXBwbHlDbGFzcykge1xuXHRcdFx0aWYgKHRoaXMuYXBwbHlDbGFzcykge1xuXHRcdFx0XHR0aGlzLnNldENsYXNzKG51bGwsIHRoaXMua2xhc3MpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5zZXRDbGFzcyh0aGlzLmtsYXNzLCBudWxsKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAoY2hhbmdlUmVjb3JkLnN2Z0NsYXNzKSB7XG5cdFx0XHR0aGlzLnNldENsYXNzKGNoYW5nZVJlY29yZC5zdmdDbGFzcy5wcmV2aW91c1ZhbHVlLCBjaGFuZ2VSZWNvcmQuc3ZnQ2xhc3MuY3VycmVudFZhbHVlKTtcblx0XHR9XG5cblx0XHRpZiAoY2hhbmdlUmVjb3JkLmtsYXNzKSB7XG5cdFx0XHRpZiAodGhpcy5hcHBseUNsYXNzKSB7XG5cdFx0XHRcdHRoaXMuc2V0Q2xhc3MoY2hhbmdlUmVjb3JkLmtsYXNzLnByZXZpb3VzVmFsdWUsIGNoYW5nZVJlY29yZC5rbGFzcy5jdXJyZW50VmFsdWUpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5zZXRDbGFzcyhjaGFuZ2VSZWNvcmQua2xhc3MucHJldmlvdXNWYWx1ZSwgbnVsbCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aWYgKGNoYW5nZVJlY29yZC52aWV3Qm94KSB7XG5cdFx0XHRpZiAodGhpcy5sb2FkZWQpIHtcblx0XHRcdFx0dGhpcy5kZXN0cm95KCk7XG5cdFx0XHR9XG5cdFx0XHR0aGlzLmluaXQoKTtcblx0XHR9XG5cdFx0aWYgKGNoYW5nZVJlY29yZC5hcHBseUNzcykge1xuXHRcdFx0Y29uc29sZS53YXJuKCdhcHBseUNzcyBkZXByZWNhdGVkIHNpbmNlIDkuMS4wLCB3aWxsIGJlIHJlbW92ZWQgaW4gMTAuMC4wJyk7XG5cdFx0XHRjb25zb2xlLndhcm4oJ3VzZSBhcHBseUNsYXNzIGluc3RlYWQnKTtcblx0XHR9XG5cdH1cblxuXHRuZ0RvQ2hlY2soKSB7XG5cdFx0aWYgKHRoaXMuc3ZnICYmIHRoaXMuZGlmZmVyKSB7XG5cdFx0XHRjb25zdCBjaGFuZ2VzID0gdGhpcy5kaWZmZXIuZGlmZih0aGlzLl9zdmdTdHlsZSk7XG5cdFx0XHRpZiAoY2hhbmdlcykge1xuXHRcdFx0XHR0aGlzLmFwcGx5Q2hhbmdlcyhjaGFuZ2VzKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIGluaXQoKSB7XG5cdFx0aWYgKHRoaXMubmFtZSkge1xuXHRcdFx0dGhpcy5pY25TdWIgPSB0aGlzLmljb25SZWcuZ2V0U3ZnQnlOYW1lKHRoaXMubmFtZSkuc3Vic2NyaWJlKHRoaXMuaW5pdFN2Zy5iaW5kKHRoaXMpKTtcblx0XHR9IGVsc2UgaWYgKHRoaXMuc3JjKSB7XG5cdFx0XHR0aGlzLmljblN1YiA9IHRoaXMuaWNvblJlZy5sb2FkU3ZnKHRoaXMuc3JjKS5zdWJzY3JpYmUodGhpcy5pbml0U3ZnLmJpbmQodGhpcykpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb25zdCBlbGVtID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRlbGVtLmlubmVySFRNTCA9ICcnO1xuXHRcdFx0dGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBpbml0U3ZnKHN2ZzogU1ZHRWxlbWVudCk6IHZvaWQge1xuXHRcdGlmICghdGhpcy5sb2FkZWQpIHtcblx0XHRcdHRoaXMuc2V0U3ZnKHN2Zyk7XG5cdFx0XHR0aGlzLnJlc2V0RGlmZmVyKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBkZXN0cm95KCkge1xuXHRcdHRoaXMuc3ZnID0gdW5kZWZpbmVkO1xuXHRcdHRoaXMuZGlmZmVyID0gdW5kZWZpbmVkO1xuXHRcdHRoaXMubG9hZGVkID0gZmFsc2U7XG5cdFx0aWYgKHRoaXMuaWNuU3ViKSB7XG5cdFx0XHR0aGlzLmljblN1Yi51bnN1YnNjcmliZSgpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgcmVzZXREaWZmZXIoKSB7XG5cdFx0aWYgKHRoaXMuX3N2Z1N0eWxlICYmICF0aGlzLmRpZmZlcikge1xuXHRcdFx0dGhpcy5kaWZmZXIgPSB0aGlzLmRpZmZlcnMuZmluZCh0aGlzLl9zdmdTdHlsZSkuY3JlYXRlKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBzZXRTdmcoc3ZnOiBTVkdFbGVtZW50KSB7XG5cdFx0aWYgKCF0aGlzLmxvYWRlZCAmJiBzdmcpIHtcblx0XHRcdHRoaXMuc3ZnID0gc3ZnO1xuXHRcdFx0Y29uc3QgaWNvbiA9IHN2Zy5jbG9uZU5vZGUodHJ1ZSkgYXMgU1ZHRWxlbWVudDtcblx0XHRcdGNvbnN0IGVsZW0gPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudDtcblxuXG5cdFx0XHR0aGlzLmNvcHlOZ0NvbnRlbnRBdHRyaWJ1dGUoZWxlbSwgaWNvbik7XG5cblx0XHRcdGlmICh0aGlzLmtsYXNzICYmIHRoaXMuYXBwbHlDbGFzcykge1xuXHRcdFx0XHR0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpY29uLCAnY2xhc3MnLCB0aGlzLmtsYXNzKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKHRoaXMuc3ZnQ2xhc3MpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoaWNvbiwgJ2NsYXNzJywgdGhpcy5zdmdDbGFzcyk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnZpZXdCb3gpIHtcblx0XHRcdFx0aWYgKHRoaXMudmlld0JveCA9PT0gJ2F1dG8nKSB7XG5cdFx0XHRcdFx0Ly8gQXR0ZW1wdCB0byBjb252ZXJ0IGhlaWdodCAmIHdpZHRoIHRvIGEgdmlld0JveC5cblx0XHRcdFx0XHRjb25zdCB3ID0gaWNvbi5nZXRBdHRyaWJ1dGUoJ3dpZHRoJyk7XG5cdFx0XHRcdFx0Y29uc3QgaCA9IGljb24uZ2V0QXR0cmlidXRlKCdoZWlnaHQnKTtcblx0XHRcdFx0XHRpZiAoaCAmJiB3KSB7XG5cdFx0XHRcdFx0XHRjb25zdCB2YiA9IGAwIDAgJHt3fSAke2h9YDtcblx0XHRcdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGljb24sICd2aWV3Qm94JywgdmIpO1xuXHRcdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaWNvbiwgJ3dpZHRoJyk7XG5cdFx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShpY29uLCAnaGVpZ2h0Jyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2UgaWYgKHRoaXMudmlld0JveCAhPT0gJycpIHtcblx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpY29uLCAndmlld0JveCcsIHRoaXMudmlld0JveCk7XG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaWNvbiwgJ3dpZHRoJyk7XG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaWNvbiwgJ2hlaWdodCcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGVsZW0uaW5uZXJIVE1MID0gJyc7XG5cdFx0XHR0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGVsZW0sIGljb24pO1xuXHRcdFx0dGhpcy5sb2FkZWQgPSB0cnVlO1xuXG5cdFx0XHR0aGlzLnN0eWxpemUoKTtcblx0XHRcdHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgY29weU5nQ29udGVudEF0dHJpYnV0ZShob3N0RWxlbTogYW55LCBpY29uOiBTVkdFbGVtZW50KSB7XG5cdFx0Y29uc3QgYXR0cmlidXRlcyA9IGhvc3RFbGVtLmF0dHJpYnV0ZXMgYXMgTmFtZWROb2RlTWFwO1xuXHRcdGNvbnN0IGxlbiA9IGF0dHJpYnV0ZXMubGVuZ3RoO1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyBpICs9IDEpIHtcblx0XHRcdGNvbnN0IGF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXMuaXRlbShpKTtcblx0XHRcdGlmIChhdHRyaWJ1dGUubmFtZS5zdGFydHNXaXRoKCdfbmdjb250ZW50JykpIHtcblx0XHRcdFx0dGhpcy5zZXROZ0NvbnRlbnRBdHRyaWJ1dGUoaWNvbiwgYXR0cmlidXRlLm5hbWUpO1xuXHRcdFx0XHRicmVhaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIHNldE5nQ29udGVudEF0dHJpYnV0ZShwYXJlbnQ6IE5vZGUsIGF0dHJpYnV0ZU5hbWU6IHN0cmluZykge1xuXHRcdHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHBhcmVudCwgYXR0cmlidXRlTmFtZSwgJycpO1xuXHRcdGNvbnN0IGxlbiA9IHBhcmVudC5jaGlsZE5vZGVzLmxlbmd0aDtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSArPSAxKSB7XG5cdFx0XHRjb25zdCBjaGlsZCA9IHBhcmVudC5jaGlsZE5vZGVzW2ldO1xuXHRcdFx0aWYgKGNoaWxkIGluc3RhbmNlb2YgRWxlbWVudCkge1xuXHRcdFx0XHR0aGlzLnNldE5nQ29udGVudEF0dHJpYnV0ZShjaGlsZCwgYXR0cmlidXRlTmFtZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBzdHlsaXplKCkge1xuXHRcdGlmICh0aGlzLnN2Zykge1xuXHRcdFx0Y29uc3Qgc3ZnID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZDtcblxuXHRcdFx0aWYgKHRoaXMuc3RyZXRjaCA9PT0gdHJ1ZSkge1xuXHRcdFx0XHR0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShzdmcsICdwcmVzZXJ2ZUFzcGVjdFJhdGlvJywgJ25vbmUnKTtcblx0XHRcdH0gZWxzZSBpZiAodGhpcy5zdHJldGNoID09PSBmYWxzZSkge1xuXHRcdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShzdmcsICdwcmVzZXJ2ZUFzcGVjdFJhdGlvJyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBhcHBseUNoYW5nZXMoY2hhbmdlczogS2V5VmFsdWVDaGFuZ2VzPHN0cmluZywgc3RyaW5nfG51bWJlcj4pIHtcblx0XHRjaGFuZ2VzLmZvckVhY2hSZW1vdmVkSXRlbSgocmVjb3JkOiBLZXlWYWx1ZUNoYW5nZVJlY29yZDxzdHJpbmcsIHN0cmluZ3xudW1iZXI+KSA9PiB0aGlzLnNldFN0eWxlKHJlY29yZC5rZXksIG51bGwpKTtcblx0XHRjaGFuZ2VzLmZvckVhY2hBZGRlZEl0ZW0oKHJlY29yZDogS2V5VmFsdWVDaGFuZ2VSZWNvcmQ8c3RyaW5nLCBzdHJpbmd8bnVtYmVyPikgPT4gdGhpcy5zZXRTdHlsZShyZWNvcmQua2V5LCByZWNvcmQuY3VycmVudFZhbHVlKSk7XG5cdFx0Y2hhbmdlcy5mb3JFYWNoQ2hhbmdlZEl0ZW0oKHJlY29yZDogS2V5VmFsdWVDaGFuZ2VSZWNvcmQ8c3RyaW5nLCBzdHJpbmd8bnVtYmVyPikgPT4gdGhpcy5zZXRTdHlsZShyZWNvcmQua2V5LCByZWNvcmQuY3VycmVudFZhbHVlKSk7XG5cdH1cblxuXHRwcml2YXRlIHNldFN0eWxlKG5hbWVBbmRVbml0OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmd8bnVtYmVyfG51bGx8dW5kZWZpbmVkKSB7XG5cdFx0Y29uc3QgW25hbWUsIHVuaXRdID0gbmFtZUFuZFVuaXQuc3BsaXQoJy4nKTtcblx0XHR2YWx1ZSA9IHZhbHVlICE9PSBudWxsICYmIHVuaXQgPyBgJHt2YWx1ZX0ke3VuaXR9YCA6IHZhbHVlO1xuXHRcdGNvbnN0IHN2ZyA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQ7XG5cblx0XHRpZiAodmFsdWUgIT09IG51bGwpIHtcblx0XHRcdHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc3ZnLCBuYW1lLCB2YWx1ZSBhcyBzdHJpbmcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHN2ZywgbmFtZSk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBzZXRDbGFzcyhwcmV2aW91czogc3RyaW5nLCBjdXJyZW50OiBzdHJpbmcpIHtcblx0XHRjb25zdCBzdmcgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5maXJzdENoaWxkO1xuXHRcdGlmIChzdmcpIHtcblx0XHRcdGlmIChwcmV2aW91cykge1xuXHRcdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHN2ZywgcHJldmlvdXMpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGN1cnJlbnQpIHtcblx0XHRcdFx0Y29uc3Qga2xhc3NlcyA9IGN1cnJlbnQuc3BsaXQoJyAnKTtcblx0XHRcdFx0Zm9yIChjb25zdCBrIG9mIGtsYXNzZXMpIHtcblx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHN2Zywgayk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItc3ZnLWljb24vc3JjLyIsInNvdXJjZXMiOlsibGliL3N2Zy1pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFXLFVBQVUsRUFBRSxLQUFLLEVBQ1QsZUFBZSxFQUN4QyxTQUFTLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBSS9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTXJFLE1BQU0sT0FBTyxnQkFBZ0I7SUEyQjVCLFlBQ1MsT0FBbUIsRUFDbkIsT0FBd0IsRUFDeEIsUUFBbUIsRUFDbkIsT0FBK0IsRUFDL0IsR0FBc0I7UUFKdEIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQXdCO1FBQy9CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBN0J0QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDNUIsOEJBQThCO1FBQ3JCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFtQmxCLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFRdkIsQ0FBQztJQXJCRCx1QkFBdUI7SUFDdkIsSUFDSSxRQUFRLENBQUMsQ0FBMkI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDNUM7SUFDRixDQUFDO0lBZ0JELFFBQVE7UUFDUCxJQUFJ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LFVBQVUsQ0FBQztRQUNsRCxJQUFJLEdBQUcsRUFBRTtZQUNSLElBQUksUUFBUSxFQUFFO2dCQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQzthQUN6QztZQUNELElBQUksT0FBTyxFQUFFO2dCQUNaLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ25DLEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxFQUFFO29CQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQy9CO2FBQ0Q7U0FDRDtJQUNGLENBQUM7OztZQTNQRCxTQUFTLFNBQUM7Z0JBQ1YsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLFFBQVEsRUFBRSwyQkFBMkI7YUFDckM7OztZQVgrQyxVQUFVO1lBQ0YsZUFBZTtZQUN4QyxTQUFTO1lBSS9CLHNCQUFzQjtZQU50QixpQkFBaUI7OztrQkFheEIsS0FBSzttQkFDTCxLQUFLO3NCQUNMLEtBQUs7eUJBQ0wsS0FBSzt1QkFFTCxLQUFLO3VCQUNMLEtBQUs7b0JBRUwsS0FBSyxTQUFDLE9BQU87c0JBQ2IsS0FBSzt1QkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRG9DaGVjaywgRWxlbWVudFJlZiwgSW5wdXQsXG5cdEtleVZhbHVlQ2hhbmdlUmVjb3JkLCBLZXlWYWx1ZUNoYW5nZXMsIEtleVZhbHVlRGlmZmVyLCBLZXlWYWx1ZURpZmZlcnMsXG5cdE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU3ZnSWNvblJlZ2lzdHJ5U2VydmljZSB9IGZyb20gJy4vc3ZnLWljb24tcmVnaXN0cnkuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ3N2Zy1pY29uJyxcblx0dGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+J1xufSlcbmV4cG9ydCBjbGFzcyBTdmdJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcywgRG9DaGVjayB7XG5cdEBJbnB1dCgpIHNyYzogc3RyaW5nO1xuXHRASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG5cdEBJbnB1dCgpIHN0cmV0Y2ggPSBmYWxzZTtcblx0QElucHV0KCkgYXBwbHlDbGFzcyA9IGZhbHNlO1xuXHQvKiogQGRlcHJlY2F0ZWQgc2luY2UgOS4xLjAgKi9cblx0QElucHV0KCkgYXBwbHlDc3MgPSBmYWxzZTtcblx0QElucHV0KCkgc3ZnQ2xhc3M6IHN0cmluZztcblx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuXHRASW5wdXQoJ2NsYXNzJykga2xhc3M6IHN0cmluZztcblx0QElucHV0KCkgdmlld0JveDogc3RyaW5nO1xuXG5cdC8vIEFkYXB0ZWQgZnJvbSBuZ1N0eWxlXG5cdEBJbnB1dCgpXG5cdHNldCBzdmdTdHlsZSh2OiB7W2tleTogc3RyaW5nXTogc3RyaW5nIH0pIHtcblx0XHR0aGlzLl9zdmdTdHlsZSA9IHY7XG5cdFx0aWYgKCF0aGlzLmRpZmZlciAmJiB2KSB7XG5cdFx0XHR0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKHYpLmNyZWF0ZSgpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgc3ZnOiBTVkdFbGVtZW50O1xuXHRwcml2YXRlIGljblN1YjogU3Vic2NyaXB0aW9uO1xuXHRwcml2YXRlIGRpZmZlcjogS2V5VmFsdWVEaWZmZXI8c3RyaW5nLCBzdHJpbmd8bnVtYmVyPjtcblx0cHJpdmF0ZSBfc3ZnU3R5bGU6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9O1xuXHRwcml2YXRlIGxvYWRlZCA9IGZhbHNlO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZixcblx0XHRwcml2YXRlIGRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcblx0XHRwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG5cdFx0cHJpdmF0ZSBpY29uUmVnOiBTdmdJY29uUmVnaXN0cnlTZXJ2aWNlLFxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuXHR9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0dGhpcy5pbml0KCk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLmRlc3Ryb3koKTtcblx0fVxuXG5cdG5nT25DaGFuZ2VzKGNoYW5nZVJlY29yZDogU2ltcGxlQ2hhbmdlcykge1xuXHRcdGlmIChjaGFuZ2VSZWNvcmQuc3JjIHx8IGNoYW5nZVJlY29yZC5uYW1lKSB7XG5cdFx0XHRpZiAodGhpcy5sb2FkZWQpIHtcblx0XHRcdFx0dGhpcy5kZXN0cm95KCk7XG5cdFx0XHR9XG5cdFx0XHR0aGlzLmluaXQoKTtcblx0XHR9XG5cdFx0aWYgKGNoYW5nZVJlY29yZC5zdHJldGNoKSB7XG5cdFx0XHR0aGlzLnN0eWxpemUoKTtcblx0XHR9XG5cblx0XHRpZiAoY2hhbmdlUmVjb3JkLmFwcGx5Q2xhc3MpIHtcblx0XHRcdGlmICh0aGlzLmFwcGx5Q2xhc3MpIHtcblx0XHRcdFx0dGhpcy5zZXRDbGFzcyhudWxsLCB0aGlzLmtsYXNzKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2V0Q2xhc3ModGhpcy5rbGFzcywgbnVsbCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aWYgKGNoYW5nZVJlY29yZC5zdmdDbGFzcykge1xuXHRcdFx0dGhpcy5zZXRDbGFzcyhjaGFuZ2VSZWNvcmQuc3ZnQ2xhc3MucHJldmlvdXNWYWx1ZSwgY2hhbmdlUmVjb3JkLnN2Z0NsYXNzLmN1cnJlbnRWYWx1ZSk7XG5cdFx0fVxuXG5cdFx0aWYgKGNoYW5nZVJlY29yZC5rbGFzcykge1xuXHRcdFx0Y29uc3QgZWxlbSA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKGNoYW5nZVJlY29yZC5rbGFzcy5wcmV2aW91c1ZhbHVlKSB7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZWxlbSwgY2hhbmdlUmVjb3JkLmtsYXNzLnByZXZpb3VzVmFsdWUpO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGNoYW5nZVJlY29yZC5rbGFzcy5jdXJyZW50VmFsdWUpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5hZGRDbGFzcyhlbGVtLCBjaGFuZ2VSZWNvcmQua2xhc3MuY3VycmVudFZhbHVlKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKHRoaXMuYXBwbHlDbGFzcykge1xuXHRcdFx0XHR0aGlzLnNldENsYXNzKGNoYW5nZVJlY29yZC5rbGFzcy5wcmV2aW91c1ZhbHVlLCBjaGFuZ2VSZWNvcmQua2xhc3MuY3VycmVudFZhbHVlKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2V0Q2xhc3MoY2hhbmdlUmVjb3JkLmtsYXNzLnByZXZpb3VzVmFsdWUsIG51bGwpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmIChjaGFuZ2VSZWNvcmQudmlld0JveCkge1xuXHRcdFx0aWYgKHRoaXMubG9hZGVkKSB7XG5cdFx0XHRcdHRoaXMuZGVzdHJveSgpO1xuXHRcdFx0fVxuXHRcdFx0dGhpcy5pbml0KCk7XG5cdFx0fVxuXHRcdGlmIChjaGFuZ2VSZWNvcmQuYXBwbHlDc3MpIHtcblx0XHRcdGNvbnNvbGUud2FybignYXBwbHlDc3MgZGVwcmVjYXRlZCBzaW5jZSA5LjEuMCwgd2lsbCBiZSByZW1vdmVkIGluIDEwLjAuMCcpO1xuXHRcdFx0Y29uc29sZS53YXJuKCd1c2UgYXBwbHlDbGFzcyBpbnN0ZWFkJyk7XG5cdFx0fVxuXHR9XG5cblx0bmdEb0NoZWNrKCkge1xuXHRcdGlmICh0aGlzLnN2ZyAmJiB0aGlzLmRpZmZlcikge1xuXHRcdFx0Y29uc3QgY2hhbmdlcyA9IHRoaXMuZGlmZmVyLmRpZmYodGhpcy5fc3ZnU3R5bGUpO1xuXHRcdFx0aWYgKGNoYW5nZXMpIHtcblx0XHRcdFx0dGhpcy5hcHBseUNoYW5nZXMoY2hhbmdlcyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBpbml0KCkge1xuXHRcdGlmICh0aGlzLm5hbWUpIHtcblx0XHRcdHRoaXMuaWNuU3ViID0gdGhpcy5pY29uUmVnLmdldFN2Z0J5TmFtZSh0aGlzLm5hbWUpLnN1YnNjcmliZSh0aGlzLmluaXRTdmcuYmluZCh0aGlzKSk7XG5cdFx0fSBlbHNlIGlmICh0aGlzLnNyYykge1xuXHRcdFx0dGhpcy5pY25TdWIgPSB0aGlzLmljb25SZWcubG9hZFN2Zyh0aGlzLnNyYykuc3Vic2NyaWJlKHRoaXMuaW5pdFN2Zy5iaW5kKHRoaXMpKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y29uc3QgZWxlbSA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXHRcdFx0ZWxlbS5pbm5lckhUTUwgPSAnJztcblx0XHRcdHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgaW5pdFN2Zyhzdmc6IFNWR0VsZW1lbnQpOiB2b2lkIHtcblx0XHRpZiAoIXRoaXMubG9hZGVkKSB7XG5cdFx0XHR0aGlzLnNldFN2ZyhzdmcpO1xuXHRcdFx0dGhpcy5yZXNldERpZmZlcigpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgZGVzdHJveSgpIHtcblx0XHR0aGlzLnN2ZyA9IHVuZGVmaW5lZDtcblx0XHR0aGlzLmRpZmZlciA9IHVuZGVmaW5lZDtcblx0XHR0aGlzLmxvYWRlZCA9IGZhbHNlO1xuXHRcdGlmICh0aGlzLmljblN1Yikge1xuXHRcdFx0dGhpcy5pY25TdWIudW5zdWJzY3JpYmUoKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIHJlc2V0RGlmZmVyKCkge1xuXHRcdGlmICh0aGlzLl9zdmdTdHlsZSAmJiAhdGhpcy5kaWZmZXIpIHtcblx0XHRcdHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQodGhpcy5fc3ZnU3R5bGUpLmNyZWF0ZSgpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgc2V0U3ZnKHN2ZzogU1ZHRWxlbWVudCkge1xuXHRcdGlmICghdGhpcy5sb2FkZWQgJiYgc3ZnKSB7XG5cdFx0XHR0aGlzLnN2ZyA9IHN2Zztcblx0XHRcdGNvbnN0IGljb24gPSBzdmcuY2xvbmVOb2RlKHRydWUpIGFzIFNWR0VsZW1lbnQ7XG5cdFx0XHRjb25zdCBlbGVtID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG5cblxuXHRcdFx0dGhpcy5jb3B5TmdDb250ZW50QXR0cmlidXRlKGVsZW0sIGljb24pO1xuXG5cdFx0XHRpZiAodGhpcy5rbGFzcyAmJiB0aGlzLmFwcGx5Q2xhc3MpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoaWNvbiwgJ2NsYXNzJywgdGhpcy5rbGFzcyk7XG5cdFx0XHR9XG5cblx0XHRcdGlmICh0aGlzLnN2Z0NsYXNzKSB7XG5cdFx0XHRcdHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGljb24sICdjbGFzcycsIHRoaXMuc3ZnQ2xhc3MpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAodGhpcy52aWV3Qm94KSB7XG5cdFx0XHRcdGlmICh0aGlzLnZpZXdCb3ggPT09ICdhdXRvJykge1xuXHRcdFx0XHRcdC8vIEF0dGVtcHQgdG8gY29udmVydCBoZWlnaHQgJiB3aWR0aCB0byBhIHZpZXdCb3guXG5cdFx0XHRcdFx0Y29uc3QgdyA9IGljb24uZ2V0QXR0cmlidXRlKCd3aWR0aCcpO1xuXHRcdFx0XHRcdGNvbnN0IGggPSBpY29uLmdldEF0dHJpYnV0ZSgnaGVpZ2h0Jyk7XG5cdFx0XHRcdFx0aWYgKGggJiYgdykge1xuXHRcdFx0XHRcdFx0Y29uc3QgdmIgPSBgMCAwICR7d30gJHtofWA7XG5cdFx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpY29uLCAndmlld0JveCcsIHZiKTtcblx0XHRcdFx0XHRcdHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKGljb24sICd3aWR0aCcpO1xuXHRcdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaWNvbiwgJ2hlaWdodCcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBlbHNlIGlmICh0aGlzLnZpZXdCb3ggIT09ICcnKSB7XG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoaWNvbiwgJ3ZpZXdCb3gnLCB0aGlzLnZpZXdCb3gpO1xuXHRcdFx0XHRcdHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKGljb24sICd3aWR0aCcpO1xuXHRcdFx0XHRcdHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKGljb24sICdoZWlnaHQnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRlbGVtLmlubmVySFRNTCA9ICcnO1xuXHRcdFx0dGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChlbGVtLCBpY29uKTtcblx0XHRcdHRoaXMubG9hZGVkID0gdHJ1ZTtcblxuXHRcdFx0dGhpcy5zdHlsaXplKCk7XG5cdFx0XHR0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIGNvcHlOZ0NvbnRlbnRBdHRyaWJ1dGUoaG9zdEVsZW06IGFueSwgaWNvbjogU1ZHRWxlbWVudCkge1xuXHRcdGNvbnN0IGF0dHJpYnV0ZXMgPSBob3N0RWxlbS5hdHRyaWJ1dGVzIGFzIE5hbWVkTm9kZU1hcDtcblx0XHRjb25zdCBsZW4gPSBhdHRyaWJ1dGVzLmxlbmd0aDtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSArPSAxKSB7XG5cdFx0XHRjb25zdCBhdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzLml0ZW0oaSk7XG5cdFx0XHRpZiAoYXR0cmlidXRlLm5hbWUuc3RhcnRzV2l0aCgnX25nY29udGVudCcpKSB7XG5cdFx0XHRcdHRoaXMuc2V0TmdDb250ZW50QXR0cmlidXRlKGljb24sIGF0dHJpYnV0ZS5uYW1lKTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBzZXROZ0NvbnRlbnRBdHRyaWJ1dGUocGFyZW50OiBOb2RlLCBhdHRyaWJ1dGVOYW1lOiBzdHJpbmcpIHtcblx0XHR0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShwYXJlbnQsIGF0dHJpYnV0ZU5hbWUsICcnKTtcblx0XHRjb25zdCBsZW4gPSBwYXJlbnQuY2hpbGROb2Rlcy5sZW5ndGg7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkgKz0gMSkge1xuXHRcdFx0Y29uc3QgY2hpbGQgPSBwYXJlbnQuY2hpbGROb2Rlc1tpXTtcblx0XHRcdGlmIChjaGlsZCBpbnN0YW5jZW9mIEVsZW1lbnQpIHtcblx0XHRcdFx0dGhpcy5zZXROZ0NvbnRlbnRBdHRyaWJ1dGUoY2hpbGQsIGF0dHJpYnV0ZU5hbWUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgc3R5bGl6ZSgpIHtcblx0XHRpZiAodGhpcy5zdmcpIHtcblx0XHRcdGNvbnN0IHN2ZyA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQ7XG5cblx0XHRcdGlmICh0aGlzLnN0cmV0Y2ggPT09IHRydWUpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc3ZnLCAncHJlc2VydmVBc3BlY3RSYXRpbycsICdub25lJyk7XG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMuc3RyZXRjaCA9PT0gZmFsc2UpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoc3ZnLCAncHJlc2VydmVBc3BlY3RSYXRpbycpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgYXBwbHlDaGFuZ2VzKGNoYW5nZXM6IEtleVZhbHVlQ2hhbmdlczxzdHJpbmcsIHN0cmluZ3xudW1iZXI+KSB7XG5cdFx0Y2hhbmdlcy5mb3JFYWNoUmVtb3ZlZEl0ZW0oKHJlY29yZDogS2V5VmFsdWVDaGFuZ2VSZWNvcmQ8c3RyaW5nLCBzdHJpbmd8bnVtYmVyPikgPT4gdGhpcy5zZXRTdHlsZShyZWNvcmQua2V5LCBudWxsKSk7XG5cdFx0Y2hhbmdlcy5mb3JFYWNoQWRkZWRJdGVtKChyZWNvcmQ6IEtleVZhbHVlQ2hhbmdlUmVjb3JkPHN0cmluZywgc3RyaW5nfG51bWJlcj4pID0+IHRoaXMuc2V0U3R5bGUocmVjb3JkLmtleSwgcmVjb3JkLmN1cnJlbnRWYWx1ZSkpO1xuXHRcdGNoYW5nZXMuZm9yRWFjaENoYW5nZWRJdGVtKChyZWNvcmQ6IEtleVZhbHVlQ2hhbmdlUmVjb3JkPHN0cmluZywgc3RyaW5nfG51bWJlcj4pID0+IHRoaXMuc2V0U3R5bGUocmVjb3JkLmtleSwgcmVjb3JkLmN1cnJlbnRWYWx1ZSkpO1xuXHR9XG5cblx0cHJpdmF0ZSBzZXRTdHlsZShuYW1lQW5kVW5pdDogc3RyaW5nLCB2YWx1ZTogc3RyaW5nfG51bWJlcnxudWxsfHVuZGVmaW5lZCkge1xuXHRcdGNvbnN0IFtuYW1lLCB1bml0XSA9IG5hbWVBbmRVbml0LnNwbGl0KCcuJyk7XG5cdFx0dmFsdWUgPSB2YWx1ZSAhPT0gbnVsbCAmJiB1bml0ID8gYCR7dmFsdWV9JHt1bml0fWAgOiB2YWx1ZTtcblx0XHRjb25zdCBzdmcgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5maXJzdENoaWxkO1xuXG5cdFx0aWYgKHZhbHVlICE9PSBudWxsKSB7XG5cdFx0XHR0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHN2ZywgbmFtZSwgdmFsdWUgYXMgc3RyaW5nKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShzdmcsIG5hbWUpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgc2V0Q2xhc3MocHJldmlvdXM6IHN0cmluZywgY3VycmVudDogc3RyaW5nKSB7XG5cdFx0Y29uc3Qgc3ZnID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZDtcblx0XHRpZiAoc3ZnKSB7XG5cdFx0XHRpZiAocHJldmlvdXMpIHtcblx0XHRcdFx0dGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhzdmcsIHByZXZpb3VzKTtcblx0XHRcdH1cblx0XHRcdGlmIChjdXJyZW50KSB7XG5cdFx0XHRcdGNvbnN0IGtsYXNzZXMgPSBjdXJyZW50LnNwbGl0KCcgJyk7XG5cdFx0XHRcdGZvciAoY29uc3QgayBvZiBrbGFzc2VzKSB7XG5cdFx0XHRcdFx0dGhpcy5yZW5kZXJlci5hZGRDbGFzcyhzdmcsIGspO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iXX0=

@@ -156,2 +156,9 @@ import { Injectable, InjectionToken, Inject, PLATFORM_ID, Optional, SkipSelf, Component, ElementRef, KeyValueDiffers, Renderer2, ChangeDetectorRef, Input, NgModule } from '@angular/core';

if (changeRecord.klass) {
const elem = this.element.nativeElement;
if (changeRecord.klass.previousValue) {
this.renderer.removeClass(elem, changeRecord.klass.previousValue);
}
if (changeRecord.klass.currentValue) {
this.renderer.addClass(elem, changeRecord.klass.currentValue);
}
if (this.applyClass) {

@@ -158,0 +165,0 @@ this.setClass(changeRecord.klass.previousValue, changeRecord.klass.currentValue);

{
"name": "angular-svg-icon",
"description": "Angular 11 component for inlining SVGs allowing them to be easily styled with CSS.",
"version": "11.0.0",
"version": "11.1.0",
"repository": {

@@ -6,0 +6,0 @@ "type": "git",

@@ -90,3 +90,3 @@ [![npm version](https://badge.fury.io/js/angular-svg-icon.svg)](https://badge.fury.io/js/angular-svg-icon)

- **[class]** - An optional string of the class or classes to apply to the SVG (duplicates what is set on the `svg-icon`).
- **[applyClass]** - An optional boolean (default is false) that works with **[class]** to duplicate the `class` attribute on the `svg-icon` and apply it to the SVG.
- **[applyClass]** - An optional boolean (default is false) that copies the `class` attribute on the `svg-icon` and adds it to the SVG.
- **[svgClass]** - An optional string of the class or classes to apply to the SVG (independent of what is set for the class on the `svg-icon`).

@@ -93,0 +93,0 @@ - **[viewBox]** - An optional string to set the viewBox on the SVG. If the `viewBox="auto"`, then `svg-icon` will attempt to convert the SVG's width and height attributes to a `viewBox="0 0 w h"`. Both explicitly setting the viewBox or `auto` setting the viewBox will remove the SVG's width and height attributes.

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc