From 87895be8032849a1e4c2a1c51f8cb03a9bc86fb6 Mon Sep 17 00:00:00 2001 From: prototypa Date: Tue, 22 Nov 2022 12:47:52 -0500 Subject: [PATCH] Add getRelativeLink --- src/utils/permalinks.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/utils/permalinks.js b/src/utils/permalinks.js index 51ab8f3..97aaaae 100644 --- a/src/utils/permalinks.js +++ b/src/utils/permalinks.js @@ -4,7 +4,7 @@ import { SITE, BLOG } from '~/config.mjs'; const trim = (str, ch) => { let start = 0, - end = str.length; + end = str.length || 0; while (start < end && str[start] === ch) ++start; while (end > start && str[end - 1] === ch) --end; return start > 0 || end < str.length ? str.substring(start, end) : str; @@ -42,20 +42,22 @@ export const getPermalink = (slug = '', type = 'page') => { case 'post': return createPath(basePathname, POST_BASE, _slug); - case 'raw': - return createPath(basePathname, trimSlash(slug)); - case 'page': default: return createPath(basePathname, _slug); } }; -/** */ -export const getBlogPermalink = () => getPermalink(BLOG_BASE); - /** */ export const getHomePermalink = () => { const permalink = getPermalink(); return permalink !== '/' ? permalink + '/' : permalink; }; + +/** */ +export const getRelativelink = (link = "") => { + return createPath(basePathname, trimSlash(link)); +} + +/** */ +export const getBlogPermalink = () => getPermalink(BLOG_BASE);