feat: Add not equals (!=) filter
This commit is contained in:
parent
9a5a0b66e8
commit
637d37deb8
@ -88,6 +88,15 @@ function getFilterMethod(filter) {
|
|||||||
.map(cell => cell.rowIndex);
|
.map(cell => cell.rowIndex);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
notEquals(keyword, cells) {
|
||||||
|
return cells
|
||||||
|
.filter(cell => {
|
||||||
|
const value = parseFloat(cell.content);
|
||||||
|
return value !== keyword;
|
||||||
|
})
|
||||||
|
.map(cell => cell.rowIndex);
|
||||||
|
},
|
||||||
|
|
||||||
range(rangeValues, cells) {
|
range(rangeValues, cells) {
|
||||||
return cells
|
return cells
|
||||||
.filter(cell => {
|
.filter(cell => {
|
||||||
@ -110,6 +119,8 @@ function guessFilter(keyword = '') {
|
|||||||
|
|
||||||
if (['>', '<', '='].includes(compareString[0])) {
|
if (['>', '<', '='].includes(compareString[0])) {
|
||||||
compareString = keyword.slice(1);
|
compareString = keyword.slice(1);
|
||||||
|
} else if (compareString.startsWith('!=')) {
|
||||||
|
compareString = keyword.slice(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (keyword.startsWith('>')) {
|
if (keyword.startsWith('>')) {
|
||||||
@ -139,6 +150,15 @@ function guessFilter(keyword = '') {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (keyword.startsWith('!=')) {
|
||||||
|
if (isNumber(compareString)) {
|
||||||
|
return {
|
||||||
|
type: 'notEquals',
|
||||||
|
text: Number(keyword.slice(2).trim())
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (keyword.split(':').length === 2) {
|
if (keyword.split(':').length === 2) {
|
||||||
compareString = keyword.split(':');
|
compareString = keyword.split(':');
|
||||||
return {
|
return {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user