feat: добавить документацию NextJS Style Guide
- добавлен отдельный VitePress-сайт для NextJS Style Guide - удалены дубли SLM-канонов из style-guide - обновлены ссылки, сборочные скрипты, CI, Docker и README - разблокирована карточка NextJS Style Guide на главной
This commit is contained in:
11
src/App.tsx
11
src/App.tsx
@@ -98,11 +98,11 @@ const applyTheme = (theme: ThemeMode) => {
|
||||
|
||||
function useTheme() {
|
||||
const [theme, setTheme] = useState<ThemeMode>(getStoredTheme)
|
||||
const [resolvedTheme, setResolvedTheme] = useState<ResolvedTheme>(() => resolveTheme(getStoredTheme()))
|
||||
const [systemTheme, setSystemTheme] = useState<ResolvedTheme>(getSystemTheme)
|
||||
const resolvedTheme = theme === 'auto' ? systemTheme : theme
|
||||
|
||||
useLayoutEffect(() => {
|
||||
applyTheme(theme)
|
||||
setResolvedTheme(resolveTheme(theme))
|
||||
}, [theme])
|
||||
|
||||
useEffect(() => {
|
||||
@@ -110,13 +110,14 @@ function useTheme() {
|
||||
|
||||
const mediaQuery = window.matchMedia(DARK_THEME_QUERY)
|
||||
const handleSystemThemeChange = () => {
|
||||
if (theme !== 'auto') return
|
||||
const nextResolvedTheme = getSystemTheme()
|
||||
|
||||
const nextResolvedTheme = resolveTheme(theme)
|
||||
setSystemTheme(nextResolvedTheme)
|
||||
|
||||
if (theme !== 'auto') return
|
||||
|
||||
document.documentElement.style.colorScheme = nextResolvedTheme
|
||||
document.documentElement.classList.toggle('dark', nextResolvedTheme === 'dark')
|
||||
setResolvedTheme(nextResolvedTheme)
|
||||
}
|
||||
|
||||
mediaQuery.addEventListener('change', handleSystemThemeChange)
|
||||
|
||||
@@ -30,10 +30,11 @@ export const docs: DocCard[] = [
|
||||
},
|
||||
{
|
||||
title: 'NextJS Style Guide',
|
||||
label: 'Стиль проекта',
|
||||
label: 'Стайлгайд',
|
||||
mark: 'NX',
|
||||
description: 'Правила организации Next.js-приложений, роутинга, серверных границ и проектных соглашений.',
|
||||
status: 'Скоро',
|
||||
description: 'Практический стайлгайд для разработки frontend-приложений на Next.js и TypeScript.',
|
||||
href: '/nextjs-style-guide/',
|
||||
status: 'Доступно',
|
||||
accent: 'blue',
|
||||
links: [
|
||||
{ label: 'llms.txt', href: '/nextjs-style-guide/llms.txt' },
|
||||
@@ -42,7 +43,7 @@ export const docs: DocCard[] = [
|
||||
},
|
||||
{
|
||||
title: 'React Style Guide',
|
||||
label: 'Стиль кода',
|
||||
label: 'Стайлгайд',
|
||||
mark: 'RE',
|
||||
description: 'Практики написания React-компонентов, хуков, состояния и клиентского UI-кода.',
|
||||
status: 'Скоро',
|
||||
|
||||
Reference in New Issue
Block a user