Add FilterUtils
parent
1749f70409
commit
b10cf9eb6b
|
@ -22,7 +22,7 @@ fs.readdirSync(path.resolve(__dirname, './src/components/')).forEach(folder => {
|
|||
)
|
||||
|
||||
execSync(
|
||||
`${babelPath} --no-babelrc src/components/${folder}/${file} --out-file components/${folder}/${file} --presets=es2015,stage-2 `
|
||||
`node ${babelPath} src/components/${folder}/${file} --out-file components/${folder}/${file}`
|
||||
)
|
||||
}
|
||||
});
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
export default class FilterUtils {
|
||||
|
||||
static startsWith(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.trim() === '') {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let filterValue = filter.toLowerCase();
|
||||
return value.toString().toLowerCase().slice(0, filterValue.length) === filterValue;
|
||||
}
|
||||
|
||||
static contains(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase().indexOf(filter.toLowerCase()) !== -1;
|
||||
}
|
||||
|
||||
static endsWith(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.trim() === '') {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let filterValue = filter.toString().toLowerCase();
|
||||
return value.toString().toLowerCase().indexOf(filterValue, value.toString().length - filterValue.length) !== -1;
|
||||
}
|
||||
|
||||
static equals(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase() === filter.toString().toLowerCase();
|
||||
}
|
||||
|
||||
static notEquals(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase() !== filter.toString().toLowerCase();
|
||||
}
|
||||
|
||||
static in(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.length === 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
for (let i = 0; i < filter.length; i++) {
|
||||
if (filter[i] === value)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
|
@ -130,86 +130,4 @@ export default class ObjectUtils {
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
static filterConstraints = {
|
||||
|
||||
startsWith(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.trim() === '') {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let filterValue = filter.toLowerCase();
|
||||
return value.toString().toLowerCase().slice(0, filterValue.length) === filterValue;
|
||||
},
|
||||
|
||||
contains(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase().indexOf(filter.toLowerCase()) !== -1;
|
||||
},
|
||||
|
||||
endsWith(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.trim() === '') {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let filterValue = filter.toString().toLowerCase();
|
||||
return value.toString().toLowerCase().indexOf(filterValue, value.toString().length - filterValue.length) !== -1;
|
||||
},
|
||||
|
||||
equals(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase() === filter.toString().toLowerCase();
|
||||
},
|
||||
|
||||
notEquals(value, filter) {
|
||||
if (filter === undefined || filter === null || (typeof filter === 'string' && filter.trim() === '')) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return value.toString().toLowerCase() !== filter.toString().toLowerCase();
|
||||
},
|
||||
|
||||
in(value, filter) {
|
||||
if (filter === undefined || filter === null || filter.length === 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value === undefined || value === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
for (let i = 0; i < filter.length; i++) {
|
||||
if (filter[i] === value)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue