@paroicms/server
Version:
The ParoiCMS server
20 lines • 872 B
JavaScript
import { encodeLNodeId, parseLNodeId } from "@paroicms/public-anywhere-lib";
import { getBreadcrumb } from "../../admin-backend/lnode/lnode.queries.js";
export async function injectMenuItemsData(value, { renderingContext }) {
const str = typeof value === "string" ? value : typeof value === "number" ? String(value) : undefined;
if (!str)
return "";
const { siteContext } = renderingContext;
const documentId = parseLNodeId(str);
const breadcrumb = await getBreadcrumb(siteContext, renderingContext.tracker, documentId, {
ensurePublished: false,
skipHome: true,
skipCurrent: true,
});
const content = {
id: encodeLNodeId(documentId),
parents: breadcrumb.map((item) => encodeLNodeId(item.documentId)),
};
return JSON.stringify(content);
}
//# sourceMappingURL=inject-menu-items-data.js.map