UNPKG

@curvenote/cli

Version:
26 lines (25 loc) 956 B
import { oxaLink, oxaLinkToId } from '@curvenote/blocks'; import { basekey } from './basekey.js'; export function localizationOptions(session, imageFilenames, references) { return { localizeImageSrc: (src) => imageFilenames[src], localizeId: (maybeOxaLink) => { const oxa = oxaLinkToId(maybeOxaLink); return oxa?.id ?? oxa?.block.block ?? maybeOxaLink; }, localizeCitation: (key) => { const label = references[basekey(key)]?.label; if (label) return label; session.log.error(`The reference for "${key}" was not loaded.`); // Return something safe for latex and markdown return 'unknownKey'; }, localizeLink: (href) => { const oxa = oxaLinkToId(href); if (!oxa) return href; return oxaLink(session.config.editorUrl, oxa.block, oxa); }, }; }