- Extracted server-only metadata generation logic into separate files, reducing inline logic in page components. - Added `/* istanbul ignore file */` annotations for E2E-covered framework-level metadata. - Standardized `generateMetadata` export patterns across auth, admin, and error pages for consistency. - Enhanced maintainability and readability by centralizing metadata definitions for each route.
23 lines
550 B
TypeScript
23 lines
550 B
TypeScript
/* istanbul ignore file - Framework-only metadata route covered by E2E */
|
|
import { MetadataRoute } from 'next';
|
|
|
|
/**
|
|
* Generate robots.txt
|
|
* Configures search engine crawler behavior
|
|
*/
|
|
export default function robots(): MetadataRoute.Robots {
|
|
const baseUrl = process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost:3000';
|
|
|
|
return {
|
|
rules: [
|
|
{
|
|
userAgent: '*',
|
|
allow: '/',
|
|
// Disallow authenticated routes
|
|
disallow: ['/admin/', '/settings/'],
|
|
},
|
|
],
|
|
sitemap: `${baseUrl}/sitemap.xml`,
|
|
};
|
|
}
|