prmbr-image-mksaas/src/routes.ts
javayhu 52c30ec9d1 chore: enhance dashboard sidebar localization and add web manifest
- Add new dashboard sidebar item for navigation in both English and Chinese localization files.
- Introduce a new `site.webmanifest` file for improved PWA support.
- Update routing constants to include specific settings routes for better organization.
- Clean up imports in `config.tsx` and adjust sidebar links for clarity.
2025-03-15 15:47:27 +08:00

101 lines
2.1 KiB
TypeScript

/**
* The routes for the application
*/
export enum Routes {
Root = '/',
DefaultLoginRedirect = '/dashboard',
Features = '/#features',
FAQ = '/#faq',
Pricing = '/pricing',
TermsOfService = '/terms-of-service',
PrivacyPolicy = '/privacy-policy',
CookiePolicy = '/cookie-policy',
Blog = '/blog',
Changelog = '/changelog',
Roadmap = 'https://mksaas.featurebase.app',
About = '/about',
Contact = '/contact',
Waitlist = '/waitlist',
Login = '/auth/login',
Register = '/auth/register',
AuthError = '/auth/error',
ForgotPassword = '/auth/forgot-password',
ResetPassword = '/auth/reset-password',
Dashboard = '/dashboard',
SettingsGeneral = '/settings/general',
SettingsSecurity = '/settings/security',
SettingsBilling = '/settings/billing',
AIText = '/ai/text',
AIImage = '/ai/image',
AIVideo = '/ai/video',
AIAudio = '/ai/audio',
HeroBlocks = '/blocks/hero',
PricingBlocks = '/blocks/pricing',
FeaturesBlocks = '/blocks/features',
FAQBlocks = '/blocks/faq',
TestimonialsBlocks = '/blocks/testimonials',
StatsBlocks = '/blocks/stats',
CallToActionBlocks = '/blocks/call-to-action',
ContentBlocks = '/blocks/content',
}
/**
* An array of routes that are accessible to the public
* These routes do not require authentication
* @type {string[]}
*/
export const publicRoutes = [
'/',
// pages
'/blog(/.*)?',
'/terms-of-service(/.*)?',
'/privacy-policy(/.*)?',
'/cookie-policy(/.*)?',
'/about(/.*)?',
'/contact(/.*)?',
'/waitlist(/.*)?',
'/changelog(/.*)?',
// unsubscribe newsletter
'/unsubscribe(/.*)?',
// stripe webhook
'/api/webhook',
// og images
'/api/og',
];
/**
* The routes for the authentication pages
*/
export const authRoutes = [
Routes.AuthError,
Routes.Login,
Routes.Register,
Routes.ForgotPassword,
Routes.ResetPassword,
];
/**
* The prefix for API authentication routes
* Routes that start with this prefix are used for API authentication purposes
* @type {string}
*/
export const apiAuthPrefix = '/api/auth';
/**
* The default redirect path after logging in
* @type {string}
*/
export const DEFAULT_LOGIN_REDIRECT = Routes.Dashboard;