diff --git a/package-lock.json b/package-lock.json
index 2fb4c6f..f36ce96 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "pages",
- "version": "1.4.1",
+ "version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "pages",
- "version": "1.4.1",
+ "version": "1.0.0",
"license": "MIT",
"dependencies": {
"@astrojs/mdx": "^2.0.4",
diff --git a/src/content/config.ts b/src/content/config.ts
index 35b7c4f..24ecc8f 100755
--- a/src/content/config.ts
+++ b/src/content/config.ts
@@ -8,13 +8,17 @@ const authorsCollection = defineCollection({
email: z.string().optional(),
image: z.string().optional(),
description: z.string().optional(),
- social: z.array(
- z.object({
+ social: z
+ .array(
+ z
+ .object({
name: z.string().optional(),
icon: z.string().optional(),
link: z.string().optional(),
- }).optional(),
- ).optional(),
+ })
+ .optional(),
+ )
+ .optional(),
draft: z.boolean().optional(),
}),
});
@@ -43,21 +47,9 @@ const docsCollection = defineCollection({
}),
});
-// Pages collection schema
-const pagesCollection = defineCollection({
- schema: z.object({
- title: z.string(),
- meta_title: z.string().optional(),
- description: z.string().optional(),
- image: z.string().optional(),
- draft: z.boolean().optional(),
- }),
-});
-
// Export collections
export const collections = {
authors: authorsCollection,
blog: blogCollection,
docs: docsCollection,
- pages: pagesCollection,
};
diff --git a/src/layouts/Base.astro b/src/layouts/Base.astro
index 8b53e08..328ef29 100755
--- a/src/layouts/Base.astro
+++ b/src/layouts/Base.astro
@@ -63,7 +63,7 @@ const { title, meta_title, description, image, noindex, canonical } =
@@ -74,7 +74,7 @@ const { title, meta_title, description, image, noindex, canonical } =
@@ -82,7 +82,7 @@ const { title, meta_title, description, image, noindex, canonical } =
@@ -95,7 +95,7 @@ const { title, meta_title, description, image, noindex, canonical } =
@@ -103,7 +103,7 @@ const { title, meta_title, description, image, noindex, canonical } =
@@ -126,11 +126,11 @@ const { title, meta_title, description, image, noindex, canonical } =
+ />
diff --git a/src/layouts/DocSingle.astro b/src/layouts/DocSingle.astro
index 6853c86..55d0c2d 100644
--- a/src/layouts/DocSingle.astro
+++ b/src/layouts/DocSingle.astro
@@ -1,6 +1,6 @@
---
-import DocBrowser from '@/components/DocBrowser.astro';
-import DocContents from '@/components/DocContents.astro';
+import DocBrowser from "@/components/DocBrowser.astro";
+import DocContents from "@/components/DocContents.astro";
const { post } = Astro.props;
const { Content, headings } = await post.render();
@@ -21,7 +21,7 @@ const currentPage = new URL(Astro.request.url).pathname;
- { title }
+ {title}
@@ -30,10 +30,10 @@ const currentPage = new URL(Astro.request.url).pathname;
-
\ No newline at end of file
+
diff --git a/src/layouts/components/BlogCard.astro b/src/layouts/components/BlogCard.astro
index fe96578..62dd83b 100644
--- a/src/layouts/components/BlogCard.astro
+++ b/src/layouts/components/BlogCard.astro
@@ -2,7 +2,11 @@
import config from "@/config/config.json";
import { humanize, plainify, slugify } from "@/lib/utils/textConverter";
import { Image } from "astro:assets";
-import { FaRegFolder, FaRegUserCircle, FaRegClock } from "react-icons/fa/index.js";
+import {
+ FaRegFolder,
+ FaRegUserCircle,
+ FaRegClock,
+} from "react-icons/fa/index.js";
import readingTime from "@/lib/utils/readingTime";
const {
@@ -49,7 +53,7 @@ const { title, image, date, author, categories } = data.data;
))
}
-
+
{readingTime(data.body)}
diff --git a/src/layouts/components/BlogSidebar.astro b/src/layouts/components/BlogSidebar.astro
index 6b24fbc..2352790 100644
--- a/src/layouts/components/BlogSidebar.astro
+++ b/src/layouts/components/BlogSidebar.astro
@@ -13,7 +13,7 @@ const { tags, categories, allCategories } = Astro.props;
{
categories.map((category: any) => {
const count = allCategories.filter(
- (c: any) => c === category
+ (c: any) => c === category,
).length;
return (
diff --git a/src/layouts/components/DocBrowser.astro b/src/layouts/components/DocBrowser.astro
index 024fe0e..14a01c9 100644
--- a/src/layouts/components/DocBrowser.astro
+++ b/src/layouts/components/DocBrowser.astro
@@ -3,18 +3,18 @@ import docs from "@/config/docs.json";
const { currentPage } = Astro.props;
const currentPageMatch = currentPage ? currentPage.slice(1) : null;
-const isCurrentPage = (item) => {
+const isCurrentPage = (item: doc_child) => {
if (item.url) {
return item.url.includes(currentPageMatch);
}
return false;
};
-const getLinkClasses = (url) => {
+const getLinkClasses = (item: doc_child) => {
const baseClasses =
"text-xl block py-1 px-2 my-1 rounded hover:bg-theme-light dark:hover:bg-darkmode-theme-light";
- if (isCurrentPage(url)) {
+ if (isCurrentPage(item)) {
return baseClasses + "rounded bg-theme-light dark:bg-darkmode-theme-light";
} else {
return baseClasses;
@@ -34,22 +34,26 @@ export interface doc_parent {
const { main }: { main: doc_parent[] } = docs;
---
-
))
diff --git a/src/layouts/components/ThemeSwitcher.astro b/src/layouts/components/ThemeSwitcher.astro
index b89e534..8964650 100755
--- a/src/layouts/components/ThemeSwitcher.astro
+++ b/src/layouts/components/ThemeSwitcher.astro
@@ -62,7 +62,9 @@ const {
document.documentElement.classList.toggle("dark");
localStorage.setItem(
"theme",
- document.documentElement.classList.contains("dark") ? "dark" : "light"
+ document.documentElement.classList.contains("dark")
+ ? "dark"
+ : "light",
);
});
});
diff --git a/src/layouts/helpers/DynamicIcon.tsx b/src/layouts/helpers/DynamicIcon.tsx
index 9182886..f87c322 100755
--- a/src/layouts/helpers/DynamicIcon.tsx
+++ b/src/layouts/helpers/DynamicIcon.tsx
@@ -1,13 +1,6 @@
import React, { type FC } from "react";
import type { IconType } from "react-icons";
import * as FaIcons from "react-icons/fa6/index.js";
-// import * as AiIcons from "react-icons/ai/index.js";
-// import * as BsIcons from "react-icons/bs/index.js";
-// import * as FiIcons from "react-icons/fi/index.js";
-// import * as Io5Icons from "react-icons/io5/index.js";
-// import * as RiIcons from "react-icons/ri/index.js";
-// import * as TbIcons from "react-icons/tb/index.js";
-// import * as TfiIcons from "react-icons/tfi/index.js";
type IconMap = Record;
diff --git a/src/lib/contentParser.astro b/src/lib/contentParser.astro
index 1b59cc3..ddf39a4 100644
--- a/src/lib/contentParser.astro
+++ b/src/lib/contentParser.astro
@@ -3,8 +3,8 @@ import { getCollection } from "astro:content";
export const getSinglePage = async (collection: any) => {
const allPage = await getCollection(collection);
- const removeIndex = allPage.filter((data) => data.id.match(/^(?!-)/));
- const removeDrafts = removeIndex.filter((data) => !data.data.draft);
+ const removeIndex = allPage.filter((data: any) => data.id.match(/^(?!-)/));
+ const removeDrafts = removeIndex.filter((data: any) => !data.data.draft);
return removeDrafts;
};
---
diff --git a/src/lib/taxonomyParser.astro b/src/lib/taxonomyParser.astro
index deecaf4..4b27bf8 100644
--- a/src/lib/taxonomyParser.astro
+++ b/src/lib/taxonomyParser.astro
@@ -5,7 +5,7 @@ import { slugify } from "./utils/textConverter";
// get all taxonomies from frontmatter
export const getTaxonomy = async (collection: string, name: string) => {
const singlePages = await getSinglePage(collection);
- const taxonomyPages = singlePages.map((page) => page.data[name]);
+ const taxonomyPages = singlePages.map((page: any) => page.data[name]);
let taxonomies: string[] = [];
for (let i = 0; i < taxonomyPages.length; i++) {
const categoryArray = taxonomyPages[i];
@@ -19,7 +19,7 @@ export const getTaxonomy = async (collection: string, name: string) => {
export const getAllTaxonomy = async (collection: string, name: string) => {
const singlePages = await getSinglePage(collection);
- const taxonomyPages = singlePages.map((page) => page.data[name]);
+ const taxonomyPages = singlePages.map((page: any) => page.data[name]);
let taxonomies: string[] = [];
for (let i = 0; i < taxonomyPages.length; i++) {
const categoryArray = taxonomyPages[i];
diff --git a/src/lib/utils/similarItems.ts b/src/lib/utils/similarItems.ts
index d368f87..982821a 100644
--- a/src/lib/utils/similarItems.ts
+++ b/src/lib/utils/similarItems.ts
@@ -30,24 +30,6 @@ const similerItems = (currentItem: any, allItems: any, slug: string) => {
const filterBySlug = mergedItems.filter((product) => product.slug !== slug);
return filterBySlug;
-
- // // The code below needs more testing before the above can be replaced.
- // // merged after filter
- // const mergedItems = [...filterByCategories, ...filterByTags, ...filterBySpirits, ...filterByBottles];
- // // Remove self from list
- // const filterBySlug = mergedItems.filter((item) => item.slug !== slug);
- // // count instances of each item
- // const itemCount = filterBySlug.reduce((accumulator: any, currentItem: any) => {
- // accumulator[currentItem.slug] = (accumulator[currentItem.slug] || 0) + 1;
- // return accumulator;
- // }, {});
- // // sort items by number of instances
- // const sortedItems = filterBySlug.sort((a: any, b: any) => itemCount[b.slug] - itemCount[a.slug]);
- // // remove duplicates
- // const uniqueItems = [...new Set(sortedItems.map((item: any) => item.slug))].map((slug: string) => {
- // return sortedItems.find((item: any) => item.slug === slug);
- // });
- // return uniqueItems;
};
export default similerItems;
diff --git a/src/pages/authors/[single].astro b/src/pages/authors/[single].astro
index ea68c34..c9cb3c8 100755
--- a/src/pages/authors/[single].astro
+++ b/src/pages/authors/[single].astro
@@ -25,7 +25,7 @@ const { title, social, meta_title, description, image } = author.data;
const { Content } = await author.render();
const posts = await getSinglePage(blog_folder);
const postFilterByAuthor = posts.filter(
- (post) => slugify(post.data.author) === slugify(title),
+ (post: any) => slugify(post.data.author) === slugify(title),
);
---
diff --git a/src/pages/blog/categories/[category].astro b/src/pages/blog/categories/[category].astro
index a24fcc2..d93a054 100755
--- a/src/pages/blog/categories/[category].astro
+++ b/src/pages/blog/categories/[category].astro
@@ -10,7 +10,7 @@ import PageHeader from "@/components/PageHeader.astro";
export async function getStaticPaths() {
const categories = await getTaxonomy(
config.settings.blog_folder,
- "categories"
+ "categories",
);
return categories.map((category) => {
diff --git a/src/pages/blog/tags/index.astro b/src/pages/blog/tags/index.astro
index 6d39b43..3d7df0b 100755
--- a/src/pages/blog/tags/index.astro
+++ b/src/pages/blog/tags/index.astro
@@ -2,7 +2,6 @@
import config from "@/config/config.json";
import Base from "@/layouts/Base.astro";
import { getAllTaxonomy, getTaxonomy } from "@/lib/taxonomyParser.astro";
-import { humanize } from "@/lib/utils/textConverter";
import PageHeader from "@/components/PageHeader.astro";
const { blog_folder }: { blog_folder: string } = config.settings;
diff --git a/src/pages/docs/[...id].astro b/src/pages/docs/[...id].astro
index 49b9166..3335b2e 100644
--- a/src/pages/docs/[...id].astro
+++ b/src/pages/docs/[...id].astro
@@ -6,7 +6,7 @@ import config from "@/config/config.json";
export async function getStaticPaths() {
const docs = await getSinglePage(config.settings.docs_folder);
- return docs.map(post => ({
+ return docs.map((post) => ({
params: { id: post.slug },
props: { post },
}));
@@ -16,9 +16,6 @@ const { post } = Astro.props;
const { title } = post.data;
---
-
+
diff --git a/src/pages/docs/index.astro b/src/pages/docs/index.astro
index 7744017..8db22dd 100644
--- a/src/pages/docs/index.astro
+++ b/src/pages/docs/index.astro
@@ -1,6 +1,6 @@
---
-import DocBrowser from '@/components/DocBrowser.astro';
-import DocContents from '@/components/DocContents.astro';
+import DocBrowser from "@/components/DocBrowser.astro";
+import DocContents from "@/components/DocContents.astro";
import Base from "@/layouts/Base.astro";
---
@@ -16,12 +16,12 @@ import Base from "@/layouts/Base.astro";
-
+
- { "Docs" }
+ {"Docs"}
- { "Documentation lives here." }
+ {"Documentation lives here."}
diff --git a/src/pages/terms.astro b/src/pages/terms.astro
index a42ed9d..274cfdf 100644
--- a/src/pages/terms.astro
+++ b/src/pages/terms.astro
@@ -8,13 +8,10 @@ const { Content } = await terms.render();
const { title, meta_title } = terms.data;
---
-
+