{"__symbolic":"module","version":4,"metadata":{"NumberSpinnerService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"NumberFormatter":{"__symbolic":"interface"},"NumberSpinnerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":31,"character":1},"arguments":[{"selector":"farris-number-spinner","template":"\n        <div class=\"input-group  f-state-hover flex-row\"\n            [ngClass]=\"{'f-state-disabled': disabled,'f-state-readonly': readonly,'f-state-focus': isFocus }\"\n            (mouseenter)=\"onMouseEnter($event)\"\n            #popover=\"bs-popover\"\n            farrisPopover\n            [popover]=\"popValue\" [triggers]=\"'hover'\" [popActive]=\"isActiveTip\"\n            [showAction]=\"'show2'\"  [container]=\"'body'\">\n            <input #input\n                type=\"text\"\n                number-only\n                [precision]=\"precision\"\n                autocomplete=\"off\"\n                class=\"form-control f-utils-fill\"\n                [ngModel]=\"value\"\n                [placeholder]=\"disabled||readonly || !editable?'':placeholder\"\n                [readonly]=\"readonly || !editable\"\n                [disabled]=\"disabled\"\n                [style.padding-right]=\"'4px'\"\n                [style.text-align]=\"textAlign\"\n                (ngModelChange)=\"onModelChange($event)\"\n                (blur)=\"onBlur(input)\"\n                (focus)=\"onFocus($event)\"\n                (keydown)=\"onKeyDown($event)\"\n                (click)=\"onClick($event)\"\n            />\n            <div class=\"input-group-append btn-group btn-group-number btn-number-flag m-0\" *ngIf=\"!disabled && !readonly && showButton\">\n                <span class=\"icon k-i-arrow-chevron-up number-arrow-chevron\" [class.not-allowed]=\"!isDisableOfBtn('up')\"\n                        (click)=\"up($event)\"></span>\n                <span class=\"icon k-i-arrow-chevron-down number-arrow-chevron\" [class.not-allowed]=\"!isDisableOfBtn('down')\"\n                        (click)=\"down($event)\"></span>\n                \n            </div>\n        </div>\n    ","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":71,"character":21},"useExisting":{"__symbolic":"reference","name":"NumberSpinnerComponent"},"multi":true}],"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":76,"character":19},"member":"None"},"styles":[".f-table-has-form .btn-group-number.btn-number-flag{border:none}.f-table-has-form .btn-group-number.btn-number-flag .number-arrow-chevron{border:0!important}.input-group .btn-group-number{height:1.50003rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;background-color:#fff;border-left:1px solid #d9d9d9;width:1.50003rem}.input-group .btn-group-number .number-arrow-chevron{-webkit-box-flex:1;flex:1;line-height:1;height:50%;text-align:center;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.input-group .btn-group-number .number-arrow-chevron.not-allowed{cursor:not-allowed;background:#efefef}.input-group .btn-group-number .number-arrow-chevron:active{background-color:#e6e9f0}.input-group .btn-group-number .number-arrow-chevron:nth-child(2){border-top:1px solid #d9d9d9}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0}.number-range{position:relative}.number-range .input-container{display:-webkit-box;display:flex;padding:0}.number-range .input-container .sub-input-group{-webkit-box-flex:1;flex:1;position:relative;display:-webkit-box;display:flex;-webkit-transition:.3s ease-out;transition:.3s ease-out}.number-range .input-container .sub-input-group .sub-input{width:100%;border:none;outline:0;background-color:rgba(0,0,0,0);min-width:2px;padding:.125rem 4px .125rem .5rem}.number-range .input-container .spliter{width:15px;text-align:center}"]}]}],"members":{"hostClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":79,"character":5},"arguments":["class.f-cmp-number-spinner"]}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":80,"character":5}}]}],"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":81,"character":5}}]}],"editable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":82,"character":5}}]}],"formatter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":84,"character":5}}]}],"parser":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":86,"character":5}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":88,"character":5}}]}],"step":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":90,"character":5}}]}],"max":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":92,"character":5}}]}],"min":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":94,"character":5}}]}],"bigNumber":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":97,"character":5}}]}],"showButton":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":100,"character":5}}]}],"useThousands":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":102,"character":5}}]}],"textAlign":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":104,"character":5}}]}],"autoDecimal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":106,"character":5}}]}],"canNull":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":108,"character":5}}]}],"precision":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":110,"character":5}}]}],"prefix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":112,"character":5}}]}],"suffix":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":114,"character":5}}]}],"decimalSeparator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":5}}]}],"groupSeparator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":118,"character":5}}]}],"groupSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":120,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":123,"character":5}}]}],"showZero":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":132,"character":5}}]}],"valueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":134,"character":5}}]}],"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":5}}]}],"focus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":136,"character":5}}]}],"input":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":138,"character":5},"arguments":["input"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":155,"character":27},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":155,"character":54},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":155,"character":82}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"onOptionsChanged":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"listenInputPasteEvent":[{"__symbolic":"method"}],"onBlur":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method"}],"onFocus":[{"__symbolic":"method"}],"onMouseEnter":[{"__symbolic":"method"}],"onKeyDown":[{"__symbolic":"method"}],"_modelChanged":[{"__symbolic":"method"}],"onModelChange":[{"__symbolic":"method"}],"up":[{"__symbolic":"method"}],"down":[{"__symbolic":"method"}],"compute":[{"__symbolic":"method"}],"isDisableOfBtn":[{"__symbolic":"method"}],"isShowPopover":[{"__symbolic":"method"}],"_getPrecision":[{"__symbolic":"method"}],"toFixed":[{"__symbolic":"method"}],"_getRealValue":[{"__symbolic":"method"}],"getRealValue":[{"__symbolic":"method"}],"buildFormatOptions":[{"__symbolic":"method"}],"isEmpty":[{"__symbolic":"method"}],"validInterval":[{"__symbolic":"method"}],"format":[{"__symbolic":"method"}],"_toFormat":[{"__symbolic":"method"}],"cleanNumString":[{"__symbolic":"method"}],"updateValue":[{"__symbolic":"method"}],"updateControlValue":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}]}},"NumberSpinnerModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NumberSpinnerComponent"},{"__symbolic":"reference","name":"NumberOnlyDirective"},{"__symbolic":"reference","name":"NumberRangeComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":14,"character":8},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":14,"character":22},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@farris/ui-popover","name":"PopoverModule","line":15,"character":8},"member":"forRoot"}},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@farris/ui-locale","name":"LocaleModule","line":16,"character":8},"member":"forRoot"}}],"exports":[{"__symbolic":"reference","name":"NumberSpinnerComponent"},{"__symbolic":"reference","name":"NumberOnlyDirective"},{"__symbolic":"reference","name":"NumberRangeComponent"}]}]}],"members":{}},"NumberOnlyDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[number-only]"}]}],"members":{"precision":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":11,"character":33}]}],"onKeyDown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":13,"character":5},"arguments":["keydown",["$event"]]}]}],"getSelectionValue":[{"__symbolic":"method"}]}},"NumberRangeComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"NumberSpinnerComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"farris-number-range","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":19,"character":21},"useExisting":{"__symbolic":"reference","name":"NumberRangeComponent"},"multi":true}],"template":"<div\r\n    class=\"input-group number-range f-cmp-number-spinner\"\r\n    [ngClass]=\"{\r\n        'f-state-disabled': disabled,\r\n        'f-state-readonly': readonly\r\n    }\"\r\n    (click)=\"$event.stopPropagation()\" (mouseenter)=\"onMouseEnter($event)\"\r\n>\r\n    <div class=\"form-control input-container\"\r\n        #popover=\"bs-popover\"\r\n        farrisPopover\r\n        [popover]=\"popValue\"\r\n        [triggers]=\"'hover'\"\r\n        [popActive]=\"isActiveTip\"\r\n        [showAction]=\"'show2'\"\r\n        [container]=\"'body'\"\r\n    >\r\n        <div class=\"sub-input-group\" #prevWrapper>\r\n            <input\r\n                type=\"text\"\r\n                number-only\r\n                [precision]=\"precision\"\r\n                autocomplete=\"off\"\r\n                class=\"sub-input form-control f-state-focus f-state-hover\"\r\n                [(ngModel)]=\"prevValue\"\r\n                #inputPrev\r\n                (blur)=\"onBlur(inputPrev, 'begin')\"\r\n                (focus)=\"onFocus('begin')\"\r\n                (ngModelChange)=\"onModelChange($event, 'begin')\"\r\n                [placeholder]=\"disabled || readonly ?'':beginPlaceHolder\"\r\n                [readOnly]=\"disabled || readonly ? 'readonly' : ''\"\r\n                [style.text-align]=\"textAlign\"\r\n                (keydown)=\"onKeyDownRange($event, 'begin')\"\r\n                (click)=\"onClick($event)\"\r\n            />\r\n            <div class=\"input-group-append btn-group btn-group-number sub-btn-group btn-number-flag\" *ngIf=\"!readonly && !disabled && showButton\">\r\n                <span class=\"icon k-i-arrow-chevron-up number-arrow-chevron\" [class.not-allowed]=\"!isDisableOfBtn('up', prevValue)\"\r\n                    (click)=\"up($event, 'begin')\"></span>\r\n                <span class=\"icon k-i-arrow-chevron-down number-arrow-chevron\" [class.not-allowed]=\"!isDisableOfBtn('down', prevValue)\"\r\n                    (click)=\"down($event, 'begin')\"></span>\r\n            </div>\r\n        </div>\r\n        <span class=\"spliter\">~</span>\r\n        <div class=\"sub-input-group\" #nextWrapper>\r\n            <input\r\n                type=\"text\"\r\n                number-only\r\n                [precision]=\"precision\"\r\n                autocomplete=\"off\"\r\n                class=\"sub-input form-control f-state-focus f-state-hover\"\r\n                [(ngModel)]=\"nextValue\"\r\n                #inputNext\r\n                (blur)=\"onBlur(inputNext, 'end')\"\r\n                (focus)=\"onFocus('end')\"\r\n                (ngModelChange)=\"onModelChange($event, 'end')\"\r\n                [placeholder]=\"disabled || readonly ?'':endPlaceHolder\"\r\n                [readOnly]=\"disabled || readonly ? 'readonly' : ''\"\r\n                [style.text-align]=\"textAlign\"\r\n                (keydown)=\"onKeyDownRange($event, 'end')\"\r\n                (click)=\"onClick($event)\"\r\n            />\r\n            <div class=\"input-group-append btn-group btn-group-number sub-btn-group btn-number-flag\" *ngIf=\"!readonly && !disabled  && showButton\"[style.text-align]=\"textAlign\" style=\"border-right:0\">\r\n                <span class=\"icon k-i-arrow-chevron-up number-arrow-chevron\"  [class.not-allowed]=\"isDisableOfBtn('up', prevValue)\" (click)=\"up($event, 'end')\"></span>\r\n                <span class=\"icon k-i-arrow-chevron-down number-arrow-chevron\" [class.not-allowed]=\"isDisableOfBtn('up', prevValue)\" (click)=\"down($event, 'end')\"></span>\r\n            </div>\r\n        </div>\r\n    </div>\r\n</div>\r\n","styles":[".f-table-has-form .btn-group-number.btn-number-flag{border:none}.f-table-has-form .btn-group-number.btn-number-flag .number-arrow-chevron{border:0!important}.input-group .btn-group-number{height:1.50003rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;background-color:#fff;border-left:1px solid #d9d9d9;width:1.50003rem}.input-group .btn-group-number .number-arrow-chevron{-webkit-box-flex:1;flex:1;line-height:1;height:50%;text-align:center;cursor:pointer;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.input-group .btn-group-number .number-arrow-chevron.not-allowed{cursor:not-allowed;background:#efefef}.input-group .btn-group-number .number-arrow-chevron:active{background-color:#e6e9f0}.input-group .btn-group-number .number-arrow-chevron:nth-child(2){border-top:1px solid #d9d9d9}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0}.number-range{position:relative}.number-range .input-container{display:-webkit-box;display:flex;padding:0}.number-range .input-container .sub-input-group{-webkit-box-flex:1;flex:1;position:relative;display:-webkit-box;display:flex;-webkit-transition:.3s ease-out;transition:.3s ease-out}.number-range .input-container .sub-input-group .sub-input{width:100%;border:none;outline:0;background-color:rgba(0,0,0,0);min-width:2px;padding:.125rem 4px .125rem .5rem}.number-range .input-container .spliter{width:15px;text-align:center}"]}]}],"members":{"beginPlaceHolder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":5}}]}],"endPlaceHolder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":5}}]}],"inputPrev":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":30,"character":5},"arguments":["inputPrev"]}]}],"inputNext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":31,"character":5},"arguments":["inputNext"]}]}],"prevWrapper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":32,"character":5},"arguments":["prevWrapper"]}]}],"nextWrapper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":33,"character":5},"arguments":["nextWrapper"]}]}],"popover":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":34,"character":5},"arguments":["popover"]}]}],"separator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":5}}]}],"beginValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":5}}]}],"endValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":53,"character":5}}]}],"beginValueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":5}}]}],"endValueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":5}}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"initPlaceHolderInfo":[{"__symbolic":"method"}],"getRangeValue":[{"__symbolic":"method"}],"getEndValue":[{"__symbolic":"method"}],"getBeginValue":[{"__symbolic":"method"}],"getRealValue":[{"__symbolic":"method"}],"onModelChange":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method"}],"onBlur":[{"__symbolic":"method"}],"onFocus":[{"__symbolic":"method"}],"expendWidth":[{"__symbolic":"method"}],"onMouseEnter":[{"__symbolic":"method"}],"isShowPopover":[{"__symbolic":"method"}],"onKeyDownRange":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}],"up":[{"__symbolic":"method"}],"down":[{"__symbolic":"method"}],"_compute":[{"__symbolic":"method"}]}}},"origins":{"NumberSpinnerService":"./lib/number-spinner.service","NumberFormatter":"./lib/number-spinner.component","NumberSpinnerComponent":"./lib/number-spinner.component","NumberSpinnerModule":"./lib/number-spinner.module","NumberOnlyDirective":"./lib/number-only-directive","NumberRangeComponent":"./lib/number-range.component"},"importAs":"@farris/ui-number-spinner"}