mdast-util-wiki-link
Version:
Parse and render wiki-style links
1 lines • 3.34 kB
JavaScript
var e={553:e=>{e.exports=function(e){var t,r;return e._compiled||(t=e.before?"(?:"+e.before+")":"",r=e.after?"(?:"+e.after+")":"",e.atBreak&&(t="[\\r\\n][\\t ]*"+t),e._compiled=new RegExp((t?"("+t+")":"")+(/[|\\{}()[\]^$+*?.-]/.test(e.character)?"\\":"")+e.character+(r||""),"g")),e._compiled}},112:e=>{function t(e,t,r){var a;if(!t)return r;for("string"==typeof t&&(t=[t]),a=-1;++a<t.length;)if(-1!==e.indexOf(t[a]))return!0;return!1}e.exports=function(e,r){return t(e,r.inConstruct,!0)&&!t(e,r.notInConstruct)}},113:(e,t,r)=>{e.exports=function(e,t,r){for(var s,f,l,c,u,h,p,d,k=(r.before||"")+(t||"")+(r.after||""),x=[],v=[],g={},b=-1;++b<e.unsafe.length;)if(c=e.unsafe[b],n(e.stack,c))for(u=a(c);h=u.exec(k);)s="before"in c||c.atBreak,f="after"in c,l=h.index+(s?h[1].length:0),-1===x.indexOf(l)?(x.push(l),g[l]={before:s,after:f}):(g[l].before&&!s&&(g[l].before=!1),g[l].after&&!f&&(g[l].after=!1));for(x.sort(i),p=r.before?r.before.length:0,d=k.length-(r.after?r.after.length:0),b=-1;++b<x.length;)(l=x[b])<p||l>=d||l+1<d&&x[b+1]===l+1&&g[l].after&&!g[l+1].before&&!g[l+1].after||(p!==l&&v.push(o(k.slice(p,l),"\\")),p=l,!/[!-/:-@[-`{-~]/.test(k.charAt(l))||r.encode&&-1!==r.encode.indexOf(k.charAt(l))?(v.push("&#x"+k.charCodeAt(l).toString(16).toUpperCase()+";"),p++):v.push("\\"));return v.push(o(k.slice(p,d),r.after)),v.join("")};var a=r(553),n=r(112);function i(e,t){return e-t}function o(e,t){for(var r,a=/\\(?=[!-/:-@[-`{-~])/g,n=[],i=[],o=-1,s=0,f=e+t;r=a.exec(f);)n.push(r.index);for(;++o<n.length;)s!==n[o]&&i.push(e.slice(s,n[o])),i.push("\\"),s=n[o];return i.push(e.slice(s)),i.join("")}}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var a={};(()=>{function e(e={}){const t=e.permalinks||[],r=e.pageResolver||(e=>[e.replace(/ /g,"_").toLowerCase()]),a=e.newClassName||"new",n=e.wikiLinkClassName||"internal",i=e.hrefTemplate||(e=>`#/page/${e}`);let o;function s(e){return e[e.length-1]}return{enter:{wikiLink:function(e){o={type:"wikiLink",value:null,data:{alias:null,permalink:null,exists:null}},this.enter(o,e)}},exit:{wikiLinkTarget:function(e){const t=this.sliceSerialize(e);s(this.stack).value=t},wikiLinkAlias:function(e){const t=this.sliceSerialize(e);s(this.stack).data.alias=t},wikiLink:function(e){this.exit(e);const s=o,f=r(s.value),l=f.find((e=>-1!==t.indexOf(e))),c=void 0!==l;let u;u=c?l:f[0]||"";let h=s.value;s.data.alias&&(h=s.data.alias);let p=n;c||(p+=" "+a),s.data.alias=h,s.data.permalink=u,s.data.exists=c,s.data.hName="a",s.data.hProperties={className:p,href:i(u)},s.data.hChildren=[{type:"text",value:h}]}}}}r.d(a,{V:()=>e,x:()=>i});var t=r(113),n=r.n(t);function i(e={}){const t=e.aliasDivider||":";return{unsafe:[{character:"[",inConstruct:["phrasing","label","reference"]},{character:"]",inConstruct:["label","reference"]}],handlers:{wikiLink:function(e,r,a){const i=a.enter("wikiLink"),o=n()(a,e.value,{before:"[",after:"]"}),s=n()(a,e.data.alias,{before:"[",after:"]"});let f;return f=s!==o?`[[${o}${t}${s}]]`:`[[${o}]]`,i(),f}}}}})();var n=a.V,i=a.x;export{n as fromMarkdown,i as toMarkdown};