UNPKG

mdtocs

Version:

Markdown table of contents generator.

3 lines (2 loc) 1.28 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).mdtocs={})}(this,(function(e){"use strict";var t=/^```.*\n[\s\S]*?```$/gm,r=/^(#{1,6}[ \t].+)$|^(.+[\r\n][=-]{3,})$/gm,n=/^(#+)[ \t](.+)$|^(.+)[\r\n]([=-])/,u=/[^a-zA-Z0-9_-]/g,i=/\s/,o="",f="-",a="\n",c=" ".repeat(2),s=f+" ";function l(e){var t=e.match(r);if(null===t)return[];var u={};return t.reduce((function(e,t){var r=function(e){var t=e.match(n);if(null===t)return[];var r,u,i=t[1],o=t[2],a=t[3],c=t[4];c?(u=c===f?2:1,r=a.trim()):(u=i.length,r=o.trim());if(!r)return[];return[u,r]}(t),i=r[0],o=r[1];return i&&o&&e.push({level:i,text:o,fragment:p(o,u)}),e}),[])}function p(e,t){var r=e.toLowerCase().split(i).join("-").replace(u,""),n=t[r];return n?(t[r]++,r+f+n):(t[r]=1,r)}e.mdtocs=function(e){return l(function(e){return e.replace(t,o).trim()}(function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");return e}(e))).reduce((function(e,t){var r=t.level,n=t.text,u=t.fragment;return e+c.repeat(r-1)+s+function(e,t){return"["+e+"](#"+t+")"}(n,u)+a}),"")},Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=mdtocs.min.js.map