Spaces:
Sleeping
Sleeping
File size: 1,014 Bytes
149698e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import type { ScanPreset, ScanDateRange } from '../types/scan.js';
export function resolveScanDates(
preset: ScanPreset,
customStart?: string,
customEnd?: string
): ScanDateRange {
const now = new Date();
switch (preset) {
case 'today': {
const midnight = new Date(now);
midnight.setHours(0, 0, 0, 0);
return { preset, startDate: midnight.toISOString(), endDate: now.toISOString() };
}
case 'last7days': {
const sevenDaysAgo = new Date(now);
sevenDaysAgo.setDate(sevenDaysAgo.getDate() - 7);
sevenDaysAgo.setHours(0, 0, 0, 0);
return { preset, startDate: sevenDaysAgo.toISOString(), endDate: now.toISOString() };
}
case 'custom': {
if (!customStart || !customEnd) {
throw new Error('Custom range requires startDate and endDate');
}
return {
preset,
startDate: new Date(customStart + 'T00:00:00').toISOString(),
endDate: new Date(customEnd + 'T23:59:59').toISOString(),
};
}
}
}
|