566e1cf981
- миграция 00015: переопределение splash у приглашения (AGENT.md 7.9)
- GET /invites/{code} доступен без сессии: гость по ссылке видит карточку
сервера, описание, число участников и пригласившего
- POST/DELETE /invites/{code}/background: своя картинка страницы под правом
создателя или MANAGE_GUILD, файл удаляется при замене и снятии
- клиент: маршрут /invite/:code с фоном (переопределение → splash → баннер),
карточкой сервера, кнопками «Присоединиться»/«Открыть сервер» и входом с
возвратом на страницу (?next=)
- тесты: Go (карточка, загрузка, права, снятие) и Vitest (splash, гость,
присоединение, недействительная ссылка)
24 lines
1.6 KiB
TypeScript
24 lines
1.6 KiB
TypeScript
import { lazy } from 'react';
|
||
|
||
/**
|
||
* Ленивые страницы приложения. Лежат отдельно от таблицы маршрутов, чтобы
|
||
* модуль с `routes`/`router` не экспортировал компоненты (react-refresh).
|
||
*/
|
||
export const IndexRedirect = lazy(() => import('@/pages/IndexRedirect'));
|
||
export const LoginPage = lazy(() => import('@/pages/LoginPage'));
|
||
export const RegisterPage = lazy(() => import('@/pages/RegisterPage'));
|
||
export const OnboardingPage = lazy(() => import('@/pages/OnboardingPage'));
|
||
export const StatusPage = lazy(() => import('@/pages/StatusPage'));
|
||
export const InvitePage = lazy(() => import('@/pages/InvitePage'));
|
||
export const AppLayout = lazy(() => import('@/pages/app/AppLayout'));
|
||
export const GuildView = lazy(() => import('@/pages/app/GuildView'));
|
||
export const FriendsPage = lazy(() => import('@/pages/app/FriendsPage'));
|
||
export const NoGuildView = lazy(() => import('@/pages/app/NoGuildView'));
|
||
export const SettingsLayout = lazy(() => import('@/pages/settings/SettingsLayout'));
|
||
export const AccountSettingsLayout = lazy(() => import('@/pages/settings/AccountSettingsLayout'));
|
||
export const ProfileSettingsPage = lazy(() => import('@/pages/settings/ProfileSettingsPage'));
|
||
export const SecuritySettingsPage = lazy(() => import('@/pages/settings/SecuritySettingsPage'));
|
||
export const AppearanceSettingsPage = lazy(() => import('@/pages/settings/AppearanceSettingsPage'));
|
||
export const InstanceSettingsPage = lazy(() => import('@/pages/settings/InstanceSettingsPage'));
|
||
export const ProfileServerTab = lazy(() => import('@/pages/settings/ProfileServerTab'));
|