Files
homarr/packages/ui/src/theme.ts
T
+12 fcd7c979df feat!: release v2 (#6545)
Co-authored-by: Artur <145776561+arturict@users.noreply.github.com>
Co-authored-by: arturict <arturict@users.noreply.github.com>
Co-authored-by: Thomas <thomas@ajnart.fr>
Co-authored-by: Afonso Jorge Ramos <afonsojorgeramos@gmail.com>
Co-authored-by: Danura30082 <danura30082+github@gmail.com>
Co-authored-by: Kushie <122986913+kushiemoon-dev@users.noreply.github.com>
Co-authored-by: ajnart <thomas@ajnart.fr>
Co-authored-by: ajnart <thomas@ajnart.dev>
Co-authored-by: chenjun <chenjun@foxmail.com>
Co-authored-by: Wikibear <wikibear@users.noreply.github.com>
Co-authored-by: Bergasha <bergasha@gmail.com>
Co-authored-by: leafyelin <43306196+leafyelin@users.noreply.github.com>
Co-authored-by: Lucas Araujo <lucas.lra@gmail.com>
Co-authored-by: GreenMonito <86085570+GreenMonito@users.noreply.github.com>
Co-authored-by: Nerdy-Technician <roffo@nerdy-technician.social>
Co-authored-by: Jun <34545896+jcstrong@users.noreply.github.com>
Co-authored-by: Edmond Abraham <54119952+gitedmond@users.noreply.github.com>
Co-authored-by: thrawnx <tight.bulb9384@fastmail.com>
Co-authored-by: Chris <58918656+nordada@users.noreply.github.com>
Co-authored-by: yi111 <153097222+Yi-111-a@users.noreply.github.com>
Co-authored-by: Yanis <naamaneyanis@gmail.com>
Co-authored-by: Wikibear <me@sej.de>
Co-authored-by: alessiottavo <93441886+alessiottavo@users.noreply.github.com>
2026-10-02 21:00:14 +02:00

121 lines
2.5 KiB
TypeScript

import { createTheme, rem } from "@mantine/core";
import { modalComponent } from "./theme/modal";
export const scrollAreaDefaultProps = {
type: "hover",
scrollbarSize: 2,
scrollHideDelay: 500,
offsetScrollbars: true,
} as const;
export const theme = createTheme({
primaryColor: "red",
autoContrast: true,
respectReducedMotion: true,
cursorType: "pointer",
fontFamily: "Inter, system-ui, -apple-system, sans-serif",
fontFamilyMonospace: "ui-monospace, 'Cascadia Code', 'Fira Code', monospace",
headings: {
fontFamily: "Inter, system-ui, -apple-system, sans-serif",
fontWeight: "600",
sizes: {
h1: { fontSize: rem(36), lineHeight: "1.1", fontWeight: "700" },
h2: { fontSize: rem(24), lineHeight: "1.2", fontWeight: "700" },
h3: { fontSize: rem(20), lineHeight: "1.3", fontWeight: "600" },
h4: { fontSize: rem(16), lineHeight: "1.4", fontWeight: "600" },
h5: { fontSize: rem(14), lineHeight: "1.5", fontWeight: "600" },
h6: { fontSize: rem(12), lineHeight: "1.5", fontWeight: "600" },
},
},
fontSizes: {
xxs: rem(11),
xs: rem(12),
sm: rem(14),
md: rem(16),
lg: rem(18),
xl: rem(20),
},
spacing: {
xs: rem(10),
sm: rem(12),
md: rem(16),
lg: rem(20),
xl: rem(32),
},
radius: {
xs: rem(4),
sm: rem(4),
md: rem(8),
lg: rem(12),
xl: rem(16),
},
defaultRadius: "md",
shadows: {
xs: "0 1px 2px rgba(0, 0, 0, 0.04)",
sm: "0 1px 3px rgba(0, 0, 0, 0.06)",
md: "0 2px 8px rgba(0, 0, 0, 0.08)",
lg: "0 4px 12px rgba(0, 0, 0, 0.10)",
xl: "0 8px 24px rgba(0, 0, 0, 0.12)",
},
components: {
Card: {
defaultProps: {
withBorder: true,
radius: "lg",
},
},
Paper: {
defaultProps: {
withBorder: true,
radius: "md",
},
},
Button: {
defaultProps: {
radius: "md",
},
},
ActionIcon: {
defaultProps: {
radius: "md",
},
},
Tooltip: {
defaultProps: {
openDelay: 300,
},
},
Menu: {
defaultProps: {
withArrow: true,
},
},
NavLink: {
defaultProps: {
style: { borderRadius: 5 },
},
},
ScrollArea: {
defaultProps: scrollAreaDefaultProps,
},
ScrollAreaAutosize: {
defaultProps: scrollAreaDefaultProps,
},
LoadingOverlay: {
defaultProps: {
zIndex: 1000,
overlayProps: { radius: "sm", blur: 2 },
},
},
Modal: modalComponent,
},
});