import { IAppearanceConfig, MenuSectionConfig, SeoSettingsSectionConfig, } from '@common/admin/appearance/types/appearance-editor-config'; import {message} from '@common/i18n/message'; import {LandingPageSectionGeneral} from '@app/admin/appearance/sections/landing-page-section/landing-page-section-general'; import {LandingPageSectionActionButtons} from '@app/admin/appearance/sections/landing-page-section/landing-page-section-action-buttons'; import {LandingPageSectionPrimaryFeatures} from '@app/admin/appearance/sections/landing-page-section/landing-page-section-primary-features'; import {LandingPageSecondaryFeatures} from '@app/admin/appearance/sections/landing-page-section/landing-page-section-secondary-features'; import {AppearanceEditorBreadcrumbItem} from '@common/admin/appearance/types/appearance-editor-section'; export const AppAppearanceConfig: IAppearanceConfig = { preview: { defaultRoute: 'drive', navigationRoutes: ['s', 'drive'], }, sections: { 'landing-page': { label: message('Landing Page'), position: 1, previewRoute: '/', routes: [ {path: 'landing-page', element: }, { path: 'landing-page/action-buttons', element: , }, { path: 'landing-page/primary-features', element: , }, { path: 'landing-page/secondary-features', element: , }, ], buildBreadcrumb: (pathname, formValue) => { const parts = pathname.split('/').filter(p => !!p); const sectionName = parts.pop(); // admin/appearance const breadcrumb: AppearanceEditorBreadcrumbItem[] = [ { label: message('Landing page'), location: 'landing-page', }, ]; if (sectionName === 'action-buttons') { breadcrumb.push({ label: message('Action buttons'), location: 'landing-page/action-buttons', }); } if (sectionName === 'primary-features') { breadcrumb.push({ label: message('Primary features'), location: 'landing-page/primary-features', }); } if (sectionName === 'secondary-features') { breadcrumb.push({ label: message('Secondary features'), location: 'landing-page/secondary-features', }); } return breadcrumb; }, }, // missing label will get added by deepMerge from default config // @ts-ignore menus: { config: { positions: [ 'drive-navbar', 'drive-sidebar', 'homepage-navbar', 'shareable-link-page', 'footer', 'footer-secondary', ], availableRoutes: [ '/drive', '/drive/shares', '/drive/recent', '/drive/starred', '/drive/trash', ], } as MenuSectionConfig, }, // @ts-ignore 'seo-settings': { config: { pages: [ { key: 'landing-page', label: message('Landing page'), }, { key: 'shareable-link-page', label: message('Shareable link page'), }, ], } as SeoSettingsSectionConfig, }, }, };