feat: Adding support for i18n (closes ) ()

* fix: alt error mix with height/width

More granular detection of alt and resize in image

* fix: format

* feat: init i18n

* feat: add translation

* style: prettier for test

* fix: build-up the locale to fusion with dateLocale

* style: run prettier

* remove cursed file

* refactor: remove i18n library and use locale way instead

* format with prettier

* forgot to remove test

* prevent merging error

* format

* format

* fix: allow string for locale
- Check during translation if valid / existing locale
- Allow to use "en" and "en-US" for example
- Add fallback directly in the function
- Add default key in the function
- Add docstring to cfg.ts

* forgot item translation

* remove unused locale variable

* forgot to remove fr-FR testing

* format
This commit is contained in:
Mara-Li 2024-02-04 04:55:24 +01:00 committed by GitHub
parent 3fb3930df8
commit dbbc672c67
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 180 additions and 32 deletions
quartz/components

View file

@ -1,11 +1,13 @@
import { i18n } from "../i18n/i18next"
import { FullSlug, _stripSlashes, joinSegments, pathToRoot } from "../util/path"
import { JSResourceToScriptElement } from "../util/resources"
import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
export default (() => {
function Head({ cfg, fileData, externalResources }: QuartzComponentProps) {
const title = fileData.frontmatter?.title ?? "Untitled"
const description = fileData.description?.trim() ?? "No description provided"
const title = fileData.frontmatter?.title ?? i18n(cfg.locale, "head.untitled")
const description =
fileData.description?.trim() ?? i18n(cfg.locale, "head.noDescriptionProvided")
const { css, js } = externalResources
const url = new URL(`https://${cfg.baseUrl ?? "example.com"}`)