Follow-up high fixes on date refactor (#15553)

This PR fixes important bugs on date filter handling following-up date
refactor.

Fixes : https://github.com/twentyhq/core-team-issues/issues/1814
This commit is contained in:
Lucas Bordeau
2025-11-03 17:51:42 +01:00
committed by GitHub
parent bafc0496b1
commit b33b38cb02
16 changed files with 119 additions and 213 deletions
@@ -18,6 +18,14 @@ export const getStartUnitOfDateTime = (
const firstDayOfTheWeekAsDateFNSNumber =
getFirstDayOfTheWeekAsANumberForDateFNS(firstDayOfTheWeek);
console.log({
firstDayOfTheWeek,
firstDayOfTheWeekAsDateFNSNumber,
startOfWekk: startOfWeek(dateTime, {
weekStartsOn: firstDayOfTheWeekAsDateFNSNumber,
}),
});
return startOfWeek(dateTime, {
weekStartsOn: firstDayOfTheWeekAsDateFNSNumber,
});
@@ -11,7 +11,6 @@ export const relativeDateFilterSchema = z
amount: relativeDateFilterAmountSchema.nullish(),
unit: relativeDateFilterUnitSchema,
timezone: z.string().nullish(),
referenceDayAsString: z.string().nullish(),
firstDayOfTheWeek: firstDayOfWeekSchema.nullish(),
})
.refine((data) => !(data.amount === undefined && data.direction !== 'THIS'), {
@@ -3,7 +3,7 @@ import { isNonEmptyArray } from '@sniptt/guards';
import z from 'zod';
const REGEX_FOR_RELATIVE_DATE_FILTER_STRINGIFIED_PARSING =
/((?:THIS)|(?:PAST)|(?:NEXT))_(\d*)_(DAY|MONTH|YEAR|WEEK)(?:(?:;;([^;;]*);;)?(?:(\d\d\d\d-\d\d-\d\d);;)?(?:(MONDAY|SUNDAY|SATURDAY);;)?)?/;
/((?:THIS)|(?:PAST)|(?:NEXT))_(\d*)_(DAY|MONTH|YEAR|WEEK)(?:(?:;;([^;;]*);;)?(?:(MONDAY|SUNDAY|SATURDAY);;)?)?/;
export const relativeDateFilterStringifiedSchema = z
.string()
@@ -18,22 +18,13 @@ export const relativeDateFilterStringifiedSchema = z
throw new Error(`Cannot parse stringified relative date filter`);
}
const [
_,
direction,
amount,
unit,
timezone,
referenceDayAsString,
firstDayOfTheWeek,
] = result;
const [_, direction, amount, unit, timezone, firstDayOfTheWeek] = result;
return relativeDateFilterSchema.parse({
direction,
amount,
unit,
timezone,
referenceDayAsString,
firstDayOfTheWeek,
});
});