Some checks are pending
E2E / Playwright e2e (push) Waiting to run
- Added SessionGuard component to manage session expiration and online status. - Updated AuthProvider to streamline session fetching and handling. - Introduced IdentityProvidersSection for managing OAuth, SAML, and LDAP identity providers. - Implemented identity provider guides for easier configuration. - Enhanced mail settings with infinite scroll option for improved user experience. - Updated global styles and layout components for better consistency across the application.
38 lines
1.3 KiB
TypeScript
38 lines
1.3 KiB
TypeScript
"use client"
|
|
|
|
import {
|
|
resolveMailSettingsSection,
|
|
type MailSettingsSectionId,
|
|
} from "@/lib/mail-settings/settings-nav"
|
|
import { DisplaySettingsSection } from "@/components/gmail/settings/sections/display-settings-section"
|
|
import { AccountsSettingsSection } from "@/components/gmail/settings/sections/accounts-settings-section"
|
|
import { LabelsFoldersSettingsSection } from "@/components/gmail/settings/sections/labels-folders-settings-section"
|
|
import { NotificationsSettingsSection } from "@/components/gmail/settings/sections/notifications-settings-section"
|
|
import { AutomationSettingsSection } from "@/components/gmail/settings/sections/automation-settings-section"
|
|
|
|
const SECTIONS: Record<MailSettingsSectionId, React.ComponentType> = {
|
|
display: DisplaySettingsSection,
|
|
accounts: AccountsSettingsSection,
|
|
labels: LabelsFoldersSettingsSection,
|
|
notifications: NotificationsSettingsSection,
|
|
automation: AutomationSettingsSection,
|
|
}
|
|
|
|
export function MailSettingsSectionView({
|
|
sectionId,
|
|
}: {
|
|
sectionId: MailSettingsSectionId
|
|
}) {
|
|
const Section = SECTIONS[sectionId]
|
|
return <Section />
|
|
}
|
|
|
|
export function MailSettingsSectionFromSegments({
|
|
segments,
|
|
}: {
|
|
segments?: string[]
|
|
}) {
|
|
const sectionId = resolveMailSettingsSection(segments)
|
|
return <MailSettingsSectionView sectionId={sectionId} />
|
|
}
|