Advertisement
attilan

Pipe needs refactor

Oct 15th, 2021
1,006
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. export class FilterTypeSelectorPipe implements PipeTransform {
  2.   transform(filter: FilterItem): Partial<Result> {
  3.     if (filter.data === 'empty') {
  4.       return { simpleInput: true };
  5.     }
  6.  
  7.     if (
  8.       Array.isArray(filter.data) &&
  9.       !filter.withDate &&
  10.       !filter.withInteger &&
  11.       filter.singleDropdown
  12.     ) {
  13.       return { singleDropdown: true };
  14.     }
  15.  
  16.     if (
  17.       Array.isArray(filter.data) &&
  18.       filter.singleDropdown &&
  19.       filter.withInteger
  20.     ) {
  21.       return { singleDropdownWithInteger: true };
  22.     }
  23.  
  24.     if (Array.isArray(filter.data) && !filter.withInteger && !filter.withDate) {
  25.       return { multiDropdown: true };
  26.     }
  27.  
  28.     if (Array.isArray(filter.data) && filter.withDate) {
  29.       return { multiDropdownWithDate: true };
  30.     }
  31.  
  32.     if (filter.data === 'boolean') {
  33.       return { trueFalseFilter: true };
  34.     }
  35.  
  36.     if (filter.data === 'date') {
  37.       return { dateFilter: true };
  38.     }
  39.  
  40.     return {};
  41.   }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement