* add Travel Schedule modal * UI to list schedules * set shouldDirty * add backend to add new travelSchedule * implement deleting a schedule * check if schedule is overlapping * WIP * fix finding overlapping travel schedule * only use travelSchedule when default availability is used * adjust date overrides to timezone schedule * first version of changeTimeZone cron job * fix tests by adding travelSchedules * fixes for cron job api call * improve unit tests * add migration * fix type error * fix collective-scheduling test * clean up cron job * code clean up * code clean up * show timezone from travel schedule for date override * add date override tests * show tz on date override only in default schedule * fix deleting old schedules * minor fixes in cron api handler * code clean up * code clean up from feedback * fix asia/kalkota comment * fix dark mode * fix start and end date conversion to utc * add first unit test for travel schedules * Fix modal render issue * show timezone city wtihout _ * fix dark more for datepicker * reset values after closing dialog * remove session from middleware * exit loop early once schedule is found * fix type error * add getTravelSchedules handler * clean up DatePicker * fix type error * code clean up * code clean up * add indexes * use deleteMany * fix icons --------- Co-authored-by: CarinaWolli <wollencarina@gmail.com> Co-authored-by: Alex van Andel <me@alexvanandel.com> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
35 lines
966 B
TypeScript
35 lines
966 B
TypeScript
import "react-calendar/dist/Calendar.css";
|
|
import "react-date-picker/dist/DatePicker.css";
|
|
import PrimitiveDatePicker from "react-date-picker/dist/entry.nostyle";
|
|
|
|
import classNames from "@calcom/lib/classNames";
|
|
|
|
import { Icon } from "../../..";
|
|
|
|
type Props = {
|
|
date: Date;
|
|
onDatesChange?: ((date: Date) => void) | undefined;
|
|
className?: string;
|
|
disabled?: boolean;
|
|
minDate?: Date;
|
|
};
|
|
|
|
const DatePicker = ({ minDate, disabled, date, onDatesChange, className }: Props) => {
|
|
return (
|
|
<PrimitiveDatePicker
|
|
className={classNames(
|
|
"focus:ring-primary-500 focus:border-primary-500 border-default rounded-md border p-1 pl-2 shadow-sm sm:text-sm",
|
|
className
|
|
)}
|
|
calendarClassName="rounded-md"
|
|
clearIcon={null}
|
|
calendarIcon={<Icon name="calendar" className="text-subtle h-5 w-5 rounded-md" />}
|
|
value={date}
|
|
disabled={disabled}
|
|
onChange={onDatesChange}
|
|
/>
|
|
);
|
|
};
|
|
|
|
export default DatePicker;
|