Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@lucasheight/angular-controls

Package Overview
Dependencies
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@lucasheight/angular-controls - npm Package Compare versions

Comparing version 0.0.12 to 0.0.13

14

bundles/lucasheight-angular-controls.umd.js

@@ -25,2 +25,3 @@ (function (global, factory) {

this.postfix = "";
this.decimals = 0;
this.valueOutput = new core.EventEmitter();

@@ -93,6 +94,6 @@ this.blurOutput = new core.EventEmitter();

if (this._input && val) {
this._input.nativeElement.value = val * this._factor;
this._input.nativeElement.value = (val * this._factor).toFixed(this.decimals);
}
if (this._display && val) {
this._display.nativeElement.value = this.formatDisplay(val * this._factor);
this._display.nativeElement.value = this.formatDisplay((val * this._factor).toFixed(this.decimals));
}

@@ -144,4 +145,4 @@ },

/** @type {?} */
var v = parseFloat(_this._input.nativeElement.value) / _this._factor;
_this._display.nativeElement.value = _this.formatDisplay(parseFloat(_this._input.nativeElement.value) || null);
var v = (parseFloat(_this._input.nativeElement.value) / _this._factor);
_this._display.nativeElement.value = _this._input.nativeElement.value ? _this.formatDisplay(parseFloat(_this._input.nativeElement.value).toFixed(_this.decimals)) : null;
_this.valueOutput.emit(v || null);

@@ -187,6 +188,6 @@ _this.onChanged(v || null);

if (this._input) {
this._input.nativeElement.value = ((/** @type {?} */ (obj))) * this._factor;
this._input.nativeElement.value = (((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals);
}
if (this._display) {
this._display.nativeElement.value = this.formatDisplay(((/** @type {?} */ (obj))) * this._factor);
this._display.nativeElement.value = this.formatDisplay((((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals));
}

@@ -256,2 +257,3 @@ }

width: [{ type: core.Input }],
decimals: [{ type: core.Input }],
value: [{ type: core.Input, args: ["value",] }],

@@ -258,0 +260,0 @@ valueOutput: [{ type: core.Output, args: ["valueChange",] }],

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

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@lucasheight/angular-controls",["exports","@angular/core","@angular/forms","rxjs","rxjs/operators"],e):e(((t=t||self).lucasheight=t.lucasheight||{},t.lucasheight["angular-controls"]={}),t.ng.core,t.ng.forms,t.rxjs,t.rxjs.operators)}(this,function(t,e,i,n,r){"use strict";var o=function(){function t(){var t=this;this.numberReg=/\d+/g,this.showInput=!1,this._disabled=!1,this._factor=1,this._width=undefined,this.placeholder="",this.title="",this.tabindex=0,this.prefix="",this.postfix="",this.valueOutput=new e.EventEmitter,this.blurOutput=new e.EventEmitter,this.focusOutput=new e.EventEmitter,this.destroy$=new n.Subject,this.onChanged=function(t){},this.onTouched=function(t){},this.formatDisplay=function(e){return e?""+t.prefix+e.toString()+t.postfix:"Null"}}return Object.defineProperty(t.prototype,"factor",{set:function(t){this._factor=Math.round(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{set:function(t){this._disabled=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"width",{set:function(t){parseFloat(t.toString())?this._width=t+"px":this._width=t.toString()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._input&&t&&(this._input.nativeElement.value=t*this._factor),this._display&&t&&(this._display.nativeElement.value=this.formatDisplay(t*this._factor))},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;n.fromEvent(this._display.nativeElement,"focus").pipe(r.takeUntil(this.destroy$)).subscribe(function(e){t.showInput=!0,setTimeout(function(){t._input.nativeElement.focus(),t.onTouched(e),t.focusOutput.emit(e)})}),n.fromEvent(this._input.nativeElement,"input").pipe(r.takeUntil(this.destroy$),r.debounceTime(100),r.distinctUntilChanged()).subscribe(function(e){var i=parseFloat(t._input.nativeElement.value)/t._factor;t._display.nativeElement.value=t.formatDisplay(parseFloat(t._input.nativeElement.value)||null),t.valueOutput.emit(i||null),t.onChanged(i||null)}),n.fromEvent(this._input.nativeElement,"blur").pipe(r.takeUntil(this.destroy$)).subscribe(function(e){t.showInput=!1,t.blurOutput.emit(e)})},t.prototype.ngOnDestroy=function(){this.destroy$.next()},t.prototype.writeValue=function(t){if(t){if("number"==typeof t);else if("string"!=typeof t)throw"Unable to cast input to number";this._input&&(this._input.nativeElement.value=t*this._factor),this._display&&(this._display.nativeElement.value=this.formatDisplay(t*this._factor))}},t.prototype.registerOnChange=function(t){this.onChanged=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._disabled=t},t.decorators=[{type:e.Component,args:[{selector:"lh-numberInput",template:'<span class="lh-wrapper">\n <input #inputCtr [disabled]="_disabled" class="lh-input" [type]="showInput?\'number\':\'hidden\'" [tabindex]="tabindex" />\n <input #displayCtr [disabled]="_disabled" [title]="title" [placeholder]="placeholder" class="lh-display" [type]="showInput?\'hidden\':\'text\'" [tabindex]="tabindex" /> \n</span>\n',providers:[{provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef(function(){return t}),multi:!0}],host:{"[style.width]":"_width"},styles:[":host{padding:0 7px 0 1px;display:block}.lh-wrapper{padding:2px;display:inline-block;width:100%}input{width:100%;display:inline-block;padding:.375em;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;border-radius:.25rem;border:1px solid rgba(33,37,41,.15)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={placeholder:[{type:e.Input}],title:[{type:e.Input}],tabindex:[{type:e.Input}],factor:[{type:e.Input}],disabled:[{type:e.Input}],prefix:[{type:e.Input}],postfix:[{type:e.Input}],width:[{type:e.Input}],value:[{type:e.Input,args:["value"]}],valueOutput:[{type:e.Output,args:["valueChange"]}],blurOutput:[{type:e.Output,args:["blur"]}],focusOutput:[{type:e.Output,args:["focus"]}],_input:[{type:e.ViewChild,args:["inputCtr",{"static":!0}]}],_display:[{type:e.ViewChild,args:["displayCtr",{"static":!0}]}]},t}(),s=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{declarations:[o],imports:[],exports:[o]}]}],t}();t.LhControlsModule=s,t.NumberInputComponent=o,Object.defineProperty(t,"__esModule",{value:!0})});
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@lucasheight/angular-controls",["exports","@angular/core","@angular/forms","rxjs","rxjs/operators"],e):e(((t=t||self).lucasheight=t.lucasheight||{},t.lucasheight["angular-controls"]={}),t.ng.core,t.ng.forms,t.rxjs,t.rxjs.operators)}(this,function(t,e,i,n,o){"use strict";var r=function(){function t(){var t=this;this.numberReg=/\d+/g,this.showInput=!1,this._disabled=!1,this._factor=1,this._width=undefined,this.placeholder="",this.title="",this.tabindex=0,this.prefix="",this.postfix="",this.decimals=0,this.valueOutput=new e.EventEmitter,this.blurOutput=new e.EventEmitter,this.focusOutput=new e.EventEmitter,this.destroy$=new n.Subject,this.onChanged=function(t){},this.onTouched=function(t){},this.formatDisplay=function(e){return e?""+t.prefix+e.toString()+t.postfix:"Null"}}return Object.defineProperty(t.prototype,"factor",{set:function(t){this._factor=Math.round(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{set:function(t){this._disabled=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"width",{set:function(t){parseFloat(t.toString())?this._width=t+"px":this._width=t.toString()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._input&&t&&(this._input.nativeElement.value=(t*this._factor).toFixed(this.decimals)),this._display&&t&&(this._display.nativeElement.value=this.formatDisplay((t*this._factor).toFixed(this.decimals)))},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;n.fromEvent(this._display.nativeElement,"focus").pipe(o.takeUntil(this.destroy$)).subscribe(function(e){t.showInput=!0,setTimeout(function(){t._input.nativeElement.focus(),t.onTouched(e),t.focusOutput.emit(e)})}),n.fromEvent(this._input.nativeElement,"input").pipe(o.takeUntil(this.destroy$),o.debounceTime(100),o.distinctUntilChanged()).subscribe(function(e){var i=parseFloat(t._input.nativeElement.value)/t._factor;t._display.nativeElement.value=t._input.nativeElement.value?t.formatDisplay(parseFloat(t._input.nativeElement.value).toFixed(t.decimals)):null,t.valueOutput.emit(i||null),t.onChanged(i||null)}),n.fromEvent(this._input.nativeElement,"blur").pipe(o.takeUntil(this.destroy$)).subscribe(function(e){t.showInput=!1,t.blurOutput.emit(e)})},t.prototype.ngOnDestroy=function(){this.destroy$.next()},t.prototype.writeValue=function(t){if(t){if("number"==typeof t);else if("string"!=typeof t)throw"Unable to cast input to number";this._input&&(this._input.nativeElement.value=(t*this._factor).toFixed(this.decimals)),this._display&&(this._display.nativeElement.value=this.formatDisplay((t*this._factor).toFixed(this.decimals)))}},t.prototype.registerOnChange=function(t){this.onChanged=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._disabled=t},t.decorators=[{type:e.Component,args:[{selector:"lh-numberInput",template:'<span class="lh-wrapper">\n <input #inputCtr [disabled]="_disabled" class="lh-input" [type]="showInput?\'number\':\'hidden\'" [tabindex]="tabindex" />\n <input #displayCtr [disabled]="_disabled" [title]="title" [placeholder]="placeholder" class="lh-display" [type]="showInput?\'hidden\':\'text\'" [tabindex]="tabindex" /> \n</span>\n',providers:[{provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef(function(){return t}),multi:!0}],host:{"[style.width]":"_width"},styles:[":host{padding:0 7px 0 1px;display:block}.lh-wrapper{padding:2px;display:inline-block;width:100%}input{width:100%;display:inline-block;padding:.375em;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;border-radius:.25rem;border:1px solid rgba(33,37,41,.15)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none}"]}]}],t.ctorParameters=function(){return[]},t.propDecorators={placeholder:[{type:e.Input}],title:[{type:e.Input}],tabindex:[{type:e.Input}],factor:[{type:e.Input}],disabled:[{type:e.Input}],prefix:[{type:e.Input}],postfix:[{type:e.Input}],width:[{type:e.Input}],decimals:[{type:e.Input}],value:[{type:e.Input,args:["value"]}],valueOutput:[{type:e.Output,args:["valueChange"]}],blurOutput:[{type:e.Output,args:["blur"]}],focusOutput:[{type:e.Output,args:["focus"]}],_input:[{type:e.ViewChild,args:["inputCtr",{"static":!0}]}],_display:[{type:e.ViewChild,args:["displayCtr",{"static":!0}]}]},t}(),s=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{declarations:[r],imports:[],exports:[r]}]}],t}();t.LhControlsModule=s,t.NumberInputComponent=r,Object.defineProperty(t,"__esModule",{value:!0})});
//# sourceMappingURL=lucasheight-angular-controls.umd.min.js.map

