diff --git a/src/layouts/components/BlogCard.astro b/src/layouts/components/BlogCard.astro index 86e3dfa..bdb01cc 100644 --- a/src/layouts/components/BlogCard.astro +++ b/src/layouts/components/BlogCard.astro @@ -4,7 +4,7 @@ import config from "@/config/config.json"; import { humanize, plainify, slugify } from "@/lib/utils/textConverter"; import { FaRegFolder, FaRegUserCircle } from "react-icons/fa/index.js"; -const { summary_length, blog_folder } = config.settings; +const { summary_length, blog_folder }: {summary_length: number, blog_folder: string} = config.settings; const { data } = Astro.props; const { title, image, date, author, categories } = data.data; --- diff --git a/src/layouts/components/Breadcrumbs.astro b/src/layouts/components/Breadcrumbs.astro index 0886bb0..9b746aa 100644 --- a/src/layouts/components/Breadcrumbs.astro +++ b/src/layouts/components/Breadcrumbs.astro @@ -1,7 +1,7 @@ --- import { humanize } from "@/lib/utils/textConverter"; -const { className } = Astro.props; +const { className }: {className?: string} = Astro.props; const paths = Astro.url.pathname.split("/").filter((x) => x); let parts = [ diff --git a/src/layouts/components/Logo.astro b/src/layouts/components/Logo.astro index ca34d25..faaa435 100644 --- a/src/layouts/components/Logo.astro +++ b/src/layouts/components/Logo.astro @@ -2,7 +2,7 @@ import { Image } from "@astrojs/image/components"; import config from "@/config/config.json"; -const { src, srcDarkmode } = Astro.props; +const { src, srcDarkmode } : {src?: string, srcDarkmode?: string} = Astro.props; const { logo, logo_darkmode, diff --git a/src/layouts/components/Pagination.astro b/src/layouts/components/Pagination.astro index 403cdb6..874c52a 100644 --- a/src/layouts/components/Pagination.astro +++ b/src/layouts/components/Pagination.astro @@ -1,11 +1,14 @@ --- -const { section, currentPage, totalPages } = Astro.props; +type Pagination = { + section?: string, currentPage?: number, totalPages?: number +} +const { section, currentPage=1, totalPages=1 }: Pagination = Astro.props; const indexPageLink = currentPage === 2; const hasPrevPage = currentPage > 1; -const hasNextPage = totalPages > currentPage; +const hasNextPage = totalPages > currentPage!; -let pageList = []; +let pageList: number[] = []; for (let i = 1; i <= totalPages; i++) { pageList.push(i); } diff --git a/src/layouts/components/Share.astro b/src/layouts/components/Share.astro index 14881cd..9193c02 100644 --- a/src/layouts/components/Share.astro +++ b/src/layouts/components/Share.astro @@ -7,8 +7,8 @@ import { IoLogoTwitter, } from "react-icons/io5/index.js"; -const { base_url } = config.site; -const { title, description, slug, className } = Astro.props; +const { base_url }: {base_url: string} = config.site; +const { title, description, slug, className }: {title?: string, description?: string, slug?: string, className?: string} = Astro.props; ---