diff --git a/app/root.tsx b/app/root.tsx index 0e2edad8a..95e25611b 100644 --- a/app/root.tsx +++ b/app/root.tsx @@ -34,6 +34,7 @@ import * as NotificationRepository from "~/features/notifications/NotificationRe import { NOTIFICATIONS } from "~/features/notifications/notifications-contants"; import { resolveSidebarData } from "~/features/sidebar/core/sidebar.server"; import { useDebounce } from "~/hooks/useDebounce"; +import lexendLatinUrl from "~/styles/fonts/lexend-latin.woff2?url"; import type { SendouRouteHandle } from "~/utils/remix.server"; import type { Route } from "./+types/root"; import { Catcher } from "./components/Catcher"; @@ -79,6 +80,7 @@ export const middleware: Route.MiddlewareFunction[] = [ i18nMiddleware, ]; +import "~/styles/fonts.css"; import "~/styles/vars.css"; import "~/styles/normalize.css"; import "~/styles/common.css"; @@ -481,14 +483,13 @@ function HydrationTestIndicator() { function Fonts() { return ( - <> - - - - + ); } diff --git a/app/styles/fonts.css b/app/styles/fonts.css new file mode 100644 index 000000000..bc01b4ffa --- /dev/null +++ b/app/styles/fonts.css @@ -0,0 +1,32 @@ +/* +Lexend variable font, self-hosted. The weight range is capped at 700 to match +`--weight-extra`, so `font-weight: bolder` keeps clamping there as it did when +the four static weights were requested from Google Fonts. + +The vietnamese subset is intentionally omitted: no locale uses it. +*/ + +@font-face { + font-family: "Lexend"; + font-style: normal; + font-weight: 400 700; + font-display: swap; + src: url("./fonts/lexend-latin.woff2") format("woff2"); + unicode-range: + U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, + U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, + U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} + +@font-face { + font-family: "Lexend"; + font-style: normal; + font-weight: 400 700; + font-display: swap; + src: url("./fonts/lexend-latin-ext.woff2") format("woff2"); + unicode-range: + U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, + U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, + U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, + U+A720-A7FF; +} diff --git a/app/styles/fonts/lexend-latin-ext.woff2 b/app/styles/fonts/lexend-latin-ext.woff2 new file mode 100644 index 000000000..9ca4e6a77 Binary files /dev/null and b/app/styles/fonts/lexend-latin-ext.woff2 differ diff --git a/app/styles/fonts/lexend-latin.woff2 b/app/styles/fonts/lexend-latin.woff2 new file mode 100644 index 000000000..0968c152f Binary files /dev/null and b/app/styles/fonts/lexend-latin.woff2 differ