function e(e){return encodeURIComponent(String(e).trim().toLowerCase().replace(/\s+/g,"-"))}function n(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}export default function(t,l){let r;l=Object.assign({},{placeholder:"(\\$\\{toc\\}|\\[\\[?_?toc_?\\]?\\]|\\$\\)",slugify:e,uniqueSlugStartIndex:1,containerClass:"table-of-contents",containerId:void 0,listClass:void 0,itemClass:void 0,linkClass:void 0,level:1,listType:"ol",format:void 0,callback:void 0},l);const s=new RegExp("^"+l.placeholder+"$","i");t.renderer.rules.tocOpen=function(e,t){let r=Object.assign({},l);return e&&t>=0&&(r=Object.assign(r,e[t].inlineOptions)),``},t.renderer.rules.tocClose=function(){return""},t.renderer.rules.tocBody=function(e,t){let s=Object.assign({},l);e&&t>=0&&(s=Object.assign(s,e[t].inlineOptions));const c={},i=Array.isArray(s.level)?(o=s.level,e=>o.includes(e)):(e=>n=>n>=e)(s.level);var o;return function e(t){const r=s.listClass?` class="${n(s.listClass)}"`:"",o=s.itemClass?` class="${n(s.itemClass)}"`:"",a=s.linkClass?` class="${n(s.linkClass)}"`:"";if(0===t.c.length)return"";let u="";return(0===t.l||i(t.l))&&(u+=`<${n(s.listType)+r}>`),t.c.forEach(t=>{i(t.l)?u+=`${"function"==typeof s.format?s.format(t.n,n):n(t.n)}${e(t)}`:u+=e(t)}),(0===t.l||i(t.l))&&(u+=``),u}(r)},t.core.ruler.push("generateTocAst",function(e){r=function(e){const n={l:0,n:"",c:[]},t=[n];for(let n=0,l=e.length;nt[0].l)t[0].c.push(s),t.unshift(s);else if(s.l===t[0].l)t[1].c.push(s),t[0]=s;else{for(;s.l<=t[0].l;)t.shift();t[0].c.push(s),t.unshift(s)}}}return n}(e.tokens),"function"==typeof l.callback&&l.callback(t.renderer.rules.tocOpen()+t.renderer.rules.tocBody()+t.renderer.rules.tocClose(),r)}),t.block.ruler.before("heading","toc",function(e,n,t,l){let r;const c=e.src.slice(e.bMarks[n]+e.tShift[n],e.eMarks[n]).split(" ")[0];if(!s.test(c))return!1;if(l)return!0;const i=s.exec(c);let o={};if(null!==i&&3===i.length)try{o=JSON.parse(i[2])}catch(e){}return e.line=n+1,r=e.push("tocOpen","nav",1),r.markup="",r.map=[n,e.line],r.inlineOptions=o,r=e.push("tocBody","",0),r.markup="",r.map=[n,e.line],r.inlineOptions=o,r.children=[],r=e.push("tocClose","nav",-1),r.markup="",!0},{alt:["paragraph","reference","blockquote"]})} //# sourceMappingURL=markdownItTocDoneRight.modern.js.map