Browse Source
			
			
			Feature/setup italiano (#1276)
			
				* Setup italiano
* Update changelog
			
			
				pull/1279/head^2
			
			
		 
		
			
				
					
						 Thomas Kaul
					
					3 years ago
						Thomas Kaul
					
					3 years ago
					
						
							committed by
							
								 GitHub
								GitHub
							
						 
					
				 
				
			 
		 
		
			
				
					
					No known key found for this signature in database
					
						
							GPG Key ID: 4AEE18F83AFDEB23
						
					
				
			
		
		
		
	
		
			
				 5 changed files with 
26 additions and 
3 deletions
			 
			
		 
		
			
				- 
					
					
					 
					CHANGELOG.md
				
- 
					
					
					 
					apps/api/src/app/frontend.middleware.ts
				
- 
					
					
					 
					apps/client/src/app/pages/account/account-page.component.ts
				
- 
					
					
					 
					apps/client/src/app/pages/account/account-page.html
				
- 
					
					
					 
					libs/common/src/lib/helper.ts
				
				
				
					
						
							
								
									
	
		
			
				
					|  |  | @ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. | 
			
		
	
		
			
				
					|  |  |  | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | 
			
		
	
		
			
				
					|  |  |  | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ## Unreleased | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ### Added | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | - Set up the language localization for Italiano (`it`) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ## 1.195.0 - 20.09.2022 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ### Changed | 
			
		
	
	
		
			
				
					|  |  | @ -195,7 +201,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 | 
			
		
	
		
			
				
					|  |  |  | ### Added | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | - Set up `ng-extract-i18n-merge` to improve the i18n extraction and merge workflow | 
			
		
	
		
			
				
					|  |  |  | - Set up language localization for German (`de`) | 
			
		
	
		
			
				
					|  |  |  | - Set up the language localization for German (`de`) | 
			
		
	
		
			
				
					|  |  |  | - Resolved the feature graphic of the blog post | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ### Changed | 
			
		
	
	
		
			
				
					|  |  | 
 | 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					|  |  | @ -11,6 +11,7 @@ import { NextFunction, Request, Response } from 'express'; | 
			
		
	
		
			
				
					|  |  |  | export class FrontendMiddleware implements NestMiddleware { | 
			
		
	
		
			
				
					|  |  |  |   public indexHtmlDe = ''; | 
			
		
	
		
			
				
					|  |  |  |   public indexHtmlEn = ''; | 
			
		
	
		
			
				
					|  |  |  |   public indexHtmlIt = ''; | 
			
		
	
		
			
				
					|  |  |  |   public isProduction: boolean; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   public constructor( | 
			
		
	
	
		
			
				
					|  |  | @ -32,6 +33,10 @@ export class FrontendMiddleware implements NestMiddleware { | 
			
		
	
		
			
				
					|  |  |  |         this.getPathOfIndexHtmlFile(DEFAULT_LANGUAGE_CODE), | 
			
		
	
		
			
				
					|  |  |  |         'utf8' | 
			
		
	
		
			
				
					|  |  |  |       ); | 
			
		
	
		
			
				
					|  |  |  |       this.indexHtmlIt = fs.readFileSync( | 
			
		
	
		
			
				
					|  |  |  |         this.getPathOfIndexHtmlFile('it'), | 
			
		
	
		
			
				
					|  |  |  |         'utf8' | 
			
		
	
		
			
				
					|  |  |  |       ); | 
			
		
	
		
			
				
					|  |  |  |     } catch {} | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  | @ -61,6 +66,15 @@ export class FrontendMiddleware implements NestMiddleware { | 
			
		
	
		
			
				
					|  |  |  |           rootUrl: this.configurationService.get('ROOT_URL') | 
			
		
	
		
			
				
					|  |  |  |         }) | 
			
		
	
		
			
				
					|  |  |  |       ); | 
			
		
	
		
			
				
					|  |  |  |     } else if (req.path === '/it' || req.path.startsWith('/it/')) { | 
			
		
	
		
			
				
					|  |  |  |       res.send( | 
			
		
	
		
			
				
					|  |  |  |         this.interpolate(this.indexHtmlIt, { | 
			
		
	
		
			
				
					|  |  |  |           featureGraphicPath, | 
			
		
	
		
			
				
					|  |  |  |           languageCode: 'it', | 
			
		
	
		
			
				
					|  |  |  |           path: req.path, | 
			
		
	
		
			
				
					|  |  |  |           rootUrl: this.configurationService.get('ROOT_URL') | 
			
		
	
		
			
				
					|  |  |  |         }) | 
			
		
	
		
			
				
					|  |  |  |       ); | 
			
		
	
		
			
				
					|  |  |  |     } else { | 
			
		
	
		
			
				
					|  |  |  |       res.send( | 
			
		
	
		
			
				
					|  |  |  |         this.interpolate(this.indexHtmlEn, { | 
			
		
	
	
		
			
				
					|  |  | 
 | 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					|  |  | @ -54,7 +54,7 @@ export class AccountPageComponent implements OnDestroy, OnInit { | 
			
		
	
		
			
				
					|  |  |  |   public hasPermissionToUpdateViewMode: boolean; | 
			
		
	
		
			
				
					|  |  |  |   public hasPermissionToUpdateUserSettings: boolean; | 
			
		
	
		
			
				
					|  |  |  |   public language = document.documentElement.lang; | 
			
		
	
		
			
				
					|  |  |  |   public locales = ['de', 'de-CH', 'en-GB', 'en-US']; | 
			
		
	
		
			
				
					|  |  |  |   public locales = ['de', 'de-CH', 'en-GB', 'en-US', 'it']; | 
			
		
	
		
			
				
					|  |  |  |   public price: number; | 
			
		
	
		
			
				
					|  |  |  |   public priceId: string; | 
			
		
	
		
			
				
					|  |  |  |   public snackBarRef: MatSnackBarRef<TextOnlySnackBar>; | 
			
		
	
	
		
			
				
					|  |  | 
 | 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					|  |  | @ -126,6 +126,7 @@ | 
			
		
	
		
			
				
					|  |  |  |                       <mat-option [value]="null"></mat-option> | 
			
		
	
		
			
				
					|  |  |  |                       <mat-option value="de">Deutsch</mat-option> | 
			
		
	
		
			
				
					|  |  |  |                       <mat-option value="en">English</mat-option> | 
			
		
	
		
			
				
					|  |  |  |                       <mat-option value="it">Italiano</mat-option> | 
			
		
	
		
			
				
					|  |  |  |                     </mat-select> | 
			
		
	
		
			
				
					|  |  |  |                   </mat-form-field> | 
			
		
	
		
			
				
					|  |  |  |                 </div> | 
			
		
	
	
		
			
				
					|  |  | 
 | 
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
			
				
					|  |  | @ -1,7 +1,7 @@ | 
			
		
	
		
			
				
					|  |  |  | import * as currencies from '@dinero.js/currencies'; | 
			
		
	
		
			
				
					|  |  |  | import { DataSource } from '@prisma/client'; | 
			
		
	
		
			
				
					|  |  |  | import { getDate, getMonth, getYear, parse, subDays } from 'date-fns'; | 
			
		
	
		
			
				
					|  |  |  | import { de } from 'date-fns/locale'; | 
			
		
	
		
			
				
					|  |  |  | import { de, it } from 'date-fns/locale'; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | import { ghostfolioScraperApiSymbolPrefix, locale } from './config'; | 
			
		
	
		
			
				
					|  |  |  | import { Benchmark } from './interfaces'; | 
			
		
	
	
		
			
				
					|  |  | @ -75,6 +75,8 @@ export function getCssVariable(aCssVariable: string) { | 
			
		
	
		
			
				
					|  |  |  | export function getDateFnsLocale(aLanguageCode: string) { | 
			
		
	
		
			
				
					|  |  |  |   if (aLanguageCode === 'de') { | 
			
		
	
		
			
				
					|  |  |  |     return de; | 
			
		
	
		
			
				
					|  |  |  |   } else if (aLanguageCode === 'it') { | 
			
		
	
		
			
				
					|  |  |  |     return it; | 
			
		
	
		
			
				
					|  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |   return undefined; | 
			
		
	
	
		
			
				
					|  |  | 
 |