Browse Source
			 
			
			Feature/change fees interest and search to general availability (#2525 ) 
 
 
			
				* Change features to general availability
* Fees on account level
* Interest on account level
* Search for a holding
* Update changelog
* Add documentation for experimental features 
			
			
				 pull/2527/head 
			
			
		 
		
			
				
					
						 
						Thomas Kaul 
					
					2 years ago  
					
						
							 committed by 
							
								 
								GitHub 
							
						 
					
				 
				
			 
		 
		
			
				
					 
					No known key found for this signature in database
					
						
							GPG Key ID:   4AEE18F83AFDEB23 
						
					
				
			
		
		
		
	
		
			
				 4 changed files  with 
21 additions  and 
12 deletions 
			 
			
		 
		
			
				
					
					
					  
					CHANGELOG.md 
				 
			
				
					
					
					  
					DEVELOPMENT.md 
				 
			
				
					
					
					  
					apps/api/src/app/user/user.service.ts 
				 
			
				
					
					
					  
					apps/client/src/app/pages/portfolio/activities/create-or-update-activity-dialog/create-or-update-activity-dialog.html 
				 
			
		 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					
						
						
							
								 
							 
						
						
					 
				
				 
				
					@ -9,6 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					### Changed 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Moved the fees on account level feature from experimental to general availability 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Moved the interest on account level feature from experimental to general availability 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Moved the search for a holding from experimental to general availability 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Improved the error message in the activities import for `csv`  files 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Removed the application version from the client 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					- Allowed to edit today’s historical market data in the asset profile details dialog of the admin control panel 
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
						
					 
				
				 
				
					 
				
			 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					
						
						
						
					 
				
				 
				
					@ -1,5 +1,17 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					# Ghostfolio Development Guide 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					## Experimental Features 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					New functionality can be enabled using a feature flag switch from the user settings. 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					### Backend 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					Remove permission in `UserService`  using `without()`  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					### Frontend 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					Use `*ngIf="user?.settings?.isExperimentalFeatures"`  in HTML template 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					## Git 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					### Rebase 
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
						
					 
				
				 
				
					 
				
			 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					
						
						
							
								 
							 
						
						
					 
				
				 
				
					@ -164,10 +164,10 @@ export class UserService { 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					    let  currentPermissions  =  getPermissions ( user . role ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					    if  ( ! ( user . Settings . settings  as  UserSettings ) . isExperimentalFeatures )  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      currentPermissions  =  without (  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					        currentPermissions ,   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					        permissions . accessAssistant   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      // currentPermissions = without(
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      //   currentPermissions,
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      //   permissions.xyz
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					      // );
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					    }  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					    if  ( this . configurationService . get ( 'ENABLE_FEATURE_SUBSCRIPTION' ) )  {  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
						
					 
				
				 
				
					 
				
			 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					
						
						
							
								 
							 
						
						
					 
				
				 
				
					@ -21,10 +21,7 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					              >Stocks, ETFs, bonds, cryptocurrencies, commodities< /small 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            > 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < / mat-option >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < mat-option  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            *ngIf="data.user?.settings?.isExperimentalFeatures" 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            value="FEE" 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          > 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < mat-option  value = "FEE" >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            < span > < b > {{ typesTranslationMap['FEE'] }}< / b > < / span >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            < small  class = "d-block line-height-1 text-muted text-nowrap"  i18n  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					              >One-time fee, annual account fees< /small 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				
					@ -36,10 +33,7 @@ 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					              >Distribution of corporate earnings< /small 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            > 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < / mat-option >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < mat-option  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            *ngIf="data.user?.settings?.isExperimentalFeatures" 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            value="INTEREST" 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          > 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					          < mat-option  value = "INTEREST" >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            < span > < b > {{ typesTranslationMap['INTEREST'] }}< / b > < / span >  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					            < small  class = "d-block line-height-1 text-muted text-nowrap"  i18n  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				
					              >Revenue for lending out money< /small