import{a as Z,z as J,ai as M,C as T,X as E,am as x,s as G,an as Q}from"./entry.a42f0781.js";import{p as nn}from"./index.a6ef77ff.js";import{u as ln}from"./preview.000d6083.js";class S{constructor(e,t,o){this.property=e,this.normal=t,o&&(this.space=o)}}S.prototype.property={};S.prototype.normal={};S.prototype.space=null;function U(n,e){const t={},o={};let r=-1;for(;++r4&&t.slice(0,4)==="data"&&an.test(e)){if(e.charAt(4)==="-"){const a=e.slice(5).replace(A,pn);o="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=e.slice(4);if(!A.test(a)){let i=a.replace(un,cn);i.charAt(0)!=="-"&&(i="-"+i),e="data"+i}}r=L}return new r(o,e)}function cn(n){return"-"+n.toLowerCase()}function pn(n){return n.charAt(1).toUpperCase()}const dn=U([I,B,H,F,tn],"html");U([I,B,H,F,rn],"svg");const N=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],D="default",V=/^@|^v-on:/,q=/^:|^v-bind:/,W=/^v-model/,gn=["select","textarea","input"],Ln=Z({name:"ContentRendererMarkdown",props:{value:{type:Object,required:!0},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"},components:{type:Object,default:()=>({})}},async setup(n){var r,a,i;const{content:{tags:e={}}}=J().public,t=ln().isEnabled();let o=((r=n.value)==null?void 0:r.body)||n.value;return n.excerpt&&((a=n.value)!=null&&a.excerpt)&&(o=n.value.excerpt),o&&await wn(o,{tags:{...e,...M(((i=n.value)==null?void 0:i._components)||{}),...n.components}}),{debug:t,tags:e}},render(n){var y;const{tags:e,tag:t,value:o,excerpt:r,components:a,debug:i}=n;if(!o)return null;let s=(o==null?void 0:o.body)||o;r&&(o!=null&&o.excerpt)&&(s=o.excerpt);const c={...o,tags:{...e,...M((o==null?void 0:o._components)||{}),...a}};let d=c.component||t;return typeof c.component=="object"&&(d=c.component.name),d=$(d),T(d,{...(y=c.component)==null?void 0:y.props,...this.$attrs,"data-content-id":i?o._id:void 0},X(s,T,c,c))}});function hn(n,e,t,o={}){var c;if(n.type==="text")return e(x,n.value);if(n.tag==="script")return e(x,K(n));const r=n.tag,a=typeof((c=n.props)==null?void 0:c.__ignoreMap)>"u"&&t.tags[r]||r;if(n.tag==="binding")return fn(n,e,t,o);const i=$(a);typeof i=="object"&&(i.tag=r);const s=mn(n,t);return e(i,s,X(n,e,t,{...o,...s}))}function K(n){var e,t;return n.type==="text"?n.value:(e=n.children)!=null&&e.length?`<${n.tag}>${((t=n.children)==null?void 0:t.map(K).join(""))||""}`:`<${n.tag}>`}function fn(n,e,t,o={}){var c;const r={...o,$route:()=>G(),$document:t,$doc:t},a=/\.|\[(\d+)\]/,s=((c=n.props)==null?void 0:c.value.trim().split(a).filter(Boolean)).reduce((d,y)=>y in d?typeof d[y]=="function"?d[y]():d[y]:{},r);return e(x,s)}function X(n,e,t,o){const a=(n.children||[]).reduce((s,c)=>{if(!Sn(c))return s[D].push(c),s;const d=xn(c);return s[d]=s[d]||[],s[d].push(...c.children||[]),s},{[D]:[]});return Object.entries(a).reduce((s,[c,d])=>(d.length&&(s[c]=()=>{const y=d.map(h=>hn(h,e,t,o));return Cn(y)}),s),{})}function mn(n,e){const{tag:t="",props:o={}}=n;return Object.keys(o).reduce(function(r,a){if(a==="__ignoreMap")return r;const i=o[a];if(W.test(a)&&!gn.includes(t))return yn(a,i,r,e);if(a==="v-bind")return vn(a,i,r,e);if(V.test(a))return bn(a,i,r,e);if(q.test(a))return kn(a,i,r,e);const{attribute:s}=sn(dn,a);return Array.isArray(i)&&i.every(c=>typeof c=="string")?(r[s]=i.join(" "),r):(r[s]=i,r)},{})}function yn(n,e,t,o){const r=h=>+h,a=h=>h.trim(),i=h=>h,s=n.replace(W,"").split(".").filter(h=>h).reduce((h,Y)=>(h[Y]=!0,h),{}),c="value",d=s.lazy?"change":"input",y=s.number?r:s.trim?a:i;return t[c]=C(e,o),t.on=t.on||{},t.on[d]=h=>o[e]=y(h),t}function vn(n,e,t,o){const r=C(e,o);return t=Object.assign(t,r),t}function bn(n,e,t,o){return n=n.replace(V,""),t.on=t.on||{},t.on[n]=()=>C(e,o),t}function kn(n,e,t,o){return n=n.replace(q,""),t[n]=C(e,o),t}const $=n=>{if(!N.includes(n)&&!(n!=null&&n.render)){const e=E(nn(n),!1);if(typeof e=="object")return e}return n};function C(n,e){const t=n.split(".").reduce((o,r)=>typeof o=="object"?o[r]:void 0,e);return typeof t>"u"?Q(n):t}function xn(n){let e="";for(const t of Object.keys(n.props||{}))if(!(!t.startsWith("#")&&!t.startsWith("v-slot:"))){e=t.split(/[:#]/,2)[1];break}return e||D}function Sn(n){return n.tag==="template"}function Cn(n){const e=[];for(const t of n){const o=e[e.length-1];t.type===x&&(o==null?void 0:o.type)===x?o.children=o.children+t.children:e.push(t)}return e}async function wn(n,e){const t=Array.from(new Set(o(n,e)));await Promise.all(t.map(async r=>{if(r!=null&&r.render)return;const a=E(r);a!=null&&a.__asyncLoader&&!a.__asyncResolved&&await a.__asyncLoader()}));function o(r,a){var c;if(r.type==="text"||r.tag==="binding")return[];const i=typeof((c=r.props)==null?void 0:c.__ignoreMap)>"u"&&a.tags[r.tag]||r.tag,s=[];r.type!=="root"&&!N.includes(i)&&s.push(i);for(const d of r.children||[])s.push(...o(d,a));return s}}export{Ln as default};