@lovrozagar/flare 0.9.11 → 0.9.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/scripts/populate-fonts.ts +43 -5
- package/src/fonts/abeezee.ts +3 -3
- package/src/fonts/abel.ts +3 -3
- package/src/fonts/abril-fatface.ts +3 -3
- package/src/fonts/acme.ts +3 -3
- package/src/fonts/advent-pro.ts +3 -3
- package/src/fonts/alegreya-sans.ts +3 -3
- package/src/fonts/alegreya.ts +3 -3
- package/src/fonts/alex-brush.ts +3 -3
- package/src/fonts/alfa-slab-one.ts +3 -3
- package/src/fonts/alice.ts +3 -3
- package/src/fonts/amatic-sc.ts +3 -3
- package/src/fonts/amiri.ts +3 -3
- package/src/fonts/antic-slab.ts +3 -3
- package/src/fonts/anton.ts +3 -3
- package/src/fonts/archivo-black.ts +3 -3
- package/src/fonts/archivo-narrow.ts +3 -3
- package/src/fonts/archivo.ts +3 -3
- package/src/fonts/arvo.ts +4 -4
- package/src/fonts/asap.ts +3 -3
- package/src/fonts/assistant.ts +3 -3
- package/src/fonts/baloo-2.ts +3 -3
- package/src/fonts/barlow-condensed.ts +3 -3
- package/src/fonts/barlow-semi-condensed.ts +3 -3
- package/src/fonts/barlow.ts +3 -3
- package/src/fonts/be-vietnam-pro.ts +3 -3
- package/src/fonts/bebas-neue.ts +3 -3
- package/src/fonts/besley.ts +3 -3
- package/src/fonts/biorhyme.ts +3 -3
- package/src/fonts/bitter.ts +3 -3
- package/src/fonts/black-ops-one.ts +3 -3
- package/src/fonts/bree-serif.ts +3 -3
- package/src/fonts/bricolage-grotesque.ts +3 -3
- package/src/fonts/cabin.ts +3 -3
- package/src/fonts/cairo.ts +3 -3
- package/src/fonts/cardo.ts +3 -3
- package/src/fonts/catamaran.ts +3 -3
- package/src/fonts/caveat.ts +3 -3
- package/src/fonts/chakra-petch.ts +3 -3
- package/src/fonts/chivo.ts +3 -3
- package/src/fonts/cinzel.ts +3 -3
- package/src/fonts/comfortaa.ts +3 -3
- package/src/fonts/commissioner.ts +3 -3
- package/src/fonts/cormorant-garamond.ts +3 -3
- package/src/fonts/cormorant.ts +3 -3
- package/src/fonts/courgette.ts +3 -3
- package/src/fonts/courier-prime.ts +3 -3
- package/src/fonts/crete-round.ts +3 -3
- package/src/fonts/crimson-text.ts +3 -3
- package/src/fonts/css.ts +18 -1
- package/src/fonts/dancing-script.ts +3 -3
- package/src/fonts/dm-mono.ts +3 -3
- package/src/fonts/dm-sans.ts +3 -3
- package/src/fonts/dm-serif-display.ts +3 -3
- package/src/fonts/domine.ts +3 -3
- package/src/fonts/dosis.ts +3 -3
- package/src/fonts/eb-garamond.ts +3 -3
- package/src/fonts/eczar.ts +3 -3
- package/src/fonts/encode-sans.ts +3 -3
- package/src/fonts/epilogue.ts +3 -3
- package/src/fonts/exo-2.ts +3 -3
- package/src/fonts/exo.ts +3 -3
- package/src/fonts/figtree.ts +3 -3
- package/src/fonts/fira-code.ts +3 -3
- package/src/fonts/fira-sans-condensed.ts +3 -3
- package/src/fonts/fira-sans.ts +3 -3
- package/src/fonts/fjalla-one.ts +3 -3
- package/src/fonts/fraunces.ts +3 -3
- package/src/fonts/fredoka.ts +3 -3
- package/src/fonts/gelasio.ts +3 -3
- package/src/fonts/gloria-hallelujah.ts +3 -3
- package/src/fonts/gothic-a1.ts +4 -4
- package/src/fonts/great-vibes.ts +3 -3
- package/src/fonts/gudea.ts +3 -3
- package/src/fonts/heebo.ts +3 -3
- package/src/fonts/hind-siliguri.ts +3 -3
- package/src/fonts/hind.ts +3 -3
- package/src/fonts/ibm-plex-mono.ts +3 -3
- package/src/fonts/ibm-plex-sans-arabic.ts +3 -3
- package/src/fonts/ibm-plex-sans.ts +3 -3
- package/src/fonts/ibm-plex-serif.ts +3 -3
- package/src/fonts/inconsolata.ts +3 -3
- package/src/fonts/indie-flower.ts +3 -3
- package/src/fonts/instrument-sans.ts +3 -3
- package/src/fonts/instrument-serif.ts +3 -3
- package/src/fonts/inter-display.ts +9 -3
- package/src/fonts/inter-tight.ts +3 -3
- package/src/fonts/inter.ts +3 -3
- package/src/fonts/jetbrains-mono.ts +3 -3
- package/src/fonts/josefin-sans.ts +3 -3
- package/src/fonts/josefin-slab.ts +3 -3
- package/src/fonts/jost.ts +3 -3
- package/src/fonts/kalam.ts +3 -3
- package/src/fonts/kanit.ts +3 -3
- package/src/fonts/karla.ts +3 -3
- package/src/fonts/khand.ts +3 -3
- package/src/fonts/lato.ts +3 -3
- package/src/fonts/league-spartan.ts +3 -3
- package/src/fonts/lexend-deca.ts +3 -3
- package/src/fonts/lexend.ts +3 -3
- package/src/fonts/libre-baskerville.ts +3 -3
- package/src/fonts/libre-franklin.ts +3 -3
- package/src/fonts/lilita-one.ts +3 -3
- package/src/fonts/lobster-two.ts +3 -3
- package/src/fonts/lobster.ts +3 -3
- package/src/fonts/lora.ts +3 -3
- package/src/fonts/m-plus-rounded-1c.ts +4 -4
- package/src/fonts/manrope.ts +3 -3
- package/src/fonts/maven-pro.ts +3 -3
- package/src/fonts/merriweather-sans.ts +3 -3
- package/src/fonts/merriweather.ts +3 -3
- package/src/fonts/montserrat-alternates.ts +3 -3
- package/src/fonts/montserrat.ts +3 -3
- package/src/fonts/mukta.ts +3 -3
- package/src/fonts/mulish.ts +3 -3
- package/src/fonts/nanum-gothic.ts +3 -3
- package/src/fonts/nanum-myeongjo.ts +4 -4
- package/src/fonts/neuton.ts +3 -3
- package/src/fonts/newsreader.ts +3 -3
- package/src/fonts/noticia-text.ts +3 -3
- package/src/fonts/noto-sans-arabic.ts +3 -3
- package/src/fonts/noto-sans-hk.ts +3 -3
- package/src/fonts/noto-sans-jp.ts +3 -3
- package/src/fonts/noto-sans-kr.ts +3 -3
- package/src/fonts/noto-sans-sc.ts +3 -3
- package/src/fonts/noto-sans-tc.ts +3 -3
- package/src/fonts/noto-sans.ts +3 -3
- package/src/fonts/noto-serif-jp.ts +3 -3
- package/src/fonts/noto-serif.ts +3 -3
- package/src/fonts/nunito-sans.ts +3 -3
- package/src/fonts/nunito.ts +3 -3
- package/src/fonts/old-standard-tt.ts +4 -4
- package/src/fonts/onest.ts +3 -3
- package/src/fonts/open-sans.ts +3 -3
- package/src/fonts/orbitron.ts +3 -3
- package/src/fonts/oswald.ts +3 -3
- package/src/fonts/outfit.ts +3 -3
- package/src/fonts/overpass.ts +3 -3
- package/src/fonts/oxygen.ts +3 -3
- package/src/fonts/pacifico.ts +3 -3
- package/src/fonts/passion-one.ts +3 -3
- package/src/fonts/pathway-gothic-one.ts +3 -3
- package/src/fonts/permanent-marker.ts +4 -4
- package/src/fonts/philosopher.ts +3 -3
- package/src/fonts/play.ts +3 -3
- package/src/fonts/playfair-display.ts +3 -3
- package/src/fonts/plus-jakarta-sans.ts +3 -3
- package/src/fonts/poppins.ts +4 -4
- package/src/fonts/prompt.ts +3 -3
- package/src/fonts/pt-sans-narrow.ts +3 -3
- package/src/fonts/pt-sans.ts +3 -3
- package/src/fonts/pt-serif.ts +3 -3
- package/src/fonts/public-sans.ts +3 -3
- package/src/fonts/questrial.ts +3 -3
- package/src/fonts/quicksand.ts +3 -3
- package/src/fonts/rajdhani.ts +3 -3
- package/src/fonts/raleway.ts +3 -3
- package/src/fonts/recursive.ts +3 -3
- package/src/fonts/red-hat-display.ts +3 -3
- package/src/fonts/red-rose.ts +3 -3
- package/src/fonts/righteous.ts +3 -3
- package/src/fonts/roboto-condensed.ts +3 -3
- package/src/fonts/roboto-flex.ts +3 -3
- package/src/fonts/roboto-mono.ts +3 -3
- package/src/fonts/roboto-slab.ts +3 -3
- package/src/fonts/roboto.ts +3 -3
- package/src/fonts/rokkitt.ts +3 -3
- package/src/fonts/rubik.ts +3 -3
- package/src/fonts/sacramento.ts +3 -3
- package/src/fonts/saira.ts +3 -3
- package/src/fonts/sarabun.ts +3 -3
- package/src/fonts/satisfy.ts +4 -4
- package/src/fonts/sawarabi-mincho.ts +4 -4
- package/src/fonts/shadows-into-light.ts +3 -3
- package/src/fonts/signika-negative.ts +3 -3
- package/src/fonts/signika.ts +3 -3
- package/src/fonts/slabo-27px.ts +3 -3
- package/src/fonts/sora.ts +3 -3
- package/src/fonts/source-code-pro.ts +3 -3
- package/src/fonts/source-sans-3.ts +3 -3
- package/src/fonts/source-serif-4.ts +3 -3
- package/src/fonts/space-grotesk.ts +3 -3
- package/src/fonts/space-mono.ts +3 -3
- package/src/fonts/spectral.ts +3 -3
- package/src/fonts/tajawal.ts +4 -4
- package/src/fonts/teko.ts +3 -3
- package/src/fonts/tenor-sans.ts +3 -3
- package/src/fonts/titillium-web.ts +3 -3
- package/src/fonts/ubuntu-condensed.ts +4 -4
- package/src/fonts/ubuntu-mono.ts +3 -3
- package/src/fonts/ubuntu.ts +4 -4
- package/src/fonts/unbounded.ts +3 -3
- package/src/fonts/urbanist.ts +3 -3
- package/src/fonts/varela-round.ts +3 -3
- package/src/fonts/vollkorn.ts +3 -3
- package/src/fonts/work-sans.ts +3 -3
- package/src/fonts/yanone-kaffeesatz.ts +4 -4
- package/src/fonts/yantramanav.ts +3 -3
- package/src/fonts/yellowtail.ts +4 -4
- package/src/fonts/young-serif.ts +3 -3
- package/src/fonts/zen-kaku-gothic-new.ts +3 -3
- package/src/fonts/zilla-slab.ts +3 -3
package/README.md
CHANGED
|
@@ -798,7 +798,7 @@ import hero from "../assets/hero.jpg";
|
|
|
798
798
|
<Image src={hero} alt="Hero" widths={[400, 800, 1200]} placeholder={false} />
|
|
799
799
|
```
|
|
800
800
|
|
|
801
|
-
`flare font add` writes `public/fonts/` + subset CSS. Fallback
|
|
801
|
+
`flare font add` writes `public/fonts/` + subset CSS. Each font ships a `"<Family> Fallback"` face: Arial / Times New Roman / Courier New (or their metric-compatible Liberation and Croscore clones on Linux) with `size-adjust` matched to the font's average character width, so text wraps the same before and after the swap. Use `font.fontFamily`, which lists it, or name the fallback face in your own stack.
|
|
802
802
|
|
|
803
803
|
`Image` emits `srcset`, optional blur placeholder. The Vite image plugin rewrites imports. `configureImage({ ... })` sets app-wide defaults. Typed imports look like `hero.d.jpg.ts` next to the file.
|
|
804
804
|
|
package/package.json
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
* and generates registry.gen.ts, unicode-ranges.gen.ts, and per-font files.
|
|
4
4
|
*
|
|
5
5
|
* Usage: bun run scripts/populate-fonts.ts
|
|
6
|
+
* bun run scripts/populate-fonts.ts --metrics-only (recompute fallback metrics in place)
|
|
6
7
|
*/
|
|
7
8
|
import { createHash } from "node:crypto";
|
|
8
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
9
|
+
import { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
9
10
|
import { join } from "node:path";
|
|
10
11
|
|
|
11
12
|
function writeGenFile(filePath: string, body: string, generator: string): void {
|
|
@@ -408,6 +409,7 @@ async function getFallbackMetrics(
|
|
|
408
409
|
descent: number;
|
|
409
410
|
lineGap: number;
|
|
410
411
|
unitsPerEm: number;
|
|
412
|
+
xWidthAvg: number;
|
|
411
413
|
};
|
|
412
414
|
|
|
413
415
|
try {
|
|
@@ -419,11 +421,10 @@ async function getFallbackMetrics(
|
|
|
419
421
|
return undefined;
|
|
420
422
|
}
|
|
421
423
|
|
|
422
|
-
/*
|
|
424
|
+
/* size-adjust matches average character width (Capsize's xWidthAvg), so fallback text wraps
|
|
425
|
+
like the real font; the vertical overrides are then expressed in the adjusted em. */
|
|
423
426
|
const sizeAdjust =
|
|
424
|
-
|
|
425
|
-
(fallbackMetrics.ascent - fallbackMetrics.descent + fallbackMetrics.lineGap)) /
|
|
426
|
-
(metrics.ascent - metrics.descent + metrics.lineGap);
|
|
427
|
+
metrics.xWidthAvg / metrics.unitsPerEm / (fallbackMetrics.xWidthAvg / fallbackMetrics.unitsPerEm);
|
|
427
428
|
|
|
428
429
|
const ascentOverride = metrics.ascent / (metrics.unitsPerEm * sizeAdjust);
|
|
429
430
|
const descentOverride = Math.abs(metrics.descent) / (metrics.unitsPerEm * sizeAdjust);
|
|
@@ -592,10 +593,47 @@ function buildFileName(entry: { style: "italic" | "normal"; subset: string; weig
|
|
|
592
593
|
return `${parts.join("-")}.woff2`;
|
|
593
594
|
}
|
|
594
595
|
|
|
596
|
+
/* ── metrics-only pass ─────────────────────────────────────────── */
|
|
597
|
+
|
|
598
|
+
/* Rewrite each font file's fallbackMetrics block from Capsize, leaving everything else untouched. */
|
|
599
|
+
async function updateFallbackMetrics(fontsDir: string): Promise<void> {
|
|
600
|
+
let updated = 0;
|
|
601
|
+
const missing: string[] = [];
|
|
602
|
+
for (const name of readdirSync(fontsDir)
|
|
603
|
+
.filter((f) => f.endsWith(".ts"))
|
|
604
|
+
.sort()) {
|
|
605
|
+
const file = join(fontsDir, name);
|
|
606
|
+
const source = readFileSync(file, "utf-8");
|
|
607
|
+
const family = /\bfamily: "([^"]+)"/.exec(source)?.[1];
|
|
608
|
+
const category = /\bcategory: "([^"]+)"/.exec(source)?.[1] ?? "sans-serif";
|
|
609
|
+
if (!family || !source.includes("fallbackMetrics: {")) continue;
|
|
610
|
+
const metrics = await getFallbackMetrics(family, category);
|
|
611
|
+
if (!metrics) {
|
|
612
|
+
missing.push(family);
|
|
613
|
+
continue;
|
|
614
|
+
}
|
|
615
|
+
const next = source.replace(
|
|
616
|
+
/(fallbackMetrics: \{\n)(\s*)ascentOverride: "[^"]*",\n\s*descentOverride: "[^"]*",\n\s*fallbackFont: "[^"]*",\n\s*lineGapOverride: "[^"]*",\n\s*sizeAdjust: "[^"]*",/,
|
|
617
|
+
(_match, open: string, indent: string) =>
|
|
618
|
+
`${open}${indent}ascentOverride: "${metrics.ascentOverride}",\n${indent}descentOverride: "${metrics.descentOverride}",\n${indent}fallbackFont: "${metrics.fallbackFont}",\n${indent}lineGapOverride: "${metrics.lineGapOverride}",\n${indent}sizeAdjust: "${metrics.sizeAdjust}",`,
|
|
619
|
+
);
|
|
620
|
+
if (next !== source) {
|
|
621
|
+
writeFileSync(file, next);
|
|
622
|
+
updated++;
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
console.log(`Updated fallback metrics in ${updated} font files`);
|
|
626
|
+
if (missing.length > 0) console.log(`No Capsize metrics (left as is): ${missing.join(", ")}`);
|
|
627
|
+
}
|
|
628
|
+
|
|
595
629
|
/* ── main pipeline ─────────────────────────────────────────────── */
|
|
596
630
|
|
|
597
631
|
async function main(): Promise<void> {
|
|
598
632
|
const fontsDir = join(import.meta.dirname ?? ".", "..", "src", "fonts");
|
|
633
|
+
if (process.argv.includes("--metrics-only")) {
|
|
634
|
+
await updateFallbackMetrics(fontsDir);
|
|
635
|
+
return;
|
|
636
|
+
}
|
|
599
637
|
|
|
600
638
|
if (!existsSync(fontsDir)) {
|
|
601
639
|
mkdirSync(fontsDir, { recursive: true });
|
package/src/fonts/abeezee.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const abeezee: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "85.27%",
|
|
8
|
+
descentOverride: "24.28%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "107.90%",
|
|
12
12
|
},
|
|
13
13
|
family: "ABeeZee",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/abel.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const abel: Font<"latin"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "114.21%",
|
|
8
|
+
descentOverride: "34.39%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "85.76%",
|
|
12
12
|
},
|
|
13
13
|
family: "Abel",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const abrilFatface: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "display",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "102.31%",
|
|
8
|
+
descentOverride: "28.14%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "103.41%",
|
|
12
12
|
},
|
|
13
13
|
family: "Abril Fatface",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/acme.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const acme: Font<"latin"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "109.06%",
|
|
8
|
+
descentOverride: "34.91%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "87.93%",
|
|
12
12
|
},
|
|
13
13
|
family: "Acme",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/advent-pro.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const adventPro: Font<"cyrillic" | "cyrillic-ext" | "greek" | "latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "117.42%",
|
|
8
|
+
descentOverride: "28.26%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "82.10%",
|
|
12
12
|
},
|
|
13
13
|
family: "Advent Pro",
|
|
14
14
|
subsetEntries: [
|
|
@@ -6,11 +6,11 @@ export const alegreyaSans: Font<
|
|
|
6
6
|
> = createRegistryFont({
|
|
7
7
|
category: "sans-serif",
|
|
8
8
|
fallbackMetrics: {
|
|
9
|
-
ascentOverride: "
|
|
10
|
-
descentOverride: "
|
|
9
|
+
ascentOverride: "103.67%",
|
|
10
|
+
descentOverride: "34.56%",
|
|
11
11
|
fallbackFont: "Arial",
|
|
12
12
|
lineGapOverride: "0.00%",
|
|
13
|
-
sizeAdjust: "
|
|
13
|
+
sizeAdjust: "86.81%",
|
|
14
14
|
},
|
|
15
15
|
family: "Alegreya Sans",
|
|
16
16
|
subsetEntries: [
|
package/src/fonts/alegreya.ts
CHANGED
|
@@ -6,11 +6,11 @@ export const alegreya: Font<
|
|
|
6
6
|
> = createRegistryFont({
|
|
7
7
|
category: "serif",
|
|
8
8
|
fallbackMetrics: {
|
|
9
|
-
ascentOverride: "
|
|
10
|
-
descentOverride: "
|
|
9
|
+
ascentOverride: "100.67%",
|
|
10
|
+
descentOverride: "34.18%",
|
|
11
11
|
fallbackFont: "Times New Roman",
|
|
12
12
|
lineGapOverride: "0.00%",
|
|
13
|
-
sizeAdjust: "
|
|
13
|
+
sizeAdjust: "100.92%",
|
|
14
14
|
},
|
|
15
15
|
family: "Alegreya",
|
|
16
16
|
subsetEntries: [
|
package/src/fonts/alex-brush.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const alexBrush: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "handwriting",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "107.86%",
|
|
8
|
+
descentOverride: "55.56%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "76.49%",
|
|
12
12
|
},
|
|
13
13
|
family: "Alex Brush",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const alfaSlabOne: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "display",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "85.85%",
|
|
8
|
+
descentOverride: "27.59%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "120.68%",
|
|
12
12
|
},
|
|
13
13
|
family: "Alfa Slab One",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/alice.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const alice: Font<"cyrillic" | "cyrillic-ext" | "latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "81.88%",
|
|
8
|
+
descentOverride: "21.08%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "111.02%",
|
|
12
12
|
},
|
|
13
13
|
family: "Alice",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/amatic-sc.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const amaticSc: Font<"cyrillic" | "hebrew" | "latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "handwriting",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "157.82%",
|
|
8
|
+
descentOverride: "38.06%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "64.38%",
|
|
12
12
|
},
|
|
13
13
|
family: "Amatic SC",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/amiri.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const amiri: Font<"arabic" | "latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "112.47%",
|
|
8
|
+
descentOverride: "63.44%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "99.94%",
|
|
12
12
|
},
|
|
13
13
|
family: "Amiri",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/antic-slab.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const anticSlab: Font<"latin"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "80.73%",
|
|
8
|
+
descentOverride: "21.47%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "116.43%",
|
|
12
12
|
},
|
|
13
13
|
family: "Antic Slab",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/anton.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const anton: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "129.70%",
|
|
8
|
+
descentOverride: "36.29%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "90.69%",
|
|
12
12
|
},
|
|
13
13
|
family: "Anton",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const archivoBlack: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "70.78%",
|
|
8
|
+
descentOverride: "16.93%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "124.05%",
|
|
12
12
|
},
|
|
13
13
|
family: "Archivo Black",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const archivoNarrow: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "125.38%",
|
|
8
|
+
descentOverride: "37.80%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "82.55%",
|
|
12
12
|
},
|
|
13
13
|
family: "Archivo Narrow",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/archivo.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const archivo: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "88.96%",
|
|
8
|
+
descentOverride: "21.28%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "98.70%",
|
|
12
12
|
},
|
|
13
13
|
family: "Archivo",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/arvo.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const arvo: Font<"latin"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "79.95%",
|
|
8
|
+
descentOverride: "20.56%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
|
-
lineGapOverride: "2.
|
|
11
|
-
sizeAdjust: "
|
|
10
|
+
lineGapOverride: "2.23%",
|
|
11
|
+
sizeAdjust: "120.19%",
|
|
12
12
|
},
|
|
13
13
|
family: "Arvo",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/asap.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const asap: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "21.
|
|
7
|
+
ascentOverride: "94.20%",
|
|
8
|
+
descentOverride: "21.38%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "99.15%",
|
|
12
12
|
},
|
|
13
13
|
family: "Asap",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/assistant.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const assistant: Font<"hebrew" | "latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "109.94%",
|
|
8
|
+
descentOverride: "30.90%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "87
|
|
11
|
+
sizeAdjust: "92.87%",
|
|
12
12
|
},
|
|
13
13
|
family: "Assistant",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/baloo-2.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const baloo2: Font<"devanagari" | "latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "display",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "112.55%",
|
|
8
|
+
descentOverride: "54.71%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "95.78%",
|
|
12
12
|
},
|
|
13
13
|
family: "Baloo 2",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const barlowCondensed: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "130.73%",
|
|
8
|
+
descentOverride: "26.15%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "76.49%",
|
|
12
12
|
},
|
|
13
13
|
family: "Barlow Condensed",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const barlowSemiCondensed: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "115.49%",
|
|
8
|
+
descentOverride: "23.10%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "86.59%",
|
|
12
12
|
},
|
|
13
13
|
family: "Barlow Semi Condensed",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/barlow.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const barlow: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "20.
|
|
7
|
+
ascentOverride: "103.43%",
|
|
8
|
+
descentOverride: "20.69%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "96.68%",
|
|
12
12
|
},
|
|
13
13
|
family: "Barlow",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const beVietnamPro: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "90.61%",
|
|
8
|
+
descentOverride: "24.01%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "110.36%",
|
|
12
12
|
},
|
|
13
13
|
family: "Be Vietnam Pro",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/bebas-neue.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const bebasNeue: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "117.32%",
|
|
8
|
+
descentOverride: "39.11%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "76.72%",
|
|
12
12
|
},
|
|
13
13
|
family: "Bebas Neue",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/besley.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const besley: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "100.86%",
|
|
8
|
+
descentOverride: "34.29%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "123.94%",
|
|
12
12
|
},
|
|
13
13
|
family: "Besley",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/biorhyme.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const biorhyme: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "85.26%",
|
|
8
|
+
descentOverride: "31.93%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "132.18%",
|
|
12
12
|
},
|
|
13
13
|
family: "BioRhyme",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/bitter.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const bitter: Font<"cyrillic" | "cyrillic-ext" | "latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "81.69%",
|
|
8
|
+
descentOverride: "23.15%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "114.46%",
|
|
12
12
|
},
|
|
13
13
|
family: "Bitter",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const blackOpsOne: Font<"cyrillic-ext" | "latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "display",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "74.14%",
|
|
8
|
+
descentOverride: "27.30%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "123.22%",
|
|
12
12
|
},
|
|
13
13
|
family: "Black Ops One",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/bree-serif.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const breeSerif: Font<"latin" | "latin-ext"> = createRegistryFont({
|
|
5
5
|
category: "serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "97.23%",
|
|
8
|
+
descentOverride: "25.37%",
|
|
9
9
|
fallbackFont: "Times New Roman",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "110.77%",
|
|
12
12
|
},
|
|
13
13
|
family: "Bree Serif",
|
|
14
14
|
subsetEntries: [
|
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const bricolageGrotesque: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "
|
|
8
|
-
descentOverride: "
|
|
7
|
+
ascentOverride: "88.21%",
|
|
8
|
+
descentOverride: "25.61%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "
|
|
11
|
+
sizeAdjust: "105.43%",
|
|
12
12
|
},
|
|
13
13
|
family: "Bricolage Grotesque",
|
|
14
14
|
subsetEntries: [
|
package/src/fonts/cabin.ts
CHANGED
|
@@ -4,11 +4,11 @@ import type { Font } from "./types.ts";
|
|
|
4
4
|
export const cabin: Font<"latin" | "latin-ext" | "vietnamese"> = createRegistryFont({
|
|
5
5
|
category: "sans-serif",
|
|
6
6
|
fallbackMetrics: {
|
|
7
|
-
ascentOverride: "101.
|
|
8
|
-
descentOverride: "26.
|
|
7
|
+
ascentOverride: "101.94%",
|
|
8
|
+
descentOverride: "26.41%",
|
|
9
9
|
fallbackFont: "Arial",
|
|
10
10
|
lineGapOverride: "0.00%",
|
|
11
|
-
sizeAdjust: "94.
|
|
11
|
+
sizeAdjust: "94.66%",
|
|
12
12
|
},
|
|
13
13
|
family: "Cabin",
|
|
14
14
|
subsetEntries: [
|