UNPKG

ftable

Version:
102 lines 12.8 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component } from '@angular/core'; import { EventEmitter } from '@angular/core'; import { Output } from '@angular/core'; import { Input } from '@angular/core'; import { ViewChild, ElementRef } from '@angular/core'; var NumberFFilterComponent = /** @class */ (function () { function NumberFFilterComponent() { this.filter = new EventEmitter(); // Hold Inputted Values this.min = null; this.max = null; } /** * @param {?} mode * @param {?} event * @return {?} */ NumberFFilterComponent.prototype.numberKeyUp = /** * @param {?} mode * @param {?} event * @return {?} */ function (mode, event) { if (event.keyCode !== 8 && event.keyCode !== 46) { this[mode] = event.target.value; // Move focus for UX if (mode === 'min' && event.keyCode === 39) { this._elMaxRef.nativeElement.focus(); } else if (mode === 'max' && event.keyCode === 39) { this._elMinRef.nativeElement.focus(); } } if (this.source === 'frontend') { /** @type {?} */ var fn = function (name, searchMin, searchMax) { return function (d) { return ((/** @type {?} */ (d))).filter(function (x) { return (searchMin ? searchMin <= Number(x[name]) : true) && (searchMax ? searchMax >= Number(x[name]) : true); }); }; }; this.filter.emit({ columnName: this.columnName, apply: fn(this.columnName, this.min, this.max) }); } else { /** @type {?} */ var result = { min: this.min, max: this.max }; this.filter.emit({ columnName: this.columnName, type: 'number', apply: result }); } }; /** * @return {?} */ NumberFFilterComponent.prototype.reset = /** * @return {?} */ function () { this.min = null; this.max = null; this.filter.emit({ columnName: this.columnName, apply: null }); }; NumberFFilterComponent.decorators = [ { type: Component, args: [{ template: "\n <table class='ft-ffilter-table'>\n <tr class='ft-ffilter-column'>\n <td class='ft-ffilter-row'>\n <input class=\"ft-i ft-i-ffilter ft-i-min\" type=\"number\" placeholder='>=' [(ngModel)]='min' (keyup)='numberKeyUp(\"min\",$event)' #minRef >\n </td>\n </tr>\n <tr class='ft-ffilter-column'>\n <td class='ft-ffilter-row'>\n <input class=\"ft-i ft-i-ffilter ft-i-max\" type=\"number\" placeholder='<=' [(ngModel)]='max' (keyup)='numberKeyUp(\"max\",$event)' #maxRef >\n </td>\n </tr>\n</table>\n\n <!--\n <div class=\"ft-ffilter\">\n <div class=\"ft-div1-ffilter\">\n <div class=\"ft-ffilter-prepend\">\n <span class=\"ft-ffilter-text\">&gt;=</span>\n </div>\n <input class=\"ft-i ft-i-ffilter ft-i-min\" type=\"number\" [(ngModel)]='min' (keyup)='numberKeyUp(\"min\",$event)' #minRef >\n <div class=\"ft-ffilter-append\">\n <span class=\"ft-ffilter-text\">&lt;=</span>\n </div>\n </div>\n\n <div class=\"ft-div2-ffilter\">\n <div class=\"ft-ffilter-prepend\">\n <span class=\"ft-filter-text\">&lt;=</span>\n </div>\n <input class=\"ft-i ft-i-filter ft-i-max\" type=\"number\" [(ngModel)]='max' (keyup)='numberKeyUp(\"max\",$event)' #maxRef >\n <div class=\"ft-ffilter-append\">\n <span class=\"ft-filter-text\">&gt;=</span>\n </div>\n </div>\n </div>\n -->\n ", styles: ["\n :host { flex:1;\n }"] }] } ]; NumberFFilterComponent.propDecorators = { _elMinRef: [{ type: ViewChild, args: ["minRef",] }], _elMaxRef: [{ type: ViewChild, args: ["maxRef",] }], source: [{ type: Input }], otherData: [{ type: Input }], columnName: [{ type: Input }], filter: [{ type: Output }] }; return NumberFFilterComponent; }()); export { NumberFFilterComponent }; if (false) { /** @type {?} */ NumberFFilterComponent.prototype._elMinRef; /** @type {?} */ NumberFFilterComponent.prototype._elMaxRef; /** @type {?} */ NumberFFilterComponent.prototype.source; /** @type {?} */ NumberFFilterComponent.prototype.otherData; /** @type {?} */ NumberFFilterComponent.prototype.columnName; /** @type {?} */ NumberFFilterComponent.prototype.filter; /** @type {?} */ NumberFFilterComponent.prototype.min; /** @type {?} */ NumberFFilterComponent.prototype.max; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyZmZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9mdGFibGUvIiwic291cmNlcyI6WyJsaWIvZmZpbHRlci9maWx0ZXJzL251bWJlcmZmaWx0ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3REO0lBQUE7UUFtRFksV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDOztRQUd2RCxRQUFHLEdBQVcsSUFBSSxDQUFDO1FBQ25CLFFBQUcsR0FBVyxJQUFJLENBQUM7SUFvQzVCLENBQUM7Ozs7OztJQWxDQyw0Q0FBVzs7Ozs7SUFBWCxVQUFZLElBQVksRUFBRSxLQUFLO1FBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBRWhDLG9CQUFvQjtZQUNwQixJQUFJLElBQUksS0FBSyxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ3RDO2lCQUNJLElBQUksSUFBSSxLQUFLLEtBQUssSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDdEM7U0FDRjtRQUVDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQUU7O2dCQUN4QixFQUFFLEdBQUcsVUFBVSxJQUFJLEVBQUUsU0FBUyxFQUFFLFNBQVM7Z0JBQzdDLE9BQU8sVUFBQSxDQUFDO29CQUNOLE9BQU8sQ0FBQyxtQkFBTyxDQUFDLEVBQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUM7d0JBQ3hCLE9BQUEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzs0QkFDakQsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFEakQsQ0FDaUQsQ0FDbEQsQ0FBQztnQkFDSixDQUFDLENBQUM7WUFDSixDQUFDO1lBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25HO2FBQU07O2dCQUNELE1BQU0sR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztTQUNsRjtJQUNMLENBQUM7Ozs7SUFFRCxzQ0FBSzs7O0lBQUw7UUFDRSxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNoQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7O2dCQTFGRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGc0Q0FxQ1Q7NkJBQ1EsMEJBRVA7aUJBQ0g7Ozs0QkFFRSxTQUFTLFNBQUMsUUFBUTs0QkFDbEIsU0FBUyxTQUFDLFFBQVE7eUJBRWxCLEtBQUs7NEJBQ0wsS0FBSzs2QkFDTCxLQUFLO3lCQUVMLE1BQU07O0lBd0NULDZCQUFDO0NBQUEsQUEzRkQsSUEyRkM7U0FoRFksc0JBQXNCOzs7SUFDakMsMkNBQTJDOztJQUMzQywyQ0FBMkM7O0lBRTNDLHdDQUErQjs7SUFDL0IsMkNBQStCOztJQUMvQiw0Q0FBbUM7O0lBRW5DLHdDQUE4RDs7SUFHOUQscUNBQTBCOztJQUMxQixxQ0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEZGaWx0ZXJCYXNlIH0gZnJvbSAnLi9mZmlsdGVyLmJhc2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiBgXHJcbiAgPHRhYmxlIGNsYXNzPSdmdC1mZmlsdGVyLXRhYmxlJz5cclxuICA8dHIgY2xhc3M9J2Z0LWZmaWx0ZXItY29sdW1uJz5cclxuICAgICAgPHRkIGNsYXNzPSdmdC1mZmlsdGVyLXJvdyc+XHJcbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmdC1pIGZ0LWktZmZpbHRlciBmdC1pLW1pblwiIHR5cGU9XCJudW1iZXJcIiAgcGxhY2Vob2xkZXI9Jz49JyBbKG5nTW9kZWwpXT0nbWluJyAoa2V5dXApPSdudW1iZXJLZXlVcChcIm1pblwiLCRldmVudCknICNtaW5SZWYgPlxyXG4gICAgICA8L3RkPlxyXG4gIDwvdHI+XHJcbiAgPHRyIGNsYXNzPSdmdC1mZmlsdGVyLWNvbHVtbic+XHJcbiAgICAgIDx0ZCBjbGFzcz0nZnQtZmZpbHRlci1yb3cnPlxyXG4gICAgICAgICAgPGlucHV0IGNsYXNzPVwiZnQtaSBmdC1pLWZmaWx0ZXIgZnQtaS1tYXhcIiB0eXBlPVwibnVtYmVyXCIgIHBsYWNlaG9sZGVyPSc8PScgWyhuZ01vZGVsKV09J21heCcgKGtleXVwKT0nbnVtYmVyS2V5VXAoXCJtYXhcIiwkZXZlbnQpJyAjbWF4UmVmID5cclxuICAgICAgPC90ZD5cclxuICA8L3RyPlxyXG48L3RhYmxlPlxyXG5cclxuICA8IS0tXHJcbiAgPGRpdiBjbGFzcz1cImZ0LWZmaWx0ZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmdC1kaXYxLWZmaWx0ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZ0LWZmaWx0ZXItcHJlcGVuZFwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJmdC1mZmlsdGVyLXRleHRcIj4mZ3Q7PTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxpbnB1dCBjbGFzcz1cImZ0LWkgZnQtaS1mZmlsdGVyIGZ0LWktbWluXCIgdHlwZT1cIm51bWJlclwiICBbKG5nTW9kZWwpXT0nbWluJyAoa2V5dXApPSdudW1iZXJLZXlVcChcIm1pblwiLCRldmVudCknICNtaW5SZWYgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZnQtZmZpbHRlci1hcHBlbmRcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnQtZmZpbHRlci10ZXh0XCI+Jmx0Oz08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImZ0LWRpdjItZmZpbHRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZnQtZmZpbHRlci1wcmVwZW5kXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmdC1maWx0ZXItdGV4dFwiPiZsdDs9PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGlucHV0IGNsYXNzPVwiZnQtaSBmdC1pLWZpbHRlciBmdC1pLW1heFwiIHR5cGU9XCJudW1iZXJcIiAgWyhuZ01vZGVsKV09J21heCcgKGtleXVwKT0nbnVtYmVyS2V5VXAoXCJtYXhcIiwkZXZlbnQpJyAjbWF4UmVmID5cclxuICAgICAgPGRpdiBjbGFzcz1cImZ0LWZmaWx0ZXItYXBwZW5kXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmdC1maWx0ZXItdGV4dFwiPiZndDs9PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIC0tPlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gIDpob3N0IHsgZmxleDoxO1xyXG4gIH1gXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTnVtYmVyRkZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEZGaWx0ZXJCYXNlIHtcclxuICBAVmlld0NoaWxkKFwibWluUmVmXCIpIF9lbE1pblJlZjogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKFwibWF4UmVmXCIpIF9lbE1heFJlZjogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNvdXJjZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBvdGhlckRhdGE6IGFueTtcclxuICBASW5wdXQoKSBwdWJsaWMgY29sdW1uTmFtZTogc3RyaW5nO1xyXG5cclxuICBAT3V0cHV0KCkgZmlsdGVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAvLyBIb2xkIElucHV0dGVkIFZhbHVlc1xyXG4gIHB1YmxpYyBtaW46IG51bWJlciA9IG51bGw7XHJcbiAgcHVibGljIG1heDogbnVtYmVyID0gbnVsbDtcclxuXHJcbiAgbnVtYmVyS2V5VXAobW9kZTogc3RyaW5nLCBldmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmtleUNvZGUgIT09IDggJiYgZXZlbnQua2V5Q29kZSAhPT0gNDYpIHtcclxuICAgICAgdGhpc1ttb2RlXSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcclxuXHJcbiAgICAgIC8vIE1vdmUgZm9jdXMgZm9yIFVYXHJcbiAgICAgIGlmIChtb2RlID09PSAnbWluJyAmJiBldmVudC5rZXlDb2RlID09PSAzOSkge1xyXG4gICAgICAgIHRoaXMuX2VsTWF4UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChtb2RlID09PSAnbWF4JyAmJiBldmVudC5rZXlDb2RlID09PSAzOSkge1xyXG4gICAgICAgIHRoaXMuX2VsTWluUmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICAgaWYgKHRoaXMuc291cmNlID09PSAnZnJvbnRlbmQnKSB7XHJcbiAgICAgICAgY29uc3QgZm4gPSBmdW5jdGlvbiAobmFtZSwgc2VhcmNoTWluLCBzZWFyY2hNYXgpIHtcclxuICAgICAgICAgIHJldHVybiBkID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuICg8YW55W10+ZCkuZmlsdGVyKHggPT5cclxuICAgICAgICAgICAgICAoc2VhcmNoTWluID8gc2VhcmNoTWluIDw9IE51bWJlcih4W25hbWVdKSA6IHRydWUpICYmXHJcbiAgICAgICAgICAgICAgKHNlYXJjaE1heCA/IHNlYXJjaE1heCA+PSBOdW1iZXIoeFtuYW1lXSkgOiB0cnVlKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLmVtaXQoeyBjb2x1bW5OYW1lOiB0aGlzLmNvbHVtbk5hbWUsIGFwcGx5OiBmbih0aGlzLmNvbHVtbk5hbWUsIHRoaXMubWluLCB0aGlzLm1heCkgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdmFyIHJlc3VsdCA9IHsgbWluOiB0aGlzLm1pbiwgbWF4OiB0aGlzLm1heCB9O1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLmVtaXQoeyBjb2x1bW5OYW1lOiB0aGlzLmNvbHVtbk5hbWUsIHR5cGU6ICdudW1iZXInLCBhcHBseTogcmVzdWx0IH0pO1xyXG4gICAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMubWluID0gbnVsbDtcclxuICAgIHRoaXMubWF4ID0gbnVsbDtcclxuICAgIHRoaXMuZmlsdGVyLmVtaXQoeyBjb2x1bW5OYW1lOiB0aGlzLmNvbHVtbk5hbWUsIGFwcGx5OiBudWxsIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=