Skip to content

Commit 57d6205

Browse files
authored
Merge pull request #638 from code16/fix-daterange-filter-monday-first
Fix date range filter mondayFirst
2 parents c67ff38 + bb60420 commit 57d6205

File tree

3 files changed

+15
-4
lines changed

3 files changed

+15
-4
lines changed

resources/js/filters/components/filters/DateRangeFilter.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import DateRangeFilterValue from "@/filters/components/filters/DateRangeFilterValue.vue";
1414
import { cn } from "@/utils/cn";
1515
import { FilterEmits, FilterProps } from "@/filters/types";
16+
import { getDefaultDateLocale, getWeekStartsOn } from "@/utils/dates";
1617
1718
const props = defineProps<FilterProps<DateRangeFilterData>>();
1819
const emit = defineEmits<FilterEmits<DateRangeFilterData>>();
@@ -158,8 +159,8 @@
158159
:class="!inline ? 'hidden' : 'hidden md:block'"
159160
v-model="localValue"
160161
:number-of-months="2"
161-
:locale="window.navigator.language"
162-
:week-starts-on="props.filter.mondayFirst ? 1 : 0"
162+
:locale="getDefaultDateLocale()"
163+
:week-starts-on="getWeekStartsOn(props.filter.mondayFirst)"
163164
@update:start-value="(startDate) => localValue.start = startDate as CalendarDate"
164165
@update:model-value="onCalendarChange"
165166
:key="renderKey"

resources/js/form/components/fields/Date.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,12 @@ import { createYear, createYearRange, toDate } from 'reka-ui/date'
3434
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
3535
import { Button } from "@/components/ui/button";
3636
import { __ } from "@/utils/i18n";
37+
import { getDefaultDateLocale, getWeekStartsOn } from "@/utils/dates";
3738
3839
const props = defineProps<FormFieldProps<FormDateFieldData>>();
3940
const emit = defineEmits<FormFieldEmits<FormDateFieldData>>();
4041
41-
const dateLocale = Intl.DateTimeFormat().resolvedOptions().locale;
42+
const dateLocale = getDefaultDateLocale();
4243
const open = ref(false);
4344
const isTouch = ref(false);
4445
@@ -219,7 +220,7 @@ function onMinuteChange(minute: string) {
219220
:model-value="calendarDateValue"
220221
v-model:placeholder="calendarViewingDate"
221222
:locale="dateLocale"
222-
:week-starts-on="props.field.mondayFirst ? 0 : 6"
223+
:week-starts-on="getWeekStartsOn(props.field.mondayFirst)"
223224
@update:model-value="onCalendarDateChange"
224225
class="p-3"
225226
>

resources/js/utils/dates.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
3+
export function getWeekStartsOn(mondayFirst: boolean) {
4+
return mondayFirst ? 0 : 6;
5+
}
6+
7+
export function getDefaultDateLocale() {
8+
return Intl.DateTimeFormat().resolvedOptions().locale;
9+
}

0 commit comments

Comments
 (0)