feat: add option to disable deleting calendar credentials for CalendarSettings atom (#18759)
This commit is contained in:
@@ -9,11 +9,13 @@ type CalendarSettingsPlatformWrapperProps = {
|
||||
selectedCalendarSettingsCustomClassnames?: string;
|
||||
};
|
||||
calendarRedirectUrls?: CalendarRedirectUrls;
|
||||
allowDelete?: boolean;
|
||||
};
|
||||
|
||||
export const CalendarSettingsPlatformWrapper = ({
|
||||
classNames,
|
||||
calendarRedirectUrls,
|
||||
allowDelete = true,
|
||||
}: CalendarSettingsPlatformWrapperProps) => {
|
||||
return (
|
||||
<div className={classNames?.calendarSettingsCustomClassnames}>
|
||||
@@ -24,6 +26,7 @@ export const CalendarSettingsPlatformWrapper = ({
|
||||
<SelectedCalendarsSettingsPlatformWrapper
|
||||
classNames={classNames?.selectedCalendarSettingsCustomClassnames}
|
||||
calendarRedirectUrls={calendarRedirectUrls}
|
||||
allowDelete={allowDelete}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
+10
-6
@@ -36,11 +36,13 @@ export type CalendarRedirectUrls = {
|
||||
type SelectedCalendarsSettingsPlatformWrapperProps = {
|
||||
classNames?: string;
|
||||
calendarRedirectUrls?: CalendarRedirectUrls;
|
||||
allowDelete?: boolean;
|
||||
};
|
||||
|
||||
export const SelectedCalendarsSettingsPlatformWrapper = ({
|
||||
classNames = "mx-5 mb-6",
|
||||
calendarRedirectUrls,
|
||||
allowDelete,
|
||||
}: SelectedCalendarsSettingsPlatformWrapperProps) => {
|
||||
const { t } = useLocale();
|
||||
const query = useConnectedCalendars({});
|
||||
@@ -81,12 +83,14 @@ export const SelectedCalendarsSettingsPlatformWrapper = ({
|
||||
className="border-subtle mt-4 rounded-lg border"
|
||||
actions={
|
||||
<div className="flex w-32 justify-end">
|
||||
<PlatformDisconnectIntegration
|
||||
credentialId={connectedCalendar.credentialId}
|
||||
trashIcon
|
||||
buttonProps={{ className: "border border-default" }}
|
||||
slug={connectedCalendar.integration.slug}
|
||||
/>
|
||||
{allowDelete && (
|
||||
<PlatformDisconnectIntegration
|
||||
credentialId={connectedCalendar.credentialId}
|
||||
trashIcon
|
||||
buttonProps={{ className: "border border-default" }}
|
||||
slug={connectedCalendar.integration.slug}
|
||||
/>
|
||||
)}
|
||||
</div>
|
||||
}>
|
||||
<div className="border-subtle border-t">
|
||||
|
||||
@@ -10,7 +10,7 @@ export default function Calendars(props: { calUsername: string; calEmail: string
|
||||
<main className={`flex min-h-screen flex-col ${inter.className}`}>
|
||||
<Navbar username={props.calUsername} />
|
||||
<div>
|
||||
<CalendarSettings />
|
||||
<CalendarSettings allowDelete={true} />
|
||||
</div>
|
||||
</main>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user