1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-05-17 22:06:41 +02:00
This commit is contained in:
koalyptus 2018-01-29 23:20:52 +11:00
parent 4855c9064b
commit 55eadd72eb
3 changed files with 23 additions and 18 deletions

View file

@ -1,6 +1,6 @@
{ {
"name": "tablefilter", "name": "tablefilter",
"version": "0.6.16", "version": "0.6.17",
"description": "A Javascript library making HTML tables filterable and a bit more", "description": "A Javascript library making HTML tables filterable and a bit more",
"license": "MIT", "license": "MIT",
"author": { "author": {

View file

@ -99,3 +99,5 @@ export const keyCode = (evt) => {
return evt.charCode ? evt.charCode : return evt.charCode ? evt.charCode :
(evt.keyCode ? evt.keyCode : (evt.which ? evt.which : 0)); (evt.keyCode ? evt.keyCode : (evt.which ? evt.which : 0));
}; };

View file

@ -740,16 +740,19 @@ export class TableFilter {
/** /**
* Enable auto-filter behaviour, table is filtered when a user * Enable auto-filter behaviour, table is filtered when a user
* stops typing * stops typing
* @type {Boolean} * @type {Object|Boolean}
*/ */
this.autoFilter = Boolean(f.auto_filter); this.autoFilter = isObj(f.auto_filter) || Boolean(f.auto_filter);
/** /**
* Auto-filter delay in msecs * Auto-filter delay in msecs
* @type {Number} * @type {Number}
*/ */
this.autoFilterDelay = // this.autoFilterDelay =
defaultsNb(f.auto_filter_delay, AUTO_FILTER_DELAY); // defaultsNb(f.auto_filter_delay, AUTO_FILTER_DELAY);
this.autoFilterDelay = isObj(f.auto_filter) &&
isNumber(f.auto_filter.delay) ?
f.auto_filter.delay : AUTO_FILTER_DELAY;
/** /**
* Indicate whether user is typing * Indicate whether user is typing
@ -1061,21 +1064,21 @@ export class TableFilter {
* @param {Event} evt * @param {Event} evt
*/ */
detectKey(evt) { detectKey(evt) {
if (!this.enterKey) { if (!this.enterKey || !evt) {
return; return;
} }
if (evt) { // if (evt) {
let key = keyCode(evt); let key = keyCode(evt);
if (key === ENTER_KEY) { if (key === ENTER_KEY) {
this.filter(); this.filter();
cancelEvt(evt); cancelEvt(evt);
stopEvt(evt); stopEvt(evt);
} else { } else {
this.isUserTyping = true; this.isUserTyping = true;
root.clearInterval(this.autoFilterTimer); root.clearInterval(this.autoFilterTimer);
this.autoFilterTimer = null; this.autoFilterTimer = null;
}
} }
// }
} }
/** /**
@ -1084,7 +1087,7 @@ export class TableFilter {
* @param {Event} evt * @param {Event} evt
*/ */
onKeyUp(evt) { onKeyUp(evt) {
if (!this.autoFilter) { if (!this.autoFilter || !evt) {
return; return;
} }
let key = keyCode(evt); let key = keyCode(evt);