Update date validation to use UTC comparison and enhance documentation
This commit is contained in:
@@ -366,8 +366,8 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Validation Message -->
|
<!-- Validation Message -->
|
||||||
{#if !validateDateRange(localStartDate, localEndDate).valid}
|
{#if !validateDateRange(utcStartDate ?? '', utcEndDate ?? '').valid}
|
||||||
<div role="alert" class="alert alert-error">
|
<div role="alert" class="alert alert-error mt-2">
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
class="h-6 w-6 shrink-0 stroke-current"
|
class="h-6 w-6 shrink-0 stroke-current"
|
||||||
|
|||||||
@@ -87,10 +87,10 @@ export function updateUTCDate({
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validate date ranges
|
* Validate date ranges using UTC comparison
|
||||||
* @param startDate - Start date string
|
* @param startDate - Start date string in UTC (ISO format)
|
||||||
* @param endDate - End date string
|
* @param endDate - End date string in UTC (ISO format)
|
||||||
* @returns Object with validation result and error message
|
* @returns Object with validation result and optional error message
|
||||||
*/
|
*/
|
||||||
export function validateDateRange(
|
export function validateDateRange(
|
||||||
startDate: string,
|
startDate: string,
|
||||||
@@ -106,11 +106,12 @@ export function validateDateRange(
|
|||||||
if (
|
if (
|
||||||
startDate &&
|
startDate &&
|
||||||
endDate &&
|
endDate &&
|
||||||
DateTime.fromISO(startDate).toMillis() > DateTime.fromISO(endDate).toMillis()
|
DateTime.fromISO(startDate, { zone: 'utc' }).toMillis() >
|
||||||
|
DateTime.fromISO(endDate, { zone: 'utc' }).toMillis()
|
||||||
) {
|
) {
|
||||||
return {
|
return {
|
||||||
valid: false,
|
valid: false,
|
||||||
error: 'Start date must be before end date'
|
error: 'Start date must be before end date (based on UTC)'
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user