@@ -22,2 +22,3 @@ /**

this.postfix = "";
this.decimals = 0;
this.valueOutput = new EventEmitter();

@@ -79,6 +80,6 @@ this.blurOutput = new EventEmitter();

if (this._input && val) {
this._input.nativeElement.value = val * this._factor;
this._input.nativeElement.value = (val * this._factor).toFixed(this.decimals);
}
if (this._display && val) {
this._display.nativeElement.value = this.formatDisplay(val * this._factor);
this._display.nativeElement.value = this.formatDisplay((val * this._factor).toFixed(this.decimals));
}

@@ -121,4 +122,4 @@ }

/** @type {?} */
let v = parseFloat(this._input.nativeElement.value) / this._factor;
this._display.nativeElement.value = this.formatDisplay(parseFloat(this._input.nativeElement.value) || null);
let v = (parseFloat(this._input.nativeElement.value) / this._factor);
this._display.nativeElement.value = this._input.nativeElement.value ? this.formatDisplay(parseFloat(this._input.nativeElement.value).toFixed(this.decimals)) : null;
this.valueOutput.emit(v || null);

@@ -163,6 +164,6 @@ this.onChanged(v || null);

if (this._input) {
this._input.nativeElement.value = ((/** @type {?} */ (obj))) * this._factor;
this._input.nativeElement.value = (((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals);
}
if (this._display) {
this._display.nativeElement.value = this.formatDisplay(((/** @type {?} */ (obj))) * this._factor);
this._display.nativeElement.value = this.formatDisplay((((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals));
}

@@ -221,2 +222,3 @@ }

width: [{ type: Input }],
decimals: [{ type: Input }],
value: [{ type: Input, args: ["value",] }],

@@ -254,2 +256,4 @@ valueOutput: [{ type: Output, args: ["valueChange",] }],

/** @type {?} */
NumberInputComponent.prototype.decimals;
/** @type {?} */
NumberInputComponent.prototype.valueOutput;

@@ -282,2 +286,2 @@ /** @type {?} */

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BsdWNhc2hlaWdodC9hbmd1bGFyLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsibGliL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBZ0IsU0FBUyxFQUE0QixVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdkssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFRLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQVEsb0JBQW9CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFnQnJGLE1BQU0sT0FBTyxvQkFBb0I7SUEwQy9CO1FBekNRLGNBQVMsR0FBRyxNQUFNLENBQUM7UUFDM0IsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFDcEIsV0FBTSxHQUFXLFNBQVMsQ0FBQztRQUNsQixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixVQUFLLEdBQVcsRUFBRSxDQUFDOztRQUVuQixhQUFRLEdBQVcsQ0FBQyxDQUFDO1FBT3JCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQWtCUCxnQkFBVyxHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlELGVBQVUsR0FBNkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6RCxnQkFBVyxHQUE2QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3BFLGFBQVEsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQTRDaEQsY0FB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QUN0QyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7Ozs7OztJQXRDekMseUNBQTJCOztJQUMzQix5Q0FBMkI7O0lBQzNCLHlDQUEyQjs7SUFDM0IsdUNBQW9COztJQUNwQixzQ0FBMkI7O0lBQzNCLDJDQUFrQzs7SUFDbEMscUNBQTRCOztJQUU1Qix3Q0FBOEI7O0lBTzlCLHNDQUE2Qjs7SUFDN0IsdUNBQThCOztJQWtCOUIsMkNBQThFOztJQUM5RSwwQ0FBMEU7O0lBQzFFLDJDQUE0RTs7SUFDNUUsc0NBQTREOztJQUM1RCx3Q0FBZ0U7Ozs7O0lBQ2hFLHdDQUFnRDs7SUE0Q2hELHlDQUE0Qjs7SUFDNUIseUNBQTRCOzs7OztJQStCNUIsNkNBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIEhvc3RMaXN0ZW5lciwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QsIHBpcGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCwgdGFrZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGRlYm91bmNlVGltZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGgtbnVtYmVySW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbnVtYmVyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbnVtYmVyLWlucHV0LmNvbXBvbmVudC5jc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTnVtYmVySW5wdXRDb21wb25lbnQpLCBtdWx0aTogdHJ1ZSB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAvLycoYmx1ciknOidvblRvdWNoZWQoKScsXG4gICAgJ1tzdHlsZS53aWR0aF0nOiAnX3dpZHRoJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE51bWJlcklucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHJpdmF0ZSBudW1iZXJSZWcgPSAvXFxkKy9nO1xuICBzaG93SW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIF9mYWN0b3I6IG51bWJlciA9IDE7XG4gIF93aWR0aDogc3RyaW5nID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9IFwiXCI7XG4gIC8vQEhvc3RCaW5kaW5nKFwic3R5bGUud2lkdGhcIikgaG9zdFdpZHRoID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSB0YWJpbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgc2V0IGZhY3Rvcih2YWw6IG51bWJlcikge1xuICAgIHRoaXMuX2ZhY3RvciA9IE1hdGgucm91bmQodmFsKTtcbiAgfTtcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsO1xuICB9XG4gIEBJbnB1dCgpIHByZWZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgcG9zdGZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgc2V0IHdpZHRoKHZhbDogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgaWYgKHBhcnNlRmxvYXQodmFsLnRvU3RyaW5nKCkpKSB7XG4gICAgICB0aGlzLl93aWR0aCA9IGAke3ZhbH1weGA7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5fd2lkdGggPSB2YWwudG9TdHJpbmcoKTtcbiAgICB9XG4gIH07XG4gIEBJbnB1dChcInZhbHVlXCIpIHNldCB2YWx1ZSh2YWw6IG51bWJlcikge1xuXG4gICAgaWYgKHRoaXMuX2lucHV0ICYmIHZhbCkge1xuICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbCAqIHRoaXMuX2ZhY3RvcjtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rpc3BsYXkgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkodmFsICogdGhpcy5fZmFjdG9yKTtcbiAgICB9XG4gIH07XG4gIEBPdXRwdXQoXCJ2YWx1ZUNoYW5nZVwiKSB2YWx1ZU91dHB1dDogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoXCJibHVyXCIpIGJsdXJPdXRwdXQ6IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dChcImZvY3VzXCIpIGZvY3VzT3V0cHV0OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBWaWV3Q2hpbGQoXCJpbnB1dEN0clwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXQ6IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoXCJkaXNwbGF5Q3RyXCIsIHsgc3RhdGljOiB0cnVlIH0pIF9kaXNwbGF5OiBFbGVtZW50UmVmO1xuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuXG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuXG4gICAgZnJvbUV2ZW50PEZvY3VzRXZlbnQ+KHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudCwgXCJmb2N1c1wiKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUocyA9PiB7XG4gICAgICAgIC8vY29uc29sZS5sb2coXCJmb2N1c1wiLCBzKVxuICAgICAgICB0aGlzLnNob3dJbnB1dCA9IHRydWU7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxuICAgICAgICAgIHRoaXMub25Ub3VjaGVkKHMpO1xuICAgICAgICAgIHRoaXMuZm9jdXNPdXRwdXQuZW1pdChzKVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pih0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LCBcImlucHV0XCIpLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiaW5wdXRcIiwgcylcbiAgICAgICAgbGV0IHYgPSBwYXJzZUZsb2F0KHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpIC8gdGhpcy5fZmFjdG9yO1xuICAgICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkocGFyc2VGbG9hdCh0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKSB8fCBudWxsKTtcbiAgICAgICAgdGhpcy52YWx1ZU91dHB1dC5lbWl0KHYgfHwgbnVsbCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2VkKHYgfHwgbnVsbCk7XG4gICAgICB9KTtcblxuICAgIGZyb21FdmVudDxGb2N1c0V2ZW50Pih0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LCBcImJsdXJcIikucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIm1lcmdlZFwiLCBzKVxuICAgICAgICB0aGlzLnNob3dJbnB1dCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJsdXJPdXRwdXQuZW1pdChzKTtcbiAgICAgICAgLy8gdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgb25DaGFuZ2VkID0gKF86IGFueSkgPT4geyB9O1xuICBvblRvdWNoZWQgPSAoXzogYW55KSA9PiB7IH07XG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICBsZXQgX251bSA9IG51bGw7XG4gICAgaWYgKG9iaikge1xuICAgICAgaWYgKHR5cGVvZiBvYmogPT0gXCJudW1iZXJcIikge1xuICAgICAgICBfbnVtID0gb2JqIGFzIG51bWJlcjtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHR5cGVvZiBvYmogPT0gXCJzdHJpbmdcIikge1xuICAgICAgICBfbnVtID0gcGFyc2VGbG9hdChvYmopO1xuICAgICAgfVxuICAgICAgZWxzZSB7IHRocm93IFwiVW5hYmxlIHRvIGNhc3QgaW5wdXQgdG8gbnVtYmVyXCIgfVxuXG4gICAgICBpZiAodGhpcy5faW5wdXQpIHtcbiAgICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IChvYmogYXMgbnVtYmVyKSAqIHRoaXMuX2ZhY3RvcjtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLl9kaXNwbGF5KSB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0RGlzcGxheSgob2JqIGFzIG51bWJlcikgKiB0aGlzLl9mYWN0b3IpO1xuICAgICAgfVxuXG5cbiAgICB9XG4gIH1cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZWQgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG4gIHByaXZhdGUgZm9ybWF0RGlzcGxheSA9ICh2YWw6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyA9PiB7XG4gICAgcmV0dXJuIHZhbCA/IGAke3RoaXMucHJlZml4fSR7dmFsLnRvU3RyaW5nKCl9JHt0aGlzLnBvc3RmaXh9YCA6IFwiTnVsbFwiO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BsdWNhc2hlaWdodC9hbmd1bGFyLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsibGliL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBZ0IsU0FBUyxFQUE0QixVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdkssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFRLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQVEsb0JBQW9CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFnQnJGLE1BQU0sT0FBTyxvQkFBb0I7SUEyQy9CO1FBMUNRLGNBQVMsR0FBRyxNQUFNLENBQUM7UUFDM0IsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFDcEIsV0FBTSxHQUFXLFNBQVMsQ0FBQztRQUNsQixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixVQUFLLEdBQVcsRUFBRSxDQUFDOztRQUVuQixhQUFRLEdBQVcsQ0FBQyxDQUFDO1FBT3JCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQVNyQixhQUFRLEdBQVcsQ0FBQyxDQUFDO1FBVVAsZ0JBQVcsR0FBa0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN2RSxlQUFVLEdBQTZCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekQsZ0JBQVcsR0FBNkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdwRSxhQUFRLEdBQWtCLElBQUks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RSxLQUFLLEVBQUUsSUFBSSxFQUFFO2lCQUNqRztnQkFDRCxJQUFJLEVBQUU7O29CQUVKLGVBQWUsRUFBRSxRQUFRO2lCQUMxQjs7YUFDRjs7Ozs7MEJBT0UsS0FBSztvQkFDTCxLQUFLO3VCQUVMLEtBQUs7cUJBQ0wsS0FBSzt1QkFHTCxLQUFLO3FCQUdMLEtBQUs7c0JBQ0wsS0FBSztvQkFDTCxLQUFLO3VCQVFMLEtBQUs7b0JBQ0wsS0FBSyxTQUFDLE9BQU87MEJBU2IsTUFBTSxTQUFDLGFBQWE7eUJBQ3BCLE1BQU0sU0FBQyxNQUFNOzBCQUNiLE1BQU0sU0FBQyxPQUFPO3FCQUNkLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO3VCQUN0QyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7Ozs7OztJQXZDekMseUNBQTJCOztJQUMzQix5Q0FBMkI7O0lBQzNCLHlDQUEyQjs7SUFDM0IsdUNBQW9COztJQUNwQixzQ0FBMkI7O0lBQzNCLDJDQUFrQzs7SUFDbEMscUNBQTRCOztJQUU1Qix3Q0FBOEI7O0lBTzlCLHNDQUE2Qjs7SUFDN0IsdUNBQThCOztJQVM5Qix3Q0FBOEI7O0lBVTlCLDJDQUF1Rjs7SUFDdkYsMENBQTBFOztJQUMxRSwyQ0FBNEU7O0lBQzVFLHNDQUE0RDs7SUFDNUQsd0NBQWdFOzs7OztJQUNoRSx3Q0FBZ0Q7O0lBNENoRCx5Q0FBNEI7O0lBQzVCLHlDQUE0Qjs7Ozs7SUErQjVCLDZDQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBIb3N0TGlzdGVuZXIsIFZpZXdDaGlsZCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCBwaXBlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRha2UsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBkZWJvdW5jZVRpbWUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xoLW51bWJlcklucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE51bWJlcklucHV0Q29tcG9uZW50KSwgbXVsdGk6IHRydWUgfVxuICBdLFxuICBob3N0OiB7XG4gICAgLy8nKGJsdXIpJzonb25Ub3VjaGVkKCknLFxuICAgICdbc3R5bGUud2lkdGhdJzogJ193aWR0aCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgbnVtYmVyUmVnID0gL1xcZCsvZztcbiAgc2hvd0lucHV0OiBib29sZWFuID0gZmFsc2U7XG4gIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBfZmFjdG9yOiBudW1iZXIgPSAxO1xuICBfd2lkdGg6IHN0cmluZyA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPSBcIlwiO1xuICAvL0BIb3N0QmluZGluZyhcInN0eWxlLndpZHRoXCIpIGhvc3RXaWR0aCA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgdGFiaW5kZXg6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHNldCBmYWN0b3IodmFsOiBudW1iZXIpIHtcbiAgICB0aGlzLl9mYWN0b3IgPSBNYXRoLnJvdW5kKHZhbCk7XG4gIH07XG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWw6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbDtcbiAgfVxuICBASW5wdXQoKSBwcmVmaXg6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHBvc3RmaXg6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHNldCB3aWR0aCh2YWw6IG51bWJlciB8IHN0cmluZykge1xuICAgIGlmIChwYXJzZUZsb2F0KHZhbC50b1N0cmluZygpKSkge1xuICAgICAgdGhpcy5fd2lkdGggPSBgJHt2YWx9cHhgO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuX3dpZHRoID0gdmFsLnRvU3RyaW5nKCk7XG4gICAgfVxuICB9O1xuICBASW5wdXQoKSBkZWNpbWFsczogbnVtYmVyID0gMDtcbiAgQElucHV0KFwidmFsdWVcIikgc2V0IHZhbHVlKHZhbDogbnVtYmVyKSB7XG5cbiAgICBpZiAodGhpcy5faW5wdXQgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbCAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rpc3BsYXkgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkoKHZhbCAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKSk7XG4gICAgfVxuICB9O1xuICBAT3V0cHV0KFwidmFsdWVDaGFuZ2VcIikgdmFsdWVPdXRwdXQ6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KFwiYmx1clwiKSBibHVyT3V0cHV0OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoXCJmb2N1c1wiKSBmb2N1c091dHB1dDogRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAVmlld0NoaWxkKFwiaW5wdXRDdHJcIiwgeyBzdGF0aWM6IHRydWUgfSkgX2lucHV0OiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKFwiZGlzcGxheUN0clwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBfZGlzcGxheTogRWxlbWVudFJlZjtcbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcblxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcblxuICAgIGZyb21FdmVudDxGb2N1c0V2ZW50Pih0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQsIFwiZm9jdXNcIikucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiZm9jdXNcIiwgcylcbiAgICAgICAgdGhpcy5zaG93SW5wdXQgPSB0cnVlO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgICAgICB0aGlzLm9uVG91Y2hlZChzKTtcbiAgICAgICAgICB0aGlzLmZvY3VzT3V0cHV0LmVtaXQocylcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4odGhpcy5faW5wdXQubmF0aXZlRWxlbWVudCwgXCJpbnB1dFwiKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgLnN1YnNjcmliZShzID0+IHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhcImlucHV0XCIsIHMpXG4gICAgICAgIGxldCB2ID0gKHBhcnNlRmxvYXQodGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkgLyB0aGlzLl9mYWN0b3IpO1xuICAgICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID8gdGhpcy5mb3JtYXREaXNwbGF5KHBhcnNlRmxvYXQodGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkudG9GaXhlZCh0aGlzLmRlY2ltYWxzKSkgOiBudWxsO1xuICAgICAgICB0aGlzLnZhbHVlT3V0cHV0LmVtaXQodiB8fCBudWxsKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZWQodiB8fCBudWxsKTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50PEZvY3VzRXZlbnQ+KHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQsIFwiYmx1clwiKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUocyA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwibWVyZ2VkXCIsIHMpXG4gICAgICAgIHRoaXMuc2hvd0lucHV0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYmx1ck91dHB1dC5lbWl0KHMpO1xuICAgICAgICAvLyB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBvbkNoYW5nZWQgPSAoXzogYW55KSA9PiB7IH07XG4gIG9uVG91Y2hlZCA9IChfOiBhbnkpID0+IHsgfTtcbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgIGxldCBfbnVtID0gbnVsbDtcbiAgICBpZiAob2JqKSB7XG4gICAgICBpZiAodHlwZW9mIG9iaiA9PSBcIm51bWJlclwiKSB7XG4gICAgICAgIF9udW0gPSBvYmogYXMgbnVtYmVyO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAodHlwZW9mIG9iaiA9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIF9udW0gPSBwYXJzZUZsb2F0KG9iaik7XG4gICAgICB9XG4gICAgICBlbHNlIHsgdGhyb3cgXCJVbmFibGUgdG8gY2FzdCBpbnB1dCB0byBudW1iZXJcIiB9XG5cbiAgICAgIGlmICh0aGlzLl9pbnB1dCkge1xuICAgICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gKChvYmogYXMgbnVtYmVyKSAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLl9kaXNwbGF5KSB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0RGlzcGxheSgoKG9iaiBhcyBudW1iZXIpICogdGhpcy5fZmFjdG9yKS50b0ZpeGVkKHRoaXMuZGVjaW1hbHMpKTtcbiAgICAgIH1cblxuXG4gICAgfVxuICB9XG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VkID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuICBwcml2YXRlIGZvcm1hdERpc3BsYXkgPSAodmFsOiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiB2YWwgPyBgJHt0aGlzLnByZWZpeH0ke3ZhbC50b1N0cmluZygpfSR7dGhpcy5wb3N0Zml4fWAgOiBcIk51bGxcIjtcbiAgfVxufVxuIl19

@@ -23,2 +23,3 @@ /**

this.postfix = "";
this.decimals = 0;
this.valueOutput = new EventEmitter();

@@ -93,6 +94,6 @@ this.blurOutput = new EventEmitter();

if (this._input && val) {
this._input.nativeElement.value = val * this._factor;
this._input.nativeElement.value = (val * this._factor).toFixed(this.decimals);
}
if (this._display && val) {
this._display.nativeElement.value = this.formatDisplay(val * this._factor);
this._display.nativeElement.value = this.formatDisplay((val * this._factor).toFixed(this.decimals));
}

@@ -145,4 +146,4 @@ },

/** @type {?} */
var v = parseFloat(_this._input.nativeElement.value) / _this._factor;
_this._display.nativeElement.value = _this.formatDisplay(parseFloat(_this._input.nativeElement.value) || null);
var v = (parseFloat(_this._input.nativeElement.value) / _this._factor);
_this._display.nativeElement.value = _this._input.nativeElement.value ? _this.formatDisplay(parseFloat(_this._input.nativeElement.value).toFixed(_this.decimals)) : null;
_this.valueOutput.emit(v || null);

@@ -194,6 +195,6 @@ _this.onChanged(v || null);

if (this._input) {
this._input.nativeElement.value = ((/** @type {?} */ (obj))) * this._factor;
this._input.nativeElement.value = (((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals);
}
if (this._display) {
this._display.nativeElement.value = this.formatDisplay(((/** @type {?} */ (obj))) * this._factor);
this._display.nativeElement.value = this.formatDisplay((((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals));
}

@@ -263,2 +264,3 @@ }

width: [{ type: Input }],
decimals: [{ type: Input }],
value: [{ type: Input, args: ["value",] }],

@@ -299,2 +301,4 @@ valueOutput: [{ type: Output, args: ["valueChange",] }],

/** @type {?} */
NumberInputComponent.prototype.decimals;
/** @type {?} */
NumberInputComponent.prototype.valueOutput;

@@ -327,2 +331,2 @@ /** @type {?} */

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BsdWNhc2hlaWdodC9hbmd1bGFyLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsibGliL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBZ0IsU0FBUyxFQUE0QixVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdkssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFRLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQVEsb0JBQW9CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckY7SUFzREU7UUFBQSxpQkFBaUI7UUF6Q1QsY0FBUyxHQUFHLE1BQU0sQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQixXQUFNLEdBQVcsU0FBUyxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLFVBQUssR0FBVyxFQUFFLENBQUM7O1FBRW5CLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFPckIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUNwQixZQUFPLEdBQVcsRUFBRSxDQUFDO1FBa0JQLGdCQUFXLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUQsZUFBVSxHQUE2QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3pELGdCQUFXLEdBQTZCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHcEUsYUFBUSxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBNENoRCxjQUFTOzs7O1FB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QyxNQUFNOzhCQUNiLE1BQU0sU0FBQyxPQUFPO3lCQUNkLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOzJCQUN0QyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7SUFnRjNDLDJCQUFDO0NBQUEsQUFuSUQsSUFtSUM7U0F2SFksb0JBQW9COzs7Ozs7SUFDL0IseUNBQTJCOztJQUMzQix5Q0FBMkI7O0lBQzNCLHlDQUEyQjs7SUFDM0IsdUNBQW9COztJQUNwQixzQ0FBMkI7O0lBQzNCLDJDQUFrQzs7SUFDbEMscUNBQTRCOztJQUU1Qix3Q0FBOEI7O0lBTzlCLHNDQUE2Qjs7SUFDN0IsdUNBQThCOztJQWtCOUIsMkNBQThFOztJQUM5RSwwQ0FBMEU7O0lBQzFFLDJDQUE0RTs7SUFDNUUsc0NBQTREOztJQUM1RCx3Q0FBZ0U7Ozs7O0lBQ2hFLHdDQUFnRDs7SUE0Q2hELHlDQUE0Qjs7SUFDNUIseUNBQTRCOzs7OztJQStCNUIsNkNBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIEhvc3RMaXN0ZW5lciwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QsIHBpcGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCwgdGFrZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGRlYm91bmNlVGltZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGgtbnVtYmVySW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbnVtYmVyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbnVtYmVyLWlucHV0LmNvbXBvbmVudC5jc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTnVtYmVySW5wdXRDb21wb25lbnQpLCBtdWx0aTogdHJ1ZSB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAvLycoYmx1ciknOidvblRvdWNoZWQoKScsXG4gICAgJ1tzdHlsZS53aWR0aF0nOiAnX3dpZHRoJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE51bWJlcklucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHJpdmF0ZSBudW1iZXJSZWcgPSAvXFxkKy9nO1xuICBzaG93SW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIF9mYWN0b3I6IG51bWJlciA9IDE7XG4gIF93aWR0aDogc3RyaW5nID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9IFwiXCI7XG4gIC8vQEhvc3RCaW5kaW5nKFwic3R5bGUud2lkdGhcIikgaG9zdFdpZHRoID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSB0YWJpbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgc2V0IGZhY3Rvcih2YWw6IG51bWJlcikge1xuICAgIHRoaXMuX2ZhY3RvciA9IE1hdGgucm91bmQodmFsKTtcbiAgfTtcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsO1xuICB9XG4gIEBJbnB1dCgpIHByZWZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgcG9zdGZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgc2V0IHdpZHRoKHZhbDogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgaWYgKHBhcnNlRmxvYXQodmFsLnRvU3RyaW5nKCkpKSB7XG4gICAgICB0aGlzLl93aWR0aCA9IGAke3ZhbH1weGA7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5fd2lkdGggPSB2YWwudG9TdHJpbmcoKTtcbiAgICB9XG4gIH07XG4gIEBJbnB1dChcInZhbHVlXCIpIHNldCB2YWx1ZSh2YWw6IG51bWJlcikge1xuXG4gICAgaWYgKHRoaXMuX2lucHV0ICYmIHZhbCkge1xuICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbCAqIHRoaXMuX2ZhY3RvcjtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rpc3BsYXkgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkodmFsICogdGhpcy5fZmFjdG9yKTtcbiAgICB9XG4gIH07XG4gIEBPdXRwdXQoXCJ2YWx1ZUNoYW5nZVwiKSB2YWx1ZU91dHB1dDogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoXCJibHVyXCIpIGJsdXJPdXRwdXQ6IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dChcImZvY3VzXCIpIGZvY3VzT3V0cHV0OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBWaWV3Q2hpbGQoXCJpbnB1dEN0clwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXQ6IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoXCJkaXNwbGF5Q3RyXCIsIHsgc3RhdGljOiB0cnVlIH0pIF9kaXNwbGF5OiBFbGVtZW50UmVmO1xuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuXG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuXG4gICAgZnJvbUV2ZW50PEZvY3VzRXZlbnQ+KHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudCwgXCJmb2N1c1wiKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUocyA9PiB7XG4gICAgICAgIC8vY29uc29sZS5sb2coXCJmb2N1c1wiLCBzKVxuICAgICAgICB0aGlzLnNob3dJbnB1dCA9IHRydWU7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxuICAgICAgICAgIHRoaXMub25Ub3VjaGVkKHMpO1xuICAgICAgICAgIHRoaXMuZm9jdXNPdXRwdXQuZW1pdChzKVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pih0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LCBcImlucHV0XCIpLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiaW5wdXRcIiwgcylcbiAgICAgICAgbGV0IHYgPSBwYXJzZUZsb2F0KHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpIC8gdGhpcy5fZmFjdG9yO1xuICAgICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkocGFyc2VGbG9hdCh0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKSB8fCBudWxsKTtcbiAgICAgICAgdGhpcy52YWx1ZU91dHB1dC5lbWl0KHYgfHwgbnVsbCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2VkKHYgfHwgbnVsbCk7XG4gICAgICB9KTtcblxuICAgIGZyb21FdmVudDxGb2N1c0V2ZW50Pih0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LCBcImJsdXJcIikucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIm1lcmdlZFwiLCBzKVxuICAgICAgICB0aGlzLnNob3dJbnB1dCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJsdXJPdXRwdXQuZW1pdChzKTtcbiAgICAgICAgLy8gdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgb25DaGFuZ2VkID0gKF86IGFueSkgPT4geyB9O1xuICBvblRvdWNoZWQgPSAoXzogYW55KSA9PiB7IH07XG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICBsZXQgX251bSA9IG51bGw7XG4gICAgaWYgKG9iaikge1xuICAgICAgaWYgKHR5cGVvZiBvYmogPT0gXCJudW1iZXJcIikge1xuICAgICAgICBfbnVtID0gb2JqIGFzIG51bWJlcjtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHR5cGVvZiBvYmogPT0gXCJzdHJpbmdcIikge1xuICAgICAgICBfbnVtID0gcGFyc2VGbG9hdChvYmopO1xuICAgICAgfVxuICAgICAgZWxzZSB7IHRocm93IFwiVW5hYmxlIHRvIGNhc3QgaW5wdXQgdG8gbnVtYmVyXCIgfVxuXG4gICAgICBpZiAodGhpcy5faW5wdXQpIHtcbiAgICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IChvYmogYXMgbnVtYmVyKSAqIHRoaXMuX2ZhY3RvcjtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLl9kaXNwbGF5KSB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0RGlzcGxheSgob2JqIGFzIG51bWJlcikgKiB0aGlzLl9mYWN0b3IpO1xuICAgICAgfVxuXG5cbiAgICB9XG4gIH1cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZWQgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG4gIHByaXZhdGUgZm9ybWF0RGlzcGxheSA9ICh2YWw6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyA9PiB7XG4gICAgcmV0dXJuIHZhbCA/IGAke3RoaXMucHJlZml4fSR7dmFsLnRvU3RyaW5nKCl9JHt0aGlzLnBvc3RmaXh9YCA6IFwiTnVsbFwiO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BsdWNhc2hlaWdodC9hbmd1bGFyLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsibGliL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBZ0IsU0FBUyxFQUE0QixVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdkssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFRLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQVEsb0JBQW9CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckY7SUF1REU7UUFBQSxpQkFBaUI7UUExQ1QsY0FBUyxHQUFHLE1BQU0sQ0FBQztRQUMzQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQixXQUFNLEdBQVcsU0FBUyxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLFVBQUssR0FBVyxFQUFFLENBQUM7O1FBRW5CLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFPckIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUNwQixZQUFPLEdBQVcsRUFBRSxDQUFDO1FBU3JCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFVUCxnQkFBVyxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3ZFLGVBQVUsR0FBNkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6RCxnQkFBVyxHQUE2QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3BFLGFBQVEsR0FBa0IsSUFBSSxPQUFPLEVB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QU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVTs7OzRCQUFDLGNBQU0sT0FBQSxvQkFBb0IsRUFBcEIsQ0FBb0IsRUFBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7cUJBQ2pHO29CQUNELElBQUksRUFBRTs7d0JBRUosZUFBZSxFQUFFLFFBQVE7cUJBQzFCOztpQkFDRjs7Ozs7OEJBT0UsS0FBSzt3QkFDTCxLQUFLOzJCQUVMLEtBQUs7eUJBQ0wsS0FBSzsyQkFHTCxLQUFLO3lCQUdMLEtBQUs7MEJBQ0wsS0FBSzt3QkFDTCxLQUFLOzJCQVFMLEtBQUs7d0JBQ0wsS0FBSyxTQUFDLE9BQU87OEJBU2IsTUFBTSxTQUFDLGFBQWE7NkJBQ3BCLE1BQU0sU0FBQyxNQUFNOzhCQUNiLE1BQU0sU0FBQyxPQUFPO3lCQUNkLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOzJCQUN0QyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7SUFnRjNDLDJCQUFDO0NBQUEsQUFwSUQsSUFvSUM7U0F4SFksb0JBQW9COzs7Ozs7SUFDL0IseUNBQTJCOztJQUMzQix5Q0FBMkI7O0lBQzNCLHlDQUEyQjs7SUFDM0IsdUNBQW9COztJQUNwQixzQ0FBMkI7O0lBQzNCLDJDQUFrQzs7SUFDbEMscUNBQTRCOztJQUU1Qix3Q0FBOEI7O0lBTzlCLHNDQUE2Qjs7SUFDN0IsdUNBQThCOztJQVM5Qix3Q0FBOEI7O0lBVTlCLDJDQUF1Rjs7SUFDdkYsMENBQTBFOztJQUMxRSwyQ0FBNEU7O0lBQzVFLHNDQUE0RDs7SUFDNUQsd0NBQWdFOzs7OztJQUNoRSx3Q0FBZ0Q7O0lBNENoRCx5Q0FBNEI7O0lBQzVCLHlDQUE0Qjs7Ozs7SUErQjVCLDZDQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBIb3N0TGlzdGVuZXIsIFZpZXdDaGlsZCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCBwaXBlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRha2UsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBkZWJvdW5jZVRpbWUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xoLW51bWJlcklucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE51bWJlcklucHV0Q29tcG9uZW50KSwgbXVsdGk6IHRydWUgfVxuICBdLFxuICBob3N0OiB7XG4gICAgLy8nKGJsdXIpJzonb25Ub3VjaGVkKCknLFxuICAgICdbc3R5bGUud2lkdGhdJzogJ193aWR0aCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgbnVtYmVyUmVnID0gL1xcZCsvZztcbiAgc2hvd0lucHV0OiBib29sZWFuID0gZmFsc2U7XG4gIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBfZmFjdG9yOiBudW1iZXIgPSAxO1xuICBfd2lkdGg6IHN0cmluZyA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPSBcIlwiO1xuICAvL0BIb3N0QmluZGluZyhcInN0eWxlLndpZHRoXCIpIGhvc3RXaWR0aCA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgdGFiaW5kZXg6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHNldCBmYWN0b3IodmFsOiBudW1iZXIpIHtcbiAgICB0aGlzLl9mYWN0b3IgPSBNYXRoLnJvdW5kKHZhbCk7XG4gIH07XG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWw6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbDtcbiAgfVxuICBASW5wdXQoKSBwcmVmaXg6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHBvc3RmaXg6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHNldCB3aWR0aCh2YWw6IG51bWJlciB8IHN0cmluZykge1xuICAgIGlmIChwYXJzZUZsb2F0KHZhbC50b1N0cmluZygpKSkge1xuICAgICAgdGhpcy5fd2lkdGggPSBgJHt2YWx9cHhgO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuX3dpZHRoID0gdmFsLnRvU3RyaW5nKCk7XG4gICAgfVxuICB9O1xuICBASW5wdXQoKSBkZWNpbWFsczogbnVtYmVyID0gMDtcbiAgQElucHV0KFwidmFsdWVcIikgc2V0IHZhbHVlKHZhbDogbnVtYmVyKSB7XG5cbiAgICBpZiAodGhpcy5faW5wdXQgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gKHZhbCAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rpc3BsYXkgJiYgdmFsKSB7XG4gICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdERpc3BsYXkoKHZhbCAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKSk7XG4gICAgfVxuICB9O1xuICBAT3V0cHV0KFwidmFsdWVDaGFuZ2VcIikgdmFsdWVPdXRwdXQ6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KFwiYmx1clwiKSBibHVyT3V0cHV0OiBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoXCJmb2N1c1wiKSBmb2N1c091dHB1dDogRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAVmlld0NoaWxkKFwiaW5wdXRDdHJcIiwgeyBzdGF0aWM6IHRydWUgfSkgX2lucHV0OiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKFwiZGlzcGxheUN0clwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBfZGlzcGxheTogRWxlbWVudFJlZjtcbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcblxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcblxuICAgIGZyb21FdmVudDxGb2N1c0V2ZW50Pih0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQsIFwiZm9jdXNcIikucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHMgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiZm9jdXNcIiwgcylcbiAgICAgICAgdGhpcy5zaG93SW5wdXQgPSB0cnVlO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgICAgICB0aGlzLm9uVG91Y2hlZChzKTtcbiAgICAgICAgICB0aGlzLmZvY3VzT3V0cHV0LmVtaXQocylcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4odGhpcy5faW5wdXQubmF0aXZlRWxlbWVudCwgXCJpbnB1dFwiKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgLnN1YnNjcmliZShzID0+IHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhcImlucHV0XCIsIHMpXG4gICAgICAgIGxldCB2ID0gKHBhcnNlRmxvYXQodGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkgLyB0aGlzLl9mYWN0b3IpO1xuICAgICAgICB0aGlzLl9kaXNwbGF5Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID8gdGhpcy5mb3JtYXREaXNwbGF5KHBhcnNlRmxvYXQodGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkudG9GaXhlZCh0aGlzLmRlY2ltYWxzKSkgOiBudWxsO1xuICAgICAgICB0aGlzLnZhbHVlT3V0cHV0LmVtaXQodiB8fCBudWxsKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZWQodiB8fCBudWxsKTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50PEZvY3VzRXZlbnQ+KHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQsIFwiYmx1clwiKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUocyA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwibWVyZ2VkXCIsIHMpXG4gICAgICAgIHRoaXMuc2hvd0lucHV0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYmx1ck91dHB1dC5lbWl0KHMpO1xuICAgICAgICAvLyB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBvbkNoYW5nZWQgPSAoXzogYW55KSA9PiB7IH07XG4gIG9uVG91Y2hlZCA9IChfOiBhbnkpID0+IHsgfTtcbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgIGxldCBfbnVtID0gbnVsbDtcbiAgICBpZiAob2JqKSB7XG4gICAgICBpZiAodHlwZW9mIG9iaiA9PSBcIm51bWJlclwiKSB7XG4gICAgICAgIF9udW0gPSBvYmogYXMgbnVtYmVyO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAodHlwZW9mIG9iaiA9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIF9udW0gPSBwYXJzZUZsb2F0KG9iaik7XG4gICAgICB9XG4gICAgICBlbHNlIHsgdGhyb3cgXCJVbmFibGUgdG8gY2FzdCBpbnB1dCB0byBudW1iZXJcIiB9XG5cbiAgICAgIGlmICh0aGlzLl9pbnB1dCkge1xuICAgICAgICB0aGlzLl9pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gKChvYmogYXMgbnVtYmVyKSAqIHRoaXMuX2ZhY3RvcikudG9GaXhlZCh0aGlzLmRlY2ltYWxzKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLl9kaXNwbGF5KSB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXkubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0RGlzcGxheSgoKG9iaiBhcyBudW1iZXIpICogdGhpcy5fZmFjdG9yKS50b0ZpeGVkKHRoaXMuZGVjaW1hbHMpKTtcbiAgICAgIH1cblxuXG4gICAgfVxuICB9XG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VkID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuICBwcml2YXRlIGZvcm1hdERpc3BsYXkgPSAodmFsOiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiB2YWwgPyBgJHt0aGlzLnByZWZpeH0ke3ZhbC50b1N0cmluZygpfSR7dGhpcy5wb3N0Zml4fWAgOiBcIk51bGxcIjtcbiAgfVxufVxuIl19

@@ -23,2 +23,3 @@ import { EventEmitter, Component, forwardRef, Input, Output, ViewChild, NgModule } from '@angular/core';

this.postfix = "";
this.decimals = 0;
this.valueOutput = new EventEmitter();

@@ -80,6 +81,6 @@ this.blurOutput = new EventEmitter();

if (this._input && val) {
this._input.nativeElement.value = val * this._factor;
this._input.nativeElement.value = (val * this._factor).toFixed(this.decimals);
}
if (this._display && val) {
this._display.nativeElement.value = this.formatDisplay(val * this._factor);
this._display.nativeElement.value = this.formatDisplay((val * this._factor).toFixed(this.decimals));
}

@@ -122,4 +123,4 @@ }

/** @type {?} */
let v = parseFloat(this._input.nativeElement.value) / this._factor;
this._display.nativeElement.value = this.formatDisplay(parseFloat(this._input.nativeElement.value) || null);
let v = (parseFloat(this._input.nativeElement.value) / this._factor);
this._display.nativeElement.value = this._input.nativeElement.value ? this.formatDisplay(parseFloat(this._input.nativeElement.value).toFixed(this.decimals)) : null;
this.valueOutput.emit(v || null);

@@ -158,6 +159,6 @@ this.onChanged(v || null);

if (this._input) {
this._input.nativeElement.value = ((/** @type {?} */ (obj))) * this._factor;
this._input.nativeElement.value = (((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals);
}
if (this._display) {
this._display.nativeElement.value = this.formatDisplay(((/** @type {?} */ (obj))) * this._factor);
this._display.nativeElement.value = this.formatDisplay((((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals));
}

@@ -216,2 +217,3 @@ }

width: [{ type: Input }],
decimals: [{ type: Input }],
value: [{ type: Input, args: ["value",] }],

@@ -218,0 +220,0 @@ valueOutput: [{ type: Output, args: ["valueChange",] }],

@@ -24,2 +24,3 @@ import { Component, forwardRef, Input, Output, ViewChild, EventEmitter, NgModule } from '@angular/core';

this.postfix = "";
this.decimals = 0;
this.valueOutput = new EventEmitter();

@@ -92,6 +93,6 @@ this.blurOutput = new EventEmitter();

if (this._input && val) {
this._input.nativeElement.value = val * this._factor;
this._input.nativeElement.value = (val * this._factor).toFixed(this.decimals);
}
if (this._display && val) {
this._display.nativeElement.value = this.formatDisplay(val * this._factor);
this._display.nativeElement.value = this.formatDisplay((val * this._factor).toFixed(this.decimals));
}

@@ -143,4 +144,4 @@ },

/** @type {?} */
var v = parseFloat(_this._input.nativeElement.value) / _this._factor;
_this._display.nativeElement.value = _this.formatDisplay(parseFloat(_this._input.nativeElement.value) || null);
var v = (parseFloat(_this._input.nativeElement.value) / _this._factor);
_this._display.nativeElement.value = _this._input.nativeElement.value ? _this.formatDisplay(parseFloat(_this._input.nativeElement.value).toFixed(_this.decimals)) : null;
_this.valueOutput.emit(v || null);

@@ -186,6 +187,6 @@ _this.onChanged(v || null);

if (this._input) {
this._input.nativeElement.value = ((/** @type {?} */ (obj))) * this._factor;
this._input.nativeElement.value = (((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals);
}
if (this._display) {
this._display.nativeElement.value = this.formatDisplay(((/** @type {?} */ (obj))) * this._factor);
this._display.nativeElement.value = this.formatDisplay((((/** @type {?} */ (obj))) * this._factor).toFixed(this.decimals));
}

@@ -255,2 +256,3 @@ }

width: [{ type: Input }],
decimals: [{ type: Input }],
value: [{ type: Input, args: ["value",] }],

@@ -257,0 +259,0 @@ valueOutput: [{ type: Output, args: ["valueChange",] }],

@@ -17,4 +17,5 @@ import { OnInit, OnDestroy, AfterViewInit, ElementRef, EventEmitter } from '@angular/core';

width: number | string;
decimals: number;
value: number;
valueOutput: EventEmitter<number>;
valueOutput: EventEmitter<number | string>;
blurOutput: EventEmitter<FocusEvent>;

@@ -21,0 +22,0 @@ focusOutput: EventEmitter<FocusEvent>;

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

{"__symbolic":"module","version":4,"metadata":{"NumberInputComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lh-numberInput","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":12,"character":15},"useExisting":{"__symbolic":"reference","name":"NumberInputComponent"},"multi":true}],"host":{"[style.width]":"_width","$quoted$":["[style.width]"]},"template":"<span class=\"lh-wrapper\">\n <input #inputCtr [disabled]=\"_disabled\" class=\"lh-input\" [type]=\"showInput?'number':'hidden'\" [tabindex]=\"tabindex\" />\n <input #displayCtr [disabled]=\"_disabled\" [title]=\"title\" [placeholder]=\"placeholder\" class=\"lh-display\" [type]=\"showInput?'hidden':'text'\" [tabindex]=\"tabindex\" /> \n</span>\n","styles":[":host{padding:0 7px 0 1px;display:block}.lh-wrapper{padding:2px;display:inline-block;width:100%}input{width:100%;display:inline-block;padding:.375em;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;border-radius:.25rem;border:1px solid rgba(33,37,41,.15)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none}"]}]}],"members":{"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"factor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"prefix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"postfix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3},"arguments":["value"]}]}],"valueOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3},"arguments":["valueChange"]}]}],"blurOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3},"arguments":["blur"]}]}],"focusOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3},"arguments":["focus"]}]}],"_input":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":57,"character":3},"arguments":["inputCtr",{"static":true}]}]}],"_display":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":58,"character":3},"arguments":["displayCtr",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}]}},"LhControlsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NumberInputComponent"}],"imports":[],"exports":[{"__symbolic":"reference","name":"NumberInputComponent"}]}]}],"members":{}}},"origins":{"NumberInputComponent":"./lib/number-input/number-input.component","LhControlsModule":"./lib/lh-controls.module"},"importAs":"@lucasheight/angular-controls"}
{"__symbolic":"module","version":4,"metadata":{"NumberInputComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lh-numberInput","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":12,"character":15},"useExisting":{"__symbolic":"reference","name":"NumberInputComponent"},"multi":true}],"host":{"[style.width]":"_width","$quoted$":["[style.width]"]},"template":"<span class=\"lh-wrapper\">\n <input #inputCtr [disabled]=\"_disabled\" class=\"lh-input\" [type]=\"showInput?'number':'hidden'\" [tabindex]=\"tabindex\" />\n <input #displayCtr [disabled]=\"_disabled\" [title]=\"title\" [placeholder]=\"placeholder\" class=\"lh-display\" [type]=\"showInput?'hidden':'text'\" [tabindex]=\"tabindex\" /> \n</span>\n","styles":[":host{padding:0 7px 0 1px;display:block}.lh-wrapper{padding:2px;display:inline-block;width:100%}input{width:100%;display:inline-block;padding:.375em;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;border-radius:.25rem;border:1px solid rgba(33,37,41,.15)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none}"]}]}],"members":{"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"factor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"prefix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"postfix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"decimals":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":3},"arguments":["value"]}]}],"valueOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3},"arguments":["valueChange"]}]}],"blurOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3},"arguments":["blur"]}]}],"focusOutput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3},"arguments":["focus"]}]}],"_input":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":58,"character":3},"arguments":["inputCtr",{"static":true}]}]}],"_display":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":59,"character":3},"arguments":["displayCtr",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}]}},"LhControlsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NumberInputComponent"}],"imports":[],"exports":[{"__symbolic":"reference","name":"NumberInputComponent"}]}]}],"members":{}}},"origins":{"NumberInputComponent":"./lib/number-input/number-input.component","LhControlsModule":"./lib/lh-controls.module"},"importAs":"@lucasheight/angular-controls"}
{
"name": "@lucasheight/angular-controls",
"version": "0.0.12",
"version": "0.0.13",
"author": {

@@ -5,0 +5,0 @@ "name": "Lynden Garrett",

@@ -10,2 +10,3 @@ # Angular-controls

* Supports template and reactive forms.
* Attributes for title, placeholder, disabled and decimals.

@@ -21,5 +22,8 @@ ### Installation

`import {LhControlsModule} from "@lucasheight/angular-controls"`
```javascript
import {LhControlsModule} from "@lucasheight/angular-controls"
```
`@NgModule({
```javascript
@NgModule({
imports:[

@@ -29,7 +33,10 @@ LhControlsModule

})
export class AppModule{}`
export class AppModule{}
```
Add the control in you template:
`<lh-numberInput factor="1" prefix="$" postfix=" AUD" (valueChange)="onChange($event)" (focus)="onFocus($event)"
(blur)="onBlur($event)" width="100" [(value)]="val"></lh-numberInput>`
```html
<lh-numberInput factor="1" decimals="2" title="Hello numbers" placeholder="Please enter" prefix="$" postfix=" AUD" (valueChange)="onChange($event)" (focus)="onFocus($event)"
(blur)="onBlur($event)" width="100" [(value)]="val"></lh-numberInput>
```

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

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