From e7da8ab6df3268ad838249151cf3e25479dd73c3 Mon Sep 17 00:00:00 2001 From: Al Murad Uzzaman Date: Mon, 20 May 2024 12:15:34 +0600 Subject: [PATCH] slugSelector fn added --- src/layouts/PostSingle.astro | 33 ++---- src/layouts/components/AuthorCard.astro | 21 +--- src/layouts/components/BlogCard.astro | 30 ++---- src/layouts/components/Logo.astro | 23 +--- src/layouts/components/Pagination.astro | 38 ++----- src/layouts/partials/Footer.astro | 26 +---- src/layouts/partials/Header.astro | 38 ++----- src/layouts/partials/PostSidebar.astro | 23 +--- src/lib/contentParser.astro | 16 ++- src/lib/languageParser.astro | 118 +++++++++++++++++++++ src/pages/404.astro | 15 +-- src/pages/[...lang]/categories/index.astro | 26 +---- src/pages/[...lang]/tags/index.astro | 26 +---- 13 files changed, 181 insertions(+), 252 deletions(-) create mode 100644 src/lib/languageParser.astro diff --git a/src/layouts/PostSingle.astro b/src/layouts/PostSingle.astro index f4a95f1..9042b08 100755 --- a/src/layouts/PostSingle.astro +++ b/src/layouts/PostSingle.astro @@ -4,15 +4,14 @@ import Share from "@/components/Share.astro"; import config from "@/config/config.json"; import Disqus from "@/helpers/Disqus"; import { getSinglePage } from "@/lib/contentParser.astro"; +import { slugSelector } from "@/lib/languageParser.astro"; import dateFormat from "@/lib/utils/dateFormat"; -import { constructUrl } from "@/lib/utils/i18nUtils"; import similarItems from "@/lib/utils/similarItems"; import { humanize, markdownify, slugify } from "@/lib/utils/textConverter"; import type { ContentEntryMap } from "astro:content"; import { FaRegClock, FaRegFolder, FaRegUserCircle } from "react-icons/fa"; import ImageMod from "./components/ImageMod.astro"; -const { default_language, default_language_in_path } = config.settings; -const { trailing_slash } = config.site; +const { default_language } = config.settings; const COLLECTION_FOLDER = "blog"; const { post } = Astro.props; @@ -24,29 +23,11 @@ if (!lang) { const posts = await getSinglePage( COLLECTION_FOLDER, - lang as keyof ContentEntryMap, + lang as keyof ContentEntryMap ); const similarPosts = similarItems(post, posts); const { Content } = await post.render(); const { title, description, author, categories, image, date, tags } = post.data; - -const constructLocalizedUrl = (url: string) => { - if (lang === default_language) { - return constructUrl( - default_language_in_path ? `/${lang}${url}` : url, - lang, - default_language, - trailing_slash, - ); - } else { - return constructUrl( - url, - lang as keyof ContentEntryMap, - default_language, - trailing_slash, - ); - } -}; ---
@@ -70,7 +51,7 @@ const constructLocalizedUrl = (url: string) => {