All files / app/shared/models filter.model.ts

100% Statements 2/2
100% Branches 0/0
100% Functions 1/1
100% Lines 2/2

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16                        4x 129x    
export interface FilterOption<T extends string = string> {
    readonly key: T;
    readonly label: string;
}
 
export interface FilterGroup<T extends string = string> {
    readonly label: string;
    readonly items: readonly FilterOption<T>[];
}
 
export type FilterEntry<T extends string = string> = FilterOption<T> | FilterGroup<T>;
 
export function isFilterGroup<T extends string>(entry: FilterEntry<T>): entry is FilterGroup<T> {
    return 'items' in entry;
}