remarkable-plugin-heading-id
Version:
3 lines (2 loc) • 992 B
JavaScript
var e=0,n=function(){e++},r=function(){e=0},t=function(e){return"heading_open"===e.type},i=function(e){return"inline"===e.type},o=["h1","h2","h3","h4","h5","h6"],a=function(a){var u,d=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=a.renderer.rules.heading_open,h=null!==(u=d.targets)&&void 0!==u?u:o;r(),a.renderer.rules.heading_open=function(r,o){var a,u=r[o];if(!t(u))throw new Error("remarkablePluginHeadingId should take heading tag token, but got"+JSON.stringify(u));var l=c(r,o),g=r[o+1];if(!i(g))throw new Error("remarkablePluginHeadingId should take text token next to heading open token, but got"+JSON.stringify(g));var f=null!==(a=g.content)&&void 0!==a?a:"";return function(){var r="h".concat(u.hLevel);if(!h.includes(r))return l;if(d.createId){var t=l.replace(">",' id="'.concat(d.createId(u.hLevel,f,e),'">'));return n(),t}var i=l.replace(">",' id="'.concat(f,'">'));return n(),i}()}};export{a as remarkablePluginHeadingId};
//# sourceMappingURL=main.esm.min.js.map