@kuro-samurai/ngx-samurai-filter
Version:
Filter your data with samurai filter pipe
1 lines • 5.49 kB
Source Map (JSON)
{"version":3,"file":"kuro-samurai-ngx-samurai-filter.mjs","sources":["../../../projects/filter/src/lib/filter.pipe.ts","../../../projects/filter/src/public-api.ts","../../../projects/filter/src/kuro-samurai-ngx-samurai-filter.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n\tname: 'SamuraiFilter',\n\tstandalone: true,\n})\nexport class FilterPipe implements PipeTransform {\n\ttransform(\n\t\tobjects: any[],\n\t\tproperty: string,\n\t\tfilterValue: boolean | number | string,\n\t\tfilterCondition: 'equal' | 'notEqual' | 'include' | 'notInclude' | 'equal/greater' | 'equal/lower' | 'greater' | 'lower' = 'equal'\n\t): any[] {\n\t\tlet filteredObjects: any[] = [];\n\n\t\tfor (const object of objects)\n\t\t\tif (Object.prototype.hasOwnProperty.call(object, property))\n\t\t\t\tswitch (typeof filterValue) {\n\t\t\t\t\tcase 'string':\n\t\t\t\t\t\tswitch (filterCondition) {\n\t\t\t\t\t\t\tcase 'equal':\n\t\t\t\t\t\t\t\tif (object[property] === filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'notEqual':\n\t\t\t\t\t\t\t\tif (object[property] !== filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'include':\n\t\t\t\t\t\t\t\tif ((object[property] as string).includes(filterValue)) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'notInclude':\n\t\t\t\t\t\t\t\tif (!(object[property] as string).includes(filterValue)) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase 'number':\n\t\t\t\t\t\tswitch (filterCondition) {\n\t\t\t\t\t\t\tcase 'equal':\n\t\t\t\t\t\t\t\tif (object[property] === filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'notEqual':\n\t\t\t\t\t\t\t\tif (object[property] !== filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'equal/greater':\n\t\t\t\t\t\t\t\tif (object[property] >= filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'greater':\n\t\t\t\t\t\t\t\tif (object[property] > filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'equal/lower':\n\t\t\t\t\t\t\t\tif (object[property] <= filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'lower':\n\t\t\t\t\t\t\t\tif (object[property] < filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase 'boolean':\n\t\t\t\t\t\tswitch (filterCondition) {\n\t\t\t\t\t\t\tcase 'equal':\n\t\t\t\t\t\t\t\tif (object[property] === filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\tcase 'notEqual':\n\t\t\t\t\t\t\t\tif (object[property] !== filterValue) filteredObjects.push(object);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\treturn filteredObjects;\n\t}\n}\n","/*\n * Public API Surface of filter\n */\n\nexport * from './lib/filter.pipe';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}