@pardnchiu/nanomd
Advanced tools
Comparing version 1.8.7 to 1.9.0
@@ -1,1 +0,1 @@ | ||
!function(){const t=window,e=document,i=String,n=Boolean,s=Array,o=Object,l=JSON,r=Math,h=URL,u=Node,c=Date,a=Blob,d=parseInt,f="video/mp4",p="video/quicktime",g=["javascript","js","ts","html","css","xml","json","sql","java","python","ruby","php","cpp","csharp","swift","typescript","kotlin","go","rust","perl","bash"],y=t.matchMedia&&t.matchMedia("(prefers-color-scheme: dark)").matches,_="abcdefghijklmnopqrstuvwxyz0123456789";let m=new Map;const T=/\.([\w_-]+)?/gi,N=/\#([\w_-]+)?/i,E=/^\w+(?=[\#\.]*)/i,A=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(mailto\:)?([\u0020\u00A0\u0009]*)(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)([\u0020\u00A0\u0009]*)[\"\']{0,1}/,O=/(\s{1})\\?[\##]{1}([\u4e00-\u9fff\u3040-\u30ff\uac00-\ud7a3a-zA-Z0-9_]+)/,I=/[& \<\>\"\']/g,C=/\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)/,w=/(\n)(\>\s*\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]\n)?(\>[^\n]*(\n)?)+/,S=/\`([^\n\`]*)\`/,D=/^\n|\n$/g,b=/\`{3}(\w*)([\s\S]*?)\s*\`{3}/,$=/((\n([\u0020\u00A0]{4,}|[\u0009]))[^\n]+)+/,M=/\*([^\n\*]*)\*/,U=/\_([^\n\_]*)\_/,R=/^\s|\s$/g,x=/(\n[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*>[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n]+)/,F=/(\n)([^\n]+)\n\={3,}([\u0020\u00A0\u0009]*\n)/,k=/(\n)([^\n]+)\n\-{3,}([\u0020\u00A0\u0009]*\n)/,v=/([\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n\|]*)([\u0020\u00A0\u0009]*)/,P=/(\n[\u0020\u00A0\u0009]*)(\*{3,}|\-{3,})([\u0020\u00A0\u0009]*\n)/,L=/\!\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)(\(([0-9]+\%?)?[\u0020\u00A0\u0009\*x]+([0-9]+\%?)?([\u0020\u00A0\u0009]+(left|right))?\))?/,j=/^['"].*['"]$/,G=/\n(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,H=/(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,B=/^(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]*[^\n]+)/,z=/\={2}([^\n\=]*)\={2}/,K=/\~{2}([^\n\~]*)\~{2}/,W=/\*{2}([^\n\*]*)\*{2}/,V=/\_{2}([^\n\_]*)\_{2}/,Z=/\~([^\n\~]*)\~/,Y=/\^([^\n\^]*)\^/,q=/(\n(?![\{\<])[^\n]+)+/,X=/^(\n?(?![\{\<])[^\n]+)+/,J=/\.mov$/,Q=/\.mp4$/,tt=/[A-Za-z\%]/,et=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*))([\u0020\u00A0\u0009]*)[\"\']{0,1}/,it=/(\<[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*br[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*\>|\n)/,nt=/\n/,st=/\\\!/g,ot=/\\\`/g,lt=/\\\#/g,rt=/\\\*/g,ht=/\\\_/g,ut=/\\\~/g,ct=/\\\^/g,at=/\\\=/g,dt=/\\\</g,ft=/\\\>/g,pt=/\\\[/g,gt=/\\\]/g,yt=/\\\(/g,_t=/\\\)/g,mt=/\$/g,Tt=/(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?/,Nt="mailto:",Et="\n",At="_blank",Ot="startsWith",It="keys",Ct="TEXT_NODE",wt="ELEMENT_NODE",St="nodeType",Dt="add",bt="alt",$t="appendChild",Mt="as",Ut="auto",Rt="baseOffset",xt="blockquote",Ft="body",kt="br",vt="button",Pt="charAt",Lt="checked",jt="checkbox",Gt="childNodes",Ht="children",Bt="class",zt="clearTimeout",Kt="clipboardData",Wt="code",Vt="Color",Zt="color",Yt="content",qt="contentEditable",Xt="controls",Jt="copy",Qt="create",te="Creator",ee="ctrlKey",ie="dark",ne="dataset",se="delay",oe="display",le="div",re="editor",he="em",ue="empty",ce="emptyContent",ae="error",de="float",fe="floor",pe="focus",ge="fontFamily",ye="forEach",_e="from",me="get",Te="has",Ne="head",Ee="height",Ae="hide",Oe="href",Ie="id",Ce="iframe",we="img",Se="index",De="init",be="inner",$e="input",Me="insert",Ue="isArray",Re="join",xe="label",Fe="language",ke="lastChild",ve="lazy",Pe="length",Le="li",je="light",Ge="link",He="list",Be="loading",ze="map",Ke="mark",We="match",Ve="metaKey",Ze="min",Ye="mode",qe="Name",Xe="name",Je="node",Qe="none",ti="number",ei="object",ii="offset",ni="ol",si="outerHTML",oi="parent",li="pd-md-editor",ri="pd-md-viewer",hi="placeholder",ui="pre",ci="props",ai="preload",di="prettyprint",fi="prevent",pi="push",gi="px",yi="querySelector",_i="random",mi="rel",Ti="remove",Ni="replace",Ei="click",Ai="script",Oi="scroll",Ii="section",Ci="set",wi="slice",Si="source",Di="span",bi="split",$i="src",Mi="string",Ui="strong",Ri="style",xi="sub",Fi="success",ki="sup",vi="table",Pi="tag",Li="target",ji="tbody",Gi="td",Hi="temp",Bi="test",zi="textContent",Ki="th",Wi="thead",Vi="title",Zi="toLowerCase",Yi="toUpperCase",qi="tr",Xi="trim",Ji="type",Qi="ul",tn="value",en="video",nn="viewer",sn="width",on="console",ln="apply",rn="void",hn="vdom",un="getElementById",cn="crossOrigin",an="preconnect",dn=Dt+"EventListener",fn="background"+Vt,pn=Bt+qe,gn=Bt+"List",yn=Qt+"DocumentFragment",_n=Qt+"Element",mn=Qt+"TextNode",Tn=_e+"CharCode",Nn=pe+"Background"+Vt,En=pe+"Offset",An=pe+"Text"+Vt,On=me+"Data",In=me+"Selection",Cn=Te+"OwnProperty",wn=Se+"Of",Sn=be+"HTML",Dn=be+"Text",bn=Me+"Before",$n=Je+qe,Mn=Je+"Value",Un="onclick",Rn="onwheel",xn=oi+"Element",Fn=oi+"Node",kn=hi+Vt,vn=fi+"Default",Pn=fi+"Refresh",Ln=yi+"All",jn=Ti+"AllRanges",Gn=Oi+"Height",Hn=Oi+"Sync",Bn=Oi+"Top",zn=Ci+"Attribute",Kn=Ci+"Data",Wn=Ci+"End",Vn=Ci+"Start",Zn=Ci+"Timeout",Yn=Pi+qe,qn=Pi+"Path",Xn=Pi+"Target";let Jn="";const Qn="@excl@",ts="@grave@",es="@num@",is="@ast@",ns="@lowbar@",ss="@tilde@",os="@Hat@",ls="@equal@",rs="@lt@",hs="@gt@",us="@lsqb@",cs="@rsqb@",as="@lpar@",ds="@rpar@",fs="@dollar@",ps="<",gs=">",ys="&",_s=" ",ms=""",Ts="'",Ns={create:"CREATE",append:"APPEND",replace:"REPLACE",text:"TEXT",prop:"PROP",remove:"REMOVE"};Array[_e]({[Pe]:26},((t,e)=>i[Tn](97+e)))[ye](((e,n)=>{let s=n<10,o=n>=10&&n<20,l=n>=20,r=i(n),h=r[Pt](r[Pe]-1),u=i=>{Jn+=i?e[Yi]():e,t[(i?"$":"_")+(l?"_":"")+h+(o?"_":"")]=i?e[Yi]():e};u(0),u(1),s&&(Jn+=n,t["_"+e]=n)}));t._a,t._b,t._c,t._d,t._e,t._f,t._g,t._h,t._i,t._j;const Es=t._0,As=t._1,Os=(t._2,t._3,t._4,t._5,t._6),Is=t._7,Cs=t._8,ws=(t._9,t._0_,t._1_,t._2_,t._3_,t._4_,t._5_,t._6_,t._7_,t._8_),Ss=(t._9_,t.__0),Ds=(t.__1,t.__2,t.__3,t.__4,t.__5,t.$0,t.$1,t.$2,t.$3,t.$4,t.$5,t.$6,t.$7,t.$8,t.$9,t.$0_,t.$1_,t.$2_,t.$3_,t.$4_,t.$5_,t.$6_,t.$7_,t.$8_,t.$9_,t.$_0,t.$_1,t.$_2,t.$_3,t.$_4,t.$_5,"https://fonts.googleapis.com"),bs=Ds+"/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,1,0&display=swap",$s="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js",Ms="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@latest/dist/NanoMD.css",Us="NanoMD\nGitHub: https://github.com/pardnchiu/NanoMD\nCreator: Pardn Chiu\nLicense: MIT";let Rs;for(let t of[xs(Ge,{[mi]:an,[Oe]:"https://fonts.gstatic.com",[cn]:""}),xs(Ge,{[mi]:an,[Oe]:Ds,[cn]:""}),xs(Ge,{[mi]:ai,[Oe]:bs,[Mt]:Ri,[cn]:"anonymous"}),xs(Ge,{[mi]:"stylesheet",[Oe]:bs}),xs(Ge,{[mi]:"preconnect",[Oe]:"https://cdn.jsdelivr.net"}),xs(Ge,{[mi]:ai,[Oe]:$s,[Mt]:Ai}),xs(Ai,{[$i]:$s}),xs(Ge,{[mi]:ai,[Oe]:Ms,[Mt]:Ri}),xs(Ge,{[mi]:"stylesheet",[Oe]:Ms})])e[Ne][$t](t);function xs(t="",i,n){const s=((t[We](E)||[])[0]||"")[Xi](),o=((t[We](N)||[])[1]||"")[Xi](),l=(T[Bi](t)?t[We](T):[])[ze]((t=>t[Ni](/^\./,"")));e[De],e[te];if(s[Pe]<1)return;let r,h,u,c=!1;if(t===Hi?(c=!0,r=e[yn]()):r=e[_n](s),83!=Us[Pe])return r;o[Pe]&&(r.id=o);for(let t of l)r[gn][Dt](t);if(null==i&&null!=n&&([i,n]=[n,null]),null!=i&&null!=n)[h,u]=[i,n];else if(null==n)typeof i===Mi||typeof i===ti||Array[Ue](i)?u=i:h=i;else if(null==i)return r;if(typeof h===ei&&null!=h)for(const t in h){if(!h[Cn](t))continue;const e=h[t];-1!=[tn,Dn,Sn,zi,qt][wn](t)?r[t]=e:-1!=[Zt,fn,sn,Ee,oe,de][wn](t)?r[Ri][t]=e:null!=e&&r[zn](t,e)}if(null!=u){const t=typeof u===Mi,i=typeof u===ti,n=Array[Ue](u);if(t||i){const t=u;s===we||s===Si?r[$i]=t:c?r[$t](e[mn](u)):r[Sn]=t}else if(n)for(let t of u){const i=t instanceof Element;typeof t===Mi||typeof t===ti?c?r[$t](e[mn](t)):r[Sn]+=t:i&&r[$t](t)}}return r}function Fs(t=""){return t[Ni](I,(t=>({"&":ys," ":_s,"<":ps,">":gs,'"':ms,"'":Ts}[t])))}function ks(t,e=""){return new RegExp(t,e)}function vs(t){if(t)return t[pn]===li||t[$n][Zi]()===le&&t[Fn][pn]===li?t:vs(t[Fn])}function Ps(t){const e=xs(le);return e[$t](t),e[Sn]}function Ls(t=""){if((t=t[Xi]())[Pe]<1)return"";const e=t[We](Tt)||[];return e[Pe]>2&&11===e[1][Pe]?e[1]:""}function js(t=""){if((t=t[Xi]())[Pe]<1)return"";const e=t.match(/(?:https?:\/\/)?(?:www\.)?vimeo\.com\/(?:channels\/[\w]+\/|groups\/[\w]+\/videos\/|album\/\d+\/video\/|video\/|)(\d+)/);return e?e[1]:null}function Gs(t,e="",i="",n="",s="",o=""){const l=Hs(i),r=n instanceof HTMLElement?n:xs(i,n);return m[Ci](l,r[si]),e[Ni](t,s+l+o)}function Hs(t=""){let e="{{"+(t[Xi]()||Ut)+"-";for(let t=0;t<64;t++)e+=_[Pt](r[fe](36*r[_i]()));return e+="}}",m[Te](e)?Hs(t):e}function Bs(t=""){let i;for(let e of t[We](ks(w,Os))||[]){const s=e[We](w),o=s[1]||"",l=s[3]||"",r=s[5]||"";i=xs(xt+(l[Pe]?"."+l:"")),n(e,l),t=Gs(e,t,xt,i,o,r)}function n(t,e=""){let n=Xs(t[Xi]()[Ni](/^\>[\u00A0\u0020\u0009]?/,"")[Ni](/\n\>[\u00A0\u0020\u0009]?/g,"\n"))[bi](nt);for(let t in n){const o=n[t];i[$t](s(o,d(t),e))}}function s(t,n=0,o=""){let l=xs(Hi);const r=/^[\u00A0\u0020\u0009]*\>[\u00A0\u0020\u0009]?/,h=t[Ni](r,"");if(/\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/[Bi](t)&&0===n)l[$t](xs(Di+".hint",[-1!=["NOTE","TIP","IMPORTANT","WARNING","CAUTION"][wn](o)?xs("span.material-symbols-outlined",{NOTE:"info",TIP:"lightbulb",IMPORTANT:"sms",WARNING:"warning",CAUTION:"error"}[o]||""):null,o])),l[$t](xs(kt));else if(r[Bi](t)){let t=xs(xt);t[$t](s(h)),l[$t](t)}else/^[\u00A0\u0020\u0009]*\{\{/[Bi](t)?l[$t](i[$t](e[mn](t))):l[$t](xs(Di,t));return l}return t}function zs(t=""){let e=[[Wt,S]];for(let i of e){const e=i[0],n=i[1];for(let i of t[We](ks(n,Os))||[]){const s=i[We](n);if(R[Bi](s[1]||""))continue;let o=(s[1]||"")[Xi]();o[Pe]<1||(e!=Wt?t=t[Ni](i,xs(e,o)[si]):(o=Fs(o),t=Gs(i,t,e,o)))}}return t}function Ks(t){let e=0,i=xs(ni);for(let n in t){const s=t[n];0===d(n)&&(e=r.floor((s[We](/^\s*/)||[""])[0][Pe]/4));const o=ks(`^\\s{0,${4*e}}`);i[$t](xs(Le,Fs(s[Ni](o,""))))}return i}function Ws(t=""){let e=[[Ui,W],[Ui,V],[ws,K],[Ke,z],[he,M],[he,U],[ki,Y],[xi,Z]];for(let t of e){i(t[0],t[1])}function i(e,i){for(let n of t[We](ks(i,Os))||[]){const s=n[We](i);if(R[Bi](s[1]||""))continue;let o=(s[1]||"")[Xi]();o[Pe]<1||(e!=Wt?t=t[Ni](n,xs(e,o)[si]):(o=Fs(o),t=Gs(n,t,e,o)))}}return t}function Vs(t="",e="",n=At){if(i(e||"")[Xi]()[Pe]<1)return t;for(let i of t[We](ks(O,Os))||[]){if(i[We](/^\\/))continue;const s=i[We](O);if(s[Pe]<1)continue;const o=s[1],l=(s[2]||"")[Xi](),r=Hs(Es);if(l[Pe]<1)continue;const h=xs(Hi,[xs(Es+"."+Pi,{[Oe]:e+l,[Li]:n===At?At:"_self"},l)]);m[Ci](r,Ps(h)),t=t[Ni](i,o+r)}return t}function Zs(t=""){return(()=>{for(let e of t[We](ks(x,Os))||[]){const i=e[We](x);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[3]||"")[Xi]()[Pe],o=(i[4]||"")[Xi]();0!=r[Ze](s,o[Pe])&&(t=Gs(e,t,Is+s,o,n))}})(),(()=>{for(let e of t[We](ks(v,Os))||[]){const i=e[We](v);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi]()[Pe],o=(i[3]||"")[Xi](),l=i[4]||"";0!=r[Ze](s,o[Pe])&&(t=Gs(e,t,Is+s,o,n,l))}})(),(()=>{for(let e of t[We](ks(F,Os))||[]){const i=e[We](F);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi](),o=i[3]||"";s[Pe]<1||(t=Gs(e,t,Is+1,s,n,o))}})(),(()=>{for(let e of t[We](ks(k,Os))||[]){const i=e[We](k);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi](),o=i[3]||"";s[Pe]<1||(t=Gs(e,t,Is+2,s,n,o))}})(),t}function Ys(t=""){for(let e of t[We](ks(P,Os))||[]){const i=e[We](P);if(i[Pe]<1)continue;const n=i[1]||"",s=i[3]||"",o=Hs("HR");m[Ci](o,"<hr>"),t=t[Ni](e,n+o+s)}return t}function qs(t=""){const e="this.parentElement.nextElementSibling.style.display='block';this.parentElement.style.display='none'",i="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEyMCAxMjAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yNTkyXzMwNDkpIj4KPHBhdGggZD0iTTEyMCA2MEMxMjAgMjYuODYyOSA5My4xMzcxIDAgNjAgMEMyNi44NjI5IDAgMCAyNi44NjI5IDAgNjBDMCA5My4xMzcxIDI2Ljg2MjkgMTIwIDYwIDEyMEM5My4xMzcxIDEyMCAxMjAgOTMuMTM3MSAxMjAgNjBaIiBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIwLjUiLz4KPHBhdGggZD0iTTg0LjM2MzMgNTYuNTgwM0M4Ni45MzAyIDU4LjEzNzYgODYuOTMwMiA2MS44NjI2IDg0LjM2MzMgNjMuNDE5OUw1MS44MjQ4IDgzLjE2MTJDNDkuMTU5MSA4NC43Nzg2IDQ1Ljc1IDgyLjg1OTQgNDUuNzUgNzkuNzQxNFY0MC4yNTg4QzQ1Ljc1IDM3LjE0MDggNDkuMTU5MSAzNS4yMjE2IDUxLjgyNDggMzYuODM4OUw4NC4zNjMzIDU2LjU4MDNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI1OTJfMzA0OSI+CjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPg==";function n(t,n,s,o){return Ps(xs(Hi,[xs(Es,{[Vi]:o,[Oe]:n,[Li]:At},s||n),xs("section.more",[xs("img.cover","https://i.ytimg.com/vi/"+t+"/mqdefault.jpg"),xs("img.icon",{[Un]:e},i)]),xs(Ce,{[Be]:ve,[sn]:"640px",[$i]:"https://www.youtube.com/embed/"+t,frameborder:0,allow:"accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",[oe]:Qe})]))}function s(t,n,s,o){const l=function(t){const e=`https://vimeo.com/api/v2/video/${t}.json`;let i=null;const n=new XMLHttpRequest;n.open("GET",e,!1);try{n.send(),200===n.status?i=JSON.parse(n.responseText)[0].thumbnail_large:console.error("HTTP 錯誤:",n.status)}catch(t){console.error("無法獲取縮圖:",t)}return i}(t);return Ps(xs(Hi,[xs(Es,{[Vi]:o,[Oe]:n,[Li]:At},s||n),xs("section.more",[xs("img.cover",l),xs("img.icon",{[Un]:e},i)]),xs(Ce,{[Be]:ve,[sn]:"640px",[$i]:"https://player.vimeo.com/video/"+t,frameborder:0,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",[oe]:Qe})]))}return(()=>{for(let e of t[We](ks(C,Os))||[]){const i=e[We](C);if(i[Pe]<1)continue;const o=(i[1]||"")[Xi](),l=(i[2]||"")[Xi](),h=(i[4]||"")[Xi](),u=(Ls(l)||"")[Xi](),c=(js(l)||"")[Xi]();if(0!=r[Ze](o[Pe],l[Pe]))if(u[Pe])t=Gs(e,t,le,n(u,l,o,h));else if(c[Pe])t=Gs(e,t,le,s(c,l,o,h));else{const i=xs(Es,{[Vi]:h,[Oe]:l,[Li]:At},o);t=Gs(e,t,Es,i)}}})(),(()=>{for(let e of t[We](ks(et,Os))||[]){if(e[We](j))continue;const i=e[We](et);if(i[Pe]<1)continue;const o=i[1]||"",l=(i[2]||"")[Xi](),r=i[5]||"",h=(Ls(l)||"")[Xi](),u=(js(l)||"")[Xi]();if(!(l[Pe]<1))if(h[Pe])t=Gs(e,t,le,n(h,l),o,r);else if(u[Pe])t=Gs(e,t,le,s(u,l));else{const i=xs(Es,{[Oe]:l,[Li]:At},l);t=Gs(e,t,Es,i,o,r)}}})(),(()=>{for(let e of t[We](ks(A,Os))||[]){if(e[We](j))continue;const i=e[We](A);if(i[Pe]<1)continue;const n=(i[1]||"")+(i[2]||"")+(i[3]||""),s=(i[4]||"")[Xi](),o=i[8]||"";if(s[Pe]<1)continue;const l=xs(Es,{[Oe]:Nt+s,[Li]:At},s);t=Gs(e,t,Es,l,n,o)}})(),t}function Xs(t=""){for(let i of t[We](ks(G,Os))||[])e(i);function e(e){let i;e[Xi]()[Ni](ks(it,Os),Et)[bi](it)[ye](((t,e)=>{const n=t[We](H)||[],s=n[Pe]<1?null:/\d+\./[Bi]((n[2]||"")[Xi]())?ni:Qi,o=(t[We](/\s{4}/g)||[])[Pe];let l=n[Pe]<1?t[Ni](/^\s*([\-\*\+]|\d+\.)?\s*/g,""):(n[3]||"")[Xi]();if(0===d(e)&&null==s)return;0===d(e)&&(i=xs(s));let r=i;function h(t,e){if(/^\[\s*(\x)?\s*\]/[Bi](e)){const i=e[Xi]()[We](/^\[\s*(\x)?\s*\]/);e=e[Ni](/^\[\s*(\x)?\s*\]\s*/,"");const n=null!=i[1];t[$t](xs(Le,[xs(xe,[xs($e,{[Ji]:jt,[Lt]:n?"":null,[Un]:"return false;"}),xs(Di,e)])]))}else t[$t](xs(Le,e))}if(/^\s{0,3}([\-\*\+]|\d+\.)/[Bi](t))h(r,l);else if(/^\s{4,}([\-\*\+]|\d+\.)/[Bi](t)){r=i[ke];for(let t=0;t<o&&(null!=r&&null!=r[Yn]);t++)if(t==o-1&&r[Yn][Zi]()==Le)if(r[ke]instanceof HTMLElement&&(r[ke][Yn][Zi]()==ni||r[ke][Yn][Zi]()==Qi))h(r[ke],l);else if(/^\[\s*(\x)?\s*\]/[Bi](l)){const t=l[Xi]()[We](/^\[\s*(\x)?\s*\]/);l=l[Ni](/^\[\s*(\x)?\s*\]\s*/,"");const e=null!=t[1];r[$t](xs(s,[xs(Le,[xs(xe,[xs($e,{[Ji]:jt,[Lt]:e?"":null,[Un]:"return false;"}),xs(Di,l)])])]))}else r[$t](xs(s,[xs(Le,l)]));else r=r[ke][ke]}else{if(null==i)return;for(r=i[ke];null!=r[ke];)r=r[ke];if(r instanceof HTMLElement);else if(/^\{\{(h\d|img|pre)/[Bi](r[Mn]||""));else{for(;r[xn][Yn][Zi]()!=Le;)r=r[xn];r[xn][$t](xs(kt))}r[xn][Sn]+=l}})),null!=i&&(t=Gs(e,t,He,i))}return t}function Js(t=""){for(let e of t[We](ks(L,Os))||[]){const i=e[We](L);if(i[Pe]<1)continue;const n=(i[1]||"")[Xi](),s=(i[2]||"")[Xi](),o=(i[4]||"")[Xi]();let l=(i[6]||"")[Xi](),r=(i[7]||"")[Xi](),h=(i[9]||"")[Xi]();if(s[Pe]<1)continue;l[Pe]&&!tt[Bi](l)&&(l+=gi),r[Pe]&&!tt[Bi](r)&&(r+=gi);const u=J[Bi](s),c=Q[Bi](s);let a;a=u?xs(en,{[Xt]:"",[Vi]:o,[sn]:l||null,[Ee]:r||null},[xs(Si,{[Ji]:p},s)]):c?xs(en,{[Xt]:"",[Vi]:o,[sn]:l||null,[Ee]:r||null},[xs(Si,{[Ji]:f},s)]):xs(we,{[bt]:n,[Vi]:o,[sn]:l||null,[Ee]:r||null,[de]:h[Pe]?h:null},s),null!=a&&(t=Gs(e,t,we,a))}return t}function Qs(t=""){for(let e of t[We](ks(b,Os))||[]){const i=e[We](b);if(i[Pe]<1)continue;const n=null==i[2][We](D),s=n?"":(i[1]||"")[Xi]()[Zi](),o=i[2]||"",l=-1!=g[wn](s),r=o[Ni](D,"")[bi](nt);let h;h=n?xs(Wt+"."+di,Fs(o)):xs(ui+"."+di,{[Xe]:s},[xs(Wt+(l?"."+Fe+"-"+s:""),{[Xe]:s},[Ks(r)]),xs(vt+"."+Jt)]),t=Gs(e,t,n?Wt:ui,h)}return t}function to(t=""){for(let e of t[We](ks($,Os))||[]){const i=e[We]($);if(i[Pe]<1)continue;const n=i[2]||"",s=e[Ni](D,"")[bi](nt),o=xs(ui+"."+di,[xs(Wt,[Ks(s)]),xs(vt+"."+Jt)]);t=Gs(e,t,ui,o,n)}return t}function eo(t=""){let e;function i(t){const e=t[We](/^([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*)+/)||[],i=t[We](/[\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*$/)||[];return[e[0]||"",i[0]||""]}function n(t){const i=t[Xi]()[bi](nt);e=xs(Hi,[xs(vi,[xs(Wi),xs(ji)])]);let n=!0,o=[],l=0;for(let t in i){const r=i[t],h=r[We](/((\s*)\|?((?:.*?\|)*.*)\|?)+/)||[];if(h[Pe]<1)continue;const u=(h[3]||"")[Xi]()[Ni](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*$/,""),c=/^[\u0020\u00A0\u0009]*\|?([\u0020\u00A0\u0009]*[\-\:]+[\u0020\u00A0\u0009]*\|?)+[\u0020\u00A0\u0009]*$/[Bi](r),a=u[bi](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*/);if(0===d(t)&&(l=a[Pe]),c){for(let t of r[Ni](/^([\u0020\u00A0\u0009]*\|)|(\|[\u0020\u00A0\u0009]*)$/g,"")[bi](/\|/))/^\-+\:$/[Bi](t[Xi]())?o.push("right"):/^\:\-+\:$/[Bi](t[Xi]())?o.push("center"):o.push("left");const t=[...e.firstChild.firstChild.childNodes[0].childNodes];for(let e in t)t[e].setAttribute("align",o[e]);n=!1}else s(n,a,l,o)}}function s(t=!0,i=[],n=0,s=[]){const o=t?e.firstChild.firstChild:e.firstChild[ke],l=xs(qi);for(let e=0;e<n;e++)l[$t](xs(t?Ki:Gi,{align:s[e]},i[e]||""));o[$t](l)}return(()=>{const s=/([^\n]*)(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)[\u0020\u00A0\u0009]*\|([\u0020\u00A0\u0009\-\:]*\|)+\n(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)*/;for(let o of t[We](ks(s,Os))||[])B[Bi](o)||(n(o),t=Gs(o,t,vi,Ps(e),...i(o)))})(),(()=>{const s=/(([^\n]+\|)*[^\n]+\n)(([\u0020\u00A0\u0009\-\:]+\|)*[\u0020\u00A0\u0009\-\:]+\n)(?:([^\n]+\|)*[^\n]+\n)*/;for(let o of t[We](ks(s,Os))||[])n(o),t=Gs(o,t,vi,Ps(e),...i(o))})(),t}function io(t=""){return t=t[Ni](/\n[\u0020\u00A0\u0009]*/g,"\n"),(()=>{for(let e of t[We](ks(X,Os))||[]){const i=e[We](X);if(i[Pe]<1)continue;const n=i[2]||"",s=(i[0]||"")[Xi]();if(s[Pe]){const i=xs(Hi,[xs("p",s)]),o=Hs("p");m[Ci](o,Ps(i)),t=t[Ni](e,n+o)}}})(),(()=>{for(let e of t[We](ks(q,Os))||[]){const i=e[We](q);if(i[Pe]<1)continue;const n=i[2]||"",s=(i[0]||"")[Xi]();if(s[Pe]){const i=xs(Hi,[xs("p",s)]),o=Hs("p");m[Ci](o,Ps(i)),t=t[Ni](e,n+o)}}})(),t}function no(t=""){t=t[Ni](/^\n*|\n*$/g,"");const e=/(<br>)/g;return e[Bi](t)?t[Ni](e,"\n"):t}function so(t="",e="",i=At){t=t[Ni](st,Qn)[Ni](ot,ts)[Ni](lt,es)[Ni](rt,is)[Ni](ht,ns)[Ni](ut,ss)[Ni](ct,os)[Ni](at,ls)[Ni](dt,rs)[Ni](ft,hs)[Ni](pt,us)[Ni](gt,cs)[Ni](yt,as)[Ni](_t,ds)[Ni](mt,fs)[Ni](/[\u00A0\u0020]/g," ");let n=[Qs,zs,Js,qs,Ws,Zs,Ys,eo,Bs,Xs,to,Vs,no,io];for(let s of n)t=s(t,e,i);for(;/\{{2}\w*\-*\w{64}\}{2}/[Bi](t);)for(let e of t[We](/\{{2}\w*\-*\w{64}\}{2}/g)||[]){let i=ks(e);t=t[Ni](i,m[me](e))}const s=["h1","h2","h3","h4","h5","h6",vi,ni,Qi,ui,xt,"details","hr",xe];for(let e of s){const i=ks(`[ \t]*\\n[ \t]*<${e}`,Os),n=ks(`${e}>[ \t]*\\n[ \t]*`,Os);t=t[Ni](i,`<${e}`)[Ni](n,`${e}>`)}return t=t[Ni](ks(Qn,Os),"!")[Ni](ks(ts,Os),"&grave")[Ni](ks(es,Os),"#")[Ni](ks(is,Os),"*")[Ni](ks(ns,Os),"_")[Ni](ks(ss,Os),"˜")[Ni](ks(os,Os),"^")[Ni](ks(ls,Os),"&equal;")[Ni](ks(rs,Os),ps)[Ni](ks(hs,Os),gs)[Ni](ks(us,Os),"[")[Ni](ks(cs,Os),"]")[Ni](ks(as,Os),"(")[Ni](ks(ds,Os),")")[Ni](ks(fs,Os),"$")[Ni](/([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*){2,}/g,"<br>")}document.addEventListener("DOMContentLoaded",(t=>{!function(...t){const i=xs(Ai,`${on}.log.${ln}(${rn} 0, ${JSON.stringify(t)});`);e[Ft][$t](i),i[Ti]()}("%c"+Us,"line-height: 1.75rem; font-size: 0.875rem;")}));t.PDMarkdownEditor=t.MDEditor=class{#t=!1;#e="";#i=!0;#n;#s;#o;#l;#r;#h;constructor(s={}){this.#e=(s.defaultContent||"")[Xi]();const o=s[Ri]||{},l=i(o[Ye]||Ut)[Xi]()[Zi](),r=n(null==o.fill?1:o.fill)?1:0,h=i(o[ge]||"")[Xi]()||"'Roboto Mono', monospace",u=n(null==o.showRow?1:o.showRow)?1:0,c=o.placeholder||{},a=i(c.text||"Type here ..."),d=i(c.color||"#bfbfbf"),f=o.focus||{},p=i(f.backgroundColor||"#0000ff1a"),g=i(f.color||"#0000ffff");e[Ne][$t](xs(Ri,`\n.${li}{font-family: ${h}}\n.${li}>div{font-size: 0.75rem}\n.${li}>div[data-focus="1"]{background-color:${p};color:${g};caret-color:${g}}\n.${li}>div:nth-last-child(2):empty::after{position:absolute;top:0;content:"${a}";color:${d} !important;caret-color:${g}}`));const _=document[un](s[Ie]);typeof s[Ie]===Mi&&null!=_?(this[Ft]=_,_.classList.add(li)):this[Ft]=xs(Ii+"."+li),this[Ft][ne][Ye]=y&&l===Ut||l===ie?ie:"",this[Ft][ne].fill=r,this[Ft][ne].row=u,this[Ft][ne].pin={1:1,0:0,[!0]:1,[!1]:0}[s.tabPin]||0,this[Ft][ne].wrap={1:1,0:0,[!0]:1,[!1]:0}[s.wrap]||1,this.#h=new lo(this[Ft]);const m=this[Ft];if(this.#i=n(null==s.hotKey||s.hotKey),null==this.#s&&s[Pn]&&(this.#s=t[dn]("beforeunload",(t=>{t[vn]()}))),null!=s[Ye]){let t=i(s[Ye]||Ut)[Xi]()[Zi]();this[Ft][ne][Ye]=y&&t===Ut||t===ie?ie:""}if(null!=s.fillMode){let t=n(s.fillMode)?1:0;this[Ft][ne].fill=t}if(null!=s.showRow){let t=n(s.showRow)?1:0;this[Ft][ne].row=t}if(null!=s[ge]){let t=i(s[ge])[Xi]()||"'Roboto Mono', monospace";e[Ne][$t](xs(Ri,`.${li}{font-family: ${t}}`))}let T=i(s[Nn]||"")[Xi]()||p,N=i(s[An]||"")[Xi]()||g;e[Ne][$t](xs(Ri,`.${li}>div[data-focus="1"]{background-color:${T};color:${N}`));let E=i(s[hi]||"")[Xi]()||a,A=i(s[kn]||"")[Xi]()||d;e[Ne][$t](xs(Ri,`.${li}>div:nth-last-child(1):empty::after{content:"${E}";color:${A}}`)),m.onmousedown=m.onmouseup=t=>{if(t.target[Yn][Zi]()!==le)return t[vn](),!1;this.#u()},m.ontouchend=t=>{this.#u()},m.oncut=t=>(this.#c(),this.#a((e=>{t[Kt][Kn]("text/plain",this.#r.body),m[Ht][this.#r.start][Sn]=Fs(this.#r.left+this.#r.right),this.#d(),this.#f(m[Ht][this.#r.start],this.#r.left[Pe])})),this.#p(!0),!1),m.onpaste=e=>(this.#c(),this.#a((i=>{const n=((e[Kt]||t[Kt])[On]("Text")||"")[bi](/\n/),s=n[Pe],o=s-1,l=s>1,r=this.#r.start+o,h=`${l?"":this.#r.left}${n[o]}`[Pe],u=n[0],c=l?"":this.#r.right;if(m[Ht][this.#r.start][Dn]=this.#r.left+u+c,this.#d(),l)for(let t=1;t<s;t++){const e=n[t],i=xs(le,Fs(`${e}${t===o?this.#r.right:""}`));i[Un]=t=>this.#u(),m[bn](i,m[Ht][this.#r.start+t])}this.#f(m[Ht][r],h,h)})),this.#p(!0),!1),m.oncompositionstart=t=>{this.#t=!0},m.oncompositionend=t=>{this.#t=!1},m.oninput=t=>{let e,i;if("deleteCompositionText"===t.inputType){e=this.#l.index,i=this.#l.offset;for(let t of[...m[Ht]]){if(t[$n][Zi]()===le||t[$n][Zi]()===Ii)continue;t[Ti]();let n=xs(le,{"data-index":e+1,index:e+1});n[Un]=t=>this.#u(),m[bn](n,m[Ht][e]),this.#f(m[Ht][e],i)}}t.inputType;let n=this.#l.isMulti,s=this.#l.multi.left,o=t.data,l=this.#l.multi.right,r=this.#l.multi.start.offset;this.#u(),n&&(this.#n[Dn]=s+o+l,this.#f(this.#n,r+1)),this.#p(!0,300)},m.onkeydown=t=>{const e=t[Ve]||t[ee],i=t.shiftKey,n=/^a$/i[Bi](t.key),o=/^b$/i[Bi](t.key),l=/^i$/i[Bi](t.key),r=/^s$/i[Bi](t.key),h=/^u$/i[Bi](t.key),u=/^m$/i[Bi](t.key),c=/^z$/i[Bi](t.key),a=/^r$/i[Bi](t.key),d=/^k$/i[Bi](t.key),f=/^f5$/i[Bi](t.key),p="ArrowUp"===t.key,g="ArrowDown"===t.key;if(this.#u(null,this.#i&&e&&n),"Meta"===t.key||"Control"===t.key)return!1;if(this.#i&&e&&i&&c)return this.goForward(),!1;if(this.#i&&e&&c)return this.goBack(),!1;if(this.#i&&(e&&a||f)&&s[Pn])return!1;if(this.#i&&e&&o)return this.#g(t,"**",As),!1;if(this.#i&&e&&l)return this.#g(t,"*",Cs),!1;if(this.#i&&e&&r)return this.#g(t,"~~",ws),!1;if(this.#i&&e&&h)return this.#g(t,Ss,Ss),!1;if(this.#i&&e&&u)return this.#g(t,"==",Ke),!1;if(this.#i&&e&&p)return this.#g(t,"^",ki),!1;if(this.#i&&e&&g)return this.#g(t,"~",xi),!1;if(this.#i&&e&&d)return this.#g(t,"`",Wt),!1;if(this.#i&&e&&n){const t=this[Ft].firstElementChild,e=this.#y,i=window.getSelection(),n=document.createRange();if(null==t.firstChild)return;return n.setStart(t.firstChild,0),n.setEnd(e.firstChild,e.firstChild.length),i.removeAllRanges(),i.addRange(n),!1}return"Tab"===t.key?this.#_(t):"Enter"===t.key?this.#m(t):"Backspace"===t.key?this.#T(t):void 0},m.onkeyup=t=>{"Meta"!==t.key&&"Control"!==t.key&&(m[Ht]&&1===m[Ht][Pe]&&m.firstElementChild[$n][Zi]()!==le&&this[De](null,!0,!1),this.#u(),/^(Arrow(Up|Left|Down|Right)|CapsLock|Shift|Control|Alt|Clear|Escape|F\d+)$/[Bi](t.key)||this[nn]&&this[nn][De]())},m.onblur=t=>{this.#c()},this.init()}get viewer(){return this.#o}set viewer(t){this.#o=t}#N(){const t=Ii+"."+$e+"-"+vt,e=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.wrap;let i=this[Ft][yi](t);if(i)return;const n=[{[Xe]:"format_bold",[Vi]:"添加粗體",[Ei]:t=>this.addBold(t)},{[Xe]:"format_italic",[Vi]:"添加斜體",[Ei]:t=>this.addItalic(t)},{[Xe]:"strikethrough_s",[Vi]:"添加刪除線",[Ei]:t=>this.addStrikethrough(t)},{[Xe]:"format_underlined",[Vi]:"添加底線",[Ei]:t=>this.addUnderline(t)},{[Xe]:"ink_marker",[Vi]:"添加高亮",[Ei]:t=>this.addMarker(t)},{[Xe]:"superscript",[Vi]:"添加上標",[Ei]:t=>this.addSup(t)},{[Xe]:"subscript",[Vi]:"添加下標",[Ei]:t=>this.addSub(t)},{[Xe]:"format_quote",[Vi]:"添加引用",[Ei]:t=>this.addBlockquote(t)},{[Xe]:"format_list_bulleted",[Vi]:"添加無序列表",[Ei]:t=>this.addUl(t)},{[Xe]:"format_list_numbered",[Vi]:"添加有序列表",[Ei]:t=>this.addOl(t)},{[Xe]:"code",[Vi]:"添加代碼塊",[Ei]:t=>this.addCode(t)},{[Xe]:"link",[Vi]:"添加連結",[Ei]:t=>this.addLink("連結文字","連結")},{[Xe]:"landscape",[Vi]:"添加圖片",[Ei]:t=>this.addImage("圖片連結","圖片名稱")},{},{[Xe]:e?"keep_off":"keep",[Vi]:"釘選面板",[Ei]:t=>this.#E(t)},{[Xe]:"wrap_text",[Vi]:"換行",[Ei]:t=>this.#A(t)}].map((t=>{if(null==t[Xe]){return xs("span")}let e=xs("span.material-symbols-outlined",{title:t.title,name:t.name},t.name);return e[Un]=t.click,e}));i=xs(t,n),i[qt]=!1,i.dataset.hide=1,this[Ft][$t](i)}#E(t){const e=t.target,i=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.pin=Math.abs(i-1),e[Dn]=i?"keep":"keep_off",e[Vi]=i?"釘選面板":"取消釘選"}#A(t){const e=parseInt(this[Ft].dataset.wrap||1);this[Ft].dataset.wrap=Math.abs(e-1)}#O(t,e){this.#N();const i=Ii+"."+$e+"-"+vt;let n=this[Ft][yi](i);t[ne][pe]=1,this[Ft][bn](n,this[Ft][Ht][e+1]),n[ne][Ae]=0,this.#n=t}#c(){if(!this.#n)return;const t=Ii+"."+$e+"-"+vt,e=this[Ft][yi](t);this.#n[ne][pe]=0,null!=e&&(this[Ft][$t](e),e[ne][Ae]=1),this.#n=null}#u(e,i=!1){this.#c(),this.#l=new oo(this[Ft],e,i);const n=t[In]();if(n.rangeCount<1)return;const s=n.getRangeAt(0);let o=e||vs(s.commonAncestorContainer);null!=o&&this.#O(o,this.#l.index||this.#l.multi.end.index)}#a(t){this.#r=new ro(this[Ft],this.#l),t()}#d(){this.#r.removeRows()}#f(i,n,s){const o=this[Ft][Ln](le);for(let t in o){const e=o[t];isNaN(d(t))||(e[ne][Se]=d(t)+1)}t[In]?t[In]()[ue]?t[In]()[ue]():t[In]()[jn]&&t[In]()[jn]():e[In]&&e[In]()[ue]();let l=t[In](),r=e.createRange(),h=n??i[Gt][0][Pe],u=s??h;r.selectNode(i),i[Gt][0]?(r[Vn](i[Gt][0],h>i[Gt][0][Pe]?i[Gt][0][Pe]:h),r[Wn](i[Gt][0],u>i[Gt][0][Pe]?i[Gt][0][Pe]:u)):(r[Vn](i,0),r[Wn](i,0)),l.addRange(r),this.#u(i)}#_(t){if(9!==t.keyCode)return;const e=this[Ft];return this.#a((t=>{e[Ht][this.#r.start][Sn]=Fs(this.#r.left+" "+this.#r.right),this.#d();const i=this.#r.left[Pe]+4;this.#f(e[Ht][this.#r.start],i)})),!1}#m(t){if(13!==t.keyCode)return;const e=this[Ft];return this.#a((t=>{e[Ht][this.#r.start][Sn]=Fs(this.#r.left),this.#d(),e[xn][xn][Bn]+=28;const i=xs(le,Fs(this.#r.right));i[Un]=t=>this.#u(),e[bn](i,e[Ht][this.#r.start+1]),this.#f(e[Ht][this.#r.start+1],0)})),!1}#T(t){if(8!==t.keyCode)return!1;const e=this[Ft];return this.#a((t=>{if(this.#l.isMulti||this.#l.isSingle)e[Ht][this.#r.start][Sn]=Fs(this.#r.left+this.#r.right),this.#d(),this.#f(e[Ht][this.#r.start],this.#r.left[Pe]);else if(this.#r.left[Pe]){const t=this.#r.left[wi](0,this.#r.left[Pe]-1);e[Ht][this.#r.start][Sn]=Fs(t+this.#r.right),this.#f(e[Ht][this.#r.start],t[Pe])}else{if(0===this.#r.start)return;e[Ht][this.#r.start-1][Sn]+=Fs(this.#r.right),e[Ht][this.#r.start][Ti](),e[xn][xn][Bn]-=28;const t=e[Ht][this.#r.start-1][Dn][Pe]-this.#r.right[Pe];this.#f(e[Ht][this.#r.start-1],t)}})),!1}#I(t){t=Fs(t);let e=this.#y;const i=xs(le,t);i[Un]=t=>this.#u(),e[Dn][Xi]()[Pe]<1?e[Sn]=t:this[Ft][$t](i),this[Ft][Bn]=this[Ft][Gn]}get#y(){let t=this[Ft].lastElementChild;return"SECTION"===t[$n]&&(t=t.previousElementSibling),t}#C(t,e){t=Fs(t);const i=this[Ft][Ht][this.#r.start];i[Sn]=t,this.#d(),this.#f(i,e),this.#w()}#g(t,e="",i=""){const n=t[Ve]||t[ee]||e===i;this.#l.check?this.#a((t=>{const s=this.#r.left,o=this.#r.body,l=this.#r.right,r=`${s}${n?`<${i}>`:e}${o}${n?`</${i}>`:e}${l}`[Ni](/\n/g,""),h=r[Pe]-l[Pe]-(n?i[Pe]+3:e[Pe]);this.#C(r,h),this.#p(!0)})):(this.#I(n?`<${i}></${i}>`:`${e}${e}`),this.#f(this.#y,n?i[Pe]+3:e[Pe]),this.#p(!0))}#S(t){this.#l.check?this.#a((e=>{const i=this.#r.start,n=this.#r.end;for(let e=i;e<=n;e++){const i=this[Ft][Ht][e];i[Sn]=Fs(`${t} ${i[Dn]}`)}const s=this[Ft][Ht][n],o=s[Dn][Pe];this.#f(s,o),this.#p(!0),this.#w()})):(this.#I(t),this.#f(this.#y,t[Pe]+1),this.#p(!0))}#D(t="",e="",i){if(this.#l.check)return void this.#a((n=>{const s=this.#r.left,o=this.#r.right,l=`${s}${null==i?"":"!"}[${t}](${e}) ${o}`[Ni](/\n/g,""),r=l[Pe]-o[Pe]-1;this.#C(l,r),this.#p(!0)}));this.#I(`${null==i?"":"!"}[${t}](${e})`);const n=this.#y,s=n[Dn][Pe];this.#f(n,s),this.#p(!0),this.#w()}#p(t,e){this.#u(),this.#h.add(this.#l,t,e)}#b(t,i){const n=new a([i],{[Ji]:"application/octet-stream"}),s=h.createObjectURL(n),o=xs(Es,{href:s,download:`NanoMD-${c.now()}.${t}`});e[Ft][$t](o),o[Ei]()}#w(){null!=this[nn]&&this[nn][De]()}init(t,e=!0,n=!0){if(this[Ft][qt]=!0,this[Ft][Sn]=null,(t=i(t||this.#e)[Xi]())[Pe]){this.#e="";const i=t[Ni](/\n*$/,"")[bi](/\n/);for(let t=0;t<i.length;t++){const e=i[t],n=xs(le,{"data-index":t+1},Fs(e));n[Un]=t=>this.#u(),this[Ft][$t](n)}if(this.#N(),!e)return}else{const t=xs(le,{"data-index":1});if(t[Un]=t=>this.#u(),this[Ft][$t](t),this.#N(),!e)return}n&&this.#p(!0)}changeMode(t=je){this[Ft][ne][Ye]=t}goBack(){this.#c();const t=this.#h.undo();null!=t&&(this[De](t[Yt][Pe]<1?null:t[Yt],!1,!1),this.#f(this[Ft][Ht][t[Se]],t[ii]),this.#w())}goForward(){const t=this.#h.redo();null!=t&&(this.init(t[Yt],!1,!1),this.#f(this[Ft][Ht][t[Se]],t[ii]),this.#w())}addHeading(t,e){const i=t[Ve]||t[ee],n=`${new Array(e).fill("#")[Re]("")}${0===e?"":" "}`;this.#l.check?this.#a((t=>{const s=this.#r.left[Ni](/^\s*\#*\s*/,""),o=this.#r.body,l=this.#r.right,r=`${i?`<h${e}>`:n}${s}${o}${l}${i?`</h${e}>`:""}`[Ni](/\n/g,""),h=r[Pe]-(i?5:0);this.#C(r,h),this.#p(!0)})):(this.#I(i?`<h${e}></h${e}>`:n),this.#f(this.#y,n[Pe]-(i?5:0)),this.#p(!0))}addBold(t){this.#g(t,"**",As)}addItalic(t){this.#g(t,"*",Cs)}addStrikethrough(t){this.#g(t,"~~",ws)}addUnderline(t){this.#g(t,Ss,Ss)}addMarker(t){this.#g(t,"==",Ke)}addSup(t){this.#g(t,"^",ki)}addSub(t){this.#g(t,"~",xi)}addBlockquote(){this.#l.check?this.#a((t=>{for(let t=this.#r.start;t<=this.#r.end;t++){const e=this[Ft][Ht][t];e[Sn]=Fs(`> ${e[Dn]}`)}const e=this[Ft][Ht][this.#r.end],i=e[Dn][Pe];this.#f(e,i),this.#p(!0),this.#w()})):(this.#I("> "),this.#f(this.#y,2),this.#p(!0))}addUl(){this.#S("-")}addOl(){this.#S("1.")}addCode(t){this.#l.check?this.#a((e=>{if(this.#l.isMulti){const t=xs(le,"```"),e=xs(le,"```");t[Un]=e[Un]=t=>this.#u(),this[Ft][bn](t,this[Ft][Ht][this.#r.end+1]),this[Ft][bn](e,this[Ft][Ht][this.#r.start]),this.#f(this[Ft][Ht][this.#r.end+1],this[Ft][Ht][this.#r.end+1][Dn][Pe]),this.#p(!0),this.#w()}else this.#g(t,"`",Wt)})):this.#g(t,"`",Wt)}addLink(t="",e=""){e[Xi]()[Pe]<1&&t[Xi]()[Pe]<1||this.#D(t,e)}addImage(t="",e="",i=""){t[Xi]()[Pe]<1||this.#D(i,t,e)}clear(){this.init(),this.#w()}downloadMd(){this.#b("md",this.getTxt()[Xi]())}downloadHtml(){this.#b("html",`<!DOCTYPE html> <html lang="zh-hant"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Markdown Editor</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@latest/dist/NanoMD.css"> <script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"><\/script> <style> body { display: flex; justify-content: center; align-item: flex-start; width: 100%; height: 100%; overflow: scroll; } * { -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; touch-action: manipulation; box-sizing: border-box;} body { background-color: ghostwhite; } *::-webkit-scrollbar { display: none; } body>section { padding: 1rem !important; width: 100%; background-color: #fff; box-sizing: border-box; box-shadow: 0 0.25rem 0.5rem #0000000d; transition: 0.3s; } @media screen and (min-width: 640px) { body>section { padding: 3rem !important; max-width: 800px; } } </style> </head> <body><section class="pd-md-viewer">${so(`\n${this.getTxt()}\n`)}</section></body> </html><!DOCTYPE html>`)}openfile(t){if(null==t)return void alert("請選擇檔案");const e=new FileReader;e.readAsText(t),e.onload=()=>{this[Ft][Sn]=null;const t=e.result[Xi]()[Ni](/[\u0020\u00A0]/g," ");this.init(Fs(t),!1),this.#w()}}getTxt(){return[...this[Ft][Ht]].map((t=>"SECTION"===t[$n]?"":t[Dn]))[Re]("\n")}};class oo{check=!1;isMulti=!1;isSingle=!0;index;offset;left;right;selection={};multi={};constructor(e,i,s=!1){const o=t[In]();if(o.rangeCount<1)return;const l=o.getRangeAt(0);let r=i||vs(l.commonAncestorContainer);if(null==r)return;let h,u,c="";if(s){r=e;const t=r[Ln](le);for(let e=0;e<t.length;e++){const i=t[e];c+=(0==e?"":"\n")+i[Dn]}h=0,u=t[Pe]-1}else l.cloneContents()[Gt][ye](((t,e)=>{c+=(0==e?"":"\n")+t[Dn]})),r===e&&(h=d(vs(o.baseNode)[ne][Se])-1,u=d(vs(o.focusNode)[ne][Se])-1);var a=n(r===e),f=!a&&!s&&n(o[Rt]!==o[En]),p=!!s||n(o[En]>o[Rt]),g=!!s||n(h<u);this.check=!0,this.index=a?null:d(r[ne][Se])-1,this.offset=a||f?null:d(o[En]),this.left=a||f?null:r[Dn][wi](0,o[En]),this.right=a||f?null:r[Dn][wi](o[En],r[Dn][Pe]),this.isSingle=f,this.isMulti=a;const y=f?p?o[Rt]:o[En]:null,_=f?p?o[En]:o[Rt]:null;this.selection={body:f?o.toString():c,start:y,end:_,left:f?r[Dn][wi](0,y):null,right:f?r[Dn][wi](_,r[Dn][Pe]):null};const m=a?g?h:u:null,T=s?0:a?g?o[Rt]:o[En]:null,N=a?g?u:h:null,E=s?e[Ht][u][Dn][Pe]:a?g?o[En]:o[Rt]:null;this.multi={start:{index:m,offset:T},end:{index:N,offset:E},left:s?"":a?r[Ht][m][Dn][wi](0,T):null,right:s?"":a?r[Ht][N][Dn][wi](E,r[Dn][Pe]):null}}}class lo{#$;#M;#U=[];#R=[];constructor(t){this.#$=t}clearTimer(){this.clearTimer(this.#M)}add(t,e,i){null==i?this.#x(t,e):this.#M=setTimeout((i=>{this.#x(t,e)}),i)}#x(t,e){this.#U[pi]({[Se]:t[Se],[ii]:t[ii],[Yt]:[...this.#$[Ht]].map((t=>t[Dn]))[Re]("\n")}),e&&(this.#R=[])}undo(){const t=this.#U[(this.#U||[])[Pe]-2];if(null==t)return;let e=this.#U.pop();return this.#R[pi](e),t}redo(){const t=this.#R.pop();if(null!=t)return this.#U[pi](t),t}}class ro{editor;body;start;end;left;right;constructor(t,e){let i,n,s,o;this.editor=t,e.isMulti?(i=e.multi.start.index,n=e.multi.end.index,s=e.multi.left,o=e.multi.right):e.isSingle?(i=e.index,n=e.index,s=e.selection.left,o=e.selection.right):null!==e.index&&null!==e.offset&&(i=e.index,n=e.index,s=e.left,o=e.right),this.body=e.selection.body,this.start=d(i),this.end=d(n),this.left=s[Ni](/</g,"<")[Ni](/>/g,">")[Ni](/ /g," "),this.right=o[Ni](/</g,"<")[Ni](/>/g,">")[Ni](/ /g," ")}removeRows(){for(let t=this.end;t>this.start;t--)this.editor[Ht][t][Ti]()}}class ho{tag="";props={};children=[];data=null;constructor(t){if(t[Yn][Zi]()===Ai){let i=!1;for(const n of e[Ne][Ln](Ai)||[])if(null!=t[$i]&&n[$i]===t[$i]||null!=t[zi]&&n[zi]===t[zi]){i=!0;break}i||e[Ne][$t](t),this[Pi]=Ai}this[Pi]=t[Yn][Zi](),this[ci]=[...t.attributes].reduce(((t,e)=>(t[e.name]=e.value.trim(),t)),{}),this[Ht]=function(t){return s[_e](t[Gt]).filter((t=>t[St]===u[wt]||t[St]===u[Ct]&&t[zi]&&t[zi][Xi]()[Pe]>0))}(t)[ze]((t=>t.nodeType===Node[wt]?new ho(t):t[zi]||""))}getPatches(t){return this.#F(t,this)}#F(t,e,i=[]){if(null==t&&e)return[{[Ji]:Ns.create,[Se]:i,[hn]:e}];if(t&&!e)return[{[Ji]:Ns.remove,[Se]:i}];if(!t&&!e)return[];if(t.tag!==e.tag)return[{[Ji]:Ns[Ni],[Se]:i,[hn]:e}];const n=[];return n[pi](...this.#k(t,e,i)),n[pi](...this.#v(t,e,i)),n}#k(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],s=t[ci]||{},l=o[It](s)[Pe],r=e[ci]||{},h=o[It](r)[Pe];if(h>0)for(let t in r){const s=r[t];n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,value:s,[Se]:i})}if(l>0){if(h<1)for(let t in s)n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,[tn]:null,[Se]:i});for(let t in r)h>0&&!(t in r)&&n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,[tn]:null,[Se]:i})}return n}#v(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],o=s[Ue](t[Ht])?t[Ht]:[],l=s[Ue](e[Ht])?e[Ht]:[],h=r.max(o[Pe],l[Pe]);for(let t=0;t<h;t++){const s=o[t],r=l[t],h=i.concat(t);if("string"==typeof s&&"string"==typeof r){if(s===r)continue;n[pi]({[Ji]:Ns.text,[hn]:e,[tn]:r,[Se]:h})}else null==s?n[pi]({[Ji]:Ns.append,[hn]:r,[Se]:h}):null==r?n[pi]({[Ji]:Ns.remove,index:h}):n[pi](...this.#F(s,r,h))}return n}}t.PDMarkdownViewer=t.MDViewer=class{body;vbody;#P;#L="";#j=300;#G=0;#H;#B;#$;constructor(t={}){if((ce in t||ui in t)&&(this.#L=String(t[ce]||t[ui]||"")[Xi]()),Ri in t){t[Ri]}const s=t[Ri]||{},o=i(s[Ye]||Ut)[Xi]()[Zi](),l=n(null==s.fill?1:s.fill)?1:0,r=i(s[ge]||"")[Xi]()||"'Noto Sans TC', sans-serif",h=t.sync||{};this.#j=d(null==h[se]?300:h[se])||300,this.#G=n(h[Oi]||0)?1:0,this[re]=h[re]instanceof PDMarkdownEditor?h[re]:null,e[Ne][$t](xs(Ri,`.${ri}{font-family: ${r}}`));const u=document[un](t[Ie]);typeof t[Ie]===Mi&&null!=u?(this[Ft]=u,u.classList.add(ri)):this[Ft]=xs(Ii+"."+ri),this[Ft][ne][Ye]=y&&o===Ut||o===ie?ie:"",this[Ft][ne].fill=l;const c=t.hashtag||{};if(this.#H=i(c.path||"")[Xi](),this.#B=i(c[Li]||"")[Xi](),null!=t.fillMode){let e=n(t.fillMode)?1:0;this[Ft][ne].fill=e}if(null!=t[se]&&(this.#j=d(t[se])||300),null!=t[Hn]&&(this.#G=n(t[Hn])?1:0),null!=t[ge]){let n=i(t[ge])[Xi]()||"'Noto Sans TC', sans-serif";e[Ne][$t](xs(Ri,`.${ri}{font-family: ${n}}`))}null!=t[qn]&&(this.#H=i(t[qn]||"")[Xi]()),null!=t[Xn]&&(this.#B=i(t[Xn]||"")[Xi]()),this.vbody=new ho(this[Ft]),this.init()}get editor(){return this.#$}set editor(t){this.#$&&(this.#$[Ft][Rn]=null),null!=t&&(this.#$=t,this.#$.viewer=this,this.#G&&null!=this.#$&&(this.#$[Ft][Rn]=t=>{this[Ft][Bn]+=t.deltaY}))}#z(){if(null==this.#$)return"";const t=[...this.#$[Ft][Ln](le)];let e="";for(let n of t){var i=n[Dn][Ni](/[\u00A0\u0020]/g," ");i[Xi]()[Pe]<1?e+="\n":e+=i+"\n"}return e[Xi]()}clear(){let t=this[Ft].cloneNode(!0);t[Sn]="";let e=new ho(t);this[Ft][Sn]="",this.vbody=e}init(e=""){let i=this.#L,n=this[Ft][Bn];t[zt](this.#P),this.#P=t[Zn]((()=>{if(t[zt](this.#P),i&&this[Ft][Sn]&&i===this[Ft][Sn])return;let o=e||this.#z()||i;o=so(`\n${o}\n`,this.#H,this.#B);let l=this[Ft].cloneNode(!0);l[Sn]=o;let r=new ho(l);const h=r.getPatches(this.vbody);s[Ue](h)&&this.#K(this[Ft],h),this.vbody=r;for(let e of[...this[Ft][Ln](vt+"."+Jt)])e[Un]=async e=>{t[zt](Rs);const i=e[Li][xn],n=i[gn],s=i[Ht][0][Dn];try{await navigator.clipboard.writeText(s),n[Dt](Fi),Rs=t[Zn]((t=>{n[Ti](Fi)}),1e3)}catch(t){console[ae](t),n[Dt](ae)}};let u=setInterval((()=>{null!=PR&&(clearInterval(u),this[Ft][Bn]=n,PR.prettyPrint())}),50)}),this.#j)}changeMode(t=je){this[Ft][ne][Ye]=t}#K(t,e){if(null!=t&&s[Ue](e)){this.#W(t,e);for(const i of e){const{index:e}=i,n=l.parse(l.stringify(e||[]));let s;i.type===Ns.append&&(s=n?.pop());const o=n?this.#V(t,n):t;o&&(i.type===Ns.create&&hn in i?this.#Z(o,i):i.type===Ns.replace&&hn in i&&null!=o[Fn]?this.#Y(o,i):i.type===Ns.append&&hn in i&&null!=s?this.#q(o,i,s):i.type===Ns.prop&&"key"in i&&tn in i&&o instanceof Element?this.#X(o,i.key,i.value||"",i[hn]):i.type===Ns.text&&tn in i&&o.nodeType===u[Ct]&&(o[zi]=i.value||""))}}}#W(t,e){const i=e.filter((t=>t.type===Ns.remove)).sort(((t,e)=>{const i=(e.index.length||0)-(t.index.length||0);if(0!==i)return i;for(let i=0;i<(t.index.length||0);i++)if((t.index[i]||0)!==(e.index[i]||0))return(e.index[i]||0)-(t.index[i]||0);return 0}));for(const e of i){const i=this.#V(t,e.index);null!=i&&null!=i[Fn]&&i[Fn].removeChild(i)}}#Z(t,i){if(i.type!==Ns.create||!(hn in i))return;const n="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);null!=t[xn]&&t[xn][$t](n)}#Y(t,i){if(i.type!==Ns.replace||!(hn in i)||null==t[Fn])return;const n="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);if(t[Fn].replaceChild(n,t),!(n instanceof Text||"string"==typeof i[hn])){for(const t in i[hn][ci])this.#X(n,t,i[hn][ci][t]||"",i[hn]);this.#Q(i[hn],n)}}#q(t,i,n){if(i.type!==Ns.append||!(hn in i)||null==n)return;const s="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);if(n+1>t[Ht][Pe]?t[$t](s):t.insertBefore(s,t[Ht][n+1]),"string"!=typeof i[hn]){for(const[e,s]of o.entries(i[hn][ci]))this.#X(t[Ht][n],e,s||"",i[hn]);this.#Q(i[hn],t[Ht][n])}}#X(t,e,i,n){null==i?t[_removeAttribute](e):null!=t&&t[zn](e,i)}#Q(t,e){if("string"!=typeof t)for(const i in t.children.filter((t=>"string"!=typeof t))){if(null==e)continue;const n=t.children[+i],s=e.children[+i];if("string"!=typeof n){for(const[t,e]of o.entries(n[ci]))this.#X(s,t,e||"",n);this.#Q(n,s)}}}#V(t,e){let i=t,n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[Ct]&&""!==t[zi]?.trim()))||[];for(const t of e)i=n[t],null!=i&&(n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[Ct]&&""!==t[zi]?.trim()))||[]);return i}#J(t){const i=e.createElement(t.tag);if(t[ci])for(const[e,n]of o.entries(t[ci]))e[Ot](":")||e[Ot]("@")||void 0!==n&&i[zn](e,n);for(const n of t[Ht])"string"==typeof n?i[$t](e[mn](n)):i[$t](this.#J(n));return i}}}("undefined"==typeof window?window={}:window);export const editor = window.MDEditor; export const MDEditor = window.MDEditor; export const viewer = window.MDViewer; export const MDViewer = window.MDViewer; | ||
!function(){const t=window,e=document,i=String,n=Boolean,s=Array,o=Object,l=JSON,r=Math,h=URL,u=Node,a=Date,c=Blob,d=parseInt,f="video/mp4",p="video/quicktime",g=["javascript","js","ts","html","css","xml","json","sql","java","python","ruby","php","cpp","csharp","swift","typescript","kotlin","go","rust","perl","bash"],_=t.matchMedia&&t.matchMedia("(prefers-color-scheme: dark)").matches,y="abcdefghijklmnopqrstuvwxyz0123456789";let m=new Map;const T=/\.([\w_-]+)?/gi,N=/\#([\w_-]+)?/i,E=/^\w+(?=[\#\.]*)/i,A=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(mailto\:)?([\u0020\u00A0\u0009]*)(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)([\u0020\u00A0\u0009]*)[\"\']{0,1}/,S=/(\s{1})\\?[\##]{1}([\u4e00-\u9fff\u3040-\u30ff\uac00-\ud7a3a-zA-Z0-9_]+)/,O=/[& \<\>\"\']/g,I=/\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)/,w=/(\n)(\>\s*\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]\n)?(\>[^\n]*(\n)?)+/,C=/\`([^\n\`]*)\`/,v=/^\n|\n$/g,D=/\`{3}(\w*)([\s\S]*?)\s*\`{3}/,M=/((\n([\u0020\u00A0]{4,}|[\u0009]))[^\n]+)+/,$=/\*([^\n\*]*)\*/,b=/\_([^\n\_]*)\_/,R=/^\s|\s$/g,U=/(\n[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*>[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n]+)/,F=/(\n)([^\n]+)\n\={3,}([\u0020\u00A0\u0009]*\n)/,k=/(\n)([^\n]+)\n\-{3,}([\u0020\u00A0\u0009]*\n)/,x=/([\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n\|]*)([\u0020\u00A0\u0009]*)/,P=/(\n[\u0020\u00A0\u0009]*)(\*{3,}|\-{3,})([\u0020\u00A0\u0009]*\n)/,L=/\!\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)(\(([0-9]+\%?)?[\u0020\u00A0\u0009\*x]+([0-9]+\%?)?([\u0020\u00A0\u0009]+(left|right))?\))?/,j=/^['"].*['"]$/,G=/\n(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,H=/(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,B=/^(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]*[^\n]+)/,z=/\={2}([^\n\=]*)\={2}/,K=/\~{2}([^\n\~]*)\~{2}/,V=/\*{2}([^\n\*]*)\*{2}/,W=/\_{2}([^\n\_]*)\_{2}/,Z=/\~([^\n\~]*)\~/,Y=/\^([^\n\^]*)\^/,q=/(\n(?![\{\<])[^\n]+)+/,J=/^(\n?(?![\{\<])[^\n]+)+/,X=/\.mov$/,Q=/\.mp4$/,tt=/[A-Za-z\%]/,et=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*))([\u0020\u00A0\u0009]*)[\"\']{0,1}/,it=/(\<[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*br[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*\>|\n)/,nt=/\n/,st=/\\\!/g,ot=/\\\`/g,lt=/\\\#/g,rt=/\\\*/g,ht=/\\\_/g,ut=/\\\~/g,at=/\\\^/g,ct=/\\\=/g,dt=/\\\</g,ft=/\\\>/g,pt=/\\\[/g,gt=/\\\]/g,_t=/\\\(/g,yt=/\\\)/g,mt=/\$/g,Tt=/(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?/,Nt="mailto:",Et="\n",At="_blank",St="startsWith",Ot="keys",It="TEXT_NODE",wt="ELEMENT_NODE",Ct="nodeType",vt="add",Dt="alt",Mt="appendChild",$t="as",bt="auto",Rt="baseOffset",Ut="blockquote",Ft="body",kt="br",xt="button",Pt="charAt",Lt="checked",jt="checkbox",Gt="childNodes",Ht="children",Bt="class",zt="clearTimeout",Kt="clipboardData",Vt="code",Wt="Color",Zt="color",Yt="content",qt="contentEditable",Jt="controls",Xt="copy",Qt="create",te="ctrlKey",ee="dark",ie="dataset",ne="delay",se="display",oe="div",le="editor",re="em",he="empty",ue="emptyContent",ae="error",ce="float",de="floor",fe="focus",pe="fontFamily",ge="forEach",_e="from",ye="get",me="has",Te="head",Ne="height",Ee="hide",Ae="href",Se="id",Oe="iframe",Ie="img",we="index",Ce="init",ve="inner",De="input",Me="insert",$e="isArray",be="join",Re="label",Ue="language",Fe="lastChild",ke="lazy",xe="length",Pe="li",Le="light",je="link",Ge="list",He="loading",Be="map",ze="mark",Ke="match",Ve="metaKey",We="min",Ze="mode",Ye="Name",qe="name",Je="node",Xe="none",Qe="number",ti="object",ei="offset",ii="ol",ni="outerHTML",si="parent",oi="pd-md-editor",li="pd-md-viewer",ri="placeholder",hi="pre",ui="props",ai="preload",ci="prettyprint",di="prevent",fi="push",pi="px",gi="querySelector",_i="random",yi="rel",mi="remove",Ti="replace",Ni="click",Ei="script",Ai="scroll",Si="section",Oi="set",Ii="slice",wi="source",Ci="span",vi="split",Di="src",Mi="string",$i="strong",bi="style",Ri="sub",Ui="success",Fi="sup",ki="table",xi="tag",Pi="target",Li="tbody",ji="td",Gi="temp",Hi="test",Bi="textContent",zi="th",Ki="thead",Vi="title",Wi="toLowerCase",Zi="toUpperCase",Yi="tr",qi="trim",Ji="type",Xi="ul",Qi="value",tn="video",en="viewer",nn="width",sn="console",on="apply",ln="void",rn="vdom",hn="getElementById",un="crossOrigin",an="preconnect",cn=vt+"EventListener",dn="background"+Wt,fn=Bt+Ye,pn=Bt+"List",gn=Qt+"DocumentFragment",_n=Qt+"Element",yn=Qt+"TextNode",mn=_e+"CharCode",Tn=fe+"Background"+Wt,Nn=fe+"Offset",En=fe+"Text"+Wt,An=ye+"Data",Sn=ye+"Selection",On=me+"OwnProperty",In=we+"Of",wn=ve+"HTML",Cn=ve+"Text",vn=Me+"Before",Dn=Je+Ye,Mn=Je+"Value",$n="onclick",bn="onwheel",Rn=si+"Element",Un=si+"Node",Fn=ri+Wt,kn=di+"Default",xn=di+"Refresh",Pn=gi+"All",Ln=mi+"AllRanges",jn=Ai+"Height",Gn=Ai+"Sync",Hn=Ai+"Top",Bn=Oi+"Attribute",zn=Oi+"Data",Kn=Oi+"End",Vn=Oi+"Start",Wn=Oi+"Timeout",Zn=xi+Ye,Yn=xi+"Path",qn=xi+"Target";let Jn="";const Xn="@excl@",Qn="@grave@",ts="@num@",es="@ast@",is="@lowbar@",ns="@tilde@",ss="@Hat@",os="@equal@",ls="@lt@",rs="@gt@",hs="@lsqb@",us="@rsqb@",as="@lpar@",cs="@rpar@",ds="@dollar@",fs="<",ps=">",gs="&",_s=" ",ys=""",ms="'",Ts={create:"CREATE",append:"APPEND",replace:"REPLACE",text:"TEXT",prop:"PROP",remove:"REMOVE"};Array[_e]({[xe]:26},((t,e)=>i[mn](97+e)))[ge](((e,n)=>{let s=n<10,o=n>=10&&n<20,l=n>=20,r=i(n),h=r[Pt](r[xe]-1),u=i=>{Jn+=i?e[Zi]():e,t[(i?"$":"_")+(l?"_":"")+h+(o?"_":"")]=i?e[Zi]():e};u(0),u(1),s&&(Jn+=n,t["_"+e]=n)}));t._a,t._b,t._c,t._d,t._e,t._f,t._g,t._h,t._i,t._j;const Ns=t._0,Es=t._1,As=(t._2,t._3,t._4,t._5,t._6),Ss=t._7,Os=t._8,Is=(t._9,t._0_,t._1_,t._2_,t._3_,t._4_,t._5_,t._6_,t._7_,t._8_),ws=(t._9_,t.__0),Cs=(t.__1,t.__2,t.__3,t.__4,t.__5,t.$0,t.$1,t.$2,t.$3,t.$4,t.$5,t.$6,t.$7,t.$8,t.$9,t.$0_,t.$1_,t.$2_,t.$3_,t.$4_,t.$5_,t.$6_,t.$7_,t.$8_,t.$9_,t.$_0,t.$_1,t.$_2,t.$_3,t.$_4,t.$_5,"https://fonts.googleapis.com"),vs=Cs+"/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,1,0&display=swap",Ds="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js",Ms="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@1.9.0/dist/NanoMD.css",$s="NanoMD\nGitHub: https://github.com/pardnchiu/NanoMD\nCreator: Pardn Chiu\nLicense: MIT";let bs;for(let t of[Rs(je,{[yi]:an,[Ae]:"https://fonts.gstatic.com",[un]:""}),Rs(je,{[yi]:an,[Ae]:Cs,[un]:""}),Rs(je,{[yi]:ai,[Ae]:vs,[$t]:bi,[un]:"anonymous"}),Rs(je,{[yi]:"stylesheet",[Ae]:vs}),Rs(je,{[yi]:"preconnect",[Ae]:"https://cdn.jsdelivr.net"}),Rs(je,{[yi]:ai,[Ae]:Ds,[$t]:Ei}),Rs(Ei,{[Di]:Ds}),Rs(je,{[yi]:ai,[Ae]:Ms,[$t]:bi}),Rs(je,{[yi]:"stylesheet",[Ae]:Ms})])e[Te][Mt](t);function Rs(t="",i,n){const s=((t[Ke](E)||[])[0]||"")[qi](),o=((t[Ke](N)||[])[1]||"")[qi](),l=(T[Hi](t)?t[Ke](T):[])[Be]((t=>t[Ti](/^\./,"")));if(s[xe]<1)return;let r,h,u,a=!1;if(t===Gi?(a=!0,r=e[gn]()):r=e[_n](s),83!=$s[xe])return r;o[xe]&&(r.id=o);for(let t of l)r[pn][vt](t);if(null==i&&null!=n&&([i,n]=[n,null]),null!=i&&null!=n)[h,u]=[i,n];else if(null==n)typeof i===Mi||typeof i===Qe||Array[$e](i)?u=i:h=i;else if(null==i)return r;if(typeof h===ti&&null!=h)for(const t in h){if(!h[On](t))continue;const e=h[t];-1!=[Qi,Cn,wn,Bi,qt][In](t)?r[t]=e:-1!=[Zt,dn,nn,Ne,se,ce][In](t)?r[bi][t]=e:null!=e&&r[Bn](t,e)}if(null!=u){const t=typeof u===Mi,i=typeof u===Qe,n=Array[$e](u);if(t||i){const t=u;s===Ie||s===wi?r[Di]=t:a?r[Mt](e[yn](u)):r[wn]=t}else if(n)for(let t of u){const i=t instanceof Element;typeof t===Mi||typeof t===Qe?a?r[Mt](e[yn](t)):r[wn]+=t:i&&r[Mt](t)}}return r}function Us(t=""){return t[Ti](O,(t=>({"&":gs," ":_s,"<":fs,">":ps,'"':ys,"'":ms}[t])))}function Fs(t,e=""){return new RegExp(t,e)}function ks(t){if(t)return t[fn]===oi||t[Dn][Wi]()===oe&&t[Un][fn]===oi?t:ks(t[Un])}function xs(t){const e=Rs(oe);return e[Mt](t),e[wn]}function Ps(t=""){if((t=t[qi]())[xe]<1)return"";const e=t[Ke](Tt)||[];return e[xe]>2&&11===e[1][xe]?e[1]:""}function Ls(t=""){if((t=t[qi]())[xe]<1)return"";const e=t.match(/(?:https?:\/\/)?(?:www\.)?vimeo\.com\/(?:channels\/[\w]+\/|groups\/[\w]+\/videos\/|album\/\d+\/video\/|video\/|)(\d+)/);return e?e[1]:null}function js(t,e="",i="",n="",s="",o=""){const l=Gs(i),r=n instanceof HTMLElement?n:Rs(i,n);return m[Oi](l,r[ni]),e[Ti](t,s+l+o)}function Gs(t=""){let e="{{"+(t[qi]()||bt)+"-";for(let t=0;t<64;t++)e+=y[Pt](r[de](36*r[_i]()));return e+="}}",m[me](e)?Gs(t):e}function Hs(t=""){let i;for(let e of t[Ke](Fs(w,As))||[]){const s=e[Ke](w),o=s[1]||"",l=s[3]||"",r=s[5]||"";i=Rs(Ut+(l[xe]?"."+l:"")),n(e,l),t=js(e,t,Ut,i,o,r)}function n(t,e=""){let n=qs(t[qi]()[Ti](/^\>[\u00A0\u0020\u0009]?/,"")[Ti](/\n\>[\u00A0\u0020\u0009]?/g,"\n"))[vi](nt);for(let t in n){const o=n[t];i[Mt](s(o,d(t),e))}}function s(t,n=0,o=""){let l=Rs(Gi);const r=/^[\u00A0\u0020\u0009]*\>[\u00A0\u0020\u0009]?/,h=t[Ti](r,"");if(/\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/[Hi](t)&&0===n)l[Mt](Rs(Ci+".hint",[-1!=["NOTE","TIP","IMPORTANT","WARNING","CAUTION"][In](o)?Rs("span.material-symbols-outlined",{NOTE:"info",TIP:"lightbulb",IMPORTANT:"sms",WARNING:"warning",CAUTION:"error"}[o]||""):null,o])),l[Mt](Rs(kt));else if(r[Hi](t)){let t=Rs(Ut);t[Mt](s(h)),l[Mt](t)}else/^[\u00A0\u0020\u0009]*\{\{/[Hi](t)?l[Mt](i[Mt](e[yn](t))):l[Mt](Rs(Ci,t));return l}return t}function Bs(t=""){let e=[[Vt,C]];for(let i of e){const e=i[0],n=i[1];for(let i of t[Ke](Fs(n,As))||[]){const s=i[Ke](n);if(R[Hi](s[1]||""))continue;let o=(s[1]||"")[qi]();o[xe]<1||(e!=Vt?t=t[Ti](i,Rs(e,o)[ni]):(o=Us(o),t=js(i,t,e,o)))}}return t}function zs(t){let e=0,i=Rs(ii);for(let n in t){const s=t[n];0===d(n)&&(e=r.floor((s[Ke](/^\s*/)||[""])[0][xe]/4));const o=Fs(`^\\s{0,${4*e}}`);i[Mt](Rs(Pe,Us(s[Ti](o,""))))}return i}function Ks(t=""){let e=[[$i,V],[$i,W],[Is,K],[ze,z],[re,$],[re,b],[Fi,Y],[Ri,Z]];for(let t of e){i(t[0],t[1])}function i(e,i){for(let n of t[Ke](Fs(i,As))||[]){const s=n[Ke](i);if(R[Hi](s[1]||""))continue;let o=(s[1]||"")[qi]();o[xe]<1||(e!=Vt?t=t[Ti](n,Rs(e,o)[ni]):(o=Us(o),t=js(n,t,e,o)))}}return t}function Vs(t="",e="",n=At){if(i(e||"")[qi]()[xe]<1)return t;for(let i of t[Ke](Fs(S,As))||[]){if(i[Ke](/^\\/))continue;const s=i[Ke](S);if(s[xe]<1)continue;const o=s[1],l=(s[2]||"")[qi](),r=Gs(Ns);if(l[xe]<1)continue;const h=Rs(Gi,[Rs(Ns+"."+xi,{[Ae]:e+l,[Pi]:n===At?At:"_self"},l)]);m[Oi](r,xs(h)),t=t[Ti](i,o+r)}return t}function Ws(t=""){return(()=>{for(let e of t[Ke](Fs(U,As))||[]){const i=e[Ke](U);if(i[xe]<1)continue;const n=i[1]||"",s=(i[3]||"")[qi]()[xe],o=(i[4]||"")[qi]();0!=r[We](s,o[xe])&&(t=js(e,t,Ss+s,o,n))}})(),(()=>{for(let e of t[Ke](Fs(x,As))||[]){const i=e[Ke](x);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi]()[xe],o=(i[3]||"")[qi](),l=i[4]||"";0!=r[We](s,o[xe])&&(t=js(e,t,Ss+s,o,n,l))}})(),(()=>{for(let e of t[Ke](Fs(F,As))||[]){const i=e[Ke](F);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi](),o=i[3]||"";s[xe]<1||(t=js(e,t,Ss+1,s,n,o))}})(),(()=>{for(let e of t[Ke](Fs(k,As))||[]){const i=e[Ke](k);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi](),o=i[3]||"";s[xe]<1||(t=js(e,t,Ss+2,s,n,o))}})(),t}function Zs(t=""){for(let e of t[Ke](Fs(P,As))||[]){const i=e[Ke](P);if(i[xe]<1)continue;const n=i[1]||"",s=i[3]||"",o=Gs("HR");m[Oi](o,"<hr>"),t=t[Ti](e,n+o+s)}return t}function Ys(t=""){const e="this.parentElement.nextElementSibling.style.display='block';this.parentElement.style.display='none'",i="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEyMCAxMjAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yNTkyXzMwNDkpIj4KPHBhdGggZD0iTTEyMCA2MEMxMjAgMjYuODYyOSA5My4xMzcxIDAgNjAgMEMyNi44NjI5IDAgMCAyNi44NjI5IDAgNjBDMCA5My4xMzcxIDI2Ljg2MjkgMTIwIDYwIDEyMEM5My4xMzcxIDEyMCAxMjAgOTMuMTM3MSAxMjAgNjBaIiBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIwLjUiLz4KPHBhdGggZD0iTTg0LjM2MzMgNTYuNTgwM0M4Ni45MzAyIDU4LjEzNzYgODYuOTMwMiA2MS44NjI2IDg0LjM2MzMgNjMuNDE5OUw1MS44MjQ4IDgzLjE2MTJDNDkuMTU5MSA4NC43Nzg2IDQ1Ljc1IDgyLjg1OTQgNDUuNzUgNzkuNzQxNFY0MC4yNTg4QzQ1Ljc1IDM3LjE0MDggNDkuMTU5MSAzNS4yMjE2IDUxLjgyNDggMzYuODM4OUw4NC4zNjMzIDU2LjU4MDNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI1OTJfMzA0OSI+CjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPg==";function n(t,n,s,o){return xs(Rs(Gi,[Rs(Ns,{[Vi]:o,[Ae]:n,[Pi]:At},s||n),Rs("section.more",[Rs("img.cover","https://i.ytimg.com/vi/"+t+"/mqdefault.jpg"),Rs("img.icon",{[$n]:e},i)]),Rs(Oe,{[He]:ke,[nn]:"640px",[Di]:"https://www.youtube.com/embed/"+t,frameborder:0,allow:"accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",[se]:Xe})]))}function s(t,n,s,o){const l=function(t){const e=`https://vimeo.com/api/v2/video/${t}.json`;let i=null;const n=new XMLHttpRequest;n.open("GET",e,!1);try{n.send(),200===n.status?i=JSON.parse(n.responseText)[0].thumbnail_large:console.error("HTTP 錯誤:",n.status)}catch(t){console.error("無法獲取縮圖:",t)}return i}(t);return xs(Rs(Gi,[Rs(Ns,{[Vi]:o,[Ae]:n,[Pi]:At},s||n),Rs("section.more",[Rs("img.cover",l),Rs("img.icon",{[$n]:e},i)]),Rs(Oe,{[He]:ke,[nn]:"640px",[Di]:"https://player.vimeo.com/video/"+t,frameborder:0,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",[se]:Xe})]))}return(()=>{for(let e of t[Ke](Fs(I,As))||[]){const i=e[Ke](I);if(i[xe]<1)continue;const o=(i[1]||"")[qi](),l=(i[2]||"")[qi](),h=(i[4]||"")[qi](),u=(Ps(l)||"")[qi](),a=(Ls(l)||"")[qi]();if(0!=r[We](o[xe],l[xe]))if(u[xe])t=js(e,t,oe,n(u,l,o,h));else if(a[xe])t=js(e,t,oe,s(a,l,o,h));else{const i=Rs(Ns,{[Vi]:h,[Ae]:l,[Pi]:At},o);t=js(e,t,Ns,i)}}})(),(()=>{for(let e of t[Ke](Fs(et,As))||[]){if(e[Ke](j))continue;const i=e[Ke](et);if(i[xe]<1)continue;const o=i[1]||"",l=(i[2]||"")[qi](),r=i[5]||"",h=(Ps(l)||"")[qi](),u=(Ls(l)||"")[qi]();if(!(l[xe]<1))if(h[xe])t=js(e,t,oe,n(h,l),o,r);else if(u[xe])t=js(e,t,oe,s(u,l));else{const i=Rs(Ns,{[Ae]:l,[Pi]:At},l);t=js(e,t,Ns,i,o,r)}}})(),(()=>{for(let e of t[Ke](Fs(A,As))||[]){if(e[Ke](j))continue;const i=e[Ke](A);if(i[xe]<1)continue;const n=(i[1]||"")+(i[2]||"")+(i[3]||""),s=(i[4]||"")[qi](),o=i[8]||"";if(s[xe]<1)continue;const l=Rs(Ns,{[Ae]:Nt+s,[Pi]:At},s);t=js(e,t,Ns,l,n,o)}})(),t}function qs(t=""){for(let i of t[Ke](Fs(G,As))||[])e(i);function e(e){let i;e[qi]()[Ti](Fs(it,As),Et)[vi](it)[ge](((t,e)=>{const n=t[Ke](H)||[],s=n[xe]<1?null:/\d+\./[Hi]((n[2]||"")[qi]())?ii:Xi,o=(t[Ke](/\s{4}/g)||[])[xe];let l=n[xe]<1?t[Ti](/^\s*([\-\*\+]|\d+\.)?\s*/g,""):(n[3]||"")[qi]();if(0===d(e)&&null==s)return;0===d(e)&&(i=Rs(s));let r=i;function h(t,e){if(/^\[\s*(\x)?\s*\]/[Hi](e)){const i=e[qi]()[Ke](/^\[\s*(\x)?\s*\]/);e=e[Ti](/^\[\s*(\x)?\s*\]\s*/,"");const n=null!=i[1];t[Mt](Rs(Pe,[Rs(Re,[Rs(De,{[Ji]:jt,[Lt]:n?"":null,[$n]:"return false;"}),Rs(Ci,e)])]))}else t[Mt](Rs(Pe,e))}if(/^\s{0,3}([\-\*\+]|\d+\.)/[Hi](t))h(r,l);else if(/^\s{4,}([\-\*\+]|\d+\.)/[Hi](t)){r=i[Fe];for(let t=0;t<o&&(null!=r&&null!=r[Zn]);t++)if(t==o-1&&r[Zn][Wi]()==Pe)if(r[Fe]instanceof HTMLElement&&(r[Fe][Zn][Wi]()==ii||r[Fe][Zn][Wi]()==Xi))h(r[Fe],l);else if(/^\[\s*(\x)?\s*\]/[Hi](l)){const t=l[qi]()[Ke](/^\[\s*(\x)?\s*\]/);l=l[Ti](/^\[\s*(\x)?\s*\]\s*/,"");const e=null!=t[1];r[Mt](Rs(s,[Rs(Pe,[Rs(Re,[Rs(De,{[Ji]:jt,[Lt]:e?"":null,[$n]:"return false;"}),Rs(Ci,l)])])]))}else r[Mt](Rs(s,[Rs(Pe,l)]));else r=r[Fe][Fe]}else{if(null==i)return;for(r=i[Fe];null!=r[Fe];)r=r[Fe];if(r instanceof HTMLElement);else if(/^\{\{(h\d|img|pre)/[Hi](r[Mn]||""));else{for(;r[Rn][Zn][Wi]()!=Pe;)r=r[Rn];r[Rn][Mt](Rs(kt))}r[Rn][wn]+=l}})),null!=i&&(t=js(e,t,Ge,i))}return t}function Js(t=""){for(let e of t[Ke](Fs(L,As))||[]){const i=e[Ke](L);if(i[xe]<1)continue;const n=(i[1]||"")[qi](),s=(i[2]||"")[qi](),o=(i[4]||"")[qi]();let l=(i[6]||"")[qi](),r=(i[7]||"")[qi](),h=(i[9]||"")[qi]();if(s[xe]<1)continue;l[xe]&&!tt[Hi](l)&&(l+=pi),r[xe]&&!tt[Hi](r)&&(r+=pi);const u=X[Hi](s),a=Q[Hi](s);let c;c=u?Rs(tn,{[Jt]:"",[Vi]:o,[nn]:l||null,[Ne]:r||null},[Rs(wi,{[Ji]:p},s)]):a?Rs(tn,{[Jt]:"",[Vi]:o,[nn]:l||null,[Ne]:r||null},[Rs(wi,{[Ji]:f},s)]):Rs(Ie,{[Dt]:n,[Vi]:o,[nn]:l||null,[Ne]:r||null,[ce]:h[xe]?h:null},s),null!=c&&(t=js(e,t,Ie,c))}return t}function Xs(t=""){for(let e of t[Ke](Fs(D,As))||[]){const i=e[Ke](D);if(i[xe]<1)continue;const n=null==i[2][Ke](v),s=n?"":(i[1]||"")[qi]()[Wi](),o=i[2]||"",l=-1!=g[In](s),r=o[Ti](v,"")[vi](nt);let h;h=n?Rs(Vt+"."+ci,Us(o)):Rs(hi+"."+ci,{[qe]:s},[Rs(Vt+(l?"."+Ue+"-"+s:""),{[qe]:s},[zs(r)]),Rs(xt+"."+Xt)]),t=js(e,t,n?Vt:hi,h)}return t}function Qs(t=""){for(let e of t[Ke](Fs(M,As))||[]){const i=e[Ke](M);if(i[xe]<1)continue;const n=i[2]||"",s=e[Ti](v,"")[vi](nt),o=Rs(hi+"."+ci,[Rs(Vt,[zs(s)]),Rs(xt+"."+Xt)]);t=js(e,t,hi,o,n)}return t}function to(t=""){let e;function i(t){const e=t[Ke](/^([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*)+/)||[],i=t[Ke](/[\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*$/)||[];return[e[0]||"",i[0]||""]}function n(t){const i=t[qi]()[vi](nt);e=Rs(Gi,[Rs(ki,[Rs(Ki),Rs(Li)])]);let n=!0,o=[],l=0;for(let t in i){const r=i[t],h=r[Ke](/((\s*)\|?((?:.*?\|)*.*)\|?)+/)||[];if(h[xe]<1)continue;const u=(h[3]||"")[qi]()[Ti](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*$/,""),a=/^[\u0020\u00A0\u0009]*\|?([\u0020\u00A0\u0009]*[\-\:]+[\u0020\u00A0\u0009]*\|?)+[\u0020\u00A0\u0009]*$/[Hi](r),c=u[vi](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*/);if(0===d(t)&&(l=c[xe]),a){for(let t of r[Ti](/^([\u0020\u00A0\u0009]*\|)|(\|[\u0020\u00A0\u0009]*)$/g,"")[vi](/\|/))/^\-+\:$/[Hi](t[qi]())?o.push("right"):/^\:\-+\:$/[Hi](t[qi]())?o.push("center"):o.push("left");const t=[...e.firstChild.firstChild.childNodes[0].childNodes];for(let e in t)t[e].setAttribute("align",o[e]);n=!1}else s(n,c,l,o)}}function s(t=!0,i=[],n=0,s=[]){const o=t?e.firstChild.firstChild:e.firstChild[Fe],l=Rs(Yi);for(let e=0;e<n;e++)l[Mt](Rs(t?zi:ji,{align:s[e]},i[e]||""));o[Mt](l)}return(()=>{const s=/([^\n]*)(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)[\u0020\u00A0\u0009]*\|([\u0020\u00A0\u0009\-\:]*\|)+\n(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)*/;for(let o of t[Ke](Fs(s,As))||[])B[Hi](o)||(n(o),t=js(o,t,ki,xs(e),...i(o)))})(),(()=>{const s=/(([^\n]+\|)*[^\n]+\n)(([\u0020\u00A0\u0009\-\:]+\|)*[\u0020\u00A0\u0009\-\:]+\n)(?:([^\n]+\|)*[^\n]+\n)*/;for(let o of t[Ke](Fs(s,As))||[])n(o),t=js(o,t,ki,xs(e),...i(o))})(),t}function eo(t=""){return t=t[Ti](/\n[\u0020\u00A0\u0009]*/g,"\n"),(()=>{for(let e of t[Ke](Fs(J,As))||[]){const i=e[Ke](J);if(i[xe]<1)continue;const n=i[2]||"",s=(i[0]||"")[qi]();if(s[xe]){const i=Rs(Gi,[Rs("p",s)]),o=Gs("p");m[Oi](o,xs(i)),t=t[Ti](e,n+o)}}})(),(()=>{for(let e of t[Ke](Fs(q,As))||[]){const i=e[Ke](q);if(i[xe]<1)continue;const n=i[2]||"",s=(i[0]||"")[qi]();if(s[xe]){const i=Rs(Gi,[Rs("p",s)]),o=Gs("p");m[Oi](o,xs(i)),t=t[Ti](e,n+o)}}})(),t}function io(t=""){t=t[Ti](/^\n*|\n*$/g,"");const e=/(<br>)/g;return e[Hi](t)?t[Ti](e,"\n"):t}function no(t="",e="",i=At){t=t[Ti](st,Xn)[Ti](ot,Qn)[Ti](lt,ts)[Ti](rt,es)[Ti](ht,is)[Ti](ut,ns)[Ti](at,ss)[Ti](ct,os)[Ti](dt,ls)[Ti](ft,rs)[Ti](pt,hs)[Ti](gt,us)[Ti](_t,as)[Ti](yt,cs)[Ti](mt,ds)[Ti](/[\u00A0\u0020]/g," ");let n=[Xs,Bs,Js,Ys,Ks,Ws,Zs,to,Hs,qs,Qs,Vs,io,eo];for(let s of n)t=s(t,e,i);for(;/\{{2}\w*\-*\w{64}\}{2}/[Hi](t);)for(let e of t[Ke](/\{{2}\w*\-*\w{64}\}{2}/g)||[]){let i=Fs(e);t=t[Ti](i,m[ye](e))}const s=["h1","h2","h3","h4","h5","h6",ki,ii,Xi,hi,Ut,"details","hr",Re];for(let e of s){const i=Fs(`[ \t]*\\n[ \t]*<${e}`,As),n=Fs(`${e}>[ \t]*\\n[ \t]*`,As);t=t[Ti](i,`<${e}`)[Ti](n,`${e}>`)}return t=t[Ti](Fs(Xn,As),"!")[Ti](Fs(Qn,As),"&grave")[Ti](Fs(ts,As),"#")[Ti](Fs(es,As),"*")[Ti](Fs(is,As),"_")[Ti](Fs(ns,As),"˜")[Ti](Fs(ss,As),"^")[Ti](Fs(os,As),"&equal;")[Ti](Fs(ls,As),fs)[Ti](Fs(rs,As),ps)[Ti](Fs(hs,As),"[")[Ti](Fs(us,As),"]")[Ti](Fs(as,As),"(")[Ti](Fs(cs,As),")")[Ti](Fs(ds,As),"$")[Ti](/([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*){2,}/g,"<br>")}document.addEventListener("DOMContentLoaded",(t=>{!function(...t){const i=Rs(Ei,`${sn}.log.${on}(${ln} 0, ${JSON.stringify(t)});`);e[Ft][Mt](i),i[mi]()}("%c"+$s,"line-height: 1.75rem; font-size: 0.875rem;")}));t.PDMarkdownEditor=t.MDEditor=class{#t=!1;#e="";#i=!0;#n=!0;#s;#o;#l;#r;#h;#u;#a;constructor(s={}){this.#e=(s.defaultContent||"")[qi]();const o=s[bi]||{},l=i(o[Ze]||bt)[qi]()[Wi](),r=n(null==o.fill?1:o.fill)?1:0,h=i(o[pe]||"")[qi]()||"'Roboto Mono', monospace",u=n(null==o.showRow?1:o.showRow)?1:0,a=o.placeholder||{},c=i(a.text||"Type here ..."),d=i(a.color||"#bfbfbf"),f=o.focus||{},p=i(f.backgroundColor||"#0000ff1a"),g=i(f.color||"#0000ffff");e[Te][Mt](Rs(bi,`\n.${oi}{font-family: ${h}}\n.${oi}>div[data-focus="1"]{background-color:${p};color:${g};caret-color:${g}}\n.${oi}>div[data-last="1"]:empty::after{content:"${c}";color:${d} !important;caret-color:${g}}`));const y=document[hn](s[Se]);typeof s[Se]===Mi&&null!=y?(this[Ft]=y,y.classList.add(oi)):this[Ft]=Rs(Si+"."+oi),this[Ft][ie][Ze]=_&&l===bt||l===ee?ee:"",this[Ft][ie].fill=r,this[Ft][ie].row=u,this[Ft][ie].pin={1:1,0:0,[!0]:1,[!1]:0}[s.tabPin]||0,this[Ft][ie].wrap={1:1,0:0,[!0]:1,[!1]:0}[s.wrap]||1,this[Ft][ie].saved=1,this.#a=new oo(this[Ft]);const m=this[Ft];if(this.#i=n(null==s.hotKey||s.hotKey),this.#n=n(null==s.autoSave||s.autoSave),this.#s=s.event||{},null==this.#l&&s[xn]&&(this.#l=t[cn]("beforeunload",(t=>{t[kn]()}))),null!=s[Ze]){let t=i(s[Ze]||bt)[qi]()[Wi]();this[Ft][ie][Ze]=_&&t===bt||t===ee?ee:""}if(null!=s.fillMode){let t=n(s.fillMode)?1:0;this[Ft][ie].fill=t}if(null!=s.showRow){let t=n(s.showRow)?1:0;this[Ft][ie].row=t}if(null!=s[pe]){let t=i(s[pe])[qi]()||"'Roboto Mono', monospace";e[Te][Mt](Rs(bi,`.${oi}{font-family: ${t}}`))}let T=i(s[Tn]||"")[qi]()||p,N=i(s[En]||"")[qi]()||g;e[Te][Mt](Rs(bi,`.${oi}>div[data-focus="1"]{background-color:${T};color:${N}`));let E=i(s[ri]||"")[qi]()||c,A=i(s[Fn]||"")[qi]()||d;e[Te][Mt](Rs(bi,`.${oi}>div[data-last="1"]:empty::after{content:"${E}";color:${A}}`)),m.onmousedown=m.onmouseup=t=>{if(t.target[Zn][Wi]()!==oe)return t[kn](),!1;this.#c()},m.ontouchend=t=>{this.#c()},m.oncut=t=>(this.#d(),this.#f((e=>{t[Kt][zn]("text/plain",this.#u.body),m[Ht][this.#u.start][wn]=Us(this.#u.left+this.#u.right),this.#p(),this.#g(m[Ht][this.#u.start],this.#u.left[xe])})),this.#_(!0),this.#n&&this.#y(),!1),m.onpaste=e=>(this.#d(),this.#f((i=>{const n=((e[Kt]||t[Kt])[An]("Text")||"")[vi](/\n/),s=n[xe],o=s-1,l=s>1,r=this.#u.start+o,h=`${l?"":this.#u.left}${n[o]}`[xe],u=n[0],a=l?"":this.#u.right;if(m[Ht][this.#u.start][Cn]=this.#u.left+u+a,this.#p(),l)for(let t=1;t<s;t++){const e=n[t],i=Rs(oe,Us(`${e}${t===o?this.#u.right:""}`));i[$n]=t=>this.#c(),m[vn](i,m[Ht][this.#u.start+t])}this.#g(m[Ht][r],h,h)})),this.#_(!0),!1),m.oncompositionstart=t=>{this.#t=!0},m.oncompositionend=t=>{this.#t=!1},m.oninput=t=>{let e,i;if("deleteCompositionText"===t.inputType){e=this.#h.index,i=this.#h.offset;for(let t of[...m[Ht]]){if(t[Dn][Wi]()===oe||t[Dn][Wi]()===Si)continue;t[mi]();let n=Rs(oe,{"data-index":e+1,index:e+1});n[$n]=t=>this.#c(),m[vn](n,m[Ht][e]),this.#g(m[Ht][e],i)}}t.inputType;let n=this.#h.isMulti,s=this.#h.multi.left,o=t.data,l=this.#h.multi.right,r=this.#h.multi.start.offset;this.#c(),n&&(this.#o[Cn]=s+o+l,this.#g(this.#o,r+1)),this.#_(!0,300)},m.onkeydown=t=>{const e=t[Ve]||t[te],i=t.shiftKey,n=/^a$/i[Hi](t.key),o=/^b$/i[Hi](t.key),l=/^i$/i[Hi](t.key),r=/^s$/i[Hi](t.key),h=/^u$/i[Hi](t.key),u=/^m$/i[Hi](t.key),a=/^z$/i[Hi](t.key),c=/^r$/i[Hi](t.key),d=/^k$/i[Hi](t.key),f=/^f5$/i[Hi](t.key),p="ArrowUp"===t.key,g="ArrowDown"===t.key;if(this.#c(null,this.#i&&e&&n),"Meta"===t.key||"Control"===t.key)return!1;if(this.#i&&e&&i&&a)return this.goForward(),!1;if(this.#i&&e&&a)return this.goBack(),!1;if(this.#i&&(e&&c||f)&&s[xn])return!1;if(this.#i&&e&&o)return this.#m(t,"**",Es),!1;if(this.#i&&e&&l)return this.#m(t,"*",Os),!1;if(e&&r){if(this.#n)if(this.#s.hasOwnProperty("save")){if(null==this.#s.save)return!1;this.#s.save(this.getTxt())}else this.#T();else if(this.#N(),this.#s.hasOwnProperty("save")){if(null==this.#s.save)return!1;this.#s.save(this.getTxt())}return!1}if(this.#i&&e&&i&&r)return this.#m(t,"~~",Is),!1;if(this.#i&&e&&h)return this.#m(t,ws,ws),!1;if(this.#i&&e&&u)return this.#m(t,"==",ze),!1;if(this.#i&&e&&p)return this.#m(t,"^",Fi),!1;if(this.#i&&e&&g)return this.#m(t,"~",Ri),!1;if(this.#i&&e&&d)return this.#m(t,"`",Vt),!1;if(this.#i&&e&&n){const t=this[Ft].firstElementChild,e=this.#E,i=window.getSelection(),n=document.createRange();if(null==t.firstChild)return;return n.setStart(t.firstChild,0),n.setEnd(e.firstChild,e.firstChild.length),i.removeAllRanges(),i.addRange(n),!1}return"Tab"===t.key?this.#A(t):"Enter"===t.key?this.#S(t):"Backspace"===t.key?this.#O(t):void 0},m.onkeyup=t=>{"Meta"!==t.key&&"Control"!==t.key&&(m[Ht]&&1===m[Ht][xe]&&m.firstElementChild[Dn][Wi]()!==oe&&this[Ce](null,!0,!1),this.#c(),/^(Arrow(Up|Left|Down|Right)|CapsLock|Shift|Control|Alt|Clear|Escape|F\d+)$/[Hi](t.key)||this.#n&&this[en]&&this[en][Ce]())},m.onblur=t=>{this.#d()},this.init()}get viewer(){return this.#r}set viewer(t){this.#r=t}#I(){const t=Si+"."+De+"-"+xt,e=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.wrap;let i=this[Ft][gi](t);if(i)return;const n=[{[qe]:"format_bold",[Vi]:"添加粗體",[Ni]:t=>this.addBold(t)},{[qe]:"format_italic",[Vi]:"添加斜體",[Ni]:t=>this.addItalic(t)},{[qe]:"strikethrough_s",[Vi]:"添加刪除線",[Ni]:t=>this.addStrikethrough(t)},{[qe]:"format_underlined",[Vi]:"添加底線",[Ni]:t=>this.addUnderline(t)},{[qe]:"ink_marker",[Vi]:"添加高亮",[Ni]:t=>this.addMarker(t)},{[qe]:"superscript",[Vi]:"添加上標",[Ni]:t=>this.addSup(t)},{[qe]:"subscript",[Vi]:"添加下標",[Ni]:t=>this.addSub(t)},{[qe]:"format_quote",[Vi]:"添加引用",[Ni]:t=>this.addBlockquote(t)},{[qe]:"format_list_bulleted",[Vi]:"添加無序列表",[Ni]:t=>this.addUl(t)},{[qe]:"format_list_numbered",[Vi]:"添加有序列表",[Ni]:t=>this.addOl(t)},{[qe]:"code",[Vi]:"添加代碼塊",[Ni]:t=>this.addCode(t)},{[qe]:"link",[Vi]:"添加連結",[Ni]:t=>this.addLink("連結文字","連結")},{[qe]:"landscape",[Vi]:"添加圖片",[Ni]:t=>this.addImage("圖片連結","圖片名稱")},{},this.#n?null:{[qe]:"autorenew",[Vi]:"儲存並預覽",[Ni]:t=>this.#N(t)},{[qe]:e?"keep_off":"keep",[Vi]:"釘選面板",[Ni]:t=>this.#w(t)},{[qe]:"wrap_text",[Vi]:"換行",[Ni]:t=>this.#C(t)}].map((t=>{if(null==t)return;if(null==t[qe]){return Rs("span")}let e=Rs("span.material-symbols-outlined",{title:t.title,name:t.name},t.name);return e[$n]=t.click,e}));i=Rs(t,n),i[qt]=!1,i.dataset.hide=1,this[Ft][Mt](i)}#N(){this.#y()}#T(){let t=Rs("button",[Rs("span.material-symbols-outlined","markdown"),"Markdown"]),i=Rs("button",[Rs("span.material-symbols-outlined","html"),"HTML"]),n=Rs("button",[Rs("span.material-symbols-outlined","cancel"),"Cancel"]),s=Rs("div.nanomd-pop",[Rs("strong","Export"),t,i,n]);t[$n]=t=>{this.downloadMd(),s.remove()},i[$n]=t=>{this.downloadHtml(),s.remove()},n[$n]=t=>{s.remove()},e[Ft][Mt](s)}#w(t){const e=t.target,i=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.pin=Math.abs(i-1),e[Cn]=i?"keep":"keep_off",e[Vi]=i?"釘選面板":"取消釘選"}#C(t){const e=parseInt(this[Ft].dataset.wrap||1);this[Ft].dataset.wrap=Math.abs(e-1)}#v(t,e){this.#I();const i=Si+"."+De+"-"+xt;let n=this[Ft][gi](i);t[ie][fe]=1,this[Ft][vn](n,this[Ft][Ht][e+1]),n[ie][Ee]=0,this.#o=t}#d(){if(!this.#o)return;const t=Si+"."+De+"-"+xt,e=this[Ft][gi](t);this.#o[ie][fe]=0,null!=e&&(this[Ft][Mt](e),e[ie][Ee]=1),this.#o=null}#c(e,i=!1){this.#d(),this.#h=new so(this[Ft],e,i);const n=t[Sn]();if(n.rangeCount<1)return;const s=n.getRangeAt(0);let o=e||ks(s.commonAncestorContainer);null!=o&&this.#v(o,this.#h.index||this.#h.multi.end.index)}#f(t){this.#u=new lo(this[Ft],this.#h),t()}#p(){this.#u.removeRows()}#g(i,n,s){const o=this[Ft][Pn](oe);for(let t in o){const e=o[t];if(isNaN(d(t)))continue;const i=d(t)+1;e[ie][we]=i,i===o.length?e[ie].last=1:e[ie].last=0}if(t[Sn]?t[Sn]()[he]?t[Sn]()[he]():t[Sn]()[Ln]&&t[Sn]()[Ln]():e[Sn]&&e[Sn]()[he](),null==i)return;let l=t[Sn](),r=e.createRange(),h=n??i[Gt][0][xe],u=s??h;r.selectNode(i),i[Gt][0]?(r[Vn](i[Gt][0],h>i[Gt][0][xe]?i[Gt][0][xe]:h),r[Kn](i[Gt][0],u>i[Gt][0][xe]?i[Gt][0][xe]:u)):(r[Vn](i,0),r[Kn](i,0)),l.addRange(r),this.#c(i)}#A(t){if(9!==t.keyCode)return;const e=this[Ft];return this.#f((t=>{e[Ht][this.#u.start][wn]=Us(this.#u.left+" "+this.#u.right),this.#p();const i=this.#u.left[xe]+4;this.#g(e[Ht][this.#u.start],i)})),!1}#S(t){if(13!==t.keyCode)return;const e=this[Ft];return this.#f((t=>{e[Ht][this.#u.start][wn]=Us(this.#u.left),this.#p(),e[Rn][Rn][Hn]+=28;const i=Rs(oe,Us(this.#u.right));i[$n]=t=>this.#c(),e[vn](i,e[Ht][this.#u.start+1]),this.#g(e[Ht][this.#u.start+1],0)})),!1}#O(t){if(8!==t.keyCode)return!1;const e=this[Ft];return this.#f((t=>{if(this.#h.isMulti||this.#h.isSingle)e[Ht][this.#u.start][wn]=Us(this.#u.left+this.#u.right),this.#p(),this.#g(e[Ht][this.#u.start],this.#u.left[xe]);else if(this.#u.left[xe]){const t=this.#u.left[Ii](0,this.#u.left[xe]-1);e[Ht][this.#u.start][wn]=Us(t+this.#u.right),this.#g(e[Ht][this.#u.start],t[xe])}else{if(0===this.#u.start)return;e[Ht][this.#u.start-1][wn]+=Us(this.#u.right),e[Ht][this.#u.start][mi](),e[Rn][Rn][Hn]-=28;const t=e[Ht][this.#u.start-1][Cn][xe]-this.#u.right[xe];this.#g(e[Ht][this.#u.start-1],t)}})),!1}#D(t){t=Us(t);let e=this.#E;const i=Rs(oe,t);i[$n]=t=>this.#c(),e[Cn][qi]()[xe]<1?e[wn]=t:this[Ft][Mt](i),this[Ft][Hn]=this[Ft][jn]}get#E(){let t=this[Ft].lastElementChild;return"SECTION"===t[Dn]&&(t=t.previousElementSibling),t}#M(t,e){t=Us(t);const i=this[Ft][Ht][this.#u.start];i[wn]=t,this.#p(),this.#g(i,e)}#m(t,e="",i=""){const n=t[Ve]||t[te]||e===i;this.#h.check?this.#f((t=>{const s=this.#u.left,o=this.#u.body,l=this.#u.right,r=`${s}${n?`<${i}>`:e}${o}${n?`</${i}>`:e}${l}`[Ti](/\n/g,""),h=r[xe]-l[xe]-(n?i[xe]+3:e[xe]);this.#M(r,h),this.#_(!0),this.#n&&this.#y()})):(this.#D(n?`<${i}></${i}>`:`${e}${e}`),this.#g(this.#E,n?i[xe]+3:e[xe]),this.#_(!0),this.#n&&this.#y())}#$(t){this.#h.check?this.#f((e=>{const i=this.#u.start,n=this.#u.end;for(let e=i;e<=n;e++){const i=this[Ft][Ht][e];i[wn]=Us(`${t} ${i[Cn]}`)}const s=this[Ft][Ht][n],o=s[Cn][xe];this.#g(s,o),this.#_(!0),this.#n&&this.#y()})):(this.#D(t),this.#g(this.#E,t[xe]+1),this.#_(!0),this.#n&&this.#y())}#b(t="",e="",i){if(this.#h.check)return void this.#f((n=>{const s=this.#u.left,o=this.#u.right,l=`${s}${null==i?"":"!"}[${t}](${e}) ${o}`[Ti](/\n/g,""),r=l[xe]-o[xe]-1;this.#M(l,r),this.#_(!0),this.#n&&this.#y()}));this.#D(`${null==i?"":"!"}[${t}](${e})`);const n=this.#E,s=n[Cn][xe];this.#g(n,s),this.#_(!0),this.#n&&this.#y()}#_(t,e){this.#c(),this.#a.add(this.#h,t,e),this[Ft][ie].saved=0,this[en]&&this[en].unsave()}#R(t,i){const n=new c([i],{[Ji]:"application/octet-stream"}),s=h.createObjectURL(n),o=Rs(Ns,{href:s,download:`NanoMD-${a.now()}.${t}`});e[Ft][Mt](o),o[Ni]()}#y(){this[Ft][ie].saved=1,null!=this[en]&&this[en][Ce]()}init(t,e=!0,n=!0){if(this[Ft][qt]=!0,this[Ft][wn]=null,(t=i(t||this.#e)[qi]())[xe]){this.#e="";const i=t[Ti](/\n*$/,"")[vi](/\n/);for(let t=0;t<i.length;t++){const e=i[t],n=Rs(oe,{"data-index":t+1},Us(e));n[$n]=t=>this.#c(),this[Ft][Mt](n)}if(this.#I(),!e)return}else{const t=Rs(oe,{"data-index":1});if(t[$n]=t=>this.#c(),this[Ft][Mt](t),this.#I(),!e)return}n&&(this.#c(),this.#a.add(this.#h,!0))}changeMode(t=Le){this[Ft][ie][Ze]=t}goBack(){this.#d();const t=this.#a.undo();null!=t&&(this[Ce](t[Yt][xe]<1?null:t[Yt],!1,!1),this[Ft][ie].saved=0,this.#g(this[Ft][Ht][t[we]],t[ei]),this[en]&&this[en].unsave(),this.#n&&this.#y())}goForward(){const t=this.#a.redo();null!=t&&(this[Ce](t[Yt],!1,!1),this[Ft][ie].saved=0,this.#g(this[Ft][Ht][t[we]],t[ei]),this[en]&&this[en].unsave(),this.#n&&this.#y())}addHeading(t,e){const i=t[Ve]||t[te],n=`${new Array(e).fill("#")[be]("")}${0===e?"":" "}`;this.#h.check?this.#f((t=>{const s=this.#u.left[Ti](/^\s*\#*\s*/,""),o=this.#u.body,l=this.#u.right,r=`${i?`<h${e}>`:n}${s}${o}${l}${i?`</h${e}>`:""}`[Ti](/\n/g,""),h=r[xe]-(i?5:0);this.#M(r,h),this.#_(!0),this.#n&&this.#y()})):(this.#D(i?`<h${e}></h${e}>`:n),this.#g(this.#E,n[xe]-(i?5:0)),this.#_(!0),this.#n&&this.#y())}addBold(t){this.#m(t,"**",Es)}addItalic(t){this.#m(t,"*",Os)}addStrikethrough(t){this.#m(t,"~~",Is)}addUnderline(t){this.#m(t,ws,ws)}addMarker(t){this.#m(t,"==",ze)}addSup(t){this.#m(t,"^",Fi)}addSub(t){this.#m(t,"~",Ri)}addBlockquote(){this.#h.check?this.#f((t=>{for(let t=this.#u.start;t<=this.#u.end;t++){const e=this[Ft][Ht][t];e[wn]=Us(`> ${e[Cn]}`)}const e=this[Ft][Ht][this.#u.end],i=e[Cn][xe];this.#g(e,i),this.#_(!0),this.#n&&this.#y()})):(this.#D("> "),this.#g(this.#E,2),this.#_(!0),this.#n&&this.#y())}addUl(){this.#$("-")}addOl(){this.#$("1.")}addCode(t){this.#h.check?this.#f((e=>{if(this.#h.isMulti){const t=Rs(oe,"```"),e=Rs(oe,"```");t[$n]=e[$n]=t=>this.#c(),this[Ft][vn](t,this[Ft][Ht][this.#u.end+1]),this[Ft][vn](e,this[Ft][Ht][this.#u.start]),this.#g(this[Ft][Ht][this.#u.end+1],this[Ft][Ht][this.#u.end+1][Cn][xe]),this.#_(!0),this.#n&&this.#y()}else this.#m(t,"`",Vt)})):this.#m(t,"`",Vt)}addLink(t="",e=""){e[qi]()[xe]<1&&t[qi]()[xe]<1||this.#b(t,e)}addImage(t="",e="",i=""){t[qi]()[xe]<1||this.#b(i,t,e)}clear(){this.init(),this.#y()}downloadMd(){this.#R("md",this.getTxt()[qi]())}downloadHtml(){this.#R("html",`<!DOCTYPE html><html><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>NanoMD 輸出</title><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@1.9.0/dist/NanoMD-output.css"><script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"><\/script></head><body><section class="pd-md-viewer">${no(`\n${this.getTxt()}\n`)}</section></body></html>`)}openfile(t){if(null==t)return void alert("請選擇檔案");const e=new FileReader;e.readAsText(t),e.onload=()=>{this[Ft][wn]=null;const t=e.result[qi]()[Ti](/[\u0020\u00A0]/g," ");this.init(Us(t),!1),this.#y()}}getTxt(){return[...this[Ft][Ht]].map((t=>"SECTION"===t[Dn]?"":t[Cn]))[be]("\n")}};class so{check=!1;isMulti=!1;isSingle=!0;index;offset;left;right;selection={};multi={};constructor(e,i,s=!1){const o=t[Sn]();if(o.rangeCount<1)return;const l=o.getRangeAt(0);let r=i||ks(l.commonAncestorContainer);if(null==r)return;let h,u,a="";if(s){r=e;const t=r[Pn](oe);for(let e=0;e<t.length;e++){const i=t[e];a+=(0==e?"":"\n")+i[Cn]}h=0,u=t[xe]-1}else l.cloneContents()[Gt][ge](((t,e)=>{a+=(0==e?"":"\n")+t[Cn]})),r===e&&(h=d(ks(o.baseNode)[ie][we])-1,u=d(ks(o.focusNode)[ie][we])-1);var c=n(r===e),f=!c&&!s&&n(o[Rt]!==o[Nn]),p=!!s||n(o[Nn]>o[Rt]),g=!!s||n(h<u);this.check=!0,this.index=c?null:d(r[ie][we])-1,this.offset=c||f?null:d(o[Nn]),this.left=c||f?null:r[Cn][Ii](0,o[Nn]),this.right=c||f?null:r[Cn][Ii](o[Nn],r[Cn][xe]),this.isSingle=f,this.isMulti=c;const _=f?p?o[Rt]:o[Nn]:null,y=f?p?o[Nn]:o[Rt]:null;this.selection={body:f?o.toString():a,start:_,end:y,left:f?r[Cn][Ii](0,_):null,right:f?r[Cn][Ii](y,r[Cn][xe]):null};const m=c?g?h:u:null,T=s?0:c?g?o[Rt]:o[Nn]:null,N=c?g?u:h:null,E=s?e[Ht][u][Cn][xe]:c?g?o[Nn]:o[Rt]:null;this.multi={start:{index:m,offset:T},end:{index:N,offset:E},left:s?"":c?r[Ht][m][Cn][Ii](0,T):null,right:s?"":c?r[Ht][N][Cn][Ii](E,r[Cn][xe]):null}}}class oo{#U;#F;#k=[];#x=[];constructor(t){this.#U=t}add(t,e,i){clearInterval(this.#F),console.log(t,e,i),null==i?this.#P(t,e):this.#F=setTimeout((i=>{this.#P(t,e)}),i)}#P(t,e){this.#k[fi]({[we]:t[we],[ei]:t[ei],[Yt]:[...this.#U[Ht]].filter((t=>"DIV"==t.nodeName)).map((t=>t[Cn]))[be]("\n")}),e&&(this.#x=[])}undo(){const t=this.#k[(this.#k||[])[xe]-2];if(null==t)return;let e=this.#k.pop();return this.#x[fi](e),t}redo(){const t=this.#x.pop();if(null!=t)return this.#k[fi](t),t}}class lo{editor;body;start;end;left;right;constructor(t,e){let i,n,s,o;this.editor=t,e.isMulti?(i=e.multi.start.index,n=e.multi.end.index,s=e.multi.left,o=e.multi.right):e.isSingle?(i=e.index,n=e.index,s=e.selection.left,o=e.selection.right):null!==e.index&&null!==e.offset&&(i=e.index,n=e.index,s=e.left,o=e.right),this.body=e.selection.body,this.start=d(i),this.end=d(n),this.left=s[Ti](/</g,"<")[Ti](/>/g,">")[Ti](/ /g," "),this.right=o[Ti](/</g,"<")[Ti](/>/g,">")[Ti](/ /g," ")}removeRows(){for(let t=this.end;t>this.start;t--)this.editor[Ht][t][mi]()}}class ro{tag="";props={};children=[];data=null;constructor(t){if(t[Zn][Wi]()===Ei){let i=!1;for(const n of e[Te][Pn](Ei)||[])if(null!=t[Di]&&n[Di]===t[Di]||null!=t[Bi]&&n[Bi]===t[Bi]){i=!0;break}i||e[Te][Mt](t),this[xi]=Ei}this[xi]=t[Zn][Wi](),this[ui]=[...t.attributes].reduce(((t,e)=>(t[e.name]=e.value.trim(),t)),{}),this[Ht]=function(t){return s[_e](t[Gt]).filter((t=>t[Ct]===u[wt]||t[Ct]===u[It]&&t[Bi]&&t[Bi][qi]()[xe]>0))}(t)[Be]((t=>t.nodeType===Node[wt]?new ro(t):t[Bi]||""))}getPatches(t){return this.#L(t,this)}#L(t,e,i=[]){if(null==t&&e)return[{[Ji]:Ts.create,[we]:i,[rn]:e}];if(t&&!e)return[{[Ji]:Ts.remove,[we]:i}];if(!t&&!e)return[];if(t.tag!==e.tag)return[{[Ji]:Ts[Ti],[we]:i,[rn]:e}];const n=[];return n[fi](...this.#j(t,e,i)),n[fi](...this.#G(t,e,i)),n}#j(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],s=t[ui]||{},l=o[Ot](s)[xe],r=e[ui]||{},h=o[Ot](r)[xe];if(h>0)for(let t in r){const s=r[t];n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,value:s,[we]:i})}if(l>0){if(h<1)for(let t in s)n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,[Qi]:null,[we]:i});for(let t in r)h>0&&!(t in r)&&n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,[Qi]:null,[we]:i})}return n}#G(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],o=s[$e](t[Ht])?t[Ht]:[],l=s[$e](e[Ht])?e[Ht]:[],h=r.max(o[xe],l[xe]);for(let t=0;t<h;t++){const s=o[t],r=l[t],h=i.concat(t);if("string"==typeof s&&"string"==typeof r){if(s===r)continue;n[fi]({[Ji]:Ts.text,[rn]:e,[Qi]:r,[we]:h})}else null==s?n[fi]({[Ji]:Ts.append,[rn]:r,[we]:h}):null==r?n[fi]({[Ji]:Ts.remove,index:h}):n[fi](...this.#L(s,r,h))}return n}}t.PDMarkdownViewer=t.MDViewer=class{body;vbody;#H;#B="";#z=300;#K=0;#V;#W;#U;constructor(t={}){if((ue in t||hi in t)&&(this.#B=String(t[ue]||t[hi]||"")[qi]()),bi in t){t[bi]}const s=t[bi]||{},o=i(s[Ze]||bt)[qi]()[Wi](),l=n(null==s.fill?1:s.fill)?1:0,r=i(s[pe]||"")[qi]()||"'Noto Sans TC', sans-serif",h=t.sync||{};this.#z=d(null==h[ne]?300:h[ne])||300,this.#K=n(h[Ai]||0)?1:0,this[le]=h[le]instanceof PDMarkdownEditor?h[le]:null,e[Te][Mt](Rs(bi,`.${li}{font-family: ${r}}`));const u=document[hn](t[Se]);typeof t[Se]===Mi&&null!=u?(this[Ft]=u,u.classList.add(li)):this[Ft]=Rs(Si+"."+li),this[Ft][ie][Ze]=_&&o===bt||o===ee?ee:"",this[Ft][ie].fill=l;const a=t.hashtag||{};if(this.#V=i(a.path||"")[qi](),this.#W=i(a[Pi]||"")[qi](),null!=t.fillMode){let e=n(t.fillMode)?1:0;this[Ft][ie].fill=e}if(null!=t[ne]&&(this.#z=d(t[ne])||300),null!=t[Gn]&&(this.#K=n(t[Gn])?1:0),null!=t[pe]){let n=i(t[pe])[qi]()||"'Noto Sans TC', sans-serif";e[Te][Mt](Rs(bi,`.${li}{font-family: ${n}}`))}null!=t[Yn]&&(this.#V=i(t[Yn]||"")[qi]()),null!=t[qn]&&(this.#W=i(t[qn]||"")[qi]()),this.vbody=new ro(this[Ft]),this.init()}get editor(){return this.#U}set editor(t){this.#U&&(this.#U[Ft][bn]=null),null!=t&&(this.#U=t,this.#U.viewer=this,this.#K&&null!=this.#U&&(this.#U[Ft][bn]=t=>{this[Ft][Hn]+=t.deltaY}))}#Z(){if(null==this.#U)return"";const t=[...this.#U[Ft][Pn](oe)];let e="";for(let n of t){var i=n[Cn][Ti](/[\u00A0\u0020]/g," ");i[qi]()[xe]<1?e+="\n":e+=i+"\n"}return e[qi]()}clear(){let t=this[Ft].cloneNode(!0);t[wn]="";let e=new ro(t);this[Ft][wn]="",this.vbody=e}unsave(){this[Ft][ie].saved=0}init(e=""){this[Ft][ie].saved=1;let i=this.#B,n=this[Ft][Hn];t[zt](this.#H),this.#H=t[Wn]((()=>{if(t[zt](this.#H),i&&this[Ft][wn]&&i===this[Ft][wn])return;let o=e||this.#Z()||i;o=no(`\n${o}\n`,this.#V,this.#W);let l=this[Ft].cloneNode(!0);l[wn]=o;let r=new ro(l);const h=r.getPatches(this.vbody);s[$e](h)&&this.#Y(this[Ft],h),this.vbody=r;for(let e of[...this[Ft][Pn](xt+"."+Xt)])e[$n]=async e=>{t[zt](bs);const i=e[Pi][Rn],n=i[pn],s=i[Ht][0][Cn];try{await navigator.clipboard.writeText(s),n[vt](Ui),bs=t[Wn]((t=>{n[mi](Ui)}),1e3)}catch(t){console[ae](t),n[vt](ae)}};let u=setInterval((()=>{null!=PR&&(clearInterval(u),this[Ft][Hn]=n,PR.prettyPrint())}),50)}),this.#z)}changeMode(t=Le){this[Ft][ie][Ze]=t}#Y(t,e){if(null!=t&&s[$e](e)){this.#q(t,e);for(const i of e){const{index:e}=i,n=l.parse(l.stringify(e||[]));let s;i.type===Ts.append&&(s=n?.pop());const o=n?this.#J(t,n):t;o&&(i.type===Ts.create&&rn in i?this.#X(o,i):i.type===Ts.replace&&rn in i&&null!=o[Un]?this.#Q(o,i):i.type===Ts.append&&rn in i&&null!=s?this.#tt(o,i,s):i.type===Ts.prop&&"key"in i&&Qi in i&&o instanceof Element?this.#et(o,i.key,i.value||"",i[rn]):i.type===Ts.text&&Qi in i&&o.nodeType===u[It]&&(o[Bi]=i.value||""))}}}#q(t,e){const i=e.filter((t=>t.type===Ts.remove)).sort(((t,e)=>{const i=(e.index.length||0)-(t.index.length||0);if(0!==i)return i;for(let i=0;i<(t.index.length||0);i++)if((t.index[i]||0)!==(e.index[i]||0))return(e.index[i]||0)-(t.index[i]||0);return 0}));for(const e of i){const i=this.#J(t,e.index);null!=i&&null!=i[Un]&&i[Un].removeChild(i)}}#X(t,i){if(i.type!==Ts.create||!(rn in i))return;const n="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);null!=t[Rn]&&t[Rn][Mt](n)}#Q(t,i){if(i.type!==Ts.replace||!(rn in i)||null==t[Un])return;const n="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);if(t[Un].replaceChild(n,t),!(n instanceof Text||"string"==typeof i[rn])){for(const t in i[rn][ui])this.#et(n,t,i[rn][ui][t]||"",i[rn]);this.#nt(i[rn],n)}}#tt(t,i,n){if(i.type!==Ts.append||!(rn in i)||null==n)return;const s="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);if(n+1>t[Ht][xe]?t[Mt](s):t.insertBefore(s,t[Ht][n+1]),"string"!=typeof i[rn]){for(const[e,s]of o.entries(i[rn][ui]))this.#et(t[Ht][n],e,s||"",i[rn]);this.#nt(i[rn],t[Ht][n])}}#et(t,e,i,n){null==i?t[_removeAttribute](e):null!=t&&t[Bn](e,i)}#nt(t,e){if("string"!=typeof t)for(const i in t.children.filter((t=>"string"!=typeof t))){if(null==e)continue;const n=t.children[+i],s=e.children[+i];if("string"!=typeof n){for(const[t,e]of o.entries(n[ui]))this.#et(s,t,e||"",n);this.#nt(n,s)}}}#J(t,e){let i=t,n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[It]&&""!==t[Bi]?.trim()))||[];for(const t of e)i=n[t],null!=i&&(n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[It]&&""!==t[Bi]?.trim()))||[]);return i}#it(t){const i=e.createElement(t.tag);if(t[ui])for(const[e,n]of o.entries(t[ui]))e[St](":")||e[St]("@")||void 0!==n&&i[Bn](e,n);for(const n of t[Ht])"string"==typeof n?i[Mt](e[yn](n)):i[Mt](this.#it(n));return i}}}("undefined"==typeof window?window={}:window);export const editor = window.MDEditor; export const MDEditor = window.MDEditor; export const viewer = window.MDViewer; export const MDViewer = window.MDViewer; |
@@ -1,1 +0,1 @@ | ||
!function(){const t=window,e=document,i=String,n=Boolean,s=Array,o=Object,l=JSON,r=Math,h=URL,u=Node,c=Date,a=Blob,d=parseInt,f="video/mp4",p="video/quicktime",g=["javascript","js","ts","html","css","xml","json","sql","java","python","ruby","php","cpp","csharp","swift","typescript","kotlin","go","rust","perl","bash"],y=t.matchMedia&&t.matchMedia("(prefers-color-scheme: dark)").matches,_="abcdefghijklmnopqrstuvwxyz0123456789";let m=new Map;const T=/\.([\w_-]+)?/gi,N=/\#([\w_-]+)?/i,E=/^\w+(?=[\#\.]*)/i,A=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(mailto\:)?([\u0020\u00A0\u0009]*)(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)([\u0020\u00A0\u0009]*)[\"\']{0,1}/,O=/(\s{1})\\?[\##]{1}([\u4e00-\u9fff\u3040-\u30ff\uac00-\ud7a3a-zA-Z0-9_]+)/,I=/[& \<\>\"\']/g,C=/\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)/,w=/(\n)(\>\s*\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]\n)?(\>[^\n]*(\n)?)+/,S=/\`([^\n\`]*)\`/,D=/^\n|\n$/g,b=/\`{3}(\w*)([\s\S]*?)\s*\`{3}/,$=/((\n([\u0020\u00A0]{4,}|[\u0009]))[^\n]+)+/,M=/\*([^\n\*]*)\*/,U=/\_([^\n\_]*)\_/,R=/^\s|\s$/g,x=/(\n[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*>[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n]+)/,F=/(\n)([^\n]+)\n\={3,}([\u0020\u00A0\u0009]*\n)/,k=/(\n)([^\n]+)\n\-{3,}([\u0020\u00A0\u0009]*\n)/,v=/([\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n\|]*)([\u0020\u00A0\u0009]*)/,P=/(\n[\u0020\u00A0\u0009]*)(\*{3,}|\-{3,})([\u0020\u00A0\u0009]*\n)/,L=/\!\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)(\(([0-9]+\%?)?[\u0020\u00A0\u0009\*x]+([0-9]+\%?)?([\u0020\u00A0\u0009]+(left|right))?\))?/,j=/^['"].*['"]$/,G=/\n(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,H=/(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,B=/^(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]*[^\n]+)/,z=/\={2}([^\n\=]*)\={2}/,K=/\~{2}([^\n\~]*)\~{2}/,W=/\*{2}([^\n\*]*)\*{2}/,V=/\_{2}([^\n\_]*)\_{2}/,Z=/\~([^\n\~]*)\~/,Y=/\^([^\n\^]*)\^/,q=/(\n(?![\{\<])[^\n]+)+/,X=/^(\n?(?![\{\<])[^\n]+)+/,J=/\.mov$/,Q=/\.mp4$/,tt=/[A-Za-z\%]/,et=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*))([\u0020\u00A0\u0009]*)[\"\']{0,1}/,it=/(\<[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*br[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*\>|\n)/,nt=/\n/,st=/\\\!/g,ot=/\\\`/g,lt=/\\\#/g,rt=/\\\*/g,ht=/\\\_/g,ut=/\\\~/g,ct=/\\\^/g,at=/\\\=/g,dt=/\\\</g,ft=/\\\>/g,pt=/\\\[/g,gt=/\\\]/g,yt=/\\\(/g,_t=/\\\)/g,mt=/\$/g,Tt=/(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?/,Nt="mailto:",Et="\n",At="_blank",Ot="startsWith",It="keys",Ct="TEXT_NODE",wt="ELEMENT_NODE",St="nodeType",Dt="add",bt="alt",$t="appendChild",Mt="as",Ut="auto",Rt="baseOffset",xt="blockquote",Ft="body",kt="br",vt="button",Pt="charAt",Lt="checked",jt="checkbox",Gt="childNodes",Ht="children",Bt="class",zt="clearTimeout",Kt="clipboardData",Wt="code",Vt="Color",Zt="color",Yt="content",qt="contentEditable",Xt="controls",Jt="copy",Qt="create",te="Creator",ee="ctrlKey",ie="dark",ne="dataset",se="delay",oe="display",le="div",re="editor",he="em",ue="empty",ce="emptyContent",ae="error",de="float",fe="floor",pe="focus",ge="fontFamily",ye="forEach",_e="from",me="get",Te="has",Ne="head",Ee="height",Ae="hide",Oe="href",Ie="id",Ce="iframe",we="img",Se="index",De="init",be="inner",$e="input",Me="insert",Ue="isArray",Re="join",xe="label",Fe="language",ke="lastChild",ve="lazy",Pe="length",Le="li",je="light",Ge="link",He="list",Be="loading",ze="map",Ke="mark",We="match",Ve="metaKey",Ze="min",Ye="mode",qe="Name",Xe="name",Je="node",Qe="none",ti="number",ei="object",ii="offset",ni="ol",si="outerHTML",oi="parent",li="pd-md-editor",ri="pd-md-viewer",hi="placeholder",ui="pre",ci="props",ai="preload",di="prettyprint",fi="prevent",pi="push",gi="px",yi="querySelector",_i="random",mi="rel",Ti="remove",Ni="replace",Ei="click",Ai="script",Oi="scroll",Ii="section",Ci="set",wi="slice",Si="source",Di="span",bi="split",$i="src",Mi="string",Ui="strong",Ri="style",xi="sub",Fi="success",ki="sup",vi="table",Pi="tag",Li="target",ji="tbody",Gi="td",Hi="temp",Bi="test",zi="textContent",Ki="th",Wi="thead",Vi="title",Zi="toLowerCase",Yi="toUpperCase",qi="tr",Xi="trim",Ji="type",Qi="ul",tn="value",en="video",nn="viewer",sn="width",on="console",ln="apply",rn="void",hn="vdom",un="getElementById",cn="crossOrigin",an="preconnect",dn=Dt+"EventListener",fn="background"+Vt,pn=Bt+qe,gn=Bt+"List",yn=Qt+"DocumentFragment",_n=Qt+"Element",mn=Qt+"TextNode",Tn=_e+"CharCode",Nn=pe+"Background"+Vt,En=pe+"Offset",An=pe+"Text"+Vt,On=me+"Data",In=me+"Selection",Cn=Te+"OwnProperty",wn=Se+"Of",Sn=be+"HTML",Dn=be+"Text",bn=Me+"Before",$n=Je+qe,Mn=Je+"Value",Un="onclick",Rn="onwheel",xn=oi+"Element",Fn=oi+"Node",kn=hi+Vt,vn=fi+"Default",Pn=fi+"Refresh",Ln=yi+"All",jn=Ti+"AllRanges",Gn=Oi+"Height",Hn=Oi+"Sync",Bn=Oi+"Top",zn=Ci+"Attribute",Kn=Ci+"Data",Wn=Ci+"End",Vn=Ci+"Start",Zn=Ci+"Timeout",Yn=Pi+qe,qn=Pi+"Path",Xn=Pi+"Target";let Jn="";const Qn="@excl@",ts="@grave@",es="@num@",is="@ast@",ns="@lowbar@",ss="@tilde@",os="@Hat@",ls="@equal@",rs="@lt@",hs="@gt@",us="@lsqb@",cs="@rsqb@",as="@lpar@",ds="@rpar@",fs="@dollar@",ps="<",gs=">",ys="&",_s=" ",ms=""",Ts="'",Ns={create:"CREATE",append:"APPEND",replace:"REPLACE",text:"TEXT",prop:"PROP",remove:"REMOVE"};Array[_e]({[Pe]:26},((t,e)=>i[Tn](97+e)))[ye](((e,n)=>{let s=n<10,o=n>=10&&n<20,l=n>=20,r=i(n),h=r[Pt](r[Pe]-1),u=i=>{Jn+=i?e[Yi]():e,t[(i?"$":"_")+(l?"_":"")+h+(o?"_":"")]=i?e[Yi]():e};u(0),u(1),s&&(Jn+=n,t["_"+e]=n)}));t._a,t._b,t._c,t._d,t._e,t._f,t._g,t._h,t._i,t._j;const Es=t._0,As=t._1,Os=(t._2,t._3,t._4,t._5,t._6),Is=t._7,Cs=t._8,ws=(t._9,t._0_,t._1_,t._2_,t._3_,t._4_,t._5_,t._6_,t._7_,t._8_),Ss=(t._9_,t.__0),Ds=(t.__1,t.__2,t.__3,t.__4,t.__5,t.$0,t.$1,t.$2,t.$3,t.$4,t.$5,t.$6,t.$7,t.$8,t.$9,t.$0_,t.$1_,t.$2_,t.$3_,t.$4_,t.$5_,t.$6_,t.$7_,t.$8_,t.$9_,t.$_0,t.$_1,t.$_2,t.$_3,t.$_4,t.$_5,"https://fonts.googleapis.com"),bs=Ds+"/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,1,0&display=swap",$s="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js",Ms="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@latest/dist/NanoMD.css",Us="NanoMD\nGitHub: https://github.com/pardnchiu/NanoMD\nCreator: Pardn Chiu\nLicense: MIT";let Rs;for(let t of[xs(Ge,{[mi]:an,[Oe]:"https://fonts.gstatic.com",[cn]:""}),xs(Ge,{[mi]:an,[Oe]:Ds,[cn]:""}),xs(Ge,{[mi]:ai,[Oe]:bs,[Mt]:Ri,[cn]:"anonymous"}),xs(Ge,{[mi]:"stylesheet",[Oe]:bs}),xs(Ge,{[mi]:"preconnect",[Oe]:"https://cdn.jsdelivr.net"}),xs(Ge,{[mi]:ai,[Oe]:$s,[Mt]:Ai}),xs(Ai,{[$i]:$s}),xs(Ge,{[mi]:ai,[Oe]:Ms,[Mt]:Ri}),xs(Ge,{[mi]:"stylesheet",[Oe]:Ms})])e[Ne][$t](t);function xs(t="",i,n){const s=((t[We](E)||[])[0]||"")[Xi](),o=((t[We](N)||[])[1]||"")[Xi](),l=(T[Bi](t)?t[We](T):[])[ze]((t=>t[Ni](/^\./,"")));e[De],e[te];if(s[Pe]<1)return;let r,h,u,c=!1;if(t===Hi?(c=!0,r=e[yn]()):r=e[_n](s),83!=Us[Pe])return r;o[Pe]&&(r.id=o);for(let t of l)r[gn][Dt](t);if(null==i&&null!=n&&([i,n]=[n,null]),null!=i&&null!=n)[h,u]=[i,n];else if(null==n)typeof i===Mi||typeof i===ti||Array[Ue](i)?u=i:h=i;else if(null==i)return r;if(typeof h===ei&&null!=h)for(const t in h){if(!h[Cn](t))continue;const e=h[t];-1!=[tn,Dn,Sn,zi,qt][wn](t)?r[t]=e:-1!=[Zt,fn,sn,Ee,oe,de][wn](t)?r[Ri][t]=e:null!=e&&r[zn](t,e)}if(null!=u){const t=typeof u===Mi,i=typeof u===ti,n=Array[Ue](u);if(t||i){const t=u;s===we||s===Si?r[$i]=t:c?r[$t](e[mn](u)):r[Sn]=t}else if(n)for(let t of u){const i=t instanceof Element;typeof t===Mi||typeof t===ti?c?r[$t](e[mn](t)):r[Sn]+=t:i&&r[$t](t)}}return r}function Fs(t=""){return t[Ni](I,(t=>({"&":ys," ":_s,"<":ps,">":gs,'"':ms,"'":Ts}[t])))}function ks(t,e=""){return new RegExp(t,e)}function vs(t){if(t)return t[pn]===li||t[$n][Zi]()===le&&t[Fn][pn]===li?t:vs(t[Fn])}function Ps(t){const e=xs(le);return e[$t](t),e[Sn]}function Ls(t=""){if((t=t[Xi]())[Pe]<1)return"";const e=t[We](Tt)||[];return e[Pe]>2&&11===e[1][Pe]?e[1]:""}function js(t=""){if((t=t[Xi]())[Pe]<1)return"";const e=t.match(/(?:https?:\/\/)?(?:www\.)?vimeo\.com\/(?:channels\/[\w]+\/|groups\/[\w]+\/videos\/|album\/\d+\/video\/|video\/|)(\d+)/);return e?e[1]:null}function Gs(t,e="",i="",n="",s="",o=""){const l=Hs(i),r=n instanceof HTMLElement?n:xs(i,n);return m[Ci](l,r[si]),e[Ni](t,s+l+o)}function Hs(t=""){let e="{{"+(t[Xi]()||Ut)+"-";for(let t=0;t<64;t++)e+=_[Pt](r[fe](36*r[_i]()));return e+="}}",m[Te](e)?Hs(t):e}function Bs(t=""){let i;for(let e of t[We](ks(w,Os))||[]){const s=e[We](w),o=s[1]||"",l=s[3]||"",r=s[5]||"";i=xs(xt+(l[Pe]?"."+l:"")),n(e,l),t=Gs(e,t,xt,i,o,r)}function n(t,e=""){let n=Xs(t[Xi]()[Ni](/^\>[\u00A0\u0020\u0009]?/,"")[Ni](/\n\>[\u00A0\u0020\u0009]?/g,"\n"))[bi](nt);for(let t in n){const o=n[t];i[$t](s(o,d(t),e))}}function s(t,n=0,o=""){let l=xs(Hi);const r=/^[\u00A0\u0020\u0009]*\>[\u00A0\u0020\u0009]?/,h=t[Ni](r,"");if(/\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/[Bi](t)&&0===n)l[$t](xs(Di+".hint",[-1!=["NOTE","TIP","IMPORTANT","WARNING","CAUTION"][wn](o)?xs("span.material-symbols-outlined",{NOTE:"info",TIP:"lightbulb",IMPORTANT:"sms",WARNING:"warning",CAUTION:"error"}[o]||""):null,o])),l[$t](xs(kt));else if(r[Bi](t)){let t=xs(xt);t[$t](s(h)),l[$t](t)}else/^[\u00A0\u0020\u0009]*\{\{/[Bi](t)?l[$t](i[$t](e[mn](t))):l[$t](xs(Di,t));return l}return t}function zs(t=""){let e=[[Wt,S]];for(let i of e){const e=i[0],n=i[1];for(let i of t[We](ks(n,Os))||[]){const s=i[We](n);if(R[Bi](s[1]||""))continue;let o=(s[1]||"")[Xi]();o[Pe]<1||(e!=Wt?t=t[Ni](i,xs(e,o)[si]):(o=Fs(o),t=Gs(i,t,e,o)))}}return t}function Ks(t){let e=0,i=xs(ni);for(let n in t){const s=t[n];0===d(n)&&(e=r.floor((s[We](/^\s*/)||[""])[0][Pe]/4));const o=ks(`^\\s{0,${4*e}}`);i[$t](xs(Le,Fs(s[Ni](o,""))))}return i}function Ws(t=""){let e=[[Ui,W],[Ui,V],[ws,K],[Ke,z],[he,M],[he,U],[ki,Y],[xi,Z]];for(let t of e){i(t[0],t[1])}function i(e,i){for(let n of t[We](ks(i,Os))||[]){const s=n[We](i);if(R[Bi](s[1]||""))continue;let o=(s[1]||"")[Xi]();o[Pe]<1||(e!=Wt?t=t[Ni](n,xs(e,o)[si]):(o=Fs(o),t=Gs(n,t,e,o)))}}return t}function Vs(t="",e="",n=At){if(i(e||"")[Xi]()[Pe]<1)return t;for(let i of t[We](ks(O,Os))||[]){if(i[We](/^\\/))continue;const s=i[We](O);if(s[Pe]<1)continue;const o=s[1],l=(s[2]||"")[Xi](),r=Hs(Es);if(l[Pe]<1)continue;const h=xs(Hi,[xs(Es+"."+Pi,{[Oe]:e+l,[Li]:n===At?At:"_self"},l)]);m[Ci](r,Ps(h)),t=t[Ni](i,o+r)}return t}function Zs(t=""){return(()=>{for(let e of t[We](ks(x,Os))||[]){const i=e[We](x);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[3]||"")[Xi]()[Pe],o=(i[4]||"")[Xi]();0!=r[Ze](s,o[Pe])&&(t=Gs(e,t,Is+s,o,n))}})(),(()=>{for(let e of t[We](ks(v,Os))||[]){const i=e[We](v);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi]()[Pe],o=(i[3]||"")[Xi](),l=i[4]||"";0!=r[Ze](s,o[Pe])&&(t=Gs(e,t,Is+s,o,n,l))}})(),(()=>{for(let e of t[We](ks(F,Os))||[]){const i=e[We](F);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi](),o=i[3]||"";s[Pe]<1||(t=Gs(e,t,Is+1,s,n,o))}})(),(()=>{for(let e of t[We](ks(k,Os))||[]){const i=e[We](k);if(i[Pe]<1)continue;const n=i[1]||"",s=(i[2]||"")[Xi](),o=i[3]||"";s[Pe]<1||(t=Gs(e,t,Is+2,s,n,o))}})(),t}function Ys(t=""){for(let e of t[We](ks(P,Os))||[]){const i=e[We](P);if(i[Pe]<1)continue;const n=i[1]||"",s=i[3]||"",o=Hs("HR");m[Ci](o,"<hr>"),t=t[Ni](e,n+o+s)}return t}function qs(t=""){const e="this.parentElement.nextElementSibling.style.display='block';this.parentElement.style.display='none'",i="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEyMCAxMjAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yNTkyXzMwNDkpIj4KPHBhdGggZD0iTTEyMCA2MEMxMjAgMjYuODYyOSA5My4xMzcxIDAgNjAgMEMyNi44NjI5IDAgMCAyNi44NjI5IDAgNjBDMCA5My4xMzcxIDI2Ljg2MjkgMTIwIDYwIDEyMEM5My4xMzcxIDEyMCAxMjAgOTMuMTM3MSAxMjAgNjBaIiBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIwLjUiLz4KPHBhdGggZD0iTTg0LjM2MzMgNTYuNTgwM0M4Ni45MzAyIDU4LjEzNzYgODYuOTMwMiA2MS44NjI2IDg0LjM2MzMgNjMuNDE5OUw1MS44MjQ4IDgzLjE2MTJDNDkuMTU5MSA4NC43Nzg2IDQ1Ljc1IDgyLjg1OTQgNDUuNzUgNzkuNzQxNFY0MC4yNTg4QzQ1Ljc1IDM3LjE0MDggNDkuMTU5MSAzNS4yMjE2IDUxLjgyNDggMzYuODM4OUw4NC4zNjMzIDU2LjU4MDNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI1OTJfMzA0OSI+CjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPg==";function n(t,n,s,o){return Ps(xs(Hi,[xs(Es,{[Vi]:o,[Oe]:n,[Li]:At},s||n),xs("section.more",[xs("img.cover","https://i.ytimg.com/vi/"+t+"/mqdefault.jpg"),xs("img.icon",{[Un]:e},i)]),xs(Ce,{[Be]:ve,[sn]:"640px",[$i]:"https://www.youtube.com/embed/"+t,frameborder:0,allow:"accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",[oe]:Qe})]))}function s(t,n,s,o){const l=function(t){const e=`https://vimeo.com/api/v2/video/${t}.json`;let i=null;const n=new XMLHttpRequest;n.open("GET",e,!1);try{n.send(),200===n.status?i=JSON.parse(n.responseText)[0].thumbnail_large:console.error("HTTP 錯誤:",n.status)}catch(t){console.error("無法獲取縮圖:",t)}return i}(t);return Ps(xs(Hi,[xs(Es,{[Vi]:o,[Oe]:n,[Li]:At},s||n),xs("section.more",[xs("img.cover",l),xs("img.icon",{[Un]:e},i)]),xs(Ce,{[Be]:ve,[sn]:"640px",[$i]:"https://player.vimeo.com/video/"+t,frameborder:0,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",[oe]:Qe})]))}return(()=>{for(let e of t[We](ks(C,Os))||[]){const i=e[We](C);if(i[Pe]<1)continue;const o=(i[1]||"")[Xi](),l=(i[2]||"")[Xi](),h=(i[4]||"")[Xi](),u=(Ls(l)||"")[Xi](),c=(js(l)||"")[Xi]();if(0!=r[Ze](o[Pe],l[Pe]))if(u[Pe])t=Gs(e,t,le,n(u,l,o,h));else if(c[Pe])t=Gs(e,t,le,s(c,l,o,h));else{const i=xs(Es,{[Vi]:h,[Oe]:l,[Li]:At},o);t=Gs(e,t,Es,i)}}})(),(()=>{for(let e of t[We](ks(et,Os))||[]){if(e[We](j))continue;const i=e[We](et);if(i[Pe]<1)continue;const o=i[1]||"",l=(i[2]||"")[Xi](),r=i[5]||"",h=(Ls(l)||"")[Xi](),u=(js(l)||"")[Xi]();if(!(l[Pe]<1))if(h[Pe])t=Gs(e,t,le,n(h,l),o,r);else if(u[Pe])t=Gs(e,t,le,s(u,l));else{const i=xs(Es,{[Oe]:l,[Li]:At},l);t=Gs(e,t,Es,i,o,r)}}})(),(()=>{for(let e of t[We](ks(A,Os))||[]){if(e[We](j))continue;const i=e[We](A);if(i[Pe]<1)continue;const n=(i[1]||"")+(i[2]||"")+(i[3]||""),s=(i[4]||"")[Xi](),o=i[8]||"";if(s[Pe]<1)continue;const l=xs(Es,{[Oe]:Nt+s,[Li]:At},s);t=Gs(e,t,Es,l,n,o)}})(),t}function Xs(t=""){for(let i of t[We](ks(G,Os))||[])e(i);function e(e){let i;e[Xi]()[Ni](ks(it,Os),Et)[bi](it)[ye](((t,e)=>{const n=t[We](H)||[],s=n[Pe]<1?null:/\d+\./[Bi]((n[2]||"")[Xi]())?ni:Qi,o=(t[We](/\s{4}/g)||[])[Pe];let l=n[Pe]<1?t[Ni](/^\s*([\-\*\+]|\d+\.)?\s*/g,""):(n[3]||"")[Xi]();if(0===d(e)&&null==s)return;0===d(e)&&(i=xs(s));let r=i;function h(t,e){if(/^\[\s*(\x)?\s*\]/[Bi](e)){const i=e[Xi]()[We](/^\[\s*(\x)?\s*\]/);e=e[Ni](/^\[\s*(\x)?\s*\]\s*/,"");const n=null!=i[1];t[$t](xs(Le,[xs(xe,[xs($e,{[Ji]:jt,[Lt]:n?"":null,[Un]:"return false;"}),xs(Di,e)])]))}else t[$t](xs(Le,e))}if(/^\s{0,3}([\-\*\+]|\d+\.)/[Bi](t))h(r,l);else if(/^\s{4,}([\-\*\+]|\d+\.)/[Bi](t)){r=i[ke];for(let t=0;t<o&&(null!=r&&null!=r[Yn]);t++)if(t==o-1&&r[Yn][Zi]()==Le)if(r[ke]instanceof HTMLElement&&(r[ke][Yn][Zi]()==ni||r[ke][Yn][Zi]()==Qi))h(r[ke],l);else if(/^\[\s*(\x)?\s*\]/[Bi](l)){const t=l[Xi]()[We](/^\[\s*(\x)?\s*\]/);l=l[Ni](/^\[\s*(\x)?\s*\]\s*/,"");const e=null!=t[1];r[$t](xs(s,[xs(Le,[xs(xe,[xs($e,{[Ji]:jt,[Lt]:e?"":null,[Un]:"return false;"}),xs(Di,l)])])]))}else r[$t](xs(s,[xs(Le,l)]));else r=r[ke][ke]}else{if(null==i)return;for(r=i[ke];null!=r[ke];)r=r[ke];if(r instanceof HTMLElement);else if(/^\{\{(h\d|img|pre)/[Bi](r[Mn]||""));else{for(;r[xn][Yn][Zi]()!=Le;)r=r[xn];r[xn][$t](xs(kt))}r[xn][Sn]+=l}})),null!=i&&(t=Gs(e,t,He,i))}return t}function Js(t=""){for(let e of t[We](ks(L,Os))||[]){const i=e[We](L);if(i[Pe]<1)continue;const n=(i[1]||"")[Xi](),s=(i[2]||"")[Xi](),o=(i[4]||"")[Xi]();let l=(i[6]||"")[Xi](),r=(i[7]||"")[Xi](),h=(i[9]||"")[Xi]();if(s[Pe]<1)continue;l[Pe]&&!tt[Bi](l)&&(l+=gi),r[Pe]&&!tt[Bi](r)&&(r+=gi);const u=J[Bi](s),c=Q[Bi](s);let a;a=u?xs(en,{[Xt]:"",[Vi]:o,[sn]:l||null,[Ee]:r||null},[xs(Si,{[Ji]:p},s)]):c?xs(en,{[Xt]:"",[Vi]:o,[sn]:l||null,[Ee]:r||null},[xs(Si,{[Ji]:f},s)]):xs(we,{[bt]:n,[Vi]:o,[sn]:l||null,[Ee]:r||null,[de]:h[Pe]?h:null},s),null!=a&&(t=Gs(e,t,we,a))}return t}function Qs(t=""){for(let e of t[We](ks(b,Os))||[]){const i=e[We](b);if(i[Pe]<1)continue;const n=null==i[2][We](D),s=n?"":(i[1]||"")[Xi]()[Zi](),o=i[2]||"",l=-1!=g[wn](s),r=o[Ni](D,"")[bi](nt);let h;h=n?xs(Wt+"."+di,Fs(o)):xs(ui+"."+di,{[Xe]:s},[xs(Wt+(l?"."+Fe+"-"+s:""),{[Xe]:s},[Ks(r)]),xs(vt+"."+Jt)]),t=Gs(e,t,n?Wt:ui,h)}return t}function to(t=""){for(let e of t[We](ks($,Os))||[]){const i=e[We]($);if(i[Pe]<1)continue;const n=i[2]||"",s=e[Ni](D,"")[bi](nt),o=xs(ui+"."+di,[xs(Wt,[Ks(s)]),xs(vt+"."+Jt)]);t=Gs(e,t,ui,o,n)}return t}function eo(t=""){let e;function i(t){const e=t[We](/^([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*)+/)||[],i=t[We](/[\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*$/)||[];return[e[0]||"",i[0]||""]}function n(t){const i=t[Xi]()[bi](nt);e=xs(Hi,[xs(vi,[xs(Wi),xs(ji)])]);let n=!0,o=[],l=0;for(let t in i){const r=i[t],h=r[We](/((\s*)\|?((?:.*?\|)*.*)\|?)+/)||[];if(h[Pe]<1)continue;const u=(h[3]||"")[Xi]()[Ni](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*$/,""),c=/^[\u0020\u00A0\u0009]*\|?([\u0020\u00A0\u0009]*[\-\:]+[\u0020\u00A0\u0009]*\|?)+[\u0020\u00A0\u0009]*$/[Bi](r),a=u[bi](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*/);if(0===d(t)&&(l=a[Pe]),c){for(let t of r[Ni](/^([\u0020\u00A0\u0009]*\|)|(\|[\u0020\u00A0\u0009]*)$/g,"")[bi](/\|/))/^\-+\:$/[Bi](t[Xi]())?o.push("right"):/^\:\-+\:$/[Bi](t[Xi]())?o.push("center"):o.push("left");const t=[...e.firstChild.firstChild.childNodes[0].childNodes];for(let e in t)t[e].setAttribute("align",o[e]);n=!1}else s(n,a,l,o)}}function s(t=!0,i=[],n=0,s=[]){const o=t?e.firstChild.firstChild:e.firstChild[ke],l=xs(qi);for(let e=0;e<n;e++)l[$t](xs(t?Ki:Gi,{align:s[e]},i[e]||""));o[$t](l)}return(()=>{const s=/([^\n]*)(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)[\u0020\u00A0\u0009]*\|([\u0020\u00A0\u0009\-\:]*\|)+\n(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)*/;for(let o of t[We](ks(s,Os))||[])B[Bi](o)||(n(o),t=Gs(o,t,vi,Ps(e),...i(o)))})(),(()=>{const s=/(([^\n]+\|)*[^\n]+\n)(([\u0020\u00A0\u0009\-\:]+\|)*[\u0020\u00A0\u0009\-\:]+\n)(?:([^\n]+\|)*[^\n]+\n)*/;for(let o of t[We](ks(s,Os))||[])n(o),t=Gs(o,t,vi,Ps(e),...i(o))})(),t}function io(t=""){return t=t[Ni](/\n[\u0020\u00A0\u0009]*/g,"\n"),(()=>{for(let e of t[We](ks(X,Os))||[]){const i=e[We](X);if(i[Pe]<1)continue;const n=i[2]||"",s=(i[0]||"")[Xi]();if(s[Pe]){const i=xs(Hi,[xs("p",s)]),o=Hs("p");m[Ci](o,Ps(i)),t=t[Ni](e,n+o)}}})(),(()=>{for(let e of t[We](ks(q,Os))||[]){const i=e[We](q);if(i[Pe]<1)continue;const n=i[2]||"",s=(i[0]||"")[Xi]();if(s[Pe]){const i=xs(Hi,[xs("p",s)]),o=Hs("p");m[Ci](o,Ps(i)),t=t[Ni](e,n+o)}}})(),t}function no(t=""){t=t[Ni](/^\n*|\n*$/g,"");const e=/(<br>)/g;return e[Bi](t)?t[Ni](e,"\n"):t}function so(t="",e="",i=At){t=t[Ni](st,Qn)[Ni](ot,ts)[Ni](lt,es)[Ni](rt,is)[Ni](ht,ns)[Ni](ut,ss)[Ni](ct,os)[Ni](at,ls)[Ni](dt,rs)[Ni](ft,hs)[Ni](pt,us)[Ni](gt,cs)[Ni](yt,as)[Ni](_t,ds)[Ni](mt,fs)[Ni](/[\u00A0\u0020]/g," ");let n=[Qs,zs,Js,qs,Ws,Zs,Ys,eo,Bs,Xs,to,Vs,no,io];for(let s of n)t=s(t,e,i);for(;/\{{2}\w*\-*\w{64}\}{2}/[Bi](t);)for(let e of t[We](/\{{2}\w*\-*\w{64}\}{2}/g)||[]){let i=ks(e);t=t[Ni](i,m[me](e))}const s=["h1","h2","h3","h4","h5","h6",vi,ni,Qi,ui,xt,"details","hr",xe];for(let e of s){const i=ks(`[ \t]*\\n[ \t]*<${e}`,Os),n=ks(`${e}>[ \t]*\\n[ \t]*`,Os);t=t[Ni](i,`<${e}`)[Ni](n,`${e}>`)}return t=t[Ni](ks(Qn,Os),"!")[Ni](ks(ts,Os),"&grave")[Ni](ks(es,Os),"#")[Ni](ks(is,Os),"*")[Ni](ks(ns,Os),"_")[Ni](ks(ss,Os),"˜")[Ni](ks(os,Os),"^")[Ni](ks(ls,Os),"&equal;")[Ni](ks(rs,Os),ps)[Ni](ks(hs,Os),gs)[Ni](ks(us,Os),"[")[Ni](ks(cs,Os),"]")[Ni](ks(as,Os),"(")[Ni](ks(ds,Os),")")[Ni](ks(fs,Os),"$")[Ni](/([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*){2,}/g,"<br>")}document.addEventListener("DOMContentLoaded",(t=>{!function(...t){const i=xs(Ai,`${on}.log.${ln}(${rn} 0, ${JSON.stringify(t)});`);e[Ft][$t](i),i[Ti]()}("%c"+Us,"line-height: 1.75rem; font-size: 0.875rem;")}));t.PDMarkdownEditor=t.MDEditor=class{#t=!1;#e="";#i=!0;#n;#s;#o;#l;#r;#h;constructor(s={}){this.#e=(s.defaultContent||"")[Xi]();const o=s[Ri]||{},l=i(o[Ye]||Ut)[Xi]()[Zi](),r=n(null==o.fill?1:o.fill)?1:0,h=i(o[ge]||"")[Xi]()||"'Roboto Mono', monospace",u=n(null==o.showRow?1:o.showRow)?1:0,c=o.placeholder||{},a=i(c.text||"Type here ..."),d=i(c.color||"#bfbfbf"),f=o.focus||{},p=i(f.backgroundColor||"#0000ff1a"),g=i(f.color||"#0000ffff");e[Ne][$t](xs(Ri,`\n.${li}{font-family: ${h}}\n.${li}>div{font-size: 0.75rem}\n.${li}>div[data-focus="1"]{background-color:${p};color:${g};caret-color:${g}}\n.${li}>div:nth-last-child(2):empty::after{position:absolute;top:0;content:"${a}";color:${d} !important;caret-color:${g}}`));const _=document[un](s[Ie]);typeof s[Ie]===Mi&&null!=_?(this[Ft]=_,_.classList.add(li)):this[Ft]=xs(Ii+"."+li),this[Ft][ne][Ye]=y&&l===Ut||l===ie?ie:"",this[Ft][ne].fill=r,this[Ft][ne].row=u,this[Ft][ne].pin={1:1,0:0,[!0]:1,[!1]:0}[s.tabPin]||0,this[Ft][ne].wrap={1:1,0:0,[!0]:1,[!1]:0}[s.wrap]||1,this.#h=new lo(this[Ft]);const m=this[Ft];if(this.#i=n(null==s.hotKey||s.hotKey),null==this.#s&&s[Pn]&&(this.#s=t[dn]("beforeunload",(t=>{t[vn]()}))),null!=s[Ye]){let t=i(s[Ye]||Ut)[Xi]()[Zi]();this[Ft][ne][Ye]=y&&t===Ut||t===ie?ie:""}if(null!=s.fillMode){let t=n(s.fillMode)?1:0;this[Ft][ne].fill=t}if(null!=s.showRow){let t=n(s.showRow)?1:0;this[Ft][ne].row=t}if(null!=s[ge]){let t=i(s[ge])[Xi]()||"'Roboto Mono', monospace";e[Ne][$t](xs(Ri,`.${li}{font-family: ${t}}`))}let T=i(s[Nn]||"")[Xi]()||p,N=i(s[An]||"")[Xi]()||g;e[Ne][$t](xs(Ri,`.${li}>div[data-focus="1"]{background-color:${T};color:${N}`));let E=i(s[hi]||"")[Xi]()||a,A=i(s[kn]||"")[Xi]()||d;e[Ne][$t](xs(Ri,`.${li}>div:nth-last-child(1):empty::after{content:"${E}";color:${A}}`)),m.onmousedown=m.onmouseup=t=>{if(t.target[Yn][Zi]()!==le)return t[vn](),!1;this.#u()},m.ontouchend=t=>{this.#u()},m.oncut=t=>(this.#c(),this.#a((e=>{t[Kt][Kn]("text/plain",this.#r.body),m[Ht][this.#r.start][Sn]=Fs(this.#r.left+this.#r.right),this.#d(),this.#f(m[Ht][this.#r.start],this.#r.left[Pe])})),this.#p(!0),!1),m.onpaste=e=>(this.#c(),this.#a((i=>{const n=((e[Kt]||t[Kt])[On]("Text")||"")[bi](/\n/),s=n[Pe],o=s-1,l=s>1,r=this.#r.start+o,h=`${l?"":this.#r.left}${n[o]}`[Pe],u=n[0],c=l?"":this.#r.right;if(m[Ht][this.#r.start][Dn]=this.#r.left+u+c,this.#d(),l)for(let t=1;t<s;t++){const e=n[t],i=xs(le,Fs(`${e}${t===o?this.#r.right:""}`));i[Un]=t=>this.#u(),m[bn](i,m[Ht][this.#r.start+t])}this.#f(m[Ht][r],h,h)})),this.#p(!0),!1),m.oncompositionstart=t=>{this.#t=!0},m.oncompositionend=t=>{this.#t=!1},m.oninput=t=>{let e,i;if("deleteCompositionText"===t.inputType){e=this.#l.index,i=this.#l.offset;for(let t of[...m[Ht]]){if(t[$n][Zi]()===le||t[$n][Zi]()===Ii)continue;t[Ti]();let n=xs(le,{"data-index":e+1,index:e+1});n[Un]=t=>this.#u(),m[bn](n,m[Ht][e]),this.#f(m[Ht][e],i)}}t.inputType;let n=this.#l.isMulti,s=this.#l.multi.left,o=t.data,l=this.#l.multi.right,r=this.#l.multi.start.offset;this.#u(),n&&(this.#n[Dn]=s+o+l,this.#f(this.#n,r+1)),this.#p(!0,300)},m.onkeydown=t=>{const e=t[Ve]||t[ee],i=t.shiftKey,n=/^a$/i[Bi](t.key),o=/^b$/i[Bi](t.key),l=/^i$/i[Bi](t.key),r=/^s$/i[Bi](t.key),h=/^u$/i[Bi](t.key),u=/^m$/i[Bi](t.key),c=/^z$/i[Bi](t.key),a=/^r$/i[Bi](t.key),d=/^k$/i[Bi](t.key),f=/^f5$/i[Bi](t.key),p="ArrowUp"===t.key,g="ArrowDown"===t.key;if(this.#u(null,this.#i&&e&&n),"Meta"===t.key||"Control"===t.key)return!1;if(this.#i&&e&&i&&c)return this.goForward(),!1;if(this.#i&&e&&c)return this.goBack(),!1;if(this.#i&&(e&&a||f)&&s[Pn])return!1;if(this.#i&&e&&o)return this.#g(t,"**",As),!1;if(this.#i&&e&&l)return this.#g(t,"*",Cs),!1;if(this.#i&&e&&r)return this.#g(t,"~~",ws),!1;if(this.#i&&e&&h)return this.#g(t,Ss,Ss),!1;if(this.#i&&e&&u)return this.#g(t,"==",Ke),!1;if(this.#i&&e&&p)return this.#g(t,"^",ki),!1;if(this.#i&&e&&g)return this.#g(t,"~",xi),!1;if(this.#i&&e&&d)return this.#g(t,"`",Wt),!1;if(this.#i&&e&&n){const t=this[Ft].firstElementChild,e=this.#y,i=window.getSelection(),n=document.createRange();if(null==t.firstChild)return;return n.setStart(t.firstChild,0),n.setEnd(e.firstChild,e.firstChild.length),i.removeAllRanges(),i.addRange(n),!1}return"Tab"===t.key?this.#_(t):"Enter"===t.key?this.#m(t):"Backspace"===t.key?this.#T(t):void 0},m.onkeyup=t=>{"Meta"!==t.key&&"Control"!==t.key&&(m[Ht]&&1===m[Ht][Pe]&&m.firstElementChild[$n][Zi]()!==le&&this[De](null,!0,!1),this.#u(),/^(Arrow(Up|Left|Down|Right)|CapsLock|Shift|Control|Alt|Clear|Escape|F\d+)$/[Bi](t.key)||this[nn]&&this[nn][De]())},m.onblur=t=>{this.#c()},this.init()}get viewer(){return this.#o}set viewer(t){this.#o=t}#N(){const t=Ii+"."+$e+"-"+vt,e=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.wrap;let i=this[Ft][yi](t);if(i)return;const n=[{[Xe]:"format_bold",[Vi]:"添加粗體",[Ei]:t=>this.addBold(t)},{[Xe]:"format_italic",[Vi]:"添加斜體",[Ei]:t=>this.addItalic(t)},{[Xe]:"strikethrough_s",[Vi]:"添加刪除線",[Ei]:t=>this.addStrikethrough(t)},{[Xe]:"format_underlined",[Vi]:"添加底線",[Ei]:t=>this.addUnderline(t)},{[Xe]:"ink_marker",[Vi]:"添加高亮",[Ei]:t=>this.addMarker(t)},{[Xe]:"superscript",[Vi]:"添加上標",[Ei]:t=>this.addSup(t)},{[Xe]:"subscript",[Vi]:"添加下標",[Ei]:t=>this.addSub(t)},{[Xe]:"format_quote",[Vi]:"添加引用",[Ei]:t=>this.addBlockquote(t)},{[Xe]:"format_list_bulleted",[Vi]:"添加無序列表",[Ei]:t=>this.addUl(t)},{[Xe]:"format_list_numbered",[Vi]:"添加有序列表",[Ei]:t=>this.addOl(t)},{[Xe]:"code",[Vi]:"添加代碼塊",[Ei]:t=>this.addCode(t)},{[Xe]:"link",[Vi]:"添加連結",[Ei]:t=>this.addLink("連結文字","連結")},{[Xe]:"landscape",[Vi]:"添加圖片",[Ei]:t=>this.addImage("圖片連結","圖片名稱")},{},{[Xe]:e?"keep_off":"keep",[Vi]:"釘選面板",[Ei]:t=>this.#E(t)},{[Xe]:"wrap_text",[Vi]:"換行",[Ei]:t=>this.#A(t)}].map((t=>{if(null==t[Xe]){return xs("span")}let e=xs("span.material-symbols-outlined",{title:t.title,name:t.name},t.name);return e[Un]=t.click,e}));i=xs(t,n),i[qt]=!1,i.dataset.hide=1,this[Ft][$t](i)}#E(t){const e=t.target,i=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.pin=Math.abs(i-1),e[Dn]=i?"keep":"keep_off",e[Vi]=i?"釘選面板":"取消釘選"}#A(t){const e=parseInt(this[Ft].dataset.wrap||1);this[Ft].dataset.wrap=Math.abs(e-1)}#O(t,e){this.#N();const i=Ii+"."+$e+"-"+vt;let n=this[Ft][yi](i);t[ne][pe]=1,this[Ft][bn](n,this[Ft][Ht][e+1]),n[ne][Ae]=0,this.#n=t}#c(){if(!this.#n)return;const t=Ii+"."+$e+"-"+vt,e=this[Ft][yi](t);this.#n[ne][pe]=0,null!=e&&(this[Ft][$t](e),e[ne][Ae]=1),this.#n=null}#u(e,i=!1){this.#c(),this.#l=new oo(this[Ft],e,i);const n=t[In]();if(n.rangeCount<1)return;const s=n.getRangeAt(0);let o=e||vs(s.commonAncestorContainer);null!=o&&this.#O(o,this.#l.index||this.#l.multi.end.index)}#a(t){this.#r=new ro(this[Ft],this.#l),t()}#d(){this.#r.removeRows()}#f(i,n,s){const o=this[Ft][Ln](le);for(let t in o){const e=o[t];isNaN(d(t))||(e[ne][Se]=d(t)+1)}t[In]?t[In]()[ue]?t[In]()[ue]():t[In]()[jn]&&t[In]()[jn]():e[In]&&e[In]()[ue]();let l=t[In](),r=e.createRange(),h=n??i[Gt][0][Pe],u=s??h;r.selectNode(i),i[Gt][0]?(r[Vn](i[Gt][0],h>i[Gt][0][Pe]?i[Gt][0][Pe]:h),r[Wn](i[Gt][0],u>i[Gt][0][Pe]?i[Gt][0][Pe]:u)):(r[Vn](i,0),r[Wn](i,0)),l.addRange(r),this.#u(i)}#_(t){if(9!==t.keyCode)return;const e=this[Ft];return this.#a((t=>{e[Ht][this.#r.start][Sn]=Fs(this.#r.left+" "+this.#r.right),this.#d();const i=this.#r.left[Pe]+4;this.#f(e[Ht][this.#r.start],i)})),!1}#m(t){if(13!==t.keyCode)return;const e=this[Ft];return this.#a((t=>{e[Ht][this.#r.start][Sn]=Fs(this.#r.left),this.#d(),e[xn][xn][Bn]+=28;const i=xs(le,Fs(this.#r.right));i[Un]=t=>this.#u(),e[bn](i,e[Ht][this.#r.start+1]),this.#f(e[Ht][this.#r.start+1],0)})),!1}#T(t){if(8!==t.keyCode)return!1;const e=this[Ft];return this.#a((t=>{if(this.#l.isMulti||this.#l.isSingle)e[Ht][this.#r.start][Sn]=Fs(this.#r.left+this.#r.right),this.#d(),this.#f(e[Ht][this.#r.start],this.#r.left[Pe]);else if(this.#r.left[Pe]){const t=this.#r.left[wi](0,this.#r.left[Pe]-1);e[Ht][this.#r.start][Sn]=Fs(t+this.#r.right),this.#f(e[Ht][this.#r.start],t[Pe])}else{if(0===this.#r.start)return;e[Ht][this.#r.start-1][Sn]+=Fs(this.#r.right),e[Ht][this.#r.start][Ti](),e[xn][xn][Bn]-=28;const t=e[Ht][this.#r.start-1][Dn][Pe]-this.#r.right[Pe];this.#f(e[Ht][this.#r.start-1],t)}})),!1}#I(t){t=Fs(t);let e=this.#y;const i=xs(le,t);i[Un]=t=>this.#u(),e[Dn][Xi]()[Pe]<1?e[Sn]=t:this[Ft][$t](i),this[Ft][Bn]=this[Ft][Gn]}get#y(){let t=this[Ft].lastElementChild;return"SECTION"===t[$n]&&(t=t.previousElementSibling),t}#C(t,e){t=Fs(t);const i=this[Ft][Ht][this.#r.start];i[Sn]=t,this.#d(),this.#f(i,e),this.#w()}#g(t,e="",i=""){const n=t[Ve]||t[ee]||e===i;this.#l.check?this.#a((t=>{const s=this.#r.left,o=this.#r.body,l=this.#r.right,r=`${s}${n?`<${i}>`:e}${o}${n?`</${i}>`:e}${l}`[Ni](/\n/g,""),h=r[Pe]-l[Pe]-(n?i[Pe]+3:e[Pe]);this.#C(r,h),this.#p(!0)})):(this.#I(n?`<${i}></${i}>`:`${e}${e}`),this.#f(this.#y,n?i[Pe]+3:e[Pe]),this.#p(!0))}#S(t){this.#l.check?this.#a((e=>{const i=this.#r.start,n=this.#r.end;for(let e=i;e<=n;e++){const i=this[Ft][Ht][e];i[Sn]=Fs(`${t} ${i[Dn]}`)}const s=this[Ft][Ht][n],o=s[Dn][Pe];this.#f(s,o),this.#p(!0),this.#w()})):(this.#I(t),this.#f(this.#y,t[Pe]+1),this.#p(!0))}#D(t="",e="",i){if(this.#l.check)return void this.#a((n=>{const s=this.#r.left,o=this.#r.right,l=`${s}${null==i?"":"!"}[${t}](${e}) ${o}`[Ni](/\n/g,""),r=l[Pe]-o[Pe]-1;this.#C(l,r),this.#p(!0)}));this.#I(`${null==i?"":"!"}[${t}](${e})`);const n=this.#y,s=n[Dn][Pe];this.#f(n,s),this.#p(!0),this.#w()}#p(t,e){this.#u(),this.#h.add(this.#l,t,e)}#b(t,i){const n=new a([i],{[Ji]:"application/octet-stream"}),s=h.createObjectURL(n),o=xs(Es,{href:s,download:`NanoMD-${c.now()}.${t}`});e[Ft][$t](o),o[Ei]()}#w(){null!=this[nn]&&this[nn][De]()}init(t,e=!0,n=!0){if(this[Ft][qt]=!0,this[Ft][Sn]=null,(t=i(t||this.#e)[Xi]())[Pe]){this.#e="";const i=t[Ni](/\n*$/,"")[bi](/\n/);for(let t=0;t<i.length;t++){const e=i[t],n=xs(le,{"data-index":t+1},Fs(e));n[Un]=t=>this.#u(),this[Ft][$t](n)}if(this.#N(),!e)return}else{const t=xs(le,{"data-index":1});if(t[Un]=t=>this.#u(),this[Ft][$t](t),this.#N(),!e)return}n&&this.#p(!0)}changeMode(t=je){this[Ft][ne][Ye]=t}goBack(){this.#c();const t=this.#h.undo();null!=t&&(this[De](t[Yt][Pe]<1?null:t[Yt],!1,!1),this.#f(this[Ft][Ht][t[Se]],t[ii]),this.#w())}goForward(){const t=this.#h.redo();null!=t&&(this.init(t[Yt],!1,!1),this.#f(this[Ft][Ht][t[Se]],t[ii]),this.#w())}addHeading(t,e){const i=t[Ve]||t[ee],n=`${new Array(e).fill("#")[Re]("")}${0===e?"":" "}`;this.#l.check?this.#a((t=>{const s=this.#r.left[Ni](/^\s*\#*\s*/,""),o=this.#r.body,l=this.#r.right,r=`${i?`<h${e}>`:n}${s}${o}${l}${i?`</h${e}>`:""}`[Ni](/\n/g,""),h=r[Pe]-(i?5:0);this.#C(r,h),this.#p(!0)})):(this.#I(i?`<h${e}></h${e}>`:n),this.#f(this.#y,n[Pe]-(i?5:0)),this.#p(!0))}addBold(t){this.#g(t,"**",As)}addItalic(t){this.#g(t,"*",Cs)}addStrikethrough(t){this.#g(t,"~~",ws)}addUnderline(t){this.#g(t,Ss,Ss)}addMarker(t){this.#g(t,"==",Ke)}addSup(t){this.#g(t,"^",ki)}addSub(t){this.#g(t,"~",xi)}addBlockquote(){this.#l.check?this.#a((t=>{for(let t=this.#r.start;t<=this.#r.end;t++){const e=this[Ft][Ht][t];e[Sn]=Fs(`> ${e[Dn]}`)}const e=this[Ft][Ht][this.#r.end],i=e[Dn][Pe];this.#f(e,i),this.#p(!0),this.#w()})):(this.#I("> "),this.#f(this.#y,2),this.#p(!0))}addUl(){this.#S("-")}addOl(){this.#S("1.")}addCode(t){this.#l.check?this.#a((e=>{if(this.#l.isMulti){const t=xs(le,"```"),e=xs(le,"```");t[Un]=e[Un]=t=>this.#u(),this[Ft][bn](t,this[Ft][Ht][this.#r.end+1]),this[Ft][bn](e,this[Ft][Ht][this.#r.start]),this.#f(this[Ft][Ht][this.#r.end+1],this[Ft][Ht][this.#r.end+1][Dn][Pe]),this.#p(!0),this.#w()}else this.#g(t,"`",Wt)})):this.#g(t,"`",Wt)}addLink(t="",e=""){e[Xi]()[Pe]<1&&t[Xi]()[Pe]<1||this.#D(t,e)}addImage(t="",e="",i=""){t[Xi]()[Pe]<1||this.#D(i,t,e)}clear(){this.init(),this.#w()}downloadMd(){this.#b("md",this.getTxt()[Xi]())}downloadHtml(){this.#b("html",`<!DOCTYPE html> <html lang="zh-hant"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Markdown Editor</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@latest/dist/NanoMD.css"> <script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"><\/script> <style> body { display: flex; justify-content: center; align-item: flex-start; width: 100%; height: 100%; overflow: scroll; } * { -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; touch-action: manipulation; box-sizing: border-box;} body { background-color: ghostwhite; } *::-webkit-scrollbar { display: none; } body>section { padding: 1rem !important; width: 100%; background-color: #fff; box-sizing: border-box; box-shadow: 0 0.25rem 0.5rem #0000000d; transition: 0.3s; } @media screen and (min-width: 640px) { body>section { padding: 3rem !important; max-width: 800px; } } </style> </head> <body><section class="pd-md-viewer">${so(`\n${this.getTxt()}\n`)}</section></body> </html><!DOCTYPE html>`)}openfile(t){if(null==t)return void alert("請選擇檔案");const e=new FileReader;e.readAsText(t),e.onload=()=>{this[Ft][Sn]=null;const t=e.result[Xi]()[Ni](/[\u0020\u00A0]/g," ");this.init(Fs(t),!1),this.#w()}}getTxt(){return[...this[Ft][Ht]].map((t=>"SECTION"===t[$n]?"":t[Dn]))[Re]("\n")}};class oo{check=!1;isMulti=!1;isSingle=!0;index;offset;left;right;selection={};multi={};constructor(e,i,s=!1){const o=t[In]();if(o.rangeCount<1)return;const l=o.getRangeAt(0);let r=i||vs(l.commonAncestorContainer);if(null==r)return;let h,u,c="";if(s){r=e;const t=r[Ln](le);for(let e=0;e<t.length;e++){const i=t[e];c+=(0==e?"":"\n")+i[Dn]}h=0,u=t[Pe]-1}else l.cloneContents()[Gt][ye](((t,e)=>{c+=(0==e?"":"\n")+t[Dn]})),r===e&&(h=d(vs(o.baseNode)[ne][Se])-1,u=d(vs(o.focusNode)[ne][Se])-1);var a=n(r===e),f=!a&&!s&&n(o[Rt]!==o[En]),p=!!s||n(o[En]>o[Rt]),g=!!s||n(h<u);this.check=!0,this.index=a?null:d(r[ne][Se])-1,this.offset=a||f?null:d(o[En]),this.left=a||f?null:r[Dn][wi](0,o[En]),this.right=a||f?null:r[Dn][wi](o[En],r[Dn][Pe]),this.isSingle=f,this.isMulti=a;const y=f?p?o[Rt]:o[En]:null,_=f?p?o[En]:o[Rt]:null;this.selection={body:f?o.toString():c,start:y,end:_,left:f?r[Dn][wi](0,y):null,right:f?r[Dn][wi](_,r[Dn][Pe]):null};const m=a?g?h:u:null,T=s?0:a?g?o[Rt]:o[En]:null,N=a?g?u:h:null,E=s?e[Ht][u][Dn][Pe]:a?g?o[En]:o[Rt]:null;this.multi={start:{index:m,offset:T},end:{index:N,offset:E},left:s?"":a?r[Ht][m][Dn][wi](0,T):null,right:s?"":a?r[Ht][N][Dn][wi](E,r[Dn][Pe]):null}}}class lo{#$;#M;#U=[];#R=[];constructor(t){this.#$=t}clearTimer(){this.clearTimer(this.#M)}add(t,e,i){null==i?this.#x(t,e):this.#M=setTimeout((i=>{this.#x(t,e)}),i)}#x(t,e){this.#U[pi]({[Se]:t[Se],[ii]:t[ii],[Yt]:[...this.#$[Ht]].map((t=>t[Dn]))[Re]("\n")}),e&&(this.#R=[])}undo(){const t=this.#U[(this.#U||[])[Pe]-2];if(null==t)return;let e=this.#U.pop();return this.#R[pi](e),t}redo(){const t=this.#R.pop();if(null!=t)return this.#U[pi](t),t}}class ro{editor;body;start;end;left;right;constructor(t,e){let i,n,s,o;this.editor=t,e.isMulti?(i=e.multi.start.index,n=e.multi.end.index,s=e.multi.left,o=e.multi.right):e.isSingle?(i=e.index,n=e.index,s=e.selection.left,o=e.selection.right):null!==e.index&&null!==e.offset&&(i=e.index,n=e.index,s=e.left,o=e.right),this.body=e.selection.body,this.start=d(i),this.end=d(n),this.left=s[Ni](/</g,"<")[Ni](/>/g,">")[Ni](/ /g," "),this.right=o[Ni](/</g,"<")[Ni](/>/g,">")[Ni](/ /g," ")}removeRows(){for(let t=this.end;t>this.start;t--)this.editor[Ht][t][Ti]()}}class ho{tag="";props={};children=[];data=null;constructor(t){if(t[Yn][Zi]()===Ai){let i=!1;for(const n of e[Ne][Ln](Ai)||[])if(null!=t[$i]&&n[$i]===t[$i]||null!=t[zi]&&n[zi]===t[zi]){i=!0;break}i||e[Ne][$t](t),this[Pi]=Ai}this[Pi]=t[Yn][Zi](),this[ci]=[...t.attributes].reduce(((t,e)=>(t[e.name]=e.value.trim(),t)),{}),this[Ht]=function(t){return s[_e](t[Gt]).filter((t=>t[St]===u[wt]||t[St]===u[Ct]&&t[zi]&&t[zi][Xi]()[Pe]>0))}(t)[ze]((t=>t.nodeType===Node[wt]?new ho(t):t[zi]||""))}getPatches(t){return this.#F(t,this)}#F(t,e,i=[]){if(null==t&&e)return[{[Ji]:Ns.create,[Se]:i,[hn]:e}];if(t&&!e)return[{[Ji]:Ns.remove,[Se]:i}];if(!t&&!e)return[];if(t.tag!==e.tag)return[{[Ji]:Ns[Ni],[Se]:i,[hn]:e}];const n=[];return n[pi](...this.#k(t,e,i)),n[pi](...this.#v(t,e,i)),n}#k(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],s=t[ci]||{},l=o[It](s)[Pe],r=e[ci]||{},h=o[It](r)[Pe];if(h>0)for(let t in r){const s=r[t];n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,value:s,[Se]:i})}if(l>0){if(h<1)for(let t in s)n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,[tn]:null,[Se]:i});for(let t in r)h>0&&!(t in r)&&n[pi]({[Ji]:Ns.prop,[hn]:e,key:t,[tn]:null,[Se]:i})}return n}#v(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],o=s[Ue](t[Ht])?t[Ht]:[],l=s[Ue](e[Ht])?e[Ht]:[],h=r.max(o[Pe],l[Pe]);for(let t=0;t<h;t++){const s=o[t],r=l[t],h=i.concat(t);if("string"==typeof s&&"string"==typeof r){if(s===r)continue;n[pi]({[Ji]:Ns.text,[hn]:e,[tn]:r,[Se]:h})}else null==s?n[pi]({[Ji]:Ns.append,[hn]:r,[Se]:h}):null==r?n[pi]({[Ji]:Ns.remove,index:h}):n[pi](...this.#F(s,r,h))}return n}}t.PDMarkdownViewer=t.MDViewer=class{body;vbody;#P;#L="";#j=300;#G=0;#H;#B;#$;constructor(t={}){if((ce in t||ui in t)&&(this.#L=String(t[ce]||t[ui]||"")[Xi]()),Ri in t){t[Ri]}const s=t[Ri]||{},o=i(s[Ye]||Ut)[Xi]()[Zi](),l=n(null==s.fill?1:s.fill)?1:0,r=i(s[ge]||"")[Xi]()||"'Noto Sans TC', sans-serif",h=t.sync||{};this.#j=d(null==h[se]?300:h[se])||300,this.#G=n(h[Oi]||0)?1:0,this[re]=h[re]instanceof PDMarkdownEditor?h[re]:null,e[Ne][$t](xs(Ri,`.${ri}{font-family: ${r}}`));const u=document[un](t[Ie]);typeof t[Ie]===Mi&&null!=u?(this[Ft]=u,u.classList.add(ri)):this[Ft]=xs(Ii+"."+ri),this[Ft][ne][Ye]=y&&o===Ut||o===ie?ie:"",this[Ft][ne].fill=l;const c=t.hashtag||{};if(this.#H=i(c.path||"")[Xi](),this.#B=i(c[Li]||"")[Xi](),null!=t.fillMode){let e=n(t.fillMode)?1:0;this[Ft][ne].fill=e}if(null!=t[se]&&(this.#j=d(t[se])||300),null!=t[Hn]&&(this.#G=n(t[Hn])?1:0),null!=t[ge]){let n=i(t[ge])[Xi]()||"'Noto Sans TC', sans-serif";e[Ne][$t](xs(Ri,`.${ri}{font-family: ${n}}`))}null!=t[qn]&&(this.#H=i(t[qn]||"")[Xi]()),null!=t[Xn]&&(this.#B=i(t[Xn]||"")[Xi]()),this.vbody=new ho(this[Ft]),this.init()}get editor(){return this.#$}set editor(t){this.#$&&(this.#$[Ft][Rn]=null),null!=t&&(this.#$=t,this.#$.viewer=this,this.#G&&null!=this.#$&&(this.#$[Ft][Rn]=t=>{this[Ft][Bn]+=t.deltaY}))}#z(){if(null==this.#$)return"";const t=[...this.#$[Ft][Ln](le)];let e="";for(let n of t){var i=n[Dn][Ni](/[\u00A0\u0020]/g," ");i[Xi]()[Pe]<1?e+="\n":e+=i+"\n"}return e[Xi]()}clear(){let t=this[Ft].cloneNode(!0);t[Sn]="";let e=new ho(t);this[Ft][Sn]="",this.vbody=e}init(e=""){let i=this.#L,n=this[Ft][Bn];t[zt](this.#P),this.#P=t[Zn]((()=>{if(t[zt](this.#P),i&&this[Ft][Sn]&&i===this[Ft][Sn])return;let o=e||this.#z()||i;o=so(`\n${o}\n`,this.#H,this.#B);let l=this[Ft].cloneNode(!0);l[Sn]=o;let r=new ho(l);const h=r.getPatches(this.vbody);s[Ue](h)&&this.#K(this[Ft],h),this.vbody=r;for(let e of[...this[Ft][Ln](vt+"."+Jt)])e[Un]=async e=>{t[zt](Rs);const i=e[Li][xn],n=i[gn],s=i[Ht][0][Dn];try{await navigator.clipboard.writeText(s),n[Dt](Fi),Rs=t[Zn]((t=>{n[Ti](Fi)}),1e3)}catch(t){console[ae](t),n[Dt](ae)}};let u=setInterval((()=>{null!=PR&&(clearInterval(u),this[Ft][Bn]=n,PR.prettyPrint())}),50)}),this.#j)}changeMode(t=je){this[Ft][ne][Ye]=t}#K(t,e){if(null!=t&&s[Ue](e)){this.#W(t,e);for(const i of e){const{index:e}=i,n=l.parse(l.stringify(e||[]));let s;i.type===Ns.append&&(s=n?.pop());const o=n?this.#V(t,n):t;o&&(i.type===Ns.create&&hn in i?this.#Z(o,i):i.type===Ns.replace&&hn in i&&null!=o[Fn]?this.#Y(o,i):i.type===Ns.append&&hn in i&&null!=s?this.#q(o,i,s):i.type===Ns.prop&&"key"in i&&tn in i&&o instanceof Element?this.#X(o,i.key,i.value||"",i[hn]):i.type===Ns.text&&tn in i&&o.nodeType===u[Ct]&&(o[zi]=i.value||""))}}}#W(t,e){const i=e.filter((t=>t.type===Ns.remove)).sort(((t,e)=>{const i=(e.index.length||0)-(t.index.length||0);if(0!==i)return i;for(let i=0;i<(t.index.length||0);i++)if((t.index[i]||0)!==(e.index[i]||0))return(e.index[i]||0)-(t.index[i]||0);return 0}));for(const e of i){const i=this.#V(t,e.index);null!=i&&null!=i[Fn]&&i[Fn].removeChild(i)}}#Z(t,i){if(i.type!==Ns.create||!(hn in i))return;const n="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);null!=t[xn]&&t[xn][$t](n)}#Y(t,i){if(i.type!==Ns.replace||!(hn in i)||null==t[Fn])return;const n="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);if(t[Fn].replaceChild(n,t),!(n instanceof Text||"string"==typeof i[hn])){for(const t in i[hn][ci])this.#X(n,t,i[hn][ci][t]||"",i[hn]);this.#Q(i[hn],n)}}#q(t,i,n){if(i.type!==Ns.append||!(hn in i)||null==n)return;const s="string"==typeof i[hn]?e[mn](i[hn]):this.#J(i[hn]);if(n+1>t[Ht][Pe]?t[$t](s):t.insertBefore(s,t[Ht][n+1]),"string"!=typeof i[hn]){for(const[e,s]of o.entries(i[hn][ci]))this.#X(t[Ht][n],e,s||"",i[hn]);this.#Q(i[hn],t[Ht][n])}}#X(t,e,i,n){null==i?t[_removeAttribute](e):null!=t&&t[zn](e,i)}#Q(t,e){if("string"!=typeof t)for(const i in t.children.filter((t=>"string"!=typeof t))){if(null==e)continue;const n=t.children[+i],s=e.children[+i];if("string"!=typeof n){for(const[t,e]of o.entries(n[ci]))this.#X(s,t,e||"",n);this.#Q(n,s)}}}#V(t,e){let i=t,n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[Ct]&&""!==t[zi]?.trim()))||[];for(const t of e)i=n[t],null!=i&&(n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[Ct]&&""!==t[zi]?.trim()))||[]);return i}#J(t){const i=e.createElement(t.tag);if(t[ci])for(const[e,n]of o.entries(t[ci]))e[Ot](":")||e[Ot]("@")||void 0!==n&&i[zn](e,n);for(const n of t[Ht])"string"==typeof n?i[$t](e[mn](n)):i[$t](this.#J(n));return i}}}("undefined"==typeof window?window={}:window); | ||
!function(){const t=window,e=document,i=String,n=Boolean,s=Array,o=Object,l=JSON,r=Math,h=URL,u=Node,a=Date,c=Blob,d=parseInt,f="video/mp4",p="video/quicktime",g=["javascript","js","ts","html","css","xml","json","sql","java","python","ruby","php","cpp","csharp","swift","typescript","kotlin","go","rust","perl","bash"],_=t.matchMedia&&t.matchMedia("(prefers-color-scheme: dark)").matches,y="abcdefghijklmnopqrstuvwxyz0123456789";let m=new Map;const T=/\.([\w_-]+)?/gi,N=/\#([\w_-]+)?/i,E=/^\w+(?=[\#\.]*)/i,A=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(mailto\:)?([\u0020\u00A0\u0009]*)(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)([\u0020\u00A0\u0009]*)[\"\']{0,1}/,S=/(\s{1})\\?[\##]{1}([\u4e00-\u9fff\u3040-\u30ff\uac00-\ud7a3a-zA-Z0-9_]+)/,O=/[& \<\>\"\']/g,I=/\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)/,w=/(\n)(\>\s*\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]\n)?(\>[^\n]*(\n)?)+/,C=/\`([^\n\`]*)\`/,v=/^\n|\n$/g,D=/\`{3}(\w*)([\s\S]*?)\s*\`{3}/,M=/((\n([\u0020\u00A0]{4,}|[\u0009]))[^\n]+)+/,$=/\*([^\n\*]*)\*/,b=/\_([^\n\_]*)\_/,R=/^\s|\s$/g,U=/(\n[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*>[\u0020\u00A0\u0009]*|\n[\u0020\u00A0\u0009]*([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n]+)/,F=/(\n)([^\n]+)\n\={3,}([\u0020\u00A0\u0009]*\n)/,k=/(\n)([^\n]+)\n\-{3,}([\u0020\u00A0\u0009]*\n)/,x=/([\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*)\\?(\#{1,6})[\u0020\u00A0\u0009]+([^\n\|]*)([\u0020\u00A0\u0009]*)/,P=/(\n[\u0020\u00A0\u0009]*)(\*{3,}|\-{3,})([\u0020\u00A0\u0009]*\n)/,L=/\!\[([^\]\n]+)?\]\(([^\)\n\u0020\u00A0\u0009]+)([\u0020\u00A0\u0009]*[\"\']([^\)\n]+)[\"\'])?\)(\(([0-9]+\%?)?[\u0020\u00A0\u0009\*x]+([0-9]+\%?)?([\u0020\u00A0\u0009]+(left|right))?\))?/,j=/^['"].*['"]$/,G=/\n(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,H=/(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]+(.+)(\n.*\S.*)*)+/,B=/^(([\-\*\+]|\d+\.)[\u0020\u00A0\u0009]*[^\n]+)/,z=/\={2}([^\n\=]*)\={2}/,K=/\~{2}([^\n\~]*)\~{2}/,V=/\*{2}([^\n\*]*)\*{2}/,W=/\_{2}([^\n\_]*)\_{2}/,Z=/\~([^\n\~]*)\~/,Y=/\^([^\n\^]*)\^/,q=/(\n(?![\{\<])[^\n]+)+/,J=/^(\n?(?![\{\<])[^\n]+)+/,X=/\.mov$/,Q=/\.mp4$/,tt=/[A-Za-z\%]/,et=/[\"\']{0,1}([\u0020\u00A0\u0009]*)(https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*))([\u0020\u00A0\u0009]*)[\"\']{0,1}/,it=/(\<[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*br[\u00A0\u0020\u0009\>]*\/?[\u00A0\u0020\u0009\>]*\>|\n)/,nt=/\n/,st=/\\\!/g,ot=/\\\`/g,lt=/\\\#/g,rt=/\\\*/g,ht=/\\\_/g,ut=/\\\~/g,at=/\\\^/g,ct=/\\\=/g,dt=/\\\</g,ft=/\\\>/g,pt=/\\\[/g,gt=/\\\]/g,_t=/\\\(/g,yt=/\\\)/g,mt=/\$/g,Tt=/(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?/,Nt="mailto:",Et="\n",At="_blank",St="startsWith",Ot="keys",It="TEXT_NODE",wt="ELEMENT_NODE",Ct="nodeType",vt="add",Dt="alt",Mt="appendChild",$t="as",bt="auto",Rt="baseOffset",Ut="blockquote",Ft="body",kt="br",xt="button",Pt="charAt",Lt="checked",jt="checkbox",Gt="childNodes",Ht="children",Bt="class",zt="clearTimeout",Kt="clipboardData",Vt="code",Wt="Color",Zt="color",Yt="content",qt="contentEditable",Jt="controls",Xt="copy",Qt="create",te="ctrlKey",ee="dark",ie="dataset",ne="delay",se="display",oe="div",le="editor",re="em",he="empty",ue="emptyContent",ae="error",ce="float",de="floor",fe="focus",pe="fontFamily",ge="forEach",_e="from",ye="get",me="has",Te="head",Ne="height",Ee="hide",Ae="href",Se="id",Oe="iframe",Ie="img",we="index",Ce="init",ve="inner",De="input",Me="insert",$e="isArray",be="join",Re="label",Ue="language",Fe="lastChild",ke="lazy",xe="length",Pe="li",Le="light",je="link",Ge="list",He="loading",Be="map",ze="mark",Ke="match",Ve="metaKey",We="min",Ze="mode",Ye="Name",qe="name",Je="node",Xe="none",Qe="number",ti="object",ei="offset",ii="ol",ni="outerHTML",si="parent",oi="pd-md-editor",li="pd-md-viewer",ri="placeholder",hi="pre",ui="props",ai="preload",ci="prettyprint",di="prevent",fi="push",pi="px",gi="querySelector",_i="random",yi="rel",mi="remove",Ti="replace",Ni="click",Ei="script",Ai="scroll",Si="section",Oi="set",Ii="slice",wi="source",Ci="span",vi="split",Di="src",Mi="string",$i="strong",bi="style",Ri="sub",Ui="success",Fi="sup",ki="table",xi="tag",Pi="target",Li="tbody",ji="td",Gi="temp",Hi="test",Bi="textContent",zi="th",Ki="thead",Vi="title",Wi="toLowerCase",Zi="toUpperCase",Yi="tr",qi="trim",Ji="type",Xi="ul",Qi="value",tn="video",en="viewer",nn="width",sn="console",on="apply",ln="void",rn="vdom",hn="getElementById",un="crossOrigin",an="preconnect",cn=vt+"EventListener",dn="background"+Wt,fn=Bt+Ye,pn=Bt+"List",gn=Qt+"DocumentFragment",_n=Qt+"Element",yn=Qt+"TextNode",mn=_e+"CharCode",Tn=fe+"Background"+Wt,Nn=fe+"Offset",En=fe+"Text"+Wt,An=ye+"Data",Sn=ye+"Selection",On=me+"OwnProperty",In=we+"Of",wn=ve+"HTML",Cn=ve+"Text",vn=Me+"Before",Dn=Je+Ye,Mn=Je+"Value",$n="onclick",bn="onwheel",Rn=si+"Element",Un=si+"Node",Fn=ri+Wt,kn=di+"Default",xn=di+"Refresh",Pn=gi+"All",Ln=mi+"AllRanges",jn=Ai+"Height",Gn=Ai+"Sync",Hn=Ai+"Top",Bn=Oi+"Attribute",zn=Oi+"Data",Kn=Oi+"End",Vn=Oi+"Start",Wn=Oi+"Timeout",Zn=xi+Ye,Yn=xi+"Path",qn=xi+"Target";let Jn="";const Xn="@excl@",Qn="@grave@",ts="@num@",es="@ast@",is="@lowbar@",ns="@tilde@",ss="@Hat@",os="@equal@",ls="@lt@",rs="@gt@",hs="@lsqb@",us="@rsqb@",as="@lpar@",cs="@rpar@",ds="@dollar@",fs="<",ps=">",gs="&",_s=" ",ys=""",ms="'",Ts={create:"CREATE",append:"APPEND",replace:"REPLACE",text:"TEXT",prop:"PROP",remove:"REMOVE"};Array[_e]({[xe]:26},((t,e)=>i[mn](97+e)))[ge](((e,n)=>{let s=n<10,o=n>=10&&n<20,l=n>=20,r=i(n),h=r[Pt](r[xe]-1),u=i=>{Jn+=i?e[Zi]():e,t[(i?"$":"_")+(l?"_":"")+h+(o?"_":"")]=i?e[Zi]():e};u(0),u(1),s&&(Jn+=n,t["_"+e]=n)}));t._a,t._b,t._c,t._d,t._e,t._f,t._g,t._h,t._i,t._j;const Ns=t._0,Es=t._1,As=(t._2,t._3,t._4,t._5,t._6),Ss=t._7,Os=t._8,Is=(t._9,t._0_,t._1_,t._2_,t._3_,t._4_,t._5_,t._6_,t._7_,t._8_),ws=(t._9_,t.__0),Cs=(t.__1,t.__2,t.__3,t.__4,t.__5,t.$0,t.$1,t.$2,t.$3,t.$4,t.$5,t.$6,t.$7,t.$8,t.$9,t.$0_,t.$1_,t.$2_,t.$3_,t.$4_,t.$5_,t.$6_,t.$7_,t.$8_,t.$9_,t.$_0,t.$_1,t.$_2,t.$_3,t.$_4,t.$_5,"https://fonts.googleapis.com"),vs=Cs+"/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,1,0&display=swap",Ds="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js",Ms="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@1.9.0/dist/NanoMD.css",$s="NanoMD\nGitHub: https://github.com/pardnchiu/NanoMD\nCreator: Pardn Chiu\nLicense: MIT";let bs;for(let t of[Rs(je,{[yi]:an,[Ae]:"https://fonts.gstatic.com",[un]:""}),Rs(je,{[yi]:an,[Ae]:Cs,[un]:""}),Rs(je,{[yi]:ai,[Ae]:vs,[$t]:bi,[un]:"anonymous"}),Rs(je,{[yi]:"stylesheet",[Ae]:vs}),Rs(je,{[yi]:"preconnect",[Ae]:"https://cdn.jsdelivr.net"}),Rs(je,{[yi]:ai,[Ae]:Ds,[$t]:Ei}),Rs(Ei,{[Di]:Ds}),Rs(je,{[yi]:ai,[Ae]:Ms,[$t]:bi}),Rs(je,{[yi]:"stylesheet",[Ae]:Ms})])e[Te][Mt](t);function Rs(t="",i,n){const s=((t[Ke](E)||[])[0]||"")[qi](),o=((t[Ke](N)||[])[1]||"")[qi](),l=(T[Hi](t)?t[Ke](T):[])[Be]((t=>t[Ti](/^\./,"")));if(s[xe]<1)return;let r,h,u,a=!1;if(t===Gi?(a=!0,r=e[gn]()):r=e[_n](s),83!=$s[xe])return r;o[xe]&&(r.id=o);for(let t of l)r[pn][vt](t);if(null==i&&null!=n&&([i,n]=[n,null]),null!=i&&null!=n)[h,u]=[i,n];else if(null==n)typeof i===Mi||typeof i===Qe||Array[$e](i)?u=i:h=i;else if(null==i)return r;if(typeof h===ti&&null!=h)for(const t in h){if(!h[On](t))continue;const e=h[t];-1!=[Qi,Cn,wn,Bi,qt][In](t)?r[t]=e:-1!=[Zt,dn,nn,Ne,se,ce][In](t)?r[bi][t]=e:null!=e&&r[Bn](t,e)}if(null!=u){const t=typeof u===Mi,i=typeof u===Qe,n=Array[$e](u);if(t||i){const t=u;s===Ie||s===wi?r[Di]=t:a?r[Mt](e[yn](u)):r[wn]=t}else if(n)for(let t of u){const i=t instanceof Element;typeof t===Mi||typeof t===Qe?a?r[Mt](e[yn](t)):r[wn]+=t:i&&r[Mt](t)}}return r}function Us(t=""){return t[Ti](O,(t=>({"&":gs," ":_s,"<":fs,">":ps,'"':ys,"'":ms}[t])))}function Fs(t,e=""){return new RegExp(t,e)}function ks(t){if(t)return t[fn]===oi||t[Dn][Wi]()===oe&&t[Un][fn]===oi?t:ks(t[Un])}function xs(t){const e=Rs(oe);return e[Mt](t),e[wn]}function Ps(t=""){if((t=t[qi]())[xe]<1)return"";const e=t[Ke](Tt)||[];return e[xe]>2&&11===e[1][xe]?e[1]:""}function Ls(t=""){if((t=t[qi]())[xe]<1)return"";const e=t.match(/(?:https?:\/\/)?(?:www\.)?vimeo\.com\/(?:channels\/[\w]+\/|groups\/[\w]+\/videos\/|album\/\d+\/video\/|video\/|)(\d+)/);return e?e[1]:null}function js(t,e="",i="",n="",s="",o=""){const l=Gs(i),r=n instanceof HTMLElement?n:Rs(i,n);return m[Oi](l,r[ni]),e[Ti](t,s+l+o)}function Gs(t=""){let e="{{"+(t[qi]()||bt)+"-";for(let t=0;t<64;t++)e+=y[Pt](r[de](36*r[_i]()));return e+="}}",m[me](e)?Gs(t):e}function Hs(t=""){let i;for(let e of t[Ke](Fs(w,As))||[]){const s=e[Ke](w),o=s[1]||"",l=s[3]||"",r=s[5]||"";i=Rs(Ut+(l[xe]?"."+l:"")),n(e,l),t=js(e,t,Ut,i,o,r)}function n(t,e=""){let n=qs(t[qi]()[Ti](/^\>[\u00A0\u0020\u0009]?/,"")[Ti](/\n\>[\u00A0\u0020\u0009]?/g,"\n"))[vi](nt);for(let t in n){const o=n[t];i[Mt](s(o,d(t),e))}}function s(t,n=0,o=""){let l=Rs(Gi);const r=/^[\u00A0\u0020\u0009]*\>[\u00A0\u0020\u0009]?/,h=t[Ti](r,"");if(/\[\!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/[Hi](t)&&0===n)l[Mt](Rs(Ci+".hint",[-1!=["NOTE","TIP","IMPORTANT","WARNING","CAUTION"][In](o)?Rs("span.material-symbols-outlined",{NOTE:"info",TIP:"lightbulb",IMPORTANT:"sms",WARNING:"warning",CAUTION:"error"}[o]||""):null,o])),l[Mt](Rs(kt));else if(r[Hi](t)){let t=Rs(Ut);t[Mt](s(h)),l[Mt](t)}else/^[\u00A0\u0020\u0009]*\{\{/[Hi](t)?l[Mt](i[Mt](e[yn](t))):l[Mt](Rs(Ci,t));return l}return t}function Bs(t=""){let e=[[Vt,C]];for(let i of e){const e=i[0],n=i[1];for(let i of t[Ke](Fs(n,As))||[]){const s=i[Ke](n);if(R[Hi](s[1]||""))continue;let o=(s[1]||"")[qi]();o[xe]<1||(e!=Vt?t=t[Ti](i,Rs(e,o)[ni]):(o=Us(o),t=js(i,t,e,o)))}}return t}function zs(t){let e=0,i=Rs(ii);for(let n in t){const s=t[n];0===d(n)&&(e=r.floor((s[Ke](/^\s*/)||[""])[0][xe]/4));const o=Fs(`^\\s{0,${4*e}}`);i[Mt](Rs(Pe,Us(s[Ti](o,""))))}return i}function Ks(t=""){let e=[[$i,V],[$i,W],[Is,K],[ze,z],[re,$],[re,b],[Fi,Y],[Ri,Z]];for(let t of e){i(t[0],t[1])}function i(e,i){for(let n of t[Ke](Fs(i,As))||[]){const s=n[Ke](i);if(R[Hi](s[1]||""))continue;let o=(s[1]||"")[qi]();o[xe]<1||(e!=Vt?t=t[Ti](n,Rs(e,o)[ni]):(o=Us(o),t=js(n,t,e,o)))}}return t}function Vs(t="",e="",n=At){if(i(e||"")[qi]()[xe]<1)return t;for(let i of t[Ke](Fs(S,As))||[]){if(i[Ke](/^\\/))continue;const s=i[Ke](S);if(s[xe]<1)continue;const o=s[1],l=(s[2]||"")[qi](),r=Gs(Ns);if(l[xe]<1)continue;const h=Rs(Gi,[Rs(Ns+"."+xi,{[Ae]:e+l,[Pi]:n===At?At:"_self"},l)]);m[Oi](r,xs(h)),t=t[Ti](i,o+r)}return t}function Ws(t=""){return(()=>{for(let e of t[Ke](Fs(U,As))||[]){const i=e[Ke](U);if(i[xe]<1)continue;const n=i[1]||"",s=(i[3]||"")[qi]()[xe],o=(i[4]||"")[qi]();0!=r[We](s,o[xe])&&(t=js(e,t,Ss+s,o,n))}})(),(()=>{for(let e of t[Ke](Fs(x,As))||[]){const i=e[Ke](x);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi]()[xe],o=(i[3]||"")[qi](),l=i[4]||"";0!=r[We](s,o[xe])&&(t=js(e,t,Ss+s,o,n,l))}})(),(()=>{for(let e of t[Ke](Fs(F,As))||[]){const i=e[Ke](F);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi](),o=i[3]||"";s[xe]<1||(t=js(e,t,Ss+1,s,n,o))}})(),(()=>{for(let e of t[Ke](Fs(k,As))||[]){const i=e[Ke](k);if(i[xe]<1)continue;const n=i[1]||"",s=(i[2]||"")[qi](),o=i[3]||"";s[xe]<1||(t=js(e,t,Ss+2,s,n,o))}})(),t}function Zs(t=""){for(let e of t[Ke](Fs(P,As))||[]){const i=e[Ke](P);if(i[xe]<1)continue;const n=i[1]||"",s=i[3]||"",o=Gs("HR");m[Oi](o,"<hr>"),t=t[Ti](e,n+o+s)}return t}function Ys(t=""){const e="this.parentElement.nextElementSibling.style.display='block';this.parentElement.style.display='none'",i="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEyMCAxMjAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yNTkyXzMwNDkpIj4KPHBhdGggZD0iTTEyMCA2MEMxMjAgMjYuODYyOSA5My4xMzcxIDAgNjAgMEMyNi44NjI5IDAgMCAyNi44NjI5IDAgNjBDMCA5My4xMzcxIDI2Ljg2MjkgMTIwIDYwIDEyMEM5My4xMzcxIDEyMCAxMjAgOTMuMTM3MSAxMjAgNjBaIiBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIwLjUiLz4KPHBhdGggZD0iTTg0LjM2MzMgNTYuNTgwM0M4Ni45MzAyIDU4LjEzNzYgODYuOTMwMiA2MS44NjI2IDg0LjM2MzMgNjMuNDE5OUw1MS44MjQ4IDgzLjE2MTJDNDkuMTU5MSA4NC43Nzg2IDQ1Ljc1IDgyLjg1OTQgNDUuNzUgNzkuNzQxNFY0MC4yNTg4QzQ1Ljc1IDM3LjE0MDggNDkuMTU5MSAzNS4yMjE2IDUxLjgyNDggMzYuODM4OUw4NC4zNjMzIDU2LjU4MDNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI1OTJfMzA0OSI+CjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPg==";function n(t,n,s,o){return xs(Rs(Gi,[Rs(Ns,{[Vi]:o,[Ae]:n,[Pi]:At},s||n),Rs("section.more",[Rs("img.cover","https://i.ytimg.com/vi/"+t+"/mqdefault.jpg"),Rs("img.icon",{[$n]:e},i)]),Rs(Oe,{[He]:ke,[nn]:"640px",[Di]:"https://www.youtube.com/embed/"+t,frameborder:0,allow:"accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",[se]:Xe})]))}function s(t,n,s,o){const l=function(t){const e=`https://vimeo.com/api/v2/video/${t}.json`;let i=null;const n=new XMLHttpRequest;n.open("GET",e,!1);try{n.send(),200===n.status?i=JSON.parse(n.responseText)[0].thumbnail_large:console.error("HTTP 錯誤:",n.status)}catch(t){console.error("無法獲取縮圖:",t)}return i}(t);return xs(Rs(Gi,[Rs(Ns,{[Vi]:o,[Ae]:n,[Pi]:At},s||n),Rs("section.more",[Rs("img.cover",l),Rs("img.icon",{[$n]:e},i)]),Rs(Oe,{[He]:ke,[nn]:"640px",[Di]:"https://player.vimeo.com/video/"+t,frameborder:0,allow:"autoplay; fullscreen; picture-in-picture",allowfullscreen:"",[se]:Xe})]))}return(()=>{for(let e of t[Ke](Fs(I,As))||[]){const i=e[Ke](I);if(i[xe]<1)continue;const o=(i[1]||"")[qi](),l=(i[2]||"")[qi](),h=(i[4]||"")[qi](),u=(Ps(l)||"")[qi](),a=(Ls(l)||"")[qi]();if(0!=r[We](o[xe],l[xe]))if(u[xe])t=js(e,t,oe,n(u,l,o,h));else if(a[xe])t=js(e,t,oe,s(a,l,o,h));else{const i=Rs(Ns,{[Vi]:h,[Ae]:l,[Pi]:At},o);t=js(e,t,Ns,i)}}})(),(()=>{for(let e of t[Ke](Fs(et,As))||[]){if(e[Ke](j))continue;const i=e[Ke](et);if(i[xe]<1)continue;const o=i[1]||"",l=(i[2]||"")[qi](),r=i[5]||"",h=(Ps(l)||"")[qi](),u=(Ls(l)||"")[qi]();if(!(l[xe]<1))if(h[xe])t=js(e,t,oe,n(h,l),o,r);else if(u[xe])t=js(e,t,oe,s(u,l));else{const i=Rs(Ns,{[Ae]:l,[Pi]:At},l);t=js(e,t,Ns,i,o,r)}}})(),(()=>{for(let e of t[Ke](Fs(A,As))||[]){if(e[Ke](j))continue;const i=e[Ke](A);if(i[xe]<1)continue;const n=(i[1]||"")+(i[2]||"")+(i[3]||""),s=(i[4]||"")[qi](),o=i[8]||"";if(s[xe]<1)continue;const l=Rs(Ns,{[Ae]:Nt+s,[Pi]:At},s);t=js(e,t,Ns,l,n,o)}})(),t}function qs(t=""){for(let i of t[Ke](Fs(G,As))||[])e(i);function e(e){let i;e[qi]()[Ti](Fs(it,As),Et)[vi](it)[ge](((t,e)=>{const n=t[Ke](H)||[],s=n[xe]<1?null:/\d+\./[Hi]((n[2]||"")[qi]())?ii:Xi,o=(t[Ke](/\s{4}/g)||[])[xe];let l=n[xe]<1?t[Ti](/^\s*([\-\*\+]|\d+\.)?\s*/g,""):(n[3]||"")[qi]();if(0===d(e)&&null==s)return;0===d(e)&&(i=Rs(s));let r=i;function h(t,e){if(/^\[\s*(\x)?\s*\]/[Hi](e)){const i=e[qi]()[Ke](/^\[\s*(\x)?\s*\]/);e=e[Ti](/^\[\s*(\x)?\s*\]\s*/,"");const n=null!=i[1];t[Mt](Rs(Pe,[Rs(Re,[Rs(De,{[Ji]:jt,[Lt]:n?"":null,[$n]:"return false;"}),Rs(Ci,e)])]))}else t[Mt](Rs(Pe,e))}if(/^\s{0,3}([\-\*\+]|\d+\.)/[Hi](t))h(r,l);else if(/^\s{4,}([\-\*\+]|\d+\.)/[Hi](t)){r=i[Fe];for(let t=0;t<o&&(null!=r&&null!=r[Zn]);t++)if(t==o-1&&r[Zn][Wi]()==Pe)if(r[Fe]instanceof HTMLElement&&(r[Fe][Zn][Wi]()==ii||r[Fe][Zn][Wi]()==Xi))h(r[Fe],l);else if(/^\[\s*(\x)?\s*\]/[Hi](l)){const t=l[qi]()[Ke](/^\[\s*(\x)?\s*\]/);l=l[Ti](/^\[\s*(\x)?\s*\]\s*/,"");const e=null!=t[1];r[Mt](Rs(s,[Rs(Pe,[Rs(Re,[Rs(De,{[Ji]:jt,[Lt]:e?"":null,[$n]:"return false;"}),Rs(Ci,l)])])]))}else r[Mt](Rs(s,[Rs(Pe,l)]));else r=r[Fe][Fe]}else{if(null==i)return;for(r=i[Fe];null!=r[Fe];)r=r[Fe];if(r instanceof HTMLElement);else if(/^\{\{(h\d|img|pre)/[Hi](r[Mn]||""));else{for(;r[Rn][Zn][Wi]()!=Pe;)r=r[Rn];r[Rn][Mt](Rs(kt))}r[Rn][wn]+=l}})),null!=i&&(t=js(e,t,Ge,i))}return t}function Js(t=""){for(let e of t[Ke](Fs(L,As))||[]){const i=e[Ke](L);if(i[xe]<1)continue;const n=(i[1]||"")[qi](),s=(i[2]||"")[qi](),o=(i[4]||"")[qi]();let l=(i[6]||"")[qi](),r=(i[7]||"")[qi](),h=(i[9]||"")[qi]();if(s[xe]<1)continue;l[xe]&&!tt[Hi](l)&&(l+=pi),r[xe]&&!tt[Hi](r)&&(r+=pi);const u=X[Hi](s),a=Q[Hi](s);let c;c=u?Rs(tn,{[Jt]:"",[Vi]:o,[nn]:l||null,[Ne]:r||null},[Rs(wi,{[Ji]:p},s)]):a?Rs(tn,{[Jt]:"",[Vi]:o,[nn]:l||null,[Ne]:r||null},[Rs(wi,{[Ji]:f},s)]):Rs(Ie,{[Dt]:n,[Vi]:o,[nn]:l||null,[Ne]:r||null,[ce]:h[xe]?h:null},s),null!=c&&(t=js(e,t,Ie,c))}return t}function Xs(t=""){for(let e of t[Ke](Fs(D,As))||[]){const i=e[Ke](D);if(i[xe]<1)continue;const n=null==i[2][Ke](v),s=n?"":(i[1]||"")[qi]()[Wi](),o=i[2]||"",l=-1!=g[In](s),r=o[Ti](v,"")[vi](nt);let h;h=n?Rs(Vt+"."+ci,Us(o)):Rs(hi+"."+ci,{[qe]:s},[Rs(Vt+(l?"."+Ue+"-"+s:""),{[qe]:s},[zs(r)]),Rs(xt+"."+Xt)]),t=js(e,t,n?Vt:hi,h)}return t}function Qs(t=""){for(let e of t[Ke](Fs(M,As))||[]){const i=e[Ke](M);if(i[xe]<1)continue;const n=i[2]||"",s=e[Ti](v,"")[vi](nt),o=Rs(hi+"."+ci,[Rs(Vt,[zs(s)]),Rs(xt+"."+Xt)]);t=js(e,t,hi,o,n)}return t}function to(t=""){let e;function i(t){const e=t[Ke](/^([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*)+/)||[],i=t[Ke](/[\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*$/)||[];return[e[0]||"",i[0]||""]}function n(t){const i=t[qi]()[vi](nt);e=Rs(Gi,[Rs(ki,[Rs(Ki),Rs(Li)])]);let n=!0,o=[],l=0;for(let t in i){const r=i[t],h=r[Ke](/((\s*)\|?((?:.*?\|)*.*)\|?)+/)||[];if(h[xe]<1)continue;const u=(h[3]||"")[qi]()[Ti](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*$/,""),a=/^[\u0020\u00A0\u0009]*\|?([\u0020\u00A0\u0009]*[\-\:]+[\u0020\u00A0\u0009]*\|?)+[\u0020\u00A0\u0009]*$/[Hi](r),c=u[vi](/[\u0020\u00A0\u0009]*\|[\u0020\u00A0\u0009]*/);if(0===d(t)&&(l=c[xe]),a){for(let t of r[Ti](/^([\u0020\u00A0\u0009]*\|)|(\|[\u0020\u00A0\u0009]*)$/g,"")[vi](/\|/))/^\-+\:$/[Hi](t[qi]())?o.push("right"):/^\:\-+\:$/[Hi](t[qi]())?o.push("center"):o.push("left");const t=[...e.firstChild.firstChild.childNodes[0].childNodes];for(let e in t)t[e].setAttribute("align",o[e]);n=!1}else s(n,c,l,o)}}function s(t=!0,i=[],n=0,s=[]){const o=t?e.firstChild.firstChild:e.firstChild[Fe],l=Rs(Yi);for(let e=0;e<n;e++)l[Mt](Rs(t?zi:ji,{align:s[e]},i[e]||""));o[Mt](l)}return(()=>{const s=/([^\n]*)(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)[\u0020\u00A0\u0009]*\|([\u0020\u00A0\u0009\-\:]*\|)+\n(?:[\u0020\u00A0\u0009]*\|[^\n]*\|[^\n]*\n)*/;for(let o of t[Ke](Fs(s,As))||[])B[Hi](o)||(n(o),t=js(o,t,ki,xs(e),...i(o)))})(),(()=>{const s=/(([^\n]+\|)*[^\n]+\n)(([\u0020\u00A0\u0009\-\:]+\|)*[\u0020\u00A0\u0009\-\:]+\n)(?:([^\n]+\|)*[^\n]+\n)*/;for(let o of t[Ke](Fs(s,As))||[])n(o),t=js(o,t,ki,xs(e),...i(o))})(),t}function eo(t=""){return t=t[Ti](/\n[\u0020\u00A0\u0009]*/g,"\n"),(()=>{for(let e of t[Ke](Fs(J,As))||[]){const i=e[Ke](J);if(i[xe]<1)continue;const n=i[2]||"",s=(i[0]||"")[qi]();if(s[xe]){const i=Rs(Gi,[Rs("p",s)]),o=Gs("p");m[Oi](o,xs(i)),t=t[Ti](e,n+o)}}})(),(()=>{for(let e of t[Ke](Fs(q,As))||[]){const i=e[Ke](q);if(i[xe]<1)continue;const n=i[2]||"",s=(i[0]||"")[qi]();if(s[xe]){const i=Rs(Gi,[Rs("p",s)]),o=Gs("p");m[Oi](o,xs(i)),t=t[Ti](e,n+o)}}})(),t}function io(t=""){t=t[Ti](/^\n*|\n*$/g,"");const e=/(<br>)/g;return e[Hi](t)?t[Ti](e,"\n"):t}function no(t="",e="",i=At){t=t[Ti](st,Xn)[Ti](ot,Qn)[Ti](lt,ts)[Ti](rt,es)[Ti](ht,is)[Ti](ut,ns)[Ti](at,ss)[Ti](ct,os)[Ti](dt,ls)[Ti](ft,rs)[Ti](pt,hs)[Ti](gt,us)[Ti](_t,as)[Ti](yt,cs)[Ti](mt,ds)[Ti](/[\u00A0\u0020]/g," ");let n=[Xs,Bs,Js,Ys,Ks,Ws,Zs,to,Hs,qs,Qs,Vs,io,eo];for(let s of n)t=s(t,e,i);for(;/\{{2}\w*\-*\w{64}\}{2}/[Hi](t);)for(let e of t[Ke](/\{{2}\w*\-*\w{64}\}{2}/g)||[]){let i=Fs(e);t=t[Ti](i,m[ye](e))}const s=["h1","h2","h3","h4","h5","h6",ki,ii,Xi,hi,Ut,"details","hr",Re];for(let e of s){const i=Fs(`[ \t]*\\n[ \t]*<${e}`,As),n=Fs(`${e}>[ \t]*\\n[ \t]*`,As);t=t[Ti](i,`<${e}`)[Ti](n,`${e}>`)}return t=t[Ti](Fs(Xn,As),"!")[Ti](Fs(Qn,As),"&grave")[Ti](Fs(ts,As),"#")[Ti](Fs(es,As),"*")[Ti](Fs(is,As),"_")[Ti](Fs(ns,As),"˜")[Ti](Fs(ss,As),"^")[Ti](Fs(os,As),"&equal;")[Ti](Fs(ls,As),fs)[Ti](Fs(rs,As),ps)[Ti](Fs(hs,As),"[")[Ti](Fs(us,As),"]")[Ti](Fs(as,As),"(")[Ti](Fs(cs,As),")")[Ti](Fs(ds,As),"$")[Ti](/([\u0020\u00A0\u0009]*\n[\u0020\u00A0\u0009]*){2,}/g,"<br>")}document.addEventListener("DOMContentLoaded",(t=>{!function(...t){const i=Rs(Ei,`${sn}.log.${on}(${ln} 0, ${JSON.stringify(t)});`);e[Ft][Mt](i),i[mi]()}("%c"+$s,"line-height: 1.75rem; font-size: 0.875rem;")}));t.PDMarkdownEditor=t.MDEditor=class{#t=!1;#e="";#i=!0;#n=!0;#s;#o;#l;#r;#h;#u;#a;constructor(s={}){this.#e=(s.defaultContent||"")[qi]();const o=s[bi]||{},l=i(o[Ze]||bt)[qi]()[Wi](),r=n(null==o.fill?1:o.fill)?1:0,h=i(o[pe]||"")[qi]()||"'Roboto Mono', monospace",u=n(null==o.showRow?1:o.showRow)?1:0,a=o.placeholder||{},c=i(a.text||"Type here ..."),d=i(a.color||"#bfbfbf"),f=o.focus||{},p=i(f.backgroundColor||"#0000ff1a"),g=i(f.color||"#0000ffff");e[Te][Mt](Rs(bi,`\n.${oi}{font-family: ${h}}\n.${oi}>div[data-focus="1"]{background-color:${p};color:${g};caret-color:${g}}\n.${oi}>div[data-last="1"]:empty::after{content:"${c}";color:${d} !important;caret-color:${g}}`));const y=document[hn](s[Se]);typeof s[Se]===Mi&&null!=y?(this[Ft]=y,y.classList.add(oi)):this[Ft]=Rs(Si+"."+oi),this[Ft][ie][Ze]=_&&l===bt||l===ee?ee:"",this[Ft][ie].fill=r,this[Ft][ie].row=u,this[Ft][ie].pin={1:1,0:0,[!0]:1,[!1]:0}[s.tabPin]||0,this[Ft][ie].wrap={1:1,0:0,[!0]:1,[!1]:0}[s.wrap]||1,this[Ft][ie].saved=1,this.#a=new oo(this[Ft]);const m=this[Ft];if(this.#i=n(null==s.hotKey||s.hotKey),this.#n=n(null==s.autoSave||s.autoSave),this.#s=s.event||{},null==this.#l&&s[xn]&&(this.#l=t[cn]("beforeunload",(t=>{t[kn]()}))),null!=s[Ze]){let t=i(s[Ze]||bt)[qi]()[Wi]();this[Ft][ie][Ze]=_&&t===bt||t===ee?ee:""}if(null!=s.fillMode){let t=n(s.fillMode)?1:0;this[Ft][ie].fill=t}if(null!=s.showRow){let t=n(s.showRow)?1:0;this[Ft][ie].row=t}if(null!=s[pe]){let t=i(s[pe])[qi]()||"'Roboto Mono', monospace";e[Te][Mt](Rs(bi,`.${oi}{font-family: ${t}}`))}let T=i(s[Tn]||"")[qi]()||p,N=i(s[En]||"")[qi]()||g;e[Te][Mt](Rs(bi,`.${oi}>div[data-focus="1"]{background-color:${T};color:${N}`));let E=i(s[ri]||"")[qi]()||c,A=i(s[Fn]||"")[qi]()||d;e[Te][Mt](Rs(bi,`.${oi}>div[data-last="1"]:empty::after{content:"${E}";color:${A}}`)),m.onmousedown=m.onmouseup=t=>{if(t.target[Zn][Wi]()!==oe)return t[kn](),!1;this.#c()},m.ontouchend=t=>{this.#c()},m.oncut=t=>(this.#d(),this.#f((e=>{t[Kt][zn]("text/plain",this.#u.body),m[Ht][this.#u.start][wn]=Us(this.#u.left+this.#u.right),this.#p(),this.#g(m[Ht][this.#u.start],this.#u.left[xe])})),this.#_(!0),this.#n&&this.#y(),!1),m.onpaste=e=>(this.#d(),this.#f((i=>{const n=((e[Kt]||t[Kt])[An]("Text")||"")[vi](/\n/),s=n[xe],o=s-1,l=s>1,r=this.#u.start+o,h=`${l?"":this.#u.left}${n[o]}`[xe],u=n[0],a=l?"":this.#u.right;if(m[Ht][this.#u.start][Cn]=this.#u.left+u+a,this.#p(),l)for(let t=1;t<s;t++){const e=n[t],i=Rs(oe,Us(`${e}${t===o?this.#u.right:""}`));i[$n]=t=>this.#c(),m[vn](i,m[Ht][this.#u.start+t])}this.#g(m[Ht][r],h,h)})),this.#_(!0),!1),m.oncompositionstart=t=>{this.#t=!0},m.oncompositionend=t=>{this.#t=!1},m.oninput=t=>{let e,i;if("deleteCompositionText"===t.inputType){e=this.#h.index,i=this.#h.offset;for(let t of[...m[Ht]]){if(t[Dn][Wi]()===oe||t[Dn][Wi]()===Si)continue;t[mi]();let n=Rs(oe,{"data-index":e+1,index:e+1});n[$n]=t=>this.#c(),m[vn](n,m[Ht][e]),this.#g(m[Ht][e],i)}}t.inputType;let n=this.#h.isMulti,s=this.#h.multi.left,o=t.data,l=this.#h.multi.right,r=this.#h.multi.start.offset;this.#c(),n&&(this.#o[Cn]=s+o+l,this.#g(this.#o,r+1)),this.#_(!0,300)},m.onkeydown=t=>{const e=t[Ve]||t[te],i=t.shiftKey,n=/^a$/i[Hi](t.key),o=/^b$/i[Hi](t.key),l=/^i$/i[Hi](t.key),r=/^s$/i[Hi](t.key),h=/^u$/i[Hi](t.key),u=/^m$/i[Hi](t.key),a=/^z$/i[Hi](t.key),c=/^r$/i[Hi](t.key),d=/^k$/i[Hi](t.key),f=/^f5$/i[Hi](t.key),p="ArrowUp"===t.key,g="ArrowDown"===t.key;if(this.#c(null,this.#i&&e&&n),"Meta"===t.key||"Control"===t.key)return!1;if(this.#i&&e&&i&&a)return this.goForward(),!1;if(this.#i&&e&&a)return this.goBack(),!1;if(this.#i&&(e&&c||f)&&s[xn])return!1;if(this.#i&&e&&o)return this.#m(t,"**",Es),!1;if(this.#i&&e&&l)return this.#m(t,"*",Os),!1;if(e&&r){if(this.#n)if(this.#s.hasOwnProperty("save")){if(null==this.#s.save)return!1;this.#s.save(this.getTxt())}else this.#T();else if(this.#N(),this.#s.hasOwnProperty("save")){if(null==this.#s.save)return!1;this.#s.save(this.getTxt())}return!1}if(this.#i&&e&&i&&r)return this.#m(t,"~~",Is),!1;if(this.#i&&e&&h)return this.#m(t,ws,ws),!1;if(this.#i&&e&&u)return this.#m(t,"==",ze),!1;if(this.#i&&e&&p)return this.#m(t,"^",Fi),!1;if(this.#i&&e&&g)return this.#m(t,"~",Ri),!1;if(this.#i&&e&&d)return this.#m(t,"`",Vt),!1;if(this.#i&&e&&n){const t=this[Ft].firstElementChild,e=this.#E,i=window.getSelection(),n=document.createRange();if(null==t.firstChild)return;return n.setStart(t.firstChild,0),n.setEnd(e.firstChild,e.firstChild.length),i.removeAllRanges(),i.addRange(n),!1}return"Tab"===t.key?this.#A(t):"Enter"===t.key?this.#S(t):"Backspace"===t.key?this.#O(t):void 0},m.onkeyup=t=>{"Meta"!==t.key&&"Control"!==t.key&&(m[Ht]&&1===m[Ht][xe]&&m.firstElementChild[Dn][Wi]()!==oe&&this[Ce](null,!0,!1),this.#c(),/^(Arrow(Up|Left|Down|Right)|CapsLock|Shift|Control|Alt|Clear|Escape|F\d+)$/[Hi](t.key)||this.#n&&this[en]&&this[en][Ce]())},m.onblur=t=>{this.#d()},this.init()}get viewer(){return this.#r}set viewer(t){this.#r=t}#I(){const t=Si+"."+De+"-"+xt,e=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.wrap;let i=this[Ft][gi](t);if(i)return;const n=[{[qe]:"format_bold",[Vi]:"添加粗體",[Ni]:t=>this.addBold(t)},{[qe]:"format_italic",[Vi]:"添加斜體",[Ni]:t=>this.addItalic(t)},{[qe]:"strikethrough_s",[Vi]:"添加刪除線",[Ni]:t=>this.addStrikethrough(t)},{[qe]:"format_underlined",[Vi]:"添加底線",[Ni]:t=>this.addUnderline(t)},{[qe]:"ink_marker",[Vi]:"添加高亮",[Ni]:t=>this.addMarker(t)},{[qe]:"superscript",[Vi]:"添加上標",[Ni]:t=>this.addSup(t)},{[qe]:"subscript",[Vi]:"添加下標",[Ni]:t=>this.addSub(t)},{[qe]:"format_quote",[Vi]:"添加引用",[Ni]:t=>this.addBlockquote(t)},{[qe]:"format_list_bulleted",[Vi]:"添加無序列表",[Ni]:t=>this.addUl(t)},{[qe]:"format_list_numbered",[Vi]:"添加有序列表",[Ni]:t=>this.addOl(t)},{[qe]:"code",[Vi]:"添加代碼塊",[Ni]:t=>this.addCode(t)},{[qe]:"link",[Vi]:"添加連結",[Ni]:t=>this.addLink("連結文字","連結")},{[qe]:"landscape",[Vi]:"添加圖片",[Ni]:t=>this.addImage("圖片連結","圖片名稱")},{},this.#n?null:{[qe]:"autorenew",[Vi]:"儲存並預覽",[Ni]:t=>this.#N(t)},{[qe]:e?"keep_off":"keep",[Vi]:"釘選面板",[Ni]:t=>this.#w(t)},{[qe]:"wrap_text",[Vi]:"換行",[Ni]:t=>this.#C(t)}].map((t=>{if(null==t)return;if(null==t[qe]){return Rs("span")}let e=Rs("span.material-symbols-outlined",{title:t.title,name:t.name},t.name);return e[$n]=t.click,e}));i=Rs(t,n),i[qt]=!1,i.dataset.hide=1,this[Ft][Mt](i)}#N(){this.#y()}#T(){let t=Rs("button",[Rs("span.material-symbols-outlined","markdown"),"Markdown"]),i=Rs("button",[Rs("span.material-symbols-outlined","html"),"HTML"]),n=Rs("button",[Rs("span.material-symbols-outlined","cancel"),"Cancel"]),s=Rs("div.nanomd-pop",[Rs("strong","Export"),t,i,n]);t[$n]=t=>{this.downloadMd(),s.remove()},i[$n]=t=>{this.downloadHtml(),s.remove()},n[$n]=t=>{s.remove()},e[Ft][Mt](s)}#w(t){const e=t.target,i=parseInt(this[Ft].dataset.pin||0);this[Ft].dataset.pin=Math.abs(i-1),e[Cn]=i?"keep":"keep_off",e[Vi]=i?"釘選面板":"取消釘選"}#C(t){const e=parseInt(this[Ft].dataset.wrap||1);this[Ft].dataset.wrap=Math.abs(e-1)}#v(t,e){this.#I();const i=Si+"."+De+"-"+xt;let n=this[Ft][gi](i);t[ie][fe]=1,this[Ft][vn](n,this[Ft][Ht][e+1]),n[ie][Ee]=0,this.#o=t}#d(){if(!this.#o)return;const t=Si+"."+De+"-"+xt,e=this[Ft][gi](t);this.#o[ie][fe]=0,null!=e&&(this[Ft][Mt](e),e[ie][Ee]=1),this.#o=null}#c(e,i=!1){this.#d(),this.#h=new so(this[Ft],e,i);const n=t[Sn]();if(n.rangeCount<1)return;const s=n.getRangeAt(0);let o=e||ks(s.commonAncestorContainer);null!=o&&this.#v(o,this.#h.index||this.#h.multi.end.index)}#f(t){this.#u=new lo(this[Ft],this.#h),t()}#p(){this.#u.removeRows()}#g(i,n,s){const o=this[Ft][Pn](oe);for(let t in o){const e=o[t];if(isNaN(d(t)))continue;const i=d(t)+1;e[ie][we]=i,i===o.length?e[ie].last=1:e[ie].last=0}if(t[Sn]?t[Sn]()[he]?t[Sn]()[he]():t[Sn]()[Ln]&&t[Sn]()[Ln]():e[Sn]&&e[Sn]()[he](),null==i)return;let l=t[Sn](),r=e.createRange(),h=n??i[Gt][0][xe],u=s??h;r.selectNode(i),i[Gt][0]?(r[Vn](i[Gt][0],h>i[Gt][0][xe]?i[Gt][0][xe]:h),r[Kn](i[Gt][0],u>i[Gt][0][xe]?i[Gt][0][xe]:u)):(r[Vn](i,0),r[Kn](i,0)),l.addRange(r),this.#c(i)}#A(t){if(9!==t.keyCode)return;const e=this[Ft];return this.#f((t=>{e[Ht][this.#u.start][wn]=Us(this.#u.left+" "+this.#u.right),this.#p();const i=this.#u.left[xe]+4;this.#g(e[Ht][this.#u.start],i)})),!1}#S(t){if(13!==t.keyCode)return;const e=this[Ft];return this.#f((t=>{e[Ht][this.#u.start][wn]=Us(this.#u.left),this.#p(),e[Rn][Rn][Hn]+=28;const i=Rs(oe,Us(this.#u.right));i[$n]=t=>this.#c(),e[vn](i,e[Ht][this.#u.start+1]),this.#g(e[Ht][this.#u.start+1],0)})),!1}#O(t){if(8!==t.keyCode)return!1;const e=this[Ft];return this.#f((t=>{if(this.#h.isMulti||this.#h.isSingle)e[Ht][this.#u.start][wn]=Us(this.#u.left+this.#u.right),this.#p(),this.#g(e[Ht][this.#u.start],this.#u.left[xe]);else if(this.#u.left[xe]){const t=this.#u.left[Ii](0,this.#u.left[xe]-1);e[Ht][this.#u.start][wn]=Us(t+this.#u.right),this.#g(e[Ht][this.#u.start],t[xe])}else{if(0===this.#u.start)return;e[Ht][this.#u.start-1][wn]+=Us(this.#u.right),e[Ht][this.#u.start][mi](),e[Rn][Rn][Hn]-=28;const t=e[Ht][this.#u.start-1][Cn][xe]-this.#u.right[xe];this.#g(e[Ht][this.#u.start-1],t)}})),!1}#D(t){t=Us(t);let e=this.#E;const i=Rs(oe,t);i[$n]=t=>this.#c(),e[Cn][qi]()[xe]<1?e[wn]=t:this[Ft][Mt](i),this[Ft][Hn]=this[Ft][jn]}get#E(){let t=this[Ft].lastElementChild;return"SECTION"===t[Dn]&&(t=t.previousElementSibling),t}#M(t,e){t=Us(t);const i=this[Ft][Ht][this.#u.start];i[wn]=t,this.#p(),this.#g(i,e)}#m(t,e="",i=""){const n=t[Ve]||t[te]||e===i;this.#h.check?this.#f((t=>{const s=this.#u.left,o=this.#u.body,l=this.#u.right,r=`${s}${n?`<${i}>`:e}${o}${n?`</${i}>`:e}${l}`[Ti](/\n/g,""),h=r[xe]-l[xe]-(n?i[xe]+3:e[xe]);this.#M(r,h),this.#_(!0),this.#n&&this.#y()})):(this.#D(n?`<${i}></${i}>`:`${e}${e}`),this.#g(this.#E,n?i[xe]+3:e[xe]),this.#_(!0),this.#n&&this.#y())}#$(t){this.#h.check?this.#f((e=>{const i=this.#u.start,n=this.#u.end;for(let e=i;e<=n;e++){const i=this[Ft][Ht][e];i[wn]=Us(`${t} ${i[Cn]}`)}const s=this[Ft][Ht][n],o=s[Cn][xe];this.#g(s,o),this.#_(!0),this.#n&&this.#y()})):(this.#D(t),this.#g(this.#E,t[xe]+1),this.#_(!0),this.#n&&this.#y())}#b(t="",e="",i){if(this.#h.check)return void this.#f((n=>{const s=this.#u.left,o=this.#u.right,l=`${s}${null==i?"":"!"}[${t}](${e}) ${o}`[Ti](/\n/g,""),r=l[xe]-o[xe]-1;this.#M(l,r),this.#_(!0),this.#n&&this.#y()}));this.#D(`${null==i?"":"!"}[${t}](${e})`);const n=this.#E,s=n[Cn][xe];this.#g(n,s),this.#_(!0),this.#n&&this.#y()}#_(t,e){this.#c(),this.#a.add(this.#h,t,e),this[Ft][ie].saved=0,this[en]&&this[en].unsave()}#R(t,i){const n=new c([i],{[Ji]:"application/octet-stream"}),s=h.createObjectURL(n),o=Rs(Ns,{href:s,download:`NanoMD-${a.now()}.${t}`});e[Ft][Mt](o),o[Ni]()}#y(){this[Ft][ie].saved=1,null!=this[en]&&this[en][Ce]()}init(t,e=!0,n=!0){if(this[Ft][qt]=!0,this[Ft][wn]=null,(t=i(t||this.#e)[qi]())[xe]){this.#e="";const i=t[Ti](/\n*$/,"")[vi](/\n/);for(let t=0;t<i.length;t++){const e=i[t],n=Rs(oe,{"data-index":t+1},Us(e));n[$n]=t=>this.#c(),this[Ft][Mt](n)}if(this.#I(),!e)return}else{const t=Rs(oe,{"data-index":1});if(t[$n]=t=>this.#c(),this[Ft][Mt](t),this.#I(),!e)return}n&&(this.#c(),this.#a.add(this.#h,!0))}changeMode(t=Le){this[Ft][ie][Ze]=t}goBack(){this.#d();const t=this.#a.undo();null!=t&&(this[Ce](t[Yt][xe]<1?null:t[Yt],!1,!1),this[Ft][ie].saved=0,this.#g(this[Ft][Ht][t[we]],t[ei]),this[en]&&this[en].unsave(),this.#n&&this.#y())}goForward(){const t=this.#a.redo();null!=t&&(this[Ce](t[Yt],!1,!1),this[Ft][ie].saved=0,this.#g(this[Ft][Ht][t[we]],t[ei]),this[en]&&this[en].unsave(),this.#n&&this.#y())}addHeading(t,e){const i=t[Ve]||t[te],n=`${new Array(e).fill("#")[be]("")}${0===e?"":" "}`;this.#h.check?this.#f((t=>{const s=this.#u.left[Ti](/^\s*\#*\s*/,""),o=this.#u.body,l=this.#u.right,r=`${i?`<h${e}>`:n}${s}${o}${l}${i?`</h${e}>`:""}`[Ti](/\n/g,""),h=r[xe]-(i?5:0);this.#M(r,h),this.#_(!0),this.#n&&this.#y()})):(this.#D(i?`<h${e}></h${e}>`:n),this.#g(this.#E,n[xe]-(i?5:0)),this.#_(!0),this.#n&&this.#y())}addBold(t){this.#m(t,"**",Es)}addItalic(t){this.#m(t,"*",Os)}addStrikethrough(t){this.#m(t,"~~",Is)}addUnderline(t){this.#m(t,ws,ws)}addMarker(t){this.#m(t,"==",ze)}addSup(t){this.#m(t,"^",Fi)}addSub(t){this.#m(t,"~",Ri)}addBlockquote(){this.#h.check?this.#f((t=>{for(let t=this.#u.start;t<=this.#u.end;t++){const e=this[Ft][Ht][t];e[wn]=Us(`> ${e[Cn]}`)}const e=this[Ft][Ht][this.#u.end],i=e[Cn][xe];this.#g(e,i),this.#_(!0),this.#n&&this.#y()})):(this.#D("> "),this.#g(this.#E,2),this.#_(!0),this.#n&&this.#y())}addUl(){this.#$("-")}addOl(){this.#$("1.")}addCode(t){this.#h.check?this.#f((e=>{if(this.#h.isMulti){const t=Rs(oe,"```"),e=Rs(oe,"```");t[$n]=e[$n]=t=>this.#c(),this[Ft][vn](t,this[Ft][Ht][this.#u.end+1]),this[Ft][vn](e,this[Ft][Ht][this.#u.start]),this.#g(this[Ft][Ht][this.#u.end+1],this[Ft][Ht][this.#u.end+1][Cn][xe]),this.#_(!0),this.#n&&this.#y()}else this.#m(t,"`",Vt)})):this.#m(t,"`",Vt)}addLink(t="",e=""){e[qi]()[xe]<1&&t[qi]()[xe]<1||this.#b(t,e)}addImage(t="",e="",i=""){t[qi]()[xe]<1||this.#b(i,t,e)}clear(){this.init(),this.#y()}downloadMd(){this.#R("md",this.getTxt()[qi]())}downloadHtml(){this.#R("html",`<!DOCTYPE html><html><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>NanoMD 輸出</title><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@pardnchiu/nanomd@1.9.0/dist/NanoMD-output.css"><script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"><\/script></head><body><section class="pd-md-viewer">${no(`\n${this.getTxt()}\n`)}</section></body></html>`)}openfile(t){if(null==t)return void alert("請選擇檔案");const e=new FileReader;e.readAsText(t),e.onload=()=>{this[Ft][wn]=null;const t=e.result[qi]()[Ti](/[\u0020\u00A0]/g," ");this.init(Us(t),!1),this.#y()}}getTxt(){return[...this[Ft][Ht]].map((t=>"SECTION"===t[Dn]?"":t[Cn]))[be]("\n")}};class so{check=!1;isMulti=!1;isSingle=!0;index;offset;left;right;selection={};multi={};constructor(e,i,s=!1){const o=t[Sn]();if(o.rangeCount<1)return;const l=o.getRangeAt(0);let r=i||ks(l.commonAncestorContainer);if(null==r)return;let h,u,a="";if(s){r=e;const t=r[Pn](oe);for(let e=0;e<t.length;e++){const i=t[e];a+=(0==e?"":"\n")+i[Cn]}h=0,u=t[xe]-1}else l.cloneContents()[Gt][ge](((t,e)=>{a+=(0==e?"":"\n")+t[Cn]})),r===e&&(h=d(ks(o.baseNode)[ie][we])-1,u=d(ks(o.focusNode)[ie][we])-1);var c=n(r===e),f=!c&&!s&&n(o[Rt]!==o[Nn]),p=!!s||n(o[Nn]>o[Rt]),g=!!s||n(h<u);this.check=!0,this.index=c?null:d(r[ie][we])-1,this.offset=c||f?null:d(o[Nn]),this.left=c||f?null:r[Cn][Ii](0,o[Nn]),this.right=c||f?null:r[Cn][Ii](o[Nn],r[Cn][xe]),this.isSingle=f,this.isMulti=c;const _=f?p?o[Rt]:o[Nn]:null,y=f?p?o[Nn]:o[Rt]:null;this.selection={body:f?o.toString():a,start:_,end:y,left:f?r[Cn][Ii](0,_):null,right:f?r[Cn][Ii](y,r[Cn][xe]):null};const m=c?g?h:u:null,T=s?0:c?g?o[Rt]:o[Nn]:null,N=c?g?u:h:null,E=s?e[Ht][u][Cn][xe]:c?g?o[Nn]:o[Rt]:null;this.multi={start:{index:m,offset:T},end:{index:N,offset:E},left:s?"":c?r[Ht][m][Cn][Ii](0,T):null,right:s?"":c?r[Ht][N][Cn][Ii](E,r[Cn][xe]):null}}}class oo{#U;#F;#k=[];#x=[];constructor(t){this.#U=t}add(t,e,i){clearInterval(this.#F),console.log(t,e,i),null==i?this.#P(t,e):this.#F=setTimeout((i=>{this.#P(t,e)}),i)}#P(t,e){this.#k[fi]({[we]:t[we],[ei]:t[ei],[Yt]:[...this.#U[Ht]].filter((t=>"DIV"==t.nodeName)).map((t=>t[Cn]))[be]("\n")}),e&&(this.#x=[])}undo(){const t=this.#k[(this.#k||[])[xe]-2];if(null==t)return;let e=this.#k.pop();return this.#x[fi](e),t}redo(){const t=this.#x.pop();if(null!=t)return this.#k[fi](t),t}}class lo{editor;body;start;end;left;right;constructor(t,e){let i,n,s,o;this.editor=t,e.isMulti?(i=e.multi.start.index,n=e.multi.end.index,s=e.multi.left,o=e.multi.right):e.isSingle?(i=e.index,n=e.index,s=e.selection.left,o=e.selection.right):null!==e.index&&null!==e.offset&&(i=e.index,n=e.index,s=e.left,o=e.right),this.body=e.selection.body,this.start=d(i),this.end=d(n),this.left=s[Ti](/</g,"<")[Ti](/>/g,">")[Ti](/ /g," "),this.right=o[Ti](/</g,"<")[Ti](/>/g,">")[Ti](/ /g," ")}removeRows(){for(let t=this.end;t>this.start;t--)this.editor[Ht][t][mi]()}}class ro{tag="";props={};children=[];data=null;constructor(t){if(t[Zn][Wi]()===Ei){let i=!1;for(const n of e[Te][Pn](Ei)||[])if(null!=t[Di]&&n[Di]===t[Di]||null!=t[Bi]&&n[Bi]===t[Bi]){i=!0;break}i||e[Te][Mt](t),this[xi]=Ei}this[xi]=t[Zn][Wi](),this[ui]=[...t.attributes].reduce(((t,e)=>(t[e.name]=e.value.trim(),t)),{}),this[Ht]=function(t){return s[_e](t[Gt]).filter((t=>t[Ct]===u[wt]||t[Ct]===u[It]&&t[Bi]&&t[Bi][qi]()[xe]>0))}(t)[Be]((t=>t.nodeType===Node[wt]?new ro(t):t[Bi]||""))}getPatches(t){return this.#L(t,this)}#L(t,e,i=[]){if(null==t&&e)return[{[Ji]:Ts.create,[we]:i,[rn]:e}];if(t&&!e)return[{[Ji]:Ts.remove,[we]:i}];if(!t&&!e)return[];if(t.tag!==e.tag)return[{[Ji]:Ts[Ti],[we]:i,[rn]:e}];const n=[];return n[fi](...this.#j(t,e,i)),n[fi](...this.#G(t,e,i)),n}#j(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],s=t[ui]||{},l=o[Ot](s)[xe],r=e[ui]||{},h=o[Ot](r)[xe];if(h>0)for(let t in r){const s=r[t];n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,value:s,[we]:i})}if(l>0){if(h<1)for(let t in s)n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,[Qi]:null,[we]:i});for(let t in r)h>0&&!(t in r)&&n[fi]({[Ji]:Ts.prop,[rn]:e,key:t,[Qi]:null,[we]:i})}return n}#G(t,e,i=[]){if(null==t||"string"==typeof t||null==e||"string"==typeof e)return[];const n=[],o=s[$e](t[Ht])?t[Ht]:[],l=s[$e](e[Ht])?e[Ht]:[],h=r.max(o[xe],l[xe]);for(let t=0;t<h;t++){const s=o[t],r=l[t],h=i.concat(t);if("string"==typeof s&&"string"==typeof r){if(s===r)continue;n[fi]({[Ji]:Ts.text,[rn]:e,[Qi]:r,[we]:h})}else null==s?n[fi]({[Ji]:Ts.append,[rn]:r,[we]:h}):null==r?n[fi]({[Ji]:Ts.remove,index:h}):n[fi](...this.#L(s,r,h))}return n}}t.PDMarkdownViewer=t.MDViewer=class{body;vbody;#H;#B="";#z=300;#K=0;#V;#W;#U;constructor(t={}){if((ue in t||hi in t)&&(this.#B=String(t[ue]||t[hi]||"")[qi]()),bi in t){t[bi]}const s=t[bi]||{},o=i(s[Ze]||bt)[qi]()[Wi](),l=n(null==s.fill?1:s.fill)?1:0,r=i(s[pe]||"")[qi]()||"'Noto Sans TC', sans-serif",h=t.sync||{};this.#z=d(null==h[ne]?300:h[ne])||300,this.#K=n(h[Ai]||0)?1:0,this[le]=h[le]instanceof PDMarkdownEditor?h[le]:null,e[Te][Mt](Rs(bi,`.${li}{font-family: ${r}}`));const u=document[hn](t[Se]);typeof t[Se]===Mi&&null!=u?(this[Ft]=u,u.classList.add(li)):this[Ft]=Rs(Si+"."+li),this[Ft][ie][Ze]=_&&o===bt||o===ee?ee:"",this[Ft][ie].fill=l;const a=t.hashtag||{};if(this.#V=i(a.path||"")[qi](),this.#W=i(a[Pi]||"")[qi](),null!=t.fillMode){let e=n(t.fillMode)?1:0;this[Ft][ie].fill=e}if(null!=t[ne]&&(this.#z=d(t[ne])||300),null!=t[Gn]&&(this.#K=n(t[Gn])?1:0),null!=t[pe]){let n=i(t[pe])[qi]()||"'Noto Sans TC', sans-serif";e[Te][Mt](Rs(bi,`.${li}{font-family: ${n}}`))}null!=t[Yn]&&(this.#V=i(t[Yn]||"")[qi]()),null!=t[qn]&&(this.#W=i(t[qn]||"")[qi]()),this.vbody=new ro(this[Ft]),this.init()}get editor(){return this.#U}set editor(t){this.#U&&(this.#U[Ft][bn]=null),null!=t&&(this.#U=t,this.#U.viewer=this,this.#K&&null!=this.#U&&(this.#U[Ft][bn]=t=>{this[Ft][Hn]+=t.deltaY}))}#Z(){if(null==this.#U)return"";const t=[...this.#U[Ft][Pn](oe)];let e="";for(let n of t){var i=n[Cn][Ti](/[\u00A0\u0020]/g," ");i[qi]()[xe]<1?e+="\n":e+=i+"\n"}return e[qi]()}clear(){let t=this[Ft].cloneNode(!0);t[wn]="";let e=new ro(t);this[Ft][wn]="",this.vbody=e}unsave(){this[Ft][ie].saved=0}init(e=""){this[Ft][ie].saved=1;let i=this.#B,n=this[Ft][Hn];t[zt](this.#H),this.#H=t[Wn]((()=>{if(t[zt](this.#H),i&&this[Ft][wn]&&i===this[Ft][wn])return;let o=e||this.#Z()||i;o=no(`\n${o}\n`,this.#V,this.#W);let l=this[Ft].cloneNode(!0);l[wn]=o;let r=new ro(l);const h=r.getPatches(this.vbody);s[$e](h)&&this.#Y(this[Ft],h),this.vbody=r;for(let e of[...this[Ft][Pn](xt+"."+Xt)])e[$n]=async e=>{t[zt](bs);const i=e[Pi][Rn],n=i[pn],s=i[Ht][0][Cn];try{await navigator.clipboard.writeText(s),n[vt](Ui),bs=t[Wn]((t=>{n[mi](Ui)}),1e3)}catch(t){console[ae](t),n[vt](ae)}};let u=setInterval((()=>{null!=PR&&(clearInterval(u),this[Ft][Hn]=n,PR.prettyPrint())}),50)}),this.#z)}changeMode(t=Le){this[Ft][ie][Ze]=t}#Y(t,e){if(null!=t&&s[$e](e)){this.#q(t,e);for(const i of e){const{index:e}=i,n=l.parse(l.stringify(e||[]));let s;i.type===Ts.append&&(s=n?.pop());const o=n?this.#J(t,n):t;o&&(i.type===Ts.create&&rn in i?this.#X(o,i):i.type===Ts.replace&&rn in i&&null!=o[Un]?this.#Q(o,i):i.type===Ts.append&&rn in i&&null!=s?this.#tt(o,i,s):i.type===Ts.prop&&"key"in i&&Qi in i&&o instanceof Element?this.#et(o,i.key,i.value||"",i[rn]):i.type===Ts.text&&Qi in i&&o.nodeType===u[It]&&(o[Bi]=i.value||""))}}}#q(t,e){const i=e.filter((t=>t.type===Ts.remove)).sort(((t,e)=>{const i=(e.index.length||0)-(t.index.length||0);if(0!==i)return i;for(let i=0;i<(t.index.length||0);i++)if((t.index[i]||0)!==(e.index[i]||0))return(e.index[i]||0)-(t.index[i]||0);return 0}));for(const e of i){const i=this.#J(t,e.index);null!=i&&null!=i[Un]&&i[Un].removeChild(i)}}#X(t,i){if(i.type!==Ts.create||!(rn in i))return;const n="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);null!=t[Rn]&&t[Rn][Mt](n)}#Q(t,i){if(i.type!==Ts.replace||!(rn in i)||null==t[Un])return;const n="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);if(t[Un].replaceChild(n,t),!(n instanceof Text||"string"==typeof i[rn])){for(const t in i[rn][ui])this.#et(n,t,i[rn][ui][t]||"",i[rn]);this.#nt(i[rn],n)}}#tt(t,i,n){if(i.type!==Ts.append||!(rn in i)||null==n)return;const s="string"==typeof i[rn]?e[yn](i[rn]):this.#it(i[rn]);if(n+1>t[Ht][xe]?t[Mt](s):t.insertBefore(s,t[Ht][n+1]),"string"!=typeof i[rn]){for(const[e,s]of o.entries(i[rn][ui]))this.#et(t[Ht][n],e,s||"",i[rn]);this.#nt(i[rn],t[Ht][n])}}#et(t,e,i,n){null==i?t[_removeAttribute](e):null!=t&&t[Bn](e,i)}#nt(t,e){if("string"!=typeof t)for(const i in t.children.filter((t=>"string"!=typeof t))){if(null==e)continue;const n=t.children[+i],s=e.children[+i];if("string"!=typeof n){for(const[t,e]of o.entries(n[ui]))this.#et(s,t,e||"",n);this.#nt(n,s)}}}#J(t,e){let i=t,n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[It]&&""!==t[Bi]?.trim()))||[];for(const t of e)i=n[t],null!=i&&(n=s.from(i.childNodes).filter((t=>t.nodeType===u[wt]||t.nodeType===u[It]&&""!==t[Bi]?.trim()))||[]);return i}#it(t){const i=e.createElement(t.tag);if(t[ui])for(const[e,n]of o.entries(t[ui]))e[St](":")||e[St]("@")||void 0!==n&&i[Bn](e,n);for(const n of t[Ht])"string"==typeof n?i[Mt](e[yn](n)):i[Mt](this.#it(n));return i}}}("undefined"==typeof window?window={}:window); |
{ | ||
"name": "@pardnchiu/nanomd", | ||
"version": "1.8.7", | ||
"version": "1.9.0", | ||
"description": "NanoMD is a lightweight Markdown editing and viewing library built on pure JavaScript and native APIs. Can be easily embedded into websites, offers rich features, and supports real-time previewing.", | ||
@@ -5,0 +5,0 @@ "main": "dist/NanoMD.js", |
@@ -63,3 +63,3 @@ <img src="https://nanomd.pardn.io/static/image/logo.png" width=80> | ||
#### Include the `NanoMD` library | ||
#### UMD version | ||
```html | ||
@@ -73,3 +73,3 @@ <!-- Version 1.8.0 and above --> | ||
#### Module version | ||
#### ES Module version | ||
```javascript | ||
@@ -98,20 +98,26 @@ // Version 1.8.0 and above | ||
const domEditor = new MDEditor({ | ||
id: "", // Element to replace | ||
defaultContent: "", // Default content to display initially | ||
hotKey: 1, // Enable hotkeys, default: 1 | ||
preventRefresh: 0, // Prevent page refresh, default: 0 | ||
tabPin: 0, // 1 | 0 | true | false | ||
wrap: 1, // 1 | 0 | true | false | ||
id: "", // Specify the target element to replace | ||
defaultContent: "", // Initial content to display | ||
hotKey: 1, // Enable keyboard shortcuts, default: 1 (enabled) | ||
preventRefresh: 0, // Prevent page refresh, default: 0 (disabled) | ||
tabPin: 0, // Enable Tab indentation, default: 0 (disabled) | ||
wrap: 1, // Enable word wrapping, default: 1 (enabled) | ||
autoSave: 1, // Auto-save feature, default: 1 (enabled) | ||
event: { | ||
save: result => { // Custom save event | ||
console.log(result); // Output current Markdown content | ||
} | ||
}, | ||
style: { | ||
mode: "", // auto | light | dark, default: auto | ||
fill: 1, // Adjust size to parent element, default: 1 | ||
fontFamily: "", // Default: 'Noto Sans TC', sans-serif | ||
showRow: 0, // Show line numbers, default: 1 | ||
mode: "", // Theme mode: auto | light | dark, default: auto | ||
fill: 1, // Adjust size based on parent element, default: 1 (enabled) | ||
fontFamily: "", // Font settings, default: 'Noto Sans TC', sans-serif | ||
showRow: 0, // Show line numbers, default: 0 (disabled) | ||
placeholder: { | ||
text: "Content", // Default: Type here ... | ||
color: "#ff000080" // Default: #0000ff1a | ||
text: "Content", // Placeholder text, default: "Type here..." | ||
color: "#ff000080" // Placeholder color, default: #0000ff1a | ||
}, | ||
focus: { | ||
backgroundColor: "#ff00001a", // Default: #0000ffff | ||
color: "#ff0000" // Default: #bfbfbf | ||
backgroundColor: "#ff00001a", // Focus background color, default: #0000ffff | ||
color: "#ff0000" // Focus text color, default: #bfbfbf | ||
} | ||
@@ -121,2 +127,3 @@ } | ||
const domViewer = new MDViewer({ | ||
@@ -123,0 +130,0 @@ id: "", // Element to replace |
@@ -63,3 +63,3 @@ <img src="https://nanomd.pardn.io/static/image/logo.png" width=80> | ||
#### 引入 `NanoMD` 套件 | ||
#### UMD 版本 | ||
```html | ||
@@ -73,3 +73,3 @@ <!-- 1.8.0 版本以上 --> | ||
#### Module 版本 | ||
#### ES Module 版本 | ||
```javascript | ||
@@ -102,16 +102,22 @@ // 1.8.0 版本以上 | ||
preventRefresh: 0, // 防止頁面重整,預設值:0 | ||
tabPin: 0, // 1 | 0 | true | false | ||
wrap: 1, // 1 | 0 | true | false | ||
tabPin: 0, // 啟用 Tab 縮排,預設值:0 (關閉) | ||
wrap: 1, // 啟用文字自動換行,預設值:1 (開啟) | ||
autoSave: 1, // 自動儲存,預設值:1 (開啟) | ||
event: { | ||
save: result => { // 自定義儲存事件 | ||
console.log(result); // 輸出當前 Markdown 內容 | ||
} | ||
}, | ||
style: { | ||
mode: "", // auto | light | dark, 預設: auto | ||
fill: 1, // 隨父元素大小調整,預設值:1 | ||
fontFamily: "", // 預設:'Noto Sans TC', sans-serif | ||
showRow: 0, // 顯示行數,預設:1 | ||
mode: "", // 主題模式 auto | light | dark,預設值: auto | ||
fill: 1, // 隨父元素大小調整,預設值:1 (開啟) | ||
fontFamily: "", // 設定字體,預設:'Noto Sans TC', sans-serif | ||
showRow: 0, // 顯示行號,預設值:0 (關閉) | ||
placeholder: { | ||
text: "Content", // 預設:Type here ... | ||
color: "#ff000080" // 預設:#0000ff1a | ||
text: "Content", // 設定提示文字,預設:Type here ... | ||
color: "#ff000080" // 提示文字顏色,預設:#0000ff1a | ||
}, | ||
focus: { | ||
backgroundColor: "#ff00001a", // 預設:#0000ffff | ||
color: "#ff0000" // 預設:#bfbfbf | ||
backgroundColor: "#ff00001a", // 焦點背景顏色,預設:#0000ffff | ||
color: "#ff0000" // 焦點文字顏色,預設:#bfbfbf | ||
} | ||
@@ -121,2 +127,3 @@ } | ||
const domViewer = new MDViewer({ | ||
@@ -123,0 +130,0 @@ id: "", // 指定元素取代元件 |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
136287
8
279
176
1