import { Injectable, inject } from '@angular/core'
import { Title } from '@angular/platform-browser'
import { RouterStateSnapshot, TitleStrategy } from '@angular/router'
import { I18nService } from '../i18n'

const APP_NAME = 'KADiCon'

@Injectable()
export class KadiTitleStrategy extends TitleStrategy {
	private readonly _titleService = inject(Title)
	private readonly _i18nService = inject(I18nService)

	override updateTitle(routerState: RouterStateSnapshot) {
		const routeTitle = this.buildTitle(routerState)
		const title = routeTitle ? `${this._i18nService.translate(`title.${routeTitle}`)} - ${APP_NAME}` : `${APP_NAME}`
		this._titleService.setTitle(title)
	}
}
