|
@ -41,6 +41,7 @@ import { MatSelectModule } from '@angular/material/select'; |
|
|
import { RouterModule } from '@angular/router'; |
|
|
import { RouterModule } from '@angular/router'; |
|
|
import { Account, AssetClass, DataSource } from '@prisma/client'; |
|
|
import { Account, AssetClass, DataSource } from '@prisma/client'; |
|
|
import { differenceInYears } from 'date-fns'; |
|
|
import { differenceInYears } from 'date-fns'; |
|
|
|
|
|
import Fuse from 'fuse.js'; |
|
|
import { isFunction } from 'lodash'; |
|
|
import { isFunction } from 'lodash'; |
|
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; |
|
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; |
|
|
import { EMPTY, Observable, Subject, merge, of } from 'rxjs'; |
|
|
import { EMPTY, Observable, Subject, merge, of } from 'rxjs'; |
|
@ -642,20 +643,18 @@ export class GfAssistantComponent implements OnChanges, OnDestroy, OnInit { |
|
|
return acc; |
|
|
return acc; |
|
|
}, [] as IRoute[]); |
|
|
}, [] as IRoute[]); |
|
|
|
|
|
|
|
|
return allRoutes |
|
|
const fuse = new Fuse(allRoutes, { |
|
|
.filter(({ title }) => { |
|
|
keys: ['title'], |
|
|
return title.toLowerCase().includes(searchTerm); |
|
|
threshold: 0.3 |
|
|
}) |
|
|
}); |
|
|
.map(({ routerLink, title }) => { |
|
|
|
|
|
return { |
|
|
return fuse.search(searchTerm).map(({ item: { routerLink, title } }) => { |
|
|
routerLink, |
|
|
return { |
|
|
mode: SearchMode.QUICK_LINK as const, |
|
|
routerLink, |
|
|
name: title |
|
|
mode: SearchMode.QUICK_LINK as const, |
|
|
}; |
|
|
name: title |
|
|
}) |
|
|
}; |
|
|
.sort((a, b) => { |
|
|
}); |
|
|
return a.name.localeCompare(b.name); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private setFilterFormValues() { |
|
|
private setFilterFormValues() { |
|
|