feat: map timezones

This commit is contained in:
karishmas6
2024-09-13 12:16:18 +05:30
parent 0c035ff410
commit 357515af1a

View File

@@ -22,8 +22,8 @@ export interface ScheduleSettings {
export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: ScheduleSettingsProps) => { export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: ScheduleSettingsProps) => {
const [settings, setSettings] = useState<ScheduleSettings>({ const [settings, setSettings] = useState<ScheduleSettings>({
runEvery: 1, runEvery: 1,
runEveryUnit: 'hours', runEveryUnit: 'HOURS',
startFrom: 'Monday', startFrom: 'MONDAY',
atTime: '00:00', atTime: '00:00',
timezone: 'UTC' timezone: 'UTC'
}); });
@@ -32,6 +32,8 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
setSettings(prev => ({ ...prev, [field]: value })); setSettings(prev => ({ ...prev, [field]: value }));
}; };
console.log(`Settings:`, settings);
const textStyle = { const textStyle = {
width: '150px', width: '150px',
height: '52px', height: '52px',
@@ -45,6 +47,14 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
marginRight: '10px', marginRight: '10px',
}; };
const timezones = [
'UTC',
'America/New_York',
'Europe/London',
'Asia/Tokyo',
'Asia/Kolkata'
];
return ( return (
<GenericModal <GenericModal
isOpen={isOpen} isOpen={isOpen}
@@ -67,6 +77,7 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
value={settings.runEvery} value={settings.runEvery}
onChange={(e) => handleChange('runEvery', parseInt(e.target.value))} onChange={(e) => handleChange('runEvery', parseInt(e.target.value))}
sx={textStyle} sx={textStyle}
inputProps={{ min: 1 }}
/> />
<Dropdown <Dropdown
label="" label=""
@@ -75,11 +86,10 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
handleSelect={(e) => handleChange('runEveryUnit', e.target.value)} handleSelect={(e) => handleChange('runEveryUnit', e.target.value)}
sx={dropDownStyle} sx={dropDownStyle}
> >
<MenuItem value="minutes">minutes</MenuItem> <MenuItem value="HOURS">hours</MenuItem>
<MenuItem value="hours">hours</MenuItem> <MenuItem value="DAYS">days</MenuItem>
<MenuItem value="days">days</MenuItem> <MenuItem value="WEEKS">weeks</MenuItem>
<MenuItem value="weeks">weeks</MenuItem> <MenuItem value="MONTHS">months</MenuItem>
<MenuItem value="months">months</MenuItem>
</Dropdown> </Dropdown>
</Box> </Box>
@@ -92,13 +102,13 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
handleSelect={(e) => handleChange('startFrom', e.target.value)} handleSelect={(e) => handleChange('startFrom', e.target.value)}
sx={dropDownStyle} sx={dropDownStyle}
> >
<MenuItem value="Monday">Monday</MenuItem> <MenuItem value="MONDAY">Monday</MenuItem>
<MenuItem value="Tuesday">Tuesday</MenuItem> <MenuItem value="TUESDAY">Tuesday</MenuItem>
<MenuItem value="Wednesday">Wednesday</MenuItem> <MenuItem value="WEDNESDAY">Wednesday</MenuItem>
<MenuItem value="Thursday">Thursday</MenuItem> <MenuItem value="THURSDAY">Thursday</MenuItem>
<MenuItem value="Friday">Friday</MenuItem> <MenuItem value="FRIDAY">Friday</MenuItem>
<MenuItem value="Saturday">Saturday</MenuItem> <MenuItem value="SATURDAY">Saturday</MenuItem>
<MenuItem value="Sunday">Sunday</MenuItem> <MenuItem value="SUNDAY">Sunday</MenuItem>
</Dropdown> </Dropdown>
</Box> </Box>
@@ -121,11 +131,9 @@ export const ScheduleSettingsModal = ({ isOpen, handleStart, handleClose }: Sche
handleSelect={(e) => handleChange('timezone', e.target.value)} handleSelect={(e) => handleChange('timezone', e.target.value)}
sx={dropDownStyle} sx={dropDownStyle}
> >
<MenuItem value="UTC">UTC</MenuItem> {timezones.map((tz) => (
<MenuItem value="America/New_York">America/New_York</MenuItem> <MenuItem key={tz} value={tz}>{tz}</MenuItem>
<MenuItem value="Europe/London">Europe/London</MenuItem> ))}
<MenuItem value="Asia/Tokyo">Asia/Tokyo</MenuItem>
<MenuItem value="Asia/Kolkata">Asia/Kolkata</MenuItem>
</Dropdown> </Dropdown>
</Box> </Box>
</Box> </Box>