* feat: add ListEventTypes atom (#25047) * feat: add ListEventTypes atom for Platform (#25047) - Add EventTypeListItem component in @calcom/features - Add ListEventTypesPlatformWrapper with delete functionality - Implement useAtomGetAllEventTypes hook - Update backend to include slug, description, length - Add 11 unit tests (65% coverage) - Add 3 i18n keys No breaking changes. Backward compatible. * refactor(eventtypes): improve EventTypeListItem readability - Extract EventTypeContent and EventTypeActions sub-components - Add formatEventTypeDuration helper (90min → '1h 30m') - Use Badge for duration display (consistency with EventTypeDescription) - Use polymorphic Wrapper component (DRY) - Add comprehensive tests - Reduce main component size Addresses @volnei feedback * refactor: replace window.confirm with ConfirmationDialog - Replace native window.confirm with ConfirmationDialogContent - Update test mocks for Dialog components - Fix HTML nesting (div instead of p for Badge container) - Follows Cal.com pattern from AvailabilitySettings Addresses @ThyMinimalDev feedback * fix: add aria-label to options button for accessibility * test: update getBulkEventTypes test to include new fields (description, slug, length) * refactor: move EventTypeListItem to atoms package --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
55 lines
3.7 KiB
TypeScript
55 lines
3.7 KiB
TypeScript
export { CalProvider } from "./cal-provider";
|
|
export { GcalConnect } from "./connect/google/GcalConnect";
|
|
export { AvailabilitySettingsPlatformWrapper as AvailabilitySettings } from "./availability";
|
|
export type { AvailabilitySettingsPlatformWrapperProps as AvailabilitySettingsProps } from "./availability/wrappers/AvailabilitySettingsPlatformWrapper";
|
|
export type { AvailabilitySettingsScheduleType } from "./availability/AvailabilitySettings";
|
|
export { BookerPlatformWrapper as Booker } from "./booker/BookerPlatformWrapper";
|
|
export { useIsPlatform } from "./hooks/useIsPlatform";
|
|
export { useAtomsContext } from "./hooks/useAtomsContext";
|
|
export { useConnectedCalendars } from "./hooks/useConnectedCalendars";
|
|
export { useEventTypes } from "./hooks/event-types/public/useEventTypes";
|
|
export { useTeamEventTypes } from "./hooks/event-types/public/useTeamEventTypes";
|
|
export { useEventType as useEvent } from "./hooks/event-types/public/useEventType";
|
|
export { useEventTypeById } from "./hooks/event-types/private/useEventTypeById";
|
|
export { useCancelBooking } from "./hooks/bookings/useCancelBooking";
|
|
export { useBooking } from "./hooks/bookings/useBooking";
|
|
export { useBookings } from "./hooks/bookings/useBookings";
|
|
export { useMe } from "./hooks/useMe";
|
|
export { OutlookConnect } from "./connect/outlook/OutlookConnect";
|
|
export * as Connect from "./connect";
|
|
export { BookerEmbed } from "./booker-embed";
|
|
export { Router } from "./router";
|
|
|
|
export { useDeleteCalendarCredentials } from "./hooks/calendars/useDeleteCalendarCredentials";
|
|
export { useAddSelectedCalendar } from "./hooks/calendars/useAddSelectedCalendar";
|
|
export { useRemoveSelectedCalendar } from "./hooks/calendars/useRemoveSelectedCalendar";
|
|
export { useTeams } from "./hooks/teams/useTeams";
|
|
export { SelectedCalendarsSettingsPlatformWrapper as SelectedCalendarsSettings } from "./selected-calendars/index";
|
|
export { DestinationCalendarSettingsPlatformWrapper as DestinationCalendarSettings } from "./destination-calendar/index";
|
|
export { CalendarSettingsPlatformWrapper as CalendarSettings } from "./calendar-settings/index";
|
|
export type { UpdateScheduleInput_2024_06_11 as UpdateScheduleBody } from "@calcom/platform-types";
|
|
export { EventTypePlatformWrapper as EventTypeSettings } from "./event-types/wrappers/EventTypePlatformWrapper";
|
|
export type { EventSettingsFromRef } from "./event-types/wrappers/types";
|
|
export type { AvailabilitySettingsFormRef } from "./availability/types";
|
|
export { ConferencingAppsViewPlatformWrapper as ConferencingAppsSettings } from "./connect/conferencing-apps/ConferencingAppsViewPlatformWrapper";
|
|
export { StripeConnect } from "./connect/stripe/StripeConnect";
|
|
export { CreateEventTypePlatformWrapper as CreateEventType } from "./event-types/wrappers/CreateEventTypePlatformWrapper";
|
|
export { PaymentForm } from "./event-types/payments/PaymentForm";
|
|
|
|
export { useCreateEventType } from "./hooks/event-types/private/useCreateEventType";
|
|
export { useCreateTeamEventType } from "./hooks/event-types/private/useCreateTeamEventType";
|
|
|
|
export { useOrganizationBookings } from "./hooks/organizations/bookings/useOrganizationBookings";
|
|
export { useOrganizationUserBookings } from "./hooks/organizations/bookings/useOrganizationUserBookings";
|
|
|
|
export { CalendarViewPlatformWrapper as CalendarView } from "./calendar-view/index";
|
|
|
|
export { CreateSchedulePlatformWrapper as CreateSchedule } from "./create-schedule/index";
|
|
export { CreateScheduleForm } from "./create-schedule/CreateScheduleForm";
|
|
|
|
export { ListSchedulesPlatformWrapper as ListSchedules } from "./list-schedules/index";
|
|
|
|
export { ListEventTypesPlatformWrapper as ListEventTypes } from "./event-types/index";
|
|
|
|
export { useAvailableSlots } from "./hooks/useAvailableSlots";
|