@etsoo/website
Version:
ETSOO CMS Based NextJs Website Framework
25 lines (24 loc) • 970 B
JavaScript
/**
* Create getStaticPaths
* @param site Static site
* @param excludedUrls
* @returns Result
*/
export function StaticPaths(site, excludedUrls) {
excludedUrls !== null && excludedUrls !== void 0 ? excludedUrls : (excludedUrls = ['/', '/contact']);
return async () => {
var _a;
// Pregenerate main menu items
const siteData = await site.getSiteData();
const paths = (_a = siteData === null || siteData === void 0 ? void 0 : siteData.tabs.filter((tab) => typeof excludedUrls === 'function'
? !excludedUrls(tab)
: tab.layout != 1 &&
!(excludedUrls === null || excludedUrls === void 0 ? void 0 : excludedUrls.some((url) => url.toLowerCase() === tab.url.toLowerCase()))).map((tab) => ({
params: { param: tab.url.substring(1).split('/') }
}))) !== null && _a !== void 0 ? _a : [];
return {
paths,
fallback: 'blocking'
};
};
}