UNPKG

@maksiks/markdown-it-image-caption

Version:

Cleanly add a <figcaption> to your markdown-it images.

2 lines (1 loc) 675 B
const i=(i,{figClasslist:t}={})=>{const r=i.renderer.rules.image;i.renderer.rules.image=(i,e,n,o,a)=>{if(i[e]?.attrs?.[2]){const r=i[e].attrs,n=r[2][1].split("|"),o=r[0][1],a=i[e].content,s=n[0].trim(),g=n[1]?.trim(),$=n[2]?.trim(),c=`<img src="${o}" alt="${a}" ${":::nocaption"!==s?` title="${s}"`:""} />`,l=""+(t?` class="${t} ${$}"`:`${$}`);return":::nocaption"!==s?`<figure ${l}>${"top"!==g?`${c}<figcaption>${s}</figcaption>`:`<figcaption>${s}</figcaption>${c}`} </figure>`:`<figure ${l}>${c}</figure>`}return r?r(i,e,n,o,a):(console.warn("@maksiks/markdown-it-image-caption: original renderer doesn't exist, something went horribly wrong."),"")}};export{i as default};