fix: not starting
This commit is contained in:
@@ -1,3 +1,12 @@
|
||||
const internalPostLink = /^\[([^\]]+)\]\(\/posts\/[^)\s]+\/?\)$/;
|
||||
|
||||
const getLinkedArticleTitle = (value) => {
|
||||
if (typeof value !== "string") return value;
|
||||
|
||||
const match = value.match(internalPostLink);
|
||||
return match ? match[1].trim() : value;
|
||||
};
|
||||
|
||||
export const validateLinkedArticles = (posts) => {
|
||||
const titles = new Set(posts.map((post) => post.data.title));
|
||||
|
||||
@@ -13,7 +22,9 @@ export const validateLinkedArticles = (posts) => {
|
||||
}
|
||||
|
||||
const linkedTitleSet = new Set();
|
||||
for (const title of linkedArticles) {
|
||||
for (const linkedArticle of linkedArticles) {
|
||||
const title = getLinkedArticleTitle(linkedArticle);
|
||||
|
||||
if (typeof title !== "string" || title.trim() === "") {
|
||||
throw new Error(
|
||||
`Post '${post.inputPath}' must define 'linkedArticles' with non-empty article titles`
|
||||
@@ -44,5 +55,5 @@ export const resolveLinkedArticles = (posts, titles) => {
|
||||
if (!Array.isArray(posts) || !Array.isArray(titles)) return [];
|
||||
|
||||
const postsByTitle = new Map(posts.map((post) => [post.data.title, post]));
|
||||
return titles.map((title) => postsByTitle.get(title)).filter(Boolean);
|
||||
return titles.map(getLinkedArticleTitle).map((title) => postsByTitle.get(title)).filter(Boolean);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user