diff --git a/config/project.ts b/config/project.ts index 4ae94eb..feb48a1 100644 --- a/config/project.ts +++ b/config/project.ts @@ -1,4 +1,4 @@ -export const APP_COLOR = '#f0eef6'; +export const PRIMARY_COLOR = '#3f88c5'; export const PROJECT_NAME = 'MyLinks'; export const PROJECT_DESCRIPTION = diff --git a/inertia/components/common/floating_navbar/user_dropdown.module.css b/inertia/components/common/floating_navbar/user_dropdown.module.css index 0f2b469..8432337 100644 --- a/inertia/components/common/floating_navbar/user_dropdown.module.css +++ b/inertia/components/common/floating_navbar/user_dropdown.module.css @@ -1,6 +1,6 @@ .user { color: light-dark(var(--mantine-color-black), var(--mantine-color-dark-0)); - padding: var(--mantine-spacing-xs) var(--mantine-spacing-sm); + padding: var(--mantine-spacing-xs) var(--mantine-spacing-sm) !important; border-radius: var(--mantine-radius-sm); transition: background-color 100ms ease; diff --git a/inertia/layouts/_base_layout.tsx b/inertia/layouts/_base_layout.tsx index beab870..bedcb9e 100644 --- a/inertia/layouts/_base_layout.tsx +++ b/inertia/layouts/_base_layout.tsx @@ -1,7 +1,13 @@ import { api } from '#adonis/api'; +import { PRIMARY_COLOR } from '#config/project'; import { PageProps } from '@adonisjs/inertia/types'; import { router, usePage } from '@inertiajs/react'; -import { ColorSchemeScript, MantineProvider } from '@mantine/core'; +import { + ColorSchemeScript, + createTheme, + MantineProvider, + rem, +} from '@mantine/core'; import '@mantine/core/styles.css'; import '@mantine/spotlight/styles.css'; import { createTuyau } from '@tuyau/client'; @@ -14,6 +20,57 @@ import '../styles/index.css'; const TRANSITION_IN_CLASS = '__transition_fadeIn'; const TRANSITION_OUT_CLASS = '__transition_fadeOut'; +const customTheme = createTheme({ + colors: { + blue: [ + '#e7f5ff', + '#d0ebff', + '#a5d8ff', + '#74c0fc', + '#4dabf7', + PRIMARY_COLOR, + '#228be6', + '#1c7ed6', + '#1971c2', + '#1864ab', + ], + }, + primaryColor: 'blue', + fontFamily: 'Poppins, sans-serif', + respectReducedMotion: true, + components: { + Button: { + styles: { + root: { + fontWeight: '400', + }, + }, + }, + Badge: { + styles: { + root: { + fontWeight: '500', + }, + }, + }, + }, + headings: { + fontWeight: '400', + + sizes: { + h1: { + fontSize: rem(36), + lineHeight: '1.4', + }, + h2: { fontSize: rem(30), lineHeight: '1.2' }, + h3: { fontSize: rem(24), lineHeight: '1.2' }, + h4: { fontSize: rem(20), lineHeight: '1.2' }, + h5: { fontSize: rem(16), lineHeight: '1.2' }, + h6: { fontSize: rem(12), lineHeight: '1.2' }, + }, + }, +}); + export function BaseLayout({ children }: { children: ReactNode }) { const { i18n } = useTranslation(); dayjs.locale(i18n.language); @@ -62,7 +119,7 @@ export function BaseLayout({ children }: { children: ReactNode }) { return ( - {children} + {children} ); } diff --git a/inertia/layouts/form_layout.tsx b/inertia/layouts/form_layout.tsx index beeb88f..39e7635 100644 --- a/inertia/layouts/form_layout.tsx +++ b/inertia/layouts/form_layout.tsx @@ -3,7 +3,6 @@ import { route } from '@izzyjs/route/client'; import { Anchor, Button, Container, Group, rem, Title } from '@mantine/core'; import { FormEvent, PropsWithChildren } from 'react'; import { useTranslation } from 'react-i18next'; -import { Footer } from '~/components/common/footer/footer'; import i18n from '~/i18n'; import { BaseLayout } from '~/layouts/_base_layout'; import { appendCollectionId } from '~/lib/navigation'; @@ -40,7 +39,7 @@ function FormLayout({ display: 'flex', flexDirection: 'column', }} - pt={80} + pt={rem(40)} >
-
diff --git a/inertia/pages/home.module.css b/inertia/pages/home.module.css index e872eff..b582045 100644 --- a/inertia/pages/home.module.css +++ b/inertia/pages/home.module.css @@ -17,6 +17,7 @@ } .description { + color: var(--mantine-color-dimmed); text-align: center; @media (max-width: $mantine-breakpoint-sm) { diff --git a/vite.config.ts b/vite.config.ts index e4bbd88..9e7810b 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,4 +1,8 @@ -import { APP_COLOR, PROJECT_DESCRIPTION, PROJECT_NAME } from '#config/project'; +import { + PRIMARY_COLOR, + PROJECT_DESCRIPTION, + PROJECT_NAME, +} from '#config/project'; import { getDirname } from '@adonisjs/core/helpers'; import inertia from '@adonisjs/inertia/client'; import adonisjs from '@adonisjs/vite/client'; @@ -19,8 +23,8 @@ export default defineConfig({ name: PROJECT_NAME, short_name: PROJECT_NAME, description: PROJECT_DESCRIPTION, - theme_color: APP_COLOR, - background_color: APP_COLOR, + theme_color: PRIMARY_COLOR, + background_color: PRIMARY_COLOR, scope: '/', display: 'standalone', orientation: 'portrait',