Fix #4113: Calendar showMonthAfterYear locale option

pull/4114/head
melloware 2023-07-09 10:46:01 -04:00
parent f3d1033c37
commit 12174a1f96
3 changed files with 58 additions and 24 deletions

View File

@ -85,30 +85,62 @@
</slot>
</button>
<div :class="cx('title')" v-bind="ptm('title')">
<button
v-if="currentView === 'date'"
type="button"
@click="switchToMonthView"
@keydown="onContainerButtonKeydown"
:class="cx('monthTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseMonth"
v-bind="ptm('monthTitle')"
>
{{ getMonthName(month.month) }}
</button>
<button
v-if="currentView !== 'year'"
type="button"
@click="switchToYearView"
@keydown="onContainerButtonKeydown"
:class="cx('yearTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseYear"
v-bind="ptm('yearTitle')"
>
{{ getYear(month) }}
</button>
<span v-if="$primevue.config.locale.showMonthAfterYear">
<button
v-if="currentView !== 'year'"
type="button"
@click="switchToYearView"
@keydown="onContainerButtonKeydown"
:class="cx('yearTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseYear"
v-bind="ptm('yearTitle')"
data-pc-group-section="view"
>
{{ getYear(month) }}
</button>
<button
v-if="currentView === 'date'"
type="button"
@click="switchToMonthView"
@keydown="onContainerButtonKeydown"
:class="cx('monthTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseMonth"
v-bind="ptm('monthTitle')"
data-pc-group-section="view"
>
{{ getMonthName(month.month) }}
</button>
</span>
<span v-else>
<button
v-if="currentView === 'date'"
type="button"
@click="switchToMonthView"
@keydown="onContainerButtonKeydown"
:class="cx('monthTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseMonth"
v-bind="ptm('monthTitle')"
data-pc-group-section="view"
>
{{ getMonthName(month.month) }}
</button>
<button
v-if="currentView !== 'year'"
type="button"
@click="switchToYearView"
@keydown="onContainerButtonKeydown"
:class="cx('yearTitle')"
:disabled="switchViewButtonDisabled"
:aria-label="$primevue.config.locale.chooseYear"
v-bind="ptm('yearTitle')"
data-pc-group-section="view"
>
{{ getYear(month) }}
</button>
</span>
<span v-if="currentView === 'year'" :class="cx('decadeTitle')" v-bind="ptm('decadeTitle')">
<slot name="decade" :years="yearPickerValues"> {{ yearPickerValues[0].value }} - {{ yearPickerValues[yearPickerValues.length - 1].value }} </slot>
</span>

View File

@ -303,6 +303,7 @@ interface PrimeVueLocaleOptions {
today?: string;
weekHeader?: string;
firstDayOfWeek?: number;
showMonthAfterYear?: boolean;
dateFormat?: string;
weak?: string;
medium?: string;

View File

@ -58,6 +58,7 @@ export const defaultOptions = {
today: 'Today',
weekHeader: 'Wk',
firstDayOfWeek: 0,
showMonthAfterYear: false,
dateFormat: 'mm/dd/yy',
weak: 'Weak',
medium: 'Medium',