diff --git a/src/config.ts b/src/config.ts index 153c297..4cec084 100644 --- a/src/config.ts +++ b/src/config.ts @@ -14,10 +14,19 @@ export const SITE_METADATA: SiteMetadataType = { telegramUrl: "https://t.me/sergeyyarkov", }, nav: [ - { key: "navigation.articles", url: "/articles/" }, - { key: "navigation.projects", url: "/projects/" }, + { + key: "navigation.articles", + url: "/articles/", + }, + { + key: "navigation.projects", + url: "/projects/", + }, { key: "navigation.about", url: "/about/" }, - { key: "navigation.contacts", url: "/contacts/" }, + { + key: "navigation.contacts", + url: "/contacts/", + }, ], projects: [ { @@ -112,11 +121,20 @@ export const SITE_METADATA: SiteMetadataType = { en: "Programming", }, list: [ - { icon: "nodejs", name: "Javascript/Typescript" }, - { icon: "language-c", name: "C Language" }, + { + icon: "nodejs", + name: "Javascript/Typescript", + }, + { + icon: "language-c", + name: "C Language", + }, { icon: "mysql", name: "SQL" }, { icon: "graphql", name: "GraphQL" }, - { icon: "avr", name: "AVR instruction set" }, + { + icon: "avr", + name: "AVR instruction set", + }, ], }, { @@ -141,7 +159,10 @@ export const SITE_METADATA: SiteMetadataType = { list: [ { icon: "nodejs", name: "Node.js" }, { icon: "docker", name: "Docker" }, - { icon: "git-branch", name: "Git/gitflow" }, + { + icon: "git-branch", + name: "Git/gitflow", + }, { icon: "sass", name: "SASS" }, { icon: "webpack", name: "Webpack" }, { icon: "vite", name: "Vite.js" }, @@ -153,7 +174,10 @@ export const SITE_METADATA: SiteMetadataType = { en: "Databases", }, list: [ - { icon: "postgresql", name: "PostgreSQL" }, + { + icon: "postgresql", + name: "PostgreSQL", + }, { icon: "mongodb", name: "MongoDB" }, { icon: "redis", name: "Redis" }, ], diff --git a/src/pages/[...slug].astro b/src/pages/[...slug].astro index 8e0a3ca..4b3a9bc 100644 --- a/src/pages/[...slug].astro +++ b/src/pages/[...slug].astro @@ -17,7 +17,9 @@ export interface Props { } export async function getStaticPaths() { - const modules = import.meta.glob>("../../content/articles/**/*.mdx", { eager: true }); + const modules = import.meta.glob>("../../content/articles/**/*.mdx", { + eager: true, + }); const entries = Object.keys(modules).map((key) => [key, key.split("/").slice(6)[0]]); const formatted = formatArticlesByLangs(modules); @@ -26,9 +28,14 @@ export async function getStaticPaths() { const article = modules[key]; const dirName = key.split("/").at(-3); const published_at = new Date(article.frontmatter.published_at).toLocaleDateString("en-CA"); - const slug = `${lang !== DEFAULT_LANGUAGE ? `${lang}/` : ""}blog/${published_at}/${article.frontmatter.slug}`; + const slug = `${lang !== DEFAULT_LANGUAGE ? `${lang}/` : ""}blog/${published_at}/${ + article.frontmatter.slug + }`; - return { params: { slug }, props: { article, alternateLangs: Object.keys(formatted[dirName]) } }; + return { + params: { slug }, + props: { article, alternateLangs: Object.keys(formatted[dirName]) }, + }; }) .filter(({ props: { article } }) => !article.frontmatter.draft); } @@ -42,20 +49,6 @@ const { pathname } = Astro.url; --- - { - alternateLangs.length > 1 && ( -
- {t("article.availableOn")}: - {alternateLangs - .filter((lang) => lang !== siteLang) - .map((lang) => ( - - {languages[lang]} - - )) - .reduce((prev, curr) => [prev, ", ", curr])} -
- ) - } +
diff --git a/src/pages/rss.xml.ts b/src/pages/rss.xml.ts index 3052a0e..7815d69 100644 --- a/src/pages/rss.xml.ts +++ b/src/pages/rss.xml.ts @@ -4,7 +4,9 @@ import rss from "@astrojs/rss"; import { DEFAULT_LANGUAGE, SITE_METADATA } from "@root/config"; import * as utils from "@i18n/utils"; -const data = import.meta.glob>("../../content/articles/**/*.mdx", { eager: true }); +const data = import.meta.glob>("../../content/articles/**/*.mdx", { + eager: true, +}); const articles = Object.values(utils.formatArticlesByLangs(data)); const items = []; diff --git a/src/services/ArticleService.ts b/src/services/ArticleService.ts index c6fedbd..886530a 100644 --- a/src/services/ArticleService.ts +++ b/src/services/ArticleService.ts @@ -4,7 +4,9 @@ import { getLanguageFromURL } from "@utils/url"; class ArticleService { public getTranslatedArticles(Astro: Readonly): MDXInstance[] { - const data = import.meta.glob>("../../content/articles/**/*.mdx", { eager: true }); + const data = import.meta.glob>("../../content/articles/**/*.mdx", { + eager: true, + }); const modules = formatArticlesByLangs(data); const siteLang = getLanguageFromURL(Astro.url.pathname); const articles: MDXInstance[] = []; diff --git a/src/types/main.d.ts b/src/types/main.d.ts index eee38fa..b5af401 100644 --- a/src/types/main.d.ts +++ b/src/types/main.d.ts @@ -28,7 +28,10 @@ declare global { githubUrl: string; telegramUrl: string; }; - nav: Array<{ key: UIDictionaryKeys; url: string }>; + nav: Array<{ + key: UIDictionaryKeys; + url: string; + }>; projects: Array; skills: Array; }; @@ -57,7 +60,10 @@ declare global { type SkillsType = { title: Record; - list: Array<{ icon?: string | undefined; name: string }>; + list: Array<{ + icon?: string | undefined; + name: string; + }>; }; type ContactFieldsType = {