|  |  | @ -10,6 +10,7 @@ import { Filter, UniqueAsset, User } from '@ghostfolio/common/interfaces'; | 
			
		
	
		
			
				
					|  |  |  | import { AdminMarketDataItem } from '@ghostfolio/common/interfaces/admin-market-data.interface'; | 
			
		
	
		
			
				
					|  |  |  | import { translate } from '@ghostfolio/ui/i18n'; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | import { SelectionModel } from '@angular/cdk/collections'; | 
			
		
	
		
			
				
					|  |  |  | import { | 
			
		
	
		
			
				
					|  |  |  |   AfterViewInit, | 
			
		
	
		
			
				
					|  |  |  |   ChangeDetectionStrategy, | 
			
		
	
	
		
			
				
					|  |  | @ -97,6 +98,7 @@ export class AdminMarketDataComponent | 
			
		
	
		
			
				
					|  |  |  |   public defaultDateFormat: string; | 
			
		
	
		
			
				
					|  |  |  |   public deviceType: string; | 
			
		
	
		
			
				
					|  |  |  |   public displayedColumns = [ | 
			
		
	
		
			
				
					|  |  |  |     'select', | 
			
		
	
		
			
				
					|  |  |  |     'nameWithSymbol', | 
			
		
	
		
			
				
					|  |  |  |     'dataSource', | 
			
		
	
		
			
				
					|  |  |  |     'assetClass', | 
			
		
	
	
		
			
				
					|  |  | @ -115,6 +117,7 @@ export class AdminMarketDataComponent | 
			
		
	
		
			
				
					|  |  |  |   public isUUID = isUUID; | 
			
		
	
		
			
				
					|  |  |  |   public placeholder = ''; | 
			
		
	
		
			
				
					|  |  |  |   public pageSize = DEFAULT_PAGE_SIZE; | 
			
		
	
		
			
				
					|  |  |  |   public selection: SelectionModel<Partial<SymbolProfile>>; | 
			
		
	
		
			
				
					|  |  |  |   public totalItems = 0; | 
			
		
	
		
			
				
					|  |  |  |   public user: User; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  | @ -188,6 +191,8 @@ export class AdminMarketDataComponent | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     this.benchmarks = benchmarks; | 
			
		
	
		
			
				
					|  |  |  |     this.deviceType = this.deviceService.getDeviceInfo().deviceType; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     this.selection = new SelectionModel(true); | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   public onChangePage(page: PageEvent) { | 
			
		
	
	
		
			
				
					|  |  | @ -198,8 +203,16 @@ export class AdminMarketDataComponent | 
			
		
	
		
			
				
					|  |  |  |     }); | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   public onDeleteProfileData({ dataSource, symbol }: UniqueAsset) { | 
			
		
	
		
			
				
					|  |  |  |     this.adminMarketDataService.deleteProfileData({ dataSource, symbol }); | 
			
		
	
		
			
				
					|  |  |  |   public onDeleteAssetProfile({ dataSource, symbol }: UniqueAsset) { | 
			
		
	
		
			
				
					|  |  |  |     this.adminMarketDataService.deleteAssetProfile({ dataSource, symbol }); | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   public onDeleteAssetProfiles() { | 
			
		
	
		
			
				
					|  |  |  |     this.adminMarketDataService.deleteAssetProfiles( | 
			
		
	
		
			
				
					|  |  |  |       this.selection.selected.map(({ dataSource, symbol }) => { | 
			
		
	
		
			
				
					|  |  |  |         return { dataSource, symbol }; | 
			
		
	
		
			
				
					|  |  |  |       }) | 
			
		
	
		
			
				
					|  |  |  |     ); | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   public onGather7Days() { | 
			
		
	
	
		
			
				
					|  |  | @ -286,6 +299,8 @@ export class AdminMarketDataComponent | 
			
		
	
		
			
				
					|  |  |  |     this.placeholder = | 
			
		
	
		
			
				
					|  |  |  |       this.activeFilters.length <= 0 ? $localize`Filter by...` : ''; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     this.selection.clear(); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     this.adminService | 
			
		
	
		
			
				
					|  |  |  |       .fetchAdminMarketData({ | 
			
		
	
		
			
				
					|  |  |  |         sortColumn, | 
			
		
	
	
		
			
				
					|  |  | 
 |