From 4ee928ac2c63822b8c2071fba240a45dcda2f2c9 Mon Sep 17 00:00:00 2001 From: Hamza jayri <71387563+hamzajazyri@users.noreply.github.com> Date: Thu, 9 Nov 2023 06:38:42 +0100 Subject: [PATCH] docs(material/datepicker): Update close calendar label (#26738) Previously, the close calendar label was not updating correctly when switching languages. This commit fixes that issue. Fixes: #25021 (cherry picked from commit ff27a9373e53e0e2af43c62954cfe32dc241de99) --- .../datepicker-locale-example.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/components-examples/material/datepicker/datepicker-locale/datepicker-locale-example.ts b/src/components-examples/material/datepicker/datepicker-locale/datepicker-locale-example.ts index 53bdb32acc25..32697dc20b0e 100644 --- a/src/components-examples/material/datepicker/datepicker-locale/datepicker-locale-example.ts +++ b/src/components-examples/material/datepicker/datepicker-locale/datepicker-locale-example.ts @@ -1,4 +1,4 @@ -import {Component, Inject} from '@angular/core'; +import {Component, Inject, OnInit} from '@angular/core'; import { MAT_MOMENT_DATE_FORMATS, MomentDateAdapter, @@ -11,6 +11,7 @@ import {MatInputModule} from '@angular/material/input'; import {MatFormFieldModule} from '@angular/material/form-field'; import 'moment/locale/ja'; import 'moment/locale/fr'; +import {MatDatepickerIntl} from '@angular/material/datepicker'; /** @title Datepicker with different locale */ @Component({ @@ -34,15 +35,26 @@ import 'moment/locale/fr'; standalone: true, imports: [MatFormFieldModule, MatInputModule, MatDatepickerModule, MatButtonModule], }) -export class DatepickerLocaleExample { +export class DatepickerLocaleExample implements OnInit { constructor( private _adapter: DateAdapter, + private _intl: MatDatepickerIntl, @Inject(MAT_DATE_LOCALE) private _locale: string, ) {} + ngOnInit() { + this.updateCloseButtonLabel('カレンダーを閉じる'); + } + french() { this._locale = 'fr'; this._adapter.setLocale(this._locale); + this.updateCloseButtonLabel('Fermer le calendrier'); + } + + updateCloseButtonLabel(label: string) { + this._intl.closeCalendarLabel = label; + this._intl.changes.next(); } getDateFormatString(): string {