mirror of
https://github.com/10h30/astroplate.git
synced 2026-07-18 14:13:30 +09:00
slugSelector fn added
This commit is contained in:
@@ -11,15 +11,14 @@ import languages from "@/config/language.json";
|
||||
|
||||
export const getSinglePage = async <C extends CollectionKey>(
|
||||
collectionName: C,
|
||||
lang: keyof ContentEntryMap | undefined,
|
||||
lang: keyof ContentEntryMap | undefined
|
||||
): Promise<CollectionEntry<C>[]> => {
|
||||
const { default_language } = config.settings;
|
||||
|
||||
// If lang is undefined, use the default language
|
||||
const selectedLanguageCode = lang || default_language;
|
||||
|
||||
const language = languages.find(
|
||||
(l: any) => l.languageCode === selectedLanguageCode,
|
||||
(l: any) => l.languageCode === selectedLanguageCode
|
||||
);
|
||||
|
||||
if (!language) {
|
||||
@@ -28,12 +27,11 @@ export const getSinglePage = async <C extends CollectionKey>(
|
||||
|
||||
const { contentDir } = language;
|
||||
|
||||
// Explicitly define the type of pages to CollectionEntry<C>[]
|
||||
const pages: CollectionEntry<C>[] = (await getCollection(
|
||||
contentDir as any,
|
||||
({ id }: any) => {
|
||||
return id.startsWith(collectionName) && !id.endsWith("-index.md");
|
||||
},
|
||||
}
|
||||
)) as CollectionEntry<C>[];
|
||||
|
||||
// @ts-ignore
|
||||
@@ -44,15 +42,14 @@ export const getSinglePage = async <C extends CollectionKey>(
|
||||
|
||||
export const getListPage = async <C extends CollectionKey>(
|
||||
collectionName: C,
|
||||
lang: keyof ContentEntryMap | undefined,
|
||||
lang: keyof ContentEntryMap | undefined
|
||||
): Promise<CollectionEntry<C>[]> => {
|
||||
const { default_language } = config.settings;
|
||||
|
||||
// If lang is undefined, use the default language
|
||||
const selectedLanguageCode = lang || default_language;
|
||||
|
||||
const language = languages.find(
|
||||
(l: any) => l.languageCode == selectedLanguageCode,
|
||||
(l: any) => l.languageCode == selectedLanguageCode
|
||||
);
|
||||
|
||||
if (!language) {
|
||||
@@ -61,12 +58,11 @@ export const getListPage = async <C extends CollectionKey>(
|
||||
|
||||
const { contentDir } = language;
|
||||
|
||||
// Fetch the collection based on the language
|
||||
const pages: CollectionEntry<C>[] = (await getCollection(
|
||||
contentDir as any,
|
||||
({ id }: any) => {
|
||||
return id.startsWith(collectionName);
|
||||
},
|
||||
}
|
||||
)) as CollectionEntry<C>[];
|
||||
|
||||
return pages;
|
||||
|
||||
Reference in New Issue
Block a user